/* vim: set ts=8 sts=2 et sw=2 tw=79: Copyright (C) 2013 This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software. Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This notice may not be removed or altered from any source distribution. */ // A conforming SIMD.js implementation may contain the following deviations to // normal JS numeric behavior: // - Subnormal numbers may or may not be flushed to zero on input or output of // any SIMD operation. // Many of the operations in SIMD.js have semantics which correspond to scalar // operations in JS, however there are a few differences: // - Vector shifts don't mask the shift count. // - Conversions from float to int32 throw on error. // - Load and store operations throw when out of bounds. (function(global) { if (typeof global.SIMD === "undefined") { // SIMD module. global.SIMD = {}; } if (typeof module !== "undefined") { // For CommonJS modules module.exports = global.SIMD; } var SIMD = global.SIMD; // Buffers for bit casting and coercing lane values to those representable in // the underlying lane type. var _f32x4 = new Float32Array(4); var _f64x2 = new Float64Array(_f32x4.buffer); var _i32x4 = new Int32Array(_f32x4.buffer); var _i16x8 = new Int16Array(_f32x4.buffer); var _i8x16 = new Int8Array(_f32x4.buffer); var _ui32x4 = new Uint32Array(_f32x4.buffer); var _ui16x8 = new Uint16Array(_f32x4.buffer); var _ui8x16 = new Uint8Array(_f32x4.buffer); function convertValue(buffer, value) { buffer[0] = value; return buffer[0]; } function convertArray(buffer, array) { for (var i = 0; i < array.length; i++) array[i] = convertValue(buffer, array[i]); return array; } // Utility functions. function isInt32(o) { return (o | 0) === o; } function isTypedArray(o) { return (o instanceof Int8Array) || (o instanceof Uint8Array) || (o instanceof Uint8ClampedArray) || (o instanceof Int16Array) || (o instanceof Uint16Array) || (o instanceof Int32Array) || (o instanceof Uint32Array) || (o instanceof Float32Array) || (o instanceof Float64Array); } function minNum(x, y) { return x != x ? y : y != y ? x : Math.min(x, y); } function maxNum(x, y) { return x != x ? y : y != y ? x : Math.max(x, y); } function clamp(a, min, max) { if (a < min) return min; if (a > max) return max; return a; } // SIMD implementation functions function simdCheckLaneIndex(index, lanes) { if (!isInt32(index)) throw new TypeError('Lane index must be an int32'); if (index < 0 || index >= lanes) throw new RangeError('Lane index must be in bounds'); } // Global lanes array for constructing SIMD values. var lanes = []; function simdCreate(type) { return type.fn.apply(type.fn, lanes); } function simdToString(type, a) { a = type.fn.check(a); var str = "SIMD." + type.name + "("; str += type.fn.extractLane(a, 0); for (var i = 1; i < type.lanes; i++) { str += ", " + type.fn.extractLane(a, i); } return str + ")"; } function simdToLocaleString(type, a) { a = type.fn.check(a); var str = "SIMD." + type.name + "("; str += type.fn.extractLane(a, 0).toLocaleString(); for (var i = 1; i < type.lanes; i++) { str += ", " + type.fn.extractLane(a, i).toLocaleString(); } return str + ")"; } function simdSplat(type, s) { for (var i = 0; i < type.lanes; i++) lanes[i] = s; return simdCreate(type); } function simdReplaceLane(type, a, i, s) { a = type.fn.check(a); simdCheckLaneIndex(i, type.lanes); for (var j = 0; j < type.lanes; j++) lanes[j] = type.fn.extractLane(a, j); lanes[i] = s; return simdCreate(type); } function simdFrom(toType, fromType, a) { a = fromType.fn.check(a); for (var i = 0; i < fromType.lanes; i++) { var v = Math.trunc(fromType.fn.extractLane(a, i)); if (toType.minVal !== undefined && !(toType.minVal <= v && v <= toType.maxVal)) { throw new RangeError("Can't convert value"); } lanes[i] = v; } return simdCreate(toType); } function simdFromBits(toType, fromType, a) { a = fromType.fn.check(a); var newValue = new toType.fn(); newValue.s_ = new toType.view(a.s_.buffer); return newValue; } function simdSelect(type, selector, a, b) { selector = type.boolType.fn.check(selector); a = type.fn.check(a); b = type.fn.check(b); for (var i = 0; i < type.lanes; i++) { lanes[i] = type.boolType.fn.extractLane(selector, i) ? type.fn.extractLane(a, i) : type.fn.extractLane(b, i); } return simdCreate(type); } function simdSwizzle(type, a, indices) { a = type.fn.check(a); for (var i = 0; i < indices.length; i++) { simdCheckLaneIndex(indices[i], type.lanes); lanes[i] = type.fn.extractLane(a, indices[i]); } return simdCreate(type); } function simdShuffle(type, a, b, indices) { a = type.fn.check(a); b = type.fn.check(b); for (var i = 0; i < indices.length; i++) { simdCheckLaneIndex(indices[i], 2 * type.lanes); lanes[i] = indices[i] < type.lanes ? type.fn.extractLane(a, indices[i]) : type.fn.extractLane(b, indices[i] - type.lanes); } return simdCreate(type); } function unaryNeg(a) { return -a; } function unaryBitwiseNot(a) { return ~a; } function unaryLogicalNot(a) { return !a; } function simdUnaryOp(type, op, a) { a = type.fn.check(a); for (var i = 0; i < type.lanes; i++) lanes[i] = op(type.fn.extractLane(a, i)); return simdCreate(type); } function binaryAnd(a, b) { return a & b; } function binaryOr(a, b) { return a | b; } function binaryXor(a, b) { return a ^ b; } function binaryAdd(a, b) { return a + b; } function binarySub(a, b) { return a - b; } function binaryMul(a, b) { return a * b; } function binaryDiv(a, b) { return a / b; } var binaryImul; if (typeof Math.imul !== 'undefined') { binaryImul = Math.imul; } else { binaryImul = function(a, b) { var ah = (a >>> 16) & 0xffff; var al = a & 0xffff; var bh = (b >>> 16) & 0xffff; var bl = b & 0xffff; // the shift by 0 fixes the sign on the high part // the final |0 converts the unsigned value into a signed value return ((al * bl) + (((ah * bl + al * bh) << 16) >>> 0)|0); }; } function simdBinaryOp(type, op, a, b) { a = type.fn.check(a); b = type.fn.check(b); for (var i = 0; i < type.lanes; i++) lanes[i] = op(type.fn.extractLane(a, i), type.fn.extractLane(b, i)); return simdCreate(type); } function binaryEqual(a, b) { return a == b; } function binaryNotEqual(a, b) { return a != b; } function binaryLess(a, b) { return a < b; } function binaryLessEqual(a, b) { return a <= b; } function binaryGreater(a, b) { return a > b; } function binaryGreaterEqual(a, b) { return a >= b; } function simdRelationalOp(type, op, a, b) { a = type.fn.check(a); b = type.fn.check(b); for (var i = 0; i < type.lanes; i++) lanes[i] = op(type.fn.extractLane(a, i), type.fn.extractLane(b, i)); return simdCreate(type.boolType); } function simdAnyTrue(type, a) { a = type.fn.check(a); for (var i = 0; i < type.lanes; i++) if (type.fn.extractLane(a, i)) return true; return false; } function simdAllTrue(type, a) { a = type.fn.check(a); for (var i = 0; i < type.lanes; i++) if (!type.fn.extractLane(a, i)) return false; return true; } function binaryShiftLeft(a, bits) { return a << bits; } function binaryShiftRightArithmetic(a, bits) { return a >> bits; } function binaryShiftRightLogical(a, bits) { return a >>> bits; } function simdShiftOp(type, op, a, bits) { a = type.fn.check(a); for (var i = 0; i < type.lanes; i++) lanes[i] = op(type.fn.extractLane(a, i), bits); return simdCreate(type); } function simdLoad(type, tarray, index, count) { if (!isTypedArray(tarray)) throw new TypeError("The 1st argument must be a typed array."); if (!isInt32(index)) throw new TypeError("The 2nd argument must be an Int32."); var bpe = tarray.BYTES_PER_ELEMENT; var bytes = count * type.laneSize; if (index < 0 || (index * bpe + bytes) > tarray.byteLength) throw new RangeError("The value of index is invalid."); var newValue = type.fn(); var dst = new Uint8Array(newValue.s_.buffer); var src = new Uint8Array(tarray.buffer, tarray.byteOffset + index * bpe, bytes); for (var i = 0; i < bytes; i++) { dst[i] = src[i]; } var typeBytes = type.lanes * type.laneSize; for (var i = bytes; i < typeBytes; i++) { dst[i] = 0; } return newValue; } function simdStore(type, tarray, index, a, count) { if (!isTypedArray(tarray)) throw new TypeError("The 1st argument must be a typed array."); if (!isInt32(index)) throw new TypeError("The 2nd argument must be an Int32."); var bpe = tarray.BYTES_PER_ELEMENT; var bytes = count * type.laneSize; if (index < 0 || (index * bpe + bytes) > tarray.byteLength) throw new RangeError("The value of index is invalid."); a = type.fn.check(a); // The underlying buffers are copied byte by byte, to avoid float // canonicalization. var src = new Uint8Array(a.s_.buffer); var dst = new Uint8Array(tarray.buffer, tarray.byteOffset + index * bpe, bytes); for (var i = 0; i < bytes; i++) { dst[i] = src[i]; } return a; } // Constructors and extractLane functions are closely related and must be // polyfilled together. // Float32x4 if (typeof SIMD.Float32x4 === "undefined" || typeof SIMD.Float32x4.extractLane === "undefined") { SIMD.Float32x4 = function(s0, s1, s2, s3) { if (!(this instanceof SIMD.Float32x4)) { return new SIMD.Float32x4(s0, s1, s2, s3); } this.s_ = convertArray(_f32x4, new Float32Array([s0, s1, s2, s3])); } SIMD.Float32x4.extractLane = function(v, i) { v = SIMD.Float32x4.check(v); simdCheckLaneIndex(i, 4); return v.s_[i]; } } // Miscellaneous functions that aren't easily parameterized on type. if (typeof SIMD.Float32x4.swizzle === "undefined") { SIMD.Float32x4.swizzle = function(a, s0, s1, s2, s3) { return simdSwizzle(float32x4, a, [s0, s1, s2, s3]); } } if (typeof SIMD.Float32x4.shuffle === "undefined") { SIMD.Float32x4.shuffle = function(a, b, s0, s1, s2, s3) { return simdShuffle(float32x4, a, b, [s0, s1, s2, s3]); } } // Int32x4 if (typeof SIMD.Int32x4 === "undefined" || typeof SIMD.Int32x4.extractLane === "undefined") { SIMD.Int32x4 = function(s0, s1, s2, s3) { if (!(this instanceof SIMD.Int32x4)) { return new SIMD.Int32x4(s0, s1, s2, s3); } this.s_ = convertArray(_i32x4, new Int32Array([s0, s1, s2, s3])); } SIMD.Int32x4.extractLane = function(v, i) { v = SIMD.Int32x4.check(v); simdCheckLaneIndex(i, 4); return v.s_[i]; } } if (typeof SIMD.Int32x4.swizzle === "undefined") { SIMD.Int32x4.swizzle = function(a, s0, s1, s2, s3) { return simdSwizzle(int32x4, a, [s0, s1, s2, s3]); } } if (typeof SIMD.Int32x4.shuffle === "undefined") { SIMD.Int32x4.shuffle = function(a, b, s0, s1, s2, s3) { return simdShuffle(int32x4, a, b, [s0, s1, s2, s3]); } } // Int16x8 if (typeof SIMD.Int16x8 === "undefined" || typeof SIMD.Int16x8.extractLane === "undefined") { SIMD.Int16x8 = function(s0, s1, s2, s3, s4, s5, s6, s7) { if (!(this instanceof SIMD.Int16x8)) { return new SIMD.Int16x8(s0, s1, s2, s3, s4, s5, s6, s7); } this.s_ = convertArray(_i16x8, new Int16Array([s0, s1, s2, s3, s4, s5, s6, s7])); } SIMD.Int16x8.extractLane = function(v, i) { v = SIMD.Int16x8.check(v); simdCheckLaneIndex(i, 8); return v.s_[i]; } } if (typeof SIMD.Int16x8.swizzle === "undefined") { SIMD.Int16x8.swizzle = function(a, s0, s1, s2, s3, s4, s5, s6, s7) { return simdSwizzle(int16x8, a, [s0, s1, s2, s3, s4, s5, s6, s7]); } } if (typeof SIMD.Int16x8.shuffle === "undefined") { SIMD.Int16x8.shuffle = function(a, b, s0, s1, s2, s3, s4, s5, s6, s7) { return simdShuffle(int16x8, a, b, [s0, s1, s2, s3, s4, s5, s6, s7]); } } // Int8x16 if (typeof SIMD.Int8x16 === "undefined" || typeof SIMD.Int8x16.extractLane === "undefined") { SIMD.Int8x16 = function(s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15) { if (!(this instanceof SIMD.Int8x16)) { return new SIMD.Int8x16(s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15); } this.s_ = convertArray(_i8x16, new Int8Array([s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15])); } SIMD.Int8x16.extractLane = function(v, i) { v = SIMD.Int8x16.check(v); simdCheckLaneIndex(i, 16); return v.s_[i]; } } if (typeof SIMD.Int8x16.swizzle === "undefined") { SIMD.Int8x16.swizzle = function(a, s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15) { return simdSwizzle(int8x16, a, [s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15]); } } if (typeof SIMD.Int8x16.shuffle === "undefined") { SIMD.Int8x16.shuffle = function(a, b, s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15) { return simdShuffle(int8x16, a, b, [s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15]); } } // Uint32x4 if (typeof SIMD.Uint32x4 === "undefined" || typeof SIMD.Uint32x4.extractLane === "undefined") { SIMD.Uint32x4 = function(s0, s1, s2, s3) { if (!(this instanceof SIMD.Uint32x4)) { return new SIMD.Uint32x4(s0, s1, s2, s3); } this.s_ = convertArray(_ui32x4, new Uint32Array([s0, s1, s2, s3])); } SIMD.Uint32x4.extractLane = function(v, i) { v = SIMD.Uint32x4.check(v); simdCheckLaneIndex(i, 4); return v.s_[i]; } } if (typeof SIMD.Uint32x4.swizzle === "undefined") { SIMD.Uint32x4.swizzle = function(a, s0, s1, s2, s3) { return simdSwizzle(uint32x4, a, [s0, s1, s2, s3]); } } if (typeof SIMD.Uint32x4.shuffle === "undefined") { SIMD.Uint32x4.shuffle = function(a, b, s0, s1, s2, s3) { return simdShuffle(uint32x4, a, b, [s0, s1, s2, s3]); } } // Uint16x8 if (typeof SIMD.Uint16x8 === "undefined" || typeof SIMD.Uint16x8.extractLane === "undefined") { SIMD.Uint16x8 = function(s0, s1, s2, s3, s4, s5, s6, s7) { if (!(this instanceof SIMD.Uint16x8)) { return new SIMD.Uint16x8(s0, s1, s2, s3, s4, s5, s6, s7); } this.s_ = convertArray(_ui16x8, new Uint16Array([s0, s1, s2, s3, s4, s5, s6, s7])); } SIMD.Uint16x8.extractLane = function(v, i) { v = SIMD.Uint16x8.check(v); simdCheckLaneIndex(i, 8); return v.s_[i]; } } if (typeof SIMD.Uint16x8.swizzle === "undefined") { SIMD.Uint16x8.swizzle = function(a, s0, s1, s2, s3, s4, s5, s6, s7) { return simdSwizzle(uint16x8, a, [s0, s1, s2, s3, s4, s5, s6, s7]); } } if (typeof SIMD.Uint16x8.shuffle === "undefined") { SIMD.Uint16x8.shuffle = function(a, b, s0, s1, s2, s3, s4, s5, s6, s7) { return simdShuffle(uint16x8, a, b, [s0, s1, s2, s3, s4, s5, s6, s7]); } } // Uint8x16 if (typeof SIMD.Uint8x16 === "undefined" || typeof SIMD.Uint8x16.extractLane === "undefined") { SIMD.Uint8x16 = function(s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15) { if (!(this instanceof SIMD.Uint8x16)) { return new SIMD.Uint8x16(s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15); } this.s_ = convertArray(_ui8x16, new Uint8Array([s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15])); } SIMD.Uint8x16.extractLane = function(v, i) { v = SIMD.Uint8x16.check(v); simdCheckLaneIndex(i, 16); return v.s_[i]; } } if (typeof SIMD.Uint8x16.swizzle === "undefined") { SIMD.Uint8x16.swizzle = function(a, s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15) { return simdSwizzle(uint8x16, a, [s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15]); } } if (typeof SIMD.Uint8x16.shuffle === "undefined") { SIMD.Uint8x16.shuffle = function(a, b, s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15) { return simdShuffle(uint8x16, a, b, [s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15]); } } // Bool32x4 if (typeof SIMD.Bool32x4 === "undefined" || typeof SIMD.Bool32x4.extractLane === "undefined") { SIMD.Bool32x4 = function(s0, s1, s2, s3) { if (!(this instanceof SIMD.Bool32x4)) { return new SIMD.Bool32x4(s0, s1, s2, s3); } this.s_ = [!!s0, !!s1, !!s2, !!s3]; } SIMD.Bool32x4.extractLane = function(v, i) { v = SIMD.Bool32x4.check(v); simdCheckLaneIndex(i, 4); return v.s_[i]; } } // Bool16x8 if (typeof SIMD.Bool16x8 === "undefined" || typeof SIMD.Bool16x8.extractLane === "undefined") { SIMD.Bool16x8 = function(s0, s1, s2, s3, s4, s5, s6, s7) { if (!(this instanceof SIMD.Bool16x8)) { return new SIMD.Bool16x8(s0, s1, s2, s3, s4, s5, s6, s7); } this.s_ = [!!s0, !!s1, !!s2, !!s3, !!s4, !!s5, !!s6, !!s7]; } SIMD.Bool16x8.extractLane = function(v, i) { v = SIMD.Bool16x8.check(v); simdCheckLaneIndex(i, 8); return v.s_[i]; } } // Bool8x16 if (typeof SIMD.Bool8x16 === "undefined" || typeof SIMD.Bool8x16.extractLane === "undefined") { SIMD.Bool8x16 = function(s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15) { if (!(this instanceof SIMD.Bool8x16)) { return new SIMD.Bool8x16(s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15); } this.s_ = [!!s0, !!s1, !!s2, !!s3, !!s4, !!s5, !!s6, !!s7, !!s8, !!s9, !!s10, !!s11, !!s12, !!s13, !!s14, !!s15]; } SIMD.Bool8x16.extractLane = function(v, i) { v = SIMD.Bool8x16.check(v); simdCheckLaneIndex(i, 16); return v.s_[i]; } } // Type data to generate the remaining functions. var float32x4 = { name: "Float32x4", fn: SIMD.Float32x4, lanes: 4, laneSize: 4, buffer: _f32x4, view: Float32Array, mulFn: binaryMul, fns: ["check", "splat", "replaceLane", "select", "equal", "notEqual", "lessThan", "lessThanOrEqual", "greaterThan", "greaterThanOrEqual", "add", "sub", "mul", "div", "neg", "abs", "min", "max", "minNum", "maxNum", "reciprocalApproximation", "reciprocalSqrtApproximation", "sqrt", "load", "load1", "load2", "load3", "store", "store1", "store2", "store3"], } var int32x4 = { name: "Int32x4", fn: SIMD.Int32x4, lanes: 4, laneSize: 4, minVal: -0x80000000, maxVal: 0x7FFFFFFF, buffer: _i32x4, notFn: unaryBitwiseNot, view: Int32Array, mulFn: binaryImul, fns: ["check", "splat", "replaceLane", "select", "equal", "notEqual", "lessThan", "lessThanOrEqual", "greaterThan", "greaterThanOrEqual", "and", "or", "xor", "not", "add", "sub", "mul", "neg", "shiftLeftByScalar", "shiftRightByScalar", "load", "load1", "load2", "load3", "store", "store1", "store2", "store3"], } var int16x8 = { name: "Int16x8", fn: SIMD.Int16x8, lanes: 8, laneSize: 2, minVal: -0x8000, maxVal: 0x7FFF, buffer: _i16x8, notFn: unaryBitwiseNot, view: Int16Array, mulFn: binaryMul, fns: ["check", "splat", "replaceLane", "select", "equal", "notEqual", "lessThan", "lessThanOrEqual", "greaterThan", "greaterThanOrEqual", "and", "or", "xor", "not", "add", "sub", "mul", "neg", "shiftLeftByScalar", "shiftRightByScalar", "addSaturate", "subSaturate", "load", "store"], } var int8x16 = { name: "Int8x16", fn: SIMD.Int8x16, lanes: 16, laneSize: 1, minVal: -0x80, maxVal: 0x7F, buffer: _i8x16, notFn: unaryBitwiseNot, view: Int8Array, mulFn: binaryMul, fns: ["check", "splat", "replaceLane", "select", "equal", "notEqual", "lessThan", "lessThanOrEqual", "greaterThan", "greaterThanOrEqual", "and", "or", "xor", "not", "add", "sub", "mul", "neg", "shiftLeftByScalar", "shiftRightByScalar", "addSaturate", "subSaturate", "load", "store"], } var uint32x4 = { name: "Uint32x4", fn: SIMD.Uint32x4, lanes: 4, laneSize: 4, minVal: 0, maxVal: 0xFFFFFFFF, unsigned: true, buffer: _ui32x4, notFn: unaryBitwiseNot, view: Uint32Array, mulFn: binaryImul, fns: ["check", "splat", "replaceLane", "select", "equal", "notEqual", "lessThan", "lessThanOrEqual", "greaterThan", "greaterThanOrEqual", "and", "or", "xor", "not", "add", "sub", "mul", "shiftLeftByScalar", "shiftRightByScalar", "load", "load1", "load2", "load3", "store", "store1", "store2", "store3"], } var uint16x8 = { name: "Uint16x8", fn: SIMD.Uint16x8, lanes: 8, laneSize: 2, unsigned: true, minVal: 0, maxVal: 0xFFFF, buffer: _ui16x8, notFn: unaryBitwiseNot, view: Uint16Array, mulFn: binaryMul, fns: ["check", "splat", "replaceLane", "select", "equal", "notEqual", "lessThan", "lessThanOrEqual", "greaterThan", "greaterThanOrEqual", "and", "or", "xor", "not", "add", "sub", "mul", "shiftLeftByScalar", "shiftRightByScalar", "addSaturate", "subSaturate", "load", "store"], } var uint8x16 = { name: "Uint8x16", fn: SIMD.Uint8x16, lanes: 16, laneSize: 1, unsigned: true, minVal: 0, maxVal: 0xFF, buffer: _ui8x16, notFn: unaryBitwiseNot, view: Uint8Array, mulFn: binaryMul, fns: ["check", "splat", "replaceLane", "select", "equal", "notEqual", "lessThan", "lessThanOrEqual", "greaterThan", "greaterThanOrEqual", "and", "or", "xor", "not", "add", "sub", "mul", "shiftLeftByScalar", "shiftRightByScalar", "addSaturate", "subSaturate", "load", "store"], } var bool32x4 = { name: "Bool32x4", fn: SIMD.Bool32x4, lanes: 4, laneSize: 4, notFn: unaryLogicalNot, fns: ["check", "splat", "replaceLane", "allTrue", "anyTrue", "and", "or", "xor", "not"], } var bool16x8 = { name: "Bool16x8", fn: SIMD.Bool16x8, lanes: 8, laneSize: 2, notFn: unaryLogicalNot, fns: ["check", "splat", "replaceLane", "allTrue", "anyTrue", "and", "or", "xor", "not"], } var bool8x16 = { name: "Bool8x16", fn: SIMD.Bool8x16, lanes: 16, laneSize: 1, notFn: unaryLogicalNot, fns: ["check", "splat", "replaceLane", "allTrue", "anyTrue", "and", "or", "xor", "not"], } // Each SIMD type has a corresponding Boolean SIMD type, which is returned by // relational ops. float32x4.boolType = int32x4.boolType = uint32x4.boolType = bool32x4; int16x8.boolType = uint16x8.boolType = bool16x8; int8x16.boolType = uint8x16.boolType = bool8x16; // SIMD from types. float32x4.from = [int32x4, uint32x4]; int32x4.from = [float32x4, uint32x4]; int16x8.from = [uint16x8]; int8x16.from = [uint8x16]; uint32x4.from = [float32x4, int32x4]; uint16x8.from = [int16x8]; uint8x16.from = [int8x16]; // SIMD fromBits types. float32x4.fromBits = [int32x4, int16x8, int8x16, uint32x4, uint16x8, uint8x16]; int32x4.fromBits = [float32x4, int16x8, int8x16, uint32x4, uint16x8, uint8x16]; int16x8.fromBits = [float32x4, int32x4, int8x16, uint32x4, uint16x8, uint8x16]; int8x16.fromBits = [float32x4, int32x4, int16x8, uint32x4, uint16x8, uint8x16]; uint32x4.fromBits = [float32x4, int32x4, int16x8, int8x16, uint16x8, uint8x16]; uint16x8.fromBits = [float32x4, int32x4, int16x8, int8x16, uint32x4, uint8x16]; uint8x16.fromBits = [float32x4, int32x4, int16x8, int8x16, uint32x4, uint16x8]; var simdTypes = [float32x4, int32x4, int16x8, int8x16, uint32x4, uint16x8, uint8x16, bool32x4, bool16x8, bool8x16]; // XXX Emscripten: Enable SIMD phase 2 types for Float64x2 and Bool64x2 to enable targeting SSE2 support. var simdPhase2 = true; // SIMD Phase2 types. if (typeof simdPhase2 !== 'undefined' && simdPhase2) { // Float64x2 if (typeof SIMD.Float64x2 === "undefined" || typeof SIMD.Float64x2.extractLane === "undefined") { SIMD.Float64x2 = function(s0, s1) { if (!(this instanceof SIMD.Float64x2)) { return new SIMD.Float64x2(s0, s1); } this.s_ = convertArray(_f64x2, new Float64Array([s0, s1])); } SIMD.Float64x2.extractLane = function(v, i) { v = SIMD.Float64x2.check(v); simdCheckLaneIndex(i, 2); return v.s_[i]; } } if (typeof SIMD.Float64x2.swizzle === "undefined") { SIMD.Float64x2.swizzle = function(a, s0, s1) { return simdSwizzle(float64x2, a, [s0, s1]); } } if (typeof SIMD.Float64x2.shuffle === "undefined") { SIMD.Float64x2.shuffle = function(a, b, s0, s1) { return simdShuffle(float64x2, a, b, [s0, s1]); } } // Bool64x2 if (typeof SIMD.Bool64x2 === "undefined" || typeof SIMD.Bool64x2.extractLane === "undefined") { SIMD.Bool64x2 = function(s0, s1) { if (!(this instanceof SIMD.Bool64x2)) { return new SIMD.Bool64x2(s0, s1); } this.s_ = [!!s0, !!s1]; } SIMD.Bool64x2.extractLane = function(v, i) { v = SIMD.Bool64x2.check(v); simdCheckLaneIndex(i, 2); return v.s_[i]; } } var float64x2 = { name: "Float64x2", fn: SIMD.Float64x2, lanes: 2, laneSize: 8, buffer: _f64x2, view: Float64Array, mulFn: binaryMul, fns: ["check", "splat", "replaceLane", "select", "equal", "notEqual", "lessThan", "lessThanOrEqual", "greaterThan", "greaterThanOrEqual", "add", "sub", "mul", "div", "neg", "abs", "min", "max", "minNum", "maxNum", "reciprocalApproximation", "reciprocalSqrtApproximation", "sqrt", "load", "store"], } // XXX Emscripten: Need these functions for intrinsics, see https://github.com/tc39/ecmascript_simd/issues/316. float64x2.fns.push("load1"); float64x2.fns.push("store1"); // XXX Emscripten var bool64x2 = { name: "Bool64x2", fn: SIMD.Bool64x2, lanes: 2, laneSize: 8, notFn: unaryLogicalNot, fns: ["check", "splat", "replaceLane", "allTrue", "anyTrue", "and", "or", "xor", "not"], } float64x2.boolType = bool64x2; float32x4.fromBits.push(float64x2); int32x4.fromBits.push(float64x2); int16x8.fromBits.push(float64x2); int8x16.fromBits.push(float64x2); uint32x4.fromBits.push(float64x2); uint16x8.fromBits.push(float64x2); uint8x16.fromBits.push(float64x2); float64x2.fromBits = [float32x4, int32x4, int16x8, int8x16, uint32x4, uint16x8, uint8x16]; /* // XXX Emscripten: Removed to fix https://github.com/tc39/ecmascript_simd/issues/314 int32x4.fromBits = [float32x4, int16x8, int8x16, uint32x4, uint16x8, uint8x16]; int16x8.fromBits = [float32x4, int32x4, int8x16, uint32x4, uint16x8, uint8x16]; int8x16.fromBits = [float32x4, int32x4, int16x8, uint32x4, uint16x8, uint8x16]; uint32x4.fromBits = [float32x4, int32x4, int16x8, int8x16, uint16x8, uint8x16]; uint16x8.fromBits = [float32x4, int32x4, int16x8, int8x16, uint32x4, uint8x16]; uint8x16.fromBits = [float32x4, int32x4, int16x8, int8x16, uint32x4, uint16x8]; */ simdTypes.push(float64x2); simdTypes.push(bool64x2); } // SIMD prototype functions. var prototypeFns = { valueOf: function(type) { return function() { throw new TypeError(type.name + " cannot be converted to a number"); } }, toString: function(type) { return function() { return simdToString(type, this); } }, toLocaleString: function(type) { return function() { return simdToLocaleString(type, this); } }, }; // SIMD constructor functions. var simdFns = { check: function(type) { return function(a) { if (!(a instanceof type.fn)) { throw new TypeError("Argument is not a " + type.name + "."); } return a; } }, splat: function(type) { return function(s) { return simdSplat(type, s); } }, replaceLane: function(type) { return function(a, i, s) { return simdReplaceLane(type, a, i, s); } }, allTrue: function(type) { return function(a) { return simdAllTrue(type, a); } }, anyTrue: function(type) { return function(a) { return simdAnyTrue(type, a); } }, and: function(type) { return function(a, b) { return simdBinaryOp(type, binaryAnd, a, b); } }, or: function(type) { return function(a, b) { return simdBinaryOp(type, binaryOr, a, b); } }, xor: function(type) { return function(a, b) { return simdBinaryOp(type, binaryXor, a, b); } }, not: function(type) { return function(a) { return simdUnaryOp(type, type.notFn, a); } }, equal: function(type) { return function(a, b) { return simdRelationalOp(type, binaryEqual, a, b); } }, notEqual: function(type) { return function(a, b) { return simdRelationalOp(type, binaryNotEqual, a, b); } }, lessThan: function(type) { return function(a, b) { return simdRelationalOp(type, binaryLess, a, b); } }, lessThanOrEqual: function(type) { return function(a, b) { return simdRelationalOp(type, binaryLessEqual, a, b); } }, greaterThan: function(type) { return function(a, b) { return simdRelationalOp(type, binaryGreater, a, b); } }, greaterThanOrEqual: function(type) { return function(a, b) { return simdRelationalOp(type, binaryGreaterEqual, a, b); } }, add: function(type) { return function(a, b) { return simdBinaryOp(type, binaryAdd, a, b); } }, sub: function(type) { return function(a, b) { return simdBinaryOp(type, binarySub, a, b); } }, mul: function(type) { return function(a, b) { return simdBinaryOp(type, type.mulFn, a, b); } }, div: function(type) { return function(a, b) { return simdBinaryOp(type, binaryDiv, a, b); } }, neg: function(type) { return function(a) { return simdUnaryOp(type, unaryNeg, a); } }, abs: function(type) { return function(a) { return simdUnaryOp(type, Math.abs, a); } }, min: function(type) { return function(a, b) { return simdBinaryOp(type, Math.min, a, b); } }, max: function(type) { return function(a, b) { return simdBinaryOp(type, Math.max, a, b); } }, minNum: function(type) { return function(a, b) { return simdBinaryOp(type, minNum, a, b); } }, maxNum: function(type) { return function(a, b) { return simdBinaryOp(type, maxNum, a, b); } }, load: function(type) { return function(tarray, index) { return simdLoad(type, tarray, index, type.lanes); } }, load1: function(type) { return function(tarray, index) { return simdLoad(type, tarray, index, 1); } }, load2: function(type) { return function(tarray, index) { return simdLoad(type, tarray, index, 2); } }, load3: function(type) { return function(tarray, index) { return simdLoad(type, tarray, index, 3); } }, store: function(type) { return function(tarray, index, a) { return simdStore(type, tarray, index, a, type.lanes); } }, store1: function(type) { return function(tarray, index, a) { return simdStore(type, tarray, index, a, 1); } }, store2: function(type) { return function(tarray, index, a) { return simdStore(type, tarray, index, a, 2); } }, store3: function(type) { return function(tarray, index, a) { return simdStore(type, tarray, index, a, 3); } }, select: function(type) { return function(selector, a, b) { return simdSelect(type, selector, a, b); } }, reciprocalApproximation: function(type) { return function(a) { a = type.fn.check(a); return type.fn.div(type.fn.splat(1.0), a); } }, reciprocalSqrtApproximation: function(type) { return function(a) { a = type.fn.check(a); return type.fn.reciprocalApproximation(type.fn.sqrt(a)); } }, sqrt: function(type) { return function(a) { return simdUnaryOp(type, Math.sqrt, a); } }, shiftLeftByScalar: function(type) { return function(a, bits) { bits &= type.laneSize * 8 - 1; return simdShiftOp(type, binaryShiftLeft, a, bits); } }, shiftRightByScalar: function(type) { if (type.unsigned) { return function(a, bits) { bits &= type.laneSize * 8 - 1; return simdShiftOp(type, binaryShiftRightLogical, a, bits); } } else { return function(a, bits) { bits &= type.laneSize * 8 - 1; return simdShiftOp(type, binaryShiftRightArithmetic, a, bits); } } }, addSaturate: function(type) { function addSaturate(a, b) { return clamp(a + b, type.minVal, type.maxVal); } return function(a, b) { return simdBinaryOp(type, addSaturate, a, b); } }, subSaturate: function(type) { function subSaturate(a, b) { return clamp(a - b, type.minVal, type.maxVal); } return function(a, b) { return simdBinaryOp(type, subSaturate, a, b); } }, } // Install functions. simdTypes.forEach(function(type) { // Install each prototype function on each SIMD prototype. var simdFn = type.fn; var proto = simdFn.prototype; for (var name in prototypeFns) { if (!proto.hasOwnProperty(name)) proto[name] = prototypeFns[name](type); } // Install regular functions. type.fns.forEach(function(name) { if (typeof simdFn[name] === "undefined") simdFn[name] = simdFns[name](type); }); // Install 'fromTIMD' functions. if (type.from) { type.from.forEach(function(fromType) { var name = "from" + fromType.name; var toType = type; // pull type into closure. if (typeof type.fn[name] === "undefined") { type.fn[name] = function(a) { return simdFrom(toType, fromType, a); } } }); } // Install 'fromTIMDBits' functions. if (type.fromBits) { type.fromBits.forEach(function(fromType) { var name = "from" + fromType.name + "Bits"; var toType = type; // pull type into closure. if (typeof type.fn[name] === "undefined") { type.fn[name] = function(a) { return simdFromBits(toType, fromType, a); } } }); } }); // If we're in a browser, the global namespace is named 'window'. If we're // in node, it's named 'global'. If we're in a web worker, it's named // 'self'. If we're in a shell, 'this' might work. })(typeof window !== "undefined" ? window : (typeof process === 'object' && typeof require === 'function' && typeof global === 'object') ? global : typeof self === 'object' ? self : this); // XXX Emscripten-specific below XXX // Work around Firefox Nightly bug that Float64x2 comparison return a Int32x4 instead of a Bool64x2. try { if (SIMD.Int32x4.check(SIMD.Float64x2.equal(SIMD.Float64x2.splat(5.0), SIMD.Float64x2.splat(5.0)))) { SIMD.Float64x2.prevEqual = SIMD.Float64x2.equal; SIMD.Float64x2.equal = function(a, b) { var int32x4 = SIMD.Float64x2.prevEqual(a, b); return SIMD.Bool64x2(SIMD.Int32x4.extractLane(int32x4, 1) != 0, SIMD.Int32x4.extractLane(int32x4, 3) != 0); } console.error('Warning: Patching up SIMD.Float64x2.equal to return a Bool64x2 instead of Int32x4!'); } } catch(e) {} try { if (SIMD.Int32x4.check(SIMD.Float64x2.notEqual(SIMD.Float64x2.splat(5.0), SIMD.Float64x2.splat(5.0)))) { SIMD.Float64x2.prevNotEqual = SIMD.Float64x2.notEqual; SIMD.Float64x2.notEqual = function(a, b) { var int32x4 = SIMD.Float64x2.prevNotEqual(a, b); return SIMD.Bool64x2(SIMD.Int32x4.extractLane(int32x4, 1) != 0, SIMD.Int32x4.extractLane(int32x4, 3) != 0); } console.error('Warning: Patching up SIMD.Float64x2.notEqual to return a Bool64x2 instead of Int32x4!'); } } catch(e) {} try { if (SIMD.Int32x4.check(SIMD.Float64x2.greaterThan(SIMD.Float64x2.splat(5.0), SIMD.Float64x2.splat(5.0)))) { SIMD.Float64x2.prevGreaterThan = SIMD.Float64x2.greaterThan; SIMD.Float64x2.greaterThan = function(a, b) { var int32x4 = SIMD.Float64x2.prevGreaterThan(a, b); return SIMD.Bool64x2(SIMD.Int32x4.extractLane(int32x4, 1) != 0, SIMD.Int32x4.extractLane(int32x4, 3) != 0); } console.error('Warning: Patching up SIMD.Float64x2.greaterThan to return a Bool64x2 instead of Int32x4!'); } } catch(e) {} try { if (SIMD.Int32x4.check(SIMD.Float64x2.greaterThanOrEqual(SIMD.Float64x2.splat(5.0), SIMD.Float64x2.splat(5.0)))) { SIMD.Float64x2.prevGreaterThanOrEqual = SIMD.Float64x2.greaterThanOrEqual; SIMD.Float64x2.greaterThanOrEqual = function(a, b) { var int32x4 = SIMD.Float64x2.prevGreaterThanOrEqual(a, b); return SIMD.Bool64x2(SIMD.Int32x4.extractLane(int32x4, 1) != 0, SIMD.Int32x4.extractLane(int32x4, 3) != 0); } console.error('Warning: Patching up SIMD.Float64x2.greaterThanOrEqual to return a Bool64x2 instead of Int32x4!'); } } catch(e) {} try { if (SIMD.Int32x4.check(SIMD.Float64x2.lessThan(SIMD.Float64x2.splat(5.0), SIMD.Float64x2.splat(5.0)))) { SIMD.Float64x2.prevLessThan = SIMD.Float64x2.lessThan; SIMD.Float64x2.lessThan = function(a, b) { var int32x4 = SIMD.Float64x2.prevLessThan(a, b); return SIMD.Bool64x2(SIMD.Int32x4.extractLane(int32x4, 1) != 0, SIMD.Int32x4.extractLane(int32x4, 3) != 0); } console.error('Warning: Patching up SIMD.Float64x2.lessThan to return a Bool64x2 instead of Int32x4!'); } } catch(e) {} try { if (SIMD.Int32x4.check(SIMD.Float64x2.lessThanOrEqual(SIMD.Float64x2.splat(5.0), SIMD.Float64x2.splat(5.0)))) { SIMD.Float64x2.prevLessThanOrEqual = SIMD.Float64x2.lessThanOrEqual; SIMD.Float64x2.lessThanOrEqual = function(a, b) { var int32x4 = SIMD.Float64x2.prevLessThanOrEqual(a, b); return SIMD.Bool64x2(SIMD.Int32x4.extractLane(int32x4, 1) != 0, SIMD.Int32x4.extractLane(int32x4, 3) != 0); } console.error('Warning: Patching up SIMD.Float64x2.lessThanOrEqual to return a Bool64x2 instead of Int32x4!'); } } catch(e) {} if (!SIMD.Int32x4.fromBool64x2Bits) { SIMD.Int32x4.fromBool64x2Bits = function(bool64x2) { var lane0 = SIMD.Bool64x2.extractLane(bool64x2, 0)?-1:0; var lane1 = SIMD.Bool64x2.extractLane(bool64x2, 1)?-1:0; return SIMD.Int32x4(lane0, lane0, lane1, lane1); } } // The Module object: Our interface to the outside world. We import // and export values on it. There are various ways Module can be used: // 1. Not defined. We create it here // 2. A function parameter, function(Module) { ..generated code.. } // 3. pre-run appended it, var Module = {}; ..generated code.. // 4. External script tag defines var Module. // We need to check if Module already exists (e.g. case 3 above). // Substitution will be replaced with actual code on later stage of the build, // this way Closure Compiler will not mangle it (e.g. case 4. above). // Note that if you want to run closure, and also to use Module // after the generated code, you will need to define var Module = {}; // before the code. Then that object will be used in the code, and you // can continue to use Module afterwards as well. var Module = typeof Module !== 'undefined' ? Module : {}; // --pre-jses are emitted after the Module integration code, so that they can // refer to Module (if they choose; they can also define Module) // {{PRE_JSES}} // Sometimes an existing Module object exists with properties // meant to overwrite the default module functionality. Here // we collect those properties and reapply _after_ we configure // the current environment's defaults to avoid having to be so // defensive during initialization. var moduleOverrides = {}; var key; for (key in Module) { if (Module.hasOwnProperty(key)) { moduleOverrides[key] = Module[key]; } } Module['arguments'] = []; Module['thisProgram'] = './this.program'; Module['quit'] = function(status, toThrow) { throw toThrow; }; Module['preRun'] = []; Module['postRun'] = []; // The environment setup code below is customized to use Module. // *** Environment setup code *** var ENVIRONMENT_IS_WEB = false; var ENVIRONMENT_IS_WORKER = false; var ENVIRONMENT_IS_NODE = false; var ENVIRONMENT_IS_SHELL = false; // Three configurations we can be running in: // 1) We could be the application main() thread running in the main JS UI thread. (ENVIRONMENT_IS_WORKER == false and ENVIRONMENT_IS_PTHREAD == false) // 2) We could be the application main() thread proxied to worker. (with Emscripten -s PROXY_TO_WORKER=1) (ENVIRONMENT_IS_WORKER == true, ENVIRONMENT_IS_PTHREAD == false) // 3) We could be an application pthread running in a worker. (ENVIRONMENT_IS_WORKER == true and ENVIRONMENT_IS_PTHREAD == true) if (Module['ENVIRONMENT']) { if (Module['ENVIRONMENT'] === 'WEB') { ENVIRONMENT_IS_WEB = true; } else if (Module['ENVIRONMENT'] === 'WORKER') { ENVIRONMENT_IS_WORKER = true; } else if (Module['ENVIRONMENT'] === 'NODE') { ENVIRONMENT_IS_NODE = true; } else if (Module['ENVIRONMENT'] === 'SHELL') { ENVIRONMENT_IS_SHELL = true; } else { throw new Error('Module[\'ENVIRONMENT\'] value is not valid. must be one of: WEB|WORKER|NODE|SHELL.'); } } else { ENVIRONMENT_IS_WEB = typeof window === 'object'; ENVIRONMENT_IS_WORKER = typeof importScripts === 'function'; ENVIRONMENT_IS_NODE = typeof process === 'object' && typeof require === 'function' && !ENVIRONMENT_IS_WEB && !ENVIRONMENT_IS_WORKER; ENVIRONMENT_IS_SHELL = !ENVIRONMENT_IS_WEB && !ENVIRONMENT_IS_NODE && !ENVIRONMENT_IS_WORKER; } if (ENVIRONMENT_IS_NODE) { // Expose functionality in the same simple way that the shells work // Note that we pollute the global namespace here, otherwise we break in node var nodeFS; var nodePath; Module['read'] = function shell_read(filename, binary) { var ret; ret = tryParseAsDataURI(filename); if (!ret) { if (!nodeFS) nodeFS = require('fs'); if (!nodePath) nodePath = require('path'); filename = nodePath['normalize'](filename); ret = nodeFS['readFileSync'](filename); } return binary ? ret : ret.toString(); }; Module['readBinary'] = function readBinary(filename) { var ret = Module['read'](filename, true); if (!ret.buffer) { ret = new Uint8Array(ret); } assert(ret.buffer); return ret; }; if (process['argv'].length > 1) { Module['thisProgram'] = process['argv'][1].replace(/\\/g, '/'); } Module['arguments'] = process['argv'].slice(2); if (typeof module !== 'undefined') { module['exports'] = Module; } process['on']('uncaughtException', function(ex) { // suppress ExitStatus exceptions from showing an error if (!(ex instanceof ExitStatus)) { throw ex; } }); // Currently node will swallow unhandled rejections, but this behavior is // deprecated, and in the future it will exit with error status. process['on']('unhandledRejection', function(reason, p) { Module['printErr']('node.js exiting due to unhandled promise rejection'); process['exit'](1); }); Module['inspect'] = function () { return '[Emscripten Module object]'; }; } else if (ENVIRONMENT_IS_SHELL) { if (typeof read != 'undefined') { Module['read'] = function shell_read(f) { var data = tryParseAsDataURI(f); if (data) { return intArrayToString(data); } return read(f); }; } Module['readBinary'] = function readBinary(f) { var data; data = tryParseAsDataURI(f); if (data) { return data; } if (typeof readbuffer === 'function') { return new Uint8Array(readbuffer(f)); } data = read(f, 'binary'); assert(typeof data === 'object'); return data; }; if (typeof scriptArgs != 'undefined') { Module['arguments'] = scriptArgs; } else if (typeof arguments != 'undefined') { Module['arguments'] = arguments; } if (typeof quit === 'function') { Module['quit'] = function(status, toThrow) { quit(status); } } } else if (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) { Module['read'] = function shell_read(url) { try { var xhr = new XMLHttpRequest(); xhr.open('GET', url, false); xhr.send(null); return xhr.responseText; } catch (err) { var data = tryParseAsDataURI(url); if (data) { return intArrayToString(data); } throw err; } }; if (ENVIRONMENT_IS_WORKER) { Module['readBinary'] = function readBinary(url) { try { var xhr = new XMLHttpRequest(); xhr.open('GET', url, false); xhr.responseType = 'arraybuffer'; xhr.send(null); return new Uint8Array(xhr.response); } catch (err) { var data = tryParseAsDataURI(url); if (data) { return data; } throw err; } }; } Module['readAsync'] = function readAsync(url, onload, onerror) { var xhr = new XMLHttpRequest(); xhr.open('GET', url, true); xhr.responseType = 'arraybuffer'; xhr.onload = function xhr_onload() { if (xhr.status == 200 || (xhr.status == 0 && xhr.response)) { // file URLs can return 0 onload(xhr.response); return; } var data = tryParseAsDataURI(url); if (data) { onload(data.buffer); return; } onerror(); }; xhr.onerror = onerror; xhr.send(null); }; if (typeof arguments != 'undefined') { Module['arguments'] = arguments; } Module['setWindowTitle'] = function(title) { document.title = title }; } else { // Unreachable because SHELL is dependent on the others throw new Error('unknown runtime environment'); } // console.log is checked first, as 'print' on the web will open a print dialogue // printErr is preferable to console.warn (works better in shells) // bind(console) is necessary to fix IE/Edge closed dev tools panel behavior. Module['print'] = typeof console !== 'undefined' ? console.log.bind(console) : (typeof print !== 'undefined' ? print : null); Module['printErr'] = typeof printErr !== 'undefined' ? printErr : ((typeof console !== 'undefined' && console.warn.bind(console)) || Module['print']); // *** Environment setup code *** // Closure helpers Module.print = Module['print']; Module.printErr = Module['printErr']; // Merge back in the overrides for (key in moduleOverrides) { if (moduleOverrides.hasOwnProperty(key)) { Module[key] = moduleOverrides[key]; } } // Free the object hierarchy contained in the overrides, this lets the GC // reclaim data used e.g. in memoryInitializerRequest, which is a large typed array. moduleOverrides = undefined; // {{PREAMBLE_ADDITIONS}} var STACK_ALIGN = 16; // stack management, and other functionality that is provided by the compiled code, // should not be used before it is ready stackSave = stackRestore = stackAlloc = setTempRet0 = getTempRet0 = function() { abort('cannot use the stack before compiled code is ready to run, and has provided stack access'); }; function staticAlloc(size) { assert(!staticSealed); var ret = STATICTOP; STATICTOP = (STATICTOP + size + 15) & -16; return ret; } function dynamicAlloc(size) { assert(DYNAMICTOP_PTR); var ret = HEAP32[DYNAMICTOP_PTR>>2]; var end = (ret + size + 15) & -16; HEAP32[DYNAMICTOP_PTR>>2] = end; if (end >= TOTAL_MEMORY) { var success = enlargeMemory(); if (!success) { HEAP32[DYNAMICTOP_PTR>>2] = ret; return 0; } } return ret; } function alignMemory(size, factor) { if (!factor) factor = STACK_ALIGN; // stack alignment (16-byte) by default var ret = size = Math.ceil(size / factor) * factor; return ret; } function getNativeTypeSize(type) { switch (type) { case 'i1': case 'i8': return 1; case 'i16': return 2; case 'i32': return 4; case 'i64': return 8; case 'float': return 4; case 'double': return 8; default: { if (type[type.length-1] === '*') { return 4; // A pointer } else if (type[0] === 'i') { var bits = parseInt(type.substr(1)); assert(bits % 8 === 0); return bits / 8; } else { return 0; } } } } function warnOnce(text) { if (!warnOnce.shown) warnOnce.shown = {}; if (!warnOnce.shown[text]) { warnOnce.shown[text] = 1; Module.printErr(text); } } var jsCallStartIndex = 1; var functionPointers = new Array(0); // 'sig' parameter is only used on LLVM wasm backend function addFunction(func, sig) { if (typeof sig === 'undefined') { Module.printErr('Warning: addFunction: Provide a wasm function signature ' + 'string as a second argument'); } var base = 0; for (var i = base; i < base + 0; i++) { if (!functionPointers[i]) { functionPointers[i] = func; return jsCallStartIndex + i; } } throw 'Finished up all reserved function pointers. Use a higher value for RESERVED_FUNCTION_POINTERS.'; } function removeFunction(index) { functionPointers[index-jsCallStartIndex] = null; } var funcWrappers = {}; function getFuncWrapper(func, sig) { if (!func) return; // on null pointer, return undefined assert(sig); if (!funcWrappers[sig]) { funcWrappers[sig] = {}; } var sigCache = funcWrappers[sig]; if (!sigCache[func]) { // optimize away arguments usage in common cases if (sig.length === 1) { sigCache[func] = function dynCall_wrapper() { return dynCall(sig, func); }; } else if (sig.length === 2) { sigCache[func] = function dynCall_wrapper(arg) { return dynCall(sig, func, [arg]); }; } else { // general case sigCache[func] = function dynCall_wrapper() { return dynCall(sig, func, Array.prototype.slice.call(arguments)); }; } } return sigCache[func]; } function makeBigInt(low, high, unsigned) { return unsigned ? ((+((low>>>0)))+((+((high>>>0)))*4294967296.0)) : ((+((low>>>0)))+((+((high|0)))*4294967296.0)); } function dynCall(sig, ptr, args) { if (args && args.length) { assert(args.length == sig.length-1); assert(('dynCall_' + sig) in Module, 'bad function pointer type - no table for sig \'' + sig + '\''); return Module['dynCall_' + sig].apply(null, [ptr].concat(args)); } else { assert(sig.length == 1); assert(('dynCall_' + sig) in Module, 'bad function pointer type - no table for sig \'' + sig + '\''); return Module['dynCall_' + sig].call(null, ptr); } } function getCompilerSetting(name) { throw 'You must build with -s RETAIN_COMPILER_SETTINGS=1 for getCompilerSetting or emscripten_get_compiler_setting to work'; } var Runtime = { // FIXME backwards compatibility layer for ports. Support some Runtime.* // for now, fix it there, then remove it from here. That way we // can minimize any period of breakage. dynCall: dynCall, // for SDL2 port // helpful errors getTempRet0: function() { abort('getTempRet0() is now a top-level function, after removing the Runtime object. Remove "Runtime."') }, staticAlloc: function() { abort('staticAlloc() is now a top-level function, after removing the Runtime object. Remove "Runtime."') }, stackAlloc: function() { abort('stackAlloc() is now a top-level function, after removing the Runtime object. Remove "Runtime."') }, }; // The address globals begin at. Very low in memory, for code size and optimization opportunities. // Above 0 is static memory, starting with globals. // Then the stack. // Then 'dynamic' memory for sbrk. var GLOBAL_BASE = 8; // === Preamble library stuff === // Documentation for the public APIs defined in this file must be updated in: // site/source/docs/api_reference/preamble.js.rst // A prebuilt local version of the documentation is available at: // site/build/text/docs/api_reference/preamble.js.txt // You can also build docs locally as HTML or other formats in site/ // An online HTML version (which may be of a different version of Emscripten) // is up at http://kripken.github.io/emscripten-site/docs/api_reference/preamble.js.html //======================================== // Runtime essentials //======================================== var ABORT = 0; // whether we are quitting the application. no code should run after this. set in exit() and abort() var EXITSTATUS = 0; /** @type {function(*, string=)} */ function assert(condition, text) { if (!condition) { abort('Assertion failed: ' + text); } } var globalScope = this; // Returns the C function with a specified identifier (for C++, you need to do manual name mangling) function getCFunc(ident) { var func = Module['_' + ident]; // closure exported function assert(func, 'Cannot call unknown function ' + ident + ', make sure it is exported'); return func; } var JSfuncs = { // Helpers for cwrap -- it can't refer to Runtime directly because it might // be renamed by closure, instead it calls JSfuncs['stackSave'].body to find // out what the minified function name is. 'stackSave': function() { stackSave() }, 'stackRestore': function() { stackRestore() }, // type conversion from js to c 'arrayToC' : function(arr) { var ret = stackAlloc(arr.length); writeArrayToMemory(arr, ret); return ret; }, 'stringToC' : function(str) { var ret = 0; if (str !== null && str !== undefined && str !== 0) { // null string // at most 4 bytes per UTF-8 code point, +1 for the trailing '\0' var len = (str.length << 2) + 1; ret = stackAlloc(len); stringToUTF8(str, ret, len); } return ret; } }; // For fast lookup of conversion functions var toC = {'string' : JSfuncs['stringToC'], 'array' : JSfuncs['arrayToC']}; // C calling interface. function ccall (ident, returnType, argTypes, args, opts) { var func = getCFunc(ident); var cArgs = []; var stack = 0; assert(returnType !== 'array', 'Return type should not be "array".'); if (args) { for (var i = 0; i < args.length; i++) { var converter = toC[argTypes[i]]; if (converter) { if (stack === 0) stack = stackSave(); cArgs[i] = converter(args[i]); } else { cArgs[i] = args[i]; } } } var ret = func.apply(null, cArgs); if (returnType === 'string') ret = Pointer_stringify(ret); if (stack !== 0) { stackRestore(stack); } return ret; } function cwrap (ident, returnType, argTypes) { argTypes = argTypes || []; var cfunc = getCFunc(ident); // When the function takes numbers and returns a number, we can just return // the original function var numericArgs = argTypes.every(function(type){ return type === 'number'}); var numericRet = returnType !== 'string'; if (numericRet && numericArgs) { return cfunc; } return function() { return ccall(ident, returnType, argTypes, arguments); } } /** @type {function(number, number, string, boolean=)} */ function setValue(ptr, value, type, noSafe) { type = type || 'i8'; if (type.charAt(type.length-1) === '*') type = 'i32'; // pointers are 32-bit switch(type) { case 'i1': HEAP8[((ptr)>>0)]=value; break; case 'i8': HEAP8[((ptr)>>0)]=value; break; case 'i16': HEAP16[((ptr)>>1)]=value; break; case 'i32': HEAP32[((ptr)>>2)]=value; break; case 'i64': (tempI64 = [value>>>0,(tempDouble=value,(+(Math_abs(tempDouble))) >= 1.0 ? (tempDouble > 0.0 ? ((Math_min((+(Math_floor((tempDouble)/4294967296.0))), 4294967295.0))|0)>>>0 : (~~((+(Math_ceil((tempDouble - +(((~~(tempDouble)))>>>0))/4294967296.0)))))>>>0) : 0)],HEAP32[((ptr)>>2)]=tempI64[0],HEAP32[(((ptr)+(4))>>2)]=tempI64[1]); break; case 'float': HEAPF32[((ptr)>>2)]=value; break; case 'double': HEAPF64[((ptr)>>3)]=value; break; default: abort('invalid type for setValue: ' + type); } } /** @type {function(number, string, boolean=)} */ function getValue(ptr, type, noSafe) { type = type || 'i8'; if (type.charAt(type.length-1) === '*') type = 'i32'; // pointers are 32-bit switch(type) { case 'i1': return HEAP8[((ptr)>>0)]; case 'i8': return HEAP8[((ptr)>>0)]; case 'i16': return HEAP16[((ptr)>>1)]; case 'i32': return HEAP32[((ptr)>>2)]; case 'i64': return HEAP32[((ptr)>>2)]; case 'float': return HEAPF32[((ptr)>>2)]; case 'double': return HEAPF64[((ptr)>>3)]; default: abort('invalid type for getValue: ' + type); } return null; } var ALLOC_NORMAL = 0; // Tries to use _malloc() var ALLOC_STACK = 1; // Lives for the duration of the current function call var ALLOC_STATIC = 2; // Cannot be freed var ALLOC_DYNAMIC = 3; // Cannot be freed except through sbrk var ALLOC_NONE = 4; // Do not allocate // allocate(): This is for internal use. You can use it yourself as well, but the interface // is a little tricky (see docs right below). The reason is that it is optimized // for multiple syntaxes to save space in generated code. So you should // normally not use allocate(), and instead allocate memory using _malloc(), // initialize it with setValue(), and so forth. // @slab: An array of data, or a number. If a number, then the size of the block to allocate, // in *bytes* (note that this is sometimes confusing: the next parameter does not // affect this!) // @types: Either an array of types, one for each byte (or 0 if no type at that position), // or a single type which is used for the entire block. This only matters if there // is initial data - if @slab is a number, then this does not matter at all and is // ignored. // @allocator: How to allocate memory, see ALLOC_* /** @type {function((TypedArray|Array|number), string, number, number=)} */ function allocate(slab, types, allocator, ptr) { var zeroinit, size; if (typeof slab === 'number') { zeroinit = true; size = slab; } else { zeroinit = false; size = slab.length; } var singleType = typeof types === 'string' ? types : null; var ret; if (allocator == ALLOC_NONE) { ret = ptr; } else { ret = [typeof _malloc === 'function' ? _malloc : staticAlloc, stackAlloc, staticAlloc, dynamicAlloc][allocator === undefined ? ALLOC_STATIC : allocator](Math.max(size, singleType ? 1 : types.length)); } if (zeroinit) { var stop; ptr = ret; assert((ret & 3) == 0); stop = ret + (size & ~3); for (; ptr < stop; ptr += 4) { HEAP32[((ptr)>>2)]=0; } stop = ret + size; while (ptr < stop) { HEAP8[((ptr++)>>0)]=0; } return ret; } if (singleType === 'i8') { if (slab.subarray || slab.slice) { HEAPU8.set(/** @type {!Uint8Array} */ (slab), ret); } else { HEAPU8.set(new Uint8Array(slab), ret); } return ret; } var i = 0, type, typeSize, previousType; while (i < size) { var curr = slab[i]; type = singleType || types[i]; if (type === 0) { i++; continue; } assert(type, 'Must know what type to store in allocate!'); if (type == 'i64') type = 'i32'; // special case: we have one i32 here, and one i32 later setValue(ret+i, curr, type); // no need to look up size unless type changes, so cache it if (previousType !== type) { typeSize = getNativeTypeSize(type); previousType = type; } i += typeSize; } return ret; } // Allocate memory during any stage of startup - static memory early on, dynamic memory later, malloc when ready function getMemory(size) { if (!staticSealed) return staticAlloc(size); if (!runtimeInitialized) return dynamicAlloc(size); return _malloc(size); } /** @type {function(number, number=)} */ function Pointer_stringify(ptr, length) { if (length === 0 || !ptr) return ''; // TODO: use TextDecoder // Find the length, and check for UTF while doing so var hasUtf = 0; var t; var i = 0; while (1) { assert(ptr + i < TOTAL_MEMORY); t = HEAPU8[(((ptr)+(i))>>0)]; hasUtf |= t; if (t == 0 && !length) break; i++; if (length && i == length) break; } if (!length) length = i; var ret = ''; if (hasUtf < 128) { var MAX_CHUNK = 1024; // split up into chunks, because .apply on a huge string can overflow the stack var curr; while (length > 0) { curr = String.fromCharCode.apply(String, HEAPU8.subarray(ptr, ptr + Math.min(length, MAX_CHUNK))); ret = ret ? ret + curr : curr; ptr += MAX_CHUNK; length -= MAX_CHUNK; } return ret; } return UTF8ToString(ptr); } // Given a pointer 'ptr' to a null-terminated ASCII-encoded string in the emscripten HEAP, returns // a copy of that string as a Javascript String object. function AsciiToString(ptr) { var str = ''; while (1) { var ch = HEAP8[((ptr++)>>0)]; if (!ch) return str; str += String.fromCharCode(ch); } } // Copies the given Javascript String object 'str' to the emscripten HEAP at address 'outPtr', // null-terminated and encoded in ASCII form. The copy will require at most str.length+1 bytes of space in the HEAP. function stringToAscii(str, outPtr) { return writeAsciiToMemory(str, outPtr, false); } // Given a pointer 'ptr' to a null-terminated UTF8-encoded string in the given array that contains uint8 values, returns // a copy of that string as a Javascript String object. var UTF8Decoder = typeof TextDecoder !== 'undefined' ? new TextDecoder('utf8') : undefined; function UTF8ArrayToString(u8Array, idx) { var endPtr = idx; // TextDecoder needs to know the byte length in advance, it doesn't stop on null terminator by itself. // Also, use the length info to avoid running tiny strings through TextDecoder, since .subarray() allocates garbage. while (u8Array[endPtr]) ++endPtr; if (endPtr - idx > 16 && u8Array.subarray && UTF8Decoder) { return UTF8Decoder.decode(u8Array.subarray(idx, endPtr)); } else { var u0, u1, u2, u3, u4, u5; var str = ''; while (1) { // For UTF8 byte structure, see http://en.wikipedia.org/wiki/UTF-8#Description and https://www.ietf.org/rfc/rfc2279.txt and https://tools.ietf.org/html/rfc3629 u0 = u8Array[idx++]; if (!u0) return str; if (!(u0 & 0x80)) { str += String.fromCharCode(u0); continue; } u1 = u8Array[idx++] & 63; if ((u0 & 0xE0) == 0xC0) { str += String.fromCharCode(((u0 & 31) << 6) | u1); continue; } u2 = u8Array[idx++] & 63; if ((u0 & 0xF0) == 0xE0) { u0 = ((u0 & 15) << 12) | (u1 << 6) | u2; } else { u3 = u8Array[idx++] & 63; if ((u0 & 0xF8) == 0xF0) { u0 = ((u0 & 7) << 18) | (u1 << 12) | (u2 << 6) | u3; } else { u4 = u8Array[idx++] & 63; if ((u0 & 0xFC) == 0xF8) { u0 = ((u0 & 3) << 24) | (u1 << 18) | (u2 << 12) | (u3 << 6) | u4; } else { u5 = u8Array[idx++] & 63; u0 = ((u0 & 1) << 30) | (u1 << 24) | (u2 << 18) | (u3 << 12) | (u4 << 6) | u5; } } } if (u0 < 0x10000) { str += String.fromCharCode(u0); } else { var ch = u0 - 0x10000; str += String.fromCharCode(0xD800 | (ch >> 10), 0xDC00 | (ch & 0x3FF)); } } } } // Given a pointer 'ptr' to a null-terminated UTF8-encoded string in the emscripten HEAP, returns // a copy of that string as a Javascript String object. function UTF8ToString(ptr) { return UTF8ArrayToString(HEAPU8,ptr); } // Copies the given Javascript String object 'str' to the given byte array at address 'outIdx', // encoded in UTF8 form and null-terminated. The copy will require at most str.length*4+1 bytes of space in the HEAP. // Use the function lengthBytesUTF8 to compute the exact number of bytes (excluding null terminator) that this function will write. // Parameters: // str: the Javascript string to copy. // outU8Array: the array to copy to. Each index in this array is assumed to be one 8-byte element. // outIdx: The starting offset in the array to begin the copying. // maxBytesToWrite: The maximum number of bytes this function can write to the array. This count should include the null // terminator, i.e. if maxBytesToWrite=1, only the null terminator will be written and nothing else. // maxBytesToWrite=0 does not write any bytes to the output, not even the null terminator. // Returns the number of bytes written, EXCLUDING the null terminator. function stringToUTF8Array(str, outU8Array, outIdx, maxBytesToWrite) { if (!(maxBytesToWrite > 0)) // Parameter maxBytesToWrite is not optional. Negative values, 0, null, undefined and false each don't write out any bytes. return 0; var startIdx = outIdx; var endIdx = outIdx + maxBytesToWrite - 1; // -1 for string null terminator. for (var i = 0; i < str.length; ++i) { // Gotcha: charCodeAt returns a 16-bit word that is a UTF-16 encoded code unit, not a Unicode code point of the character! So decode UTF16->UTF32->UTF8. // See http://unicode.org/faq/utf_bom.html#utf16-3 // For UTF8 byte structure, see http://en.wikipedia.org/wiki/UTF-8#Description and https://www.ietf.org/rfc/rfc2279.txt and https://tools.ietf.org/html/rfc3629 var u = str.charCodeAt(i); // possibly a lead surrogate if (u >= 0xD800 && u <= 0xDFFF) u = 0x10000 + ((u & 0x3FF) << 10) | (str.charCodeAt(++i) & 0x3FF); if (u <= 0x7F) { if (outIdx >= endIdx) break; outU8Array[outIdx++] = u; } else if (u <= 0x7FF) { if (outIdx + 1 >= endIdx) break; outU8Array[outIdx++] = 0xC0 | (u >> 6); outU8Array[outIdx++] = 0x80 | (u & 63); } else if (u <= 0xFFFF) { if (outIdx + 2 >= endIdx) break; outU8Array[outIdx++] = 0xE0 | (u >> 12); outU8Array[outIdx++] = 0x80 | ((u >> 6) & 63); outU8Array[outIdx++] = 0x80 | (u & 63); } else if (u <= 0x1FFFFF) { if (outIdx + 3 >= endIdx) break; outU8Array[outIdx++] = 0xF0 | (u >> 18); outU8Array[outIdx++] = 0x80 | ((u >> 12) & 63); outU8Array[outIdx++] = 0x80 | ((u >> 6) & 63); outU8Array[outIdx++] = 0x80 | (u & 63); } else if (u <= 0x3FFFFFF) { if (outIdx + 4 >= endIdx) break; outU8Array[outIdx++] = 0xF8 | (u >> 24); outU8Array[outIdx++] = 0x80 | ((u >> 18) & 63); outU8Array[outIdx++] = 0x80 | ((u >> 12) & 63); outU8Array[outIdx++] = 0x80 | ((u >> 6) & 63); outU8Array[outIdx++] = 0x80 | (u & 63); } else { if (outIdx + 5 >= endIdx) break; outU8Array[outIdx++] = 0xFC | (u >> 30); outU8Array[outIdx++] = 0x80 | ((u >> 24) & 63); outU8Array[outIdx++] = 0x80 | ((u >> 18) & 63); outU8Array[outIdx++] = 0x80 | ((u >> 12) & 63); outU8Array[outIdx++] = 0x80 | ((u >> 6) & 63); outU8Array[outIdx++] = 0x80 | (u & 63); } } // Null-terminate the pointer to the buffer. outU8Array[outIdx] = 0; return outIdx - startIdx; } // Copies the given Javascript String object 'str' to the emscripten HEAP at address 'outPtr', // null-terminated and encoded in UTF8 form. The copy will require at most str.length*4+1 bytes of space in the HEAP. // Use the function lengthBytesUTF8 to compute the exact number of bytes (excluding null terminator) that this function will write. // Returns the number of bytes written, EXCLUDING the null terminator. function stringToUTF8(str, outPtr, maxBytesToWrite) { assert(typeof maxBytesToWrite == 'number', 'stringToUTF8(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!'); return stringToUTF8Array(str, HEAPU8,outPtr, maxBytesToWrite); } // Returns the number of bytes the given Javascript string takes if encoded as a UTF8 byte array, EXCLUDING the null terminator byte. function lengthBytesUTF8(str) { var len = 0; for (var i = 0; i < str.length; ++i) { // Gotcha: charCodeAt returns a 16-bit word that is a UTF-16 encoded code unit, not a Unicode code point of the character! So decode UTF16->UTF32->UTF8. // See http://unicode.org/faq/utf_bom.html#utf16-3 var u = str.charCodeAt(i); // possibly a lead surrogate if (u >= 0xD800 && u <= 0xDFFF) u = 0x10000 + ((u & 0x3FF) << 10) | (str.charCodeAt(++i) & 0x3FF); if (u <= 0x7F) { ++len; } else if (u <= 0x7FF) { len += 2; } else if (u <= 0xFFFF) { len += 3; } else if (u <= 0x1FFFFF) { len += 4; } else if (u <= 0x3FFFFFF) { len += 5; } else { len += 6; } } return len; } // Given a pointer 'ptr' to a null-terminated UTF16LE-encoded string in the emscripten HEAP, returns // a copy of that string as a Javascript String object. var UTF16Decoder = typeof TextDecoder !== 'undefined' ? new TextDecoder('utf-16le') : undefined; function UTF16ToString(ptr) { assert(ptr % 2 == 0, 'Pointer passed to UTF16ToString must be aligned to two bytes!'); var endPtr = ptr; // TextDecoder needs to know the byte length in advance, it doesn't stop on null terminator by itself. // Also, use the length info to avoid running tiny strings through TextDecoder, since .subarray() allocates garbage. var idx = endPtr >> 1; while (HEAP16[idx]) ++idx; endPtr = idx << 1; if (endPtr - ptr > 32 && UTF16Decoder) { return UTF16Decoder.decode(HEAPU8.subarray(ptr, endPtr)); } else { var i = 0; var str = ''; while (1) { var codeUnit = HEAP16[(((ptr)+(i*2))>>1)]; if (codeUnit == 0) return str; ++i; // fromCharCode constructs a character from a UTF-16 code unit, so we can pass the UTF16 string right through. str += String.fromCharCode(codeUnit); } } } // Copies the given Javascript String object 'str' to the emscripten HEAP at address 'outPtr', // null-terminated and encoded in UTF16 form. The copy will require at most str.length*4+2 bytes of space in the HEAP. // Use the function lengthBytesUTF16() to compute the exact number of bytes (excluding null terminator) that this function will write. // Parameters: // str: the Javascript string to copy. // outPtr: Byte address in Emscripten HEAP where to write the string to. // maxBytesToWrite: The maximum number of bytes this function can write to the array. This count should include the null // terminator, i.e. if maxBytesToWrite=2, only the null terminator will be written and nothing else. // maxBytesToWrite<2 does not write any bytes to the output, not even the null terminator. // Returns the number of bytes written, EXCLUDING the null terminator. function stringToUTF16(str, outPtr, maxBytesToWrite) { assert(outPtr % 2 == 0, 'Pointer passed to stringToUTF16 must be aligned to two bytes!'); assert(typeof maxBytesToWrite == 'number', 'stringToUTF16(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!'); // Backwards compatibility: if max bytes is not specified, assume unsafe unbounded write is allowed. if (maxBytesToWrite === undefined) { maxBytesToWrite = 0x7FFFFFFF; } if (maxBytesToWrite < 2) return 0; maxBytesToWrite -= 2; // Null terminator. var startPtr = outPtr; var numCharsToWrite = (maxBytesToWrite < str.length*2) ? (maxBytesToWrite / 2) : str.length; for (var i = 0; i < numCharsToWrite; ++i) { // charCodeAt returns a UTF-16 encoded code unit, so it can be directly written to the HEAP. var codeUnit = str.charCodeAt(i); // possibly a lead surrogate HEAP16[((outPtr)>>1)]=codeUnit; outPtr += 2; } // Null-terminate the pointer to the HEAP. HEAP16[((outPtr)>>1)]=0; return outPtr - startPtr; } // Returns the number of bytes the given Javascript string takes if encoded as a UTF16 byte array, EXCLUDING the null terminator byte. function lengthBytesUTF16(str) { return str.length*2; } function UTF32ToString(ptr) { assert(ptr % 4 == 0, 'Pointer passed to UTF32ToString must be aligned to four bytes!'); var i = 0; var str = ''; while (1) { var utf32 = HEAP32[(((ptr)+(i*4))>>2)]; if (utf32 == 0) return str; ++i; // Gotcha: fromCharCode constructs a character from a UTF-16 encoded code (pair), not from a Unicode code point! So encode the code point to UTF-16 for constructing. // See http://unicode.org/faq/utf_bom.html#utf16-3 if (utf32 >= 0x10000) { var ch = utf32 - 0x10000; str += String.fromCharCode(0xD800 | (ch >> 10), 0xDC00 | (ch & 0x3FF)); } else { str += String.fromCharCode(utf32); } } } // Copies the given Javascript String object 'str' to the emscripten HEAP at address 'outPtr', // null-terminated and encoded in UTF32 form. The copy will require at most str.length*4+4 bytes of space in the HEAP. // Use the function lengthBytesUTF32() to compute the exact number of bytes (excluding null terminator) that this function will write. // Parameters: // str: the Javascript string to copy. // outPtr: Byte address in Emscripten HEAP where to write the string to. // maxBytesToWrite: The maximum number of bytes this function can write to the array. This count should include the null // terminator, i.e. if maxBytesToWrite=4, only the null terminator will be written and nothing else. // maxBytesToWrite<4 does not write any bytes to the output, not even the null terminator. // Returns the number of bytes written, EXCLUDING the null terminator. function stringToUTF32(str, outPtr, maxBytesToWrite) { assert(outPtr % 4 == 0, 'Pointer passed to stringToUTF32 must be aligned to four bytes!'); assert(typeof maxBytesToWrite == 'number', 'stringToUTF32(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!'); // Backwards compatibility: if max bytes is not specified, assume unsafe unbounded write is allowed. if (maxBytesToWrite === undefined) { maxBytesToWrite = 0x7FFFFFFF; } if (maxBytesToWrite < 4) return 0; var startPtr = outPtr; var endPtr = startPtr + maxBytesToWrite - 4; for (var i = 0; i < str.length; ++i) { // Gotcha: charCodeAt returns a 16-bit word that is a UTF-16 encoded code unit, not a Unicode code point of the character! We must decode the string to UTF-32 to the heap. // See http://unicode.org/faq/utf_bom.html#utf16-3 var codeUnit = str.charCodeAt(i); // possibly a lead surrogate if (codeUnit >= 0xD800 && codeUnit <= 0xDFFF) { var trailSurrogate = str.charCodeAt(++i); codeUnit = 0x10000 + ((codeUnit & 0x3FF) << 10) | (trailSurrogate & 0x3FF); } HEAP32[((outPtr)>>2)]=codeUnit; outPtr += 4; if (outPtr + 4 > endPtr) break; } // Null-terminate the pointer to the HEAP. HEAP32[((outPtr)>>2)]=0; return outPtr - startPtr; } // Returns the number of bytes the given Javascript string takes if encoded as a UTF16 byte array, EXCLUDING the null terminator byte. function lengthBytesUTF32(str) { var len = 0; for (var i = 0; i < str.length; ++i) { // Gotcha: charCodeAt returns a 16-bit word that is a UTF-16 encoded code unit, not a Unicode code point of the character! We must decode the string to UTF-32 to the heap. // See http://unicode.org/faq/utf_bom.html#utf16-3 var codeUnit = str.charCodeAt(i); if (codeUnit >= 0xD800 && codeUnit <= 0xDFFF) ++i; // possibly a lead surrogate, so skip over the tail surrogate. len += 4; } return len; } // Allocate heap space for a JS string, and write it there. // It is the responsibility of the caller to free() that memory. function allocateUTF8(str) { var size = lengthBytesUTF8(str) + 1; var ret = _malloc(size); if (ret) stringToUTF8Array(str, HEAP8, ret, size); return ret; } // Allocate stack space for a JS string, and write it there. function allocateUTF8OnStack(str) { var size = lengthBytesUTF8(str) + 1; var ret = stackAlloc(size); stringToUTF8Array(str, HEAP8, ret, size); return ret; } function demangle(func) { warnOnce('warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling'); return func; } function demangleAll(text) { var regex = /__Z[\w\d_]+/g; return text.replace(regex, function(x) { var y = demangle(x); return x === y ? x : (x + ' [' + y + ']'); }); } function jsStackTrace() { var err = new Error(); if (!err.stack) { // IE10+ special cases: It does have callstack info, but it is only populated if an Error object is thrown, // so try that as a special-case. try { throw new Error(0); } catch(e) { err = e; } if (!err.stack) { return '(no stack trace available)'; } } return err.stack.toString(); } function stackTrace() { var js = jsStackTrace(); if (Module['extraStackTrace']) js += '\n' + Module['extraStackTrace'](); return demangleAll(js); } // Memory management var PAGE_SIZE = 16384; var WASM_PAGE_SIZE = 65536; var ASMJS_PAGE_SIZE = 16777216; var MIN_TOTAL_MEMORY = 16777216; function alignUp(x, multiple) { if (x % multiple > 0) { x += multiple - (x % multiple); } return x; } var HEAP, /** @type {ArrayBuffer} */ buffer, /** @type {Int8Array} */ HEAP8, /** @type {Uint8Array} */ HEAPU8, /** @type {Int16Array} */ HEAP16, /** @type {Uint16Array} */ HEAPU16, /** @type {Int32Array} */ HEAP32, /** @type {Uint32Array} */ HEAPU32, /** @type {Float32Array} */ HEAPF32, /** @type {Float64Array} */ HEAPF64; function updateGlobalBuffer(buf) { Module['buffer'] = buffer = buf; } function updateGlobalBufferViews() { Module['HEAP8'] = HEAP8 = new Int8Array(buffer); Module['HEAP16'] = HEAP16 = new Int16Array(buffer); Module['HEAP32'] = HEAP32 = new Int32Array(buffer); Module['HEAPU8'] = HEAPU8 = new Uint8Array(buffer); Module['HEAPU16'] = HEAPU16 = new Uint16Array(buffer); Module['HEAPU32'] = HEAPU32 = new Uint32Array(buffer); Module['HEAPF32'] = HEAPF32 = new Float32Array(buffer); Module['HEAPF64'] = HEAPF64 = new Float64Array(buffer); } var STATIC_BASE, STATICTOP, staticSealed; // static area var STACK_BASE, STACKTOP, STACK_MAX; // stack area var DYNAMIC_BASE, DYNAMICTOP_PTR; // dynamic area handled by sbrk STATIC_BASE = STATICTOP = STACK_BASE = STACKTOP = STACK_MAX = DYNAMIC_BASE = DYNAMICTOP_PTR = 0; staticSealed = false; // Initializes the stack cookie. Called at the startup of main and at the startup of each thread in pthreads mode. function writeStackCookie() { assert((STACK_MAX & 3) == 0); HEAPU32[(STACK_MAX >> 2)-1] = 0x02135467; HEAPU32[(STACK_MAX >> 2)-2] = 0x89BACDFE; } function checkStackCookie() { if (HEAPU32[(STACK_MAX >> 2)-1] != 0x02135467 || HEAPU32[(STACK_MAX >> 2)-2] != 0x89BACDFE) { abort('Stack overflow! Stack cookie has been overwritten, expected hex dwords 0x89BACDFE and 0x02135467, but received 0x' + HEAPU32[(STACK_MAX >> 2)-2].toString(16) + ' ' + HEAPU32[(STACK_MAX >> 2)-1].toString(16)); } // Also test the global address 0 for integrity. This check is not compatible with SAFE_SPLIT_MEMORY though, since that mode already tests all address 0 accesses on its own. if (HEAP32[0] !== 0x63736d65 /* 'emsc' */) throw 'Runtime error: The application has corrupted its heap memory area (address zero)!'; } function abortStackOverflow(allocSize) { abort('Stack overflow! Attempted to allocate ' + allocSize + ' bytes on the stack, but stack has only ' + (STACK_MAX - stackSave() + allocSize) + ' bytes available!'); } function abortOnCannotGrowMemory() { abort('Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value ' + TOTAL_MEMORY + ', (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 '); } function enlargeMemory() { abortOnCannotGrowMemory(); } var TOTAL_STACK = Module['TOTAL_STACK'] || 5242880; var TOTAL_MEMORY = Module['TOTAL_MEMORY'] || 16777216; if (TOTAL_MEMORY < TOTAL_STACK) Module.printErr('TOTAL_MEMORY should be larger than TOTAL_STACK, was ' + TOTAL_MEMORY + '! (TOTAL_STACK=' + TOTAL_STACK + ')'); // Initialize the runtime's memory // check for full engine support (use string 'subarray' to avoid closure compiler confusion) assert(typeof Int32Array !== 'undefined' && typeof Float64Array !== 'undefined' && Int32Array.prototype.subarray !== undefined && Int32Array.prototype.set !== undefined, 'JS engine does not provide full typed array support'); // Use a provided buffer, if there is one, or else allocate a new one if (Module['buffer']) { buffer = Module['buffer']; assert(buffer.byteLength === TOTAL_MEMORY, 'provided buffer should be ' + TOTAL_MEMORY + ' bytes, but it is ' + buffer.byteLength); } else { // Use a WebAssembly memory where available { buffer = new ArrayBuffer(TOTAL_MEMORY); } assert(buffer.byteLength === TOTAL_MEMORY); Module['buffer'] = buffer; } updateGlobalBufferViews(); function getTotalMemory() { return TOTAL_MEMORY; } // Endianness check (note: assumes compiler arch was little-endian) HEAP32[0] = 0x63736d65; /* 'emsc' */ HEAP16[1] = 0x6373; if (HEAPU8[2] !== 0x73 || HEAPU8[3] !== 0x63) throw 'Runtime error: expected the system to be little-endian!'; function callRuntimeCallbacks(callbacks) { while(callbacks.length > 0) { var callback = callbacks.shift(); if (typeof callback == 'function') { callback(); continue; } var func = callback.func; if (typeof func === 'number') { if (callback.arg === undefined) { Module['dynCall_v'](func); } else { Module['dynCall_vi'](func, callback.arg); } } else { func(callback.arg === undefined ? null : callback.arg); } } } var __ATPRERUN__ = []; // functions called before the runtime is initialized var __ATINIT__ = []; // functions called during startup var __ATMAIN__ = []; // functions called when main() is to be run var __ATEXIT__ = []; // functions called during shutdown var __ATPOSTRUN__ = []; // functions called after the runtime has exited var runtimeInitialized = false; var runtimeExited = false; function preRun() { // compatibility - merge in anything from Module['preRun'] at this time if (Module['preRun']) { if (typeof Module['preRun'] == 'function') Module['preRun'] = [Module['preRun']]; while (Module['preRun'].length) { addOnPreRun(Module['preRun'].shift()); } } callRuntimeCallbacks(__ATPRERUN__); } function ensureInitRuntime() { checkStackCookie(); if (runtimeInitialized) return; runtimeInitialized = true; callRuntimeCallbacks(__ATINIT__); } function preMain() { checkStackCookie(); callRuntimeCallbacks(__ATMAIN__); } function exitRuntime() { checkStackCookie(); callRuntimeCallbacks(__ATEXIT__); runtimeExited = true; } function postRun() { checkStackCookie(); // compatibility - merge in anything from Module['postRun'] at this time if (Module['postRun']) { if (typeof Module['postRun'] == 'function') Module['postRun'] = [Module['postRun']]; while (Module['postRun'].length) { addOnPostRun(Module['postRun'].shift()); } } callRuntimeCallbacks(__ATPOSTRUN__); } function addOnPreRun(cb) { __ATPRERUN__.unshift(cb); } function addOnInit(cb) { __ATINIT__.unshift(cb); } function addOnPreMain(cb) { __ATMAIN__.unshift(cb); } function addOnExit(cb) { __ATEXIT__.unshift(cb); } function addOnPostRun(cb) { __ATPOSTRUN__.unshift(cb); } // Deprecated: This function should not be called because it is unsafe and does not provide // a maximum length limit of how many bytes it is allowed to write. Prefer calling the // function stringToUTF8Array() instead, which takes in a maximum length that can be used // to be secure from out of bounds writes. /** @deprecated */ function writeStringToMemory(string, buffer, dontAddNull) { warnOnce('writeStringToMemory is deprecated and should not be called! Use stringToUTF8() instead!'); var /** @type {number} */ lastChar, /** @type {number} */ end; if (dontAddNull) { // stringToUTF8Array always appends null. If we don't want to do that, remember the // character that existed at the location where the null will be placed, and restore // that after the write (below). end = buffer + lengthBytesUTF8(string); lastChar = HEAP8[end]; } stringToUTF8(string, buffer, Infinity); if (dontAddNull) HEAP8[end] = lastChar; // Restore the value under the null character. } function writeArrayToMemory(array, buffer) { assert(array.length >= 0, 'writeArrayToMemory array must have a length (should be an array or typed array)') HEAP8.set(array, buffer); } function writeAsciiToMemory(str, buffer, dontAddNull) { for (var i = 0; i < str.length; ++i) { assert(str.charCodeAt(i) === str.charCodeAt(i)&0xff); HEAP8[((buffer++)>>0)]=str.charCodeAt(i); } // Null-terminate the pointer to the HEAP. if (!dontAddNull) HEAP8[((buffer)>>0)]=0; } function unSign(value, bits, ignore) { if (value >= 0) { return value; } return bits <= 32 ? 2*Math.abs(1 << (bits-1)) + value // Need some trickery, since if bits == 32, we are right at the limit of the bits JS uses in bitshifts : Math.pow(2, bits) + value; } function reSign(value, bits, ignore) { if (value <= 0) { return value; } var half = bits <= 32 ? Math.abs(1 << (bits-1)) // abs is needed if bits == 32 : Math.pow(2, bits-1); if (value >= half && (bits <= 32 || value > half)) { // for huge values, we can hit the precision limit and always get true here. so don't do that // but, in general there is no perfect solution here. With 64-bit ints, we get rounding and errors // TODO: In i64 mode 1, resign the two parts separately and safely value = -2*half + value; // Cannot bitshift half, as it may be at the limit of the bits JS uses in bitshifts } return value; } assert(Math['imul'] && Math['fround'] && Math['clz32'] && Math['trunc'], 'this is a legacy browser, build with LEGACY_VM_SUPPORT'); var Math_abs = Math.abs; var Math_cos = Math.cos; var Math_sin = Math.sin; var Math_tan = Math.tan; var Math_acos = Math.acos; var Math_asin = Math.asin; var Math_atan = Math.atan; var Math_atan2 = Math.atan2; var Math_exp = Math.exp; var Math_log = Math.log; var Math_sqrt = Math.sqrt; var Math_ceil = Math.ceil; var Math_floor = Math.floor; var Math_pow = Math.pow; var Math_imul = Math.imul; var Math_fround = Math.fround; var Math_round = Math.round; var Math_min = Math.min; var Math_max = Math.max; var Math_clz32 = Math.clz32; var Math_trunc = Math.trunc; // A counter of dependencies for calling run(). If we need to // do asynchronous work before running, increment this and // decrement it. Incrementing must happen in a place like // PRE_RUN_ADDITIONS (used by emcc to add file preloading). // Note that you can add dependencies in preRun, even though // it happens right before run - run will be postponed until // the dependencies are met. var runDependencies = 0; var runDependencyWatcher = null; var dependenciesFulfilled = null; // overridden to take different actions when all run dependencies are fulfilled var runDependencyTracking = {}; function getUniqueRunDependency(id) { var orig = id; while (1) { if (!runDependencyTracking[id]) return id; id = orig + Math.random(); } return id; } function addRunDependency(id) { runDependencies++; if (Module['monitorRunDependencies']) { Module['monitorRunDependencies'](runDependencies); } if (id) { assert(!runDependencyTracking[id]); runDependencyTracking[id] = 1; if (runDependencyWatcher === null && typeof setInterval !== 'undefined') { // Check for missing dependencies every few seconds runDependencyWatcher = setInterval(function() { if (ABORT) { clearInterval(runDependencyWatcher); runDependencyWatcher = null; return; } var shown = false; for (var dep in runDependencyTracking) { if (!shown) { shown = true; Module.printErr('still waiting on run dependencies:'); } Module.printErr('dependency: ' + dep); } if (shown) { Module.printErr('(end of list)'); } }, 10000); } } else { Module.printErr('warning: run dependency added without ID'); } } function removeRunDependency(id) { runDependencies--; if (Module['monitorRunDependencies']) { Module['monitorRunDependencies'](runDependencies); } if (id) { assert(runDependencyTracking[id]); delete runDependencyTracking[id]; } else { Module.printErr('warning: run dependency removed without ID'); } if (runDependencies == 0) { if (runDependencyWatcher !== null) { clearInterval(runDependencyWatcher); runDependencyWatcher = null; } if (dependenciesFulfilled) { var callback = dependenciesFulfilled; dependenciesFulfilled = null; callback(); // can add another dependenciesFulfilled } } } Module["preloadedImages"] = {}; // maps url to image data Module["preloadedAudios"] = {}; // maps url to audio data var memoryInitializer = null; var /* show errors on likely calls to FS when it was not included */ FS = { error: function() { abort('Filesystem support (FS) was not included. The problem is that you are using files from JS, but files were not used from C/C++, so filesystem support was not auto-included. You can force-include filesystem support with -s FORCE_FILESYSTEM=1'); }, init: function() { FS.error() }, createDataFile: function() { FS.error() }, createPreloadedFile: function() { FS.error() }, createLazyFile: function() { FS.error() }, open: function() { FS.error() }, mkdev: function() { FS.error() }, registerDevice: function() { FS.error() }, analyzePath: function() { FS.error() }, loadFilesFromDB: function() { FS.error() }, ErrnoError: function ErrnoError() { FS.error() }, }; Module['FS_createDataFile'] = FS.createDataFile; Module['FS_createPreloadedFile'] = FS.createPreloadedFile; // Prefix of data URIs emitted by SINGLE_FILE and related options. var dataURIPrefix = 'data:application/octet-stream;base64,'; // Indicates whether filename is a base64 data URI. function isDataURI(filename) { return String.prototype.startsWith ? filename.startsWith(dataURIPrefix) : filename.indexOf(dataURIPrefix) === 0; } // === Body === var ASM_CONSTS = []; STATIC_BASE = GLOBAL_BASE; STATICTOP = STATIC_BASE + 40304; /* global initializers */ __ATINIT__.push(); memoryInitializer = "data:application/octet-stream;base64,HFMAAHuWAABEUwAA25YAACAAAAAAAAAARFMAAIiWAAAwAAAAAAAAABxTAACplgAARFMAALaWAAAQAAAAAAAAAERTAAAMlwAACAAAAAAAAAAA+gAAECcAAOCrAAAQJwAAECcAAOgDAAD4KgAA6AMAALw0AADoAwAAsDYAANAHAAAoIwAA6AMAABAnAADoAwAA+CoAAOgDAADgLgAA0AcAABAnAADoAwAA+CoAAOgDAAC8NAAA6AMAALA2AADQBwAAKCMAAOgDAAAQJwAA6AMAAPgqAADoAwAA4C4AANAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAuAAAQJwAAECcAAPgqAAD4KgAAgD4AALw0AAC8NAAAmDoAAJg6AAAgTgAAgD4AAIA+AABQRgAAUEYAAMBdAABQRgAAUEYAAAhSAAAIUgAAAH0AAPBVAADwVQAAYG0AAGBtAAAA+gAAcJQAAHCUAABQwwAAUMMAAOAuAADoAwAAsDYAAOgDAACAPgAA6AMAACBOAADoAwAA8FUAAOgDAADmWjQ4d04zOdPZyTmSkTM6zGCMOmH7yTqZfgk7y4AzO9UlYzt3Low7qIqpO0W4yTuHpuw76C4JPK5mHTz3AjM8k/9JPE9YYjxeEXw8LpGLPL3HmTxcrKg88zy4PIF5yDzuX9k8OfDqPGMq/Tw1Bwg9EMwRPc3kGz1hUCY9yw4xPQAfPD3+gEc9xjRTPT84Xz1pi2s9RS54PWmQgj17MIk94PePPYrllj17+Z09sTOlPSGTrD1QGLQ9M8K7PU+Rwz0ShMs9ApvTPR/W2z3XM+Q9r7TsPSFY9T2oHf49oYIDPvIGCD7Hmww+3UARPjT2FT5Fuxo+EZAfPlR0JD7LZyk+M2ouPo17Mz5Smzg+xck9PhwGQz5ZUEg+eqhNPrcNUz5SgFg+CABePlSMYz7yJGk+JcpuPiR7dD6sN3o+AACAPqvpgj752IU+hc2IPlDHiz43xo4+98mRPrPSlD4m4Jc+D/KaPmwInj4cI6E+/0GkPtBkpz6xi6o+HLatPlTksD7TFbQ+ukq3PuiCuj75vb0+DfzAPuI8xD5WgMc+R8bKPpUOzj77WNE+eqXUPvHz1z4cRNs+2ZXePgjp4T6nPeU+U5PoPgzq6z6vQe8+HJryPg7z9T6ITPk+Iqb8PgAAAD/vrAE/vFkDP3kGBT/ysgY/KV8IP/oKCj9Wtgs/LGENP3wLDz8TtRA/8l0SPwgGFD9DrRU/glMXP7b4GD/cnBo/1T8cP4/hHT/5gR8/BCEhP4y+Ij+jWiQ/F/UlP9aNJz/yJCk/KLoqP5hNLD8B3y0/cm4vP8r7MD/5hjI/7Q80P6eWNT8EGzc/5Zw4P1gcOj89mTs/gxM9PyqLPj8AAEA/FXJBPzfhQj93TUQ/w7ZFP+scRz/+f0g/7N9JP5I8Sz/hlUw/6utNP3k+Tz+PjVA/K9lRPx0hUz9zZVQ/DaZVP+viVj/8G1g/L1FZP3OCWj/Jr1s/DtlcP0P+XT9YH18/SzxgP/xUYT9qaWI/hXljPzyFZD+gjGU/fo9mP9aNZz+6h2g/9nxpP5xtaj+KWWs/0UBsP08jbT8EAW4/8dluP/Otbz8cfXA/SUdxP3wMcj+0zHI/8IdzPxA+dD8T73Q/+pp1P7NBdj8/43Y/jX93P60WeD9+qHg/ATV5PzS8eT8YPno/nbp6P8Ixez93o3s/uw98P592fD8C2Hw/9DN9P2WKfT9E230/syZ+P49sfj/rrH4/o+d+P9ocfz9/TH8/gXZ/PwKbfz/QuX8/HNN/P8Xmfz/L9H8/L/1/PwAAgD8EAAAACAAAAAwAAAAQAAAAFAAAABgAAAAcAAAAIAAAACgAAAAwAAAAOAAAAEAAAABQAAAAYAAAAHAAAACIAAAAoAAAAMAAAADwAAAAAACAPgAAgD4AAIA+AACAPgAAgD4AAIA+AACAPgAAgD4AAIA+AACAPgAAgD4AAIA+AACAPgAAgD4AAIA+AACAPtAltD6XOa0+CaWfPvrtiz7NrGU++KkqPjQw0j1a8Q09WvENvTQw0r34qSq+zaxlvvrti74JpZ++lzmtvtAltL6HirE+G4OWPmAjST7EQo09xEKNvWAjSb4bg5a+h4qxvoeKsb4bg5a+YCNJvsRCjb3EQo09YCNJPhuDlj6HirE+lzmtPs2sZT5a8Q09+Kkqvgmln77QJbS++u2LvjQw0r00MNI9+u2LPtAltD4JpZ8++KkqPlrxDb3NrGW+lzmtvn09pz7Siwo+0osKvn09p759Pae+0osKvtKLCj59Pac+fT2nPtKLCj7Siwq+fT2nvn09p77Siwq+0osKPn09pz4JpZ8+WvENPfrti76XOa2+NDDSvc2sZT7QJbQ++KkqPvipKr7QJbS+zaxlvjQw0j2XOa0++u2LPlrxDb0JpZ++G4OWPsRCjb2HirG+YCNJvmAjST6HirE+xEKNPRuDlr4bg5a+xEKNPYeKsT5gI0k+YCNJvoeKsb7EQo29G4OWPvrtiz74qSq+lzmtvlrxDT3QJbQ+NDDSPQmln77NrGW+zaxlPgmlnz40MNK90CW0vlrxDb2XOa0++KkqPvrti74W67VAHmteQCOk4j+5xcw/W3xxQLhzCkB0YKE/iPWOPxOb9T8AAAAABcEjPel9oz0llvQ94nQiPqwcSj7dJXE+NLqLPrR3nj7kv7A+rYjCPiXJ0z4YeuQ+GJX0PsgKAj8cfAk/SZ0QP8ptFz/A7R0/nx0kP1T+KT8ukS8/4Nc0P2PUOT/wiD4/0/dCP6sjRz8XD0s/2LxOP60vUj9qalU/zm9YP5pCWz+O5V0/S1tgP26mYj9kyWQ/m8ZmP2+gaD/3WGo/gPJrP99ubT8L0G4/yhdwP+BHcT/hYXI/TWdzP5ZZdD8MOnU//wl2P4rKdj+7fHc/wCF4P2K6eD+dR3k/S8p5PyRDej/ysno/Oxp7P8h5ez8g0ns/yCN8PzdvfD/ytHw/XvV8P+AwfT/sZ30/t5p9P7TJfT8G9X0/ER1+PxhCfj9OZH4/04N+P/2gfj/tu34/w9R+P7Prfj/vAH8/hxR/P40mfz9DN38/qkZ/P+NUfz8PYn8/L25/P2R5fz++g38/P41/PxiWfz84nn8/wqV/P6Osfz8Qs38/9bh/P3e+fz9yw38/Gch/P2zMfz9b0H8/BtR/P2/Xfz+D2n8/Zt1/PxXgfz+C4n8/zeR/P+bmfz/N6H8/kup/P0bsfz/I7X8/KO9/P3jwfz+m8X8/w/J/P7/zfz+69H8/lPV/P172fz8n938/z/d/P3f4fz/9+H8/lPl/Pwn6fz9/+n8/9Pp/P1n7fz+t+38/Afx/P1T8fz+Y/H8/2/x/Px79fz9Q/X8/gv1/P7X9fz/n/X8/Cf5/Pzv+fz9d/n8/fv5/P4/+fz+w/n8/0v5/P+P+fz/0/n8/Ff9/Pyb/fz83/38/R/9/P1j/fz9Y/38/af9/P3r/fz96/38/i/9/P5v/fz+b/38/m/9/P6z/fz+s/38/vf9/P73/fz+9/38/zv9/P87/fz/O/38/zv9/P87/fz/e/38/3v9/P97/fz/e/38/3v9/P97/fz/v/38/7/9/P+//fz/v/38/7/9/P+//fz/v/38/7/9/P+//fz/v/38/7/9/P+//fz/v/38/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD9hZQAAgWUAABkAAAAgAAAAAAAAAKFoAADpaAAA6XEAACAAAAAYAAAAqXgAAKt4AAAYAAAAAgAAAAEAAAAAAIA/AAAAQAAAQEAAAIBAAACgQAAAwEAAAOBAAAAAQQAAgEEAAMBBAAAQQgAAMEIAAEhCAABgQgAAeEIAAIZCAACQQgAAnkIAALBCAADUQgAABkMAAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAQEAAAEBAAACAQAAAoEAAAMBAAAAAQQAAAEGViwAAN5gAAP+lAAAEtQAAZ8UAAEXXAADB6gAA//8AAPgLAACAuwAAeAAAABUAAAAVAAAAAJpZPwAAAAAAAIA/AACAP3hTAAADAAAACAAAAHgAAAALAAAAf3kAAKRTAABkDAAAgAcAAAMAAABEDgAAfA4AALQOAADsDgAAJA8AAIgBAADOUwAAZnoAAO57AABqHI04UrseOghp3DqC7Vc7iWOyOwMqBTww3Dk8tD53PByjnjzR8sU8/obxPJurED0FrSo9hMJGPVPmZD0RiYI9h5+TPcuypT3Rvrg9Or/MPVSv4T0Uivc9DiUHPtn0Ej5fMR8+aNcrPorjOD4wUkY+lB9UPr9HYj6OxnA+sJd/PlJbhz5gD48+mOWWPnnbnj5w7qY+2BuvPvtgtz4Ru78+RifIPrei0D54Ktk+lLvhPgxT6j7e7fI+Bon7Pr4QAj8fWgY/JJ8KP1DeDj8rFhM/QUUXPyVqGz9zgx8/zo8jP+aNJz90fCs/P1ovPxkmMz/n3jY/mYM6PzMTPj/FjEE/d+9EP386SD8nbUs/zoZOP+WGUT/xbFQ/jjhXP2npWT9Ff1w/+vleP3NZYT+vnWM/wcZlP8/UZz8RyGk/0qBrP25fbT9QBG8/9I9wP+YCcj+9XXM/H6F0P7/NdT9X5HY/sOV3P5fSeD/jq3k/c3J6Pycnez/nyns/nV58PzXjfD+cWX0/vcJ9P4Yffj/ecH4/q7d+P8/0fj8mKX8/hlV/P756fz+WmX8/zLJ/PxTHfz8c138/guN/P93sfz+2838/ivh/P8j7fz/W/X8/B/9/P6X/fz/o/38//f9/PwAAgD/gAQAAh4gIO/////8FAGAAAwAgAAQACAACAAQABAABAAAAAAAAAAAAAAAAAOhXAABEKwAAAAAAAPAAAACJiIg7AQAAAAUAMAADABAABAAEAAQAAQAAAAAAAAAAAAAAAAAAAAAACFYAAEQrAAAAAAAAeAAAAIiICDwCAAAABQAYAAMACAACAAQABAABAAAAAAAAAAAAAAAAAAAAAAAYVQAARCsAAAAAAAA8AAAAiYiIPAMAAAAFAAwAAwAEAAQAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAKBUAABEKwAAAAAAAP//fz+O/38/av5/P5P8fz8H+n8/yPZ/P9byfz8w7n8/1uh/P8jifz8H3H8/k9R/P2vMfz+Pw38/ALp/P72vfz/HpH8/HZl/P8CMfz+wf38/7HF/P3Zjfz9LVH8/bkR/P94zfz+aIn8/oxB/P/r9fj+d6n4/jdZ+P8vBfj9WrH4/LpZ+P1N/fj/GZ34/hk9+P5Q2fj/vHH4/mAJ+P4/nfT/Ty30/Zq99P0aSfT90dH0/8VV9P7w2fT/VFn0/PPZ8P/LUfD/2snw/SZB8P+tsfD/bSHw/GyR8P6n+ez+H2Hs/tLF7PzCKez/8YXs/Fzl7P4IPez895Xo/SLp6P6KOej9NYno/SDV6P5QHej8w2Xk/Hap5P1p6eT/pSXk/yBh5P/nmeD97tHg/ToF4P3NNeD/qGHg/suN3P82tdz86d3c/+T93PwoIdz9uz3Y/JZZ2Py9cdj+MIXY/POZ1P0CqdT+XbXU/QjB1P0HydD+Us3Q/O3R0Pzc0dD+H83M/LLJzPyZwcz92LXM/GupyPxSmcj9kYXI/ChxyPwXWcT9Xj3E/AEhxP///cD9Vt3A/Am5wPwYkcD9i2W8/FY5vPyBCbz+E9W4/P6huP1Nabj/AC24/hrxtP6VsbT8dHG0/78psPxt5bD+hJmw/gNNrP7t/az9QK2s/QNZqP4yAaj8yKmo/NdNpP5N7aT9NI2k/ZMpoP9hwaD+oFmg/1btnP2BgZz9IBGc/j6dmPzNKZj827GU/l41lP1cuZT93zmQ/9W1kP9QMZD8Sq2M/sUhjP7DlYj8QgmI/0R1iP/O4YT93U2E/XO1gP6SGYD9OH2A/W7dfP8tOXz+e5V4/1XteP3ARXj9upl0/0jpdP5rOXD/GYVw/WfRbP1GGWz+uF1s/cqhaP504Wj8uyFk/J1dZP4flWD9Pc1g/fwBYPxeNVz8YGVc/gqRWP1YvVj+TuVU/OkNVP0vMVD/HVFQ/rtxTPwFkUz+/6lI/6XBSP3/2UT+Ce1E/8v9QP8+DUD8aB1A/0olPP/oLTz+QjU4/lA5OPwmPTT/tDk0/QY5MPwUNTD87i0s/4QhLP/mFSj+DAko/f35JP+75SD/PdEg/JO9HP+1oRz8p4kY/2lpGPwDTRT+bSkU/rMFEPzI4RD8vrkM/oiNDP42YQj/vDEI/yIBBPxr0QD/lZkA/KNk/P+VKPz8bvD4/zCw+P/ecPT+dDD0/vns8P1zqOz91WDs/CsY6Px0zOj+tnzk/uws5P0d3OD9R4jc/2kw3P+O2Nj9rIDY/dIk1P/3xND8HWjQ/k8EzP6AoMz8wjzI/QvUxP9haMT/xvzA/jiQwP6+ILz9V7C4/gU8uPzKyLT9pFC0/J3YsP2vXKz83OCs/i5gqP2f4KT/MVyk/urYoPzIVKD8zcyc/v9AmP9YtJj95iiU/p+YkP2FCJD+pnSM/ffgiP99SIj/PrCE/TQYhP1tfID/4tx8/JRAfP+JnHj8wvx0/EBYdP4FsHD+Ewhs/GhgbP0NtGj8Awhk/URYZPzZqGD+xvRc/wRAXP2djFj+jtRU/dgcVP+FYFD/kqRM/f/oSP7NKEj+AmhE/5+kQP+g4ED+Ehw8/u9UOP44jDj/+cA0/Cr4MP7MKDD/6Vgs/36IKP2PuCT+GOQk/SYQIP6zOBz+vGAc/VGIGP5urBT+D9AQ/Dz0EPz2FAz8PzQI/hhQCP6FbAT9hogA/j9H/Pqdd/j4O6fw+wnP7Psb9+T4bh/g+wQ/3PrqX9T4GH/Q+qKXyPp4r8T7ssO8+kTXuPpC57D7oPOs+mr/pPqlB6D4Vw+Y+30PlPgjE4z6RQ+I+fMLgPshA3z54vt0+jDvcPga42j7mM9k+Lq/XPt8p1j75o9Q+fR3TPm6W0T7MDtA+l4bOPtL9zD59dMs+merJPidgyD4o1cY+n0nFPoq9wz7sMMI+xqPAPhkWvz7mh70+Lfm7PvFpuj4y2rg+8Um3Pi+5tT7uJ7Q+L5ayPvIDsT45ca8+BN6tPlZKrD4vtqo+kCGpPnqMpz7v9qU+72CkPnzKoj6XM6E+QJyfPnoEnj5EbJw+odOaPpE6mT4WoZc+MAeWPuFslD4p0pI+CzeRPoebjz6e/40+UWOMPqLGij6RKYk+IIyHPlDuhT4iUIQ+l7GCPrASgT7e5n4+qad7PsNneD4vJ3U+7uVxPgSkbj5zYWs+PB5oPmLaZD7olWE+z1BePhoLWz7MxFc+5n1UPms2UT5d7k0+v6VKPpJcRz7aEkQ+l8hAPs59PT6AMjo+ruY2Pl2aMz6NTTA+QgAtPn2yKT5CZCY+kRUjPm7GHz7bdhw+2iYZPm3WFT6YhRI+WzQPPrriCz63kAg+VD4FPpTrAT7wMP09Bor2PXHi7z0zOuk9T5HiPc/n2z21PdU9A5POPcDnxz3yO8E9nI+6PcPisz1sNa09m4emPVXZnz2fKpk9fnuSPfbLiz0LHIU9h9d8PUZ2bz1dFGI91rFUPblORz0Q6zk95YYsPUAiHz0svRE9slcEPbXj7TxgF9M8dkq4PAt9nTwyr4I8+sFPPP4kGjwqD8k7mac7Oy591rnSRnG7q97ju6aMJ7yBKV284WKJvKAwpLzs/b68s8rZvOCW9LwxsQe9kxYVvYx7Ir0T4C+9HkQ9vaWnSr2dCli9/mxlvb7Ocr3qF4C9G8iGve13jb1cJ5S9Y9aavf2Eob0mM6i92eCuvRGOtb3KOry9/ubCvaqSyb3IPdC9VOjWvUqS3b2kO+S9XeTqvXKM8b3dM/i9mtr+vVLAAr78Ega+R2UJvjK3DL66CBC+3VkTvpiqFr7q+hm+0EodvkeaIL5O6SO+4TcnvgCGKr6m0y2+0yAxvoNtNL61uTe+ZQU7vpNQPr46m0G+WuVEvvAuSL75d0u+dMBOvl0IUr6zT1W+c5ZYvpzcW74qIl++G2divm2rZb4f72i+LDJsvpR0b75UtnK+avd1vtM3eb6Nd3y+lrZ/vnV6gb5FGYO+ubeEvtBVhr6I84e+4ZCJvtoti75wyoy+pGaOvnQCkL7fnZG+5DiTvoHTlL62bZa+gQeYvuKgmb7XOZu+X9Kcvnlqnr4jAqC+XpmhviYwo759xqS+YFymvs7xp77Ghqm+RxurvlCvrL7gQq6+9dWvvo9osb6t+rK+TYy0vm4dtr4Qrre+MD65vs/Nur7qXLy+guu9vpR5v74fB8G+I5TCvp8gxL6RrMW++DfHvtPCyL4iTcq+4tbLvhNgzb616M6+xXDQvkL40b4tf9O+gwXVvkOL1r5tENi+/5TZvvkY275ZnNy+HR/evkah377TIuG+waPivhAk5L6+o+W+zCLnvjih6L4AH+q+JJzrvqIY7b56lO6+qw/wvjOK8b4SBPO+Rn30vs/19b6qbfe+2eT4vlhb+r4o0fu+R0b9vrW6/r44FwC/u9AAv+SJAb+yQgK/JfsCvzuzA7/2agS/UyIFv1PZBb/1jwa/OEYHvx38B7+isQi/x2YJv4wbCr/wzwq/84MLv5M3DL/R6gy/rJ0NvyRQDr84Ag+/6LMPvzJlEL8YFhG/l8YRv7B2Er9jJhO/rtUTv5GEFL8NMxW/H+EVv8iOFr8IPBe/3egXv0iVGL9IQRm/3OwZvwSYGr/AQhu/D+0bv/CWHL9jQB2/aOkdv/6RHr8lOh+/3OEfvyOJIL/6LyG/X9Yhv1J8Ir/UISO/48Yjv39rJL+nDyW/XLMlv51WJr9o+Sa/v5snv6A9KL8L3yi//38pv30gKr+DwCq/EWArvyf/K7/EnSy/6Dstv5LZLb/Ddi6/eRMvv7SvL79zSzC/t+Ywv3+BMb/LGzK/mbUyv+pOM7+95zO/EoA0v+gXNb8/rzW/FkY2v27cNr9Fcje/nAc4v3GcOL/FMDm/lsQ5v+ZXOr+y6jq//Hw7v8IOPL8DoDy/wTA9v/rAPb+tUD6/298+v4NuP7+l/D+/QIpAv1MXQb/go0G/5C9Cv2C7Qr9TRkO/vtBDv55aRL/240S/wmxFvwX1Rb+8fEa/6ANHv4mKR7+dEEi/JZZIvyAbSb+On0m/byNKv8GmSr+GKUu/vKtLv2MtTL96rky/Ai9Nv/quTb9iLk6/Oa1Ov34rT78zqU+/VSZQv+aiUL/kHlG/UJpRvygVUr9tj1K/HglTvzuCU7/D+lO/t3JUvxbqVL/fYFW/EtdVv7BMVr+3wVa/JzZXvwCqV79CHVi/7I9Yv/4BWb94c1m/WeRZv6JUWr9RxFq/ZjNbv+KhW7/DD1y/Cn1cv7fpXL/IVV2/PsFdvxgsXr9Xll6/+f9ev/9oX79o0V+/Mzlgv2KgYL/zBmG/5WxhvzrSYb/wNmK/CJtiv4D+Yr9ZYWO/ksNjvywlZL8lhmS/fuZkvzdGZb9OpWW/xQNmv5phZr/Nvma/Xhtnv013Z7+a0me/RC1ov0uHaL+u4Gi/bzlpv4uRab8E6Wm/2T9qvwmWar+U62q/e0Brv7yUa79Z6Gu/Tztsv6CNbL9L32y/TzBtv62Abb9l0G2/dR9uv99tbr+hu26/uwhvvy5Vb7/4oG+/G+xvv5U2cL9ngHC/kMlwvw8Scb/mWXG/E6Fxv5fncb9xLXK/oHJyvya3cr8B+3K/Mj5zv7iAc7+UwnO/xAN0v0lEdL8ihHS/UMN0v9IBdb+oP3W/0nx1v1C5db8h9XW/RTB2v71qdr+IpHa/pt12vxYWd7/ZTXe/74R3v1e7d78R8Xe/HSZ4v3paeL8qjni/K8F4v33zeL8hJXm/FlZ5v1yGeb/ytXm/2uR5vxITer+aQHq/c216v52Zer8WxXq/3+96v/gZe79hQ3u/Gmx7vyKUe796u3u/IOJ7vxcIfL9cLXy/8FF8v9N1fL8FmXy/hrt8v1XdfL9z/ny/3x59v5o+fb+jXX2/+nt9v5+Zfb+Stn2/09J9v2Lufb8/CX6/aSN+v+E8fr+nVX6/um1+vxuFfr/Jm36/xLF+vw3Hfr+i236/he9+v7UCf78yFX+//CZ/vxM4f792SH+/J1h/vyRnf79udX+/BYN/v+iPf78ZnH+/lad/v1+yf790vH+/18V/v4XOf7+B1n+/yN1/v13kf7896n+/au9/v+Pzf7+p93+/u/p/vxn9f7/E/n+/u/9/v/r/fz85/n8/qfl/P0vyfz8e6H8/I9t/P1nLfz/BuH8/W6N/PyiLfz8ncH8/WlJ/P78xfz9YDn8/Jeh+Pya/fj9ck34/yGR+P2kzfj9B/30/T8h9P5aOfT8UUn0/yxJ9P7zQfD/ni3w/TUR8P+/5ez/NrHs/6Vx7P0MKez/dtHo/tlx6P9EBej8upHk/zkN5P7LgeD/ceng/TBJ4PwSndz8EOXc/T8h2P+RUdj/G3nU/9mV1P3XqdD9EbHQ/ZetzP9pncz+j4XI/wlhyPznNcT8JP3E/NK5wP7sacD+ghG8/5OtuP4pQbj+Tsm0/ARJtP9VubD8RyWs/tyBrP8l1aj9JyGk/ORhpP5tlaD9vsGc/uvhmP3w+Zj+4gWU/b8JkP6QAZD9aPGM/kXViP0ysYT+O4GA/WRJgP65BXz+Rbl4/A5ldPwjBXD+g5ls/zwlbP5gqWj/7SFk//WRYP59+Vz/llVY/0KpVP2O9VD+hzVM/jNtSPyfnUT918FA/efdPPzT8Tj+r/k0/3/5MP9T8Sz+M+Eo/CvJJP1LpSD9l3kc/R9FGP/vBRT+EsEQ/5ZxDPyCHQj86b0E/NFVAPxM5Pz/YGj4/iPo8PybYOz+0szo/No05P69kOD8iOjc/kw02PwXfND98rjM/+XsyP4JHMT8ZETA/wtguP3+eLT9WYiw/SCQrP1rkKT+Qoig/614nP3EZJj8l0iQ/CYkjPyM+Ij918SA/BKMfP9JSHj/kAB0/Pa0bP+FXGj/TABk/GagXP7RNFj+q8RQ//ZMTP7I0Ej/M0xA/UHEPP0INDj+kpww/fEALP83XCT+abQg/6QEHP72UBT8ZJgQ/A7YCP35EAT8co/8+brr8PvrO+T7K4PY+5O/zPlH88D4aBu4+Rw3rPuAR6D7tE+U+dxPiPocQ3z4kC9w+WAPZPir51T6k7NI+zd3PPq/MzD5Suck+v6PGPv6Lwz4YcsA+Fla9PgA4uj7gF7c+vfWzPqHRsD6Vq60+ooOqPs9Zpz4nLqQ+sgChPnnRnT6FoJo+322XPo85lD6gA5E+GsyNPgWTij5rWIc+VhyEPs3egD62P3s+EL90Prs7bj7JtWc+TS1hPlmiWj7/FFQ+UYVNPmPzRj5GX0A+Dck5PsowMz6Qliw+cvolPoJcHz7SvBg+dhsSPn94Cz4B1AQ+HVz8PXIN7z0pvOE9ZmjUPU4Sxz0Iurk9uF+sPYQDnz2SpZE9B0aEPRLKbT16BVM9kT44PaR1HT38qgI9yr3PPFYjmjxhDkk8xae7Oz16VroJRvG7Et1jvFCKp7xBJN28410JvSMoJL2W8D698rZZvep6dL0anoe9Qv2Uvchaor2Gtq+9VxC9vRZoyr2bvde9wxDlvWlh8r1lr/+9Sn0GvmghDb76wxO+7WQavi4EIb6soSe+Uz0uvhDXNL7Sbju+hgRCvhmYSL55KU++lLhVvlZFXL6uz2K+iVdpvtbcb76AX3a+eN98vlSugb6B64S+OCeIvnJhi74kmo6+RdGRvs0Glb6zOpi+7mybvnSdnr49zKG+QPmkvnMkqL7PTau+SXWuvtqasb54vrS+G+C3vrr/ur5LHb6+xzjBviVSxL5bace+YX7KvjCRzb68odC+ALDTvvG71r6Hxdm+uszcvoHR377T0+K+qdPlvvrQ6L69y+u+6sPuvni58b5grPS+mpz3vhyK+r7fdP2+bS4AvwOhAb8tEgO/5oEEvyzwBb/6XAe/TMgIvx4yCr9smgu/MgENv2xmDr8Xyg+/LSwRv6yMEr+Q6xO/1UgVv3akFr9x/he/wFYZv2KtGr9RAhy/ilUdvwmnHr/L9h+/zEQhvwmRIr982yO/JCQlv/1qJr8CsCe/MPMov4Q0Kr/6cyu/j7Esvz/tLb8HJy+/414wv9CUMb/KyDK/zvozv9oqNb/oWDa/94Q3vwKvOL8H1zm/A/06v/EgPL/PQj2/mmI+v0+AP7/pm0C/aLVBv8bMQr8B4kO/F/VEvwMGRr/EFEe/ViFIv7YrSb/hM0q/1DlLv409TL8JP02/RD5Ovz07T7/wNVC/Wi5Rv3kkUr9KGFO/yglUv/f4VL/O5VW/TdBWv3C4V783nli/nIFZv6BiWr8+QVu/dR1cv0H3XL+izl2/lKNevxR2X78iRmC/uhNhv9neYb9/p2K/qW1jv1QxZL9+8mS/JrFlv0ltZr/lJme/+N1nv4CSaL97RGm/6PNpv8Ogar8MS2u/wPJrv96XbL9kOm2/UNptv6B3br9TEm+/Zqpvv9k/cL+p0nC/1WJxv1vwcb86e3K/cQNzv/2Ic7/eC3S/EYx0v5YJdb9rhHW/j/x1vwBydr+95Ha/xlR3vxjCd7+yLHi/k5R4v7v5eL8oXHm/2bt5v80Yer8Cc3q/ecp6vy8fe78kcXu/WMB7v8kMfL92Vny/X518v4LhfL/gIn2/d2F9v0edfb9P1n2/jgx+vwRAfr+wcH6/kp5+v6nJfr/18X6/dRd/vyk6f78QWn+/K3d/v3iRf7/4qH+/qr1/v4/Pf7+l3n+/7ep/v2b0f78R+3+/7f5/v+r/fz/l+H8/puZ/Py3Jfz98oH8/lWx/P3ktfz8s434/sY1+Pwstfj8/wX0/Ukp9P0jIfD8oO3w/96J7P73/ej+AUXo/SJh5Px7UeD8JBXg/Eyt3P0ZGdj+sVnU/Tlx0PzhXcz92R3I/Ey1xPxwIcD+e2G4/pZ5tP0BabD9+C2s/a7JpPxlPaD+W4WY/8mllPz7oYz+LXGI/6sZgP20nXz8mfl0/KMtbP4UOWj9TSFg/o3hWP4ufVD8gvVI/dtFQP6PcTj+93kw/29dKPxPISD98r0Y/Lo5EP0FkQj/OMUA/7PY9P7SzOz9CaDk/rRQ3PxC5ND+GVTI/KeovPxV3LT9l/Co/NXooP6HwJT/GXyM/wMcgP6woHj+pghs/1NUYP0oiFj8qaBM/k6cQP6TgDT97Ews/OUAIP/1mBT/nhwI/LUb/Pltx+T6XkfM+JKftPkWy5z48s+E+TKrbPrqX1T7Je88+vlbJPt8owz5w8rw+t7O2PvtssD6BHqo+ksijPnNrnT5sB5c+xZyQPscrij65tIM+x296PiFrbT4RXGA+KUNTPv0gRj4g9jg+JsMrPqSIHj4tRxE+V/8DPm5j7T3CvdI92g64Pd5XnT37mYI9vKxPPWUcGj2ZCsk8Kqc7PMF41rotRHG8V9fjvEyBJ72UD129FUqJvVoGpL1tu769ImjZvU4L9L3jUQe+L5gUvvfXIb6lEC++pkE8vmRqSb5Nila+zaBjvlCtcL5Fr32+DVOFvp7Ii74NOJK+EqGYvmYDn76/XqW+2LKrvmn/sb4rRLi+2IC+viq1xL7b4Mq+pQPRvkUd1751Ld2+8TPjvnYw6b7AIu++jQr1vpvn+r7TXAC/OEADv9sdBr+b9Qi/WscLv/eSDr9UWBG/UBcUv83PFr+sgRm/0CwcvxrRHr9tbiG/qwQkv7eTJr90Gym/x5srv5MULr+7hTC/Ju8yv7dQNb9Vqje/4/s5v0pFPL9uhj6/N79Av4vvQr9TF0W/dTZHv9pMSb9rWku/EF9Nv7NaT78+TVG/mjZTv7MWVb9y7Va/xbpYv5V+Wr/QOFy/YuldvziQX79ALWG/Z8Biv5xJZL/OyGW/6z1nv+OoaL+nCWq/J2Brv1SsbL8f7m2/eiVvv1hScL+rdHG/Z4xyv3+Zc7/nm3S/lZN1v36Adr+WYne/1Dl4vy8Geb+ex3m/F356v5Qpe78Nynu/el98v9XpfL8YaX2/Pt19v0BGfr8cpH6/zPZ+v00+f7+cen+/tqt/v5nRf79D7H+/tPt/v6b/fz+U438/nJp/P8wkfz84gn4//bJ9Pz+3fD8qj3s/8zp6P9S6eD8RD3c/9jd1P9U1cz8ICXE/8bFuP/kwbD+Qhmk/L7NmP1O3Yz+Ek2A/TkhdP0XWWT8DPlY/K4BSP2WdTj9elko/zGtGP2oeQj/5rj0/QB45Pw1tND8ynC8/h6wqP+ueJT8/dCA/bS0bP2HLFT8NTxA/aLkKP2sLBT8ujP4+3dTyPvHy5j5/6No+prfOPohiwj5O67U+KlSpPlGfnD79zo8+beWCPs7Jaz5in1E+MFA3PtPgHD7xVQI+YmjPPXwAmj0k+0g9G6S7PPN3VrtkPfG8u8BjvWddp70Uvdy9A/sIvnN/I7405z2+pC1YviZOcr4SIoa+iQWTvjTPn77VfKy+Mwy5vhp7xb5bx9G+ze7dvlDv6b7HxvW+kLkAvyZ5Br8kIQy/jbARv2YmF7+6gRy/mMEhvxXlJr9K6yu/VtMwv1ucNb+DRTq//c0+v/w0Q7+8eUe/fZtLv4SZT78fc1O/oSdXv2O2Wr/GHl6/MGBhvw96ZL/Ya2e/BzVqvx/VbL+pS2+/N5hxv2K6c7/JsXW/Fn53v/Yeeb8hlHq/Vd17v1n6fL/66n2/Dq9+v3RGf78PsX+/zu5/vwAAgD8AAACAY/p/P791VryL6X8/CnHWvHnNfz/nziC9L6Z/PzpeVr2vc38/E/KFvfk1fz8qr6C9Eu1+PzNlu739mH4/BBPWvbw5fj9zt/C9Vc99P6ioBb7LWX0/u+8SviXZfD9cMCC+Z018P/VpLb6Ytns/85s6vr4Uez/CxUe+4md6P83mVL4JsHk/gv5hvjzteD9NDG++hB94P5wPfL7qRnc/7oOEvndjdj8++oq+NnV1P3Vqkb4wfHQ/TNSXvnF4cz96N56+A2pyP7eTpL70UHE/vOiqvk8tcD9BNrG+If9uPwF8t752xm0/tLm9vl6DbD8V78O+5zVrP94byr4e3mk/yT/QvhJ8aD+SWta+1A9nP/Nr3L50mWU/qnPivgEZZD9xcei+jY5iPwdl7r4o+mA/J070vuZbXz+QLPq+17NdPwAAAL8PAlw/G+QCv6BGWj93wgW/noFYP/aaCL8ds1Y/d20LvzHbVD/aOQ6/7/lSPwAAEb9sD1E/yr8Tv70bTz8YeRa/+B5NP80rGb80GUs/ytcbv4gKST/xfB6/CvNGPyQbIb/R0kQ/RrIjv/epQj86Qia/k3hAP+PKKL+9Pj4/JUwrv4/8Oz/jxS2/IrI5PwE4ML+QXzc/ZaIyv/MENT/zBDW/ZaIyP5BfN78BODA/IrI5v+PFLT+P/Du/JUwrP70+Pr/jyig/k3hAvzpCJj/3qUK/RrIjP9HSRL8kGyE/CvNGv/F8Hj+ICkm/ytcbPzQZS7/NKxk/+B5Nvxh5Fj+9G0+/yr8TP2wPUb8AABE/7/lSv9o5Dj8x21S/d20LPx2zVr/2mgg/noFYv3fCBT+gRlq/G+QCPw8CXL8AAAA/17Ndv5As+j7mW1+/J070Pij6YL8HZe4+jY5iv3Fx6D4BGWS/qnPiPnSZZb/za9w+1A9nv5Ja1j4SfGi/yT/QPh7eab/eG8o+5zVrvxXvwz5eg2y/tLm9PnbGbb8BfLc+If9uv0E2sT5PLXC/vOiqPvRQcb+3k6Q+A2pyv3o3nj5xeHO/TNSXPjB8dL91apE+NnV1vz76ij53Y3a/7oOEPupGd7+cD3w+hB94v00Mbz487Xi/gv5hPgmweb/N5lQ+4md6v8LFRz6+FHu/85s6Ppi2e7/1aS0+Z018v1wwID4l2Xy/u+8SPstZfb+oqAU+Vc99v3O38D28OX6/BBPWPf2Yfr8zZbs9Eu1+vyqvoD35NX+/E/KFPa9zf786XlY9L6Z/v+fOID15zX+/CnHWPIvpf7+/dVY8Y/p/vwAwjSQAAIC/v3VWvGP6f78Kcda8i+l/v+fOIL15zX+/Ol5WvS+mf78T8oW9r3N/vyqvoL35NX+/M2W7vRLtfr8EE9a9/Zh+v3O38L28OX6/qKgFvlXPfb+77xK+y1l9v1wwIL4l2Xy/9WktvmdNfL/zmzq+mLZ7v8LFR76+FHu/zeZUvuJner+C/mG+CbB5v00Mb7487Xi/nA98voQfeL/ug4S+6kZ3vz76ir53Y3a/dWqRvjZ1db9M1Je+MHx0v3o3nr5xeHO/t5OkvgNqcr+86Kq+9FBxv0E2sb5PLXC/AXy3viH/br+0ub2+dsZtvxXvw75eg2y/3hvKvuc1a7/JP9C+Ht5pv5Ja1r4SfGi/82vcvtQPZ7+qc+K+dJllv3Fx6L4BGWS/B2Xuvo2OYr8nTvS+KPpgv5As+r7mW1+/AAAAv9ezXb8b5AK/DwJcv3fCBb+gRlq/9poIv56BWL93bQu/HbNWv9o5Dr8x21S/AAARv+/5Ur/KvxO/bA9Rvxh5Fr+9G0+/zSsZv/geTb/K1xu/NBlLv/F8Hr+ICkm/JBshvwrzRr9GsiO/0dJEvzpCJr/3qUK/48oov5N4QL8lTCu/vT4+v+PFLb+P/Du/ATgwvyKyOb9lojK/kF83v/MENb/zBDW/kF83v2WiMr8isjm/ATgwv4/8O7/jxS2/vT4+vyVMK7+TeEC/48oov/epQr86Qia/0dJEv0ayI78K80a/JBshv4gKSb/xfB6/NBlLv8rXG7/4Hk2/zSsZv70bT78YeRa/bA9Rv8q/E7/v+VK/AAARvzHbVL/aOQ6/HbNWv3dtC7+egVi/9poIv6BGWr93wgW/DwJcvxvkAr/Xs12/AAAAv+ZbX7+QLPq+KPpgvydO9L6NjmK/B2XuvgEZZL9xcei+dJllv6pz4r7UD2e/82vcvhJ8aL+SWta+Ht5pv8k/0L7nNWu/3hvKvl6DbL8V78O+dsZtv7S5vb4h/26/AXy3vk8tcL9BNrG+9FBxv7zoqr4DanK/t5OkvnF4c796N56+MHx0v0zUl742dXW/dWqRvndjdr8++oq+6kZ3v+6DhL6EH3i/nA98vjzteL9NDG++CbB5v4L+Yb7iZ3q/zeZUvr4Ue7/CxUe+mLZ7v/ObOr5nTXy/9WktviXZfL9cMCC+y1l9v7vvEr5Vz32/qKgFvrw5fr9zt/C9/Zh+vwQT1r0S7X6/M2W7vfk1f78qr6C9r3N/vxPyhb0vpn+/Ol5WvXnNf7/nziC9i+l/vwpx1rxj+n+/v3VWvAAAgL8AMA2lY/p/v791VjyL6X+/CnHWPHnNf7/nziA9L6Z/vzpeVj2vc3+/E/KFPfk1f78qr6A9Eu1+vzNluz39mH6/BBPWPbw5fr9zt/A9Vc99v6ioBT7LWX2/u+8SPiXZfL9cMCA+Z018v/VpLT6Ytnu/85s6Pr4Ue7/CxUc+4md6v83mVD4JsHm/gv5hPjzteL9NDG8+hB94v5wPfD7qRne/7oOEPndjdr8++oo+NnV1v3VqkT4wfHS/TNSXPnF4c796N54+A2pyv7eTpD70UHG/vOiqPk8tcL9BNrE+If9uvwF8tz52xm2/tLm9Pl6DbL8V78M+5zVrv94byj4e3mm/yT/QPhJ8aL+SWtY+1A9nv/Nr3D50mWW/qnPiPgEZZL9xceg+jY5ivwdl7j4o+mC/J070PuZbX7+QLPo+17NdvwAAAD8PAly/G+QCP6BGWr93wgU/noFYv/aaCD8ds1a/d20LPzHbVL/aOQ4/7/lSvwAAET9sD1G/yr8TP70bT78YeRY/+B5Nv80rGT80GUu/ytcbP4gKSb/xfB4/CvNGvyQbIT/R0kS/RrIjP/epQr86QiY/k3hAv+PKKD+9Pj6/JUwrP4/8O7/jxS0/IrI5vwE4MD+QXze/ZaIyP/MENb/zBDU/ZaIyv5BfNz8BODC/IrI5P+PFLb+P/Ds/JUwrv70+Pj/jyii/k3hAPzpCJr/3qUI/RrIjv9HSRD8kGyG/CvNGP/F8Hr+ICkk/ytcbvzQZSz/NKxm/+B5NPxh5Fr+9G08/yr8Tv2wPUT8AABG/7/lSP9o5Dr8x21Q/d20Lvx2zVj/2mgi/noFYP3fCBb+gRlo/G+QCvw8CXD8AAAC/17NdP5As+r7mW18/J070vij6YD8HZe6+jY5iP3Fx6L4BGWQ/qnPivnSZZT/za9y+1A9nP5Ja1r4SfGg/yT/Qvh7eaT/eG8q+5zVrPxXvw75eg2w/tLm9vnbGbT8BfLe+If9uP0E2sb5PLXA/vOiqvvRQcT+3k6S+A2pyP3o3nr5xeHM/TNSXvjB8dD91apG+NnV1Pz76ir53Y3Y/7oOEvupGdz+cD3y+hB94P00Mb7487Xg/gv5hvgmweT/N5lS+4md6P8LFR76+FHs/85s6vpi2ez/1aS2+Z018P1wwIL4l2Xw/u+8SvstZfT+oqAW+Vc99P3O38L28OX4/BBPWvf2Yfj8zZbu9Eu1+PyqvoL35NX8/E/KFva9zfz86Xla9L6Z/P+fOIL15zX8/CnHWvIvpfz+/dVa8Y/p/PwDIU6UAAIA/v3VWPGP6fz8KcdY8i+l/P+fOID15zX8/Ol5WPS+mfz8T8oU9r3N/PyqvoD35NX8/M2W7PRLtfj8EE9Y9/Zh+P3O38D28OX4/qKgFPlXPfT+77xI+y1l9P1wwID4l2Xw/9WktPmdNfD/zmzo+mLZ7P8LFRz6+FHs/zeZUPuJnej+C/mE+CbB5P00Mbz487Xg/nA98PoQfeD/ug4Q+6kZ3Pz76ij53Y3Y/dWqRPjZ1dT9M1Jc+MHx0P3o3nj5xeHM/t5OkPgNqcj+86Ko+9FBxP0E2sT5PLXA/AXy3PiH/bj+0ub0+dsZtPxXvwz5eg2w/3hvKPuc1az/JP9A+Ht5pP5Ja1j4SfGg/82vcPtQPZz+qc+I+dJllP3Fx6D4BGWQ/B2XuPo2OYj8nTvQ+KPpgP5As+j7mW18/AAAAP9ezXT8b5AI/DwJcP3fCBT+gRlo/9poIP56BWD93bQs/HbNWP9o5Dj8x21Q/AAARP+/5Uj/KvxM/bA9RPxh5Fj+9G08/zSsZP/geTT/K1xs/NBlLP/F8Hj+ICkk/JBshPwrzRj9GsiM/0dJEPzpCJj/3qUI/48ooP5N4QD8lTCs/vT4+P+PFLT+P/Ds/ATgwPyKyOT9lojI/kF83P/MENT/zBDU/kF83P2WiMj8isjk/ATgwP4/8Oz/jxS0/vT4+PyVMKz+TeEA/48ooP/epQj86QiY/0dJEP0ayIz8K80Y/JBshP4gKST/xfB4/NBlLP8rXGz/4Hk0/zSsZP70bTz8YeRY/bA9RP8q/Ez/v+VI/AAARPzHbVD/aOQ4/HbNWP3dtCz+egVg/9poIP6BGWj93wgU/DwJcPxvkAj/Xs10/AAAAP+ZbXz+QLPo+KPpgPydO9D6NjmI/B2XuPgEZZD9xceg+dJllP6pz4j7UD2c/82vcPhJ8aD+SWtY+Ht5pP8k/0D7nNWs/3hvKPl6DbD8V78M+dsZtP7S5vT4h/24/AXy3Pk8tcD9BNrE+9FBxP7zoqj4DanI/t5OkPnF4cz96N54+MHx0P0zUlz42dXU/dWqRPndjdj8++oo+6kZ3P+6DhD6EH3g/nA98PjzteD9NDG8+CbB5P4L+YT7iZ3o/zeZUPr4Uez/CxUc+mLZ7P/ObOj5nTXw/9WktPiXZfD9cMCA+y1l9P7vvEj5Vz30/qKgFPrw5fj9zt/A9/Zh+PwQT1j0S7X4/M2W7Pfk1fz8qr6A9r3N/PxPyhT0vpn8/Ol5WPXnNfz/nziA9i+l/Pwpx1jxj+n8/v3VWPAAAAAAAAAAAAwAAAAIAAAADAAAAAgAAAAUAAAACAAAAAwAAAAIAAAADAAAAAgAAAAUAAAACAAAAAwAAAAIAAAAAAM5AAADIQAAAuEAAAKpAAACiQAAAmkAAAJBAAACMQAAAnEAAAJZAAACSQAAAjkAAAJxAAACUQAAAikAAAJBAAACMQAAAlEAAAJhAAACOQAAAcEAAAHBAAABwQAAAcEAAAHBAAABmPwAATD8AACY/AAAAPwCGaz8AFC4/AHC9PgDQTD4PAAAACgAAAAUAAAAGAAAABAAAAAMAAABFfgAATX4AAF1+AAB9fgAAhX4AAJV+AAC1fgAA3X4AAC1/AADNfwAA1X8AAOV/AAAAAAAAQB8AALgkAADsLAAAvDQAAFxEAACoYQAAgDgBAAAAAAAoIwAA4C4AAKQ4AABESAAAtF8AAKyKAACAOAEAAAAAAAQpAACwNgAAaEIAAPxTAABUbwAAEKQAAIA4AQAjgAAAJoAAAApn8g5WzeQdCmfyDnVSggxZmgQZdVKCDEYRMQrtA2IURhExCtoC1wf5xq0P2gLXByK2UgXa+qQKIrZSBUbzLh4r40sOH2aAGBwsHQraYUgS7Zz0BuwwEwvjkKUE7aQdAgrfawMBAAAAAQAAAAEAAAACAAAAAgAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAwAAAAAAAAACAAAAAQAAAAcAAAAAAAAABAAAAAMAAAAGAAAAAQAAAAUAAAACAAAADwAAAAAAAAAIAAAABwAAAAwAAAADAAAACwAAAAQAAAAOAAAAAQAAAAkAAAAGAAAADQAAAAIAAAAKAAAABQAAAAAAnT4AQF4+AMAEPgCA7T4AQIk+AAAAAADATD8AAM09AAAAABQ9AADUPwAAkEIAAEhFAAD8RwAArEoAAFhNAADATgAAfE8AAPBPAAA8UAAAdFAAAJRQAACsUAAAuFAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAwAAAAUAAAAHAAAACQAAAAsAAAANAAAADwAAABEAAAATAAAAFQAAABcAAAAZAAAAGwAAAB0AAAAfAAAAIQAAACMAAAAlAAAAJwAAACkAAAArAAAALQAAAC8AAAAxAAAAMwAAADUAAAA3AAAAOQAAADsAAAA9AAAAPwAAAEEAAABDAAAARQAAAEcAAABJAAAASwAAAE0AAABPAAAAUQAAAFMAAABVAAAAVwAAAFkAAABbAAAAXQAAAF8AAABhAAAAYwAAAGUAAABnAAAAaQAAAGsAAABtAAAAbwAAAHEAAABzAAAAdQAAAHcAAAB5AAAAewAAAH0AAAB/AAAAgQAAAIMAAACFAAAAhwAAAIkAAACLAAAAjQAAAI8AAACRAAAAkwAAAJUAAACXAAAAmQAAAJsAAACdAAAAnwAAAKEAAACjAAAApQAAAKcAAACpAAAAqwAAAK0AAACvAAAAsQAAALMAAAC1AAAAtwAAALkAAAC7AAAAvQAAAL8AAADBAAAAwwAAAMUAAADHAAAAyQAAAMsAAADNAAAAzwAAANEAAADTAAAA1QAAANcAAADZAAAA2wAAAN0AAADfAAAA4QAAAOMAAADlAAAA5wAAAOkAAADrAAAA7QAAAO8AAADxAAAA8wAAAPUAAAD3AAAA+QAAAPsAAAD9AAAA/wAAAAEBAAADAQAABQEAAAcBAAAJAQAACwEAAA0BAAAPAQAAEQEAABMBAAAVAQAAFwEAABkBAAAbAQAAHQEAAB8BAAAhAQAAIwEAACUBAAAnAQAAKQEAACsBAAAtAQAALwEAADEBAAAzAQAANQEAADcBAAA5AQAAOwEAAD0BAAA/AQAAQQEAAEMBAABFAQAARwEAAEkBAABLAQAATQEAAE8BAABRAQAAUwEAAFUBAABXAQAAWQEAAFsBAABdAQAAXwEAAA0AAAAZAAAAKQAAAD0AAABVAAAAcQAAAJEAAAC1AAAA3QAAAAkBAAA5AQAAbQEAAKUBAADhAQAAIQIAAGUCAACtAgAA+QIAAEkDAACdAwAA9QMAAFEEAACxBAAAFQUAAH0FAADpBQAAWQYAAM0GAABFBwAAwQcAAEEIAADFCAAATQkAANkJAABpCgAA/QoAAJULAAAxDAAA0QwAAHUNAAAdDgAAyQ4AAHkPAAAtEAAA5RAAAKERAABhEgAAJRMAAO0TAAC5FAAAiRUAAF0WAAA1FwAAERgAAPEYAADVGQAAvRoAAKkbAACZHAAAjR0AAIUeAACBHwAAgSAAAIUhAACNIgAAmSMAAKkkAAC9JQAA1SYAAPEnAAARKQAANSoAAF0rAACJLAAAuS0AAO0uAAAlMAAAYTEAAKEyAADlMwAALTUAAHk2AADJNwAAHTkAAHU6AADROwAAMT0AAJU+AAD9PwAAaUEAANlCAABNRAAAxUUAAEFHAADBSAAARUoAAM1LAABZTQAA6U4AAH1QAAAVUgAAsVMAAFFVAAD1VgAAnVgAAElaAAD5WwAArV0AAGVfAAAhYQAA4WIAAKVkAABtZgAAOWgAAAlqAADdawAAtW0AAJFvAABxcQAAVXMAAD11AAApdwAAGXkAAA17AAAFfQAAAX8AAAGBAAAFgwAADYUAABmHAAApiQAAPYsAAFWNAABxjwAAkZEAALWTAADdlQAACZgAADmaAABtnAAApZ4AAOGgAAAhowAAZaUAAK2nAAD5qQAASawAAJ2uAAD1sAAAUbMAALG1AAAVuAAAfboAAOm8AABZvwAAzcEAAEXEAADBxgAAQckAAMXLAABNzgAA2dAAAGnTAAD91QAAldgAADHbAADR3QAAdeAAAB3jAADJ5QAAeegAAC3rAADl7QAAofAAAD8AAACBAAAA5wAAAHkBAAA/AgAAQQMAAIcEAAAZBgAA/wcAAEEKAADnDAAA+Q8AAH8TAACBFwAABxwAABkhAAC/JgAAAS0AAOczAAB5OwAAv0MAAMFMAACHVgAAGWEAAH9sAADBeAAA54UAAPmTAAD/ogAAAbMAAAfEAAAZ1gAAP+kAAIH9AADnEgEAeSkBAD9BAQBBWgEAh3QBABmQAQD/rAEAQcsBAOfqAQD5CwIAfy4CAIFSAgAHeAIAGZ8CAL/HAgAB8gIA5x0DAHlLAwC/egMAwasDAIfeAwAZEwQAf0kEAMGBBADnuwQA+fcEAP81BQABdgUAB7gFABn8BQA/QgYAgYoGAOfUBgB5IQcAP3AHAEHBBwCHFAgAGWoIAP/BCABBHAkA53gJAPnXCQB/OQoAgZ0KAAcECwAZbQsAv9gLAAFHDADntwwAeSsNAL+hDQDBGg4Ah5YOABkVDwB/lg8AwRoQAOehEAD5KxEA/7gRAAFJEgAH3BIAGXITAD8LFACBpxQA50YVAHnpFQA/jxYAQTgXAIfkFwAZlBgA/0YZAEH9GQDnthoA+XMbAH80HACB+BwAB8AdABmLHgC/WR8AASwgAOcBIQB52yEAv7giAMGZIwCHfiQAGWclAH9TJgDBQycA5zcoAPkvKQD/KyoAASwrAAcwLAAZOC0AP0QuAIFULwDnaDAAeYExAD+eMgBBvzMAh+Q0ABkONgD/OzcAQW44AOekOQD53zoAfx88AIFjPQAHrD4AGfk/AL9KQQABoUIA5/tDAHlbRQC/v0YAwShIAIeWSQAZCUsAf4BMAMH8TQDnfU8A+QNRAP+OUgABH1QAB7RVABlOVwA/7VgAgZFaAOc6XAB56V0AP51fAEFWYQCHFGMAGdhkAP+gZgBBb2gA50JqAPkbbAB/+m0AQQEAAKkCAAAJBQAAwQgAAEEOAAAJFgAAqSAAAMEuAAABQQAAKVgAAAl1AACBmAAAgcMAAAn3AAApNAEAAXwBAMHPAQCpMAIACaACAEEfAwDBrwMACVMEAKkKBQBB2AUAgb0GACm8BwAJ1ggAAQ0KAAFjCwAJ2gwAKXQOAIEzEABBGhIAqSoUAAlnFgDB0RgAQW0bAAk8HgCpQCEAwX0kAAH2JwAprCsACaMvAIHdMwCBXjgACSk9AClAQgABp0cAwWBNAKlwUwAJ2lkAQaBgAMHGZwAJUW8AqUJ3AEGffwCBaogAKaiRAAlcmwABiqUAATawAAlkuwApGMcAgVbTAEEj4ACpgu0ACXn7AMEKCgFBPBkBCRIpAamQOQHBvEoBAZtcASkwbwEJgYIBgZKWAYFpqwEJC8EBKXzXAQHC7gHB4QYCqeAfAgnEOQJBkVQCwU1wAgn/jAKpqqoCQVbJAoEH6QIpxAkDCZIrAwF3TgMBeXIDCZ6XAynsvQOBaeUDQRwOBKkKOAQJO2MEwbOPBEF7vQQJmOwEqRAdBcHrTgUBMIIFKeS2BQkP7QWBtyQGgeRdBgmdmAYp6NQGAc0SB8FSUgepgJMHCV7WB0HyGgjBRGEICV2pCKlC8whB/T4JgZSMCSkQ3AkJeC0KAdSACgEs1goJiC0LKfCGC4Fs4gtBBUAMqcKfDAmtAQ3BzGUNQSrMDQnONA6pwJ8OwQoNDwG1fA8pyO4PCU1jEIFM2hCBz1MRCd/PESmEThIByM8SwbNTE6lQ2hMJqGMUQcPvFMGrfhUJaxAWqQqlFkGUPBeBEdcXKYx0GAkOFRkBobgZAU9fGgkiCRspJLYbgV9mHEHeGR2pqtAdCc+KHsFVSB9BSQkgCbTNIKmglSHBGWEiASowIyncAiQJO9kkgVGzJZMGAABFDgAADxwAABEzAABbVwAADY4AAHfdAAA5TQEAY+YBAJWzAgAfwQMAIR0FAKvXBgDdAgkAB7MLAMn+DgAz/xIA5c8XAC+PHQAxXiQA+2AsAK2+NQCXoUAAWTdNAAOxWwA1Q2wAPyZ/AEGWlABL06wAfSHIACfJ5gDpFgkB01svAYXtWQFPJokBUWW9AZsO9wFNizYCt0l8Anm9yAKjXxwD1a53A18v2wNha0cE6/K8BB1cPAVHQ8YFCUtbBnMc/AYlZ6kHb+FjCHFILAk7YAMK7fPpCtfV4AuZ3+gMQ/ICDnX2Lw9/3HAQgZzGEYs2MhO9srQUZyFPFimbAhgTQdAZxTy5G4/Avh2RB+If21UkIo34hiT3RQsnuZ2yKeNofiwVGnAvny2JMqEpyzUrnjc5XSXQPIdjlkBJB4xEs8mySGVuDE2vw5pRsaJfVnvvXFstmZRgF5oIZtn3umuDw61xtRnjd78iXX4dIwAAcU0AAJGcAAD9JgEAZQwCAOl3AwCZogUANdYIAC1wDQDh5BMAIcMcAO23KAB1kjgAWUhNACn6ZwAl+IkAPce0AFEm6gCxEywB3dJ8AYXy3gHJUlUCuSvjAhUUjANNCFQEwXE/BUEuUwbNl5QHlYwJCTl3uApJV6gMBcrgDl0TahExJ00U0bKTF70mSBulwHUfqZUoJNmcbSn1uVIvbcjmNaGmOT1hQVxFrZ9gTrXuWVgZjlxjaRx+b+WD1Xz/vQAAAagBAI9rAwDxngYAPyMMAME9FQCPtiMA8fw5AP9RWwAB+osAD3XRAHG/MgE/mrgBwdxtAg/PXwNxjp4E/3s9BgG2UwiPnPwK8WFYDj+njBLBJcUXj2U0HvGBFCb/+6cvAZw6Ow9iIklxhsBZP4qCbcFY44QBDgQAkSEJABEsEwBB7iUAQU9HAJFDgAAR990AAUZzAQGSWgIRAbgDkTW8BUGPpwhBBs4MEbKbEpEPmhoBGnYlAUwHNJGeV0cRnaxgQaaRgSNRFgDFnjIAF7lrAJn22ABriaABDcT+Ah8BUAUh2R0JM2wwD9WipBinZwgnKf19PHu151sddx2Jr6Atya2OewCJ5hkBOZZeAj0W2AS1Y3cJ4SjGESEDNCB1SII4fVdXYL9brwKB2CcG94ReDen+rRt/i+s2gbflaBcDnMHBDP8OOWqFIhnukUuBeCueM+EJVCAACgAULmQBRoUAAHBdAACGhgAAxoYAANiGAAB4hwAAwIcAAPBfAAAgABAAZiarAQiIAAAGYAAACIoAAEiKAABmigAAZosAAK6LAAAGZAAAMHUAAHAXAAAg0f//INH//wBAAABsIgAAQg8AABIGAABNAgAA2wAAAO0AAACZAAAASQAAAB4AAAAMAAAABwAAAABAAACTXQAAvXAAAO15AACyfQAAJH8AAKBRAAAFAAAAAAAAAAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABQAAAGyZAAAABAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAK/////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoFEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOJkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAYAAAAHAAAACAAAAAkAAAAKAAAACwAAAAwAAAANAAAAAAAAADgAAAAGAAAADgAAAAgAAAAJAAAACgAAAA8AAAAQAAAAEQAAAAAAAABIAAAAEgAAABMAAAAUAAAAAAABAAIAAwAEAAUABgAHAAgACgAMAA4AEAAUABgAHAAiACgAMAA8AE4AZAAAAAAAAAAAAAAAAAAAAAAACAAIAAgACAAQABAAEAAVABUAGAAdACIAJAD/////////////////////AAAAAAAAAAApACkAKQBSAFIAewCkAMgA3gAAAAAAAAAAAAAAAAAAAAAAKQApACkAKQB7AHsAewCkAKQA8AAKARsBJwEpACkAKQApACkAKQApACkAewB7AHsAewDwAPAA8AAKAQoBMQE+AUgBUAF7AHsAewB7AHsAewB7AHsA8ADwAPAA8AAxATEBMQE+AT4BVwFfAWYBbAHwAPAA8ADwAPAA8ADwAPAAMQExATEBMQFXAVcBVwFfAV8BcgF4AX4BgwEAAAwAGAAkADAABAAQABwAKAA0AAgAFAAgACwAOAABAA0AGQAlADEABQARAB0AKQA1AAkAFQAhAC0AOQACAA4AGgAmADIABgASAB4AKgA2AAoAFgAiAC4AOgADAA8AGwAnADMABwATAB8AKwA3AAsAFwAjAC8AOwAAABgAMABIAGAACAAgADgAUABoABAAKABAAFgAcAAEABwANABMAGQADAAkADwAVABsABQALABEAFwAdAABABkAMQBJAGEACQAhADkAUQBpABEAKQBBAFkAcQAFAB0ANQBNAGUADQAlAD0AVQBtABUALQBFAF0AdQACABoAMgBKAGIACgAiADoAUgBqABIAKgBCAFoAcgAGAB4ANgBOAGYADgAmAD4AVgBuABYALgBGAF4AdgADABsAMwBLAGMACwAjADsAUwBrABMAKwBDAFsAcwAHAB8ANwBPAGcADwAnAD8AVwBvABcALwBHAF8AdwAAADAAYACQAMAAEABAAHAAoADQACAAUACAALAA4AAEADQAZACUAMQAFABEAHQApADUACQAVACEALQA5AAIADgAaACYAMgAGABIAHgAqADYACgAWACIALgA6AAMADwAbACcAMwAHABMAHwArADcACwAXACMALwA7AABADEAYQCRAMEAEQBBAHEAoQDRACEAUQCBALEA4QAFADUAZQCVAMUAFQBFAHUApQDVACUAVQCFALUA5QAJADkAaQCZAMkAGQBJAHkAqQDZACkAWQCJALkA6QANAD0AbQCdAM0AHQBNAH0ArQDdAC0AXQCNAL0A7QACADIAYgCSAMIAEgBCAHIAogDSACIAUgCCALIA4gAGADYAZgCWAMYAFgBGAHYApgDWACYAVgCGALYA5gAKADoAagCaAMoAGgBKAHoAqgDaACoAWgCKALoA6gAOAD4AbgCeAM4AHgBOAH4ArgDeAC4AXgCOAL4A7gADADMAYwCTAMMAEwBDAHMAowDTACMAUwCDALMA4wAHADcAZwCXAMcAFwBHAHcApwDXACcAVwCHALcA5wALADsAawCbAMsAGwBLAHsAqwDbACsAWwCLALsA6wAPAD8AbwCfAM8AHwBPAH8ArwDfAC8AXwCPAL8A7wAAAGAAwAAgAYABIACAAOAAQAGgAUAAoAAAAWABwAEIAGgAyAAoAYgBKACIAOgASAGoAUgAqAAIAWgByAEQAHAA0AAwAZABMACQAPAAUAGwAVAAsAAQAXAB0AEYAHgA2AA4AZgBOACYAPgAWAG4AVgAuAAYAXgB2AEEAGQAxAAkAYQBJACEAOQARAGkAUQApAAEAWQBxAEMAGwAzAAsAYwBLACMAOwATAGsAUwArAAMAWwBzAEUAHQA1AA0AZQBNACUAPQAVAG0AVQAtAAUAXQB1AEcAHwA3AA8AZwBPACcAPwAXAG8AVwAvAAcAXwB3AEBAGEAwQAhAYEBIQCBAOEAQQGhAUEAoQABAWEBwQEJAGkAyQApAYkBKQCJAOkASQGpAUkAqQAJAWkByQERAHEA0QAxAZEBMQCRAPEAUQGxAVEAsQARAXEB0QEZAHkA2QA5AZkBOQCZAPkAWQG5AVkAuQAZAXkB2QEFAGUAxQAlAYUBJQCFAOUARQGlAUUApQAFAWUBxQENAG0AzQAtAY0BLQCNAO0ATQGtAU0ArQANAW0BzQEVAHUA1QA1AZUBNQCVAPUAVQG1AVUAtQAVAXUB1QEdAH0A3QA9AZ0BPQCdAP0AXQG9AV0AvQAdAX0B3QECAGIAwgAiAYIBIgCCAOIAQgGiAUIAogACAWIBwgEKAGoAygAqAYoBKgCKAOoASgGqAUoAqgAKAWoBygESAHIA0gAyAZIBMgCSAPIAUgGyAVIAsgASAXIB0gEaAHoA2gA6AZoBOgCaAPoAWgG6AVoAugAaAXoB2gEGAGYAxgAmAYYBJgCGAOYARgGmAUYApgAGAWYBxgEOAG4AzgAuAY4BLgCOAO4ATgGuAU4ArgAOAW4BzgEWAHYA1gA2AZYBNgCWAPYAVgG2AVYAtgAWAXYB1gEeAH4A3gA+AZ4BPgCeAP4AXgG+AV4AvgAeAX4B3gEDAGMAwwAjAYMBIwCDAOMAQwGjAUMAowADAWMBwwELAGsAywArAYsBKwCLAOsASwGrAUsAqwALAWsBywETAHMA0wAzAZMBMwCTAPMAUwGzAVMAswATAXMB0wEbAHsA2wA7AZsBOwCbAPsAWwG7AVsAuwAbAXsB2wEHAGcAxwAnAYcBJwCHAOcARwGnAUcApwAHAWcBxwEPAG8AzwAvAY8BLwCPAO8ATwGvAU8ArwAPAW8BzwEXAHcA1wA3AZcBNwCXAPcAVwG3AVcAtwAXAXcB1wEfAH8A3wA/AZ8BPwCfAP8AXwG/AV8AvwAfAX8B3wESAB0AJgAoAC4ANAA+AFQAXMq+2LbfmuKc5njsevTM/DQDhguIE2QZZh1KIEInpDVkAPAAIABkAM08ADAAINIGijqrmMYaqWT22Cqv1cnP/0AAEQBj/2EBEP6jACcrvVbZ/wYAWwBW/7oAFwCA/MAY2E3t/9z/ZgCn/+j/SAFJ/AgKJT6Hxz3JQACAAIb/JAA2AQD9SAIzJEVFDACAABIAcv8gAYv/n/wbEHs4aAINyPb/JwA6ANL/rP94ALgAxf7j/QQFBBVAI+Y+xsTz/wAAFAAaAAUA4f/V//z/QQBaAAcAY/8I/9T/UQIvBjQKxwzkVwXFAwDy/+z/8f8CABkAJQAZAPD/uf+V/7H/MgAkAW8C1gMIBbgFlGtnxBEADAAIAAEA9v/q/+L/4P/q/wMALABkAKgA8wA9AX0BrQHHARP1leZZEvMpHwZUIL0AqP1pAmd3dQBh/9L7CHQ0AN0AqPZ0bvz/EQLq8uVm0P/2AozwpV2w/4kDde8GU53/zAOC72ZHlf/HA4vwJzuZ/4ADYfKuLqX/BQPP9F4iuf9jAqH3mBbS/6kBofq0CwBAykUbTP9SglqzYqJrYHW4fpp5mnlmZrh+M3NRCwoJCgkKCe8I7wgKCfwIFwnvCEgLFApaCT8JCgniCOII4gjiCJIItwkkCSQJCgkKCQoJJAkkCT8JMgmQDM4KJAkkCQoJ4gitCJ8I1QiSCJwJqgk/CVoJWglaCVoJPwlnCQoJlw3wC08InwjiCOII4gjvCAoJ1QjSDEUMFApaCccIrQifCJIIkghCCAAQBQ+tCDwKPApnCQoJWgk/CRoIagysDD8JrQj5CYIJJAkKCXcIrQgKDaANpgqSCNUInAkyCT8Jnwg1CDIJdAkXCT8JWgl0CXQJdAmcCT8Jww4tDoIJ3wk/CeII4gj8CJ8IAAi2DJkMmQoeC48JFwn8CPwI4ghPCL8M5AzBCvYKjwnVCNUIxwhPCDUIOQulC0kKPwlnCTIJkgjHCMcIQgiZDH0MSQoUCuIIhQjHCK0IrQhdCGoM7gy0CmcJ4gjiCOII7wiSCEIIRQzIDJwJDQjvCMQJPwm3CYIJhQizDdIMCgmMClcKqgk/CVoJJAlPCF8Nzw3eC/AL/AieB60I4gjiCOIITA0mDScIfwo5CzIJdAniCKoJ7AmwDqANngdkClEL3wlaCT8JnAnVCNQLyAy0CkgLtApqCE8I7wi6CMcIbw5JDukHsQdkCowKFArECRcJPwmHDFUNMgkaCEgLSAskCbcJxwh3CAoNJg0eC9wKFwlqCOII7whCCA0IFwn8CIUIdwiFCD8JSQqMCowK+QlnCYIJrQjVCK0IrQgkCXQJLwqMCt4LrAz2CkgLqgkaCPwICgkyCUwJrQhqCE8I7wjECekK6Qo8ChQKPwlcDoEOugguB4UIwQqmCnEK0QmfCOkKWAymCvkJHgvRCYUIWgmtCIUI+gADAAYAAwADAAMABAADAAMAAwDNAUkObQttC20LbQttC20LbQttC20LbQttC5MLkwttCx4LkAwNDJwL8AvwC8ILwgvCC5MLkwvCC5wLSAseCx4LpgpQD64PpQuHDIcMdgvwCx4LMgysDG0LHgs8CvkJ3AptC7wNfQzCCx8MywtIC20LbQttC20LSAtIC0gLSAtIC8EKvhO+E3YL9Q05DfALDQzpClgMWAycCx4L0QnsCcEKSAtMETUQjArBCpwLwgttCx4LpQvLC20LbQttC20LSAumCiQOywucC/AL8As5C/YK8AuQDOcLpQvbDNsMpQvuDK8LaxSWE+wJCg3GDTkNfQwWDDANpQuMClcKfwrpCh4LcQrZEzYUBxJMEZwJUQvnC4cMYQx/CrQKSAseC+kKHguMCjIMSAuTC20LbQttC20LkwuTC5MLkwttC20LkwuTC5MLahCHDKULHwzCC0gLSAttC5wLOQtkC8sLnAvCC30MOQuwDrAOrAwfDKULSAttC0gLnAt2C+kK6QoeC0gLSAtkCg4Prg+HDDIMrAx2C+cLkwuTCw0MHgvpCukK6QrpChQKBQ/wDx0NvA0WDLQKwgt2CzIMDQweCx4LVwpXCh4L9gobFB4TmQwFD3ENYQxRC1UNew2MChQKcQq0Ch4L9grBCg0QzQ7bDFgMbQtIC0gLbQvpCrQK6Qq0CukKHgtIC/YK2RO+E+cL2Q2sDPALDQyACx8MUQu0CrQKtAoeC+kKPArVENUQLAvfCYcMMA0wDQMMAwwwDfALHgtXChQKpgrBCvALZAv2CkgLtAp/ClELHwxODE4MkAxhDPALwguTCx4LFxEqD20LSAseC0gLHgseC0gLSAtICx4LSAttC0gLHgulC2QLZAulC6UL8AsyDJAMTgzwC8ILnAucC5wLbQu0CoUQNRDuDBMNbQuTC0gLpQulCx4L6Qq0Ch4LHgseC+kK8A+uDx8MwgttC20LbQtIC20LbQseCx4LHgvpCkgL3AoHEt8RYQxxDYcMpQtRC94LMgy0Cn8Kfwp/CrQK6QqMCjUQrRDNDkkOpgrcCkgLSAvCC5wLbQseC38KfwrpCkgLdxDiDcEKHgseC0gLSAtIC20LbQtIC20LbQttC5MLSAs2FDkT1QhoDc0Olw0TDR4L7gyXDU4MUQucCbcJwQptC3sNZQ4yDH0MHQ3nC4cMhwylC5AMDQxtC20LfwrsCYIJpQvCC+kK6Qq0CukKHgucC/ALHwxODE4MTgwfDMILwguACzkLfwqmCtwKwgtoDdkNHQ2sDPALwguTC20LSAseC8sLgAtRC8ILwgucC8sLHwzwC/ALwgtICx4LbQttC0gLUA9/D8ILfQwdDZAM2wzbDJcNeA5xDaYKhQicCRQKLwpkAAMAKAADAAMAAwAFAA4ADgAKAAsAAwAIAAkABwADAFsBACD+H/Yf6h/YH8IfqB+IH2IfOh8KH9geoB5iHiIe3B2QHUId7hyWHDoc2BtyGwobnBoqGrQZOhm8GDwYthcuF6AWEBZ+FegUThSwExATbhLIER4RdBDGDxYPZA6uDfgMQAyEC8gKCgpKCYoIxgcCBz4GeAWyBOoDIgNaApIBygAAADb/bv6m/d78FvxO+4j6wvn++Dr4dve29vb1OPV89MDzCPNS8pzx6vA68Izv4u447pLt8OxQ7LLrGOuC6vDpYOnS6EroxOdE58bmTObW5WTl9uSO5CjkxuNq4xLjvuJw4iTi3uGe4WDhKOH24MbgnuB44FjgPuAo4BbgCuAC4ADgaW5pemFsaXNpemVkICglZCkhCgBjb2RlY19vcHVzX2VuY29kZSglcCwlcCwlZCwgJWQpCgD//9kc+fTc3c8wJu8sD9Pu0wkLBOcmDOGmuu8bB7cqmU5jFfj7A/ANA+juDgkCBf4C/fsjCgr4AgED5sMJBPgSA/sv3vojIx4o2AvZC/IO6Pj4AumcARPyBAcN5i/8LAUb/zn/3CLsxBm3GLoU/PpE8A3oKNbuAAoMyPomFQWMEwvyAxoOFwEj8P78NxcQFi255ewI0dHS8s6uJC024PoO/ugDF+X4AUYP/PkVEYIF0cv6Ihn/ChHbJv8eGd1w6wj2/Q8S8vjsCxgl3TI0EAkP5iv99+Z+ByE3qAkcBe20IAMLCsoC8wNeNGoaSiydOtQyDx0ZMqwcAeILCBS9BAvn2d+t8fcS/ugSTdmwGfg0qOtRHenhReQADC8PFCLLBW/Z+QE4BgMHvfrha/oMnyTu3vr3wQr3AwywqRH3J34NDxP6HQsK4hrKH9EZ2OgXEOXgHurF90Gq63jnzPQizhnvHvxfBAk9GfoL3/j9GiXkE+8kC/gIpwK8oRIWJAn40Dbm+h7kCu4C9QcCEfsb6wkPCu72APcTCtDd4A8YGfoDM/EJE+8GCPcNDuHoCukVEBL4IxLu7uYZCjcJA+jxAuQU0/IP7fgKBijh0yg1KBvx4eIKJjIcR+sUARcWDgXQJ075+gkyWPE3JCDqxA0f3Ln+NCUHLunVE8/eDzy+JALH4EDL3DH2Ff4X6xb98foS9OD19eAYJCX5Hur0FsEaFPDi8+72LQro/uYcEiQs2Pvy/BLu/xLYDx0PDAMZzQjvCe0W3+onPfE36AogDAkdBd/fBQAjafInBCskNDLZLc0bB0HebH8qGkkTCRHCEAs0VdIKoUA1WvjK+7PTf/w2/e1CKIE1FuYYFNz+ZQEj//gF3PAhBrfr6eDr/NLWvvD4AOzrJYCAgX6AgX/9f3p/foGAf4F/hH6CgYB9gdqFfYCAfn1/gYWBf7ePf+9/fn9+goJ/gX+DeYLngX+CGoJH5IAUFEepoyd0b6tG5j4X8RIEIHLJCIxVvZLPC/uA1z1G43N/M39/f4CBf4CBgoCCgX9+gH+Cfcl/f3+Dc4CCgIF/gIB/HIGIgX+BgQnmikknfE6CewqBl8B2rIE9TWiAgV7v5CQvAN0iaF94/ftp10/lei5ZWSJHXkZETxIsGfHqEuoJ8tMFARQmFg8YHPL+Cgjl7tL7ItXfDA0AAAnRHA7uEQgK2uns9TstTBgd2+veE+As1TP78iXgSn/jtc/7lsAY9RoXGfr/0PDmHRj9MunTxfX29zMqEOWxSAc38QXx6P8w49Qa7Ng58RUt/OcNGOYM/hQwxC0lShsNAH4FRG4HSjNB6yAb4gv91UkfK3fNDbAg6SVFZd/dMtF+rEBYHDk45JoA8ccB3hk7JPUa1g786Ns/7gLg99vx9wnX3GkUDvJAXESt+RRWFiYIwfrzyD03Mt/3FupNLN8s7E0hIrLLH5Qh6co/Ivcr7w/xD/3OD+b63cw5APZDx9EkwBPt45/xz0XuVHoErxKr/Nhj0gv2483FcJkd0wUrXhj82xvK6B4rKPYNEkszC/L5IlCJSdG8Mk8q/ssW9+v8WGH75BDA/+cJ7MEKOf1//uYIQtCKL7cPM+McSCn+MEvo0SwI2Ua31Djywh5KH54NCFPc+fg+DePsFb41z+jyE2XRzUHMGeDaJ8gpMRYKFQEm7jAkN9n2/AMR5a89AQjgIx1V38gQA9AjONgOvwO641QzS8w4yQDzxgYDFh/eFPoah1W1C97pLvUACRQnO/QmDgbf8aon0PsEHeQ0+M00PPXqUVERgeQb2NzHKzQz2vYX1LjBAxS8uNoa0xO17gQOD9Fo9zMZEKFA9f77JzTYTSwL49sFxtrkJDIC5v3w9fUQ8tH9/dAtKPIDvfwT5w7eML5DRhQ06xUcEEaO9R0JzMzZLBEL8ZFU7OnED9kwCuHo2gTW57r9tdj97SHyEvL78C7IJv8CCRHX1AvpHOAI/zn7LMDryi8W7fTo0PzW0u802d9P5hQVCfuB4Rqq7I0bISFIHjnvAkc6zPYUsf0olhEiRO8f5RcREhUZDynNHv0B/MTzxTXW3uPqzhu6xuvF5eQtvgxVwwDZt7Xj1tGo0hvVcFPN3MANSvcCGSbuwK/p9CgS2ofc+rfwxRzm/rv6+SvrPQABAA0S7uv9EioAQ90nD5+pZ0FWFPXvCfcPD900IperCty8wDyrM8rZ7U0AI+wjsin1MQ4R4QEp/wrnpvT39OYGIhYfGQYb5gXdHRL0Ntbq8vok8vAjRUsHjyz+7gPxMuTc9+cvf/rdI9IRdMLvnpdNne8pEPkRpyXwuP3jMh7V+bh9Mzu3JT0C7fUELiEzSljNRHwbYc0Q/fr04hwhA8UWSDUY4/y/WcVceQwLb+wMq4Xfv0ZEfwLnmDm2ooDlHPmChf7Hx0w31dSkAR0MCg8KWAC/x74O9vYkE8/8IQNjz+QpFSUuPhArxnfgIhsN0v/8Fx/rbARrJRrQRhIe7ptNpYu2EIwr6BrtzyLKZfIPDFD3bioI4jXWIvg8pwcpFaIz/+rbFgwx/zceBeb0BOPwivTQVdT75fOs2cGtLAXCzJL46NzqzBT2KnXt4hXw2lwj+/ktu8e7FBIOa9zbKxna1JguCF33NifQ5BUCGAv78v72HGkFxL/aeQXfxCxEFbv3BzfmtRO0AAqbyMATvA4TCc8X/xPM8b3B7hjY1PX6Kz5D5QXHBhnyEzUY48Dmzu0c8ePIBtgjNvrT7ylq1tEr6hT+guNIVeDiK/oOH6wEBxDR29/yxMzJ1CknjswYnDf6KGYw/zfJ3eUz/wb28NodJTcSFhzGDTzEEgb4H8wOAhAe6tkAI+MH0ClOGB4Bp0gb39/0Pa57JPTnNyVCG+0lCizy7+weFAIVDyUjA9gGDAQW67EdA8mz4Q3t6AraCbIYzvEfHvzfGRsK6Cv5Tv4bRekKT+27/QYZR9b89uvVEj8GD9f5TSXR+SneKAYZGbbgBCvm+Cz7J/z096bNJiAqHNYNBB4SNvP1A/46HssFtATy8xAKlAaOHKO/2BUc4avMHQn29OblrisAtfod/ED0+xkO/sqBUd0OxbVF478rqOsiqdAzAgjbGQrn+dvZ+Bw3uOYQ4inPICX59Bcmw/McEATwhiUIEQOxF+8c5OHy2XLP8dHyB/mxYrgT5kHUxMgS7N0TuAhOrCj9LigD4RAmxjAiALXn9Of78RL1BiIUFfrt3hbu0EV68AEMC1AfHN4XG+0KP1FCWwoCe35+ShVLCfEkHSLKZcfNwy9CKSaEONwwM/n1+h7JMAPu7BgYAMk+A7bPAvPh/fQq3wXo2XWv4dkAAgYZTQ0GChrrgSMH5rvt6+dv3v0dBuHUSf8G/AJjGVwiKAWiFS9+PfsC2wQV5SDu9kbY8SYTHgzt9f7OFt8DIdntV73l9YskaAvI4/oFDvssJgkYEH8v+vc/xpbtPuId6UUE4QMOmwUDH/qoHA0AKgAGPDb1Bd7f6PsqE8EKIPfgGRrk+/nTIAv0H+bf0rQo+wP7A+70XRE+h/IqTBgEIg4pEvZdW8I6yVjA9xcZLf5GKwlnFjAu8wnl2yPNyvY53f7/B/3bBQkDG/kyBc4WFfMWKwruJeza4P4bAb3XPOTfztpM7hfw5wD4ufb0FN4o7QzWDgvkJd8EKRNBVeYXziYD3kArARAiI/HlFP8yAOLODsS7CsfT4PIg8C7D0gHYteTwt87z8gmyBdT357Hw0ly6PewM1QPtKAsZIMY6LRwBDeXLHuLhzAoRRPrU+BkhMFHV9kMdFwsU2eQfErgdFvW5J/aH7PjYffnVCjEMJiuxuNfQxNcF7yNfI3z1AkbE5wDlTO2iKKBB9+H43RvUQMT0uAzICNP75foyHuzuQJTx1SwL8vjr6CozL/0R7+gh5Bnx3+sG8ycTB3QlNWkED8gKDKTidQQg8+/rKx3n2jMgStfxHfuOI9wuMw8Q2RgRA+Yo2yIrFMPyH+MiGeoZ2Sff9sjD+tCOoPQDUi0I/vzk1sbO3srmwPCuMeQA4uzAvO4S1N7Ww+8O5Agbz+4t1wv+Cvjv6OTWDE8uHuYFAwM6DLcXEQUCFCQ431BHEVco6xoGMLlMD9EgVx469UHVWzbhCCIZ8iXiFN0EtTjjFkAwL7K2FgvC5D7iDOfhKdYWF/jsJhX6NBcF7CADEBoyA/wws/38FRceC/8JyJwnBecjXywWSxPsfuH46CUj4PwULwesAgoHB0vALiSz/9rtzCcaKVImQz765/Dd+/IgD/3aHCvFBzoawcjXBRkQ9xYTE/A44ERfPnxRHnDoHvRoMRj2IR8mCkfwHQ0OJvlP590GCabwk88j8YFVDPoQGxpSCrHcKqgy5vmpfxOgtf0GCPxU4uZG94Xz/kCDz51+Q17sNm7x0KX/QAQf/zTJEDQVf4QKH38py0QoEDDtu/Cc45/+L/AoUDxS7tYP1Sp75CYSI/gmiWchCed4ks7iAr3W36smO8lHYePADiABgOaH3/gCvxZVyccRJQKyHMoR4R8a+BkXzPHG7gTp5QQFqyId/7D4ARbgFuVfybqB0sb5Jvx/8vlHPivHyjzG5NXOf2UPGTHLEa/EU+AuOcUTMfSTFO3O+Q5PO+LH+8QNBVXfpwl/Ddp/OWMO5pcD2rMp7RzhF6jqxOMOrAkI/+sxOg/8+mT35speVBkZGzH/AJj7IfYoNg8+/9nKEikP76zjH/a/0QG+79UiBcNeayU3Ljk/vvINrgcK9Uh7ZgGQuXk46Oh/BejPaOU48QJMaxhTVlotdHwwHWYkCjcd4wys7s74EeTMwP12NjMtxS//3Rb2DLHoBDxcvX2mHdBAmBf0zcvbvhVxSyUJ7AAFtSA8DCO88DDqKO0oTc0/F1UICdfFYgno0C8EMDAEW7sVFUYWDzlvwO74MSvmB65v6wHMO65qBfvTI/H+OT45RPrlzTI86/SBIlmLxa20UMXjOO4bur0upKkMjEe4BM3ARgaYvSoD+2Ip7P9A4MYzu4Iu67XlzDT07xz/+ev9WEQHA0P5OyEZ/NPaLkjopOeUK92mA/oWsFvdbwjKFYMfs4fvyO6DgiToIwEAGewODANaqRHKxMb3Ft0gDAURpAMIyoDqtdfqf0n3+gy5asp4781eDei9+SO7G9CzOMTQQCZY7BSFKqU3ntdOlXiupREVHwcfQyDW934x15m++ODAEsgZ8iMj4+7PAkvSqi+58hIcDygh7tM8zAMrPY3M/xXkGxHfgx33flsl22rZPYYFg4UXI+oMURTcTCI/NcAuGCl66j3y6wpeG+VOAwIPDhT98fWA3cYI1VPmMCwI8vY40AzZ2O9CRSHe8OAwqgIVAjMf2TnsEOhCQfpA8wJJq/mByzG81BpP+k4R3i0hEBE4tBwsDA8jFULRNRvzDeI34UPB/DPYMTMO2sLPMhoD8NkqBx7lbLfj+h0qE7PY7zntWka42OJBVPwCCSG3SVEI6+rH+8bgDiIKJgcpAOcmA4M+5+wNFA735Q0fgKtIwc/uUS8lP/b2vgSMNQ4xBiUm/NFADwCS7S0H2xQVFjMR2UfF/934t5biBbzu3CPr7/8E6OQFBAvOG1TwxKr04fgrNF4OHS7eBv4z3Mj30PgaTgPh0hkO+PfRAelBKvtoYLoSu1T+5O3dBc+oiwlSucYhUhEooyAFFSbps9gw+PYW5dHPLkPvUcNcNgi5fxfDMw0g3czg/NEUAMKCA++BEroL46nl7fP3gOZFveNCMQGJt/nJ9zDT5Ro5DAkznvLr21gX20H1RfneECEkXjgFP9oZya+2FR788DQlBAjQCH+1yLG0PRHlwcjLJ5POs/mcqBeUiHiphqkkP78D4FQ3R34KJR0QLShL+yiX+fHnDLIu945aMtfpBsZLEz7f2uhCFkL8fB3J4yrvhbH4/f4TO9/ZKTMALfFDCNYC7M9f4AXIJRX17vg1ESsOUabYRd87HPgsL/XmpB9WDNkJ5Or61vzpBsdt0vQKs77o5ndOK+/y00n8DdSyGsDEnZgf8KPAMO9suQwiwRgO5NABXuPlAvvLEjhb7eQt2smW9ikx2vwBrNuzBL4TOCmucmHOU9ofguqiqiwlIws8MQMaEnzAMrgRsBAecSLtID/iX6g3fn9rMVPvtQGVGxRzHzn13ClbHzra9AQnJiUNtyELKyMXqiT2EyL23fgvl8RL538OalH30hUjKvoDdk4lIRZiLjLpUXoSHkBpZYzfvhLFnYOxE394ng0bIBoDFHgKHVszThzDIvQ27TPvHTg1hPafCfb3AgkhISzRJDTKP1j1RkRxC39BWH70HFE5e0caBXUQEPdcMt0bG9EnLg0TPWpK4TReFti4OQotGQX7JPnVKCiv3NEI7j8f0DrP7Rn7P7QJ/gF/E+ggJBcZz2gNA0sM4SZ6FDEj8hAsZfR3MtD59Q+Z99kEyr0gHi8oPAnv4S8Nf+v8Mhwi/Ljo/tcDGt6mUgGtLyj4/AS/9nMraCogVbIMO0dxKuwy4z0GaEpBtwxdTRUY8lQ6aSUlVctMoRrvzcC17f8bGc8uSRPznvgB27uvHAIH2NE3HTUhZ8vxE/cHeOscGw0ic3rNdr3pgH6EfwwCvHWwA39Hf4Ct8V0NKBuBQWVUEFV1f4jFyYDNgL9/AWN/xH+AMgIBABkXAgB+fHdtVykTCQQCAP//nG5WRjszLSglIR8cGhkXFhUUExIREBAPDw4NDQwMDAwLCwsKCgoJCQkJCQkICAgICAcHBwcHBwYGBgYGBgYGBgYGBgYGBgYFBQUFBQUFBQUFBQUEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAwMDAwMDAwMDAwMDAwMDAwMCAgEAGRcCAH58d21XKRMJBAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWlBLRT84MSgiHRQSCgAAAAAAAAAAbmRaVE5HQTozLScgGhQMAAAAAAAAdm5nXVZQS0ZBOzUvKB8XDwQAAAAAfndwaF9ZU05IQjw2LycgGREMAQAAhn94cmdhW1VOSEI8Ni8pIx0XEAoBkImCfHFrZV9YUkxGQDkzLSchGg8BmJGKhHt1b2liXFZQSkM9NzErJBQBopuUjoV/eXNsZmBaVE1HQTs1Lh4BrKWemI+Jg312cGpkXldRS0U/OC0UyMjIyMjIyMjGwby3sq2oo56ZlIFoKAcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcoDxccHyIkJicpKissLS4vLzEyMzQ1Njc3OTo7PD0+Pz9BQkNERUZHRygUISkwNTk9QEJFR0lLTE5QUlVXWVtcXmBiZWdpa2xucHJ1d3l7fH6AKBcnMzxDSU9TV1teYWRmaWtvc3Z5fH6Bg4eLjpGUlpmbn6OmqayusbMjHDFBTllja3J4foSIjZGVmZ+lq7C0ub3Ax83T2Nzh5ejv9fsVITpPYXB9iZSdpq62vcPJz9nj6/P7ESM/Vmp7i5ilsbvFztbe5u36GR83S1tpdYCKkpqhqK60ub7I0Nfe5evw9f8QJEFZboCQn625xM/Z4ury+gspSmeAl6y/0eHx/wkrT26Ko7rP4/YMJ0dje5CktsbW5PH9CSxRcY6owNbr/wcxWn+gv9z3BjNfhqrL6gcvV3ubuNTtBjRhia7Q8AU5apfA5wU7b57K8wU3Z5O74AU8caHO+ARBeq/gBEN/turg4ODg4ODg4KCgoKC5ubmysqiGPSXg4ODg4ODg4PDw8PDPz8/GxreQQiigoKCgoKCgoLm5ubnBwcG3t6yKQCbw8PDw8PDw8M/Pz8/MzMzBwbSPQii5ubm5ubm5ucHBwcHBwcG3t6yKQSfPz8/Pz8/Pz8zMzMzJycm8vLCNQijBwcHBwcHBwcHBwcHCwsK4uK2LQSfMzMzMzMzMzMnJycnGxsa7u6+MQihIf0GBQoBBgECAPoBAgECAXE5cT1xOWk90KXMociiEGoQakRGhDLAKsQsYszCKNoc2hDWGOIU3hDeEPXJGYEpYS1hXSllCW0NkO2wyeCh6JWErTjJTTlRRWEtWSldHWkldSl1KbShyJHUidSKPEZESkhOiDKUKsge9Br4IsQkXsjZzP2ZCYkVjSllHW0lbTllWUFxCXUBmO2c8aDx1NHssiiOFH2EmTS09Wl08aSprKW4tdCZxJnAmfBqEG4gTjBSbDp8QnhKqDbEKuwjABq8JnwoVsjtuR1ZLVVRTW0JYSVdIXEtiSGk6azZzNHI3cDiBM4QoliGMHWIjTSoqeWBCbCtvKHUseyB4JHchfyGGIosVkxeYFJ4ZmhqmFa0QuA24CpYNiw8Wsj9ySlJUU1xSZz5gSGBDZUlrSHE3djR9NHY0dTeHMYknnSCRHWEhTSgCAQAACA0QExUXGBobHB0eHyAgISIiIyQkJSXgcCwPAwIBAP7twIRGFwQA//zimz0LAgD69erLRzIqJiMhHx0cGxoZGBcWFRQTEhEQDw4NDAsKCQgHBgUEAwIBALNjAEc4Kx4VDAYAx6WQfG1gVEc9MyogFw8IAPHh08e7r6SZjoR7cmlgWFBIQDkyLCYhHRgUEAwJBQIAD4OKipubra1FXXN2g4qNipaWm5aboKagg4CGjY2NkZGRlpubm5ugoKCgpqatrbbAtsDAwM3AzeAEBhgHBQAAAgAADBwpDfz3DyoZDgH+Pin39iVB/AP6BEIH+BAOJv0hDRYnFwz/JEAb+vkKNysRAQEIAQEG9Uo19/Q3TPQI/QNdG/waJzsD+AIATQsJ+BYs+gcoCRoDCfkUZfkEA/gqGgDxIUQCF/43Lv4PA/8VECn6Gz0nBfUqWAQB/jxBBvz/+0k4AfcTXh33AAxjBgQI7WYu8wMCDQMCCetUSO71LmjqCBImMBcA8EZT6wsF9XUW+PoXdfQDA/hfHAT2D0088f8EfAL8AyZUGOcCDSoNHxX8OC7//yNP8xP5QVj38hQEUTHjFABLA+8F9yxc+AH9FkUf+l8p9AUnQxD8AQD6eDfc8yx6BOhRBQsDBwIACQpYLgJaV11bUmJteHYMcXN1d2M7V28/b3BQfnx9fIF5fheEf39/fn96hYKGZXZ3kX5WfHh7d6qta20IECD59/b19OrSysnIxa5SOzg3Ni4WDAsKCQcAQADLlgDXw6Z9blIAeACAQADongoA5gDz3cC1AKtVAMCAQADNmmYzANWrgFUrAODAoIBgQCAAZCgQBwMBAP369OnUtpaDeG5iVUg8MSggGRMPDQsJCAcGBQQDAgEA0tDOy8fBt6iOaEo0JRsUDgoGBAIA38m3p5iKfG9iWE9GPjgyLCcjHxsYFRIQDgwKCAYEAwIBALywm4p3YUMrGgoApXdQPS8jGxQOCQQAcT8ACAoMEH0zGhIPDAsKCQgHBgUEAwIBAMZpLRYPDAsKCQgHBgUEAwIBANWidFM7KyAYEg8MCQcGBQMCAO+7dDscEAsKCQgHBgUEAwIBAPrlvIdWMx4TDQoIBgUEAwIBAPnr1bmcgGdTQjUqIRoVEQ0KAP75686kdk0uGxAKBwUEAwIBAP/9+e/cv5x3VTklFw8KBgQCAP/9+/bt38uzmHxiSzcoHRUPAP/+/ffcompDKhwSDAkGBAMCAB85a6DNzf///////////////0UvQ2+mzf///////////////1JKT19tgJGgrc3NzeD//+D/4H1KO0Vhjbb//////////////61zVUlMXHORrc3g4P///////6aGcWZlZmt2fYqRm6a2wMDNluC2hmVTT1VheJGtzeD////////gwJZ4ZVxZXWZ2hqC2wODg4P/g4LabhnZtaGZqb3aDkaCtg/G+soRXSikOAN/BnYxqOScSAINKjU9Qil9ohl9jW31dTHtze4AA1ioA64AVAPS4SAsA+NaAKgcA+OGqUBkFAPvsxn42EgMA+u7Tn1IjDwUA+ufLqIBYNRkGAPzu2LmUbEcoEgQA/fPhx6aAWjkfDQMA/vbp1LeTbUksFwoCAP/68N/GpoBaOiEQBgEA//v059K1km5LLhkMBQEA//347t3EpIBcPCMSCAMBAP/9+fLl0LSSbkwwGw4HAwEAgQDPMgDsgRQA9blICgD51YEqBgD64qlXGwQA++nCgj4UBAD67M+gYy8RAwD/8Nm2g1EpCwEA//7pyZ9rPRQCAQD/+enOqoBWMhcHAQD/+u7ZupRsRicSBgEA//zz4simgFo4Hg0EAQD//PXn0bSSbkwvGQsEAQD//fjt28KjgF0+JRMIAwEA//768eLNsZFvTzMeDwYCAQCBAMs2AOqBFwD1uEkKAPrXgSkFAPzorVYYAwD98MiBOA8CAP302aReJgoBAP314r2ERxsHAQD99ufLn2k4FwYBAP/469WzhVUvEwUBAP/+893Cn3VGJQwCAQD//vjq0KuAVTAWCAIBAP/++vDcvZVrQyQQBgIBAP/++/PjyaaAWjcdDQUCAQD//vz26tW3k21JKxYKBAIBAIIAyDoA54IaAPS4TAwA+daCKwYA/OitVxgDAP3xy4M4DgIA/vbdp14jCAEA/vnowYJBFwUBAP/779OiYy0PBAEA//vz37qDSiELAwEA//z15sqeaTkYCAIBAP/99+vWs4RULBMHAgEA//768N/En3BFJA8GAgEA//799efRsIhdNxsLAwIBAP/+/fzv3cKedUwqEgQDAgEAAAACBQkOFBsjLDZBTVpod4f+MUNNUl1jxgsSGB8kLf8uQk5XXmjQDhUgKjNC/15obXBzdvg1RVBYX2YGAAMABwMAAQoAAgYSCgwEAAIAAAAJBAcEAAMMBwcAAQEBAgMDAwIDAwMCAwMDAAMMDzAzPD/Aw8zP8PP8/wD/AP8A/wD/AP8A/gEAAf8A/gD9AgAB/wD+AP0DAAH/DCM8U2yEnbTO5A8gN01lfZevyeETKkJZcomiuNHmDBkySGF4k6zI3xosRVpyh5+0zeENFjVQaoKctM3kDxksQFpzjqjE3hMYPlJkeJGovtYWHzJPZ3iXqsvjFR0tQWp8lqvE4B4xS2F5jqW60eUTGTRGXXSPpsDbGiI+S2F2kafC2RkhOEZbcY+lxN8VIjNIYXWRq8TeFB0yQ1p1kKjF3RYfMEJfdZKoxN4YITNNdIaetMjgFRxGV2p8larC2RohNUBTdZitzOEbIkFfbIGbrtLhFBpIY3GDmrDI2yIrPU5dcpuxzeUXHTZhfIqjs9HlHiY4WXaBnrLI5xUdMT9Vb46jwd4bME1nhZ6zxNfoHS9KY3yXsMbc7SEqPUxdeZuuz+EdNVdwiJqqvNDjGB40VIOWprrL5SUwQFRodpyxyebUspSBbGBVUk9NPTs5ODMxMC0qKSgmJCIfHhUMCgMBAP/19Ozp4dnLvrCvoZWIfXJmW1FHPDQrIxwUExIMCwUAs4qMlJeVmZejdENSO1xIZFlcEAAAAABjQiQkIiQiIiIiU0UkNCJ0ZkZERLBmREQiQVVEVCR0jZiLqoS7uNiJhPmouYtoZmRERLLaubmq9Ni7u6r0u7vbimebuLmJdLebmIiE2bi4qqTZq5uL9Km4uaqk2N/aitaPvNqo9I2Im6qoitzbi6TbytiJqLr2uYt0udu5imRkhmRmIkREZESoy93aqKeaiGhGpPariYuJm9rbi//+/e4OAwIBAP/+/NojAwIBAP/++tA7BAIBAP/+9sJHCgIBAP/87LdSCAIBAP/867RaEQIBAP/44KthHgQBAP/+7K1fJQcBAP///4MGkf//////7F0PYP//////wlMZR93/////okkiQqL////SfkkrOa3////JfUcwOoL///+mbkk5PmjS///7e0E3RGSr/wcXJjZFVWR0g5OissHQ3+8NGSk3RVNicH+Onau7y9zsDxUiMz1OXGp+iJinuc3h8AoVJDI/T19ufo2drb3N3e0RFCUzO05Za3uGlqS4zeDwCg8gM0NRYHCBjp6tvczc7AgVJTNBT2JxfoqbqLPA0doMDyI3P05XbHaDlKe5y9vsEBMgJDhPW2x2iJqruszc7QscKzpKWWl4h5altMTT4vEGECEuPEtca3uJnKm5x9bhCxMeLDlKWWl5h5ipusra6gwTHS45R1hkeISUpbbH2OkRFyMuOE1canuGmKe5zN7tDhEtNT9LWWtzhJervM7d8AkQHSg4R1hnd4maq73N3u0QEyQwOUxXaXaElqe5ytrsDBEdNkdRXmh+iJWktsnd7Q8cLz5PYXOBjpuotMLQ3+4IDh4tPk5eb3+Pn6/Az9/vER4xPk9ca3eEkaCuvszc6w4TJC09TFtseYqarL3N3u4MEh8tPExba3uKmqu7zN3sDREfKzVGU2dyg5Wnucvc7REWIyo6Tl1ufYubqrzO4PAIDyIyQ1Njc4OSorLB0eDvDRApQklWX2+AiZajt87h8REZJTQ/S1xmd4SQoK+/1OcTHzFBU2R1hZOhrrvI1ePyEh80RFhndX6KlaOxwM/f7xAdLz1MWmp3hZOhsMHR4PAPFSMyPUlWYW53gY2vxtrt4czJuLevnpqZh3dzcW5tY2JfT0Q0MjAtKyAfGxIKAwD/++vm1MnEtqemo5eKfG5oWk5MRkU5LSIYFQsGBQQDAK+UoLCyra6ksa7EtsbAtkQ+QjxIdVVadoiXjqCOmwAAAAAAAAABZGZmREQkImCka565tLmLZkBCJCIiAAEg0IuNv5i5m2hgq2imZmZmhAEAAAAAEBAAUG1Oa7mLZ2XQ1I2LrZl7ZyQAAAAAAAABMAAAAAAAACBEh3t3d2dFYkRneHZ2ZkdihoiduLaZi4bQqPhLvY95ayAxIiIiABEC0uuLe7mJaYZih2i2ZLerhmRGREZCQiKDQKZmRCQCAQCGpmZEIiJChNT2notra1dmZNt9eol2Z4Ryh4lpq2oyIqTWjY+5l3lnwCIAAAAAAAHQbUq7hvmfiWZumnZXZXdlAAIAJCRCRCNgpGZkJAACIaeKrmZkVAICZGt4dyTFGAD//v30DAMCAQD//vzgJgMCAQD//vvROQQCAQD//vTDRQQCAQD/++i4VAcCAQD//vC6Vg4CAQD//u+yWx4FAQD/+OOxZBMCAQD///+cBJr//////+NmD1z//////9VTGEjs/////5ZMIT/W////vnlNKze5////9YlHKzuL/////4NCMkJrwv//pnRMNzV9//8ADwgHBAsMAwINCgUGCQ4BAAkGAwQFCAECBwABAAAAAQAAAf8B/wL+Av4D/QABAAH/Av8C/gP+A/0H/gcAAv///wAAAQEAAQABAAAAAAABAAAAAAABAAAAAQAAAAAA/wIBAAEBAAD//wAAAf8AAf8A/wH+Av7+Av0CA/38A/wEBPsF+vsG+QYFCPcAAAEAAAAAAAAA/wEAAAH/AAH//wH/AgH/Av7+Av4CAgP9AAEAAAAAAAABAAEAAAH/AQAAAgH/Av//Av8CAv8D/v7+AwABAAABAAH/Av8C/wID/gP+/gQE/QX9/Ab8BgX7CPr7+Qn7CP8G/wb8CvoK/gb/BvsK9wz9B/4H+Q0QGCIRAAoAERERAAAAAAUAAAAAAAAJAAAAAAsAAAAAAAAAABEADwoREREDCgcAARMJCwsAAAkGCwAACwAGEQAAABEREQAAAAAAAAAAAAAAAAAAAAALAAAAAAAAAAARAAoKERERAAoAAAIACQsAAAAJAAsAAAsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAADAAAAAAMAAAAAAkMAAAAAAAMAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAA0AAAAEDQAAAAAJDgAAAAAADgAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAPAAAAAA8AAAAACRAAAAAAABAAABAAABIAAAASEhIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEgAAABISEgAAAAAAAAkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsAAAAAAAAAAAAAAAoAAAAACgAAAAAJCwAAAAAACwAACwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAMAAAAAAwAAAAACQwAAAAAAAwAAAwAAC0rICAgMFgweAAobnVsbCkALTBYKzBYIDBYLTB4KzB4IDB4AGluZgBJTkYAbmFuAE5BTgAwMTIzNDU2Nzg5QUJDREVGLgBUISIZDQECAxFLHAwQBAsdEh4naG5vcHFiIAUGDxMUFRoIFgcoJBcYCQoOGx8lI4OCfSYqKzw9Pj9DR0pNWFlaW1xdXl9gYWNkZWZnaWprbHJzdHl6e3wASWxsZWdhbCBieXRlIHNlcXVlbmNlAERvbWFpbiBlcnJvcgBSZXN1bHQgbm90IHJlcHJlc2VudGFibGUATm90IGEgdHR5AFBlcm1pc3Npb24gZGVuaWVkAE9wZXJhdGlvbiBub3QgcGVybWl0dGVkAE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkATm8gc3VjaCBwcm9jZXNzAEZpbGUgZXhpc3RzAFZhbHVlIHRvbyBsYXJnZSBmb3IgZGF0YSB0eXBlAE5vIHNwYWNlIGxlZnQgb24gZGV2aWNlAE91dCBvZiBtZW1vcnkAUmVzb3VyY2UgYnVzeQBJbnRlcnJ1cHRlZCBzeXN0ZW0gY2FsbABSZXNvdXJjZSB0ZW1wb3JhcmlseSB1bmF2YWlsYWJsZQBJbnZhbGlkIHNlZWsAQ3Jvc3MtZGV2aWNlIGxpbmsAUmVhZC1vbmx5IGZpbGUgc3lzdGVtAERpcmVjdG9yeSBub3QgZW1wdHkAQ29ubmVjdGlvbiByZXNldCBieSBwZWVyAE9wZXJhdGlvbiB0aW1lZCBvdXQAQ29ubmVjdGlvbiByZWZ1c2VkAEhvc3QgaXMgZG93bgBIb3N0IGlzIHVucmVhY2hhYmxlAEFkZHJlc3MgaW4gdXNlAEJyb2tlbiBwaXBlAEkvTyBlcnJvcgBObyBzdWNoIGRldmljZSBvciBhZGRyZXNzAEJsb2NrIGRldmljZSByZXF1aXJlZABObyBzdWNoIGRldmljZQBOb3QgYSBkaXJlY3RvcnkASXMgYSBkaXJlY3RvcnkAVGV4dCBmaWxlIGJ1c3kARXhlYyBmb3JtYXQgZXJyb3IASW52YWxpZCBhcmd1bWVudABBcmd1bWVudCBsaXN0IHRvbyBsb25nAFN5bWJvbGljIGxpbmsgbG9vcABGaWxlbmFtZSB0b28gbG9uZwBUb28gbWFueSBvcGVuIGZpbGVzIGluIHN5c3RlbQBObyBmaWxlIGRlc2NyaXB0b3JzIGF2YWlsYWJsZQBCYWQgZmlsZSBkZXNjcmlwdG9yAE5vIGNoaWxkIHByb2Nlc3MAQmFkIGFkZHJlc3MARmlsZSB0b28gbGFyZ2UAVG9vIG1hbnkgbGlua3MATm8gbG9ja3MgYXZhaWxhYmxlAFJlc291cmNlIGRlYWRsb2NrIHdvdWxkIG9jY3VyAFN0YXRlIG5vdCByZWNvdmVyYWJsZQBQcmV2aW91cyBvd25lciBkaWVkAE9wZXJhdGlvbiBjYW5jZWxlZABGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQATm8gbWVzc2FnZSBvZiBkZXNpcmVkIHR5cGUASWRlbnRpZmllciByZW1vdmVkAERldmljZSBub3QgYSBzdHJlYW0ATm8gZGF0YSBhdmFpbGFibGUARGV2aWNlIHRpbWVvdXQAT3V0IG9mIHN0cmVhbXMgcmVzb3VyY2VzAExpbmsgaGFzIGJlZW4gc2V2ZXJlZABQcm90b2NvbCBlcnJvcgBCYWQgbWVzc2FnZQBGaWxlIGRlc2NyaXB0b3IgaW4gYmFkIHN0YXRlAE5vdCBhIHNvY2tldABEZXN0aW5hdGlvbiBhZGRyZXNzIHJlcXVpcmVkAE1lc3NhZ2UgdG9vIGxhcmdlAFByb3RvY29sIHdyb25nIHR5cGUgZm9yIHNvY2tldABQcm90b2NvbCBub3QgYXZhaWxhYmxlAFByb3RvY29sIG5vdCBzdXBwb3J0ZWQAU29ja2V0IHR5cGUgbm90IHN1cHBvcnRlZABOb3Qgc3VwcG9ydGVkAFByb3RvY29sIGZhbWlseSBub3Qgc3VwcG9ydGVkAEFkZHJlc3MgZmFtaWx5IG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wAQWRkcmVzcyBub3QgYXZhaWxhYmxlAE5ldHdvcmsgaXMgZG93bgBOZXR3b3JrIHVucmVhY2hhYmxlAENvbm5lY3Rpb24gcmVzZXQgYnkgbmV0d29yawBDb25uZWN0aW9uIGFib3J0ZWQATm8gYnVmZmVyIHNwYWNlIGF2YWlsYWJsZQBTb2NrZXQgaXMgY29ubmVjdGVkAFNvY2tldCBub3QgY29ubmVjdGVkAENhbm5vdCBzZW5kIGFmdGVyIHNvY2tldCBzaHV0ZG93bgBPcGVyYXRpb24gYWxyZWFkeSBpbiBwcm9ncmVzcwBPcGVyYXRpb24gaW4gcHJvZ3Jlc3MAU3RhbGUgZmlsZSBoYW5kbGUAUmVtb3RlIEkvTyBlcnJvcgBRdW90YSBleGNlZWRlZABObyBtZWRpdW0gZm91bmQAV3JvbmcgbWVkaXVtIHR5cGUATm8gZXJyb3IgaW5mb3JtYXRpb24AAFN0OWV4Y2VwdGlvbgBOMTBfX2N4eGFiaXYxMTZfX3NoaW1fdHlwZV9pbmZvRQBTdDl0eXBlX2luZm8ATjEwX19jeHhhYml2MTIwX19zaV9jbGFzc190eXBlX2luZm9FAE4xMF9fY3h4YWJpdjExN19fY2xhc3NfdHlwZV9pbmZvRQBzdGQ6OmJhZF9hbGxvYwBTdDliYWRfYWxsb2M="; /* no memory initializer */ var tempDoublePtr = STATICTOP; STATICTOP += 16; assert(tempDoublePtr % 8 == 0); function copyTempFloat(ptr) { // functions, because inlining this code increases code size too much HEAP8[tempDoublePtr] = HEAP8[ptr]; HEAP8[tempDoublePtr+1] = HEAP8[ptr+1]; HEAP8[tempDoublePtr+2] = HEAP8[ptr+2]; HEAP8[tempDoublePtr+3] = HEAP8[ptr+3]; } function copyTempDouble(ptr) { HEAP8[tempDoublePtr] = HEAP8[ptr]; HEAP8[tempDoublePtr+1] = HEAP8[ptr+1]; HEAP8[tempDoublePtr+2] = HEAP8[ptr+2]; HEAP8[tempDoublePtr+3] = HEAP8[ptr+3]; HEAP8[tempDoublePtr+4] = HEAP8[ptr+4]; HEAP8[tempDoublePtr+5] = HEAP8[ptr+5]; HEAP8[tempDoublePtr+6] = HEAP8[ptr+6]; HEAP8[tempDoublePtr+7] = HEAP8[ptr+7]; } // {{PRE_LIBRARY}} function ___cxa_allocate_exception(size) { return _malloc(size); } function __ZSt18uncaught_exceptionv() { // std::uncaught_exception() return !!__ZSt18uncaught_exceptionv.uncaught_exception; } var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:function (adjusted) { if (!adjusted || EXCEPTIONS.infos[adjusted]) return adjusted; for (var ptr in EXCEPTIONS.infos) { var info = EXCEPTIONS.infos[ptr]; if (info.adjusted === adjusted) { return ptr; } } return adjusted; },addRef:function (ptr) { if (!ptr) return; var info = EXCEPTIONS.infos[ptr]; info.refcount++; },decRef:function (ptr) { if (!ptr) return; var info = EXCEPTIONS.infos[ptr]; assert(info.refcount > 0); info.refcount--; // A rethrown exception can reach refcount 0; it must not be discarded // Its next handler will clear the rethrown flag and addRef it, prior to // final decRef and destruction here if (info.refcount === 0 && !info.rethrown) { if (info.destructor) { Module['dynCall_vi'](info.destructor, ptr); } delete EXCEPTIONS.infos[ptr]; ___cxa_free_exception(ptr); } },clearRef:function (ptr) { if (!ptr) return; var info = EXCEPTIONS.infos[ptr]; info.refcount = 0; }}; function ___resumeException(ptr) { if (!EXCEPTIONS.last) { EXCEPTIONS.last = ptr; } throw ptr; }function ___cxa_find_matching_catch() { var thrown = EXCEPTIONS.last; if (!thrown) { // just pass through the null ptr return ((setTempRet0(0),0)|0); } var info = EXCEPTIONS.infos[thrown]; var throwntype = info.type; if (!throwntype) { // just pass through the thrown ptr return ((setTempRet0(0),thrown)|0); } var typeArray = Array.prototype.slice.call(arguments); var pointer = Module['___cxa_is_pointer_type'](throwntype); // can_catch receives a **, add indirection if (!___cxa_find_matching_catch.buffer) ___cxa_find_matching_catch.buffer = _malloc(4); HEAP32[((___cxa_find_matching_catch.buffer)>>2)]=thrown; thrown = ___cxa_find_matching_catch.buffer; // The different catch blocks are denoted by different types. // Due to inheritance, those types may not precisely match the // type of the thrown object. Find one which matches, and // return the type of the catch block which should be called. for (var i = 0; i < typeArray.length; i++) { if (typeArray[i] && Module['___cxa_can_catch'](typeArray[i], throwntype, thrown)) { thrown = HEAP32[((thrown)>>2)]; // undo indirection info.adjusted = thrown; return ((setTempRet0(typeArray[i]),thrown)|0); } } // Shouldn't happen unless we have bogus data in typeArray // or encounter a type for which emscripten doesn't have suitable // typeinfo defined. Best-efforts match just in case. thrown = HEAP32[((thrown)>>2)]; // undo indirection return ((setTempRet0(throwntype),thrown)|0); }function ___cxa_throw(ptr, type, destructor) { EXCEPTIONS.infos[ptr] = { ptr: ptr, adjusted: ptr, type: type, destructor: destructor, refcount: 0, caught: false, rethrown: false }; EXCEPTIONS.last = ptr; if (!("uncaught_exception" in __ZSt18uncaught_exceptionv)) { __ZSt18uncaught_exceptionv.uncaught_exception = 1; } else { __ZSt18uncaught_exceptionv.uncaught_exception++; } throw ptr; } function ___gxx_personality_v0() { } function ___lock() {} var SYSCALLS={varargs:0,get:function (varargs) { SYSCALLS.varargs += 4; var ret = HEAP32[(((SYSCALLS.varargs)-(4))>>2)]; return ret; },getStr:function () { var ret = Pointer_stringify(SYSCALLS.get()); return ret; },get64:function () { var low = SYSCALLS.get(), high = SYSCALLS.get(); if (low >= 0) assert(high === 0); else assert(high === -1); return low; },getZero:function () { assert(SYSCALLS.get() === 0); }};function ___syscall140(which, varargs) {SYSCALLS.varargs = varargs; try { // llseek var stream = SYSCALLS.getStreamFromFD(), offset_high = SYSCALLS.get(), offset_low = SYSCALLS.get(), result = SYSCALLS.get(), whence = SYSCALLS.get(); // NOTE: offset_high is unused - Emscripten's off_t is 32-bit var offset = offset_low; FS.llseek(stream, offset, whence); HEAP32[((result)>>2)]=stream.position; if (stream.getdents && offset === 0 && whence === 0) stream.getdents = null; // reset readdir state return 0; } catch (e) { if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); return -e.errno; } } function flush_NO_FILESYSTEM() { // flush anything remaining in the buffers during shutdown var fflush = Module["_fflush"]; if (fflush) fflush(0); var printChar = ___syscall146.printChar; if (!printChar) return; var buffers = ___syscall146.buffers; if (buffers[1].length) printChar(1, 10); if (buffers[2].length) printChar(2, 10); }function ___syscall146(which, varargs) {SYSCALLS.varargs = varargs; try { // writev // hack to support printf in NO_FILESYSTEM var stream = SYSCALLS.get(), iov = SYSCALLS.get(), iovcnt = SYSCALLS.get(); var ret = 0; if (!___syscall146.buffers) { ___syscall146.buffers = [null, [], []]; // 1 => stdout, 2 => stderr ___syscall146.printChar = function(stream, curr) { var buffer = ___syscall146.buffers[stream]; assert(buffer); if (curr === 0 || curr === 10) { (stream === 1 ? Module['print'] : Module['printErr'])(UTF8ArrayToString(buffer, 0)); buffer.length = 0; } else { buffer.push(curr); } }; } for (var i = 0; i < iovcnt; i++) { var ptr = HEAP32[(((iov)+(i*8))>>2)]; var len = HEAP32[(((iov)+(i*8 + 4))>>2)]; for (var j = 0; j < len; j++) { ___syscall146.printChar(stream, HEAPU8[ptr+j]); } ret += len; } return ret; } catch (e) { if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); return -e.errno; } } function ___syscall54(which, varargs) {SYSCALLS.varargs = varargs; try { // ioctl return 0; } catch (e) { if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); return -e.errno; } } function ___syscall6(which, varargs) {SYSCALLS.varargs = varargs; try { // close var stream = SYSCALLS.getStreamFromFD(); FS.close(stream); return 0; } catch (e) { if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); return -e.errno; } } var cttz_i8 = allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0], "i8", ALLOC_STATIC); function ___unlock() {} function _abort() { Module['abort'](); } var _llvm_ctlz_i32=true; var _llvm_pow_f64=Math_pow; function _llvm_stackrestore(p) { var self = _llvm_stacksave; var ret = self.LLVM_SAVEDSTACKS[p]; self.LLVM_SAVEDSTACKS.splice(p, 1); stackRestore(ret); } function _llvm_stacksave() { var self = _llvm_stacksave; if (!self.LLVM_SAVEDSTACKS) { self.LLVM_SAVEDSTACKS = []; } self.LLVM_SAVEDSTACKS.push(stackSave()); return self.LLVM_SAVEDSTACKS.length-1; } function _emscripten_memcpy_big(dest, src, num) { HEAPU8.set(HEAPU8.subarray(src, src+num), dest); return dest; } function ___setErrNo(value) { if (Module['___errno_location']) HEAP32[((Module['___errno_location']())>>2)]=value; else Module.printErr('failed to set errno from JS'); return value; } function _CELT_INNER_PROD_IMPL() { Module['printErr']('missing function: CELT_INNER_PROD_IMPL'); abort(-1); } function _COMB_FILTER_CONST_IMPL() { Module['printErr']('missing function: COMB_FILTER_CONST_IMPL'); abort(-1); } function _DUAL_INNER_PROD_IMPL() { Module['printErr']('missing function: DUAL_INNER_PROD_IMPL'); abort(-1); } function _OP_PVQ_SEARCH_IMPL() { Module['printErr']('missing function: OP_PVQ_SEARCH_IMPL'); abort(-1); } function _XCORR_KERNEL_IMPL() { Module['printErr']('missing function: XCORR_KERNEL_IMPL'); abort(-1); } DYNAMICTOP_PTR = staticAlloc(4); STACK_BASE = STACKTOP = alignMemory(STATICTOP); STACK_MAX = STACK_BASE + TOTAL_STACK; DYNAMIC_BASE = alignMemory(STACK_MAX); HEAP32[DYNAMICTOP_PTR>>2] = DYNAMIC_BASE; staticSealed = true; // seal the static portion of memory assert(DYNAMIC_BASE < TOTAL_MEMORY, "TOTAL_MEMORY not big enough for stack"); var ASSERTIONS = true; /** @type {function(string, boolean=, number=)} */ function intArrayFromString(stringy, dontAddNull, length) { var len = length > 0 ? length : lengthBytesUTF8(stringy)+1; var u8array = new Array(len); var numBytesWritten = stringToUTF8Array(stringy, u8array, 0, u8array.length); if (dontAddNull) u8array.length = numBytesWritten; return u8array; } function intArrayToString(array) { var ret = []; for (var i = 0; i < array.length; i++) { var chr = array[i]; if (chr > 0xFF) { if (ASSERTIONS) { assert(false, 'Character code ' + chr + ' (' + String.fromCharCode(chr) + ') at offset ' + i + ' not in 0x00-0xFF.'); } chr &= 0xFF; } ret.push(String.fromCharCode(chr)); } return ret.join(''); } // Copied from https://github.com/strophe/strophejs/blob/e06d027/src/polyfills.js#L149 // This code was written by Tyler Akins and has been placed in the // public domain. It would be nice if you left this header intact. // Base64 code from Tyler Akins -- http://rumkin.com /** * Decodes a base64 string. * @param {String} input The string to decode. */ var decodeBase64 = typeof atob === 'function' ? atob : function (input) { var keyStr = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/='; var output = ''; var chr1, chr2, chr3; var enc1, enc2, enc3, enc4; var i = 0; // remove all characters that are not A-Z, a-z, 0-9, +, /, or = input = input.replace(/[^A-Za-z0-9\+\/\=]/g, ''); do { enc1 = keyStr.indexOf(input.charAt(i++)); enc2 = keyStr.indexOf(input.charAt(i++)); enc3 = keyStr.indexOf(input.charAt(i++)); enc4 = keyStr.indexOf(input.charAt(i++)); chr1 = (enc1 << 2) | (enc2 >> 4); chr2 = ((enc2 & 15) << 4) | (enc3 >> 2); chr3 = ((enc3 & 3) << 6) | enc4; output = output + String.fromCharCode(chr1); if (enc3 !== 64) { output = output + String.fromCharCode(chr2); } if (enc4 !== 64) { output = output + String.fromCharCode(chr3); } } while (i < input.length); return output; }; // Converts a string of base64 into a byte array. // Throws error on invalid input. function intArrayFromBase64(s) { if (typeof ENVIRONMENT_IS_NODE === 'boolean' && ENVIRONMENT_IS_NODE) { var buf; try { buf = Buffer.from(s, 'base64'); } catch (_) { buf = new Buffer(s, 'base64'); } return new Uint8Array(buf.buffer, buf.byteOffset, buf.byteLength); } try { var decoded = decodeBase64(s); var bytes = new Uint8Array(decoded.length); for (var i = 0 ; i < decoded.length ; ++i) { bytes[i] = decoded.charCodeAt(i); } return bytes; } catch (_) { throw new Error('Converting base64 string to bytes failed.'); } } // If filename is a base64 data URI, parses and returns data (Buffer on node, // Uint8Array otherwise). If filename is not a base64 data URI, returns undefined. function tryParseAsDataURI(filename) { if (!isDataURI(filename)) { return; } return intArrayFromBase64(filename.slice(dataURIPrefix.length)); } var debug_table_diii = ["0"]; var debug_table_diiiii = ["0"]; var debug_table_ii = ["0", "0", "0", "___stdio_close", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "__ZNKSt9bad_alloc4whatEv", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"]; var debug_table_iii = ["0", "_silk_VAD_GetSA_Q8_c", "_silk_VAD_GetSA_Q8_sse4_1", "0"]; var debug_table_iiii = ["0", "0", "0", "0", "___stdout_write", "___stdio_seek", "0", "0", "0", "0", "__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "___stdio_write", "0", "0", "0", "0", "0", "0", "0", "0", "0"]; var debug_table_v = ["0"]; var debug_table_vi = ["0", "0", "0", "0", "0", "0", "__ZN10__cxxabiv116__shim_type_infoD2Ev", "__ZN10__cxxabiv117__class_type_infoD0Ev", "__ZNK10__cxxabiv116__shim_type_info5noop1Ev", "__ZNK10__cxxabiv116__shim_type_info5noop2Ev", "0", "0", "0", "0", "__ZN10__cxxabiv120__si_class_type_infoD0Ev", "0", "0", "0", "__ZNSt9bad_allocD2Ev", "__ZNSt9bad_allocD0Ev", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"]; var debug_table_viiii = ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi", "0", "0", "0", "__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"]; var debug_table_viiiiddd = ["0"]; var debug_table_viiiii = ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib", "0", "0", "0", "__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"]; var debug_table_viiiiii = ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "__ZNK10__cxxabiv117__class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib", "0", "0", "0", "__ZNK10__cxxabiv120__si_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib"]; var debug_table_viiiiiii = ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "_downmix_float", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"]; function nullFunc_diii(x) { Module["printErr"]("Invalid function pointer '" + x + "' called with signature 'diii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)"); Module["printErr"]("This pointer might make sense in another type signature: diiiii: " + debug_table_diiiii[x] + " iii: " + debug_table_iii[x] + " ii: " + debug_table_ii[x] + " iiii: " + debug_table_iiii[x] + " vi: " + debug_table_vi[x] + " viiii: " + debug_table_viiii[x] + " viiiii: " + debug_table_viiiii[x] + " v: " + debug_table_v[x] + " viiiiii: " + debug_table_viiiiii[x] + " viiiiddd: " + debug_table_viiiiddd[x] + " viiiiiii: " + debug_table_viiiiiii[x] + " "); abort(x) } function nullFunc_diiiii(x) { Module["printErr"]("Invalid function pointer '" + x + "' called with signature 'diiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)"); Module["printErr"]("This pointer might make sense in another type signature: diii: " + debug_table_diii[x] + " iiii: " + debug_table_iiii[x] + " iii: " + debug_table_iii[x] + " ii: " + debug_table_ii[x] + " viiii: " + debug_table_viiii[x] + " viiiii: " + debug_table_viiiii[x] + " vi: " + debug_table_vi[x] + " viiiiii: " + debug_table_viiiiii[x] + " viiiiiii: " + debug_table_viiiiiii[x] + " viiiiddd: " + debug_table_viiiiddd[x] + " v: " + debug_table_v[x] + " "); abort(x) } function nullFunc_ii(x) { Module["printErr"]("Invalid function pointer '" + x + "' called with signature 'ii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)"); Module["printErr"]("This pointer might make sense in another type signature: iii: " + debug_table_iii[x] + " iiii: " + debug_table_iiii[x] + " vi: " + debug_table_vi[x] + " diii: " + debug_table_diii[x] + " v: " + debug_table_v[x] + " viiii: " + debug_table_viiii[x] + " diiiii: " + debug_table_diiiii[x] + " viiiii: " + debug_table_viiiii[x] + " viiiiii: " + debug_table_viiiiii[x] + " viiiiddd: " + debug_table_viiiiddd[x] + " viiiiiii: " + debug_table_viiiiiii[x] + " "); abort(x) } function nullFunc_iii(x) { Module["printErr"]("Invalid function pointer '" + x + "' called with signature 'iii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)"); Module["printErr"]("This pointer might make sense in another type signature: ii: " + debug_table_ii[x] + " iiii: " + debug_table_iiii[x] + " diii: " + debug_table_diii[x] + " vi: " + debug_table_vi[x] + " viiii: " + debug_table_viiii[x] + " diiiii: " + debug_table_diiiii[x] + " viiiii: " + debug_table_viiiii[x] + " v: " + debug_table_v[x] + " viiiiii: " + debug_table_viiiiii[x] + " viiiiddd: " + debug_table_viiiiddd[x] + " viiiiiii: " + debug_table_viiiiiii[x] + " "); abort(x) } function nullFunc_iiii(x) { Module["printErr"]("Invalid function pointer '" + x + "' called with signature 'iiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)"); Module["printErr"]("This pointer might make sense in another type signature: iii: " + debug_table_iii[x] + " ii: " + debug_table_ii[x] + " diii: " + debug_table_diii[x] + " viiii: " + debug_table_viiii[x] + " vi: " + debug_table_vi[x] + " diiiii: " + debug_table_diiiii[x] + " viiiii: " + debug_table_viiiii[x] + " viiiiii: " + debug_table_viiiiii[x] + " v: " + debug_table_v[x] + " viiiiddd: " + debug_table_viiiiddd[x] + " viiiiiii: " + debug_table_viiiiiii[x] + " "); abort(x) } function nullFunc_v(x) { Module["printErr"]("Invalid function pointer '" + x + "' called with signature 'v'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)"); Module["printErr"]("This pointer might make sense in another type signature: vi: " + debug_table_vi[x] + " viiii: " + debug_table_viiii[x] + " viiiii: " + debug_table_viiiii[x] + " viiiiii: " + debug_table_viiiiii[x] + " viiiiddd: " + debug_table_viiiiddd[x] + " viiiiiii: " + debug_table_viiiiiii[x] + " ii: " + debug_table_ii[x] + " iii: " + debug_table_iii[x] + " diii: " + debug_table_diii[x] + " iiii: " + debug_table_iiii[x] + " diiiii: " + debug_table_diiiii[x] + " "); abort(x) } function nullFunc_vi(x) { Module["printErr"]("Invalid function pointer '" + x + "' called with signature 'vi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)"); Module["printErr"]("This pointer might make sense in another type signature: v: " + debug_table_v[x] + " viiii: " + debug_table_viiii[x] + " viiiii: " + debug_table_viiiii[x] + " viiiiii: " + debug_table_viiiiii[x] + " viiiiddd: " + debug_table_viiiiddd[x] + " viiiiiii: " + debug_table_viiiiiii[x] + " ii: " + debug_table_ii[x] + " iii: " + debug_table_iii[x] + " diii: " + debug_table_diii[x] + " iiii: " + debug_table_iiii[x] + " diiiii: " + debug_table_diiiii[x] + " "); abort(x) } function nullFunc_viiii(x) { Module["printErr"]("Invalid function pointer '" + x + "' called with signature 'viiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)"); Module["printErr"]("This pointer might make sense in another type signature: vi: " + debug_table_vi[x] + " viiiii: " + debug_table_viiiii[x] + " viiiiii: " + debug_table_viiiiii[x] + " v: " + debug_table_v[x] + " viiiiddd: " + debug_table_viiiiddd[x] + " viiiiiii: " + debug_table_viiiiiii[x] + " iiii: " + debug_table_iiii[x] + " iii: " + debug_table_iii[x] + " ii: " + debug_table_ii[x] + " diii: " + debug_table_diii[x] + " diiiii: " + debug_table_diiiii[x] + " "); abort(x) } function nullFunc_viiiiddd(x) { Module["printErr"]("Invalid function pointer '" + x + "' called with signature 'viiiiddd'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)"); Module["printErr"]("This pointer might make sense in another type signature: viiii: " + debug_table_viiii[x] + " vi: " + debug_table_vi[x] + " v: " + debug_table_v[x] + " iiii: " + debug_table_iiii[x] + " iii: " + debug_table_iii[x] + " diii: " + debug_table_diii[x] + " viiiii: " + debug_table_viiiii[x] + " ii: " + debug_table_ii[x] + " diiiii: " + debug_table_diiiii[x] + " viiiiii: " + debug_table_viiiiii[x] + " viiiiiii: " + debug_table_viiiiiii[x] + " "); abort(x) } function nullFunc_viiiii(x) { Module["printErr"]("Invalid function pointer '" + x + "' called with signature 'viiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)"); Module["printErr"]("This pointer might make sense in another type signature: viiii: " + debug_table_viiii[x] + " vi: " + debug_table_vi[x] + " viiiiii: " + debug_table_viiiiii[x] + " viiiiiii: " + debug_table_viiiiiii[x] + " v: " + debug_table_v[x] + " iiii: " + debug_table_iiii[x] + " iii: " + debug_table_iii[x] + " ii: " + debug_table_ii[x] + " diii: " + debug_table_diii[x] + " diiiii: " + debug_table_diiiii[x] + " viiiiddd: " + debug_table_viiiiddd[x] + " "); abort(x) } function nullFunc_viiiiii(x) { Module["printErr"]("Invalid function pointer '" + x + "' called with signature 'viiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)"); Module["printErr"]("This pointer might make sense in another type signature: viiii: " + debug_table_viiii[x] + " viiiii: " + debug_table_viiiii[x] + " vi: " + debug_table_vi[x] + " viiiiiii: " + debug_table_viiiiiii[x] + " v: " + debug_table_v[x] + " iiii: " + debug_table_iiii[x] + " iii: " + debug_table_iii[x] + " diii: " + debug_table_diii[x] + " ii: " + debug_table_ii[x] + " diiiii: " + debug_table_diiiii[x] + " viiiiddd: " + debug_table_viiiiddd[x] + " "); abort(x) } function nullFunc_viiiiiii(x) { Module["printErr"]("Invalid function pointer '" + x + "' called with signature 'viiiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)"); Module["printErr"]("This pointer might make sense in another type signature: viiii: " + debug_table_viiii[x] + " viiiii: " + debug_table_viiiii[x] + " viiiiii: " + debug_table_viiiiii[x] + " vi: " + debug_table_vi[x] + " v: " + debug_table_v[x] + " iiii: " + debug_table_iiii[x] + " iii: " + debug_table_iii[x] + " diii: " + debug_table_diii[x] + " diiiii: " + debug_table_diiiii[x] + " ii: " + debug_table_ii[x] + " viiiiddd: " + debug_table_viiiiddd[x] + " "); abort(x) } function invoke_diii(index,a1,a2,a3) { try { return Module["dynCall_diii"](index,a1,a2,a3); } catch(e) { if (typeof e !== 'number' && e !== 'longjmp') throw e; Module["setThrew"](1, 0); } } function invoke_diiiii(index,a1,a2,a3,a4,a5) { try { return Module["dynCall_diiiii"](index,a1,a2,a3,a4,a5); } catch(e) { if (typeof e !== 'number' && e !== 'longjmp') throw e; Module["setThrew"](1, 0); } } function invoke_ii(index,a1) { try { return Module["dynCall_ii"](index,a1); } catch(e) { if (typeof e !== 'number' && e !== 'longjmp') throw e; Module["setThrew"](1, 0); } } function invoke_iii(index,a1,a2) { try { return Module["dynCall_iii"](index,a1,a2); } catch(e) { if (typeof e !== 'number' && e !== 'longjmp') throw e; Module["setThrew"](1, 0); } } function invoke_iiii(index,a1,a2,a3) { try { return Module["dynCall_iiii"](index,a1,a2,a3); } catch(e) { if (typeof e !== 'number' && e !== 'longjmp') throw e; Module["setThrew"](1, 0); } } function invoke_v(index) { try { Module["dynCall_v"](index); } catch(e) { if (typeof e !== 'number' && e !== 'longjmp') throw e; Module["setThrew"](1, 0); } } function invoke_vi(index,a1) { try { Module["dynCall_vi"](index,a1); } catch(e) { if (typeof e !== 'number' && e !== 'longjmp') throw e; Module["setThrew"](1, 0); } } function invoke_viiii(index,a1,a2,a3,a4) { try { Module["dynCall_viiii"](index,a1,a2,a3,a4); } catch(e) { if (typeof e !== 'number' && e !== 'longjmp') throw e; Module["setThrew"](1, 0); } } function invoke_viiiiddd(index,a1,a2,a3,a4,a5,a6,a7) { try { Module["dynCall_viiiiddd"](index,a1,a2,a3,a4,a5,a6,a7); } catch(e) { if (typeof e !== 'number' && e !== 'longjmp') throw e; Module["setThrew"](1, 0); } } function invoke_viiiii(index,a1,a2,a3,a4,a5) { try { Module["dynCall_viiiii"](index,a1,a2,a3,a4,a5); } catch(e) { if (typeof e !== 'number' && e !== 'longjmp') throw e; Module["setThrew"](1, 0); } } function invoke_viiiiii(index,a1,a2,a3,a4,a5,a6) { try { Module["dynCall_viiiiii"](index,a1,a2,a3,a4,a5,a6); } catch(e) { if (typeof e !== 'number' && e !== 'longjmp') throw e; Module["setThrew"](1, 0); } } function invoke_viiiiiii(index,a1,a2,a3,a4,a5,a6,a7) { try { Module["dynCall_viiiiiii"](index,a1,a2,a3,a4,a5,a6,a7); } catch(e) { if (typeof e !== 'number' && e !== 'longjmp') throw e; Module["setThrew"](1, 0); } } Module.asmGlobalArg = { "Math": Math, "Int8Array": Int8Array, "Int16Array": Int16Array, "Int32Array": Int32Array, "Uint8Array": Uint8Array, "Uint16Array": Uint16Array, "Uint32Array": Uint32Array, "Float32Array": Float32Array, "Float64Array": Float64Array, "NaN": NaN, "Infinity": Infinity, "SIMD": SIMD }; Module.asmLibraryArg = { "abort": abort, "assert": assert, "enlargeMemory": enlargeMemory, "getTotalMemory": getTotalMemory, "abortOnCannotGrowMemory": abortOnCannotGrowMemory, "abortStackOverflow": abortStackOverflow, "nullFunc_diii": nullFunc_diii, "nullFunc_diiiii": nullFunc_diiiii, "nullFunc_ii": nullFunc_ii, "nullFunc_iii": nullFunc_iii, "nullFunc_iiii": nullFunc_iiii, "nullFunc_v": nullFunc_v, "nullFunc_vi": nullFunc_vi, "nullFunc_viiii": nullFunc_viiii, "nullFunc_viiiiddd": nullFunc_viiiiddd, "nullFunc_viiiii": nullFunc_viiiii, "nullFunc_viiiiii": nullFunc_viiiiii, "nullFunc_viiiiiii": nullFunc_viiiiiii, "invoke_diii": invoke_diii, "invoke_diiiii": invoke_diiiii, "invoke_ii": invoke_ii, "invoke_iii": invoke_iii, "invoke_iiii": invoke_iiii, "invoke_v": invoke_v, "invoke_vi": invoke_vi, "invoke_viiii": invoke_viiii, "invoke_viiiiddd": invoke_viiiiddd, "invoke_viiiii": invoke_viiiii, "invoke_viiiiii": invoke_viiiiii, "invoke_viiiiiii": invoke_viiiiiii, "__ZSt18uncaught_exceptionv": __ZSt18uncaught_exceptionv, "___cxa_allocate_exception": ___cxa_allocate_exception, "___cxa_find_matching_catch": ___cxa_find_matching_catch, "___cxa_throw": ___cxa_throw, "___gxx_personality_v0": ___gxx_personality_v0, "___lock": ___lock, "___resumeException": ___resumeException, "___setErrNo": ___setErrNo, "___syscall140": ___syscall140, "___syscall146": ___syscall146, "___syscall54": ___syscall54, "___syscall6": ___syscall6, "___unlock": ___unlock, "_abort": _abort, "_emscripten_memcpy_big": _emscripten_memcpy_big, "_llvm_pow_f64": _llvm_pow_f64, "_llvm_stackrestore": _llvm_stackrestore, "_llvm_stacksave": _llvm_stacksave, "flush_NO_FILESYSTEM": flush_NO_FILESYSTEM, "DYNAMICTOP_PTR": DYNAMICTOP_PTR, "tempDoublePtr": tempDoublePtr, "ABORT": ABORT, "STACKTOP": STACKTOP, "STACK_MAX": STACK_MAX, "cttz_i8": cttz_i8, "_CELT_INNER_PROD_IMPL": _CELT_INNER_PROD_IMPL, "_COMB_FILTER_CONST_IMPL": _COMB_FILTER_CONST_IMPL, "_DUAL_INNER_PROD_IMPL": _DUAL_INNER_PROD_IMPL, "_OP_PVQ_SEARCH_IMPL": _OP_PVQ_SEARCH_IMPL, "_XCORR_KERNEL_IMPL": _XCORR_KERNEL_IMPL }; // EMSCRIPTEN_START_ASM var asm = (/** @suppress {uselessCode} */ function(global, env, buffer) { 'almost asm'; var HEAP8 = new global.Int8Array(buffer); var HEAP16 = new global.Int16Array(buffer); var HEAP32 = new global.Int32Array(buffer); var HEAPU8 = new global.Uint8Array(buffer); var HEAPU16 = new global.Uint16Array(buffer); var HEAPU32 = new global.Uint32Array(buffer); var HEAPF32 = new global.Float32Array(buffer); var HEAPF64 = new global.Float64Array(buffer); var DYNAMICTOP_PTR=env.DYNAMICTOP_PTR|0; var tempDoublePtr=env.tempDoublePtr|0; var ABORT=env.ABORT|0; var STACKTOP=env.STACKTOP|0; var STACK_MAX=env.STACK_MAX|0; var cttz_i8=env.cttz_i8|0; var _CELT_INNER_PROD_IMPL=env._CELT_INNER_PROD_IMPL|0; var _COMB_FILTER_CONST_IMPL=env._COMB_FILTER_CONST_IMPL|0; var _DUAL_INNER_PROD_IMPL=env._DUAL_INNER_PROD_IMPL|0; var _OP_PVQ_SEARCH_IMPL=env._OP_PVQ_SEARCH_IMPL|0; var _XCORR_KERNEL_IMPL=env._XCORR_KERNEL_IMPL|0; var __THREW__ = 0; var threwValue = 0; var setjmpId = 0; var undef = 0; var nan = global.NaN, inf = global.Infinity; var tempInt = 0, tempBigInt = 0, tempBigIntS = 0, tempValue = 0, tempDouble = 0.0; var tempRet0 = 0; var Math_floor=global.Math.floor; var Math_abs=global.Math.abs; var Math_sqrt=global.Math.sqrt; var Math_pow=global.Math.pow; var Math_cos=global.Math.cos; var Math_sin=global.Math.sin; var Math_tan=global.Math.tan; var Math_acos=global.Math.acos; var Math_asin=global.Math.asin; var Math_atan=global.Math.atan; var Math_atan2=global.Math.atan2; var Math_exp=global.Math.exp; var Math_log=global.Math.log; var Math_ceil=global.Math.ceil; var Math_imul=global.Math.imul; var Math_min=global.Math.min; var Math_max=global.Math.max; var Math_clz32=global.Math.clz32; var Math_fround=global.Math.fround; var abort=env.abort; var assert=env.assert; var enlargeMemory=env.enlargeMemory; var getTotalMemory=env.getTotalMemory; var abortOnCannotGrowMemory=env.abortOnCannotGrowMemory; var abortStackOverflow=env.abortStackOverflow; var nullFunc_diii=env.nullFunc_diii; var nullFunc_diiiii=env.nullFunc_diiiii; var nullFunc_ii=env.nullFunc_ii; var nullFunc_iii=env.nullFunc_iii; var nullFunc_iiii=env.nullFunc_iiii; var nullFunc_v=env.nullFunc_v; var nullFunc_vi=env.nullFunc_vi; var nullFunc_viiii=env.nullFunc_viiii; var nullFunc_viiiiddd=env.nullFunc_viiiiddd; var nullFunc_viiiii=env.nullFunc_viiiii; var nullFunc_viiiiii=env.nullFunc_viiiiii; var nullFunc_viiiiiii=env.nullFunc_viiiiiii; var invoke_diii=env.invoke_diii; var invoke_diiiii=env.invoke_diiiii; var invoke_ii=env.invoke_ii; var invoke_iii=env.invoke_iii; var invoke_iiii=env.invoke_iiii; var invoke_v=env.invoke_v; var invoke_vi=env.invoke_vi; var invoke_viiii=env.invoke_viiii; var invoke_viiiiddd=env.invoke_viiiiddd; var invoke_viiiii=env.invoke_viiiii; var invoke_viiiiii=env.invoke_viiiiii; var invoke_viiiiiii=env.invoke_viiiiiii; var __ZSt18uncaught_exceptionv=env.__ZSt18uncaught_exceptionv; var ___cxa_allocate_exception=env.___cxa_allocate_exception; var ___cxa_find_matching_catch=env.___cxa_find_matching_catch; var ___cxa_throw=env.___cxa_throw; var ___gxx_personality_v0=env.___gxx_personality_v0; var ___lock=env.___lock; var ___resumeException=env.___resumeException; var ___setErrNo=env.___setErrNo; var ___syscall140=env.___syscall140; var ___syscall146=env.___syscall146; var ___syscall54=env.___syscall54; var ___syscall6=env.___syscall6; var ___unlock=env.___unlock; var _abort=env._abort; var _emscripten_memcpy_big=env._emscripten_memcpy_big; var _llvm_pow_f64=env._llvm_pow_f64; var _llvm_stackrestore=env._llvm_stackrestore; var _llvm_stacksave=env._llvm_stacksave; var flush_NO_FILESYSTEM=env.flush_NO_FILESYSTEM; var SIMD_Int16x8=global.SIMD.Int16x8; var SIMD_Int32x4=global.SIMD.Int32x4; var SIMD_Int16x8_splat=SIMD_Int16x8.splat; var SIMD_Int16x8_check=SIMD_Int16x8.check; var SIMD_Int16x8_extractLane=SIMD_Int16x8.extractLane; var SIMD_Int16x8_replaceLane=SIMD_Int16x8.replaceLane; var SIMD_Int16x8_add=SIMD_Int16x8.add; var SIMD_Int16x8_sub=SIMD_Int16x8.sub; var SIMD_Int16x8_neg=SIMD_Int16x8.neg; var SIMD_Int16x8_mul=SIMD_Int16x8.mul; var SIMD_Int16x8_equal=SIMD_Int16x8.equal; var SIMD_Int16x8_lessThan=SIMD_Int16x8.lessThan; var SIMD_Int16x8_greaterThan=SIMD_Int16x8.greaterThan; var SIMD_Int16x8_notEqual=SIMD_Int16x8.notEqual; var SIMD_Int16x8_lessThanOrEqual=SIMD_Int16x8.lessThanOrEqual; var SIMD_Int16x8_greaterThanOrEqual=SIMD_Int16x8.greaterThanOrEqual; var SIMD_Int16x8_select=SIMD_Int16x8.select; var SIMD_Int16x8_swizzle=SIMD_Int16x8.swizzle; var SIMD_Int16x8_shuffle=SIMD_Int16x8.shuffle; var SIMD_Int16x8_load=SIMD_Int16x8.load; var SIMD_Int16x8_store=SIMD_Int16x8.store; var SIMD_Int16x8_fromInt32x4Bits=SIMD_Int16x8.fromInt32x4Bits; var SIMD_Int16x8_and=SIMD_Int16x8.and; var SIMD_Int16x8_xor=SIMD_Int16x8.xor; var SIMD_Int16x8_or=SIMD_Int16x8.or; var SIMD_Int16x8_not=SIMD_Int16x8.not; var SIMD_Int16x8_shiftLeftByScalar=SIMD_Int16x8.shiftLeftByScalar; var SIMD_Int16x8_shiftRightByScalar=SIMD_Int16x8.shiftRightByScalar; var SIMD_Int16x8_addSaturate=SIMD_Int16x8.addSaturate; var SIMD_Int16x8_subSaturate=SIMD_Int16x8.subSaturate; var SIMD_Int32x4_splat=SIMD_Int32x4.splat; var SIMD_Int32x4_check=SIMD_Int32x4.check; var SIMD_Int32x4_extractLane=SIMD_Int32x4.extractLane; var SIMD_Int32x4_replaceLane=SIMD_Int32x4.replaceLane; var SIMD_Int32x4_add=SIMD_Int32x4.add; var SIMD_Int32x4_sub=SIMD_Int32x4.sub; var SIMD_Int32x4_neg=SIMD_Int32x4.neg; var SIMD_Int32x4_mul=SIMD_Int32x4.mul; var SIMD_Int32x4_equal=SIMD_Int32x4.equal; var SIMD_Int32x4_lessThan=SIMD_Int32x4.lessThan; var SIMD_Int32x4_greaterThan=SIMD_Int32x4.greaterThan; var SIMD_Int32x4_notEqual=SIMD_Int32x4.notEqual; var SIMD_Int32x4_lessThanOrEqual=SIMD_Int32x4.lessThanOrEqual; var SIMD_Int32x4_greaterThanOrEqual=SIMD_Int32x4.greaterThanOrEqual; var SIMD_Int32x4_select=SIMD_Int32x4.select; var SIMD_Int32x4_swizzle=SIMD_Int32x4.swizzle; var SIMD_Int32x4_shuffle=SIMD_Int32x4.shuffle; var SIMD_Int32x4_load=SIMD_Int32x4.load; var SIMD_Int32x4_store=SIMD_Int32x4.store; var SIMD_Int32x4_load1=SIMD_Int32x4.load1; var SIMD_Int32x4_store1=SIMD_Int32x4.store1; var SIMD_Int32x4_load2=SIMD_Int32x4.load2; var SIMD_Int32x4_store2=SIMD_Int32x4.store2; var SIMD_Int32x4_fromInt16x8Bits=SIMD_Int32x4.fromInt16x8Bits; var SIMD_Int32x4_and=SIMD_Int32x4.and; var SIMD_Int32x4_xor=SIMD_Int32x4.xor; var SIMD_Int32x4_or=SIMD_Int32x4.or; var SIMD_Int32x4_not=SIMD_Int32x4.not; var SIMD_Int32x4_shiftLeftByScalar=SIMD_Int32x4.shiftLeftByScalar; var SIMD_Int32x4_shiftRightByScalar=SIMD_Int32x4.shiftRightByScalar; var tempFloat = Math_fround(0); const f0 = Math_fround(0); // EMSCRIPTEN_START_FUNCS function stackAlloc(size) { size = size|0; var ret = 0; ret = STACKTOP; STACKTOP = (STACKTOP + size)|0; STACKTOP = (STACKTOP + 15)&-16; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(size|0); return ret|0; } function stackSave() { return STACKTOP|0; } function stackRestore(top) { top = top|0; STACKTOP = top; } function establishStackSpace(stackBase, stackMax) { stackBase = stackBase|0; stackMax = stackMax|0; STACKTOP = stackBase; STACK_MAX = stackMax; } function setThrew(threw, value) { threw = threw|0; value = value|0; if ((__THREW__|0) == 0) { __THREW__ = threw; threwValue = value; } } function setTempRet0(value) { value = value|0; tempRet0 = value; } function getTempRet0() { return tempRet0|0; } function _codec_opus_createNativeHandle($channelCount) { $channelCount = $channelCount|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $call1 = 0, $call2 = 0, $call3 = 0, $channelCount$addr = 0, $codec = 0, $decoder = 0, $vararg_buffer = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $vararg_buffer = sp; $channelCount$addr = $channelCount; $0 = $channelCount$addr; HEAP32[$vararg_buffer>>2] = $0; (_printf(25898,$vararg_buffer)|0); $call1 = (__Znwj(12)|0); __ZN10OpusHandleC2Ev($call1); $codec = $call1; $1 = $channelCount$addr; $call2 = (_opus_decoder_create(48000,$1,0)|0); $2 = $codec; $decoder = ((($2)) + 4|0); HEAP32[$decoder>>2] = $call2; $3 = $channelCount$addr; $call3 = (_opus_encoder_create(48000,$3,2049,0)|0); $4 = $codec; HEAP32[$4>>2] = $call3; $5 = $codec; STACKTOP = sp;return ($5|0); } function __ZN10OpusHandleC2Ev($this) { $this = $this|0; var $channelCount = 0, $decoder = 0, $this$addr = 0, $this1 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $this$addr = $this; $this1 = $this$addr; HEAP32[$this1>>2] = 0; $decoder = ((($this1)) + 4|0); HEAP32[$decoder>>2] = 0; $channelCount = ((($this1)) + 8|0); HEAP32[$channelCount>>2] = 1; STACKTOP = sp;return; } function _codec_opus_deleteNativeHandle($codec) { $codec = $codec|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $codec$addr = 0, $decoder = 0, $decoder3 = 0, $decoder5 = 0, $isnull = 0, $tobool = 0, $tobool1 = 0, $tobool6 = 0; var label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $codec$addr = $codec; $0 = $codec$addr; $tobool = ($0|0)!=(0|0); if (!($tobool)) { STACKTOP = sp;return; } $1 = $codec$addr; $decoder = ((($1)) + 4|0); $2 = HEAP32[$decoder>>2]|0; $tobool1 = ($2|0)!=(0|0); if ($tobool1) { $3 = $codec$addr; $decoder3 = ((($3)) + 4|0); $4 = HEAP32[$decoder3>>2]|0; _opus_decoder_destroy($4); } $5 = $codec$addr; $decoder5 = ((($5)) + 4|0); HEAP32[$decoder5>>2] = 0; $6 = $codec$addr; $7 = HEAP32[$6>>2]|0; $tobool6 = ($7|0)!=(0|0); if ($tobool6) { $8 = $codec$addr; $9 = HEAP32[$8>>2]|0; _opus_encoder_destroy($9); } $10 = $codec$addr; HEAP32[$10>>2] = 0; $11 = $codec$addr; $isnull = ($11|0)==(0|0); if ($isnull) { STACKTOP = sp;return; } __ZdlPv($11); STACKTOP = sp;return; } function _codec_opus_encode($handle,$buffer,$length,$maxLength) { $handle = $handle|0; $buffer = $buffer|0; $length = $length|0; $maxLength = $maxLength|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $bbuffer = 0, $buffer$addr = 0, $call3 = 0, $handle$addr = 0, $length$addr = 0, $maxLength$addr = 0, $rbuffer = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 4000|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(4000|0); $vararg_buffer = sp; $bbuffer = sp + 16|0; $rbuffer = sp + 3872|0; $handle$addr = $handle; $buffer$addr = $buffer; $length$addr = $length; $maxLength$addr = $maxLength; $0 = $handle$addr; $1 = HEAP32[$0>>2]|0; $2 = $buffer$addr; $3 = $length$addr; $4 = $maxLength$addr; HEAP32[$vararg_buffer>>2] = $1; $vararg_ptr1 = ((($vararg_buffer)) + 4|0); HEAP32[$vararg_ptr1>>2] = $2; $vararg_ptr2 = ((($vararg_buffer)) + 8|0); HEAP32[$vararg_ptr2>>2] = $3; $vararg_ptr3 = ((($vararg_buffer)) + 12|0); HEAP32[$vararg_ptr3>>2] = $4; (_printf(25918,$vararg_buffer)|0); $5 = $handle$addr; $6 = HEAP32[$5>>2]|0; $call3 = (_opus_encode_float($6,$bbuffer,960,$rbuffer,120)|0); STACKTOP = sp;return ($call3|0); } function _codec_opus_decode($handle,$buffer,$length,$maxLength) { $handle = $handle|0; $buffer = $buffer|0; $length = $length|0; $maxLength = $maxLength|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $buffer$addr = 0, $call = 0, $channelCount = 0, $decoder = 0, $div = 0, $div1 = 0, $handle$addr = 0, $length$addr = 0, $maxLength$addr = 0, $result = 0; var $retval = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $handle$addr = $handle; $buffer$addr = $buffer; $length$addr = $length; $maxLength$addr = $maxLength; $0 = $handle$addr; $decoder = ((($0)) + 4|0); $1 = HEAP32[$decoder>>2]|0; $2 = $buffer$addr; $3 = $length$addr; $4 = $buffer$addr; $5 = $maxLength$addr; $div = (($5>>>0) / 4)&-1; $6 = $handle$addr; $channelCount = ((($6)) + 8|0); $7 = HEAP32[$channelCount>>2]|0; $div1 = (($div>>>0) / ($7>>>0))&-1; $call = (_opus_decode_float($1,$2,$3,$4,$div1,0)|0); $result = $call; $8 = $result; $retval = $8; $9 = $retval; STACKTOP = sp;return ($9|0); } function _codec_opus_changeApplication($handle,$type) { $handle = $handle|0; $type = $type|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $call = 0, $cmp = 0, $cmp1 = 0, $cmp3 = 0, $handle$addr = 0, $or$cond = 0, $or$cond1 = 0, $retval = 0, $type$addr = 0, $vararg_buffer = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $vararg_buffer = sp; $handle$addr = $handle; $type$addr = $type; $0 = $type$addr; $cmp = ($0|0)!=(2048); $1 = $type$addr; $cmp1 = ($1|0)!=(2049); $or$cond = $cmp & $cmp1; $2 = $type$addr; $cmp3 = ($2|0)!=(2051); $or$cond1 = $or$cond & $cmp3; if ($or$cond1) { $retval = 1; $6 = $retval; STACKTOP = sp;return ($6|0); } else { $3 = $handle$addr; $4 = HEAP32[$3>>2]|0; $5 = $type$addr; HEAP32[$vararg_buffer>>2] = $5; $call = (_opus_encoder_ctl($4,4000,$vararg_buffer)|0); $retval = $call; $6 = $retval; STACKTOP = sp;return ($6|0); } return (0)|0; } function _opus_decoder_get_size($channels) { $channels = $channels|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $add = 0, $add7 = 0, $call = 0, $call4 = 0, $call5 = 0, $call6 = 0, $celtDecSizeBytes = 0, $channels$addr = 0, $cmp = 0, $cmp1 = 0, $or$cond = 0, $ret = 0; var $retval = 0, $silkDecSizeBytes = 0, $tobool = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $silkDecSizeBytes = sp + 8|0; $channels$addr = $channels; $0 = $channels$addr; $cmp = ($0|0)<(1); $1 = $channels$addr; $cmp1 = ($1|0)>(2); $or$cond = $cmp | $cmp1; if ($or$cond) { $retval = 0; $7 = $retval; STACKTOP = sp;return ($7|0); } $call = (_silk_Get_Decoder_Size($silkDecSizeBytes)|0); $ret = $call; $2 = $ret; $tobool = ($2|0)!=(0); if ($tobool) { $retval = 0; $7 = $retval; STACKTOP = sp;return ($7|0); } else { $3 = HEAP32[$silkDecSizeBytes>>2]|0; $call4 = (_align($3)|0); HEAP32[$silkDecSizeBytes>>2] = $call4; $4 = $channels$addr; $call5 = (_celt_decoder_get_size($4)|0); $celtDecSizeBytes = $call5; $call6 = (_align(88)|0); $5 = HEAP32[$silkDecSizeBytes>>2]|0; $add = (($call6) + ($5))|0; $6 = $celtDecSizeBytes; $add7 = (($add) + ($6))|0; $retval = $add7; $7 = $retval; STACKTOP = sp;return ($7|0); } return (0)|0; } function _align($i) { $i = $i|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $add = 0, $alignment = 0, $div = 0, $i$addr = 0, $mul = 0, $sub = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $i$addr = $i; $alignment = 4; $0 = $i$addr; $1 = $alignment; $add = (($0) + ($1))|0; $sub = (($add) - 1)|0; $2 = $alignment; $div = (($sub>>>0) / ($2>>>0))&-1; $3 = $alignment; $mul = Math_imul($div, $3)|0; STACKTOP = sp;return ($mul|0); } function _opus_decoder_init($st,$Fs,$channels) { $st = $st|0; $Fs = $Fs|0; $channels = $channels|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $API_sampleRate = 0, $DecControl = 0, $DecControl24 = 0, $Fs$addr = 0, $Fs21 = 0, $Fs22 = 0, $add = 0, $add$ptr = 0, $add$ptr19 = 0, $arch = 0, $call = 0, $call11 = 0, $call14 = 0, $call15 = 0, $call25 = 0; var $call29 = 0, $call34 = 0, $celt_dec = 0, $channels$addr = 0, $channels20 = 0, $channels23 = 0, $cmp = 0, $cmp1 = 0, $cmp10 = 0, $cmp3 = 0, $cmp30 = 0, $cmp5 = 0, $cmp7 = 0, $cmp8 = 0, $div = 0, $frame_size = 0, $mul = 0, $or$cond = 0, $or$cond1 = 0, $or$cond2 = 0; var $or$cond3 = 0, $or$cond4 = 0, $prev_mode = 0, $ret = 0, $retval = 0, $silkDecSizeBytes = 0, $silk_dec = 0, $silk_dec_offset = 0, $silk_dec_offset16 = 0, $silk_dec_offset17 = 0, $st$addr = 0, $stream_channels = 0, $tobool = 0, $tobool26 = 0, $vararg_buffer = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $vararg_buffer = sp; $silkDecSizeBytes = sp + 4|0; $st$addr = $st; $Fs$addr = $Fs; $channels$addr = $channels; $0 = $Fs$addr; $cmp = ($0|0)!=(48000); $1 = $Fs$addr; $cmp1 = ($1|0)!=(24000); $or$cond = $cmp & $cmp1; $2 = $Fs$addr; $cmp3 = ($2|0)!=(16000); $or$cond1 = $or$cond & $cmp3; $3 = $Fs$addr; $cmp5 = ($3|0)!=(12000); $or$cond2 = $or$cond1 & $cmp5; $4 = $Fs$addr; $cmp7 = ($4|0)!=(8000); $or$cond3 = $or$cond2 & $cmp7; if (!($or$cond3)) { $5 = $channels$addr; $cmp8 = ($5|0)!=(1); $6 = $channels$addr; $cmp10 = ($6|0)!=(2); $or$cond4 = $cmp8 & $cmp10; if (!($or$cond4)) { $7 = $st$addr; $8 = $channels$addr; $call = (_opus_decoder_get_size($8)|0); $mul = $call; _memset(($7|0),0,($mul|0))|0; $call11 = (_silk_Get_Decoder_Size($silkDecSizeBytes)|0); $ret = $call11; $9 = $ret; $tobool = ($9|0)!=(0); if ($tobool) { $retval = -3; $44 = $retval; STACKTOP = sp;return ($44|0); } $10 = HEAP32[$silkDecSizeBytes>>2]|0; $call14 = (_align($10)|0); HEAP32[$silkDecSizeBytes>>2] = $call14; $call15 = (_align(88)|0); $11 = $st$addr; $silk_dec_offset = ((($11)) + 4|0); HEAP32[$silk_dec_offset>>2] = $call15; $12 = $st$addr; $silk_dec_offset16 = ((($12)) + 4|0); $13 = HEAP32[$silk_dec_offset16>>2]|0; $14 = HEAP32[$silkDecSizeBytes>>2]|0; $add = (($13) + ($14))|0; $15 = $st$addr; HEAP32[$15>>2] = $add; $16 = $st$addr; $17 = $st$addr; $silk_dec_offset17 = ((($17)) + 4|0); $18 = HEAP32[$silk_dec_offset17>>2]|0; $add$ptr = (($16) + ($18)|0); $silk_dec = $add$ptr; $19 = $st$addr; $20 = $st$addr; $21 = HEAP32[$20>>2]|0; $add$ptr19 = (($19) + ($21)|0); $celt_dec = $add$ptr19; $22 = $channels$addr; $23 = $st$addr; $channels20 = ((($23)) + 8|0); HEAP32[$channels20>>2] = $22; $24 = $st$addr; $stream_channels = ((($24)) + 48|0); HEAP32[$stream_channels>>2] = $22; $25 = $Fs$addr; $26 = $st$addr; $Fs21 = ((($26)) + 12|0); HEAP32[$Fs21>>2] = $25; $27 = $st$addr; $Fs22 = ((($27)) + 12|0); $28 = HEAP32[$Fs22>>2]|0; $29 = $st$addr; $DecControl = ((($29)) + 16|0); $API_sampleRate = ((($DecControl)) + 8|0); HEAP32[$API_sampleRate>>2] = $28; $30 = $st$addr; $channels23 = ((($30)) + 8|0); $31 = HEAP32[$channels23>>2]|0; $32 = $st$addr; $DecControl24 = ((($32)) + 16|0); HEAP32[$DecControl24>>2] = $31; $33 = $silk_dec; $call25 = (_silk_InitDecoder($33)|0); $ret = $call25; $34 = $ret; $tobool26 = ($34|0)!=(0); if ($tobool26) { $retval = -3; $44 = $retval; STACKTOP = sp;return ($44|0); } $35 = $celt_dec; $36 = $Fs$addr; $37 = $channels$addr; $call29 = (_celt_decoder_init($35,$36,$37)|0); $ret = $call29; $38 = $ret; $cmp30 = ($38|0)!=(0); if ($cmp30) { $retval = -3; $44 = $retval; STACKTOP = sp;return ($44|0); } else { $39 = $celt_dec; HEAP32[$vararg_buffer>>2] = 0; (_opus_custom_decoder_ctl($39,10016,$vararg_buffer)|0); $40 = $st$addr; $prev_mode = ((($40)) + 60|0); HEAP32[$prev_mode>>2] = 0; $41 = $Fs$addr; $div = (($41|0) / 400)&-1; $42 = $st$addr; $frame_size = ((($42)) + 64|0); HEAP32[$frame_size>>2] = $div; $call34 = (_opus_select_arch()|0); $43 = $st$addr; $arch = ((($43)) + 44|0); HEAP32[$arch>>2] = $call34; $retval = 0; $44 = $retval; STACKTOP = sp;return ($44|0); } } } $retval = -1; $44 = $retval; STACKTOP = sp;return ($44|0); } function _opus_decoder_create($Fs,$channels,$error) { $Fs = $Fs|0; $channels = $channels|0; $error = $error|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; var $7 = 0, $8 = 0, $9 = 0, $Fs$addr = 0, $call = 0, $call13 = 0, $call20 = 0, $channels$addr = 0, $cmp = 0, $cmp1 = 0, $cmp10 = 0, $cmp14 = 0, $cmp24 = 0, $cmp3 = 0, $cmp5 = 0, $cmp7 = 0, $cmp8 = 0, $error$addr = 0, $or$cond = 0, $or$cond1 = 0; var $or$cond2 = 0, $or$cond3 = 0, $or$cond4 = 0, $ret = 0, $retval = 0, $st = 0, $tobool = 0, $tobool16 = 0, $tobool21 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $Fs$addr = $Fs; $channels$addr = $channels; $error$addr = $error; $0 = $Fs$addr; $cmp = ($0|0)!=(48000); $1 = $Fs$addr; $cmp1 = ($1|0)!=(24000); $or$cond = $cmp & $cmp1; $2 = $Fs$addr; $cmp3 = ($2|0)!=(16000); $or$cond1 = $or$cond & $cmp3; $3 = $Fs$addr; $cmp5 = ($3|0)!=(12000); $or$cond2 = $or$cond1 & $cmp5; $4 = $Fs$addr; $cmp7 = ($4|0)!=(8000); $or$cond3 = $or$cond2 & $cmp7; if (!($or$cond3)) { $5 = $channels$addr; $cmp8 = ($5|0)!=(1); $6 = $channels$addr; $cmp10 = ($6|0)!=(2); $or$cond4 = $cmp8 & $cmp10; if (!($or$cond4)) { $9 = $channels$addr; $call = (_opus_decoder_get_size($9)|0); $call13 = (_opus_alloc($call)|0); $st = $call13; $10 = $st; $cmp14 = ($10|0)==(0|0); if ($cmp14) { $11 = $error$addr; $tobool16 = ($11|0)!=(0|0); if ($tobool16) { $12 = $error$addr; HEAP32[$12>>2] = -7; } $retval = 0; $22 = $retval; STACKTOP = sp;return ($22|0); } $13 = $st; $14 = $Fs$addr; $15 = $channels$addr; $call20 = (_opus_decoder_init($13,$14,$15)|0); $ret = $call20; $16 = $error$addr; $tobool21 = ($16|0)!=(0|0); if ($tobool21) { $17 = $ret; $18 = $error$addr; HEAP32[$18>>2] = $17; } $19 = $ret; $cmp24 = ($19|0)!=(0); if ($cmp24) { $20 = $st; _opus_free($20); $st = 0; } $21 = $st; $retval = $21; $22 = $retval; STACKTOP = sp;return ($22|0); } } $7 = $error$addr; $tobool = ($7|0)!=(0|0); if ($tobool) { $8 = $error$addr; HEAP32[$8>>2] = -1; } $retval = 0; $22 = $retval; STACKTOP = sp;return ($22|0); } function _opus_alloc($size) { $size = $size|0; var $0 = 0, $call = 0, $size$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $size$addr = $size; $0 = $size$addr; $call = (_malloc($0)|0); STACKTOP = sp;return ($call|0); } function _opus_free($ptr) { $ptr = $ptr|0; var $0 = 0, $ptr$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $ptr$addr = $ptr; $0 = $ptr$addr; _free($0); STACKTOP = sp;return; } function _opus_decode_native($st,$data,$len,$pcm,$frame_size,$decode_fec,$self_delimited,$packet_offset,$soft_clip) { $st = $st|0; $data = $data|0; $len = $len|0; $pcm = $pcm|0; $frame_size = $frame_size|0; $decode_fec = $decode_fec|0; $self_delimited = $self_delimited|0; $packet_offset = $packet_offset|0; $soft_clip = $soft_clip|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0; var $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0; var $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0; var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0; var $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0; var $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $Fs = 0, $Fs30 = 0, $add = 0, $add$ptr = 0, $add$ptr105 = 0, $add$ptr37 = 0, $add$ptr65 = 0, $add$ptr96 = 0, $add106 = 0, $arrayidx103 = 0, $arrayidx121 = 0, $arrayidx92 = 0; var $bandwidth = 0, $bandwidth86 = 0, $call = 0, $call28 = 0, $call29 = 0, $call31 = 0, $call32 = 0, $call33 = 0, $call47 = 0, $call54 = 0, $call66 = 0, $call98 = 0, $channels = 0, $channels117 = 0, $channels62 = 0, $channels94 = 0, $cmp = 0, $cmp1 = 0, $cmp11 = 0, $cmp13 = 0; var $cmp16 = 0, $cmp24 = 0, $cmp3 = 0, $cmp34 = 0, $cmp41 = 0, $cmp43 = 0, $cmp45 = 0, $cmp5 = 0, $cmp51 = 0, $cmp55 = 0, $cmp6 = 0, $cmp67 = 0, $cmp81 = 0, $cmp89 = 0, $cmp9 = 0, $cmp99 = 0, $conv = 0, $conv104 = 0, $conv93 = 0, $count = 0; var $data$addr = 0, $decode_fec$addr = 0, $div = 0, $duration_copy = 0, $frame_size$addr = 0, $frame_size61 = 0, $frame_size87 = 0, $i = 0, $inc = 0, $last_packet_duration = 0, $last_packet_duration107 = 0, $last_packet_duration49 = 0, $last_packet_duration57 = 0, $last_packet_duration78 = 0, $len$addr = 0, $mode = 0, $mode60 = 0, $mode85 = 0, $mul = 0, $mul64 = 0; var $mul80 = 0, $mul95 = 0, $nb_samples = 0, $offset = 0, $or$cond = 0, $or$cond1 = 0, $or$cond2 = 0, $or$cond3 = 0, $or$cond4 = 0, $packet_bandwidth = 0, $packet_frame_size = 0, $packet_mode = 0, $packet_offset$addr = 0, $packet_stream_channels = 0, $pcm$addr = 0, $pcm_count = 0, $rem = 0, $ret = 0, $ret40 = 0, $ret91 = 0; var $retval = 0, $self_delimited$addr = 0, $size = 0, $soft_clip$addr = 0, $softclip_mem = 0, $softclip_mem120 = 0, $softclip_mem122 = 0, $st$addr = 0, $stream_channels = 0, $stream_channels88 = 0, $sub = 0, $sub50 = 0, $sub53 = 0, $sub63 = 0, $sub97 = 0, $tobool = 0, $tobool115 = 0, $tobool38 = 0, $toc = 0, label = 0; var sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 208|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(208|0); $offset = sp + 36|0; $toc = sp + 192|0; $size = sp + 96|0; $st$addr = $st; $data$addr = $data; $len$addr = $len; $pcm$addr = $pcm; $frame_size$addr = $frame_size; $decode_fec$addr = $decode_fec; $self_delimited$addr = $self_delimited; $packet_offset$addr = $packet_offset; $soft_clip$addr = $soft_clip; $0 = $decode_fec$addr; $cmp = ($0|0)<(0); $1 = $decode_fec$addr; $cmp1 = ($1|0)>(1); $or$cond = $cmp | $cmp1; if ($or$cond) { $retval = -1; $127 = $retval; STACKTOP = sp;return ($127|0); } $2 = $decode_fec$addr; $tobool = ($2|0)!=(0); $3 = $len$addr; $cmp3 = ($3|0)==(0); $or$cond1 = $tobool | $cmp3; $4 = $data$addr; $cmp5 = ($4|0)==(0|0); $or$cond2 = $or$cond1 | $cmp5; if ($or$cond2) { $5 = $frame_size$addr; $6 = $st$addr; $Fs = ((($6)) + 12|0); $7 = HEAP32[$Fs>>2]|0; $div = (($7|0) / 400)&-1; $rem = (($5|0) % ($div|0))&-1; $cmp6 = ($rem|0)!=(0); if ($cmp6) { $retval = -1; $127 = $retval; STACKTOP = sp;return ($127|0); } } $8 = $len$addr; $cmp9 = ($8|0)==(0); $9 = $data$addr; $cmp11 = ($9|0)==(0|0); $or$cond3 = $cmp9 | $cmp11; if ($or$cond3) { $pcm_count = 0; while(1) { $10 = $st$addr; $11 = $pcm$addr; $12 = $pcm_count; $13 = $st$addr; $channels = ((($13)) + 8|0); $14 = HEAP32[$channels>>2]|0; $mul = Math_imul($12, $14)|0; $add$ptr = (($11) + ($mul<<2)|0); $15 = $frame_size$addr; $16 = $pcm_count; $sub = (($15) - ($16))|0; $call = (_opus_decode_frame($10,0,0,$add$ptr,$sub,0)|0); $ret = $call; $17 = $ret; $cmp13 = ($17|0)<(0); $18 = $ret; if ($cmp13) { label = 9; break; } $19 = $pcm_count; $add = (($19) + ($18))|0; $pcm_count = $add; $20 = $pcm_count; $21 = $frame_size$addr; $cmp16 = ($20|0)<($21|0); if (!($cmp16)) { label = 11; break; } } if ((label|0) == 9) { $retval = $18; $127 = $retval; STACKTOP = sp;return ($127|0); } else if ((label|0) == 11) { (__opus_false()|0); $22 = $pcm_count; $23 = $st$addr; $last_packet_duration = ((($23)) + 72|0); HEAP32[$last_packet_duration>>2] = $22; $24 = $pcm_count; $retval = $24; $127 = $retval; STACKTOP = sp;return ($127|0); } } $25 = $len$addr; $cmp24 = ($25|0)<(0); if ($cmp24) { $retval = -1; $127 = $retval; STACKTOP = sp;return ($127|0); } $26 = $data$addr; $call28 = (_opus_packet_get_mode($26)|0); $packet_mode = $call28; $27 = $data$addr; $call29 = (_opus_packet_get_bandwidth($27)|0); $packet_bandwidth = $call29; $28 = $data$addr; $29 = $st$addr; $Fs30 = ((($29)) + 12|0); $30 = HEAP32[$Fs30>>2]|0; $call31 = (_opus_packet_get_samples_per_frame($28,$30)|0); $packet_frame_size = $call31; $31 = $data$addr; $call32 = (_opus_packet_get_nb_channels($31)|0); $packet_stream_channels = $call32; $32 = $data$addr; $33 = $len$addr; $34 = $self_delimited$addr; $35 = $packet_offset$addr; $call33 = (_opus_packet_parse_impl($32,$33,$34,$toc,0,$size,$offset,$35)|0); $count = $call33; $36 = $count; $cmp34 = ($36|0)<(0); if ($cmp34) { $37 = $count; $retval = $37; $127 = $retval; STACKTOP = sp;return ($127|0); } $38 = HEAP32[$offset>>2]|0; $39 = $data$addr; $add$ptr37 = (($39) + ($38)|0); $data$addr = $add$ptr37; $40 = $decode_fec$addr; $tobool38 = ($40|0)!=(0); if ($tobool38) { $41 = $frame_size$addr; $42 = $packet_frame_size; $cmp41 = ($41|0)<($42|0); $43 = $packet_mode; $cmp43 = ($43|0)==(1002); $or$cond4 = $cmp41 | $cmp43; if (!($or$cond4)) { $44 = $st$addr; $mode = ((($44)) + 56|0); $45 = HEAP32[$mode>>2]|0; $cmp45 = ($45|0)==(1002); if (!($cmp45)) { $50 = $st$addr; $last_packet_duration49 = ((($50)) + 72|0); $51 = HEAP32[$last_packet_duration49>>2]|0; $duration_copy = $51; $52 = $frame_size$addr; $53 = $packet_frame_size; $sub50 = (($52) - ($53))|0; $cmp51 = ($sub50|0)!=(0); if ($cmp51) { $54 = $st$addr; $55 = $pcm$addr; $56 = $frame_size$addr; $57 = $packet_frame_size; $sub53 = (($56) - ($57))|0; $58 = $soft_clip$addr; $call54 = (_opus_decode_native($54,0,0,$55,$sub53,0,0,0,$58)|0); $ret40 = $call54; $59 = $ret40; $cmp55 = ($59|0)<(0); if ($cmp55) { $60 = $duration_copy; $61 = $st$addr; $last_packet_duration57 = ((($61)) + 72|0); HEAP32[$last_packet_duration57>>2] = $60; $62 = $ret40; $retval = $62; $127 = $retval; STACKTOP = sp;return ($127|0); } } $63 = $packet_mode; $64 = $st$addr; $mode60 = ((($64)) + 56|0); HEAP32[$mode60>>2] = $63; $65 = $packet_bandwidth; $66 = $st$addr; $bandwidth = ((($66)) + 52|0); HEAP32[$bandwidth>>2] = $65; $67 = $packet_frame_size; $68 = $st$addr; $frame_size61 = ((($68)) + 64|0); HEAP32[$frame_size61>>2] = $67; $69 = $packet_stream_channels; $70 = $st$addr; $stream_channels = ((($70)) + 48|0); HEAP32[$stream_channels>>2] = $69; $71 = $st$addr; $72 = $data$addr; $73 = HEAP16[$size>>1]|0; $conv = $73 << 16 >> 16; $74 = $pcm$addr; $75 = $st$addr; $channels62 = ((($75)) + 8|0); $76 = HEAP32[$channels62>>2]|0; $77 = $frame_size$addr; $78 = $packet_frame_size; $sub63 = (($77) - ($78))|0; $mul64 = Math_imul($76, $sub63)|0; $add$ptr65 = (($74) + ($mul64<<2)|0); $79 = $packet_frame_size; $call66 = (_opus_decode_frame($71,$72,$conv,$add$ptr65,$79,1)|0); $ret40 = $call66; $80 = $ret40; $cmp67 = ($80|0)<(0); if ($cmp67) { $81 = $ret40; $retval = $81; $127 = $retval; STACKTOP = sp;return ($127|0); } else { (__opus_false()|0); $82 = $frame_size$addr; $83 = $st$addr; $last_packet_duration78 = ((($83)) + 72|0); HEAP32[$last_packet_duration78>>2] = $82; $84 = $frame_size$addr; $retval = $84; $127 = $retval; STACKTOP = sp;return ($127|0); } } } $46 = $st$addr; $47 = $pcm$addr; $48 = $frame_size$addr; $49 = $soft_clip$addr; $call47 = (_opus_decode_native($46,0,0,$47,$48,0,0,0,$49)|0); $retval = $call47; $127 = $retval; STACKTOP = sp;return ($127|0); } $85 = $count; $86 = $packet_frame_size; $mul80 = Math_imul($85, $86)|0; $87 = $frame_size$addr; $cmp81 = ($mul80|0)>($87|0); if ($cmp81) { $retval = -2; $127 = $retval; STACKTOP = sp;return ($127|0); } $88 = $packet_mode; $89 = $st$addr; $mode85 = ((($89)) + 56|0); HEAP32[$mode85>>2] = $88; $90 = $packet_bandwidth; $91 = $st$addr; $bandwidth86 = ((($91)) + 52|0); HEAP32[$bandwidth86>>2] = $90; $92 = $packet_frame_size; $93 = $st$addr; $frame_size87 = ((($93)) + 64|0); HEAP32[$frame_size87>>2] = $92; $94 = $packet_stream_channels; $95 = $st$addr; $stream_channels88 = ((($95)) + 48|0); HEAP32[$stream_channels88>>2] = $94; $nb_samples = 0; $i = 0; while(1) { $96 = $i; $97 = $count; $cmp89 = ($96|0)<($97|0); if (!($cmp89)) { break; } $98 = $st$addr; $99 = $data$addr; $100 = $i; $arrayidx92 = (($size) + ($100<<1)|0); $101 = HEAP16[$arrayidx92>>1]|0; $conv93 = $101 << 16 >> 16; $102 = $pcm$addr; $103 = $nb_samples; $104 = $st$addr; $channels94 = ((($104)) + 8|0); $105 = HEAP32[$channels94>>2]|0; $mul95 = Math_imul($103, $105)|0; $add$ptr96 = (($102) + ($mul95<<2)|0); $106 = $frame_size$addr; $107 = $nb_samples; $sub97 = (($106) - ($107))|0; $call98 = (_opus_decode_frame($98,$99,$conv93,$add$ptr96,$sub97,0)|0); $ret91 = $call98; $108 = $ret91; $cmp99 = ($108|0)<(0); if ($cmp99) { label = 31; break; } $110 = $i; $arrayidx103 = (($size) + ($110<<1)|0); $111 = HEAP16[$arrayidx103>>1]|0; $conv104 = $111 << 16 >> 16; $112 = $data$addr; $add$ptr105 = (($112) + ($conv104)|0); $data$addr = $add$ptr105; $113 = $ret91; $114 = $nb_samples; $add106 = (($114) + ($113))|0; $nb_samples = $add106; $115 = $i; $inc = (($115) + 1)|0; $i = $inc; } if ((label|0) == 31) { $109 = $ret91; $retval = $109; $127 = $retval; STACKTOP = sp;return ($127|0); } $116 = $nb_samples; $117 = $st$addr; $last_packet_duration107 = ((($117)) + 72|0); HEAP32[$last_packet_duration107>>2] = $116; (__opus_false()|0); $118 = $soft_clip$addr; $tobool115 = ($118|0)!=(0); if ($tobool115) { $119 = $pcm$addr; $120 = $nb_samples; $121 = $st$addr; $channels117 = ((($121)) + 8|0); $122 = HEAP32[$channels117>>2]|0; $123 = $st$addr; $softclip_mem = ((($123)) + 76|0); _opus_pcm_soft_clip($119,$120,$122,$softclip_mem); } else { $124 = $st$addr; $softclip_mem120 = ((($124)) + 76|0); $arrayidx121 = ((($softclip_mem120)) + 4|0); HEAPF32[$arrayidx121>>2] = 0.0; $125 = $st$addr; $softclip_mem122 = ((($125)) + 76|0); HEAPF32[$softclip_mem122>>2] = 0.0; } $126 = $nb_samples; $retval = $126; $127 = $retval; STACKTOP = sp;return ($127|0); } function _opus_decode_frame($st,$data,$len,$pcm,$frame_size,$decode_fec) { $st = $st|0; $data = $data|0; $len = $len|0; $pcm = $pcm|0; $frame_size = $frame_size|0; $decode_fec = $decode_fec|0; var $$ = 0, $$12 = 0, $$sink = 0, $$sink11 = 0, $$sink2 = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0; var $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0; var $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0; var $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0; var $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0; var $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0; var $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0; var $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0; var $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0; var $256 = 0.0, $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0; var $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0; var $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0.0, $306 = 0, $307 = 0, $308 = 0, $309 = 0; var $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0, $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0; var $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0, $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0.0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0; var $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0, $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0; var $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0, $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0.0, $38 = 0, $380 = 0.0, $381 = 0.0; var $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0, $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0; var $40 = 0, $400 = 0, $401 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0; var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0; var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0; var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $DecControl = 0, $DecControl133 = 0, $DecControl138 = 0, $DecControl170 = 0, $F10 = 0, $F20 = 0, $F2_5 = 0, $F5 = 0, $Fs = 0, $Fs121 = 0, $Fs127 = 0, $Fs4 = 0, $Fs413 = 0; var $Fs452 = 0, $Fs480 = 0, $Fs483 = 0, $Fs7 = 0, $add = 0, $add$ptr = 0, $add$ptr1 = 0, $add$ptr191 = 0, $add$ptr293 = 0, $add$ptr295 = 0, $add$ptr384 = 0, $add$ptr393 = 0, $add$ptr399 = 0, $add$ptr404 = 0, $add$ptr407 = 0, $add$ptr41 = 0, $add$ptr411 = 0, $add$ptr444 = 0, $add$ptr447 = 0, $add$ptr450 = 0; var $add$ptr472 = 0, $add$ptr475 = 0, $add$ptr478 = 0, $add206 = 0, $add211 = 0, $add229 = 0, $add232 = 0, $add374 = 0.0, $add430 = 0, $add434 = 0, $arch = 0, $arrayidx = 0, $arrayidx182 = 0, $arrayidx338 = 0, $arrayidx369 = 0, $arrayidx370 = 0, $arrayidx375 = 0, $arrayidx431 = 0, $arrayidx435 = 0, $arrayidx465 = 0; var $arrayidx466 = 0, $arrayidx501 = 0, $arrayidx503 = 0, $audiosize = 0, $bandwidth = 0, $bandwidth140 = 0, $bandwidth251 = 0, $c = 0, $call = 0, $call171 = 0, $call205 = 0, $call219 = 0, $call224 = 0, $call228 = 0, $call231 = 0, $call239 = 0, $call328 = 0, $call493 = 0.0, $celt_accum = 0, $celt_dec = 0; var $celt_frame_size = 0, $celt_mode = 0, $celt_ret = 0, $celt_to_silk = 0, $channels = 0, $channels107 = 0, $channels177 = 0, $channels189 = 0, $channels282 = 0, $channels333 = 0, $channels364 = 0, $channels39 = 0, $channels401 = 0, $channels405 = 0, $channels408 = 0, $channels412 = 0, $channels420 = 0, $channels428 = 0, $channels432 = 0, $channels442 = 0; var $channels445 = 0, $channels448 = 0, $channels451 = 0, $channels460 = 0, $channels470 = 0, $channels473 = 0, $channels476 = 0, $channels479 = 0, $channels482 = 0, $channels496 = 0, $channels76 = 0, $cleanup$dest$slot = 0, $cmp = 0, $cmp10 = 0, $cmp102 = 0, $cmp113 = 0, $cmp116 = 0, $cmp123 = 0, $cmp13 = 0, $cmp131 = 0; var $cmp134 = 0, $cmp136 = 0, $cmp141 = 0, $cmp162 = 0, $cmp169 = 0, $cmp179 = 0, $cmp193 = 0, $cmp199 = 0, $cmp20 = 0, $cmp202 = 0, $cmp208 = 0, $cmp213 = 0, $cmp216 = 0, $cmp225 = 0, $cmp24 = 0, $cmp240 = 0, $cmp247 = 0, $cmp269 = 0, $cmp27 = 0, $cmp272 = 0; var $cmp29 = 0, $cmp301 = 0, $cmp304 = 0, $cmp31 = 0, $cmp311 = 0, $cmp315 = 0, $cmp335 = 0, $cmp344 = 0, $cmp358 = 0, $cmp36 = 0, $cmp366 = 0, $cmp42 = 0, $cmp421 = 0, $cmp425 = 0, $cmp44 = 0, $cmp456 = 0, $cmp46 = 0, $cmp462 = 0, $cmp49 = 0, $cmp498 = 0; var $cmp50 = 0, $cmp508 = 0, $cmp518 = 0, $cmp52 = 0, $cmp529 = 0, $cmp59 = 0, $cmp6 = 0, $cmp62 = 0, $cmp64 = 0, $cmp67 = 0, $cmp69 = 0, $cmp72 = 0, $cmp74 = 0, $cmp85 = 0, $cmp87 = 0, $cmp94 = 0, $cmp98 = 0, $cond = 0, $cond106 = 0, $cond111 = 0; var $cond130 = 0, $cond167 = 0, $cond18 = 0, $cond236 = 0, $cond277 = 0, $cond286 = 0, $cond309 = 0, $cond327 = 0, $cond35 = 0, $cond534 = 0, $cond91 = 0, $conv = 0, $conv209 = 0, $conv371 = 0, $conv372 = 0.0, $conv489 = 0.0, $conv491 = 0.0, $conv494 = 0.0, $data$addr = 0, $dec = 0; var $decode_fec$addr = 0, $decode_gain = 0, $decode_gain488 = 0, $decoded_samples = 0, $div = 0, $div122 = 0, $div128 = 0, $div5 = 0, $div8 = 0, $endband = 0, $first_frame = 0, $frame_size$addr = 0, $frame_size12 = 0, $frame_size16 = 0, $frame_size22 = 0, $gain = 0.0, $i = 0, $inc = 0, $inc184 = 0, $inc340 = 0; var $inc377 = 0, $inc437 = 0, $inc440 = 0, $inc468 = 0, $inc505 = 0, $internalSampleRate = 0, $land$ext = 0, $len$addr = 0, $lnot = 0, $lost_flag = 0, $mode = 0, $mode207 = 0, $mode23 = 0, $mul = 0, $mul108 = 0, $mul120 = 0, $mul126 = 0, $mul165 = 0, $mul178 = 0, $mul190 = 0; var $mul210 = 0, $mul212 = 0, $mul238 = 0, $mul26 = 0, $mul283 = 0, $mul334 = 0, $mul365 = 0, $mul373 = 0.0, $mul40 = 0, $mul403 = 0, $mul406 = 0, $mul410 = 0, $mul429 = 0, $mul433 = 0, $mul443 = 0, $mul446 = 0, $mul449 = 0, $mul461 = 0, $mul471 = 0, $mul474 = 0; var $mul477 = 0, $mul490 = 0.0, $mul492 = 0.0, $mul497 = 0, $mul502 = 0.0, $mul77 = 0, $mul9 = 0, $nChannelsInternal = 0, $or$cond = 0, $or$cond1 = 0, $or$cond10 = 0, $or$cond3 = 0, $or$cond4 = 0, $or$cond5 = 0, $or$cond6 = 0, $or$cond7 = 0, $or$cond8 = 0, $or$cond9 = 0, $payloadSize_ms = 0, $pcm$addr = 0; var $pcm_ptr = 0, $pcm_silk_size = 0, $pcm_transition = 0, $pcm_transition_celt_size = 0, $pcm_transition_silk_size = 0, $prev_mode = 0, $prev_mode115 = 0, $prev_mode310 = 0, $prev_mode314 = 0, $prev_mode343 = 0, $prev_mode514 = 0, $prev_mode61 = 0, $prev_mode66 = 0, $prev_mode71 = 0, $prev_redundancy = 0, $prev_redundancy318 = 0, $prev_redundancy351 = 0, $prev_redundancy517 = 0, $rangeFinal512 = 0, $redundancy = 0; var $redundancy_bytes = 0, $redundant_audio_size = 0, $redundant_rng = 0, $ret = 0, $retval = 0, $rng = 0, $saved_stack = 0, $shr = 0, $shr2 = 0, $shr233 = 0, $shr3 = 0, $silence = 0, $silk_dec = 0, $silk_dec_offset = 0, $silk_frame_size = 0, $silk_ret = 0, $st$addr = 0, $start_band = 0, $storage = 0, $stream_channels = 0; var $stream_channels261 = 0, $sub = 0, $sub$ptr$div = 0, $sub$ptr$div383 = 0, $sub$ptr$div398 = 0, $sub$ptr$lhs$cast = 0, $sub$ptr$lhs$cast380 = 0, $sub$ptr$lhs$cast395 = 0, $sub$ptr$rhs$cast = 0, $sub$ptr$rhs$cast381 = 0, $sub$ptr$rhs$cast396 = 0, $sub$ptr$sub = 0, $sub$ptr$sub382 = 0, $sub$ptr$sub397 = 0, $sub234 = 0, $sub237 = 0, $sub244 = 0, $sub402 = 0, $sub409 = 0, $tobool = 0; var $tobool100 = 0, $tobool172 = 0, $tobool174 = 0, $tobool197 = 0, $tobool222 = 0, $tobool263 = 0, $tobool267 = 0, $tobool280 = 0, $tobool288 = 0, $tobool290 = 0, $tobool319 = 0, $tobool323 = 0, $tobool330 = 0, $tobool347 = 0, $tobool349 = 0, $tobool352 = 0, $tobool361 = 0, $tobool387 = 0, $tobool389 = 0, $tobool415 = 0; var $tobool417 = 0, $tobool454 = 0, $tobool486 = 0, $tobool515 = 0, $tobool516 = 0, $tobool83 = 0, $transition = 0, $vararg_buffer = 0, $vararg_buffer13 = 0, $vararg_buffer16 = 0, $vararg_buffer19 = 0, $vararg_buffer22 = 0, $vararg_buffer25 = 0, $vararg_buffer27 = 0, $vararg_buffer30 = 0, $vararg_buffer33 = 0, $vararg_buffer35 = 0, $vararg_buffer38 = 0, $vla = 0, $vla$alloca_mul = 0; var $vla112 = 0, $vla112$alloca_mul = 0, $vla266 = 0, $vla266$alloca_mul = 0, $vla287 = 0, $vla287$alloca_mul = 0, $window = 0, $window386 = 0, $x = 0.0, $xor = 0, $xor$sink = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 320|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(320|0); $vararg_buffer38 = sp + 80|0; $vararg_buffer35 = sp + 72|0; $vararg_buffer33 = sp + 64|0; $vararg_buffer30 = sp + 56|0; $vararg_buffer27 = sp + 48|0; $vararg_buffer25 = sp + 40|0; $vararg_buffer22 = sp + 32|0; $vararg_buffer19 = sp + 24|0; $vararg_buffer16 = sp + 16|0; $vararg_buffer13 = sp + 8|0; $vararg_buffer = sp; $dec = sp + 216|0; $silk_frame_size = sp + 212|0; $redundant_rng = sp + 136|0; $silence = sp + 312|0; $celt_mode = sp + 92|0; $st$addr = $st; $data$addr = $data; $len$addr = $len; $pcm$addr = $pcm; $frame_size$addr = $frame_size; $decode_fec$addr = $decode_fec; $silk_ret = 0; $celt_ret = 0; $pcm_transition = 0; $transition = 0; $redundancy = 0; $redundancy_bytes = 0; $celt_to_silk = 0; HEAP32[$redundant_rng>>2] = 0; $0 = $st$addr; $1 = $st$addr; $silk_dec_offset = ((($1)) + 4|0); $2 = HEAP32[$silk_dec_offset>>2]|0; $add$ptr = (($0) + ($2)|0); $silk_dec = $add$ptr; $3 = $st$addr; $4 = $st$addr; $5 = HEAP32[$4>>2]|0; $add$ptr1 = (($3) + ($5)|0); $celt_dec = $add$ptr1; $6 = $st$addr; $Fs = ((($6)) + 12|0); $7 = HEAP32[$Fs>>2]|0; $div = (($7|0) / 50)&-1; $F20 = $div; $8 = $F20; $shr = $8 >> 1; $F10 = $shr; $9 = $F10; $shr2 = $9 >> 1; $F5 = $shr2; $10 = $F5; $shr3 = $10 >> 1; $F2_5 = $shr3; $11 = $frame_size$addr; $12 = $F2_5; $cmp = ($11|0)<($12|0); if ($cmp) { $retval = -2; $401 = $retval; STACKTOP = sp;return ($401|0); } $13 = $frame_size$addr; $14 = $st$addr; $Fs4 = ((($14)) + 12|0); $15 = HEAP32[$Fs4>>2]|0; $div5 = (($15|0) / 25)&-1; $mul = ($div5*3)|0; $cmp6 = ($13|0)<($mul|0); if ($cmp6) { $16 = $frame_size$addr; $cond = $16; } else { $17 = $st$addr; $Fs7 = ((($17)) + 12|0); $18 = HEAP32[$Fs7>>2]|0; $div8 = (($18|0) / 25)&-1; $mul9 = ($div8*3)|0; $cond = $mul9; } $frame_size$addr = $cond; $19 = $len$addr; $cmp10 = ($19|0)<=(1); if ($cmp10) { $data$addr = 0; $20 = $frame_size$addr; $21 = $st$addr; $frame_size12 = ((($21)) + 64|0); $22 = HEAP32[$frame_size12>>2]|0; $cmp13 = ($20|0)<($22|0); if ($cmp13) { $23 = $frame_size$addr; $cond18 = $23; } else { $24 = $st$addr; $frame_size16 = ((($24)) + 64|0); $25 = HEAP32[$frame_size16>>2]|0; $cond18 = $25; } $frame_size$addr = $cond18; } $26 = $data$addr; $cmp20 = ($26|0)!=(0|0); do { if ($cmp20) { $27 = $st$addr; $frame_size22 = ((($27)) + 64|0); $28 = HEAP32[$frame_size22>>2]|0; $audiosize = $28; $29 = $st$addr; $mode23 = ((($29)) + 56|0); $30 = HEAP32[$mode23>>2]|0; $mode = $30; $31 = $data$addr; $32 = $len$addr; _ec_dec_init($dec,$31,$32); } else { $33 = $frame_size$addr; $audiosize = $33; $34 = $st$addr; $prev_mode = ((($34)) + 60|0); $35 = HEAP32[$prev_mode>>2]|0; $mode = $35; $36 = $mode; $cmp24 = ($36|0)==(0); if ($cmp24) { $i = 0; while(1) { $37 = $i; $38 = $audiosize; $39 = $st$addr; $channels = ((($39)) + 8|0); $40 = HEAP32[$channels>>2]|0; $mul26 = Math_imul($38, $40)|0; $cmp27 = ($37|0)<($mul26|0); if (!($cmp27)) { break; } $41 = $pcm$addr; $42 = $i; $arrayidx = (($41) + ($42<<2)|0); HEAPF32[$arrayidx>>2] = 0.0; $43 = $i; $inc = (($43) + 1)|0; $i = $inc; } $44 = $audiosize; $retval = $44; $401 = $retval; STACKTOP = sp;return ($401|0); } $45 = $audiosize; $46 = $F20; $cmp29 = ($45|0)>($46|0); if ($cmp29) { while(1) { $47 = $st$addr; $48 = $pcm$addr; $49 = $audiosize; $50 = $F20; $cmp31 = ($49|0)<($50|0); $51 = $audiosize; $52 = $F20; $cond35 = $cmp31 ? $51 : $52; $call = (_opus_decode_frame($47,0,0,$48,$cond35,0)|0); $ret = $call; $53 = $ret; $cmp36 = ($53|0)<(0); $54 = $ret; if ($cmp36) { label = 20; break; } $55 = $st$addr; $channels39 = ((($55)) + 8|0); $56 = HEAP32[$channels39>>2]|0; $mul40 = Math_imul($54, $56)|0; $57 = $pcm$addr; $add$ptr41 = (($57) + ($mul40<<2)|0); $pcm$addr = $add$ptr41; $58 = $ret; $59 = $audiosize; $sub = (($59) - ($58))|0; $audiosize = $sub; $60 = $audiosize; $cmp42 = ($60|0)>(0); if (!($cmp42)) { label = 22; break; } } if ((label|0) == 20) { $retval = $54; $401 = $retval; STACKTOP = sp;return ($401|0); } else if ((label|0) == 22) { $61 = $frame_size$addr; $retval = $61; $401 = $retval; STACKTOP = sp;return ($401|0); } } $62 = $audiosize; $63 = $F20; $cmp44 = ($62|0)<($63|0); if ($cmp44) { $64 = $audiosize; $65 = $F10; $cmp46 = ($64|0)>($65|0); if ($cmp46) { $66 = $F10; $audiosize = $66; break; } $67 = $mode; $cmp49 = ($67|0)!=(1000); if ($cmp49) { $68 = $audiosize; $69 = $F5; $cmp50 = ($68|0)>($69|0); if ($cmp50) { $70 = $audiosize; $71 = $F10; $cmp52 = ($70|0)<($71|0); if ($cmp52) { $72 = $F5; $audiosize = $72; } } } } } } while(0); $celt_accum = 0; $pcm_transition_silk_size = 1; $pcm_transition_celt_size = 1; $73 = $data$addr; $cmp59 = ($73|0)!=(0|0); do { if ($cmp59) { $74 = $st$addr; $prev_mode61 = ((($74)) + 60|0); $75 = HEAP32[$prev_mode61>>2]|0; $cmp62 = ($75|0)>(0); if ($cmp62) { $76 = $mode; $cmp64 = ($76|0)==(1002); if ($cmp64) { $77 = $st$addr; $prev_mode66 = ((($77)) + 60|0); $78 = HEAP32[$prev_mode66>>2]|0; $cmp67 = ($78|0)!=(1002); if ($cmp67) { $79 = $st$addr; $prev_redundancy = ((($79)) + 68|0); $80 = HEAP32[$prev_redundancy>>2]|0; $tobool = ($80|0)!=(0); if ($tobool) { label = 35; } } else { label = 35; } } else { label = 35; } if ((label|0) == 35) { $81 = $mode; $cmp69 = ($81|0)!=(1002); if (!($cmp69)) { break; } $82 = $st$addr; $prev_mode71 = ((($82)) + 60|0); $83 = HEAP32[$prev_mode71>>2]|0; $cmp72 = ($83|0)==(1002); if (!($cmp72)) { break; } } $transition = 1; $84 = $mode; $cmp74 = ($84|0)==(1002); $85 = $F5; $86 = $st$addr; $channels76 = ((($86)) + 8|0); $87 = HEAP32[$channels76>>2]|0; $mul77 = Math_imul($85, $87)|0; if ($cmp74) { $pcm_transition_celt_size = $mul77; break; } else { $pcm_transition_silk_size = $mul77; break; } } } } while(0); $88 = $pcm_transition_celt_size; $89 = (_llvm_stacksave()|0); $saved_stack = $89; $vla$alloca_mul = $88<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $90 = $transition; $tobool83 = ($90|0)!=(0); $91 = $mode; $cmp85 = ($91|0)==(1002); $or$cond = $tobool83 & $cmp85; if ($or$cond) { $pcm_transition = $vla; $92 = $st$addr; $93 = $pcm_transition; $94 = $F5; $95 = $audiosize; $cmp87 = ($94|0)<($95|0); $96 = $F5; $97 = $audiosize; $cond91 = $cmp87 ? $96 : $97; (_opus_decode_frame($92,0,0,$93,$cond91,0)|0); } $98 = $audiosize; $99 = $frame_size$addr; $cmp94 = ($98|0)>($99|0); L62: do { if ($cmp94) { $retval = -1; $cleanup$dest$slot = 1; } else { $100 = $audiosize; $frame_size$addr = $100; $101 = $mode; $cmp98 = ($101|0)==(1002); $102 = $celt_accum; $tobool100 = ($102|0)!=(0); $or$cond1 = $cmp98 | $tobool100; if ($or$cond1) { $cond111 = 1; } else { $103 = $F10; $104 = $frame_size$addr; $cmp102 = ($103|0)>($104|0); $105 = $F10; $106 = $frame_size$addr; $cond106 = $cmp102 ? $105 : $106; $107 = $st$addr; $channels107 = ((($107)) + 8|0); $108 = HEAP32[$channels107>>2]|0; $mul108 = Math_imul($cond106, $108)|0; $cond111 = $mul108; } $pcm_silk_size = $cond111; $109 = $pcm_silk_size; $vla112$alloca_mul = $109<<1; $vla112 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla112$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla112$alloca_mul)|0)+15)&-16)|0);; $110 = $mode; $cmp113 = ($110|0)!=(1002); L68: do { if ($cmp113) { $pcm_ptr = $vla112; $111 = $st$addr; $prev_mode115 = ((($111)) + 60|0); $112 = HEAP32[$prev_mode115>>2]|0; $cmp116 = ($112|0)==(1002); if ($cmp116) { $113 = $silk_dec; (_silk_InitDecoder($113)|0); } $114 = $audiosize; $mul120 = ($114*1000)|0; $115 = $st$addr; $Fs121 = ((($115)) + 12|0); $116 = HEAP32[$Fs121>>2]|0; $div122 = (($mul120|0) / ($116|0))&-1; $cmp123 = (10)>($div122|0); if ($cmp123) { $cond130 = 10; } else { $117 = $audiosize; $mul126 = ($117*1000)|0; $118 = $st$addr; $Fs127 = ((($118)) + 12|0); $119 = HEAP32[$Fs127>>2]|0; $div128 = (($mul126|0) / ($119|0))&-1; $cond130 = $div128; } $120 = $st$addr; $DecControl = ((($120)) + 16|0); $payloadSize_ms = ((($DecControl)) + 16|0); HEAP32[$payloadSize_ms>>2] = $cond130; $121 = $data$addr; $cmp131 = ($121|0)!=(0|0); if ($cmp131) { $122 = $st$addr; $stream_channels = ((($122)) + 48|0); $123 = HEAP32[$stream_channels>>2]|0; $124 = $st$addr; $DecControl133 = ((($124)) + 16|0); $nChannelsInternal = ((($DecControl133)) + 4|0); HEAP32[$nChannelsInternal>>2] = $123; $125 = $mode; $cmp134 = ($125|0)==(1000); $126 = $st$addr; if ($cmp134) { $bandwidth = ((($126)) + 52|0); $127 = HEAP32[$bandwidth>>2]|0; $cmp136 = ($127|0)==(1101); $128 = $st$addr; if ($cmp136) { $$sink = 8000;$$sink2 = $128; } else { $bandwidth140 = ((($128)) + 52|0); $129 = HEAP32[$bandwidth140>>2]|0; $cmp141 = ($129|0)==(1102); $130 = $st$addr; $131 = $st$addr; $$ = $cmp141 ? $130 : $131; $$12 = $cmp141 ? 12000 : 16000; $$sink = $$12;$$sink2 = $$; } } else { $$sink = 16000;$$sink2 = $126; } $DecControl138 = ((($$sink2)) + 16|0); $internalSampleRate = ((($DecControl138)) + 12|0); HEAP32[$internalSampleRate>>2] = $$sink; } $132 = $data$addr; $cmp162 = ($132|0)==(0|0); $133 = $decode_fec$addr; $mul165 = $133<<1; $cond167 = $cmp162 ? 1 : $mul165; $lost_flag = $cond167; $decoded_samples = 0; L83: while(1) { $134 = $decoded_samples; $cmp169 = ($134|0)==(0); $conv = $cmp169&1; $first_frame = $conv; $135 = $silk_dec; $136 = $st$addr; $DecControl170 = ((($136)) + 16|0); $137 = $lost_flag; $138 = $first_frame; $139 = $pcm_ptr; $140 = $st$addr; $arch = ((($140)) + 44|0); $141 = HEAP32[$arch>>2]|0; $call171 = (_silk_Decode($135,$DecControl170,$137,$138,$dec,$139,$silk_frame_size,$141)|0); $silk_ret = $call171; $142 = $silk_ret; $tobool172 = ($142|0)!=(0); L85: do { if ($tobool172) { $143 = $lost_flag; $tobool174 = ($143|0)!=(0); if (!($tobool174)) { break L83; } $144 = $frame_size$addr; HEAP32[$silk_frame_size>>2] = $144; $i = 0; while(1) { $145 = $i; $146 = $frame_size$addr; $147 = $st$addr; $channels177 = ((($147)) + 8|0); $148 = HEAP32[$channels177>>2]|0; $mul178 = Math_imul($146, $148)|0; $cmp179 = ($145|0)<($mul178|0); if (!($cmp179)) { break L85; } $149 = $pcm_ptr; $150 = $i; $arrayidx182 = (($149) + ($150<<1)|0); HEAP16[$arrayidx182>>1] = 0; $151 = $i; $inc184 = (($151) + 1)|0; $i = $inc184; } } } while(0); $152 = HEAP32[$silk_frame_size>>2]|0; $153 = $st$addr; $channels189 = ((($153)) + 8|0); $154 = HEAP32[$channels189>>2]|0; $mul190 = Math_imul($152, $154)|0; $155 = $pcm_ptr; $add$ptr191 = (($155) + ($mul190<<1)|0); $pcm_ptr = $add$ptr191; $156 = HEAP32[$silk_frame_size>>2]|0; $157 = $decoded_samples; $add = (($157) + ($156))|0; $decoded_samples = $add; $158 = $decoded_samples; $159 = $frame_size$addr; $cmp193 = ($158|0)<($159|0); if (!($cmp193)) { break L68; } } $retval = -3; $cleanup$dest$slot = 1; break L62; } } while(0); $start_band = 0; $160 = $decode_fec$addr; $tobool197 = ($160|0)==(0); $161 = $mode; $cmp199 = ($161|0)!=(1002); $or$cond3 = $tobool197 & $cmp199; $162 = $data$addr; $cmp202 = ($162|0)!=(0|0); $or$cond4 = $or$cond3 & $cmp202; if ($or$cond4) { $call205 = (_ec_tell($dec)|0); $add206 = (($call205) + 17)|0; $163 = $st$addr; $mode207 = ((($163)) + 56|0); $164 = HEAP32[$mode207>>2]|0; $cmp208 = ($164|0)==(1001); $conv209 = $cmp208&1; $mul210 = ($conv209*20)|0; $add211 = (($add206) + ($mul210))|0; $165 = $len$addr; $mul212 = $165<<3; $cmp213 = ($add211|0)<=($mul212|0); if ($cmp213) { $166 = $mode; $cmp216 = ($166|0)==(1001); if ($cmp216) { $call219 = (_ec_dec_bit_logp($dec,12)|0); $redundancy = $call219; } else { $redundancy = 1; } $167 = $redundancy; $tobool222 = ($167|0)!=(0); if ($tobool222) { $call224 = (_ec_dec_bit_logp($dec,1)|0); $celt_to_silk = $call224; $168 = $mode; $cmp225 = ($168|0)==(1001); if ($cmp225) { $call228 = (_ec_dec_uint($dec,256)|0); $add229 = (($call228) + 2)|0; $cond236 = $add229; } else { $169 = $len$addr; $call231 = (_ec_tell($dec)|0); $add232 = (($call231) + 7)|0; $shr233 = $add232 >> 3; $sub234 = (($169) - ($shr233))|0; $cond236 = $sub234; } $redundancy_bytes = $cond236; $170 = $redundancy_bytes; $171 = $len$addr; $sub237 = (($171) - ($170))|0; $len$addr = $sub237; $172 = $len$addr; $mul238 = $172<<3; $call239 = (_ec_tell($dec)|0); $cmp240 = ($mul238|0)<($call239|0); if ($cmp240) { $len$addr = 0; $redundancy_bytes = 0; $redundancy = 0; } $173 = $redundancy_bytes; $storage = ((($dec)) + 4|0); $174 = HEAP32[$storage>>2]|0; $sub244 = (($174) - ($173))|0; HEAP32[$storage>>2] = $sub244; } } } $175 = $mode; $cmp247 = ($175|0)!=(1002); if ($cmp247) { $start_band = 17; } $endband = 21; $176 = $st$addr; $bandwidth251 = ((($176)) + 52|0); $177 = HEAP32[$bandwidth251>>2]|0; switch ($177|0) { case 1101: { $endband = 13; break; } case 1103: case 1102: { $endband = 17; break; } case 1104: { $endband = 19; break; } case 1105: { $endband = 21; break; } default: { } } $178 = $celt_dec; $179 = $endband; HEAP32[$vararg_buffer>>2] = $179; (_opus_custom_decoder_ctl($178,10012,$vararg_buffer)|0); $180 = $celt_dec; $181 = $st$addr; $stream_channels261 = ((($181)) + 48|0); $182 = HEAP32[$stream_channels261>>2]|0; HEAP32[$vararg_buffer13>>2] = $182; (_opus_custom_decoder_ctl($180,10008,$vararg_buffer13)|0); $183 = $redundancy; $tobool263 = ($183|0)!=(0); if ($tobool263) { $transition = 0; $pcm_transition_silk_size = 1; } $184 = $pcm_transition_silk_size; $vla266$alloca_mul = $184<<2; $vla266 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla266$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla266$alloca_mul)|0)+15)&-16)|0);; $185 = $transition; $tobool267 = ($185|0)!=(0); $186 = $mode; $cmp269 = ($186|0)!=(1002); $or$cond5 = $tobool267 & $cmp269; if ($or$cond5) { $pcm_transition = $vla266; $187 = $st$addr; $188 = $pcm_transition; $189 = $F5; $190 = $audiosize; $cmp272 = ($189|0)<($190|0); $191 = $F5; $192 = $audiosize; $cond277 = $cmp272 ? $191 : $192; (_opus_decode_frame($187,0,0,$188,$cond277,0)|0); } $193 = $redundancy; $tobool280 = ($193|0)!=(0); if ($tobool280) { $194 = $F5; $195 = $st$addr; $channels282 = ((($195)) + 8|0); $196 = HEAP32[$channels282>>2]|0; $mul283 = Math_imul($194, $196)|0; $cond286 = $mul283; } else { $cond286 = 1; } $redundant_audio_size = $cond286; $197 = $redundant_audio_size; $vla287$alloca_mul = $197<<2; $vla287 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla287$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla287$alloca_mul)|0)+15)&-16)|0);; $198 = $redundancy; $tobool288 = ($198|0)!=(0); $199 = $celt_to_silk; $tobool290 = ($199|0)!=(0); $or$cond6 = $tobool288 & $tobool290; if ($or$cond6) { $200 = $celt_dec; HEAP32[$vararg_buffer16>>2] = 0; (_opus_custom_decoder_ctl($200,10010,$vararg_buffer16)|0); $201 = $celt_dec; $202 = $data$addr; $203 = $len$addr; $add$ptr293 = (($202) + ($203)|0); $204 = $redundancy_bytes; $205 = $F5; (_celt_decode_with_ec($201,$add$ptr293,$204,$vla287,$205,0,0)|0); $206 = $celt_dec; $sub$ptr$lhs$cast = $redundant_rng; $sub$ptr$rhs$cast = $redundant_rng; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $sub$ptr$div = (($sub$ptr$sub|0) / 4)&-1; $add$ptr295 = (($redundant_rng) + ($sub$ptr$div<<2)|0); HEAP32[$vararg_buffer19>>2] = $add$ptr295; (_opus_custom_decoder_ctl($206,4031,$vararg_buffer19)|0); } $207 = $celt_dec; $208 = $start_band; HEAP32[$vararg_buffer22>>2] = $208; (_opus_custom_decoder_ctl($207,10010,$vararg_buffer22)|0); $209 = $mode; $cmp301 = ($209|0)!=(1000); do { if ($cmp301) { $210 = $F20; $211 = $frame_size$addr; $cmp304 = ($210|0)<($211|0); $212 = $F20; $213 = $frame_size$addr; $cond309 = $cmp304 ? $212 : $213; $celt_frame_size = $cond309; $214 = $mode; $215 = $st$addr; $prev_mode310 = ((($215)) + 60|0); $216 = HEAP32[$prev_mode310>>2]|0; $cmp311 = ($214|0)!=($216|0); do { if ($cmp311) { $217 = $st$addr; $prev_mode314 = ((($217)) + 60|0); $218 = HEAP32[$prev_mode314>>2]|0; $cmp315 = ($218|0)>(0); if (!($cmp315)) { break; } $219 = $st$addr; $prev_redundancy318 = ((($219)) + 68|0); $220 = HEAP32[$prev_redundancy318>>2]|0; $tobool319 = ($220|0)!=(0); if ($tobool319) { break; } $221 = $celt_dec; (_opus_custom_decoder_ctl($221,4028,$vararg_buffer25)|0); } } while(0); $222 = $celt_dec; $223 = $decode_fec$addr; $tobool323 = ($223|0)!=(0); $224 = $data$addr; $cond327 = $tobool323 ? 0 : $224; $225 = $len$addr; $226 = $pcm$addr; $227 = $celt_frame_size; $228 = $celt_accum; $call328 = (_celt_decode_with_ec($222,$cond327,$225,$226,$227,$dec,$228)|0); $celt_ret = $call328; } else { ;HEAP8[$silence>>0]=HEAP8[25951>>0]|0;HEAP8[$silence+1>>0]=HEAP8[25951+1>>0]|0; $229 = $celt_accum; $tobool330 = ($229|0)!=(0); L139: do { if (!($tobool330)) { $i = 0; while(1) { $230 = $i; $231 = $frame_size$addr; $232 = $st$addr; $channels333 = ((($232)) + 8|0); $233 = HEAP32[$channels333>>2]|0; $mul334 = Math_imul($231, $233)|0; $cmp335 = ($230|0)<($mul334|0); if (!($cmp335)) { break L139; } $234 = $pcm$addr; $235 = $i; $arrayidx338 = (($234) + ($235<<2)|0); HEAPF32[$arrayidx338>>2] = 0.0; $236 = $i; $inc340 = (($236) + 1)|0; $i = $inc340; } } } while(0); $237 = $st$addr; $prev_mode343 = ((($237)) + 60|0); $238 = HEAP32[$prev_mode343>>2]|0; $cmp344 = ($238|0)==(1001); if ($cmp344) { $239 = $redundancy; $tobool347 = ($239|0)!=(0); $240 = $celt_to_silk; $tobool349 = ($240|0)!=(0); $or$cond7 = $tobool347 & $tobool349; if ($or$cond7) { $241 = $st$addr; $prev_redundancy351 = ((($241)) + 68|0); $242 = HEAP32[$prev_redundancy351>>2]|0; $tobool352 = ($242|0)!=(0); if ($tobool352) { break; } } $243 = $celt_dec; HEAP32[$vararg_buffer27>>2] = 0; (_opus_custom_decoder_ctl($243,10010,$vararg_buffer27)|0); $244 = $celt_dec; $245 = $pcm$addr; $246 = $F2_5; $247 = $celt_accum; (_celt_decode_with_ec($244,$silence,2,$245,$246,0,$247)|0); } } } while(0); $248 = $mode; $cmp358 = ($248|0)==(1002); $249 = $celt_accum; $tobool361 = ($249|0)!=(0); $or$cond8 = $cmp358 | $tobool361; L150: do { if (!($or$cond8)) { $i = 0; while(1) { $250 = $i; $251 = $frame_size$addr; $252 = $st$addr; $channels364 = ((($252)) + 8|0); $253 = HEAP32[$channels364>>2]|0; $mul365 = Math_imul($251, $253)|0; $cmp366 = ($250|0)<($mul365|0); if (!($cmp366)) { break L150; } $254 = $pcm$addr; $255 = $i; $arrayidx369 = (($254) + ($255<<2)|0); $256 = +HEAPF32[$arrayidx369>>2]; $257 = $i; $arrayidx370 = (($vla112) + ($257<<1)|0); $258 = HEAP16[$arrayidx370>>1]|0; $conv371 = $258 << 16 >> 16; $conv372 = (+($conv371|0)); $mul373 = 3.0517578125E-5 * $conv372; $add374 = $256 + $mul373; $259 = $pcm$addr; $260 = $i; $arrayidx375 = (($259) + ($260<<2)|0); HEAPF32[$arrayidx375>>2] = $add374; $261 = $i; $inc377 = (($261) + 1)|0; $i = $inc377; } } } while(0); $262 = $celt_dec; $sub$ptr$lhs$cast380 = $celt_mode; $sub$ptr$rhs$cast381 = $celt_mode; $sub$ptr$sub382 = (($sub$ptr$lhs$cast380) - ($sub$ptr$rhs$cast381))|0; $sub$ptr$div383 = (($sub$ptr$sub382|0) / 4)&-1; $add$ptr384 = (($celt_mode) + ($sub$ptr$div383<<2)|0); HEAP32[$vararg_buffer30>>2] = $add$ptr384; (_opus_custom_decoder_ctl($262,10015,$vararg_buffer30)|0); $263 = HEAP32[$celt_mode>>2]|0; $window386 = ((($263)) + 60|0); $264 = HEAP32[$window386>>2]|0; $window = $264; $265 = $redundancy; $tobool387 = ($265|0)==(0); $266 = $celt_to_silk; $tobool389 = ($266|0)!=(0); $or$cond9 = $tobool387 | $tobool389; if (!($or$cond9)) { $267 = $celt_dec; (_opus_custom_decoder_ctl($267,4028,$vararg_buffer33)|0); $268 = $celt_dec; HEAP32[$vararg_buffer35>>2] = 0; (_opus_custom_decoder_ctl($268,10010,$vararg_buffer35)|0); $269 = $celt_dec; $270 = $data$addr; $271 = $len$addr; $add$ptr393 = (($270) + ($271)|0); $272 = $redundancy_bytes; $273 = $F5; (_celt_decode_with_ec($269,$add$ptr393,$272,$vla287,$273,0,0)|0); $274 = $celt_dec; $sub$ptr$lhs$cast395 = $redundant_rng; $sub$ptr$rhs$cast396 = $redundant_rng; $sub$ptr$sub397 = (($sub$ptr$lhs$cast395) - ($sub$ptr$rhs$cast396))|0; $sub$ptr$div398 = (($sub$ptr$sub397|0) / 4)&-1; $add$ptr399 = (($redundant_rng) + ($sub$ptr$div398<<2)|0); HEAP32[$vararg_buffer38>>2] = $add$ptr399; (_opus_custom_decoder_ctl($274,4031,$vararg_buffer38)|0); $275 = $pcm$addr; $276 = $st$addr; $channels401 = ((($276)) + 8|0); $277 = HEAP32[$channels401>>2]|0; $278 = $frame_size$addr; $279 = $F2_5; $sub402 = (($278) - ($279))|0; $mul403 = Math_imul($277, $sub402)|0; $add$ptr404 = (($275) + ($mul403<<2)|0); $280 = $st$addr; $channels405 = ((($280)) + 8|0); $281 = HEAP32[$channels405>>2]|0; $282 = $F2_5; $mul406 = Math_imul($281, $282)|0; $add$ptr407 = (($vla287) + ($mul406<<2)|0); $283 = $pcm$addr; $284 = $st$addr; $channels408 = ((($284)) + 8|0); $285 = HEAP32[$channels408>>2]|0; $286 = $frame_size$addr; $287 = $F2_5; $sub409 = (($286) - ($287))|0; $mul410 = Math_imul($285, $sub409)|0; $add$ptr411 = (($283) + ($mul410<<2)|0); $288 = $F2_5; $289 = $st$addr; $channels412 = ((($289)) + 8|0); $290 = HEAP32[$channels412>>2]|0; $291 = $window; $292 = $st$addr; $Fs413 = ((($292)) + 12|0); $293 = HEAP32[$Fs413>>2]|0; _smooth_fade($add$ptr404,$add$ptr407,$add$ptr411,$288,$290,$291,$293); } $294 = $redundancy; $tobool415 = ($294|0)!=(0); $295 = $celt_to_silk; $tobool417 = ($295|0)!=(0); $or$cond10 = $tobool415 & $tobool417; if ($or$cond10) { $c = 0; while(1) { $296 = $c; $297 = $st$addr; $channels420 = ((($297)) + 8|0); $298 = HEAP32[$channels420>>2]|0; $cmp421 = ($296|0)<($298|0); if (!($cmp421)) { break; } $i = 0; while(1) { $299 = $i; $300 = $F2_5; $cmp425 = ($299|0)<($300|0); if (!($cmp425)) { break; } $301 = $st$addr; $channels428 = ((($301)) + 8|0); $302 = HEAP32[$channels428>>2]|0; $303 = $i; $mul429 = Math_imul($302, $303)|0; $304 = $c; $add430 = (($mul429) + ($304))|0; $arrayidx431 = (($vla287) + ($add430<<2)|0); $305 = +HEAPF32[$arrayidx431>>2]; $306 = $pcm$addr; $307 = $st$addr; $channels432 = ((($307)) + 8|0); $308 = HEAP32[$channels432>>2]|0; $309 = $i; $mul433 = Math_imul($308, $309)|0; $310 = $c; $add434 = (($mul433) + ($310))|0; $arrayidx435 = (($306) + ($add434<<2)|0); HEAPF32[$arrayidx435>>2] = $305; $311 = $i; $inc437 = (($311) + 1)|0; $i = $inc437; } $312 = $c; $inc440 = (($312) + 1)|0; $c = $inc440; } $313 = $st$addr; $channels442 = ((($313)) + 8|0); $314 = HEAP32[$channels442>>2]|0; $315 = $F2_5; $mul443 = Math_imul($314, $315)|0; $add$ptr444 = (($vla287) + ($mul443<<2)|0); $316 = $pcm$addr; $317 = $st$addr; $channels445 = ((($317)) + 8|0); $318 = HEAP32[$channels445>>2]|0; $319 = $F2_5; $mul446 = Math_imul($318, $319)|0; $add$ptr447 = (($316) + ($mul446<<2)|0); $320 = $pcm$addr; $321 = $st$addr; $channels448 = ((($321)) + 8|0); $322 = HEAP32[$channels448>>2]|0; $323 = $F2_5; $mul449 = Math_imul($322, $323)|0; $add$ptr450 = (($320) + ($mul449<<2)|0); $324 = $F2_5; $325 = $st$addr; $channels451 = ((($325)) + 8|0); $326 = HEAP32[$channels451>>2]|0; $327 = $window; $328 = $st$addr; $Fs452 = ((($328)) + 12|0); $329 = HEAP32[$Fs452>>2]|0; _smooth_fade($add$ptr444,$add$ptr447,$add$ptr450,$324,$326,$327,$329); } $330 = $transition; $tobool454 = ($330|0)!=(0); do { if ($tobool454) { $331 = $audiosize; $332 = $F5; $cmp456 = ($331|0)>=($332|0); if (!($cmp456)) { $360 = $pcm_transition; $361 = $pcm$addr; $362 = $pcm$addr; $363 = $F2_5; $364 = $st$addr; $channels482 = ((($364)) + 8|0); $365 = HEAP32[$channels482>>2]|0; $366 = $window; $367 = $st$addr; $Fs483 = ((($367)) + 12|0); $368 = HEAP32[$Fs483>>2]|0; _smooth_fade($360,$361,$362,$363,$365,$366,$368); break; } $i = 0; while(1) { $333 = $i; $334 = $st$addr; $channels460 = ((($334)) + 8|0); $335 = HEAP32[$channels460>>2]|0; $336 = $F2_5; $mul461 = Math_imul($335, $336)|0; $cmp462 = ($333|0)<($mul461|0); $337 = $pcm_transition; if (!($cmp462)) { break; } $338 = $i; $arrayidx465 = (($337) + ($338<<2)|0); $339 = +HEAPF32[$arrayidx465>>2]; $340 = $pcm$addr; $341 = $i; $arrayidx466 = (($340) + ($341<<2)|0); HEAPF32[$arrayidx466>>2] = $339; $342 = $i; $inc468 = (($342) + 1)|0; $i = $inc468; } $343 = $st$addr; $channels470 = ((($343)) + 8|0); $344 = HEAP32[$channels470>>2]|0; $345 = $F2_5; $mul471 = Math_imul($344, $345)|0; $add$ptr472 = (($337) + ($mul471<<2)|0); $346 = $pcm$addr; $347 = $st$addr; $channels473 = ((($347)) + 8|0); $348 = HEAP32[$channels473>>2]|0; $349 = $F2_5; $mul474 = Math_imul($348, $349)|0; $add$ptr475 = (($346) + ($mul474<<2)|0); $350 = $pcm$addr; $351 = $st$addr; $channels476 = ((($351)) + 8|0); $352 = HEAP32[$channels476>>2]|0; $353 = $F2_5; $mul477 = Math_imul($352, $353)|0; $add$ptr478 = (($350) + ($mul477<<2)|0); $354 = $F2_5; $355 = $st$addr; $channels479 = ((($355)) + 8|0); $356 = HEAP32[$channels479>>2]|0; $357 = $window; $358 = $st$addr; $Fs480 = ((($358)) + 12|0); $359 = HEAP32[$Fs480>>2]|0; _smooth_fade($add$ptr472,$add$ptr475,$add$ptr478,$354,$356,$357,$359); } } while(0); $369 = $st$addr; $decode_gain = ((($369)) + 40|0); $370 = HEAP32[$decode_gain>>2]|0; $tobool486 = ($370|0)!=(0); L180: do { if ($tobool486) { $371 = $st$addr; $decode_gain488 = ((($371)) + 40|0); $372 = HEAP32[$decode_gain488>>2]|0; $conv489 = (+($372|0)); $mul490 = 6.4881407888606191E-4 * $conv489; $conv491 = $mul490; $mul492 = 0.69314718055994529 * $conv491; $call493 = (+Math_exp((+$mul492))); $conv494 = $call493; $gain = $conv494; $i = 0; while(1) { $373 = $i; $374 = $frame_size$addr; $375 = $st$addr; $channels496 = ((($375)) + 8|0); $376 = HEAP32[$channels496>>2]|0; $mul497 = Math_imul($374, $376)|0; $cmp498 = ($373|0)<($mul497|0); if (!($cmp498)) { break L180; } $377 = $pcm$addr; $378 = $i; $arrayidx501 = (($377) + ($378<<2)|0); $379 = +HEAPF32[$arrayidx501>>2]; $380 = $gain; $mul502 = $379 * $380; $x = $mul502; $381 = $x; $382 = $pcm$addr; $383 = $i; $arrayidx503 = (($382) + ($383<<2)|0); HEAPF32[$arrayidx503>>2] = $381; $384 = $i; $inc505 = (($384) + 1)|0; $i = $inc505; } } } while(0); $385 = $len$addr; $cmp508 = ($385|0)<=(1); if ($cmp508) { $386 = $st$addr; $$sink11 = $386;$xor$sink = 0; } else { $rng = ((($dec)) + 28|0); $387 = HEAP32[$rng>>2]|0; $388 = HEAP32[$redundant_rng>>2]|0; $xor = $387 ^ $388; $389 = $st$addr; $$sink11 = $389;$xor$sink = $xor; } $rangeFinal512 = ((($$sink11)) + 84|0); HEAP32[$rangeFinal512>>2] = $xor$sink; $390 = $mode; $391 = $st$addr; $prev_mode514 = ((($391)) + 60|0); HEAP32[$prev_mode514>>2] = $390; $392 = $redundancy; $tobool515 = ($392|0)!=(0); if ($tobool515) { $393 = $celt_to_silk; $tobool516 = ($393|0)!=(0); $lnot = $tobool516 ^ 1; $394 = $lnot; } else { $394 = 0; } $land$ext = $394&1; $395 = $st$addr; $prev_redundancy517 = ((($395)) + 68|0); HEAP32[$prev_redundancy517>>2] = $land$ext; $396 = $celt_ret; $cmp518 = ($396|0)>=(0); if ($cmp518) { (__opus_false()|0); } $397 = $celt_ret; $cmp529 = ($397|0)<(0); $398 = $celt_ret; $399 = $audiosize; $cond534 = $cmp529 ? $398 : $399; $retval = $cond534; $cleanup$dest$slot = 1; } } while(0); $400 = $saved_stack; _llvm_stackrestore(($400|0)); $401 = $retval; STACKTOP = sp;return ($401|0); } function __opus_false() { var label = 0, sp = 0; sp = STACKTOP; return 0; } function _opus_packet_get_mode($data) { $data = $data|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $and = 0, $and3 = 0, $cmp = 0, $conv = 0, $conv2 = 0, $data$addr = 0, $mode = 0, $tobool = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $data$addr = $data; $0 = $data$addr; $1 = HEAP8[$0>>0]|0; $conv = $1&255; $and = $conv & 128; $tobool = ($and|0)!=(0); do { if ($tobool) { $mode = 1002; } else { $2 = $data$addr; $3 = HEAP8[$2>>0]|0; $conv2 = $3&255; $and3 = $conv2 & 96; $cmp = ($and3|0)==(96); if ($cmp) { $mode = 1001; break; } else { $mode = 1000; break; } } } while(0); $4 = $mode; STACKTOP = sp;return ($4|0); } function _opus_packet_get_bandwidth($data) { $data = $data|0; var $$add = 0, $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $add = 0, $add21 = 0, $and = 0, $and14 = 0, $and20 = 0, $and3 = 0, $and8 = 0, $bandwidth = 0, $cmp = 0, $cmp9 = 0, $cond = 0; var $conv = 0, $conv13 = 0, $conv2 = 0, $data$addr = 0, $shr = 0, $shr19 = 0, $tobool = 0, $tobool15 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $data$addr = $data; $0 = $data$addr; $1 = HEAP8[$0>>0]|0; $conv = $1&255; $and = $conv & 128; $tobool = ($and|0)!=(0); $2 = $data$addr; $3 = HEAP8[$2>>0]|0; $conv2 = $3&255; if ($tobool) { $shr = $conv2 >> 5; $and3 = $shr & 3; $add = (1102 + ($and3))|0; $bandwidth = $add; $4 = $bandwidth; $cmp = ($4|0)==(1102); $$add = $cmp ? 1101 : $add; $bandwidth = $$add; $7 = $bandwidth; STACKTOP = sp;return ($7|0); } $and8 = $conv2 & 96; $cmp9 = ($and8|0)==(96); $5 = $data$addr; $6 = HEAP8[$5>>0]|0; $conv13 = $6&255; if ($cmp9) { $and14 = $conv13 & 16; $tobool15 = ($and14|0)!=(0); $cond = $tobool15 ? 1105 : 1104; $bandwidth = $cond; $7 = $bandwidth; STACKTOP = sp;return ($7|0); } else { $shr19 = $conv13 >> 5; $and20 = $shr19 & 3; $add21 = (1101 + ($and20))|0; $bandwidth = $add21; $7 = $bandwidth; STACKTOP = sp;return ($7|0); } return (0)|0; } function _opus_packet_get_nb_channels($data) { $data = $data|0; var $0 = 0, $1 = 0, $and = 0, $cond = 0, $conv = 0, $data$addr = 0, $tobool = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $data$addr = $data; $0 = $data$addr; $1 = HEAP8[$0>>0]|0; $conv = $1&255; $and = $conv & 4; $tobool = ($and|0)!=(0); $cond = $tobool ? 2 : 1; STACKTOP = sp;return ($cond|0); } function _ec_tell($_this) { $_this = $_this|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $_this$addr = 0, $nbits_total = 0, $rng = 0, $sub = 0, $sub1 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $_this$addr = $_this; $0 = $_this$addr; $nbits_total = ((($0)) + 20|0); $1 = HEAP32[$nbits_total>>2]|0; $2 = $_this$addr; $rng = ((($2)) + 28|0); $3 = HEAP32[$rng>>2]|0; $4 = (Math_clz32(($3|0))|0); $sub = (32 - ($4))|0; $sub1 = (($1) - ($sub))|0; STACKTOP = sp;return ($sub1|0); } function _smooth_fade($in1,$in2,$out,$overlap,$channels,$window,$Fs) { $in1 = $in1|0; $in2 = $in2|0; $out = $out|0; $overlap = $overlap|0; $channels = $channels|0; $window = $window|0; $Fs = $Fs|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0.0, $13 = 0.0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0.0, $19 = 0.0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0.0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0.0, $9 = 0, $Fs$addr = 0, $add = 0, $add11 = 0, $add14 = 0.0, $add16 = 0, $arrayidx = 0, $arrayidx12 = 0, $arrayidx17 = 0, $arrayidx5 = 0; var $arrayidx8 = 0, $c = 0, $channels$addr = 0, $cmp = 0, $cmp2 = 0, $div = 0, $i = 0, $in1$addr = 0, $in2$addr = 0, $inc = 0, $inc18 = 0, $inc20 = 0, $mul = 0, $mul10 = 0, $mul13 = 0.0, $mul15 = 0, $mul4 = 0, $mul6 = 0.0, $mul7 = 0, $mul9 = 0.0; var $out$addr = 0, $overlap$addr = 0, $sub = 0.0, $w = 0.0, $window$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $in1$addr = $in1; $in2$addr = $in2; $out$addr = $out; $overlap$addr = $overlap; $channels$addr = $channels; $window$addr = $window; $Fs$addr = $Fs; $0 = $Fs$addr; $div = (48000 / ($0|0))&-1; $inc = $div; $c = 0; while(1) { $1 = $c; $2 = $channels$addr; $cmp = ($1|0)<($2|0); if (!($cmp)) { break; } $i = 0; while(1) { $3 = $i; $4 = $overlap$addr; $cmp2 = ($3|0)<($4|0); if (!($cmp2)) { break; } $5 = $window$addr; $6 = $i; $7 = $inc; $mul = Math_imul($6, $7)|0; $arrayidx = (($5) + ($mul<<2)|0); $8 = +HEAPF32[$arrayidx>>2]; $9 = $window$addr; $10 = $i; $11 = $inc; $mul4 = Math_imul($10, $11)|0; $arrayidx5 = (($9) + ($mul4<<2)|0); $12 = +HEAPF32[$arrayidx5>>2]; $mul6 = $8 * $12; $w = $mul6; $13 = $w; $14 = $in2$addr; $15 = $i; $16 = $channels$addr; $mul7 = Math_imul($15, $16)|0; $17 = $c; $add = (($mul7) + ($17))|0; $arrayidx8 = (($14) + ($add<<2)|0); $18 = +HEAPF32[$arrayidx8>>2]; $mul9 = $13 * $18; $19 = $w; $sub = 1.0 - $19; $20 = $in1$addr; $21 = $i; $22 = $channels$addr; $mul10 = Math_imul($21, $22)|0; $23 = $c; $add11 = (($mul10) + ($23))|0; $arrayidx12 = (($20) + ($add11<<2)|0); $24 = +HEAPF32[$arrayidx12>>2]; $mul13 = $sub * $24; $add14 = $mul9 + $mul13; $25 = $out$addr; $26 = $i; $27 = $channels$addr; $mul15 = Math_imul($26, $27)|0; $28 = $c; $add16 = (($mul15) + ($28))|0; $arrayidx17 = (($25) + ($add16<<2)|0); HEAPF32[$arrayidx17>>2] = $add14; $29 = $i; $inc18 = (($29) + 1)|0; $i = $inc18; } $30 = $c; $inc20 = (($30) + 1)|0; $c = $inc20; } STACKTOP = sp;return; } function _opus_packet_get_nb_frames($packet,$len) { $packet = $packet|0; $len = $len|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $and = 0, $and14 = 0, $arrayidx12 = 0, $cmp = 0, $cmp1 = 0, $cmp4 = 0, $cmp8 = 0, $conv = 0, $conv13 = 0, $count = 0, $len$addr = 0; var $packet$addr = 0, $retval = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $packet$addr = $packet; $len$addr = $len; $0 = $len$addr; $cmp = ($0|0)<(1); do { if ($cmp) { $retval = -1; } else { $1 = $packet$addr; $2 = HEAP8[$1>>0]|0; $conv = $2&255; $and = $conv & 3; $count = $and; $3 = $count; $cmp1 = ($3|0)==(0); if ($cmp1) { $retval = 1; break; } $4 = $count; $cmp4 = ($4|0)!=(3); if ($cmp4) { $retval = 2; break; } $5 = $len$addr; $cmp8 = ($5|0)<(2); if ($cmp8) { $retval = -4; break; } else { $6 = $packet$addr; $arrayidx12 = ((($6)) + 1|0); $7 = HEAP8[$arrayidx12>>0]|0; $conv13 = $7&255; $and14 = $conv13 & 63; $retval = $and14; break; } } } while(0); $8 = $retval; STACKTOP = sp;return ($8|0); } function _opus_decode_float($st,$data,$len,$pcm,$frame_size,$decode_fec) { $st = $st|0; $data = $data|0; $len = $len|0; $pcm = $pcm|0; $frame_size = $frame_size|0; $decode_fec = $decode_fec|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $call = 0, $cmp = 0, $data$addr = 0, $decode_fec$addr = 0, $frame_size$addr = 0, $len$addr = 0, $pcm$addr = 0, $retval = 0, $st$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $st$addr = $st; $data$addr = $data; $len$addr = $len; $pcm$addr = $pcm; $frame_size$addr = $frame_size; $decode_fec$addr = $decode_fec; $0 = $frame_size$addr; $cmp = ($0|0)<=(0); if ($cmp) { $retval = -1; $7 = $retval; STACKTOP = sp;return ($7|0); } else { $1 = $st$addr; $2 = $data$addr; $3 = $len$addr; $4 = $pcm$addr; $5 = $frame_size$addr; $6 = $decode_fec$addr; $call = (_opus_decode_native($1,$2,$3,$4,$5,$6,0,0,0)|0); $retval = $call; $7 = $retval; STACKTOP = sp;return ($7|0); } return (0)|0; } function _opus_decoder_destroy($st) { $st = $st|0; var $0 = 0, $st$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $st$addr = $st; $0 = $st$addr; _opus_free($0); STACKTOP = sp;return; } function _opus_encoder_get_size($channels) { $channels = $channels|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $add = 0, $add7 = 0, $call = 0, $call4 = 0, $call5 = 0, $call6 = 0, $celtEncSizeBytes = 0, $channels$addr = 0, $cmp = 0, $cmp1 = 0, $or$cond = 0, $ret = 0; var $retval = 0, $silkEncSizeBytes = 0, $tobool = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $silkEncSizeBytes = sp + 8|0; $channels$addr = $channels; $0 = $channels$addr; $cmp = ($0|0)<(1); $1 = $channels$addr; $cmp1 = ($1|0)>(2); $or$cond = $cmp | $cmp1; if ($or$cond) { $retval = 0; $7 = $retval; STACKTOP = sp;return ($7|0); } $call = (_silk_Get_Encoder_Size($silkEncSizeBytes)|0); $ret = $call; $2 = $ret; $tobool = ($2|0)!=(0); if ($tobool) { $retval = 0; $7 = $retval; STACKTOP = sp;return ($7|0); } else { $3 = HEAP32[$silkEncSizeBytes>>2]|0; $call4 = (_align_7($3)|0); HEAP32[$silkEncSizeBytes>>2] = $call4; $4 = $channels$addr; $call5 = (_celt_encoder_get_size($4)|0); $celtEncSizeBytes = $call5; $call6 = (_align_7(18136)|0); $5 = HEAP32[$silkEncSizeBytes>>2]|0; $add = (($call6) + ($5))|0; $6 = $celtEncSizeBytes; $add7 = (($add) + ($6))|0; $retval = $add7; $7 = $retval; STACKTOP = sp;return ($7|0); } return (0)|0; } function _align_7($i) { $i = $i|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $add = 0, $alignment = 0, $div = 0, $i$addr = 0, $mul = 0, $sub = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $i$addr = $i; $alignment = 4; $0 = $i$addr; $1 = $alignment; $add = (($0) + ($1))|0; $sub = (($add) - 1)|0; $2 = $alignment; $div = (($sub>>>0) / ($2>>>0))&-1; $3 = $alignment; $mul = Math_imul($div, $3)|0; STACKTOP = sp;return ($mul|0); } function _opus_encoder_init($st,$Fs,$channels,$application) { $st = $st|0; $Fs = $Fs|0; $channels = $channels|0; $application = $application|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $API_sampleRate = 0; var $Fs$addr = 0, $Fs27 = 0, $Fs36 = 0, $Fs64 = 0, $Fs65 = 0, $Fs68 = 0, $add = 0, $add$ptr = 0, $add$ptr25 = 0, $add62 = 0, $analysis = 0, $analysis70 = 0, $application$addr = 0, $application63 = 0, $application69 = 0, $application71 = 0, $arch = 0, $arch29 = 0, $arch49 = 0, $bandwidth = 0; var $bitRate = 0, $bitrate_bps = 0, $call = 0, $call17 = 0, $call20 = 0, $call21 = 0, $call28 = 0, $call30 = 0, $call50 = 0, $call67 = 0, $celt_enc = 0, $channels$addr = 0, $channels26 = 0, $cmp = 0, $cmp1 = 0, $cmp10 = 0, $cmp12 = 0, $cmp14 = 0, $cmp16 = 0, $cmp3 = 0; var $cmp5 = 0, $cmp51 = 0, $cmp7 = 0, $cmp8 = 0, $complexity = 0, $complexity59 = 0, $delay_compensation = 0, $desiredInternalSampleRate = 0, $div = 0, $div66 = 0, $encoder_buffer = 0, $err = 0, $first = 0, $force_channels = 0, $hybrid_stereo_width_Q14 = 0, $lsb_depth = 0, $maxInternalSampleRate = 0, $max_bandwidth = 0, $minInternalSampleRate = 0, $mode = 0; var $mul = 0, $mul61 = 0, $nChannelsInternal = 0, $or$cond = 0, $or$cond1 = 0, $or$cond2 = 0, $or$cond3 = 0, $or$cond4 = 0, $or$cond5 = 0, $or$cond6 = 0, $packetLossPercentage = 0, $payloadSize_ms = 0, $prev_HB_gain = 0, $reducedDependency = 0, $ret = 0, $retval = 0, $shl = 0, $signal_type = 0, $silkEncSizeBytes = 0, $silk_enc = 0; var $silk_enc_offset = 0, $silk_enc_offset22 = 0, $silk_enc_offset23 = 0, $silk_mode = 0, $silk_mode34 = 0, $silk_mode35 = 0, $silk_mode37 = 0, $silk_mode38 = 0, $silk_mode39 = 0, $silk_mode40 = 0, $silk_mode41 = 0, $silk_mode42 = 0, $silk_mode43 = 0, $silk_mode44 = 0, $silk_mode45 = 0, $silk_mode46 = 0, $silk_mode47 = 0, $silk_mode48 = 0, $silk_mode58 = 0, $st$addr = 0; var $stream_channels = 0, $tobool = 0, $tobool31 = 0, $useCBR = 0, $useDTX = 0, $useInBandFEC = 0, $use_vbr = 0, $user_bandwidth = 0, $user_bitrate_bps = 0, $user_forced_mode = 0, $vararg_buffer = 0, $vararg_buffer7 = 0, $variable_HP_smth2_Q15 = 0, $variable_duration = 0, $vbr_constraint = 0, $voice_ratio = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $vararg_buffer7 = sp + 8|0; $vararg_buffer = sp; $silkEncSizeBytes = sp + 12|0; $st$addr = $st; $Fs$addr = $Fs; $channels$addr = $channels; $application$addr = $application; $0 = $Fs$addr; $cmp = ($0|0)!=(48000); $1 = $Fs$addr; $cmp1 = ($1|0)!=(24000); $or$cond = $cmp & $cmp1; $2 = $Fs$addr; $cmp3 = ($2|0)!=(16000); $or$cond1 = $or$cond & $cmp3; $3 = $Fs$addr; $cmp5 = ($3|0)!=(12000); $or$cond2 = $or$cond1 & $cmp5; $4 = $Fs$addr; $cmp7 = ($4|0)!=(8000); $or$cond3 = $or$cond2 & $cmp7; if (!($or$cond3)) { $5 = $channels$addr; $cmp8 = ($5|0)!=(1); $6 = $channels$addr; $cmp10 = ($6|0)!=(2); $or$cond4 = $cmp8 & $cmp10; if (!($or$cond4)) { $7 = $application$addr; $cmp12 = ($7|0)!=(2048); $8 = $application$addr; $cmp14 = ($8|0)!=(2049); $or$cond5 = $cmp12 & $cmp14; $9 = $application$addr; $cmp16 = ($9|0)!=(2051); $or$cond6 = $or$cond5 & $cmp16; if (!($or$cond6)) { $10 = $st$addr; $11 = $channels$addr; $call = (_opus_encoder_get_size($11)|0); $mul = $call; _memset(($10|0),0,($mul|0))|0; $call17 = (_silk_Get_Encoder_Size($silkEncSizeBytes)|0); $ret = $call17; $12 = $ret; $tobool = ($12|0)!=(0); if ($tobool) { $retval = -1; $98 = $retval; STACKTOP = sp;return ($98|0); } $13 = HEAP32[$silkEncSizeBytes>>2]|0; $call20 = (_align_7($13)|0); HEAP32[$silkEncSizeBytes>>2] = $call20; $call21 = (_align_7(18136)|0); $14 = $st$addr; $silk_enc_offset = ((($14)) + 4|0); HEAP32[$silk_enc_offset>>2] = $call21; $15 = $st$addr; $silk_enc_offset22 = ((($15)) + 4|0); $16 = HEAP32[$silk_enc_offset22>>2]|0; $17 = HEAP32[$silkEncSizeBytes>>2]|0; $add = (($16) + ($17))|0; $18 = $st$addr; HEAP32[$18>>2] = $add; $19 = $st$addr; $20 = $st$addr; $silk_enc_offset23 = ((($20)) + 4|0); $21 = HEAP32[$silk_enc_offset23>>2]|0; $add$ptr = (($19) + ($21)|0); $silk_enc = $add$ptr; $22 = $st$addr; $23 = $st$addr; $24 = HEAP32[$23>>2]|0; $add$ptr25 = (($22) + ($24)|0); $celt_enc = $add$ptr25; $25 = $channels$addr; $26 = $st$addr; $channels26 = ((($26)) + 112|0); HEAP32[$channels26>>2] = $25; $27 = $st$addr; $stream_channels = ((($27)) + 14188|0); HEAP32[$stream_channels>>2] = $25; $28 = $Fs$addr; $29 = $st$addr; $Fs27 = ((($29)) + 144|0); HEAP32[$Fs27>>2] = $28; $call28 = (_opus_select_arch()|0); $30 = $st$addr; $arch = ((($30)) + 180|0); HEAP32[$arch>>2] = $call28; $31 = $silk_enc; $32 = $st$addr; $arch29 = ((($32)) + 180|0); $33 = HEAP32[$arch29>>2]|0; $34 = $st$addr; $silk_mode = ((($34)) + 8|0); $call30 = (_silk_InitEncoder($31,$33,$silk_mode)|0); $ret = $call30; $35 = $ret; $tobool31 = ($35|0)!=(0); if ($tobool31) { $retval = -3; $98 = $retval; STACKTOP = sp;return ($98|0); } $36 = $channels$addr; $37 = $st$addr; $silk_mode34 = ((($37)) + 8|0); HEAP32[$silk_mode34>>2] = $36; $38 = $channels$addr; $39 = $st$addr; $silk_mode35 = ((($39)) + 8|0); $nChannelsInternal = ((($silk_mode35)) + 4|0); HEAP32[$nChannelsInternal>>2] = $38; $40 = $st$addr; $Fs36 = ((($40)) + 144|0); $41 = HEAP32[$Fs36>>2]|0; $42 = $st$addr; $silk_mode37 = ((($42)) + 8|0); $API_sampleRate = ((($silk_mode37)) + 8|0); HEAP32[$API_sampleRate>>2] = $41; $43 = $st$addr; $silk_mode38 = ((($43)) + 8|0); $maxInternalSampleRate = ((($silk_mode38)) + 12|0); HEAP32[$maxInternalSampleRate>>2] = 16000; $44 = $st$addr; $silk_mode39 = ((($44)) + 8|0); $minInternalSampleRate = ((($silk_mode39)) + 16|0); HEAP32[$minInternalSampleRate>>2] = 8000; $45 = $st$addr; $silk_mode40 = ((($45)) + 8|0); $desiredInternalSampleRate = ((($silk_mode40)) + 20|0); HEAP32[$desiredInternalSampleRate>>2] = 16000; $46 = $st$addr; $silk_mode41 = ((($46)) + 8|0); $payloadSize_ms = ((($silk_mode41)) + 24|0); HEAP32[$payloadSize_ms>>2] = 20; $47 = $st$addr; $silk_mode42 = ((($47)) + 8|0); $bitRate = ((($silk_mode42)) + 28|0); HEAP32[$bitRate>>2] = 25000; $48 = $st$addr; $silk_mode43 = ((($48)) + 8|0); $packetLossPercentage = ((($silk_mode43)) + 32|0); HEAP32[$packetLossPercentage>>2] = 0; $49 = $st$addr; $silk_mode44 = ((($49)) + 8|0); $complexity = ((($silk_mode44)) + 36|0); HEAP32[$complexity>>2] = 9; $50 = $st$addr; $silk_mode45 = ((($50)) + 8|0); $useInBandFEC = ((($silk_mode45)) + 40|0); HEAP32[$useInBandFEC>>2] = 0; $51 = $st$addr; $silk_mode46 = ((($51)) + 8|0); $useDTX = ((($silk_mode46)) + 48|0); HEAP32[$useDTX>>2] = 0; $52 = $st$addr; $silk_mode47 = ((($52)) + 8|0); $useCBR = ((($silk_mode47)) + 52|0); HEAP32[$useCBR>>2] = 0; $53 = $st$addr; $silk_mode48 = ((($53)) + 8|0); $reducedDependency = ((($silk_mode48)) + 68|0); HEAP32[$reducedDependency>>2] = 0; $54 = $celt_enc; $55 = $Fs$addr; $56 = $channels$addr; $57 = $st$addr; $arch49 = ((($57)) + 180|0); $58 = HEAP32[$arch49>>2]|0; $call50 = (_celt_encoder_init($54,$55,$56,$58)|0); $err = $call50; $59 = $err; $cmp51 = ($59|0)!=(0); if ($cmp51) { $retval = -3; $98 = $retval; STACKTOP = sp;return ($98|0); } else { $60 = $celt_enc; HEAP32[$vararg_buffer>>2] = 0; (_opus_custom_encoder_ctl($60,10016,$vararg_buffer)|0); $61 = $celt_enc; $62 = $st$addr; $silk_mode58 = ((($62)) + 8|0); $complexity59 = ((($silk_mode58)) + 36|0); $63 = HEAP32[$complexity59>>2]|0; HEAP32[$vararg_buffer7>>2] = $63; (_opus_custom_encoder_ctl($61,4010,$vararg_buffer7)|0); $64 = $st$addr; $use_vbr = ((($64)) + 148|0); HEAP32[$use_vbr>>2] = 1; $65 = $st$addr; $vbr_constraint = ((($65)) + 152|0); HEAP32[$vbr_constraint>>2] = 1; $66 = $st$addr; $user_bitrate_bps = ((($66)) + 164|0); HEAP32[$user_bitrate_bps>>2] = -1000; $67 = $Fs$addr; $68 = $channels$addr; $mul61 = Math_imul($67, $68)|0; $add62 = (3000 + ($mul61))|0; $69 = $st$addr; $bitrate_bps = ((($69)) + 160|0); HEAP32[$bitrate_bps>>2] = $add62; $70 = $application$addr; $71 = $st$addr; $application63 = ((($71)) + 108|0); HEAP32[$application63>>2] = $70; $72 = $st$addr; $signal_type = ((($72)) + 124|0); HEAP32[$signal_type>>2] = -1000; $73 = $st$addr; $user_bandwidth = ((($73)) + 128|0); HEAP32[$user_bandwidth>>2] = -1000; $74 = $st$addr; $max_bandwidth = ((($74)) + 132|0); HEAP32[$max_bandwidth>>2] = 1105; $75 = $st$addr; $force_channels = ((($75)) + 120|0); HEAP32[$force_channels>>2] = -1000; $76 = $st$addr; $user_forced_mode = ((($76)) + 136|0); HEAP32[$user_forced_mode>>2] = -1000; $77 = $st$addr; $voice_ratio = ((($77)) + 140|0); HEAP32[$voice_ratio>>2] = -1; $78 = $st$addr; $Fs64 = ((($78)) + 144|0); $79 = HEAP32[$Fs64>>2]|0; $div = (($79|0) / 100)&-1; $80 = $st$addr; $encoder_buffer = ((($80)) + 172|0); HEAP32[$encoder_buffer>>2] = $div; $81 = $st$addr; $lsb_depth = ((($81)) + 168|0); HEAP32[$lsb_depth>>2] = 24; $82 = $st$addr; $variable_duration = ((($82)) + 156|0); HEAP32[$variable_duration>>2] = 5000; $83 = $st$addr; $Fs65 = ((($83)) + 144|0); $84 = HEAP32[$Fs65>>2]|0; $div66 = (($84|0) / 250)&-1; $85 = $st$addr; $delay_compensation = ((($85)) + 116|0); HEAP32[$delay_compensation>>2] = $div66; $86 = $st$addr; $hybrid_stereo_width_Q14 = ((($86)) + 14192|0); HEAP16[$hybrid_stereo_width_Q14>>1] = 16384; $87 = $st$addr; $prev_HB_gain = ((($87)) + 14200|0); HEAPF32[$prev_HB_gain>>2] = 1.0; $call67 = (_silk_lin2log(60)|0); $shl = $call67 << 8; $88 = $st$addr; $variable_HP_smth2_Q15 = ((($88)) + 14196|0); HEAP32[$variable_HP_smth2_Q15>>2] = $shl; $89 = $st$addr; $first = ((($89)) + 14248|0); HEAP32[$first>>2] = 1; $90 = $st$addr; $mode = ((($90)) + 14220|0); HEAP32[$mode>>2] = 1001; $91 = $st$addr; $bandwidth = ((($91)) + 14236|0); HEAP32[$bandwidth>>2] = 1105; $92 = $st$addr; $analysis = ((($92)) + 188|0); $93 = $st$addr; $Fs68 = ((($93)) + 144|0); $94 = HEAP32[$Fs68>>2]|0; _tonality_analysis_init($analysis,$94); $95 = $st$addr; $application69 = ((($95)) + 108|0); $96 = HEAP32[$application69>>2]|0; $97 = $st$addr; $analysis70 = ((($97)) + 188|0); $application71 = ((($analysis70)) + 4|0); HEAP32[$application71>>2] = $96; $retval = 0; $98 = $retval; STACKTOP = sp;return ($98|0); } } } } $retval = -1; $98 = $retval; STACKTOP = sp;return ($98|0); } function _opus_encoder_create($Fs,$channels,$application,$error) { $Fs = $Fs|0; $channels = $channels|0; $application = $application|0; $error = $error|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $Fs$addr = 0, $application$addr = 0, $call = 0, $call19 = 0, $call26 = 0, $channels$addr = 0, $cmp = 0, $cmp1 = 0, $cmp10 = 0, $cmp12 = 0, $cmp14 = 0, $cmp16 = 0, $cmp20 = 0; var $cmp3 = 0, $cmp30 = 0, $cmp5 = 0, $cmp7 = 0, $cmp8 = 0, $error$addr = 0, $or$cond = 0, $or$cond1 = 0, $or$cond2 = 0, $or$cond3 = 0, $or$cond4 = 0, $or$cond5 = 0, $or$cond6 = 0, $ret = 0, $retval = 0, $st = 0, $tobool = 0, $tobool22 = 0, $tobool27 = 0, label = 0; var sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $Fs$addr = $Fs; $channels$addr = $channels; $application$addr = $application; $error$addr = $error; $0 = $Fs$addr; $cmp = ($0|0)!=(48000); $1 = $Fs$addr; $cmp1 = ($1|0)!=(24000); $or$cond = $cmp & $cmp1; $2 = $Fs$addr; $cmp3 = ($2|0)!=(16000); $or$cond1 = $or$cond & $cmp3; $3 = $Fs$addr; $cmp5 = ($3|0)!=(12000); $or$cond2 = $or$cond1 & $cmp5; $4 = $Fs$addr; $cmp7 = ($4|0)!=(8000); $or$cond3 = $or$cond2 & $cmp7; if (!($or$cond3)) { $5 = $channels$addr; $cmp8 = ($5|0)!=(1); $6 = $channels$addr; $cmp10 = ($6|0)!=(2); $or$cond4 = $cmp8 & $cmp10; if (!($or$cond4)) { $7 = $application$addr; $cmp12 = ($7|0)!=(2048); $8 = $application$addr; $cmp14 = ($8|0)!=(2049); $or$cond5 = $cmp12 & $cmp14; $9 = $application$addr; $cmp16 = ($9|0)!=(2051); $or$cond6 = $or$cond5 & $cmp16; if (!($or$cond6)) { $12 = $channels$addr; $call = (_opus_encoder_get_size($12)|0); $call19 = (_opus_alloc_10($call)|0); $st = $call19; $13 = $st; $cmp20 = ($13|0)==(0|0); if ($cmp20) { $14 = $error$addr; $tobool22 = ($14|0)!=(0|0); if ($tobool22) { $15 = $error$addr; HEAP32[$15>>2] = -7; } $retval = 0; $26 = $retval; STACKTOP = sp;return ($26|0); } $16 = $st; $17 = $Fs$addr; $18 = $channels$addr; $19 = $application$addr; $call26 = (_opus_encoder_init($16,$17,$18,$19)|0); $ret = $call26; $20 = $error$addr; $tobool27 = ($20|0)!=(0|0); if ($tobool27) { $21 = $ret; $22 = $error$addr; HEAP32[$22>>2] = $21; } $23 = $ret; $cmp30 = ($23|0)!=(0); if ($cmp30) { $24 = $st; _opus_free_11($24); $st = 0; } $25 = $st; $retval = $25; $26 = $retval; STACKTOP = sp;return ($26|0); } } } $10 = $error$addr; $tobool = ($10|0)!=(0|0); if ($tobool) { $11 = $error$addr; HEAP32[$11>>2] = -1; } $retval = 0; $26 = $retval; STACKTOP = sp;return ($26|0); } function _opus_alloc_10($size) { $size = $size|0; var $0 = 0, $call = 0, $size$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $size$addr = $size; $0 = $size$addr; $call = (_malloc($0)|0); STACKTOP = sp;return ($call|0); } function _opus_free_11($ptr) { $ptr = $ptr|0; var $0 = 0, $ptr$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $ptr$addr = $ptr; $0 = $ptr$addr; _free($0); STACKTOP = sp;return; } function _downmix_float($_x,$y,$subframe,$offset,$c1,$c2,$C) { $_x = $_x|0; $y = $y|0; $subframe = $subframe|0; $offset = $offset|0; $c1 = $c1|0; $c2 = $c2|0; $C = $C|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0.0, $21 = 0, $22 = 0, $23 = 0.0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0.0, $36 = 0, $37 = 0, $38 = 0.0, $39 = 0, $4 = 0, $40 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0.0; var $9 = 0, $C$addr = 0, $_x$addr = 0, $add = 0, $add1 = 0, $add10 = 0, $add14 = 0.0, $add26 = 0, $add28 = 0, $add32 = 0.0, $add8 = 0, $arrayidx = 0, $arrayidx11 = 0, $arrayidx13 = 0, $arrayidx29 = 0, $arrayidx3 = 0, $arrayidx31 = 0, $c = 0, $c1$addr = 0, $c2$addr = 0; var $cmp = 0, $cmp18 = 0, $cmp21 = 0, $cmp24 = 0, $cmp4 = 0, $cmp6 = 0, $inc = 0, $inc16 = 0, $inc34 = 0, $inc37 = 0, $j = 0, $mul = 0, $mul12 = 0.0, $mul2 = 0.0, $mul27 = 0, $mul30 = 0.0, $mul9 = 0, $offset$addr = 0, $subframe$addr = 0, $x = 0; var $y$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $_x$addr = $_x; $y$addr = $y; $subframe$addr = $subframe; $offset$addr = $offset; $c1$addr = $c1; $c2$addr = $c2; $C$addr = $C; $0 = $_x$addr; $x = $0; $j = 0; while(1) { $1 = $j; $2 = $subframe$addr; $cmp = ($1|0)<($2|0); if (!($cmp)) { break; } $3 = $x; $4 = $j; $5 = $offset$addr; $add = (($4) + ($5))|0; $6 = $C$addr; $mul = Math_imul($add, $6)|0; $7 = $c1$addr; $add1 = (($mul) + ($7))|0; $arrayidx = (($3) + ($add1<<2)|0); $8 = +HEAPF32[$arrayidx>>2]; $mul2 = $8 * 32768.0; $9 = $y$addr; $10 = $j; $arrayidx3 = (($9) + ($10<<2)|0); HEAPF32[$arrayidx3>>2] = $mul2; $11 = $j; $inc = (($11) + 1)|0; $j = $inc; } $12 = $c2$addr; $cmp4 = ($12|0)>(-1); if ($cmp4) { $j = 0; while(1) { $13 = $j; $14 = $subframe$addr; $cmp6 = ($13|0)<($14|0); if (!($cmp6)) { break; } $15 = $x; $16 = $j; $17 = $offset$addr; $add8 = (($16) + ($17))|0; $18 = $C$addr; $mul9 = Math_imul($add8, $18)|0; $19 = $c2$addr; $add10 = (($mul9) + ($19))|0; $arrayidx11 = (($15) + ($add10<<2)|0); $20 = +HEAPF32[$arrayidx11>>2]; $mul12 = $20 * 32768.0; $21 = $y$addr; $22 = $j; $arrayidx13 = (($21) + ($22<<2)|0); $23 = +HEAPF32[$arrayidx13>>2]; $add14 = $23 + $mul12; HEAPF32[$arrayidx13>>2] = $add14; $24 = $j; $inc16 = (($24) + 1)|0; $j = $inc16; } STACKTOP = sp;return; } $25 = $c2$addr; $cmp18 = ($25|0)==(-2); if (!($cmp18)) { STACKTOP = sp;return; } $c = 1; while(1) { $26 = $c; $27 = $C$addr; $cmp21 = ($26|0)<($27|0); if (!($cmp21)) { break; } $j = 0; while(1) { $28 = $j; $29 = $subframe$addr; $cmp24 = ($28|0)<($29|0); if (!($cmp24)) { break; } $30 = $x; $31 = $j; $32 = $offset$addr; $add26 = (($31) + ($32))|0; $33 = $C$addr; $mul27 = Math_imul($add26, $33)|0; $34 = $c; $add28 = (($mul27) + ($34))|0; $arrayidx29 = (($30) + ($add28<<2)|0); $35 = +HEAPF32[$arrayidx29>>2]; $mul30 = $35 * 32768.0; $36 = $y$addr; $37 = $j; $arrayidx31 = (($36) + ($37<<2)|0); $38 = +HEAPF32[$arrayidx31>>2]; $add32 = $38 + $mul30; HEAPF32[$arrayidx31>>2] = $add32; $39 = $j; $inc34 = (($39) + 1)|0; $j = $inc34; } $40 = $c; $inc37 = (($40) + 1)|0; $c = $inc37; } STACKTOP = sp;return; } function _frame_size_select($frame_size,$variable_duration,$Fs) { $frame_size = $frame_size|0; $variable_duration = $variable_duration|0; $Fs = $Fs|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $Fs$addr = 0, $cmp = 0, $cmp1 = 0, $cmp17 = 0, $cmp21 = 0, $cmp24 = 0, $cmp27 = 0; var $cmp3 = 0, $cmp30 = 0, $cmp33 = 0, $cmp37 = 0, $cmp4 = 0, $cmp41 = 0, $cmp45 = 0, $cmp49 = 0, $cmp6 = 0, $div = 0, $div12 = 0, $div8 = 0, $frame_size$addr = 0, $mul = 0, $mul20 = 0, $mul23 = 0, $mul26 = 0, $mul29 = 0, $mul32 = 0, $mul35 = 0; var $mul36 = 0, $mul39 = 0, $mul40 = 0, $mul43 = 0, $mul44 = 0, $mul47 = 0, $mul48 = 0, $new_size = 0, $or$cond = 0, $retval = 0, $shl = 0, $sub = 0, $sub10 = 0, $sub11 = 0, $variable_duration$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $frame_size$addr = $frame_size; $variable_duration$addr = $variable_duration; $Fs$addr = $Fs; $0 = $frame_size$addr; $1 = $Fs$addr; $div = (($1|0) / 400)&-1; $cmp = ($0|0)<($div|0); if ($cmp) { $retval = -1; $32 = $retval; STACKTOP = sp;return ($32|0); } $2 = $variable_duration$addr; $cmp1 = ($2|0)==(5000); do { if ($cmp1) { $3 = $frame_size$addr; $new_size = $3; } else { $4 = $variable_duration$addr; $cmp3 = ($4|0)>=(5001); $5 = $variable_duration$addr; $cmp4 = ($5|0)<=(5009); $or$cond = $cmp3 & $cmp4; if (!($or$cond)) { $retval = -1; $32 = $retval; STACKTOP = sp;return ($32|0); } $6 = $variable_duration$addr; $cmp6 = ($6|0)<=(5005); if ($cmp6) { $7 = $Fs$addr; $div8 = (($7|0) / 400)&-1; $8 = $variable_duration$addr; $sub = (($8) - 5001)|0; $shl = $div8 << $sub; $new_size = $shl; break; } else { $9 = $variable_duration$addr; $sub10 = (($9) - 5001)|0; $sub11 = (($sub10) - 2)|0; $10 = $Fs$addr; $mul = Math_imul($sub11, $10)|0; $div12 = (($mul|0) / 50)&-1; $new_size = $div12; break; } } } while(0); $11 = $new_size; $12 = $frame_size$addr; $cmp17 = ($11|0)>($12|0); if ($cmp17) { $retval = -1; $32 = $retval; STACKTOP = sp;return ($32|0); } $13 = $new_size; $mul20 = ($13*400)|0; $14 = $Fs$addr; $cmp21 = ($mul20|0)!=($14|0); if ($cmp21) { $15 = $new_size; $mul23 = ($15*200)|0; $16 = $Fs$addr; $cmp24 = ($mul23|0)!=($16|0); if ($cmp24) { $17 = $new_size; $mul26 = ($17*100)|0; $18 = $Fs$addr; $cmp27 = ($mul26|0)!=($18|0); if ($cmp27) { $19 = $new_size; $mul29 = ($19*50)|0; $20 = $Fs$addr; $cmp30 = ($mul29|0)!=($20|0); if ($cmp30) { $21 = $new_size; $mul32 = ($21*25)|0; $22 = $Fs$addr; $cmp33 = ($mul32|0)!=($22|0); if ($cmp33) { $23 = $new_size; $mul35 = ($23*50)|0; $24 = $Fs$addr; $mul36 = ($24*3)|0; $cmp37 = ($mul35|0)!=($mul36|0); if ($cmp37) { $25 = $new_size; $mul39 = ($25*50)|0; $26 = $Fs$addr; $mul40 = $26<<2; $cmp41 = ($mul39|0)!=($mul40|0); if ($cmp41) { $27 = $new_size; $mul43 = ($27*50)|0; $28 = $Fs$addr; $mul44 = ($28*5)|0; $cmp45 = ($mul43|0)!=($mul44|0); if ($cmp45) { $29 = $new_size; $mul47 = ($29*50)|0; $30 = $Fs$addr; $mul48 = ($30*6)|0; $cmp49 = ($mul47|0)!=($mul48|0); if ($cmp49) { $retval = -1; $32 = $retval; STACKTOP = sp;return ($32|0); } } } } } } } } } $31 = $new_size; $retval = $31; $32 = $retval; STACKTOP = sp;return ($32|0); } function _compute_stereo_width($pcm,$frame_size,$Fs,$mem) { $pcm = $pcm|0; $frame_size = $frame_size|0; $Fs = $Fs|0; $mem = $mem|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0.0, $101 = 0, $102 = 0.0, $103 = 0, $104 = 0, $105 = 0.0, $106 = 0, $107 = 0.0, $108 = 0, $109 = 0, $11 = 0.0, $110 = 0.0, $111 = 0, $112 = 0.0, $113 = 0, $114 = 0.0, $115 = 0; var $116 = 0.0, $117 = 0, $118 = 0.0, $119 = 0.0, $12 = 0.0, $120 = 0.0, $121 = 0, $122 = 0.0, $123 = 0.0, $124 = 0.0, $125 = 0, $126 = 0.0, $127 = 0.0, $128 = 0.0, $129 = 0, $13 = 0.0, $130 = 0, $131 = 0.0, $132 = 0.0, $133 = 0.0; var $134 = 0.0, $135 = 0.0, $136 = 0.0, $137 = 0.0, $138 = 0.0, $139 = 0.0, $14 = 0.0, $140 = 0.0, $141 = 0.0, $142 = 0, $143 = 0.0, $144 = 0, $145 = 0, $146 = 0.0, $147 = 0, $148 = 0.0, $149 = 0, $15 = 0.0, $150 = 0, $151 = 0.0; var $152 = 0, $153 = 0.0, $154 = 0, $155 = 0.0, $156 = 0, $157 = 0, $158 = 0.0, $159 = 0, $16 = 0.0, $160 = 0.0, $17 = 0.0, $18 = 0, $19 = 0, $2 = 0, $20 = 0.0, $21 = 0, $22 = 0, $23 = 0.0, $24 = 0.0, $25 = 0.0; var $26 = 0.0, $27 = 0.0, $28 = 0.0, $29 = 0.0, $3 = 0, $30 = 0.0, $31 = 0.0, $32 = 0.0, $33 = 0, $34 = 0, $35 = 0.0, $36 = 0, $37 = 0, $38 = 0.0, $39 = 0.0, $4 = 0, $40 = 0.0, $41 = 0.0, $42 = 0.0, $43 = 0.0; var $44 = 0.0, $45 = 0.0, $46 = 0.0, $47 = 0.0, $48 = 0, $49 = 0, $5 = 0, $50 = 0.0, $51 = 0, $52 = 0, $53 = 0.0, $54 = 0.0, $55 = 0.0, $56 = 0.0, $57 = 0.0, $58 = 0.0, $59 = 0.0, $6 = 0, $60 = 0.0, $61 = 0.0; var $62 = 0.0, $63 = 0.0, $64 = 0.0, $65 = 0.0, $66 = 0.0, $67 = 0.0, $68 = 0.0, $69 = 0, $7 = 0, $70 = 0.0, $71 = 0.0, $72 = 0.0, $73 = 0.0, $74 = 0.0, $75 = 0.0, $76 = 0.0, $77 = 0.0, $78 = 0, $79 = 0.0, $8 = 0.0; var $80 = 0, $81 = 0.0, $82 = 0.0, $83 = 0.0, $84 = 0, $85 = 0.0, $86 = 0, $87 = 0.0, $88 = 0.0, $89 = 0.0, $9 = 0, $90 = 0, $91 = 0.0, $92 = 0, $93 = 0.0, $94 = 0, $95 = 0.0, $96 = 0, $97 = 0.0, $98 = 0; var $99 = 0, $Fs$addr = 0, $XY = 0, $XY125 = 0, $XY130 = 0, $XY135 = 0, $XY136 = 0, $XY66 = 0, $XY81 = 0, $XY86 = 0, $XY89 = 0, $YY = 0, $YY100 = 0, $YY106 = 0, $YY106$sink = 0, $YY115 = 0, $YY70 = 0, $YY90 = 0, $YY95 = 0, $YY98 = 0; var $add = 0, $add11 = 0, $add138 = 0.0, $add14 = 0, $add145 = 0.0, $add146 = 0.0, $add158 = 0.0, $add17 = 0.0, $add19 = 0.0, $add21 = 0.0, $add23 = 0, $add26 = 0, $add29 = 0.0, $add31 = 0.0, $add33 = 0.0, $add35 = 0, $add38 = 0, $add41 = 0.0, $add43 = 0.0, $add45 = 0.0; var $add46 = 0.0, $add47 = 0.0, $add48 = 0.0, $add49 = 0, $add63 = 0.0, $add67 = 0.0, $add71 = 0.0, $arrayidx = 0, $arrayidx12 = 0, $arrayidx15 = 0, $arrayidx24 = 0, $arrayidx27 = 0, $arrayidx36 = 0, $arrayidx39 = 0, $arrayidx6 = 0, $call = 0.0, $call117 = 0.0, $call120 = 0.0, $call123 = 0.0, $call142 = 0.0; var $call151 = 0.0, $cmp = 0, $cmp101 = 0, $cmp109 = 0, $cmp127 = 0, $cmp163 = 0, $cmp178 = 0, $cmp3 = 0, $cmp50 = 0, $cmp52 = 0, $cmp55 = 0, $cmp58 = 0, $cmp73 = 0, $cmp82 = 0, $cmp91 = 0, $cond = 0, $cond134 = 0.0, $cond173 = 0.0, $cond185 = 0.0, $cond79 = 0.0; var $cond88 = 0.0, $cond97 = 0.0, $conv = 0.0, $conv113 = 0.0, $conv114 = 0.0, $conv116 = 0.0, $conv118 = 0.0, $conv119 = 0.0, $conv121 = 0.0, $conv122 = 0.0, $conv124 = 0.0, $conv141 = 0.0, $conv143 = 0.0, $conv150 = 0.0, $conv152 = 0.0, $conv155 = 0.0, $conv159 = 0.0, $conv167 = 0.0, $corr = 0.0, $div = 0; var $div1 = 0.0, $div139 = 0.0, $div147 = 0.0, $div156 = 0.0, $div160 = 0.0, $div168 = 0.0, $frame_rate = 0, $frame_size$addr = 0, $i = 0, $ldiff = 0.0, $max_follower = 0, $max_follower166 = 0, $max_follower174 = 0, $max_follower176 = 0, $max_follower182 = 0, $mem$addr = 0, $mul = 0, $mul10 = 0, $mul126 = 0.0, $mul13 = 0; var $mul132 = 0.0, $mul137 = 0.0, $mul144 = 0.0, $mul148 = 0.0, $mul153 = 0.0, $mul16 = 0.0, $mul177 = 0.0, $mul18 = 0.0, $mul183 = 0.0, $mul20 = 0.0, $mul22 = 0, $mul25 = 0, $mul28 = 0.0, $mul30 = 0.0, $mul32 = 0.0, $mul34 = 0, $mul37 = 0, $mul40 = 0.0, $mul42 = 0.0, $mul44 = 0.0; var $mul5 = 0, $mul61 = 0.0, $mul65 = 0.0, $mul69 = 0.0, $mul7 = 0.0, $mul8 = 0.0, $mul9 = 0.0, $or$cond = 0, $pcm$addr = 0, $pxx = 0.0, $pxy = 0.0, $pyy = 0.0, $qrrt_xx = 0.0, $qrrt_yy = 0.0, $short_alpha = 0.0, $smoothed_width = 0, $smoothed_width157 = 0, $smoothed_width162 = 0, $smoothed_width171 = 0, $sqrt_xx = 0.0; var $sqrt_yy = 0.0, $sub = 0.0, $sub140 = 0.0, $sub149 = 0.0, $sub154 = 0.0, $sub161 = 0.0, $sub169 = 0.0, $sub2 = 0, $sub60 = 0.0, $sub64 = 0.0, $sub68 = 0.0, $width = 0.0, $x = 0.0, $xx = 0.0, $xy = 0.0, $y = 0.0, $yy = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 96|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(96|0); $pcm$addr = $pcm; $frame_size$addr = $frame_size; $Fs$addr = $Fs; $mem$addr = $mem; $0 = $Fs$addr; $1 = $frame_size$addr; $div = (($0|0) / ($1|0))&-1; $frame_rate = $div; $2 = $frame_rate; $cmp = (50)>($2|0); $3 = $frame_rate; $cond = $cmp ? 50 : $3; $conv = (+($cond|0)); $div1 = 25.0 / $conv; $sub = 1.0 - $div1; $short_alpha = $sub; $yy = 0.0; $xy = 0.0; $xx = 0.0; $i = 0; while(1) { $4 = $i; $5 = $frame_size$addr; $sub2 = (($5) - 3)|0; $cmp3 = ($4|0)<($sub2|0); if (!($cmp3)) { break; } $pxx = 0.0; $pxy = 0.0; $pyy = 0.0; $6 = $pcm$addr; $7 = $i; $mul = $7<<1; $arrayidx = (($6) + ($mul<<2)|0); $8 = +HEAPF32[$arrayidx>>2]; $x = $8; $9 = $pcm$addr; $10 = $i; $mul5 = $10<<1; $add = (($mul5) + 1)|0; $arrayidx6 = (($9) + ($add<<2)|0); $11 = +HEAPF32[$arrayidx6>>2]; $y = $11; $12 = $x; $13 = $x; $mul7 = $12 * $13; $pxx = $mul7; $14 = $x; $15 = $y; $mul8 = $14 * $15; $pxy = $mul8; $16 = $y; $17 = $y; $mul9 = $16 * $17; $pyy = $mul9; $18 = $pcm$addr; $19 = $i; $mul10 = $19<<1; $add11 = (($mul10) + 2)|0; $arrayidx12 = (($18) + ($add11<<2)|0); $20 = +HEAPF32[$arrayidx12>>2]; $x = $20; $21 = $pcm$addr; $22 = $i; $mul13 = $22<<1; $add14 = (($mul13) + 3)|0; $arrayidx15 = (($21) + ($add14<<2)|0); $23 = +HEAPF32[$arrayidx15>>2]; $y = $23; $24 = $x; $25 = $x; $mul16 = $24 * $25; $26 = $pxx; $add17 = $26 + $mul16; $pxx = $add17; $27 = $x; $28 = $y; $mul18 = $27 * $28; $29 = $pxy; $add19 = $29 + $mul18; $pxy = $add19; $30 = $y; $31 = $y; $mul20 = $30 * $31; $32 = $pyy; $add21 = $32 + $mul20; $pyy = $add21; $33 = $pcm$addr; $34 = $i; $mul22 = $34<<1; $add23 = (($mul22) + 4)|0; $arrayidx24 = (($33) + ($add23<<2)|0); $35 = +HEAPF32[$arrayidx24>>2]; $x = $35; $36 = $pcm$addr; $37 = $i; $mul25 = $37<<1; $add26 = (($mul25) + 5)|0; $arrayidx27 = (($36) + ($add26<<2)|0); $38 = +HEAPF32[$arrayidx27>>2]; $y = $38; $39 = $x; $40 = $x; $mul28 = $39 * $40; $41 = $pxx; $add29 = $41 + $mul28; $pxx = $add29; $42 = $x; $43 = $y; $mul30 = $42 * $43; $44 = $pxy; $add31 = $44 + $mul30; $pxy = $add31; $45 = $y; $46 = $y; $mul32 = $45 * $46; $47 = $pyy; $add33 = $47 + $mul32; $pyy = $add33; $48 = $pcm$addr; $49 = $i; $mul34 = $49<<1; $add35 = (($mul34) + 6)|0; $arrayidx36 = (($48) + ($add35<<2)|0); $50 = +HEAPF32[$arrayidx36>>2]; $x = $50; $51 = $pcm$addr; $52 = $i; $mul37 = $52<<1; $add38 = (($mul37) + 7)|0; $arrayidx39 = (($51) + ($add38<<2)|0); $53 = +HEAPF32[$arrayidx39>>2]; $y = $53; $54 = $x; $55 = $x; $mul40 = $54 * $55; $56 = $pxx; $add41 = $56 + $mul40; $pxx = $add41; $57 = $x; $58 = $y; $mul42 = $57 * $58; $59 = $pxy; $add43 = $59 + $mul42; $pxy = $add43; $60 = $y; $61 = $y; $mul44 = $60 * $61; $62 = $pyy; $add45 = $62 + $mul44; $pyy = $add45; $63 = $pxx; $64 = $xx; $add46 = $64 + $63; $xx = $add46; $65 = $pxy; $66 = $xy; $add47 = $66 + $65; $xy = $add47; $67 = $pyy; $68 = $yy; $add48 = $68 + $67; $yy = $add48; $69 = $i; $add49 = (($69) + 4)|0; $i = $add49; } $70 = $xx; $cmp50 = $70 < 1.0E+9; if ($cmp50) { $71 = $xx; $72 = $xx; $cmp52 = $71 == $72; $73 = $yy; $cmp55 = $73 < 1.0E+9; $or$cond = $cmp52 & $cmp55; if ($or$cond) { $74 = $yy; $75 = $yy; $cmp58 = $74 != $75; if ($cmp58) { label = 7; } } else { label = 7; } } else { label = 7; } if ((label|0) == 7) { $yy = 0.0; $xx = 0.0; $xy = 0.0; } $76 = $short_alpha; $77 = $xx; $78 = $mem$addr; $79 = +HEAPF32[$78>>2]; $sub60 = $77 - $79; $mul61 = $76 * $sub60; $80 = $mem$addr; $81 = +HEAPF32[$80>>2]; $add63 = $81 + $mul61; HEAPF32[$80>>2] = $add63; $82 = $short_alpha; $83 = $xy; $84 = $mem$addr; $XY = ((($84)) + 4|0); $85 = +HEAPF32[$XY>>2]; $sub64 = $83 - $85; $mul65 = $82 * $sub64; $86 = $mem$addr; $XY66 = ((($86)) + 4|0); $87 = +HEAPF32[$XY66>>2]; $add67 = $87 + $mul65; HEAPF32[$XY66>>2] = $add67; $88 = $short_alpha; $89 = $yy; $90 = $mem$addr; $YY = ((($90)) + 8|0); $91 = +HEAPF32[$YY>>2]; $sub68 = $89 - $91; $mul69 = $88 * $sub68; $92 = $mem$addr; $YY70 = ((($92)) + 8|0); $93 = +HEAPF32[$YY70>>2]; $add71 = $93 + $mul69; HEAPF32[$YY70>>2] = $add71; $94 = $mem$addr; $95 = +HEAPF32[$94>>2]; $cmp73 = 0.0 > $95; if ($cmp73) { $cond79 = 0.0; } else { $96 = $mem$addr; $97 = +HEAPF32[$96>>2]; $cond79 = $97; } $98 = $mem$addr; HEAPF32[$98>>2] = $cond79; $99 = $mem$addr; $XY81 = ((($99)) + 4|0); $100 = +HEAPF32[$XY81>>2]; $cmp82 = 0.0 > $100; if ($cmp82) { $cond88 = 0.0; } else { $101 = $mem$addr; $XY86 = ((($101)) + 4|0); $102 = +HEAPF32[$XY86>>2]; $cond88 = $102; } $103 = $mem$addr; $XY89 = ((($103)) + 4|0); HEAPF32[$XY89>>2] = $cond88; $104 = $mem$addr; $YY90 = ((($104)) + 8|0); $105 = +HEAPF32[$YY90>>2]; $cmp91 = 0.0 > $105; if ($cmp91) { $cond97 = 0.0; } else { $106 = $mem$addr; $YY95 = ((($106)) + 8|0); $107 = +HEAPF32[$YY95>>2]; $cond97 = $107; } $108 = $mem$addr; $YY98 = ((($108)) + 8|0); HEAPF32[$YY98>>2] = $cond97; $109 = $mem$addr; $110 = +HEAPF32[$109>>2]; $111 = $mem$addr; $YY100 = ((($111)) + 8|0); $112 = +HEAPF32[$YY100>>2]; $cmp101 = $110 > $112; $113 = $mem$addr; $YY106 = ((($113)) + 8|0); $YY106$sink = $cmp101 ? $113 : $YY106; $114 = +HEAPF32[$YY106$sink>>2]; $cmp109 = $114 > 7.9999997979030013E-4; if ($cmp109) { $115 = $mem$addr; $116 = +HEAPF32[$115>>2]; $conv113 = $116; $call = (+Math_sqrt((+$conv113))); $conv114 = $call; $sqrt_xx = $conv114; $117 = $mem$addr; $YY115 = ((($117)) + 8|0); $118 = +HEAPF32[$YY115>>2]; $conv116 = $118; $call117 = (+Math_sqrt((+$conv116))); $conv118 = $call117; $sqrt_yy = $conv118; $119 = $sqrt_xx; $conv119 = $119; $call120 = (+Math_sqrt((+$conv119))); $conv121 = $call120; $qrrt_xx = $conv121; $120 = $sqrt_yy; $conv122 = $120; $call123 = (+Math_sqrt((+$conv122))); $conv124 = $call123; $qrrt_yy = $conv124; $121 = $mem$addr; $XY125 = ((($121)) + 4|0); $122 = +HEAPF32[$XY125>>2]; $123 = $sqrt_xx; $124 = $sqrt_yy; $mul126 = $123 * $124; $cmp127 = $122 < $mul126; if ($cmp127) { $125 = $mem$addr; $XY130 = ((($125)) + 4|0); $126 = +HEAPF32[$XY130>>2]; $cond134 = $126; } else { $127 = $sqrt_xx; $128 = $sqrt_yy; $mul132 = $127 * $128; $cond134 = $mul132; } $129 = $mem$addr; $XY135 = ((($129)) + 4|0); HEAPF32[$XY135>>2] = $cond134; $130 = $mem$addr; $XY136 = ((($130)) + 4|0); $131 = +HEAPF32[$XY136>>2]; $132 = $sqrt_xx; $133 = $sqrt_yy; $mul137 = $132 * $133; $add138 = 1.0000000036274937E-15 + $mul137; $div139 = $131 / $add138; $corr = $div139; $134 = $qrrt_xx; $135 = $qrrt_yy; $sub140 = $134 - $135; $conv141 = $sub140; $call142 = (+Math_abs((+$conv141))); $conv143 = $call142; $mul144 = 1.0 * $conv143; $136 = $qrrt_xx; $add145 = 1.0000000036274937E-15 + $136; $137 = $qrrt_yy; $add146 = $add145 + $137; $div147 = $mul144 / $add146; $ldiff = $div147; $138 = $corr; $139 = $corr; $mul148 = $138 * $139; $sub149 = 1.0 - $mul148; $conv150 = $sub149; $call151 = (+Math_sqrt((+$conv150))); $conv152 = $call151; $140 = $ldiff; $mul153 = $conv152 * $140; $width = $mul153; $141 = $width; $142 = $mem$addr; $smoothed_width = ((($142)) + 12|0); $143 = +HEAPF32[$smoothed_width>>2]; $sub154 = $141 - $143; $144 = $frame_rate; $conv155 = (+($144|0)); $div156 = $sub154 / $conv155; $145 = $mem$addr; $smoothed_width157 = ((($145)) + 12|0); $146 = +HEAPF32[$smoothed_width157>>2]; $add158 = $146 + $div156; HEAPF32[$smoothed_width157>>2] = $add158; $147 = $mem$addr; $max_follower = ((($147)) + 16|0); $148 = +HEAPF32[$max_follower>>2]; $149 = $frame_rate; $conv159 = (+($149|0)); $div160 = 0.019999999552965164 / $conv159; $sub161 = $148 - $div160; $150 = $mem$addr; $smoothed_width162 = ((($150)) + 12|0); $151 = +HEAPF32[$smoothed_width162>>2]; $cmp163 = $sub161 > $151; $152 = $mem$addr; if ($cmp163) { $max_follower166 = ((($152)) + 16|0); $153 = +HEAPF32[$max_follower166>>2]; $154 = $frame_rate; $conv167 = (+($154|0)); $div168 = 0.019999999552965164 / $conv167; $sub169 = $153 - $div168; $cond173 = $sub169; } else { $smoothed_width171 = ((($152)) + 12|0); $155 = +HEAPF32[$smoothed_width171>>2]; $cond173 = $155; } $156 = $mem$addr; $max_follower174 = ((($156)) + 16|0); HEAPF32[$max_follower174>>2] = $cond173; } $157 = $mem$addr; $max_follower176 = ((($157)) + 16|0); $158 = +HEAPF32[$max_follower176>>2]; $mul177 = 20.0 * $158; $cmp178 = 1.0 < $mul177; if ($cmp178) { $cond185 = 1.0; STACKTOP = sp;return (+$cond185); } $159 = $mem$addr; $max_follower182 = ((($159)) + 16|0); $160 = +HEAPF32[$max_follower182>>2]; $mul183 = 20.0 * $160; $cond185 = $mul183; STACKTOP = sp;return (+$cond185); } function _opus_encode_native($st,$pcm,$frame_size,$data,$out_data_bytes,$lsb_depth,$analysis_pcm,$analysis_size,$c1,$c2,$analysis_channels,$downmix,$float_api) { $st = $st|0; $pcm = $pcm|0; $frame_size = $frame_size|0; $data = $data|0; $out_data_bytes = $out_data_bytes|0; $lsb_depth = $lsb_depth|0; $analysis_pcm = $analysis_pcm|0; $analysis_size = $analysis_size|0; $c1 = $c1|0; $c2 = $c2|0; $analysis_channels = $analysis_channels|0; $downmix = $downmix|0; $float_api = $float_api|0; var $$old = 0, $$sink = 0, $$sink10$sink = 0, $$sink11$sink = 0, $$sink16 = 0, $$sink18 = 0, $$sink19 = 0, $$sink22$sink = 0, $$sink27 = 0, $$sink28 = 0, $$sink31 = 0, $$sink7$sink = 0, $$sink8$sink = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $1000 = 0, $1001 = 0, $1002 = 0; var $1003 = 0, $1004 = 0, $1005 = 0, $1006 = 0, $1007 = 0, $1008 = 0, $1009 = 0, $101 = 0, $1010 = 0, $1011 = 0, $1012 = 0, $1013 = 0, $1014 = 0, $1015 = 0, $1016 = 0, $1017 = 0, $1018 = 0, $1019 = 0, $102 = 0, $1020 = 0; var $1021 = 0, $1022 = 0, $1023 = 0, $1024 = 0, $1025 = 0, $1026 = 0, $1027 = 0, $1028 = 0, $1029 = 0, $103 = 0, $1030 = 0, $1031 = 0, $1032 = 0, $1033 = 0, $1034 = 0, $1035 = 0, $1036 = 0, $1037 = 0, $1038 = 0, $1039 = 0; var $104 = 0, $1040 = 0, $1041 = 0, $1042 = 0, $1043 = 0, $1044 = 0, $1045 = 0, $1046 = 0, $1047 = 0, $1048 = 0, $1049 = 0, $105 = 0, $1050 = 0, $1051 = 0, $1052 = 0, $1053 = 0, $1054 = 0, $1055 = 0, $1056 = 0, $1057 = 0; var $1058 = 0, $1059 = 0, $106 = 0, $1060 = 0, $1061 = 0, $1062 = 0, $1063 = 0, $1064 = 0, $1065 = 0, $1066 = 0, $1067 = 0.0, $1068 = 0.0, $1069 = 0, $107 = 0, $1070 = 0.0, $1071 = 0.0, $1072 = 0, $1073 = 0, $1074 = 0, $1075 = 0; var $1076 = 0, $1077 = 0, $1078 = 0, $1079 = 0, $108 = 0, $1080 = 0, $1081 = 0.0, $1082 = 0, $1083 = 0, $1084 = 0, $1085 = 0, $1086 = 0, $1087 = 0, $1088 = 0, $1089 = 0, $109 = 0, $1090 = 0, $1091 = 0, $1092 = 0, $1093 = 0; var $1094 = 0, $1095 = 0, $1096 = 0, $1097 = 0, $1098 = 0, $1099 = 0, $11 = 0, $110 = 0, $1100 = 0, $1101 = 0, $1102 = 0, $1103 = 0, $1104 = 0, $1105 = 0, $1106 = 0.0, $1107 = 0.0, $1108 = 0.0, $1109 = 0.0, $111 = 0, $1110 = 0; var $1111 = 0, $1112 = 0, $1113 = 0, $1114 = 0, $1115 = 0, $1116 = 0, $1117 = 0, $1118 = 0, $1119 = 0, $112 = 0, $1120 = 0, $1121 = 0, $1122 = 0, $1123 = 0, $1124 = 0, $1125 = 0, $1126 = 0, $1127 = 0, $1128 = 0, $1129 = 0; var $113 = 0, $1130 = 0, $1131 = 0, $1132 = 0, $1133 = 0, $1134 = 0, $1135 = 0, $1136 = 0, $1137 = 0, $1138 = 0, $1139 = 0, $114 = 0, $1140 = 0, $1141 = 0, $1142 = 0, $1143 = 0, $1144 = 0, $1145 = 0, $1146 = 0, $1147 = 0; var $1148 = 0, $1149 = 0, $115 = 0, $1150 = 0, $1151 = 0, $1152 = 0, $1153 = 0, $1154 = 0, $1155 = 0, $1156 = 0, $1157 = 0, $1158 = 0, $1159 = 0, $116 = 0, $1160 = 0, $1161 = 0, $1162 = 0, $1163 = 0, $1164 = 0, $1165 = 0; var $1166 = 0, $1167 = 0, $1168 = 0, $1169 = 0, $117 = 0, $1170 = 0, $1171 = 0, $1172 = 0, $1173 = 0, $1174 = 0, $1175 = 0, $1176 = 0, $1177 = 0, $1178 = 0, $1179 = 0, $118 = 0, $1180 = 0, $1181 = 0, $1182 = 0, $1183 = 0; var $1184 = 0, $1185 = 0, $1186 = 0, $1187 = 0, $1188 = 0, $1189 = 0, $119 = 0, $1190 = 0, $1191 = 0, $1192 = 0, $1193 = 0, $1194 = 0, $1195 = 0, $1196 = 0, $1197 = 0, $1198 = 0, $1199 = 0, $12 = 0, $120 = 0, $1200 = 0; var $1201 = 0, $1202 = 0, $1203 = 0, $1204 = 0, $1205 = 0, $1206 = 0, $1207 = 0, $1208 = 0, $1209 = 0, $121 = 0, $1210 = 0, $1211 = 0, $1212 = 0, $1213 = 0, $1214 = 0, $1215 = 0, $1216 = 0, $1217 = 0, $1218 = 0, $1219 = 0; var $122 = 0, $1220 = 0, $1221 = 0, $1222 = 0, $1223 = 0, $1224 = 0, $1225 = 0, $1226 = 0, $1227 = 0, $1228 = 0, $1229 = 0, $123 = 0, $1230 = 0, $1231 = 0, $1232 = 0, $1233 = 0, $1234 = 0, $1235 = 0, $1236 = 0, $1237 = 0; var $1238 = 0, $1239 = 0, $124 = 0, $1240 = 0, $1241 = 0, $1242 = 0, $1243 = 0, $1244 = 0, $1245 = 0, $1246 = 0, $1247 = 0, $1248 = 0, $1249 = 0, $125 = 0, $1250 = 0, $1251 = 0, $1252 = 0, $1253 = 0, $1254 = 0, $1255 = 0; var $1256 = 0, $1257 = 0, $1258 = 0, $1259 = 0, $126 = 0, $1260 = 0, $1261 = 0, $1262 = 0, $1263 = 0, $1264 = 0, $1265 = 0, $1266 = 0, $1267 = 0, $1268 = 0, $1269 = 0, $127 = 0, $1270 = 0, $1271 = 0, $1272 = 0, $1273 = 0; var $1274 = 0, $1275 = 0, $1276 = 0, $1277 = 0, $1278 = 0, $1279 = 0, $128 = 0, $1280 = 0, $1281 = 0, $1282 = 0, $1283 = 0, $1284 = 0, $1285 = 0, $1286 = 0, $1287 = 0, $1288 = 0, $1289 = 0, $129 = 0, $1290 = 0, $1291 = 0; var $1292 = 0, $1293 = 0.0, $1294 = 0, $1295 = 0, $1296 = 0.0, $1297 = 0, $1298 = 0, $1299 = 0, $13 = 0, $130 = 0, $1300 = 0, $1301 = 0, $1302 = 0, $1303 = 0, $1304 = 0, $1305 = 0, $1306 = 0, $1307 = 0, $1308 = 0, $1309 = 0; var $131 = 0, $1310 = 0, $1311 = 0, $1312 = 0, $1313 = 0, $1314 = 0, $1315 = 0, $1316 = 0, $1317 = 0, $1318 = 0, $1319 = 0, $132 = 0, $1320 = 0, $1321 = 0, $1322 = 0, $1323 = 0, $1324 = 0, $1325 = 0, $1326 = 0, $1327 = 0; var $1328 = 0, $1329 = 0, $133 = 0, $1330 = 0, $1331 = 0, $1332 = 0, $1333 = 0, $1334 = 0, $1335 = 0, $1336 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0; var $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0; var $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0; var $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0; var $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0; var $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0; var $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0; var $251 = 0, $252 = 0, $253 = 0.0, $254 = 0, $255 = 0.0, $256 = 0, $257 = 0.0, $258 = 0, $259 = 0.0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0; var $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0; var $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0; var $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0, $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0; var $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0, $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0; var $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0, $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0; var $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0, $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0; var $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0, $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0; var $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0, $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0; var $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0, $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0; var $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0, $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0; var $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0, $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0; var $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0, $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0; var $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0, $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0; var $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0, $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0.0, $520 = 0; var $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0, $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0; var $54 = 0.0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 = 0, $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0; var $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0, $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0; var $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0, $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0; var $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0, $601 = 0, $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0; var $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 = 0, $62 = 0.0, $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0; var $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0, $637 = 0, $638 = 0, $639 = 0, $64 = 0, $640 = 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0; var $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0, $655 = 0, $656 = 0, $657 = 0, $658 = 0, $659 = 0, $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0.0, $664 = 0.0, $665 = 0.0; var $666 = 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0, $672 = 0, $673 = 0, $674 = 0, $675 = 0, $676 = 0, $677 = 0, $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0; var $684 = 0, $685 = 0, $686 = 0, $687 = 0, $688 = 0, $689 = 0, $69 = 0, $690 = 0, $691 = 0, $692 = 0, $693 = 0, $694 = 0, $695 = 0, $696 = 0, $697 = 0, $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 0; var $701 = 0, $702 = 0, $703 = 0, $704 = 0, $705 = 0, $706 = 0, $707 = 0, $708 = 0, $709 = 0, $71 = 0, $710 = 0, $711 = 0, $712 = 0, $713 = 0, $714 = 0, $715 = 0, $716 = 0, $717 = 0, $718 = 0, $719 = 0; var $72 = 0, $720 = 0, $721 = 0, $722 = 0, $723 = 0, $724 = 0.0, $725 = 0, $726 = 0, $727 = 0, $728 = 0, $729 = 0.0, $73 = 0, $730 = 0, $731 = 0, $732 = 0, $733 = 0, $734 = 0.0, $735 = 0, $736 = 0, $737 = 0; var $738 = 0, $739 = 0.0, $74 = 0, $740 = 0.0, $741 = 0.0, $742 = 0.0, $743 = 0.0, $744 = 0, $745 = 0, $746 = 0.0, $747 = 0, $748 = 0, $749 = 0, $75 = 0, $750 = 0.0, $751 = 0, $752 = 0.0, $753 = 0, $754 = 0, $755 = 0; var $756 = 0, $757 = 0, $758 = 0, $759 = 0, $76 = 0, $760 = 0, $761 = 0, $762 = 0, $763 = 0, $764 = 0, $765 = 0, $766 = 0, $767 = 0, $768 = 0, $769 = 0, $77 = 0, $770 = 0, $771 = 0, $772 = 0, $773 = 0; var $774 = 0, $775 = 0, $776 = 0, $777 = 0, $778 = 0, $779 = 0, $78 = 0.0, $780 = 0, $781 = 0, $782 = 0, $783 = 0, $784 = 0, $785 = 0, $786 = 0, $787 = 0, $788 = 0, $789 = 0, $79 = 0, $790 = 0, $791 = 0; var $792 = 0, $793 = 0, $794 = 0, $795 = 0, $796 = 0, $797 = 0, $798 = 0, $799 = 0, $8 = 0, $80 = 0, $800 = 0, $801 = 0, $802 = 0, $803 = 0, $804 = 0, $805 = 0, $806 = 0, $807 = 0, $808 = 0, $809 = 0; var $81 = 0.0, $810 = 0, $811 = 0, $812 = 0, $813 = 0, $814 = 0, $815 = 0, $816 = 0, $817 = 0, $818 = 0, $819 = 0, $82 = 0.0, $820 = 0, $821 = 0, $822 = 0, $823 = 0, $824 = 0, $825 = 0, $826 = 0, $827 = 0; var $828 = 0, $829 = 0, $83 = 0.0, $830 = 0, $831 = 0, $832 = 0, $833 = 0, $834 = 0, $835 = 0, $836 = 0, $837 = 0, $838 = 0, $839 = 0, $84 = 0, $840 = 0, $841 = 0, $842 = 0, $843 = 0, $844 = 0, $845 = 0; var $846 = 0, $847 = 0, $848 = 0, $849 = 0, $85 = 0, $850 = 0, $851 = 0, $852 = 0, $853 = 0, $854 = 0, $855 = 0, $856 = 0, $857 = 0, $858 = 0, $859 = 0, $86 = 0, $860 = 0, $861 = 0, $862 = 0, $863 = 0; var $864 = 0, $865 = 0, $866 = 0, $867 = 0, $868 = 0, $869 = 0, $87 = 0, $870 = 0, $871 = 0, $872 = 0, $873 = 0, $874 = 0, $875 = 0, $876 = 0, $877 = 0, $878 = 0, $879 = 0, $88 = 0, $880 = 0, $881 = 0; var $882 = 0, $883 = 0, $884 = 0, $885 = 0, $886 = 0, $887 = 0, $888 = 0, $889 = 0.0, $89 = 0, $890 = 0, $891 = 0, $892 = 0, $893 = 0, $894 = 0, $895 = 0, $896 = 0, $897 = 0, $898 = 0, $899 = 0, $9 = 0; var $90 = 0, $900 = 0, $901 = 0, $902 = 0, $903 = 0, $904 = 0.0, $905 = 0, $906 = 0, $907 = 0, $908 = 0, $909 = 0, $91 = 0, $910 = 0, $911 = 0, $912 = 0, $913 = 0, $914 = 0, $915 = 0, $916 = 0, $917 = 0; var $918 = 0, $919 = 0, $92 = 0, $920 = 0, $921 = 0, $922 = 0, $923 = 0, $924 = 0, $925 = 0, $926 = 0, $927 = 0, $928 = 0, $929 = 0, $93 = 0, $930 = 0, $931 = 0, $932 = 0, $933 = 0, $934 = 0, $935 = 0; var $936 = 0, $937 = 0, $938 = 0, $939 = 0, $94 = 0, $940 = 0, $941 = 0, $942 = 0, $943 = 0, $944 = 0, $945 = 0, $946 = 0, $947 = 0, $948 = 0, $949 = 0, $95 = 0, $950 = 0, $951 = 0, $952 = 0, $953 = 0; var $954 = 0, $955 = 0, $956 = 0, $957 = 0, $958 = 0, $959 = 0.0, $96 = 0, $960 = 0, $961 = 0, $962 = 0, $963 = 0, $964 = 0, $965 = 0, $966 = 0, $967 = 0, $968 = 0, $969 = 0, $97 = 0, $970 = 0, $971 = 0; var $972 = 0, $973 = 0, $974 = 0, $975 = 0, $976 = 0, $977 = 0, $978 = 0, $979 = 0, $98 = 0, $980 = 0, $981 = 0, $982 = 0, $983 = 0, $984 = 0, $985 = 0, $986 = 0, $987 = 0, $988 = 0, $989 = 0, $99 = 0; var $990 = 0, $991 = 0, $992 = 0, $993 = 0, $994 = 0, $995 = 0, $996 = 0, $997 = 0, $998 = 0, $999 = 0, $Fs = 0, $Fs1017 = 0, $Fs107 = 0, $Fs112 = 0, $Fs115 = 0, $Fs1163 = 0, $Fs1281 = 0, $Fs1292 = 0, $Fs1306 = 0, $Fs1309 = 0; var $Fs1319 = 0, $Fs1331 = 0, $Fs1341 = 0, $Fs1344 = 0, $Fs1425 = 0, $Fs1506 = 0, $Fs1526 = 0, $Fs1533 = 0, $Fs1540 = 0, $Fs1649 = 0, $Fs1707 = 0, $Fs1845 = 0, $Fs1879 = 0, $Fs1954 = 0, $Fs1956 = 0, $Fs1993 = 0, $Fs2026 = 0, $Fs22 = 0, $Fs268 = 0, $Fs30 = 0; var $Fs350 = 0, $Fs439 = 0, $Fs456 = 0, $Fs492 = 0, $Fs531 = 0, $Fs656 = 0, $Fs666 = 0, $Fs676 = 0, $Fs686 = 0, $Fs807 = 0, $Fs816 = 0, $Fs826 = 0, $Fs832 = 0, $Fs835 = 0, $Fs841 = 0, $Fs850 = 0, $Fs886 = 0, $Fs896 = 0, $Fs956 = 0, $Fs965 = 0; var $HB_gain = 0.0, $LBRR_coded = 0, $LBRR_coded1023 = 0, $LBRR_coded1315 = 0, $LBRR_coded769 = 0, $N2 = 0, $N4 = 0, $activity_probability = 0, $activity_probability2017 = 0, $add = 0.0, $add$ptr = 0, $add$ptr1337 = 0, $add$ptr1340 = 0, $add$ptr1818 = 0, $add$ptr1833 = 0, $add$ptr1847 = 0, $add$ptr1857 = 0, $add$ptr19 = 0, $add$ptr1934 = 0, $add$ptr1935 = 0; var $add$ptr1937 = 0, $add$ptr1938 = 0, $add$ptr1972 = 0, $add$ptr1978 = 0, $add$ptr1979 = 0, $add$ptr1989 = 0, $add$ptr7 = 0, $add$ptr902 = 0, $add1076 = 0, $add1083 = 0, $add1093 = 0, $add1100 = 0, $add1113 = 0.0, $add1125 = 0.0, $add1159 = 0, $add122 = 0, $add1255 = 0, $add131 = 0, $add1374 = 0, $add1551 = 0; var $add1555 = 0, $add1584 = 0, $add1593 = 0, $add1610 = 0, $add1614 = 0, $add1626 = 0, $add1637 = 0, $add1719 = 0, $add1724 = 0, $add1743 = 0, $add1744 = 0, $add1745 = 0, $add1751 = 0, $add1802 = 0, $add1943 = 0, $add1944 = 0, $add2064 = 0, $add2065 = 0, $add330 = 0, $add337 = 0; var $add372 = 0.0, $add379 = 0.0, $add385 = 0, $add390 = 0, $add402 = 0, $add580 = 0, $add588 = 0, $add598 = 0, $add904 = 0, $add925 = 0, $add942 = 0, $add943 = 0, $allowBandwidthSwitch = 0, $analysis = 0, $analysis28 = 0, $analysis29 = 0, $analysis857 = 0, $analysis859 = 0, $analysis_bandwidth = 0, $analysis_channels$addr = 0; var $analysis_info = 0, $analysis_pcm$addr = 0, $analysis_read_pos_bak = 0, $analysis_read_subframe_bak = 0, $analysis_size$addr = 0, $and = 0, $and970 = 0, $application = 0, $application291 = 0, $application303 = 0, $application358 = 0, $application386 = 0, $application948 = 0, $arch = 0, $arch2020 = 0, $arch45 = 0, $arch548 = 0, $arch957 = 0, $arch969 = 0, $arrayidx1077 = 0; var $arrayidx1084 = 0, $arrayidx1094 = 0, $arrayidx1101 = 0, $arrayidx1356 = 0, $arrayidx1358 = 0, $arrayidx1375 = 0, $arrayidx1377 = 0, $arrayidx1429 = 0, $arrayidx1531 = 0, $arrayidx1545 = 0, $arrayidx1566 = 0, $arrayidx1578 = 0, $arrayidx1591 = 0, $arrayidx1603 = 0, $arrayidx1619 = 0, $arrayidx1631 = 0, $arrayidx2043 = 0, $arrayidx2055 = 0, $arrayidx251 = 0, $arrayidx573 = 0; var $arrayidx575 = 0, $arrayidx576 = 0, $arrayidx581 = 0, $arrayidx585 = 0, $arrayidx589 = 0, $arrayidx910 = 0, $arrayidx919 = 0, $arrayidx954 = 0, $arrayidx961 = 0, $arrayidx971 = 0, $arrayidx974 = 0, $arrayidx977 = 0, $arrayidx989 = 0, $arrayidx994 = 0, $arrayidx996 = 0, $arrayidx998 = 0, $auto_bandwidth = 0, $auto_bandwidth607 = 0, $bandwidth = 0, $bandwidth1054 = 0; var $bandwidth1059 = 0, $bandwidth1143 = 0, $bandwidth1147 = 0, $bandwidth167 = 0, $bandwidth172 = 0, $bandwidth560 = 0, $bandwidth608 = 0, $bandwidth619 = 0, $bandwidth623 = 0, $bandwidth626 = 0, $bandwidth631 = 0, $bandwidth637 = 0, $bandwidth646 = 0, $bandwidth650 = 0, $bandwidth654 = 0, $bandwidth660 = 0, $bandwidth664 = 0, $bandwidth670 = 0, $bandwidth674 = 0, $bandwidth680 = 0; var $bandwidth684 = 0, $bandwidth690 = 0, $bandwidth694 = 0, $bandwidth748 = 0, $bandwidth753 = 0, $bandwidth758 = 0, $bandwidth766 = 0, $bandwidth777 = 0, $bandwidth781 = 0, $bandwidth786 = 0, $bandwidth788 = 0, $bandwidth_thresholds = 0, $bitRate = 0, $bitRate1030 = 0, $bitRate1043 = 0, $bitRate1130 = 0, $bitRate1138 = 0, $bitRate1158 = 0, $bitRate1279 = 0, $bitRate1290 = 0; var $bitRate1483 = 0, $bitRate1909 = 0, $bitrate_bps = 0, $bitrate_bps118 = 0, $bitrate_bps127 = 0, $bitrate_bps139 = 0, $bitrate_bps1435 = 0, $bitrate_bps1481 = 0, $bitrate_bps150 = 0, $bitrate_bps1500 = 0, $bitrate_bps163 = 0, $bitrate_bps1907 = 0, $bitrate_bps266 = 0, $bitrate_bps348 = 0, $bitrate_bps529 = 0, $bitrate_bps875 = 0, $bitrate_bps884 = 0, $bitrate_bps894 = 0, $bw = 0, $bytes_target = 0; var $c = 0, $c1$addr = 0, $c2$addr = 0, $call1025 = 0, $call1037 = 0.0, $call108 = 0.0, $call111 = 0, $call1317 = 0, $call1357 = 0, $call1376 = 0, $call1382 = 0, $call1428 = 0, $call1437 = 0, $call1718 = 0, $call1742 = 0, $call1801 = 0, $call1848 = 0, $call1885 = 0, $call1918 = 0, $call1980 = 0; var $call1996 = 0, $call2021 = 0, $call2029 = 0, $call2033 = 0, $call2069 = 0, $call234 = 0, $call25 = 0, $call256 = 0, $call274 = 0, $call357 = 0, $call38 = 0.0, $call46 = 0.0, $call539 = 0, $call70 = 0.0, $call767 = 0, $call862 = 0, $call877 = 0, $call930 = 0, $call947 = 0, $call980 = 0.0; var $cbrBytes = 0, $celt_enc = 0, $celt_mode = 0, $celt_pred = 0.0, $celt_rate = 0, $celt_to_silk = 0, $channels = 0, $channels100 = 0, $channels1007 = 0, $channels1066 = 0, $channels1122 = 0, $channels1166 = 0, $channels1327 = 0, $channels1343 = 0, $channels1350 = 0, $channels1367 = 0, $channels1372 = 0, $channels1505 = 0, $channels1529 = 0, $channels1532 = 0; var $channels1543 = 0, $channels1553 = 0, $channels1564 = 0, $channels1567 = 0, $channels1576 = 0, $channels1586 = 0, $channels1594 = 0, $channels1598 = 0, $channels1617 = 0, $channels1621 = 0, $channels1629 = 0, $channels1647 = 0, $channels1684 = 0, $channels1705 = 0, $channels1968 = 0, $channels1975 = 0, $channels2019 = 0, $channels267 = 0, $channels316 = 0, $channels323 = 0; var $channels344 = 0, $channels37 = 0, $channels44 = 0, $channels561 = 0, $channels905 = 0, $channels908 = 0, $channels911 = 0, $channels917 = 0, $channels952 = 0, $channels955 = 0, $channels959 = 0, $channels964 = 0, $channels972 = 0, $channels975 = 0, $channels978 = 0, $channels987 = 0, $channels990 = 0, $cleanup$dest = 0, $cleanup$dest$slot = 0, $cmp = 0; var $cmp1 = 0, $cmp1004 = 0, $cmp101 = 0, $cmp1014 = 0, $cmp1019 = 0, $cmp104 = 0, $cmp1055 = 0, $cmp1060 = 0, $cmp1067 = 0, $cmp1071 = 0, $cmp1078 = 0, $cmp1088 = 0, $cmp1095 = 0, $cmp1108 = 0, $cmp1133 = 0, $cmp1144 = 0, $cmp1148 = 0, $cmp1170 = 0, $cmp1175 = 0, $cmp1186 = 0; var $cmp1196 = 0, $cmp1199 = 0, $cmp1205 = 0, $cmp1212 = 0, $cmp1223 = 0, $cmp1230 = 0, $cmp124 = 0, $cmp1251 = 0, $cmp1260 = 0, $cmp1273 = 0, $cmp1283 = 0, $cmp13 = 0, $cmp1311 = 0, $cmp1352 = 0, $cmp1369 = 0, $cmp1387 = 0, $cmp1391 = 0, $cmp1397 = 0, $cmp140 = 0, $cmp1403 = 0; var $cmp1420 = 0, $cmp1438 = 0, $cmp1456 = 0, $cmp1469 = 0, $cmp147 = 0, $cmp1511 = 0, $cmp1516 = 0, $cmp1520 = 0, $cmp153 = 0, $cmp1558 = 0, $cmp156 = 0, $cmp160 = 0, $cmp1639 = 0, $cmp164 = 0, $cmp1642 = 0, $cmp1653 = 0, $cmp1657 = 0, $cmp1660 = 0, $cmp1665 = 0, $cmp168 = 0; var $cmp1685 = 0, $cmp1689 = 0, $cmp1694 = 0, $cmp1715 = 0, $cmp1721 = 0, $cmp1727 = 0, $cmp1731 = 0, $cmp1738 = 0, $cmp175 = 0, $cmp1755 = 0, $cmp1761 = 0, $cmp1767 = 0, $cmp1771 = 0, $cmp1780 = 0, $cmp179 = 0, $cmp1793 = 0, $cmp1798 = 0, $cmp1811 = 0, $cmp1822 = 0, $cmp183 = 0; var $cmp1849 = 0, $cmp186 = 0, $cmp1865 = 0, $cmp1870 = 0, $cmp1874 = 0, $cmp1887 = 0, $cmp1895 = 0, $cmp190 = 0, $cmp1919 = 0, $cmp1928 = 0, $cmp193 = 0, $cmp196 = 0, $cmp1964 = 0, $cmp1981 = 0, $cmp199 = 0, $cmp2 = 0, $cmp20 = 0, $cmp202 = 0, $cmp2036 = 0, $cmp2039 = 0; var $cmp204 = 0, $cmp2047 = 0, $cmp2052 = 0, $cmp2052$old = 0, $cmp2057 = 0, $cmp2070 = 0, $cmp211 = 0, $cmp214 = 0, $cmp218 = 0, $cmp221 = 0, $cmp225 = 0, $cmp228 = 0, $cmp23 = 0, $cmp238 = 0, $cmp241 = 0, $cmp247 = 0, $cmp257 = 0, $cmp276 = 0, $cmp281 = 0, $cmp286 = 0; var $cmp292 = 0, $cmp295 = 0, $cmp3 = 0, $cmp304 = 0, $cmp313 = 0, $cmp317 = 0, $cmp324 = 0, $cmp332 = 0, $cmp339 = 0, $cmp34 = 0, $cmp359 = 0, $cmp364 = 0, $cmp387 = 0, $cmp39 = 0, $cmp393 = 0, $cmp399 = 0, $cmp4 = 0, $cmp405 = 0, $cmp416 = 0, $cmp430 = 0; var $cmp435 = 0, $cmp442 = 0, $cmp453 = 0, $cmp458 = 0, $cmp468 = 0, $cmp472 = 0, $cmp476 = 0, $cmp480 = 0, $cmp484 = 0, $cmp488 = 0, $cmp494 = 0, $cmp504 = 0, $cmp507 = 0, $cmp511 = 0, $cmp515 = 0, $cmp519 = 0, $cmp541 = 0, $cmp545 = 0, $cmp552 = 0, $cmp562 = 0; var $cmp566 = 0, $cmp571 = 0, $cmp58 = 0, $cmp593 = 0, $cmp60 = 0, $cmp601 = 0, $cmp605 = 0, $cmp613 = 0, $cmp620 = 0, $cmp627 = 0, $cmp633 = 0, $cmp64 = 0, $cmp640 = 0, $cmp643 = 0, $cmp647 = 0, $cmp657 = 0, $cmp661 = 0, $cmp667 = 0, $cmp671 = 0, $cmp677 = 0; var $cmp681 = 0, $cmp687 = 0, $cmp691 = 0, $cmp700 = 0, $cmp705 = 0, $cmp709 = 0, $cmp715 = 0, $cmp719 = 0, $cmp725 = 0, $cmp731 = 0, $cmp74 = 0, $cmp740 = 0, $cmp750 = 0, $cmp774 = 0, $cmp778 = 0, $cmp79 = 0, $cmp790 = 0, $cmp793 = 0, $cmp799 = 0, $cmp8 = 0; var $cmp802 = 0, $cmp809 = 0, $cmp813 = 0, $cmp819 = 0, $cmp823 = 0, $cmp829 = 0, $cmp838 = 0, $cmp84 = 0, $cmp854 = 0, $cmp869 = 0, $cmp878 = 0, $cmp889 = 0, $cmp89 = 0, $cmp927 = 0, $cmp949 = 0, $cmp981 = 0, $cmp984 = 0, $complexity = 0, $complexity272 = 0, $complexity354 = 0; var $complexity536 = 0, $cond = 0, $cond1 = 0, $cond1087 = 0.0, $cond1107 = 0.0, $cond1142 = 0, $cond1219 = 0, $cond1237 = 0, $cond1295 = 0, $cond135 = 0, $cond145 = 0, $cond174 = 0, $cond1760 = 0, $cond1766 = 0, $cond1776 = 0, $cond1778 = 0, $cond18 = 0, $cond206 = 0, $cond240 = 0, $cond246 = 0; var $cond300 = 0, $cond341 = 0, $cond407 = 0, $cond437 = 0, $cond48 = 0.0, $cond653 = 0, $cond746 = 0, $cond900 = 0, $conv = 0.0, $conv1020 = 0, $conv1033 = 0.0, $conv1035 = 0.0, $conv1038 = 0.0, $conv1120 = 0.0, $conv1123 = 0.0, $conv1126 = 0.0, $conv1128 = 0, $conv1312 = 0, $conv1439 = 0, $conv1466 = 0; var $conv1688 = 0, $conv1698 = 0.0, $conv1701 = 0.0, $conv1710 = 0, $conv1722 = 0, $conv203 = 0, $conv2056 = 0, $conv236 = 0, $conv237 = 0, $conv250 = 0, $conv368 = 0.0, $conv370 = 0.0, $conv373 = 0, $conv375 = 0.0, $conv377 = 0.0, $conv380 = 0, $conv489 = 0, $conv71 = 0, $curr_bandwidth = 0, $cutoff_Hz = 0; var $data$addr = 0, $dec = 0, $dec2061 = 0, $delay_buffer = 0, $delay_buffer1335 = 0, $delay_buffer1338 = 0, $delay_buffer1345 = 0, $delay_buffer1355 = 0, $delay_buffer1523 = 0, $delay_buffer1537 = 0, $delay_buffer1561 = 0, $delay_buffer1563 = 0, $delay_buffer1573 = 0, $delay_buffer1575 = 0, $delay_buffer1585 = 0, $delay_buffer1597 = 0, $delay_buffer1624 = 0, $delay_buffer914 = 0, $delay_compensation = 0, $delay_compensation10 = 0; var $delay_compensation1329 = 0, $desiredInternalSampleRate = 0, $desiredInternalSampleRate1179 = 0, $desiredInternalSampleRate1211 = 0, $desiredInternalSampleRate1217 = 0, $desiredInternalSampleRate1221 = 0, $desiredInternalSampleRate1229 = 0, $desiredInternalSampleRate1235 = 0, $desiredInternalSampleRate1239 = 0, $detected_bandwidth = 0, $detected_bandwidth696 = 0, $detected_bandwidth739 = 0, $detected_bandwidth743 = 0, $detected_bandwidth747 = 0, $detected_bandwidth749 = 0, $detected_bandwidth755 = 0, $detected_bandwidth755$sink = 0, $detected_bandwidth77 = 0, $detected_bandwidth82 = 0, $detected_bandwidth87 = 0; var $detected_bandwidth92 = 0, $div = 0, $div1121 = 0.0, $div1132 = 0, $div1140 = 0, $div1152 = 0, $div1164 = 0, $div117 = 0, $div120 = 0, $div1203 = 0, $div121 = 0, $div123 = 0, $div1282 = 0, $div129 = 0, $div1293 = 0, $div130 = 0, $div1308 = 0, $div132 = 0, $div1320 = 0, $div1332 = 0; var $div1342 = 0, $div138 = 0, $div1426 = 0, $div1508 = 0, $div1527 = 0, $div1535 = 0, $div1541 = 0, $div1674 = 0, $div1846 = 0, $div1880 = 0, $div1955 = 0, $div1957 = 0, $div1994 = 0, $div2027 = 0, $div208 = 0, $div269 = 0, $div351 = 0, $div441 = 0, $div457 = 0, $div493 = 0; var $div532 = 0, $div808 = 0, $div818 = 0, $div828 = 0, $div833 = 0, $div837 = 0, $div843 = 0, $div846 = 0, $div851 = 0, $div853 = 0, $div888 = 0, $div898 = 0, $downmix$addr = 0, $dummy = 0, $dummy1877 = 0, $dummy1953 = 0, $effective_max_rate = 0, $enc = 0, $enc_frame_size = 0, $encoder_buffer = 0; var $encoder_buffer1328 = 0, $encoder_buffer1349 = 0, $encoder_buffer1363 = 0, $encoder_buffer1524 = 0, $encoder_buffer1538 = 0, $encoder_buffer1554 = 0, $encoder_buffer1568 = 0, $encoder_buffer1587 = 0, $encoder_buffer1599 = 0, $encoder_buffer1615 = 0, $encoder_buffer1620 = 0, $encoder_buffer1627 = 0, $encoder_buffer915 = 0, $end = 0, $endband = 0, $energy_masking = 0, $energy_masking1045 = 0, $energy_masking1074 = 0, $energy_masking1081 = 0, $energy_masking1091 = 0; var $energy_masking1098 = 0, $energy_masking1681 = 0, $equiv_rate = 0, $err = 0, $err1952 = 0, $first = 0, $first2008 = 0, $first590 = 0, $first609 = 0, $float_api$addr = 0, $force_channels = 0, $force_channels312 = 0, $force_channels320 = 0, $force_channels565 = 0, $frame_rate = 0, $frame_rate12 = 0, $frame_size$addr = 0, $g1 = 0.0, $g2 = 0.0, $hp_freq_smth1 = 0; var $hp_mem = 0, $hp_mem962 = 0, $hp_mem993 = 0, $hp_mem995 = 0, $hp_mem997 = 0, $hp_mem999 = 0, $hybrid_stereo_width_Q14 = 0, $hybrid_stereo_width_Q141697 = 0, $hybrid_stereo_width_Q141711 = 0, $hysteresis = 0, $i = 0, $inWBmodeWithoutVariableLP = 0, $inc = 0, $inc1115 = 0, $inc1118 = 0, $inc1360 = 0, $inc1379 = 0, $incdec$ptr = 0, $info = 0, $internalSampleRate = 0; var $internalSampleRate1396 = 0, $internalSampleRate1402 = 0, $is_silence = 0, $land$ext = 0, $land$ext1418 = 0, $lfe = 0, $lfe1051 = 0, $lfe783 = 0, $lnot = 0, $lnot$ext = 0, $lnot1244 = 0, $lnot1415 = 0, $lsb_depth$addr = 0, $lsb_depth12 = 0, $lsb_depth16 = 0, $mask = 0.0, $mask_sum = 0.0, $masking_depth = 0.0, $maxBitRate = 0, $maxBits = 0; var $maxBits1257 = 0, $maxBits1264 = 0, $maxBits1277 = 0, $maxBits1287 = 0, $maxBits1297 = 0, $maxBits1305 = 0, $maxBits1322 = 0, $maxInternalSampleRate = 0, $maxInternalSampleRate1209 = 0, $maxInternalSampleRate1227 = 0, $max_bandwidth = 0, $max_bandwidth630 = 0, $max_data_bytes = 0, $max_rate = 0, $max_redundancy = 0, $minInternalSampleRate = 0, $min_detected_bandwidth = 0, $mode = 0, $mode1003 = 0, $mode1013 = 0; var $mode1185 = 0, $mode1195 = 0, $mode1259 = 0, $mode1272 = 0, $mode1386 = 0, $mode1424 = 0, $mode1455 = 0, $mode1468 = 0, $mode1510 = 0, $mode1514 = 0, $mode1652 = 0, $mode1714 = 0, $mode1720 = 0, $mode1730 = 0, $mode1737 = 0, $mode1779 = 0, $mode1792 = 0, $mode1797 = 0, $mode1810 = 0, $mode1821 = 0; var $mode1864 = 0, $mode1868 = 0, $mode1894 = 0, $mode1927 = 0, $mode1963 = 0, $mode1992 = 0, $mode2003 = 0, $mode2025 = 0, $mode2046 = 0, $mode408 = 0, $mode419 = 0, $mode433 = 0, $mode445 = 0, $mode452 = 0, $mode461 = 0, $mode465 = 0, $mode471 = 0, $mode479 = 0, $mode487 = 0, $mode498 = 0; var $mode514 = 0, $mode534 = 0, $mode540 = 0, $mode551 = 0, $mode612 = 0, $mode639 = 0, $mode708 = 0, $mode718 = 0, $mode765 = 0, $mode773 = 0, $mode789 = 0, $mode796 = 0, $mode798 = 0, $mode805 = 0, $mode812 = 0, $mode822 = 0, $mode868 = 0, $mode926 = 0, $mode_music = 0, $mode_voice = 0; var $mul = 0, $mul1008 = 0, $mul1011 = 0, $mul1012 = 0, $mul1018 = 0, $mul1034 = 0.0, $mul1036 = 0.0, $mul1075 = 0, $mul1082 = 0, $mul1092 = 0, $mul1099 = 0, $mul1111 = 0.0, $mul1124 = 0.0, $mul1127 = 0.0, $mul1131 = 0, $mul1139 = 0, $mul1151 = 0, $mul116 = 0, $mul1162 = 0, $mul119 = 0; var $mul1202 = 0, $mul1247 = 0, $mul1254 = 0, $mul128 = 0, $mul1280 = 0, $mul1291 = 0, $mul1307 = 0, $mul1310 = 0, $mul1318 = 0, $mul1334 = 0, $mul1347 = 0, $mul1351 = 0, $mul136 = 0, $mul1368 = 0, $mul137 = 0, $mul1373 = 0, $mul1507 = 0, $mul151 = 0, $mul152 = 0, $mul1530 = 0; var $mul1534 = 0, $mul1536 = 0, $mul1544 = 0, $mul1550 = 0, $mul1557 = 0, $mul1565 = 0, $mul1571 = 0, $mul1572 = 0, $mul1577 = 0, $mul1583 = 0, $mul159 = 0, $mul1590 = 0, $mul1595 = 0, $mul1596 = 0, $mul1602 = 0, $mul1609 = 0, $mul1618 = 0, $mul1622 = 0, $mul1623 = 0, $mul1630 = 0; var $mul1636 = 0, $mul1672 = 0, $mul1702 = 0.0, $mul1703 = 0.0, $mul1723 = 0, $mul1726 = 0, $mul1886 = 0, $mul1936 = 0, $mul1942 = 0, $mul1971 = 0, $mul1977 = 0, $mul2035 = 0, $mul264 = 0, $mul265 = 0, $mul290 = 0, $mul327 = 0, $mul328 = 0, $mul36 = 0.0, $mul369 = 0.0, $mul371 = 0.0; var $mul376 = 0.0, $mul378 = 0.0, $mul381 = 0, $mul383 = 0, $mul42 = 0.0, $mul438 = 0, $mul440 = 0, $mul574 = 0, $mul578 = 0, $mul584 = 0, $mul587 = 0, $mul69 = 0.0, $mul704 = 0, $mul714 = 0, $mul724 = 0, $mul730 = 0, $mul817 = 0, $mul827 = 0, $mul836 = 0, $mul842 = 0; var $mul885 = 0, $mul887 = 0, $mul895 = 0, $mul897 = 0, $mul906 = 0, $mul909 = 0, $mul912 = 0, $mul913 = 0, $mul918 = 0, $mul924 = 0, $mul937 = 0, $mul940 = 0, $mul953 = 0, $mul960 = 0, $mul973 = 0, $mul976 = 0, $mul979 = 0, $mul988 = 0, $mul991 = 0, $mul992 = 0; var $music_bandwidth_thresholds = 0, $music_prob = 0, $music_prob_max = 0, $music_prob_min = 0, $nBytes = 0, $nChannelsInternal = 0, $nb_compr_bytes = 0, $nb_frames = 0, $nb_no_activity_frames = 0, $nonfinal_frame = 0, $num_multiframes = 0, $offset = 0, $offset1828 = 0, $opusCanSwitch = 0, $opusCanSwitch1432 = 0, $or = 0, $or$cond = 0, $or$cond12 = 0, $or$cond13 = 0, $or$cond14 = 0; var $or$cond2 = 0, $or$cond20 = 0, $or$cond21 = 0, $or$cond23 = 0, $or$cond24 = 0, $or$cond25 = 0, $or$cond26 = 0, $or$cond29 = 0, $or$cond3 = 0, $or$cond30 = 0, $or$cond30$not = 0, $or$cond32 = 0, $or$cond4 = 0, $or$cond5 = 0, $or$cond6 = 0, $or$cond9 = 0, $out_data_bytes$addr = 0, $overlap = 0, $overlap1646 = 0, $overlap1704 = 0; var $packetLossPercentage = 0, $packetLossPercentage356 = 0, $packetLossPercentage413 = 0, $packetLossPercentage538 = 0, $packetLossPercentage763 = 0, $packet_code = 0, $payloadSize_ms = 0, $pcm$addr = 0, $peak_signal_energy = 0, $peak_signal_energy2018 = 0, $peak_signal_energy41 = 0, $peak_signal_energy49 = 0, $prefill = 0, $prefill_offset = 0, $prev_HB_gain = 0, $prev_HB_gain1645 = 0, $prev_HB_gain1651 = 0, $prev_channels = 0, $prev_channels2007 = 0, $prev_framesize = 0; var $prev_mode = 0, $prev_mode1515 = 0, $prev_mode1519 = 0, $prev_mode1869 = 0, $prev_mode1873 = 0, $prev_mode2004 = 0, $prev_mode392 = 0, $prev_mode398 = 0, $prev_mode467 = 0, $prev_mode475 = 0, $prev_mode483 = 0, $prev_mode497 = 0, $prev_mode518 = 0, $prev_mode544 = 0, $prev_mode63 = 0, $prob = 0.0, $rangeFinal = 0, $rangeFinal1423 = 0, $rangeFinal1998 = 0, $rangeFinal2024 = 0; var $rangeFinal2044 = 0, $rate_offset = 0, $read_pos = 0, $read_pos858 = 0, $read_subframe = 0, $read_subframe860 = 0, $reducedDependency = 0, $redundancy = 0, $redundancy_bytes = 0, $redundant_rng = 0, $ret = 0, $retval = 0, $rng = 0, $saved_stack = 0, $saved_stack1009 = 0, $shl = 0, $shr = 0, $shr1746 = 0, $shr1752 = 0, $shr1803 = 0; var $shr329 = 0, $shr384 = 0, $shr415 = 0, $shr579 = 0, $shr936 = 0, $shr941 = 0, $shr946 = 0, $signalType = 0, $signal_type = 0, $signal_type275 = 0, $signal_type280 = 0, $silk_bw_switch = 0, $silk_bw_switch1440 = 0, $silk_bw_switch1790 = 0, $silk_bw_switch866 = 0, $silk_enc = 0, $silk_enc_offset = 0, $silk_mode = 0, $silk_mode1022 = 0, $silk_mode1026 = 0; var $silk_mode1029 = 0, $silk_mode1042 = 0, $silk_mode1129 = 0, $silk_mode1137 = 0, $silk_mode1157 = 0, $silk_mode1165 = 0, $silk_mode1167 = 0, $silk_mode1169 = 0, $silk_mode1173 = 0, $silk_mode1178 = 0, $silk_mode1189 = 0, $silk_mode1194 = 0, $silk_mode1208 = 0, $silk_mode1210 = 0, $silk_mode1216 = 0, $silk_mode1220 = 0, $silk_mode1226 = 0, $silk_mode1228 = 0, $silk_mode1234 = 0, $silk_mode1238 = 0; var $silk_mode1245 = 0, $silk_mode1248 = 0, $silk_mode1256 = 0, $silk_mode1263 = 0, $silk_mode1268 = 0, $silk_mode1276 = 0, $silk_mode1278 = 0, $silk_mode1286 = 0, $silk_mode1296 = 0, $silk_mode1304 = 0, $silk_mode1314 = 0, $silk_mode1321 = 0, $silk_mode1362 = 0, $silk_mode1381 = 0, $silk_mode1390 = 0, $silk_mode1395 = 0, $silk_mode1401 = 0, $silk_mode1411 = 0, $silk_mode1419 = 0, $silk_mode1431 = 0; var $silk_mode1460 = 0, $silk_mode1482 = 0, $silk_mode1676 = 0, $silk_mode1692 = 0, $silk_mode1699 = 0, $silk_mode1708 = 0, $silk_mode1825 = 0, $silk_mode1827 = 0, $silk_mode1908 = 0, $silk_mode271 = 0, $silk_mode273 = 0, $silk_mode353 = 0, $silk_mode355 = 0, $silk_mode409 = 0, $silk_mode412 = 0, $silk_mode425 = 0, $silk_mode426 = 0, $silk_mode510 = 0, $silk_mode522 = 0, $silk_mode526 = 0; var $silk_mode535 = 0, $silk_mode537 = 0, $silk_mode557 = 0, $silk_mode616 = 0, $silk_mode760 = 0, $silk_mode762 = 0, $silk_mode764 = 0, $silk_mode768 = 0, $srate = 0, $st$addr = 0, $start_band = 0, $stereoWidth_Q141677 = 0, $stereoWidth_Q141693 = 0, $stereoWidth_Q141700 = 0, $stereoWidth_Q141709 = 0, $stereo_threshold = 0, $stereo_width = 0.0, $stream_channels = 0, $stream_channels1024 = 0, $stream_channels1168 = 0; var $stream_channels1316 = 0, $stream_channels1427 = 0, $stream_channels1436 = 0, $stream_channels1452 = 0, $stream_channels1656 = 0, $stream_channels1995 = 0, $stream_channels2006 = 0, $stream_channels2028 = 0, $stream_channels331 = 0, $stream_channels345 = 0, $stream_channels349 = 0, $stream_channels503 = 0, $stream_channels524 = 0, $stream_channels530 = 0, $stream_channels703 = 0, $stream_channels713 = 0, $stream_channels723 = 0, $stream_channels729 = 0, $stream_channels876 = 0, $sub = 0.0; var $sub$ptr$div = 0, $sub$ptr$div1549 = 0, $sub$ptr$div1582 = 0, $sub$ptr$div1608 = 0, $sub$ptr$div1635 = 0, $sub$ptr$div1817 = 0, $sub$ptr$div1832 = 0, $sub$ptr$div1856 = 0, $sub$ptr$div1988 = 0, $sub$ptr$div923 = 0, $sub$ptr$lhs$cast = 0, $sub$ptr$lhs$cast1546 = 0, $sub$ptr$lhs$cast1579 = 0, $sub$ptr$lhs$cast1605 = 0, $sub$ptr$lhs$cast1632 = 0, $sub$ptr$lhs$cast1814 = 0, $sub$ptr$lhs$cast1829 = 0, $sub$ptr$lhs$cast1853 = 0, $sub$ptr$lhs$cast1939 = 0, $sub$ptr$lhs$cast1985 = 0; var $sub$ptr$lhs$cast920 = 0, $sub$ptr$rhs$cast = 0, $sub$ptr$rhs$cast1547 = 0, $sub$ptr$rhs$cast1580 = 0, $sub$ptr$rhs$cast1606 = 0, $sub$ptr$rhs$cast1633 = 0, $sub$ptr$rhs$cast1815 = 0, $sub$ptr$rhs$cast1830 = 0, $sub$ptr$rhs$cast1854 = 0, $sub$ptr$rhs$cast1940 = 0, $sub$ptr$rhs$cast1986 = 0, $sub$ptr$rhs$cast921 = 0, $sub$ptr$sub = 0, $sub$ptr$sub1548 = 0, $sub$ptr$sub1581 = 0, $sub$ptr$sub1607 = 0, $sub$ptr$sub1634 = 0, $sub$ptr$sub1816 = 0, $sub$ptr$sub1831 = 0, $sub$ptr$sub1855 = 0; var $sub$ptr$sub1941 = 0, $sub$ptr$sub1987 = 0, $sub$ptr$sub922 = 0, $sub1031 = 0, $sub1032 = 0, $sub1039 = 0.0, $sub1246 = 0, $sub1258 = 0, $sub1265 = 0, $sub1330 = 0, $sub1333 = 0, $sub1484 = 0, $sub1525 = 0, $sub1528 = 0, $sub1539 = 0, $sub1542 = 0, $sub1556 = 0, $sub1569 = 0, $sub1570 = 0, $sub1588 = 0; var $sub1589 = 0, $sub1600 = 0, $sub1601 = 0, $sub1616 = 0, $sub1628 = 0, $sub1671 = 0, $sub1673 = 0, $sub1675 = 0, $sub1675$sink$sink = 0, $sub1725 = 0, $sub1741 = 0, $sub1747 = 0, $sub1753 = 0, $sub1783 = 0, $sub1805 = 0, $sub1806 = 0, $sub1910 = 0, $sub1969 = 0, $sub1970 = 0, $sub1976 = 0; var $sub2034 = 0, $sub335 = 0, $sub367 = 0.0, $sub374 = 0.0, $sub382 = 0, $sub396 = 0, $sub414 = 0, $sub577 = 0, $sub583 = 0, $sub586 = 0, $sub596 = 0, $sub883 = 0, $sub892 = 0, $sub901 = 0, $sub903 = 0, $sub907 = 0, $sub916 = 0, $sub935 = 0, $sub939 = 0, $sum = 0.0; var $switchReady = 0, $threshold = 0, $threshold582 = 0, $toMono = 0, $toMono523 = 0, $toMono527 = 0, $to_celt = 0, $tobool = 0, $tobool1027 = 0, $tobool1046 = 0, $tobool1049 = 0, $tobool1052 = 0, $tobool113 = 0, $tobool1243 = 0, $tobool1249 = 0, $tobool1270 = 0, $tobool1325 = 0, $tobool1383 = 0, $tobool1412 = 0, $tobool1414 = 0; var $tobool1433 = 0, $tobool1461 = 0, $tobool1473 = 0, $tobool1682 = 0, $tobool1735 = 0, $tobool1788 = 0, $tobool1808 = 0, $tobool1838 = 0, $tobool1840 = 0, $tobool1890 = 0, $tobool1892 = 0, $tobool1899 = 0, $tobool1923 = 0, $tobool1925 = 0, $tobool1932 = 0, $tobool1948 = 0, $tobool1950 = 0, $tobool1999 = 0, $tobool2010 = 0, $tobool2013 = 0; var $tobool2015 = 0, $tobool2022 = 0, $tobool2050 = 0, $tobool2067 = 0, $tobool254 = 0, $tobool32 = 0, $tobool410 = 0, $tobool421 = 0, $tobool423 = 0, $tobool424 = 0, $tobool428 = 0, $tobool463 = 0, $tobool490 = 0, $tobool52 = 0, $tobool555 = 0, $tobool558 = 0, $tobool56 = 0, $tobool591 = 0, $tobool610 = 0, $tobool617 = 0; var $tobool697 = 0, $tobool784 = 0, $tobool864 = 0, $tobool873 = 0, $tobool967 = 0, $tocmode = 0, $total_bitRate = 0, $total_buffer = 0, $useCBR = 0, $useCBR1269 = 0, $useDTX = 0, $useDTX427 = 0, $useInBandFEC = 0, $useInBandFEC761 = 0, $use_dtx = 0, $use_dtx2009 = 0, $use_vbr = 0, $use_vbr1021 = 0, $use_vbr1048 = 0, $use_vbr1242 = 0; var $use_vbr1313 = 0, $use_vbr1472 = 0, $use_vbr1898 = 0, $use_vbr1916 = 0, $use_vbr1931 = 0, $use_vbr2066 = 0, $use_vbr253 = 0, $use_vbr270 = 0, $use_vbr352 = 0, $use_vbr533 = 0, $user_bandwidth = 0, $user_bandwidth636 = 0, $user_bandwidth699 = 0, $user_forced_mode = 0, $user_forced_mode448 = 0, $vararg_buffer = 0, $vararg_buffer100 = 0, $vararg_buffer103 = 0, $vararg_buffer105 = 0, $vararg_buffer108 = 0; var $vararg_buffer111 = 0, $vararg_buffer114 = 0, $vararg_buffer117 = 0, $vararg_buffer33 = 0, $vararg_buffer36 = 0, $vararg_buffer39 = 0, $vararg_buffer42 = 0, $vararg_buffer45 = 0, $vararg_buffer48 = 0, $vararg_buffer51 = 0, $vararg_buffer54 = 0, $vararg_buffer57 = 0, $vararg_buffer60 = 0, $vararg_buffer63 = 0, $vararg_buffer66 = 0, $vararg_buffer69 = 0, $vararg_buffer72 = 0, $vararg_buffer75 = 0, $vararg_buffer78 = 0, $vararg_buffer81 = 0; var $vararg_buffer84 = 0, $vararg_buffer87 = 0, $vararg_buffer89 = 0, $vararg_buffer92 = 0, $vararg_buffer94 = 0, $vararg_buffer97 = 0, $variable_HP_smth1_Q15 = 0, $variable_HP_smth2_Q15 = 0, $variable_HP_smth2_Q15934 = 0, $variable_HP_smth2_Q15938 = 0, $variable_HP_smth2_Q15944 = 0, $variable_HP_smth2_Q15945 = 0, $vbr_constraint1495 = 0, $vla = 0, $vla$alloca_mul = 0, $vla1010 = 0, $vla1010$alloca_mul = 0, $vla1509 = 0, $vla1509$alloca_mul = 0, $voice_bandwidth_thresholds = 0; var $voice_est = 0, $voice_ratio = 0, $voice_ratio285 = 0, $voice_ratio289 = 0, $voice_ratio72 = 0, $width_mem = 0, $window = 0, $window1648 = 0, $window1706 = 0, $xor = 0, $zero = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 880|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(880|0); $vararg_buffer117 = sp + 240|0; $vararg_buffer114 = sp + 232|0; $vararg_buffer111 = sp + 224|0; $vararg_buffer108 = sp + 216|0; $vararg_buffer105 = sp + 208|0; $vararg_buffer103 = sp + 200|0; $vararg_buffer100 = sp + 192|0; $vararg_buffer97 = sp + 184|0; $vararg_buffer94 = sp + 176|0; $vararg_buffer92 = sp + 168|0; $vararg_buffer89 = sp + 160|0; $vararg_buffer87 = sp + 152|0; $vararg_buffer84 = sp + 144|0; $vararg_buffer81 = sp + 136|0; $vararg_buffer78 = sp + 128|0; $vararg_buffer75 = sp + 120|0; $vararg_buffer72 = sp + 112|0; $vararg_buffer69 = sp + 104|0; $vararg_buffer66 = sp + 96|0; $vararg_buffer63 = sp + 88|0; $vararg_buffer60 = sp + 80|0; $vararg_buffer57 = sp + 72|0; $vararg_buffer54 = sp + 64|0; $vararg_buffer51 = sp + 56|0; $vararg_buffer48 = sp + 48|0; $vararg_buffer45 = sp + 40|0; $vararg_buffer42 = sp + 32|0; $vararg_buffer39 = sp + 24|0; $vararg_buffer36 = sp + 16|0; $vararg_buffer33 = sp + 8|0; $vararg_buffer = sp; $nBytes = sp + 784|0; $enc = sp + 736|0; $redundant_rng = sp + 700|0; $celt_mode = sp + 648|0; $analysis_info = sp + 584|0; $dummy = sp + 424|0; $bandwidth_thresholds = sp + 384|0; $zero = sp + 300|0; $info = sp + 264|0; $dummy1877 = sp + 864|0; $dummy1953 = sp + 862|0; $st$addr = $st; $pcm$addr = $pcm; $frame_size$addr = $frame_size; $data$addr = $data; $out_data_bytes$addr = $out_data_bytes; $lsb_depth$addr = $lsb_depth; $analysis_pcm$addr = $analysis_pcm; $analysis_size$addr = $analysis_size; $c1$addr = $c1; $c2$addr = $c2; $analysis_channels$addr = $analysis_channels; $downmix$addr = $downmix; $float_api$addr = $float_api; $ret = 0; $prefill = 0; $start_band = 0; $redundancy = 0; $redundancy_bytes = 0; $celt_to_silk = 0; $to_celt = 0; HEAP32[$redundant_rng>>2] = 0; $analysis_read_pos_bak = -1; $analysis_read_subframe_bak = -1; $is_silence = 0; $0 = $out_data_bytes$addr; $cmp = (1276)<($0|0); $1 = $out_data_bytes$addr; $cond = $cmp ? 1276 : $1; $max_data_bytes = $cond; $2 = $st$addr; $rangeFinal = ((($2)) + 18132|0); HEAP32[$rangeFinal>>2] = 0; $3 = $frame_size$addr; $cmp1 = ($3|0)<=(0); $4 = $max_data_bytes; $cmp2 = ($4|0)<=(0); $or$cond = $cmp1 | $cmp2; if ($or$cond) { $retval = -1; $1336 = $retval; STACKTOP = sp;return ($1336|0); } $5 = $max_data_bytes; $cmp3 = ($5|0)==(1); if ($cmp3) { $6 = $st$addr; $Fs = ((($6)) + 144|0); $7 = HEAP32[$Fs>>2]|0; $8 = $frame_size$addr; $mul = ($8*10)|0; $cmp4 = ($7|0)==($mul|0); if ($cmp4) { $retval = -2; $1336 = $retval; STACKTOP = sp;return ($1336|0); } } $9 = $st$addr; $10 = $st$addr; $silk_enc_offset = ((($10)) + 4|0); $11 = HEAP32[$silk_enc_offset>>2]|0; $add$ptr = (($9) + ($11)|0); $silk_enc = $add$ptr; $12 = $st$addr; $13 = $st$addr; $14 = HEAP32[$13>>2]|0; $add$ptr7 = (($12) + ($14)|0); $celt_enc = $add$ptr7; $15 = $st$addr; $application = ((($15)) + 108|0); $16 = HEAP32[$application>>2]|0; $cmp8 = ($16|0)==(2051); if ($cmp8) { $delay_compensation = 0; } else { $17 = $st$addr; $delay_compensation10 = ((($17)) + 116|0); $18 = HEAP32[$delay_compensation10>>2]|0; $delay_compensation = $18; } $19 = $lsb_depth$addr; $20 = $st$addr; $lsb_depth12 = ((($20)) + 168|0); $21 = HEAP32[$lsb_depth12>>2]|0; $cmp13 = ($19|0)<($21|0); if ($cmp13) { $22 = $lsb_depth$addr; $cond18 = $22; } else { $23 = $st$addr; $lsb_depth16 = ((($23)) + 168|0); $24 = HEAP32[$lsb_depth16>>2]|0; $cond18 = $24; } $lsb_depth$addr = $cond18; $25 = $celt_enc; $sub$ptr$lhs$cast = $celt_mode; $sub$ptr$rhs$cast = $celt_mode; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $sub$ptr$div = (($sub$ptr$sub|0) / 4)&-1; $add$ptr19 = (($celt_mode) + ($sub$ptr$div<<2)|0); HEAP32[$vararg_buffer>>2] = $add$ptr19; (_opus_custom_encoder_ctl($25,10015,$vararg_buffer)|0); HEAP32[$analysis_info>>2] = 0; $26 = $st$addr; $silk_mode = ((($26)) + 8|0); $complexity = ((($silk_mode)) + 36|0); $27 = HEAP32[$complexity>>2]|0; $cmp20 = ($27|0)>=(7); if ($cmp20) { $28 = $st$addr; $Fs22 = ((($28)) + 144|0); $29 = HEAP32[$Fs22>>2]|0; $cmp23 = ($29|0)>=(16000); if ($cmp23) { $30 = $pcm$addr; $31 = $frame_size$addr; $32 = $st$addr; $channels = ((($32)) + 112|0); $33 = HEAP32[$channels>>2]|0; $34 = $lsb_depth$addr; $call25 = (_is_digital_silence($30,$31,$33,$34)|0); $tobool = ($call25|0)!=(0); if ($tobool) { $is_silence = 1; } else { $35 = $st$addr; $analysis = ((($35)) + 188|0); $read_pos = ((($analysis)) + 7448|0); $36 = HEAP32[$read_pos>>2]|0; $analysis_read_pos_bak = $36; $37 = $st$addr; $analysis28 = ((($37)) + 188|0); $read_subframe = ((($analysis28)) + 7452|0); $38 = HEAP32[$read_subframe>>2]|0; $analysis_read_subframe_bak = $38; $39 = $st$addr; $analysis29 = ((($39)) + 188|0); $40 = HEAP32[$celt_mode>>2]|0; $41 = $analysis_pcm$addr; $42 = $analysis_size$addr; $43 = $frame_size$addr; $44 = $c1$addr; $45 = $c2$addr; $46 = $analysis_channels$addr; $47 = $st$addr; $Fs30 = ((($47)) + 144|0); $48 = HEAP32[$Fs30>>2]|0; $49 = $lsb_depth$addr; $50 = $downmix$addr; _run_analysis($analysis29,$40,$41,$42,$43,$44,$45,$46,$48,$49,$50,$analysis_info); } $51 = $is_silence; $tobool32 = ($51|0)!=(0); if (!($tobool32)) { $activity_probability = ((($analysis_info)) + 36|0); $52 = +HEAPF32[$activity_probability>>2]; $cmp34 = $52 > 0.10000000149011612; if ($cmp34) { $53 = $st$addr; $peak_signal_energy = ((($53)) + 18124|0); $54 = +HEAPF32[$peak_signal_energy>>2]; $mul36 = 0.99900001287460327 * $54; $55 = $pcm$addr; $56 = $frame_size$addr; $57 = $st$addr; $channels37 = ((($57)) + 112|0); $58 = HEAP32[$channels37>>2]|0; $59 = $st$addr; $arch = ((($59)) + 180|0); $60 = HEAP32[$arch>>2]|0; $call38 = (+_compute_frame_energy($55,$56,$58,$60)); $cmp39 = $mul36 > $call38; if ($cmp39) { $61 = $st$addr; $peak_signal_energy41 = ((($61)) + 18124|0); $62 = +HEAPF32[$peak_signal_energy41>>2]; $mul42 = 0.99900001287460327 * $62; $cond48 = $mul42; } else { $63 = $pcm$addr; $64 = $frame_size$addr; $65 = $st$addr; $channels44 = ((($65)) + 112|0); $66 = HEAP32[$channels44>>2]|0; $67 = $st$addr; $arch45 = ((($67)) + 180|0); $68 = HEAP32[$arch45>>2]|0; $call46 = (+_compute_frame_energy($63,$64,$66,$68)); $cond48 = $call46; } $69 = $st$addr; $peak_signal_energy49 = ((($69)) + 18124|0); HEAPF32[$peak_signal_energy49>>2] = $cond48; } } } } $70 = $is_silence; $tobool52 = ($70|0)!=(0); if (!($tobool52)) { $71 = $st$addr; $voice_ratio = ((($71)) + 140|0); HEAP32[$voice_ratio>>2] = -1; } $72 = $st$addr; $detected_bandwidth = ((($72)) + 18116|0); HEAP32[$detected_bandwidth>>2] = 0; $73 = HEAP32[$analysis_info>>2]|0; $tobool56 = ($73|0)!=(0); do { if ($tobool56) { $74 = $st$addr; $signal_type = ((($74)) + 124|0); $75 = HEAP32[$signal_type>>2]|0; $cmp58 = ($75|0)==(-1000); if ($cmp58) { $76 = $st$addr; $prev_mode = ((($76)) + 14224|0); $77 = HEAP32[$prev_mode>>2]|0; $cmp60 = ($77|0)==(0); do { if ($cmp60) { $music_prob = ((($analysis_info)) + 20|0); $78 = +HEAPF32[$music_prob>>2]; $prob = $78; } else { $79 = $st$addr; $prev_mode63 = ((($79)) + 14224|0); $80 = HEAP32[$prev_mode63>>2]|0; $cmp64 = ($80|0)==(1002); if ($cmp64) { $music_prob_max = ((($analysis_info)) + 28|0); $81 = +HEAPF32[$music_prob_max>>2]; $prob = $81; break; } else { $music_prob_min = ((($analysis_info)) + 24|0); $82 = +HEAPF32[$music_prob_min>>2]; $prob = $82; break; } } } while(0); $83 = $prob; $sub = 1.0 - $83; $mul69 = 100.0 * $sub; $conv = $mul69; $add = 0.5 + $conv; $call70 = (+Math_floor((+$add))); $conv71 = (~~(($call70))); $84 = $st$addr; $voice_ratio72 = ((($84)) + 140|0); HEAP32[$voice_ratio72>>2] = $conv71; } $bandwidth = ((($analysis_info)) + 32|0); $85 = HEAP32[$bandwidth>>2]|0; $analysis_bandwidth = $85; $86 = $analysis_bandwidth; $cmp74 = ($86|0)<=(12); if ($cmp74) { $87 = $st$addr; $detected_bandwidth77 = ((($87)) + 18116|0); HEAP32[$detected_bandwidth77>>2] = 1101; break; } $88 = $analysis_bandwidth; $cmp79 = ($88|0)<=(14); if ($cmp79) { $89 = $st$addr; $detected_bandwidth82 = ((($89)) + 18116|0); HEAP32[$detected_bandwidth82>>2] = 1102; break; } $90 = $analysis_bandwidth; $cmp84 = ($90|0)<=(16); if ($cmp84) { $91 = $st$addr; $detected_bandwidth87 = ((($91)) + 18116|0); HEAP32[$detected_bandwidth87>>2] = 1103; break; } else { $92 = $analysis_bandwidth; $cmp89 = ($92|0)<=(18); $93 = $st$addr; $detected_bandwidth92 = ((($93)) + 18116|0); $$sink = $cmp89 ? 1104 : 1105; HEAP32[$detected_bandwidth92>>2] = $$sink; break; } } } while(0); $94 = $st$addr; $channels100 = ((($94)) + 112|0); $95 = HEAP32[$channels100>>2]|0; $cmp101 = ($95|0)==(2); if ($cmp101) { $96 = $st$addr; $force_channels = ((($96)) + 120|0); $97 = HEAP32[$force_channels>>2]|0; $cmp104 = ($97|0)!=(1); if ($cmp104) { $98 = $pcm$addr; $99 = $frame_size$addr; $100 = $st$addr; $Fs107 = ((($100)) + 144|0); $101 = HEAP32[$Fs107>>2]|0; $102 = $st$addr; $width_mem = ((($102)) + 14256|0); $call108 = (+_compute_stereo_width($98,$99,$101,$width_mem)); $stereo_width = $call108; } else { label = 43; } } else { label = 43; } if ((label|0) == 43) { $stereo_width = 0.0; } $103 = $delay_compensation; $total_buffer = $103; $104 = $st$addr; $105 = $frame_size$addr; $106 = $max_data_bytes; $call111 = (_user_bitrate_to_bitrate($104,$105,$106)|0); $107 = $st$addr; $bitrate_bps = ((($107)) + 160|0); HEAP32[$bitrate_bps>>2] = $call111; $108 = $st$addr; $Fs112 = ((($108)) + 144|0); $109 = HEAP32[$Fs112>>2]|0; $110 = $frame_size$addr; $div = (($109|0) / ($110|0))&-1; $frame_rate = $div; $111 = $st$addr; $use_vbr = ((($111)) + 148|0); $112 = HEAP32[$use_vbr>>2]|0; $tobool113 = ($112|0)!=(0); if (!($tobool113)) { $113 = $st$addr; $Fs115 = ((($113)) + 144|0); $114 = HEAP32[$Fs115>>2]|0; $mul116 = ($114*12)|0; $115 = $frame_size$addr; $div117 = (($mul116|0) / ($115|0))&-1; $frame_rate12 = $div117; $116 = $st$addr; $bitrate_bps118 = ((($116)) + 160|0); $117 = HEAP32[$bitrate_bps118>>2]|0; $mul119 = ($117*12)|0; $div120 = (($mul119|0) / 8)&-1; $118 = $frame_rate12; $div121 = (($118|0) / 2)&-1; $add122 = (($div120) + ($div121))|0; $119 = $frame_rate12; $div123 = (($add122|0) / ($119|0))&-1; $120 = $max_data_bytes; $cmp124 = ($div123|0)<($120|0); if ($cmp124) { $121 = $st$addr; $bitrate_bps127 = ((($121)) + 160|0); $122 = HEAP32[$bitrate_bps127>>2]|0; $mul128 = ($122*12)|0; $div129 = (($mul128|0) / 8)&-1; $123 = $frame_rate12; $div130 = (($123|0) / 2)&-1; $add131 = (($div129) + ($div130))|0; $124 = $frame_rate12; $div132 = (($add131|0) / ($124|0))&-1; $cond135 = $div132; } else { $125 = $max_data_bytes; $cond135 = $125; } $cbrBytes = $cond135; $126 = $cbrBytes; $127 = $frame_rate12; $mul136 = Math_imul($126, $127)|0; $mul137 = $mul136<<3; $div138 = (($mul137|0) / 12)&-1; $128 = $st$addr; $bitrate_bps139 = ((($128)) + 160|0); HEAP32[$bitrate_bps139>>2] = $div138; $129 = $cbrBytes; $cmp140 = (1)>($129|0); $130 = $cbrBytes; $cond145 = $cmp140 ? 1 : $130; $max_data_bytes = $cond145; } $131 = $max_data_bytes; $cmp147 = ($131|0)<(3); do { if (!($cmp147)) { $132 = $st$addr; $bitrate_bps150 = ((($132)) + 160|0); $133 = HEAP32[$bitrate_bps150>>2]|0; $134 = $frame_rate; $mul151 = ($134*3)|0; $mul152 = $mul151<<3; $cmp153 = ($133|0)<($mul152|0); if (!($cmp153)) { $135 = $frame_rate; $cmp156 = ($135|0)<(50); if ($cmp156) { $136 = $max_data_bytes; $137 = $frame_rate; $mul159 = Math_imul($136, $137)|0; $cmp160 = ($mul159|0)<(300); if ($cmp160) { break; } $138 = $st$addr; $bitrate_bps163 = ((($138)) + 160|0); $139 = HEAP32[$bitrate_bps163>>2]|0; $cmp164 = ($139|0)<(2400); if ($cmp164) { break; } } $188 = $frame_rate; $189 = $max_data_bytes; $mul264 = Math_imul($188, $189)|0; $mul265 = $mul264<<3; $max_rate = $mul265; $190 = $st$addr; $bitrate_bps266 = ((($190)) + 160|0); $191 = HEAP32[$bitrate_bps266>>2]|0; $192 = $st$addr; $channels267 = ((($192)) + 112|0); $193 = HEAP32[$channels267>>2]|0; $194 = $st$addr; $Fs268 = ((($194)) + 144|0); $195 = HEAP32[$Fs268>>2]|0; $196 = $frame_size$addr; $div269 = (($195|0) / ($196|0))&-1; $197 = $st$addr; $use_vbr270 = ((($197)) + 148|0); $198 = HEAP32[$use_vbr270>>2]|0; $199 = $st$addr; $silk_mode271 = ((($199)) + 8|0); $complexity272 = ((($silk_mode271)) + 36|0); $200 = HEAP32[$complexity272>>2]|0; $201 = $st$addr; $silk_mode273 = ((($201)) + 8|0); $packetLossPercentage = ((($silk_mode273)) + 32|0); $202 = HEAP32[$packetLossPercentage>>2]|0; $call274 = (_compute_equiv_rate($191,$193,$div269,$198,0,$200,$202)|0); $equiv_rate = $call274; $203 = $st$addr; $signal_type275 = ((($203)) + 124|0); $204 = HEAP32[$signal_type275>>2]|0; $cmp276 = ($204|0)==(3001); do { if ($cmp276) { $voice_est = 127; } else { $205 = $st$addr; $signal_type280 = ((($205)) + 124|0); $206 = HEAP32[$signal_type280>>2]|0; $cmp281 = ($206|0)==(3002); if ($cmp281) { $voice_est = 0; break; } $207 = $st$addr; $voice_ratio285 = ((($207)) + 140|0); $208 = HEAP32[$voice_ratio285>>2]|0; $cmp286 = ($208|0)>=(0); $209 = $st$addr; if ($cmp286) { $voice_ratio289 = ((($209)) + 140|0); $210 = HEAP32[$voice_ratio289>>2]|0; $mul290 = ($210*327)|0; $shr = $mul290 >> 8; $voice_est = $shr; $211 = $st$addr; $application291 = ((($211)) + 108|0); $212 = HEAP32[$application291>>2]|0; $cmp292 = ($212|0)==(2049); if (!($cmp292)) { break; } $213 = $voice_est; $cmp295 = ($213|0)<(115); $214 = $voice_est; $cond300 = $cmp295 ? $214 : 115; $voice_est = $cond300; break; } $application303 = ((($209)) + 108|0); $215 = HEAP32[$application303>>2]|0; $cmp304 = ($215|0)==(2048); if ($cmp304) { $voice_est = 115; break; } else { $voice_est = 48; break; } } } while(0); $216 = $st$addr; $force_channels312 = ((($216)) + 120|0); $217 = HEAP32[$force_channels312>>2]|0; $cmp313 = ($217|0)!=(-1000); if ($cmp313) { $218 = $st$addr; $channels316 = ((($218)) + 112|0); $219 = HEAP32[$channels316>>2]|0; $cmp317 = ($219|0)==(2); if ($cmp317) { $220 = $st$addr; $force_channels320 = ((($220)) + 120|0); $221 = HEAP32[$force_channels320>>2]|0; $222 = $st$addr; $$sink7$sink = $221;$$sink8$sink = $222; } else { label = 93; } } else { label = 93; } do { if ((label|0) == 93) { $223 = $st$addr; $channels323 = ((($223)) + 112|0); $224 = HEAP32[$channels323>>2]|0; $cmp324 = ($224|0)==(2); if (!($cmp324)) { $233 = $st$addr; $channels344 = ((($233)) + 112|0); $234 = HEAP32[$channels344>>2]|0; $235 = $st$addr; $$sink7$sink = $234;$$sink8$sink = $235; break; } $225 = $voice_est; $226 = $voice_est; $mul327 = Math_imul($225, $226)|0; $mul328 = ($mul327*2000)|0; $shr329 = $mul328 >> 14; $add330 = (17000 + ($shr329))|0; $stereo_threshold = $add330; $227 = $st$addr; $stream_channels331 = ((($227)) + 14188|0); $228 = HEAP32[$stream_channels331>>2]|0; $cmp332 = ($228|0)==(2); $229 = $stereo_threshold; if ($cmp332) { $sub335 = (($229) - 1000)|0; $stereo_threshold = $sub335; } else { $add337 = (($229) + 1000)|0; $stereo_threshold = $add337; } $230 = $equiv_rate; $231 = $stereo_threshold; $cmp339 = ($230|0)>($231|0); $cond341 = $cmp339 ? 2 : 1; $232 = $st$addr; $$sink7$sink = $cond341;$$sink8$sink = $232; } } while(0); $stream_channels345 = ((($$sink8$sink)) + 14188|0); HEAP32[$stream_channels345>>2] = $$sink7$sink; $236 = $st$addr; $bitrate_bps348 = ((($236)) + 160|0); $237 = HEAP32[$bitrate_bps348>>2]|0; $238 = $st$addr; $stream_channels349 = ((($238)) + 14188|0); $239 = HEAP32[$stream_channels349>>2]|0; $240 = $st$addr; $Fs350 = ((($240)) + 144|0); $241 = HEAP32[$Fs350>>2]|0; $242 = $frame_size$addr; $div351 = (($241|0) / ($242|0))&-1; $243 = $st$addr; $use_vbr352 = ((($243)) + 148|0); $244 = HEAP32[$use_vbr352>>2]|0; $245 = $st$addr; $silk_mode353 = ((($245)) + 8|0); $complexity354 = ((($silk_mode353)) + 36|0); $246 = HEAP32[$complexity354>>2]|0; $247 = $st$addr; $silk_mode355 = ((($247)) + 8|0); $packetLossPercentage356 = ((($silk_mode355)) + 32|0); $248 = HEAP32[$packetLossPercentage356>>2]|0; $call357 = (_compute_equiv_rate($237,$239,$div351,$244,0,$246,$248)|0); $equiv_rate = $call357; $249 = $st$addr; $application358 = ((($249)) + 108|0); $250 = HEAP32[$application358>>2]|0; $cmp359 = ($250|0)==(2051); $251 = $st$addr; do { if ($cmp359) { $$sink10$sink = 1002;$$sink11$sink = $251; label = 117; } else { $user_forced_mode = ((($251)) + 136|0); $252 = HEAP32[$user_forced_mode>>2]|0; $cmp364 = ($252|0)==(-1000); if (!($cmp364)) { $301 = $st$addr; $user_forced_mode448 = ((($301)) + 136|0); $302 = HEAP32[$user_forced_mode448>>2]|0; $303 = $st$addr; $$sink10$sink = $302;$$sink11$sink = $303; label = 117; break; } $253 = $stereo_width; $sub367 = 1.0 - $253; $254 = HEAP32[22]|0; $conv368 = (+($254|0)); $mul369 = $sub367 * $conv368; $255 = $stereo_width; $256 = HEAP32[(96)>>2]|0; $conv370 = (+($256|0)); $mul371 = $255 * $conv370; $add372 = $mul369 + $mul371; $conv373 = (~~(($add372))); $mode_voice = $conv373; $257 = $stereo_width; $sub374 = 1.0 - $257; $258 = HEAP32[(100)>>2]|0; $conv375 = (+($258|0)); $mul376 = $sub374 * $conv375; $259 = $stereo_width; $260 = HEAP32[(100)>>2]|0; $conv377 = (+($260|0)); $mul378 = $259 * $conv377; $add379 = $mul376 + $mul378; $conv380 = (~~(($add379))); $mode_music = $conv380; $261 = $mode_music; $262 = $voice_est; $263 = $voice_est; $mul381 = Math_imul($262, $263)|0; $264 = $mode_voice; $265 = $mode_music; $sub382 = (($264) - ($265))|0; $mul383 = Math_imul($mul381, $sub382)|0; $shr384 = $mul383 >> 14; $add385 = (($261) + ($shr384))|0; $threshold = $add385; $266 = $st$addr; $application386 = ((($266)) + 108|0); $267 = HEAP32[$application386>>2]|0; $cmp387 = ($267|0)==(2048); if ($cmp387) { $268 = $threshold; $add390 = (($268) + 8000)|0; $threshold = $add390; } $269 = $st$addr; $prev_mode392 = ((($269)) + 14224|0); $270 = HEAP32[$prev_mode392>>2]|0; $cmp393 = ($270|0)==(1002); do { if ($cmp393) { $271 = $threshold; $sub396 = (($271) - 4000)|0; $threshold = $sub396; } else { $272 = $st$addr; $prev_mode398 = ((($272)) + 14224|0); $273 = HEAP32[$prev_mode398>>2]|0; $cmp399 = ($273|0)>(0); if (!($cmp399)) { break; } $274 = $threshold; $add402 = (($274) + 4000)|0; $threshold = $add402; } } while(0); $275 = $equiv_rate; $276 = $threshold; $cmp405 = ($275|0)>=($276|0); $cond407 = $cmp405 ? 1002 : 1000; $277 = $st$addr; $mode408 = ((($277)) + 14220|0); HEAP32[$mode408>>2] = $cond407; $278 = $st$addr; $silk_mode409 = ((($278)) + 8|0); $useInBandFEC = ((($silk_mode409)) + 40|0); $279 = HEAP32[$useInBandFEC>>2]|0; $tobool410 = ($279|0)!=(0); do { if ($tobool410) { $280 = $st$addr; $silk_mode412 = ((($280)) + 8|0); $packetLossPercentage413 = ((($silk_mode412)) + 32|0); $281 = HEAP32[$packetLossPercentage413>>2]|0; $282 = $voice_est; $sub414 = (128 - ($282))|0; $shr415 = $sub414 >> 4; $cmp416 = ($281|0)>($shr415|0); if (!($cmp416)) { break; } $283 = $st$addr; $mode419 = ((($283)) + 14220|0); HEAP32[$mode419>>2] = 1000; } } while(0); $284 = $st$addr; $use_dtx = ((($284)) + 184|0); $285 = HEAP32[$use_dtx>>2]|0; $tobool421 = ($285|0)!=(0); if ($tobool421) { $286 = HEAP32[$analysis_info>>2]|0; $tobool423 = ($286|0)!=(0); $287 = $is_silence; $tobool424 = ($287|0)!=(0); $288 = $tobool423 ? 1 : $tobool424; $lnot = $288 ^ 1; $289 = $lnot; } else { $289 = 0; } $land$ext = $289&1; $290 = $st$addr; $silk_mode425 = ((($290)) + 8|0); $useDTX = ((($silk_mode425)) + 48|0); HEAP32[$useDTX>>2] = $land$ext; $291 = $st$addr; $silk_mode426 = ((($291)) + 8|0); $useDTX427 = ((($silk_mode426)) + 48|0); $292 = HEAP32[$useDTX427>>2]|0; $tobool428 = ($292|0)!=(0); $293 = $voice_est; $cmp430 = ($293|0)>(100); $or$cond9 = $tobool428 & $cmp430; if ($or$cond9) { $294 = $st$addr; $mode433 = ((($294)) + 14220|0); HEAP32[$mode433>>2] = 1000; } $295 = $max_data_bytes; $296 = $frame_rate; $cmp435 = ($296|0)>(50); $cond437 = $cmp435 ? 9000 : 6000; $297 = $frame_size$addr; $mul438 = Math_imul($cond437, $297)|0; $298 = $st$addr; $Fs439 = ((($298)) + 144|0); $299 = HEAP32[$Fs439>>2]|0; $mul440 = $299<<3; $div441 = (($mul438|0) / ($mul440|0))&-1; $cmp442 = ($295|0)<($div441|0); if (!($cmp442)) { break; } $300 = $st$addr; $$sink10$sink = 1002;$$sink11$sink = $300; label = 117; } } while(0); if ((label|0) == 117) { $mode445 = ((($$sink11$sink)) + 14220|0); HEAP32[$mode445>>2] = $$sink10$sink; } $304 = $st$addr; $mode452 = ((($304)) + 14220|0); $305 = HEAP32[$mode452>>2]|0; $cmp453 = ($305|0)!=(1002); if ($cmp453) { $306 = $frame_size$addr; $307 = $st$addr; $Fs456 = ((($307)) + 144|0); $308 = HEAP32[$Fs456>>2]|0; $div457 = (($308|0) / 100)&-1; $cmp458 = ($306|0)<($div457|0); if ($cmp458) { $309 = $st$addr; $mode461 = ((($309)) + 14220|0); HEAP32[$mode461>>2] = 1002; } } $310 = $st$addr; $lfe = ((($310)) + 176|0); $311 = HEAP32[$lfe>>2]|0; $tobool463 = ($311|0)!=(0); if ($tobool463) { $312 = $st$addr; $mode465 = ((($312)) + 14220|0); HEAP32[$mode465>>2] = 1002; } $313 = $st$addr; $prev_mode467 = ((($313)) + 14224|0); $314 = HEAP32[$prev_mode467>>2]|0; $cmp468 = ($314|0)>(0); do { if ($cmp468) { $315 = $st$addr; $mode471 = ((($315)) + 14220|0); $316 = HEAP32[$mode471>>2]|0; $cmp472 = ($316|0)!=(1002); if ($cmp472) { $317 = $st$addr; $prev_mode475 = ((($317)) + 14224|0); $318 = HEAP32[$prev_mode475>>2]|0; $cmp476 = ($318|0)==(1002); if (!($cmp476)) { label = 126; } } else { label = 126; } if ((label|0) == 126) { $319 = $st$addr; $mode479 = ((($319)) + 14220|0); $320 = HEAP32[$mode479>>2]|0; $cmp480 = ($320|0)==(1002); if (!($cmp480)) { break; } $321 = $st$addr; $prev_mode483 = ((($321)) + 14224|0); $322 = HEAP32[$prev_mode483>>2]|0; $cmp484 = ($322|0)!=(1002); if (!($cmp484)) { break; } } $redundancy = 1; $323 = $st$addr; $mode487 = ((($323)) + 14220|0); $324 = HEAP32[$mode487>>2]|0; $cmp488 = ($324|0)!=(1002); $conv489 = $cmp488&1; $celt_to_silk = $conv489; $325 = $celt_to_silk; $tobool490 = ($325|0)!=(0); if ($tobool490) { break; } $326 = $frame_size$addr; $327 = $st$addr; $Fs492 = ((($327)) + 144|0); $328 = HEAP32[$Fs492>>2]|0; $div493 = (($328|0) / 100)&-1; $cmp494 = ($326|0)>=($div493|0); if ($cmp494) { $329 = $st$addr; $prev_mode497 = ((($329)) + 14224|0); $330 = HEAP32[$prev_mode497>>2]|0; $331 = $st$addr; $mode498 = ((($331)) + 14220|0); HEAP32[$mode498>>2] = $330; $to_celt = 1; break; } else { $redundancy = 0; break; } } } while(0); $332 = $st$addr; $stream_channels503 = ((($332)) + 14188|0); $333 = HEAP32[$stream_channels503>>2]|0; $cmp504 = ($333|0)==(1); do { if ($cmp504) { $334 = $st$addr; $prev_channels = ((($334)) + 14228|0); $335 = HEAP32[$prev_channels>>2]|0; $cmp507 = ($335|0)==(2); if (!($cmp507)) { label = 138; break; } $336 = $st$addr; $silk_mode510 = ((($336)) + 8|0); $toMono = ((($silk_mode510)) + 60|0); $337 = HEAP32[$toMono>>2]|0; $cmp511 = ($337|0)==(0); if (!($cmp511)) { label = 138; break; } $338 = $st$addr; $mode514 = ((($338)) + 14220|0); $339 = HEAP32[$mode514>>2]|0; $cmp515 = ($339|0)!=(1002); if (!($cmp515)) { label = 138; break; } $340 = $st$addr; $prev_mode518 = ((($340)) + 14224|0); $341 = HEAP32[$prev_mode518>>2]|0; $cmp519 = ($341|0)!=(1002); if (!($cmp519)) { label = 138; break; } $342 = $st$addr; $silk_mode522 = ((($342)) + 8|0); $toMono523 = ((($silk_mode522)) + 60|0); HEAP32[$toMono523>>2] = 1; $343 = $st$addr; $stream_channels524 = ((($343)) + 14188|0); HEAP32[$stream_channels524>>2] = 2; } else { label = 138; } } while(0); if ((label|0) == 138) { $344 = $st$addr; $silk_mode526 = ((($344)) + 8|0); $toMono527 = ((($silk_mode526)) + 60|0); HEAP32[$toMono527>>2] = 0; } $345 = $st$addr; $bitrate_bps529 = ((($345)) + 160|0); $346 = HEAP32[$bitrate_bps529>>2]|0; $347 = $st$addr; $stream_channels530 = ((($347)) + 14188|0); $348 = HEAP32[$stream_channels530>>2]|0; $349 = $st$addr; $Fs531 = ((($349)) + 144|0); $350 = HEAP32[$Fs531>>2]|0; $351 = $frame_size$addr; $div532 = (($350|0) / ($351|0))&-1; $352 = $st$addr; $use_vbr533 = ((($352)) + 148|0); $353 = HEAP32[$use_vbr533>>2]|0; $354 = $st$addr; $mode534 = ((($354)) + 14220|0); $355 = HEAP32[$mode534>>2]|0; $356 = $st$addr; $silk_mode535 = ((($356)) + 8|0); $complexity536 = ((($silk_mode535)) + 36|0); $357 = HEAP32[$complexity536>>2]|0; $358 = $st$addr; $silk_mode537 = ((($358)) + 8|0); $packetLossPercentage538 = ((($silk_mode537)) + 32|0); $359 = HEAP32[$packetLossPercentage538>>2]|0; $call539 = (_compute_equiv_rate($346,$348,$div532,$353,$355,$357,$359)|0); $equiv_rate = $call539; $360 = $st$addr; $mode540 = ((($360)) + 14220|0); $361 = HEAP32[$mode540>>2]|0; $cmp541 = ($361|0)!=(1002); do { if ($cmp541) { $362 = $st$addr; $prev_mode544 = ((($362)) + 14224|0); $363 = HEAP32[$prev_mode544>>2]|0; $cmp545 = ($363|0)==(1002); if (!($cmp545)) { break; } $364 = $silk_enc; $365 = $st$addr; $arch548 = ((($365)) + 180|0); $366 = HEAP32[$arch548>>2]|0; (_silk_InitEncoder($364,$366,$dummy)|0); $prefill = 1; } } while(0); $367 = $st$addr; $mode551 = ((($367)) + 14220|0); $368 = HEAP32[$mode551>>2]|0; $cmp552 = ($368|0)==(1002); do { if ($cmp552) { label = 145; } else { $369 = $st$addr; $first = ((($369)) + 14248|0); $370 = HEAP32[$first>>2]|0; $tobool555 = ($370|0)!=(0); if ($tobool555) { label = 145; break; } $371 = $st$addr; $silk_mode557 = ((($371)) + 8|0); $allowBandwidthSwitch = ((($silk_mode557)) + 76|0); $372 = HEAP32[$allowBandwidthSwitch>>2]|0; $tobool558 = ($372|0)!=(0); if ($tobool558) { label = 145; } } } while(0); do { if ((label|0) == 145) { $bandwidth560 = 1105; $373 = $st$addr; $channels561 = ((($373)) + 112|0); $374 = HEAP32[$channels561>>2]|0; $cmp562 = ($374|0)==(2); do { if ($cmp562) { $375 = $st$addr; $force_channels565 = ((($375)) + 120|0); $376 = HEAP32[$force_channels565>>2]|0; $cmp566 = ($376|0)!=(1); if (!($cmp566)) { label = 148; break; } $voice_bandwidth_thresholds = 104; $music_bandwidth_thresholds = 136; } else { label = 148; } } while(0); if ((label|0) == 148) { $voice_bandwidth_thresholds = 168; $music_bandwidth_thresholds = 200; } $i = 0; while(1) { $377 = $i; $cmp571 = ($377|0)<(8); if (!($cmp571)) { break; } $378 = $music_bandwidth_thresholds; $379 = $i; $arrayidx573 = (($378) + ($379<<2)|0); $380 = HEAP32[$arrayidx573>>2]|0; $381 = $voice_est; $382 = $voice_est; $mul574 = Math_imul($381, $382)|0; $383 = $voice_bandwidth_thresholds; $384 = $i; $arrayidx575 = (($383) + ($384<<2)|0); $385 = HEAP32[$arrayidx575>>2]|0; $386 = $music_bandwidth_thresholds; $387 = $i; $arrayidx576 = (($386) + ($387<<2)|0); $388 = HEAP32[$arrayidx576>>2]|0; $sub577 = (($385) - ($388))|0; $mul578 = Math_imul($mul574, $sub577)|0; $shr579 = $mul578 >> 14; $add580 = (($380) + ($shr579))|0; $389 = $i; $arrayidx581 = (($bandwidth_thresholds) + ($389<<2)|0); HEAP32[$arrayidx581>>2] = $add580; $390 = $i; $inc = (($390) + 1)|0; $i = $inc; } while(1) { $391 = $bandwidth560; $sub583 = (($391) - 1102)|0; $mul584 = $sub583<<1; $arrayidx585 = (($bandwidth_thresholds) + ($mul584<<2)|0); $392 = HEAP32[$arrayidx585>>2]|0; $threshold582 = $392; $393 = $bandwidth560; $sub586 = (($393) - 1102)|0; $mul587 = $sub586<<1; $add588 = (($mul587) + 1)|0; $arrayidx589 = (($bandwidth_thresholds) + ($add588<<2)|0); $394 = HEAP32[$arrayidx589>>2]|0; $hysteresis = $394; $395 = $st$addr; $first590 = ((($395)) + 14248|0); $396 = HEAP32[$first590>>2]|0; $tobool591 = ($396|0)!=(0); do { if (!($tobool591)) { $397 = $st$addr; $auto_bandwidth = ((($397)) + 14240|0); $398 = HEAP32[$auto_bandwidth>>2]|0; $399 = $bandwidth560; $cmp593 = ($398|0)>=($399|0); $400 = $hysteresis; $401 = $threshold582; if ($cmp593) { $sub596 = (($401) - ($400))|0; $threshold582 = $sub596; break; } else { $add598 = (($401) + ($400))|0; $threshold582 = $add598; break; } } } while(0); $402 = $equiv_rate; $403 = $threshold582; $cmp601 = ($402|0)>=($403|0); if ($cmp601) { break; } $404 = $bandwidth560; $dec = (($404) + -1)|0; $bandwidth560 = $dec; $cmp605 = ($dec|0)>(1101); if (!($cmp605)) { break; } } $405 = $bandwidth560; $406 = $st$addr; $auto_bandwidth607 = ((($406)) + 14240|0); HEAP32[$auto_bandwidth607>>2] = $405; $407 = $st$addr; $bandwidth608 = ((($407)) + 14236|0); HEAP32[$bandwidth608>>2] = $405; $408 = $st$addr; $first609 = ((($408)) + 14248|0); $409 = HEAP32[$first609>>2]|0; $tobool610 = ($409|0)!=(0); if ($tobool610) { break; } $410 = $st$addr; $mode612 = ((($410)) + 14220|0); $411 = HEAP32[$mode612>>2]|0; $cmp613 = ($411|0)!=(1002); if (!($cmp613)) { break; } $412 = $st$addr; $silk_mode616 = ((($412)) + 8|0); $inWBmodeWithoutVariableLP = ((($silk_mode616)) + 80|0); $413 = HEAP32[$inWBmodeWithoutVariableLP>>2]|0; $tobool617 = ($413|0)!=(0); if ($tobool617) { break; } $414 = $st$addr; $bandwidth619 = ((($414)) + 14236|0); $415 = HEAP32[$bandwidth619>>2]|0; $cmp620 = ($415|0)>(1103); if (!($cmp620)) { break; } $416 = $st$addr; $bandwidth623 = ((($416)) + 14236|0); HEAP32[$bandwidth623>>2] = 1103; } } while(0); $417 = $st$addr; $bandwidth626 = ((($417)) + 14236|0); $418 = HEAP32[$bandwidth626>>2]|0; $419 = $st$addr; $max_bandwidth = ((($419)) + 132|0); $420 = HEAP32[$max_bandwidth>>2]|0; $cmp627 = ($418|0)>($420|0); if ($cmp627) { $421 = $st$addr; $max_bandwidth630 = ((($421)) + 132|0); $422 = HEAP32[$max_bandwidth630>>2]|0; $423 = $st$addr; $bandwidth631 = ((($423)) + 14236|0); HEAP32[$bandwidth631>>2] = $422; } $424 = $st$addr; $user_bandwidth = ((($424)) + 128|0); $425 = HEAP32[$user_bandwidth>>2]|0; $cmp633 = ($425|0)!=(-1000); if ($cmp633) { $426 = $st$addr; $user_bandwidth636 = ((($426)) + 128|0); $427 = HEAP32[$user_bandwidth636>>2]|0; $428 = $st$addr; $bandwidth637 = ((($428)) + 14236|0); HEAP32[$bandwidth637>>2] = $427; } $429 = $st$addr; $mode639 = ((($429)) + 14220|0); $430 = HEAP32[$mode639>>2]|0; $cmp640 = ($430|0)!=(1002); $431 = $max_rate; $cmp643 = ($431|0)<(15000); $or$cond12 = $cmp640 & $cmp643; if ($or$cond12) { $432 = $st$addr; $bandwidth646 = ((($432)) + 14236|0); $433 = HEAP32[$bandwidth646>>2]|0; $cmp647 = ($433|0)<(1103); if ($cmp647) { $434 = $st$addr; $bandwidth650 = ((($434)) + 14236|0); $435 = HEAP32[$bandwidth650>>2]|0; $cond653 = $435; } else { $cond653 = 1103; } $436 = $st$addr; $bandwidth654 = ((($436)) + 14236|0); HEAP32[$bandwidth654>>2] = $cond653; } $437 = $st$addr; $Fs656 = ((($437)) + 144|0); $438 = HEAP32[$Fs656>>2]|0; $cmp657 = ($438|0)<=(24000); do { if ($cmp657) { $439 = $st$addr; $bandwidth660 = ((($439)) + 14236|0); $440 = HEAP32[$bandwidth660>>2]|0; $cmp661 = ($440|0)>(1104); if (!($cmp661)) { break; } $441 = $st$addr; $bandwidth664 = ((($441)) + 14236|0); HEAP32[$bandwidth664>>2] = 1104; } } while(0); $442 = $st$addr; $Fs666 = ((($442)) + 144|0); $443 = HEAP32[$Fs666>>2]|0; $cmp667 = ($443|0)<=(16000); do { if ($cmp667) { $444 = $st$addr; $bandwidth670 = ((($444)) + 14236|0); $445 = HEAP32[$bandwidth670>>2]|0; $cmp671 = ($445|0)>(1103); if (!($cmp671)) { break; } $446 = $st$addr; $bandwidth674 = ((($446)) + 14236|0); HEAP32[$bandwidth674>>2] = 1103; } } while(0); $447 = $st$addr; $Fs676 = ((($447)) + 144|0); $448 = HEAP32[$Fs676>>2]|0; $cmp677 = ($448|0)<=(12000); do { if ($cmp677) { $449 = $st$addr; $bandwidth680 = ((($449)) + 14236|0); $450 = HEAP32[$bandwidth680>>2]|0; $cmp681 = ($450|0)>(1102); if (!($cmp681)) { break; } $451 = $st$addr; $bandwidth684 = ((($451)) + 14236|0); HEAP32[$bandwidth684>>2] = 1102; } } while(0); $452 = $st$addr; $Fs686 = ((($452)) + 144|0); $453 = HEAP32[$Fs686>>2]|0; $cmp687 = ($453|0)<=(8000); do { if ($cmp687) { $454 = $st$addr; $bandwidth690 = ((($454)) + 14236|0); $455 = HEAP32[$bandwidth690>>2]|0; $cmp691 = ($455|0)>(1101); if (!($cmp691)) { break; } $456 = $st$addr; $bandwidth694 = ((($456)) + 14236|0); HEAP32[$bandwidth694>>2] = 1101; } } while(0); $457 = $st$addr; $detected_bandwidth696 = ((($457)) + 18116|0); $458 = HEAP32[$detected_bandwidth696>>2]|0; $tobool697 = ($458|0)!=(0); do { if ($tobool697) { $459 = $st$addr; $user_bandwidth699 = ((($459)) + 128|0); $460 = HEAP32[$user_bandwidth699>>2]|0; $cmp700 = ($460|0)==(-1000); if (!($cmp700)) { break; } $461 = $equiv_rate; $462 = $st$addr; $stream_channels703 = ((($462)) + 14188|0); $463 = HEAP32[$stream_channels703>>2]|0; $mul704 = ($463*18000)|0; $cmp705 = ($461|0)<=($mul704|0); do { if ($cmp705) { $464 = $st$addr; $mode708 = ((($464)) + 14220|0); $465 = HEAP32[$mode708>>2]|0; $cmp709 = ($465|0)==(1002); if (!($cmp709)) { label = 188; break; } $min_detected_bandwidth = 1101; } else { label = 188; } } while(0); L227: do { if ((label|0) == 188) { $466 = $equiv_rate; $467 = $st$addr; $stream_channels713 = ((($467)) + 14188|0); $468 = HEAP32[$stream_channels713>>2]|0; $mul714 = ($468*24000)|0; $cmp715 = ($466|0)<=($mul714|0); do { if ($cmp715) { $469 = $st$addr; $mode718 = ((($469)) + 14220|0); $470 = HEAP32[$mode718>>2]|0; $cmp719 = ($470|0)==(1002); if (!($cmp719)) { break; } $min_detected_bandwidth = 1102; break L227; } } while(0); $471 = $equiv_rate; $472 = $st$addr; $stream_channels723 = ((($472)) + 14188|0); $473 = HEAP32[$stream_channels723>>2]|0; $mul724 = ($473*30000)|0; $cmp725 = ($471|0)<=($mul724|0); if ($cmp725) { $min_detected_bandwidth = 1103; break; } $474 = $equiv_rate; $475 = $st$addr; $stream_channels729 = ((($475)) + 14188|0); $476 = HEAP32[$stream_channels729>>2]|0; $mul730 = ($476*44000)|0; $cmp731 = ($474|0)<=($mul730|0); if ($cmp731) { $min_detected_bandwidth = 1104; break; } else { $min_detected_bandwidth = 1105; break; } } } while(0); $477 = $st$addr; $detected_bandwidth739 = ((($477)) + 18116|0); $478 = HEAP32[$detected_bandwidth739>>2]|0; $479 = $min_detected_bandwidth; $cmp740 = ($478|0)>($479|0); if ($cmp740) { $480 = $st$addr; $detected_bandwidth743 = ((($480)) + 18116|0); $481 = HEAP32[$detected_bandwidth743>>2]|0; $cond746 = $481; } else { $482 = $min_detected_bandwidth; $cond746 = $482; } $483 = $st$addr; $detected_bandwidth747 = ((($483)) + 18116|0); HEAP32[$detected_bandwidth747>>2] = $cond746; $484 = $st$addr; $bandwidth748 = ((($484)) + 14236|0); $485 = HEAP32[$bandwidth748>>2]|0; $486 = $st$addr; $detected_bandwidth749 = ((($486)) + 18116|0); $487 = HEAP32[$detected_bandwidth749>>2]|0; $cmp750 = ($485|0)<($487|0); $488 = $st$addr; $detected_bandwidth755 = ((($488)) + 18116|0); $bandwidth753 = ((($488)) + 14236|0); $detected_bandwidth755$sink = $cmp750 ? $bandwidth753 : $detected_bandwidth755; $489 = HEAP32[$detected_bandwidth755$sink>>2]|0; $490 = $st$addr; $bandwidth758 = ((($490)) + 14236|0); HEAP32[$bandwidth758>>2] = $489; } } while(0); $491 = $st$addr; $silk_mode760 = ((($491)) + 8|0); $useInBandFEC761 = ((($silk_mode760)) + 40|0); $492 = HEAP32[$useInBandFEC761>>2]|0; $493 = $st$addr; $silk_mode762 = ((($493)) + 8|0); $packetLossPercentage763 = ((($silk_mode762)) + 32|0); $494 = HEAP32[$packetLossPercentage763>>2]|0; $495 = $st$addr; $silk_mode764 = ((($495)) + 8|0); $LBRR_coded = ((($silk_mode764)) + 44|0); $496 = HEAP32[$LBRR_coded>>2]|0; $497 = $st$addr; $mode765 = ((($497)) + 14220|0); $498 = HEAP32[$mode765>>2]|0; $499 = $st$addr; $bandwidth766 = ((($499)) + 14236|0); $500 = $equiv_rate; $call767 = (_decide_fec($492,$494,$496,$498,$bandwidth766,$500)|0); $501 = $st$addr; $silk_mode768 = ((($501)) + 8|0); $LBRR_coded769 = ((($silk_mode768)) + 44|0); HEAP32[$LBRR_coded769>>2] = $call767; $502 = $celt_enc; $503 = $lsb_depth$addr; HEAP32[$vararg_buffer33>>2] = $503; (_opus_custom_encoder_ctl($502,4036,$vararg_buffer33)|0); $504 = $st$addr; $mode773 = ((($504)) + 14220|0); $505 = HEAP32[$mode773>>2]|0; $cmp774 = ($505|0)==(1002); do { if ($cmp774) { $506 = $st$addr; $bandwidth777 = ((($506)) + 14236|0); $507 = HEAP32[$bandwidth777>>2]|0; $cmp778 = ($507|0)==(1102); if (!($cmp778)) { break; } $508 = $st$addr; $bandwidth781 = ((($508)) + 14236|0); HEAP32[$bandwidth781>>2] = 1103; } } while(0); $509 = $st$addr; $lfe783 = ((($509)) + 176|0); $510 = HEAP32[$lfe783>>2]|0; $tobool784 = ($510|0)!=(0); if ($tobool784) { $511 = $st$addr; $bandwidth786 = ((($511)) + 14236|0); HEAP32[$bandwidth786>>2] = 1101; } $512 = $st$addr; $bandwidth788 = ((($512)) + 14236|0); $513 = HEAP32[$bandwidth788>>2]|0; $curr_bandwidth = $513; $514 = $st$addr; $mode789 = ((($514)) + 14220|0); $515 = HEAP32[$mode789>>2]|0; $cmp790 = ($515|0)==(1000); $516 = $curr_bandwidth; $cmp793 = ($516|0)>(1103); $or$cond13 = $cmp790 & $cmp793; if ($or$cond13) { $517 = $st$addr; $mode796 = ((($517)) + 14220|0); HEAP32[$mode796>>2] = 1001; } $518 = $st$addr; $mode798 = ((($518)) + 14220|0); $519 = HEAP32[$mode798>>2]|0; $cmp799 = ($519|0)==(1001); $520 = $curr_bandwidth; $cmp802 = ($520|0)<=(1103); $or$cond14 = $cmp799 & $cmp802; if ($or$cond14) { $521 = $st$addr; $mode805 = ((($521)) + 14220|0); HEAP32[$mode805>>2] = 1000; } $522 = $frame_size$addr; $523 = $st$addr; $Fs807 = ((($523)) + 144|0); $524 = HEAP32[$Fs807>>2]|0; $div808 = (($524|0) / 50)&-1; $cmp809 = ($522|0)>($div808|0); if ($cmp809) { $525 = $st$addr; $mode812 = ((($525)) + 14220|0); $526 = HEAP32[$mode812>>2]|0; $cmp813 = ($526|0)!=(1000); if (!($cmp813)) { label = 211; } } else { label = 211; } do { if ((label|0) == 211) { $527 = $frame_size$addr; $528 = $st$addr; $Fs816 = ((($528)) + 144|0); $529 = HEAP32[$Fs816>>2]|0; $mul817 = ($529*3)|0; $div818 = (($mul817|0) / 50)&-1; $cmp819 = ($527|0)>($div818|0); if ($cmp819) { break; } $561 = $st$addr; $silk_bw_switch = ((($561)) + 14244|0); $562 = HEAP32[$silk_bw_switch>>2]|0; $tobool864 = ($562|0)!=(0); if ($tobool864) { $redundancy = 1; $celt_to_silk = 1; $563 = $st$addr; $silk_bw_switch866 = ((($563)) + 14244|0); HEAP32[$silk_bw_switch866>>2] = 0; $prefill = 1; } $564 = $st$addr; $mode868 = ((($564)) + 14220|0); $565 = HEAP32[$mode868>>2]|0; $cmp869 = ($565|0)==(1002); if ($cmp869) { $redundancy = 0; } $566 = $redundancy; $tobool873 = ($566|0)!=(0); do { if ($tobool873) { $567 = $max_data_bytes; $568 = $st$addr; $bitrate_bps875 = ((($568)) + 160|0); $569 = HEAP32[$bitrate_bps875>>2]|0; $570 = $frame_rate; $571 = $st$addr; $stream_channels876 = ((($571)) + 14188|0); $572 = HEAP32[$stream_channels876>>2]|0; $call877 = (_compute_redundancy_bytes($567,$569,$570,$572)|0); $redundancy_bytes = $call877; $573 = $redundancy_bytes; $cmp878 = ($573|0)==(0); if (!($cmp878)) { break; } $redundancy = 0; } } while(0); $574 = $max_data_bytes; $575 = $redundancy_bytes; $sub883 = (($574) - ($575))|0; $576 = $st$addr; $bitrate_bps884 = ((($576)) + 160|0); $577 = HEAP32[$bitrate_bps884>>2]|0; $578 = $frame_size$addr; $mul885 = Math_imul($577, $578)|0; $579 = $st$addr; $Fs886 = ((($579)) + 144|0); $580 = HEAP32[$Fs886>>2]|0; $mul887 = $580<<3; $div888 = (($mul885|0) / ($mul887|0))&-1; $cmp889 = ($sub883|0)<($div888|0); if ($cmp889) { $581 = $max_data_bytes; $582 = $redundancy_bytes; $sub892 = (($581) - ($582))|0; $cond900 = $sub892; } else { $583 = $st$addr; $bitrate_bps894 = ((($583)) + 160|0); $584 = HEAP32[$bitrate_bps894>>2]|0; $585 = $frame_size$addr; $mul895 = Math_imul($584, $585)|0; $586 = $st$addr; $Fs896 = ((($586)) + 144|0); $587 = HEAP32[$Fs896>>2]|0; $mul897 = $587<<3; $div898 = (($mul895|0) / ($mul897|0))&-1; $cond900 = $div898; } $sub901 = (($cond900) - 1)|0; $bytes_target = $sub901; $588 = $data$addr; $add$ptr902 = ((($588)) + 1|0); $data$addr = $add$ptr902; $589 = $data$addr; $590 = $max_data_bytes; $sub903 = (($590) - 1)|0; _ec_enc_init($enc,$589,$sub903); $591 = $total_buffer; $592 = $frame_size$addr; $add904 = (($591) + ($592))|0; $593 = $st$addr; $channels905 = ((($593)) + 112|0); $594 = HEAP32[$channels905>>2]|0; $mul906 = Math_imul($add904, $594)|0; $595 = (_llvm_stacksave()|0); $saved_stack = $595; $vla$alloca_mul = $mul906<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $596 = $st$addr; $delay_buffer = ((($596)) + 14276|0); $597 = $st$addr; $encoder_buffer = ((($597)) + 172|0); $598 = HEAP32[$encoder_buffer>>2]|0; $599 = $total_buffer; $sub907 = (($598) - ($599))|0; $600 = $st$addr; $channels908 = ((($600)) + 112|0); $601 = HEAP32[$channels908>>2]|0; $mul909 = Math_imul($sub907, $601)|0; $arrayidx910 = (($delay_buffer) + ($mul909<<2)|0); $602 = $total_buffer; $603 = $st$addr; $channels911 = ((($603)) + 112|0); $604 = HEAP32[$channels911>>2]|0; $mul912 = Math_imul($602, $604)|0; $mul913 = $mul912<<2; $605 = $st$addr; $delay_buffer914 = ((($605)) + 14276|0); $606 = $st$addr; $encoder_buffer915 = ((($606)) + 172|0); $607 = HEAP32[$encoder_buffer915>>2]|0; $608 = $total_buffer; $sub916 = (($607) - ($608))|0; $609 = $st$addr; $channels917 = ((($609)) + 112|0); $610 = HEAP32[$channels917>>2]|0; $mul918 = Math_imul($sub916, $610)|0; $arrayidx919 = (($delay_buffer914) + ($mul918<<2)|0); $sub$ptr$lhs$cast920 = $vla; $sub$ptr$rhs$cast921 = $arrayidx919; $sub$ptr$sub922 = (($sub$ptr$lhs$cast920) - ($sub$ptr$rhs$cast921))|0; $sub$ptr$div923 = (($sub$ptr$sub922|0) / 4)&-1; $mul924 = 0; $add925 = (($mul913) + ($mul924))|0; _memcpy(($vla|0),($arrayidx910|0),($add925|0))|0; $611 = $st$addr; $mode926 = ((($611)) + 14220|0); $612 = HEAP32[$mode926>>2]|0; $cmp927 = ($612|0)==(1002); if ($cmp927) { $call930 = (_silk_lin2log(60)|0); $shl = $call930 << 8; $hp_freq_smth1 = $shl; } else { $613 = $silk_enc; $variable_HP_smth1_Q15 = ((($613)) + 8|0); $614 = HEAP32[$variable_HP_smth1_Q15>>2]|0; $hp_freq_smth1 = $614; } $615 = $st$addr; $variable_HP_smth2_Q15 = ((($615)) + 14196|0); $616 = HEAP32[$variable_HP_smth2_Q15>>2]|0; $617 = $hp_freq_smth1; $618 = $st$addr; $variable_HP_smth2_Q15934 = ((($618)) + 14196|0); $619 = HEAP32[$variable_HP_smth2_Q15934>>2]|0; $sub935 = (($617) - ($619))|0; $shr936 = $sub935 >> 16; $mul937 = ($shr936*983)|0; $620 = $hp_freq_smth1; $621 = $st$addr; $variable_HP_smth2_Q15938 = ((($621)) + 14196|0); $622 = HEAP32[$variable_HP_smth2_Q15938>>2]|0; $sub939 = (($620) - ($622))|0; $and = $sub939 & 65535; $mul940 = ($and*983)|0; $shr941 = $mul940 >> 16; $add942 = (($mul937) + ($shr941))|0; $add943 = (($616) + ($add942))|0; $623 = $st$addr; $variable_HP_smth2_Q15944 = ((($623)) + 14196|0); HEAP32[$variable_HP_smth2_Q15944>>2] = $add943; $624 = $st$addr; $variable_HP_smth2_Q15945 = ((($624)) + 14196|0); $625 = HEAP32[$variable_HP_smth2_Q15945>>2]|0; $shr946 = $625 >> 8; $call947 = (_silk_log2lin($shr946)|0); $cutoff_Hz = $call947; $626 = $st$addr; $application948 = ((($626)) + 108|0); $627 = HEAP32[$application948>>2]|0; $cmp949 = ($627|0)==(2048); $628 = $pcm$addr; if ($cmp949) { $629 = $cutoff_Hz; $630 = $total_buffer; $631 = $st$addr; $channels952 = ((($631)) + 112|0); $632 = HEAP32[$channels952>>2]|0; $mul953 = Math_imul($630, $632)|0; $arrayidx954 = (($vla) + ($mul953<<2)|0); $633 = $st$addr; $hp_mem = ((($633)) + 14204|0); $634 = $frame_size$addr; $635 = $st$addr; $channels955 = ((($635)) + 112|0); $636 = HEAP32[$channels955>>2]|0; $637 = $st$addr; $Fs956 = ((($637)) + 144|0); $638 = HEAP32[$Fs956>>2]|0; $639 = $st$addr; $arch957 = ((($639)) + 180|0); $640 = HEAP32[$arch957>>2]|0; _hp_cutoff($628,$629,$arrayidx954,$hp_mem,$634,$636,$638,$640); } else { $641 = $total_buffer; $642 = $st$addr; $channels959 = ((($642)) + 112|0); $643 = HEAP32[$channels959>>2]|0; $mul960 = Math_imul($641, $643)|0; $arrayidx961 = (($vla) + ($mul960<<2)|0); $644 = $st$addr; $hp_mem962 = ((($644)) + 14204|0); $645 = $frame_size$addr; $646 = $st$addr; $channels964 = ((($646)) + 112|0); $647 = HEAP32[$channels964>>2]|0; $648 = $st$addr; $Fs965 = ((($648)) + 144|0); $649 = HEAP32[$Fs965>>2]|0; _dc_reject($628,3,$arrayidx961,$hp_mem962,$645,$647,$649); } $650 = $float_api$addr; $tobool967 = ($650|0)!=(0); do { if ($tobool967) { $651 = $st$addr; $arch969 = ((($651)) + 180|0); $652 = HEAP32[$arch969>>2]|0; $and970 = $652 & 7; $arrayidx971 = (_CELT_INNER_PROD_IMPL + ($and970<<2)|0); $653 = HEAP32[$arrayidx971>>2]|0; $654 = $total_buffer; $655 = $st$addr; $channels972 = ((($655)) + 112|0); $656 = HEAP32[$channels972>>2]|0; $mul973 = Math_imul($654, $656)|0; $arrayidx974 = (($vla) + ($mul973<<2)|0); $657 = $total_buffer; $658 = $st$addr; $channels975 = ((($658)) + 112|0); $659 = HEAP32[$channels975>>2]|0; $mul976 = Math_imul($657, $659)|0; $arrayidx977 = (($vla) + ($mul976<<2)|0); $660 = $frame_size$addr; $661 = $st$addr; $channels978 = ((($661)) + 112|0); $662 = HEAP32[$channels978>>2]|0; $mul979 = Math_imul($660, $662)|0; $call980 = (+FUNCTION_TABLE_diii[$653 & 0]($arrayidx974,$arrayidx977,$mul979)); $sum = $call980; $663 = $sum; $cmp981 = $663 < 1.0E+9; if ($cmp981) { $664 = $sum; $665 = $sum; $cmp984 = $664 != $665; if (!($cmp984)) { break; } } $666 = $total_buffer; $667 = $st$addr; $channels987 = ((($667)) + 112|0); $668 = HEAP32[$channels987>>2]|0; $mul988 = Math_imul($666, $668)|0; $arrayidx989 = (($vla) + ($mul988<<2)|0); $669 = $frame_size$addr; $670 = $st$addr; $channels990 = ((($670)) + 112|0); $671 = HEAP32[$channels990>>2]|0; $mul991 = Math_imul($669, $671)|0; $mul992 = $mul991<<2; _memset(($arrayidx989|0),0,($mul992|0))|0; $672 = $st$addr; $hp_mem993 = ((($672)) + 14204|0); $arrayidx994 = ((($hp_mem993)) + 12|0); HEAPF32[$arrayidx994>>2] = 0.0; $673 = $st$addr; $hp_mem995 = ((($673)) + 14204|0); $arrayidx996 = ((($hp_mem995)) + 8|0); HEAPF32[$arrayidx996>>2] = 0.0; $674 = $st$addr; $hp_mem997 = ((($674)) + 14204|0); $arrayidx998 = ((($hp_mem997)) + 4|0); HEAPF32[$arrayidx998>>2] = 0.0; $675 = $st$addr; $hp_mem999 = ((($675)) + 14204|0); HEAPF32[$hp_mem999>>2] = 0.0; } } while(0); $HB_gain = 1.0; $676 = $st$addr; $mode1003 = ((($676)) + 14220|0); $677 = HEAP32[$mode1003>>2]|0; $cmp1004 = ($677|0)!=(1002); if ($cmp1004) { $678 = $st$addr; $channels1007 = ((($678)) + 112|0); $679 = HEAP32[$channels1007>>2]|0; $680 = $frame_size$addr; $mul1008 = Math_imul($679, $680)|0; $681 = (_llvm_stacksave()|0); $saved_stack1009 = $681; $vla1010$alloca_mul = $mul1008<<1; $vla1010 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla1010$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla1010$alloca_mul)|0)+15)&-16)|0);; $682 = $bytes_target; $mul1011 = $682<<3; $683 = $frame_rate; $mul1012 = Math_imul($mul1011, $683)|0; $total_bitRate = $mul1012; $684 = $st$addr; $mode1013 = ((($684)) + 14220|0); $685 = HEAP32[$mode1013>>2]|0; $cmp1014 = ($685|0)==(1001); $686 = $total_bitRate; do { if ($cmp1014) { $687 = $curr_bandwidth; $688 = $st$addr; $Fs1017 = ((($688)) + 144|0); $689 = HEAP32[$Fs1017>>2]|0; $690 = $frame_size$addr; $mul1018 = ($690*50)|0; $cmp1019 = ($689|0)==($mul1018|0); $conv1020 = $cmp1019&1; $691 = $st$addr; $use_vbr1021 = ((($691)) + 148|0); $692 = HEAP32[$use_vbr1021>>2]|0; $693 = $st$addr; $silk_mode1022 = ((($693)) + 8|0); $LBRR_coded1023 = ((($silk_mode1022)) + 44|0); $694 = HEAP32[$LBRR_coded1023>>2]|0; $695 = $st$addr; $stream_channels1024 = ((($695)) + 14188|0); $696 = HEAP32[$stream_channels1024>>2]|0; $call1025 = (_compute_silk_rate_for_hybrid($686,$687,$conv1020,$692,$694,$696)|0); $697 = $st$addr; $silk_mode1026 = ((($697)) + 8|0); $bitRate = ((($silk_mode1026)) + 28|0); HEAP32[$bitRate>>2] = $call1025; $698 = $st$addr; $energy_masking = ((($698)) + 14252|0); $699 = HEAP32[$energy_masking>>2]|0; $tobool1027 = ($699|0)!=(0|0); if ($tobool1027) { break; } $700 = $total_bitRate; $701 = $st$addr; $silk_mode1029 = ((($701)) + 8|0); $bitRate1030 = ((($silk_mode1029)) + 28|0); $702 = HEAP32[$bitRate1030>>2]|0; $sub1031 = (($700) - ($702))|0; $celt_rate = $sub1031; $703 = $celt_rate; $sub1032 = (0 - ($703))|0; $conv1033 = (+($sub1032|0)); $mul1034 = $conv1033 * 9.765625E-4; $conv1035 = $mul1034; $mul1036 = 0.69314718055994529 * $conv1035; $call1037 = (+Math_exp((+$mul1036))); $conv1038 = $call1037; $sub1039 = 1.0 - $conv1038; $HB_gain = $sub1039; } else { $704 = $st$addr; $silk_mode1042 = ((($704)) + 8|0); $bitRate1043 = ((($silk_mode1042)) + 28|0); HEAP32[$bitRate1043>>2] = $686; } } while(0); $705 = $st$addr; $energy_masking1045 = ((($705)) + 14252|0); $706 = HEAP32[$energy_masking1045>>2]|0; $tobool1046 = ($706|0)!=(0|0); do { if ($tobool1046) { $707 = $st$addr; $use_vbr1048 = ((($707)) + 148|0); $708 = HEAP32[$use_vbr1048>>2]|0; $tobool1049 = ($708|0)!=(0); if (!($tobool1049)) { break; } $709 = $st$addr; $lfe1051 = ((($709)) + 176|0); $710 = HEAP32[$lfe1051>>2]|0; $tobool1052 = ($710|0)!=(0); if ($tobool1052) { break; } $mask_sum = 0.0; $end = 17; $srate = 16000; $711 = $st$addr; $bandwidth1054 = ((($711)) + 14236|0); $712 = HEAP32[$bandwidth1054>>2]|0; $cmp1055 = ($712|0)==(1101); do { if ($cmp1055) { $end = 13; $srate = 8000; } else { $713 = $st$addr; $bandwidth1059 = ((($713)) + 14236|0); $714 = HEAP32[$bandwidth1059>>2]|0; $cmp1060 = ($714|0)==(1102); if (!($cmp1060)) { break; } $end = 15; $srate = 12000; } } while(0); $c = 0; while(1) { $715 = $c; $716 = $st$addr; $channels1066 = ((($716)) + 112|0); $717 = HEAP32[$channels1066>>2]|0; $cmp1067 = ($715|0)<($717|0); if (!($cmp1067)) { break; } $i = 0; while(1) { $718 = $i; $719 = $end; $cmp1071 = ($718|0)<($719|0); if (!($cmp1071)) { break; } $720 = $st$addr; $energy_masking1074 = ((($720)) + 14252|0); $721 = HEAP32[$energy_masking1074>>2]|0; $722 = $c; $mul1075 = ($722*21)|0; $723 = $i; $add1076 = (($mul1075) + ($723))|0; $arrayidx1077 = (($721) + ($add1076<<2)|0); $724 = +HEAPF32[$arrayidx1077>>2]; $cmp1078 = $724 < 0.5; if ($cmp1078) { $725 = $st$addr; $energy_masking1081 = ((($725)) + 14252|0); $726 = HEAP32[$energy_masking1081>>2]|0; $727 = $c; $mul1082 = ($727*21)|0; $728 = $i; $add1083 = (($mul1082) + ($728))|0; $arrayidx1084 = (($726) + ($add1083<<2)|0); $729 = +HEAPF32[$arrayidx1084>>2]; $cond1087 = $729; } else { $cond1087 = 0.5; } $cmp1088 = $cond1087 > -2.0; do { if ($cmp1088) { $730 = $st$addr; $energy_masking1091 = ((($730)) + 14252|0); $731 = HEAP32[$energy_masking1091>>2]|0; $732 = $c; $mul1092 = ($732*21)|0; $733 = $i; $add1093 = (($mul1092) + ($733))|0; $arrayidx1094 = (($731) + ($add1093<<2)|0); $734 = +HEAPF32[$arrayidx1094>>2]; $cmp1095 = $734 < 0.5; if (!($cmp1095)) { $cond1107 = 0.5; break; } $735 = $st$addr; $energy_masking1098 = ((($735)) + 14252|0); $736 = HEAP32[$energy_masking1098>>2]|0; $737 = $c; $mul1099 = ($737*21)|0; $738 = $i; $add1100 = (($mul1099) + ($738))|0; $arrayidx1101 = (($736) + ($add1100<<2)|0); $739 = +HEAPF32[$arrayidx1101>>2]; $cond1107 = $739; } else { $cond1107 = -2.0; } } while(0); $mask = $cond1107; $740 = $mask; $cmp1108 = $740 > 0.0; if ($cmp1108) { $741 = $mask; $mul1111 = 0.5 * $741; $mask = $mul1111; } $742 = $mask; $743 = $mask_sum; $add1113 = $743 + $742; $mask_sum = $add1113; $744 = $i; $inc1115 = (($744) + 1)|0; $i = $inc1115; } $745 = $c; $inc1118 = (($745) + 1)|0; $c = $inc1118; } $746 = $mask_sum; $747 = $end; $conv1120 = (+($747|0)); $div1121 = $746 / $conv1120; $748 = $st$addr; $channels1122 = ((($748)) + 112|0); $749 = HEAP32[$channels1122>>2]|0; $conv1123 = (+($749|0)); $mul1124 = $div1121 * $conv1123; $masking_depth = $mul1124; $750 = $masking_depth; $add1125 = $750 + 0.20000000298023224; $masking_depth = $add1125; $751 = $srate; $conv1126 = (+($751<<16>>16)); $752 = $masking_depth; $mul1127 = $conv1126 * $752; $conv1128 = (~~(($mul1127))); $rate_offset = $conv1128; $753 = $rate_offset; $754 = $st$addr; $silk_mode1129 = ((($754)) + 8|0); $bitRate1130 = ((($silk_mode1129)) + 28|0); $755 = HEAP32[$bitRate1130>>2]|0; $mul1131 = Math_imul(-2, $755)|0; $div1132 = (($mul1131|0) / 3)&-1; $cmp1133 = ($753|0)>($div1132|0); if ($cmp1133) { $756 = $rate_offset; $cond1142 = $756; } else { $757 = $st$addr; $silk_mode1137 = ((($757)) + 8|0); $bitRate1138 = ((($silk_mode1137)) + 28|0); $758 = HEAP32[$bitRate1138>>2]|0; $mul1139 = Math_imul(-2, $758)|0; $div1140 = (($mul1139|0) / 3)&-1; $cond1142 = $div1140; } $rate_offset = $cond1142; $759 = $st$addr; $bandwidth1143 = ((($759)) + 14236|0); $760 = HEAP32[$bandwidth1143>>2]|0; $cmp1144 = ($760|0)==(1104); do { if ($cmp1144) { label = 272; } else { $761 = $st$addr; $bandwidth1147 = ((($761)) + 14236|0); $762 = HEAP32[$bandwidth1147>>2]|0; $cmp1148 = ($762|0)==(1105); if ($cmp1148) { label = 272; break; } $765 = $rate_offset; $766 = $st$addr; $$sink16 = $765;$$sink31 = $766; } } while(0); if ((label|0) == 272) { $763 = $rate_offset; $mul1151 = ($763*3)|0; $div1152 = (($mul1151|0) / 5)&-1; $764 = $st$addr; $$sink16 = $div1152;$$sink31 = $764; } $silk_mode1157 = ((($$sink31)) + 8|0); $bitRate1158 = ((($silk_mode1157)) + 28|0); $767 = HEAP32[$bitRate1158>>2]|0; $add1159 = (($767) + ($$sink16))|0; HEAP32[$bitRate1158>>2] = $add1159; } } while(0); $768 = $frame_size$addr; $mul1162 = ($768*1000)|0; $769 = $st$addr; $Fs1163 = ((($769)) + 144|0); $770 = HEAP32[$Fs1163>>2]|0; $div1164 = (($mul1162|0) / ($770|0))&-1; $771 = $st$addr; $silk_mode1165 = ((($771)) + 8|0); $payloadSize_ms = ((($silk_mode1165)) + 24|0); HEAP32[$payloadSize_ms>>2] = $div1164; $772 = $st$addr; $channels1166 = ((($772)) + 112|0); $773 = HEAP32[$channels1166>>2]|0; $774 = $st$addr; $silk_mode1167 = ((($774)) + 8|0); HEAP32[$silk_mode1167>>2] = $773; $775 = $st$addr; $stream_channels1168 = ((($775)) + 14188|0); $776 = HEAP32[$stream_channels1168>>2]|0; $777 = $st$addr; $silk_mode1169 = ((($777)) + 8|0); $nChannelsInternal = ((($silk_mode1169)) + 4|0); HEAP32[$nChannelsInternal>>2] = $776; $778 = $curr_bandwidth; $cmp1170 = ($778|0)==(1101); if ($cmp1170) { $779 = $st$addr; $silk_mode1173 = ((($779)) + 8|0); $desiredInternalSampleRate = ((($silk_mode1173)) + 20|0); HEAP32[$desiredInternalSampleRate>>2] = 8000; } else { $780 = $curr_bandwidth; $cmp1175 = ($780|0)==(1102); $781 = $st$addr; $silk_mode1178 = ((($781)) + 8|0); $desiredInternalSampleRate1179 = ((($silk_mode1178)) + 20|0); $$sink18 = $cmp1175 ? 12000 : 16000; HEAP32[$desiredInternalSampleRate1179>>2] = $$sink18; } $782 = $st$addr; $mode1185 = ((($782)) + 14220|0); $783 = HEAP32[$mode1185>>2]|0; $cmp1186 = ($783|0)==(1001); $784 = $st$addr; $silk_mode1189 = ((($784)) + 8|0); $minInternalSampleRate = ((($silk_mode1189)) + 16|0); $$sink19 = $cmp1186 ? 16000 : 8000; HEAP32[$minInternalSampleRate>>2] = $$sink19; $785 = $st$addr; $silk_mode1194 = ((($785)) + 8|0); $maxInternalSampleRate = ((($silk_mode1194)) + 12|0); HEAP32[$maxInternalSampleRate>>2] = 16000; $786 = $st$addr; $mode1195 = ((($786)) + 14220|0); $787 = HEAP32[$mode1195>>2]|0; $cmp1196 = ($787|0)==(1000); do { if ($cmp1196) { $788 = $max_rate; $effective_max_rate = $788; $789 = $frame_rate; $cmp1199 = ($789|0)>(50); if ($cmp1199) { $790 = $effective_max_rate; $mul1202 = $790<<1; $div1203 = (($mul1202|0) / 3)&-1; $effective_max_rate = $div1203; } $791 = $effective_max_rate; $cmp1205 = ($791|0)<(8000); if ($cmp1205) { $792 = $st$addr; $silk_mode1208 = ((($792)) + 8|0); $maxInternalSampleRate1209 = ((($silk_mode1208)) + 12|0); HEAP32[$maxInternalSampleRate1209>>2] = 12000; $793 = $st$addr; $silk_mode1210 = ((($793)) + 8|0); $desiredInternalSampleRate1211 = ((($silk_mode1210)) + 20|0); $794 = HEAP32[$desiredInternalSampleRate1211>>2]|0; $cmp1212 = (12000)<($794|0); if ($cmp1212) { $cond1219 = 12000; } else { $795 = $st$addr; $silk_mode1216 = ((($795)) + 8|0); $desiredInternalSampleRate1217 = ((($silk_mode1216)) + 20|0); $796 = HEAP32[$desiredInternalSampleRate1217>>2]|0; $cond1219 = $796; } $797 = $st$addr; $silk_mode1220 = ((($797)) + 8|0); $desiredInternalSampleRate1221 = ((($silk_mode1220)) + 20|0); HEAP32[$desiredInternalSampleRate1221>>2] = $cond1219; } $798 = $effective_max_rate; $cmp1223 = ($798|0)<(7000); if (!($cmp1223)) { break; } $799 = $st$addr; $silk_mode1226 = ((($799)) + 8|0); $maxInternalSampleRate1227 = ((($silk_mode1226)) + 12|0); HEAP32[$maxInternalSampleRate1227>>2] = 8000; $800 = $st$addr; $silk_mode1228 = ((($800)) + 8|0); $desiredInternalSampleRate1229 = ((($silk_mode1228)) + 20|0); $801 = HEAP32[$desiredInternalSampleRate1229>>2]|0; $cmp1230 = (8000)<($801|0); if ($cmp1230) { $cond1237 = 8000; } else { $802 = $st$addr; $silk_mode1234 = ((($802)) + 8|0); $desiredInternalSampleRate1235 = ((($silk_mode1234)) + 20|0); $803 = HEAP32[$desiredInternalSampleRate1235>>2]|0; $cond1237 = $803; } $804 = $st$addr; $silk_mode1238 = ((($804)) + 8|0); $desiredInternalSampleRate1239 = ((($silk_mode1238)) + 20|0); HEAP32[$desiredInternalSampleRate1239>>2] = $cond1237; } } while(0); $805 = $st$addr; $use_vbr1242 = ((($805)) + 148|0); $806 = HEAP32[$use_vbr1242>>2]|0; $tobool1243 = ($806|0)!=(0); $lnot1244 = $tobool1243 ^ 1; $lnot$ext = $lnot1244&1; $807 = $st$addr; $silk_mode1245 = ((($807)) + 8|0); $useCBR = ((($silk_mode1245)) + 52|0); HEAP32[$useCBR>>2] = $lnot$ext; $808 = $max_data_bytes; $sub1246 = (($808) - 1)|0; $mul1247 = $sub1246<<3; $809 = $st$addr; $silk_mode1248 = ((($809)) + 8|0); $maxBits = ((($silk_mode1248)) + 56|0); HEAP32[$maxBits>>2] = $mul1247; $810 = $redundancy; $tobool1249 = ($810|0)!=(0); $811 = $redundancy_bytes; $cmp1251 = ($811|0)>=(2); $or$cond20 = $tobool1249 & $cmp1251; do { if ($or$cond20) { $812 = $redundancy_bytes; $mul1254 = $812<<3; $add1255 = (($mul1254) + 1)|0; $813 = $st$addr; $silk_mode1256 = ((($813)) + 8|0); $maxBits1257 = ((($silk_mode1256)) + 56|0); $814 = HEAP32[$maxBits1257>>2]|0; $sub1258 = (($814) - ($add1255))|0; HEAP32[$maxBits1257>>2] = $sub1258; $815 = $st$addr; $mode1259 = ((($815)) + 14220|0); $816 = HEAP32[$mode1259>>2]|0; $cmp1260 = ($816|0)==(1001); if (!($cmp1260)) { break; } $817 = $st$addr; $silk_mode1263 = ((($817)) + 8|0); $maxBits1264 = ((($silk_mode1263)) + 56|0); $818 = HEAP32[$maxBits1264>>2]|0; $sub1265 = (($818) - 20)|0; HEAP32[$maxBits1264>>2] = $sub1265; } } while(0); $819 = $st$addr; $silk_mode1268 = ((($819)) + 8|0); $useCBR1269 = ((($silk_mode1268)) + 52|0); $820 = HEAP32[$useCBR1269>>2]|0; $tobool1270 = ($820|0)!=(0); $821 = $st$addr; $mode1272 = ((($821)) + 14220|0); $822 = HEAP32[$mode1272>>2]|0; $cmp1273 = ($822|0)==(1001); do { if ($tobool1270) { if (!($cmp1273)) { break; } $823 = $st$addr; $silk_mode1276 = ((($823)) + 8|0); $maxBits1277 = ((($silk_mode1276)) + 56|0); $824 = HEAP32[$maxBits1277>>2]|0; $825 = $st$addr; $silk_mode1278 = ((($825)) + 8|0); $bitRate1279 = ((($silk_mode1278)) + 28|0); $826 = HEAP32[$bitRate1279>>2]|0; $827 = $frame_size$addr; $mul1280 = Math_imul($826, $827)|0; $828 = $st$addr; $Fs1281 = ((($828)) + 144|0); $829 = HEAP32[$Fs1281>>2]|0; $div1282 = (($mul1280|0) / ($829|0))&-1; $cmp1283 = ($824|0)<($div1282|0); $830 = $st$addr; $silk_mode1286 = ((($830)) + 8|0); if ($cmp1283) { $maxBits1287 = ((($silk_mode1286)) + 56|0); $831 = HEAP32[$maxBits1287>>2]|0; $cond1295 = $831; } else { $bitRate1290 = ((($silk_mode1286)) + 28|0); $832 = HEAP32[$bitRate1290>>2]|0; $833 = $frame_size$addr; $mul1291 = Math_imul($832, $833)|0; $834 = $st$addr; $Fs1292 = ((($834)) + 144|0); $835 = HEAP32[$Fs1292>>2]|0; $div1293 = (($mul1291|0) / ($835|0))&-1; $cond1295 = $div1293; } $836 = $st$addr; $silk_mode1296 = ((($836)) + 8|0); $maxBits1297 = ((($silk_mode1296)) + 56|0); HEAP32[$maxBits1297>>2] = $cond1295; } else { if (!($cmp1273)) { break; } $837 = $st$addr; $silk_mode1304 = ((($837)) + 8|0); $maxBits1305 = ((($silk_mode1304)) + 56|0); $838 = HEAP32[$maxBits1305>>2]|0; $839 = $st$addr; $Fs1306 = ((($839)) + 144|0); $840 = HEAP32[$Fs1306>>2]|0; $mul1307 = Math_imul($838, $840)|0; $841 = $frame_size$addr; $div1308 = (($mul1307|0) / ($841|0))&-1; $842 = $curr_bandwidth; $843 = $st$addr; $Fs1309 = ((($843)) + 144|0); $844 = HEAP32[$Fs1309>>2]|0; $845 = $frame_size$addr; $mul1310 = ($845*50)|0; $cmp1311 = ($844|0)==($mul1310|0); $conv1312 = $cmp1311&1; $846 = $st$addr; $use_vbr1313 = ((($846)) + 148|0); $847 = HEAP32[$use_vbr1313>>2]|0; $848 = $st$addr; $silk_mode1314 = ((($848)) + 8|0); $LBRR_coded1315 = ((($silk_mode1314)) + 44|0); $849 = HEAP32[$LBRR_coded1315>>2]|0; $850 = $st$addr; $stream_channels1316 = ((($850)) + 14188|0); $851 = HEAP32[$stream_channels1316>>2]|0; $call1317 = (_compute_silk_rate_for_hybrid($div1308,$842,$conv1312,$847,$849,$851)|0); $maxBitRate = $call1317; $852 = $maxBitRate; $853 = $frame_size$addr; $mul1318 = Math_imul($852, $853)|0; $854 = $st$addr; $Fs1319 = ((($854)) + 144|0); $855 = HEAP32[$Fs1319>>2]|0; $div1320 = (($mul1318|0) / ($855|0))&-1; $856 = $st$addr; $silk_mode1321 = ((($856)) + 8|0); $maxBits1322 = ((($silk_mode1321)) + 56|0); HEAP32[$maxBits1322>>2] = $div1320; } } while(0); $857 = $prefill; $tobool1325 = ($857|0)!=(0); if ($tobool1325) { HEAP32[$zero>>2] = 0; $858 = $st$addr; $channels1327 = ((($858)) + 112|0); $859 = HEAP32[$channels1327>>2]|0; $860 = $st$addr; $encoder_buffer1328 = ((($860)) + 172|0); $861 = HEAP32[$encoder_buffer1328>>2]|0; $862 = $st$addr; $delay_compensation1329 = ((($862)) + 116|0); $863 = HEAP32[$delay_compensation1329>>2]|0; $sub1330 = (($861) - ($863))|0; $864 = $st$addr; $Fs1331 = ((($864)) + 144|0); $865 = HEAP32[$Fs1331>>2]|0; $div1332 = (($865|0) / 400)&-1; $sub1333 = (($sub1330) - ($div1332))|0; $mul1334 = Math_imul($859, $sub1333)|0; $prefill_offset = $mul1334; $866 = $st$addr; $delay_buffer1335 = ((($866)) + 14276|0); $867 = $prefill_offset; $add$ptr1337 = (($delay_buffer1335) + ($867<<2)|0); $868 = $st$addr; $delay_buffer1338 = ((($868)) + 14276|0); $869 = $prefill_offset; $add$ptr1340 = (($delay_buffer1338) + ($869<<2)|0); $870 = HEAP32[$celt_mode>>2]|0; $overlap = ((($870)) + 4|0); $871 = HEAP32[$overlap>>2]|0; $872 = $st$addr; $Fs1341 = ((($872)) + 144|0); $873 = HEAP32[$Fs1341>>2]|0; $div1342 = (($873|0) / 400)&-1; $874 = $st$addr; $channels1343 = ((($874)) + 112|0); $875 = HEAP32[$channels1343>>2]|0; $876 = HEAP32[$celt_mode>>2]|0; $window = ((($876)) + 60|0); $877 = HEAP32[$window>>2]|0; $878 = $st$addr; $Fs1344 = ((($878)) + 144|0); $879 = HEAP32[$Fs1344>>2]|0; _gain_fade($add$ptr1337,$add$ptr1340,0.0,1.0,$871,$div1342,$875,$877,$879); $880 = $st$addr; $delay_buffer1345 = ((($880)) + 14276|0); $881 = $prefill_offset; $mul1347 = $881<<2; _memset(($delay_buffer1345|0),0,($mul1347|0))|0; $i = 0; while(1) { $882 = $i; $883 = $st$addr; $encoder_buffer1349 = ((($883)) + 172|0); $884 = HEAP32[$encoder_buffer1349>>2]|0; $885 = $st$addr; $channels1350 = ((($885)) + 112|0); $886 = HEAP32[$channels1350>>2]|0; $mul1351 = Math_imul($884, $886)|0; $cmp1352 = ($882|0)<($mul1351|0); if (!($cmp1352)) { break; } $887 = $st$addr; $delay_buffer1355 = ((($887)) + 14276|0); $888 = $i; $arrayidx1356 = (($delay_buffer1355) + ($888<<2)|0); $889 = +HEAPF32[$arrayidx1356>>2]; $call1357 = (_FLOAT2INT16_12($889)|0); $890 = $i; $arrayidx1358 = (($vla1010) + ($890<<1)|0); HEAP16[$arrayidx1358>>1] = $call1357; $891 = $i; $inc1360 = (($891) + 1)|0; $i = $inc1360; } $892 = $silk_enc; $893 = $st$addr; $silk_mode1362 = ((($893)) + 8|0); $894 = $st$addr; $encoder_buffer1363 = ((($894)) + 172|0); $895 = HEAP32[$encoder_buffer1363>>2]|0; (_silk_Encode($892,$silk_mode1362,$vla1010,$895,0,$zero,1)|0); } $i = 0; while(1) { $896 = $i; $897 = $frame_size$addr; $898 = $st$addr; $channels1367 = ((($898)) + 112|0); $899 = HEAP32[$channels1367>>2]|0; $mul1368 = Math_imul($897, $899)|0; $cmp1369 = ($896|0)<($mul1368|0); if (!($cmp1369)) { break; } $900 = $total_buffer; $901 = $st$addr; $channels1372 = ((($901)) + 112|0); $902 = HEAP32[$channels1372>>2]|0; $mul1373 = Math_imul($900, $902)|0; $903 = $i; $add1374 = (($mul1373) + ($903))|0; $arrayidx1375 = (($vla) + ($add1374<<2)|0); $904 = +HEAPF32[$arrayidx1375>>2]; $call1376 = (_FLOAT2INT16_12($904)|0); $905 = $i; $arrayidx1377 = (($vla1010) + ($905<<1)|0); HEAP16[$arrayidx1377>>1] = $call1376; $906 = $i; $inc1379 = (($906) + 1)|0; $i = $inc1379; } $907 = $silk_enc; $908 = $st$addr; $silk_mode1381 = ((($908)) + 8|0); $909 = $frame_size$addr; $call1382 = (_silk_Encode($907,$silk_mode1381,$vla1010,$909,$enc,$nBytes,0)|0); $ret = $call1382; $910 = $ret; $tobool1383 = ($910|0)!=(0); do { if ($tobool1383) { $retval = -3; $cleanup$dest$slot = 1; } else { $911 = $st$addr; $mode1386 = ((($911)) + 14220|0); $912 = HEAP32[$mode1386>>2]|0; $cmp1387 = ($912|0)==(1000); do { if ($cmp1387) { $913 = $st$addr; $silk_mode1390 = ((($913)) + 8|0); $internalSampleRate = ((($silk_mode1390)) + 72|0); $914 = HEAP32[$internalSampleRate>>2]|0; $cmp1391 = ($914|0)==(8000); if ($cmp1391) { $curr_bandwidth = 1101; break; } $915 = $st$addr; $silk_mode1395 = ((($915)) + 8|0); $internalSampleRate1396 = ((($silk_mode1395)) + 72|0); $916 = HEAP32[$internalSampleRate1396>>2]|0; $cmp1397 = ($916|0)==(12000); if ($cmp1397) { $curr_bandwidth = 1102; break; } $917 = $st$addr; $silk_mode1401 = ((($917)) + 8|0); $internalSampleRate1402 = ((($silk_mode1401)) + 72|0); $918 = HEAP32[$internalSampleRate1402>>2]|0; $cmp1403 = ($918|0)==(16000); if (!($cmp1403)) { break; } $curr_bandwidth = 1103; } } while(0); $919 = $st$addr; $silk_mode1411 = ((($919)) + 8|0); $switchReady = ((($silk_mode1411)) + 88|0); $920 = HEAP32[$switchReady>>2]|0; $tobool1412 = ($920|0)!=(0); if ($tobool1412) { $921 = $st$addr; $nonfinal_frame = ((($921)) + 18128|0); $922 = HEAP32[$nonfinal_frame>>2]|0; $tobool1414 = ($922|0)!=(0); $lnot1415 = $tobool1414 ^ 1; $923 = $lnot1415; } else { $923 = 0; } $land$ext1418 = $923&1; $924 = $st$addr; $silk_mode1419 = ((($924)) + 8|0); $opusCanSwitch = ((($silk_mode1419)) + 64|0); HEAP32[$opusCanSwitch>>2] = $land$ext1418; $925 = HEAP32[$nBytes>>2]|0; $cmp1420 = ($925|0)==(0); $926 = $st$addr; if ($cmp1420) { $rangeFinal1423 = ((($926)) + 18132|0); HEAP32[$rangeFinal1423>>2] = 0; $927 = $st$addr; $mode1424 = ((($927)) + 14220|0); $928 = HEAP32[$mode1424>>2]|0; $929 = $st$addr; $Fs1425 = ((($929)) + 144|0); $930 = HEAP32[$Fs1425>>2]|0; $931 = $frame_size$addr; $div1426 = (($930|0) / ($931|0))&-1; $932 = $curr_bandwidth; $933 = $st$addr; $stream_channels1427 = ((($933)) + 14188|0); $934 = HEAP32[$stream_channels1427>>2]|0; $call1428 = (_gen_toc($928,$div1426,$932,$934)|0); $935 = $data$addr; $arrayidx1429 = ((($935)) + -1|0); HEAP8[$arrayidx1429>>0] = $call1428; $retval = 1; $cleanup$dest$slot = 1; break; } $silk_mode1431 = ((($926)) + 8|0); $opusCanSwitch1432 = ((($silk_mode1431)) + 64|0); $936 = HEAP32[$opusCanSwitch1432>>2]|0; $tobool1433 = ($936|0)!=(0); if ($tobool1433) { $937 = $max_data_bytes; $938 = $st$addr; $bitrate_bps1435 = ((($938)) + 160|0); $939 = HEAP32[$bitrate_bps1435>>2]|0; $940 = $frame_rate; $941 = $st$addr; $stream_channels1436 = ((($941)) + 14188|0); $942 = HEAP32[$stream_channels1436>>2]|0; $call1437 = (_compute_redundancy_bytes($937,$939,$940,$942)|0); $redundancy_bytes = $call1437; $943 = $redundancy_bytes; $cmp1438 = ($943|0)!=(0); $conv1439 = $cmp1438&1; $redundancy = $conv1439; $celt_to_silk = 0; $944 = $st$addr; $silk_bw_switch1440 = ((($944)) + 14244|0); HEAP32[$silk_bw_switch1440>>2] = 1; } $cleanup$dest$slot = 0; } } while(0); $945 = $saved_stack1009; _llvm_stackrestore(($945|0)); $cleanup$dest = $cleanup$dest$slot; $cond1 = ($cleanup$dest|0)==(0); if ($cond1) { label = 325; } } else { label = 325; } L404: do { if ((label|0) == 325) { $endband = 21; $946 = $curr_bandwidth; switch ($946|0) { case 1101: { $endband = 13; break; } case 1103: case 1102: { $endband = 17; break; } case 1104: { $endband = 19; break; } case 1105: { $endband = 21; break; } default: { } } $947 = $celt_enc; $948 = $endband; HEAP32[$vararg_buffer36>>2] = $948; (_opus_custom_encoder_ctl($947,10012,$vararg_buffer36)|0); $949 = $celt_enc; $950 = $st$addr; $stream_channels1452 = ((($950)) + 14188|0); $951 = HEAP32[$stream_channels1452>>2]|0; HEAP32[$vararg_buffer39>>2] = $951; (_opus_custom_encoder_ctl($949,10008,$vararg_buffer39)|0); $952 = $celt_enc; HEAP32[$vararg_buffer42>>2] = -1; (_opus_custom_encoder_ctl($952,4002,$vararg_buffer42)|0); $953 = $st$addr; $mode1455 = ((($953)) + 14220|0); $954 = HEAP32[$mode1455>>2]|0; $cmp1456 = ($954|0)!=(1000); do { if ($cmp1456) { $celt_pred = 2.0; $955 = $celt_enc; HEAP32[$vararg_buffer45>>2] = 0; (_opus_custom_encoder_ctl($955,4006,$vararg_buffer45)|0); $956 = $st$addr; $silk_mode1460 = ((($956)) + 8|0); $reducedDependency = ((($silk_mode1460)) + 68|0); $957 = HEAP32[$reducedDependency>>2]|0; $tobool1461 = ($957|0)!=(0); if ($tobool1461) { $celt_pred = 0.0; } $958 = $celt_enc; $959 = $celt_pred; $conv1466 = (~~(($959))); HEAP32[$vararg_buffer48>>2] = $conv1466; (_opus_custom_encoder_ctl($958,10002,$vararg_buffer48)|0); $960 = $st$addr; $mode1468 = ((($960)) + 14220|0); $961 = HEAP32[$mode1468>>2]|0; $cmp1469 = ($961|0)==(1001); $962 = $st$addr; $use_vbr1472 = ((($962)) + 148|0); $963 = HEAP32[$use_vbr1472>>2]|0; $tobool1473 = ($963|0)!=(0); if ($cmp1469) { if (!($tobool1473)) { break; } $964 = $celt_enc; $965 = $st$addr; $bitrate_bps1481 = ((($965)) + 160|0); $966 = HEAP32[$bitrate_bps1481>>2]|0; $967 = $st$addr; $silk_mode1482 = ((($967)) + 8|0); $bitRate1483 = ((($silk_mode1482)) + 28|0); $968 = HEAP32[$bitRate1483>>2]|0; $sub1484 = (($966) - ($968))|0; HEAP32[$vararg_buffer51>>2] = $sub1484; (_opus_custom_encoder_ctl($964,4002,$vararg_buffer51)|0); $969 = $celt_enc; HEAP32[$vararg_buffer54>>2] = 0; (_opus_custom_encoder_ctl($969,4020,$vararg_buffer54)|0); break; } else { if (!($tobool1473)) { break; } $970 = $celt_enc; HEAP32[$vararg_buffer57>>2] = 1; (_opus_custom_encoder_ctl($970,4006,$vararg_buffer57)|0); $971 = $celt_enc; $972 = $st$addr; $vbr_constraint1495 = ((($972)) + 152|0); $973 = HEAP32[$vbr_constraint1495>>2]|0; HEAP32[$vararg_buffer60>>2] = $973; (_opus_custom_encoder_ctl($971,4020,$vararg_buffer60)|0); $974 = $celt_enc; $975 = $st$addr; $bitrate_bps1500 = ((($975)) + 160|0); $976 = HEAP32[$bitrate_bps1500>>2]|0; HEAP32[$vararg_buffer63>>2] = $976; (_opus_custom_encoder_ctl($974,4002,$vararg_buffer63)|0); break; } } } while(0); $977 = $st$addr; $channels1505 = ((($977)) + 112|0); $978 = HEAP32[$channels1505>>2]|0; $979 = $st$addr; $Fs1506 = ((($979)) + 144|0); $980 = HEAP32[$Fs1506>>2]|0; $mul1507 = Math_imul($978, $980)|0; $div1508 = (($mul1507|0) / 400)&-1; $vla1509$alloca_mul = $div1508<<2; $vla1509 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla1509$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla1509$alloca_mul)|0)+15)&-16)|0);; $981 = $st$addr; $mode1510 = ((($981)) + 14220|0); $982 = HEAP32[$mode1510>>2]|0; $cmp1511 = ($982|0)!=(1000); do { if ($cmp1511) { $983 = $st$addr; $mode1514 = ((($983)) + 14220|0); $984 = HEAP32[$mode1514>>2]|0; $985 = $st$addr; $prev_mode1515 = ((($985)) + 14224|0); $986 = HEAP32[$prev_mode1515>>2]|0; $cmp1516 = ($984|0)!=($986|0); if (!($cmp1516)) { break; } $987 = $st$addr; $prev_mode1519 = ((($987)) + 14224|0); $988 = HEAP32[$prev_mode1519>>2]|0; $cmp1520 = ($988|0)>(0); if (!($cmp1520)) { break; } $989 = $st$addr; $delay_buffer1523 = ((($989)) + 14276|0); $990 = $st$addr; $encoder_buffer1524 = ((($990)) + 172|0); $991 = HEAP32[$encoder_buffer1524>>2]|0; $992 = $total_buffer; $sub1525 = (($991) - ($992))|0; $993 = $st$addr; $Fs1526 = ((($993)) + 144|0); $994 = HEAP32[$Fs1526>>2]|0; $div1527 = (($994|0) / 400)&-1; $sub1528 = (($sub1525) - ($div1527))|0; $995 = $st$addr; $channels1529 = ((($995)) + 112|0); $996 = HEAP32[$channels1529>>2]|0; $mul1530 = Math_imul($sub1528, $996)|0; $arrayidx1531 = (($delay_buffer1523) + ($mul1530<<2)|0); $997 = $st$addr; $channels1532 = ((($997)) + 112|0); $998 = HEAP32[$channels1532>>2]|0; $999 = $st$addr; $Fs1533 = ((($999)) + 144|0); $1000 = HEAP32[$Fs1533>>2]|0; $mul1534 = Math_imul($998, $1000)|0; $div1535 = (($mul1534|0) / 400)&-1; $mul1536 = $div1535<<2; $1001 = $st$addr; $delay_buffer1537 = ((($1001)) + 14276|0); $1002 = $st$addr; $encoder_buffer1538 = ((($1002)) + 172|0); $1003 = HEAP32[$encoder_buffer1538>>2]|0; $1004 = $total_buffer; $sub1539 = (($1003) - ($1004))|0; $1005 = $st$addr; $Fs1540 = ((($1005)) + 144|0); $1006 = HEAP32[$Fs1540>>2]|0; $div1541 = (($1006|0) / 400)&-1; $sub1542 = (($sub1539) - ($div1541))|0; $1007 = $st$addr; $channels1543 = ((($1007)) + 112|0); $1008 = HEAP32[$channels1543>>2]|0; $mul1544 = Math_imul($sub1542, $1008)|0; $arrayidx1545 = (($delay_buffer1537) + ($mul1544<<2)|0); $sub$ptr$lhs$cast1546 = $vla1509; $sub$ptr$rhs$cast1547 = $arrayidx1545; $sub$ptr$sub1548 = (($sub$ptr$lhs$cast1546) - ($sub$ptr$rhs$cast1547))|0; $sub$ptr$div1549 = (($sub$ptr$sub1548|0) / 4)&-1; $mul1550 = 0; $add1551 = (($mul1536) + ($mul1550))|0; _memcpy(($vla1509|0),($arrayidx1531|0),($add1551|0))|0; } } while(0); $1009 = $st$addr; $channels1553 = ((($1009)) + 112|0); $1010 = HEAP32[$channels1553>>2]|0; $1011 = $st$addr; $encoder_buffer1554 = ((($1011)) + 172|0); $1012 = HEAP32[$encoder_buffer1554>>2]|0; $1013 = $frame_size$addr; $1014 = $total_buffer; $add1555 = (($1013) + ($1014))|0; $sub1556 = (($1012) - ($add1555))|0; $mul1557 = Math_imul($1010, $sub1556)|0; $cmp1558 = ($mul1557|0)>(0); $1015 = $st$addr; $delay_buffer1561 = ((($1015)) + 14276|0); if ($cmp1558) { $1016 = $st$addr; $delay_buffer1563 = ((($1016)) + 14276|0); $1017 = $st$addr; $channels1564 = ((($1017)) + 112|0); $1018 = HEAP32[$channels1564>>2]|0; $1019 = $frame_size$addr; $mul1565 = Math_imul($1018, $1019)|0; $arrayidx1566 = (($delay_buffer1563) + ($mul1565<<2)|0); $1020 = $st$addr; $channels1567 = ((($1020)) + 112|0); $1021 = HEAP32[$channels1567>>2]|0; $1022 = $st$addr; $encoder_buffer1568 = ((($1022)) + 172|0); $1023 = HEAP32[$encoder_buffer1568>>2]|0; $1024 = $frame_size$addr; $sub1569 = (($1023) - ($1024))|0; $1025 = $total_buffer; $sub1570 = (($sub1569) - ($1025))|0; $mul1571 = Math_imul($1021, $sub1570)|0; $mul1572 = $mul1571<<2; $1026 = $st$addr; $delay_buffer1573 = ((($1026)) + 14276|0); $1027 = $st$addr; $delay_buffer1575 = ((($1027)) + 14276|0); $1028 = $st$addr; $channels1576 = ((($1028)) + 112|0); $1029 = HEAP32[$channels1576>>2]|0; $1030 = $frame_size$addr; $mul1577 = Math_imul($1029, $1030)|0; $arrayidx1578 = (($delay_buffer1575) + ($mul1577<<2)|0); $sub$ptr$lhs$cast1579 = $delay_buffer1573; $sub$ptr$rhs$cast1580 = $arrayidx1578; $sub$ptr$sub1581 = (($sub$ptr$lhs$cast1579) - ($sub$ptr$rhs$cast1580))|0; $sub$ptr$div1582 = (($sub$ptr$sub1581|0) / 4)&-1; $mul1583 = 0; $add1584 = (($mul1572) + ($mul1583))|0; _memmove(($delay_buffer1561|0),($arrayidx1566|0),($add1584|0))|0; $1031 = $st$addr; $delay_buffer1585 = ((($1031)) + 14276|0); $1032 = $st$addr; $channels1586 = ((($1032)) + 112|0); $1033 = HEAP32[$channels1586>>2]|0; $1034 = $st$addr; $encoder_buffer1587 = ((($1034)) + 172|0); $1035 = HEAP32[$encoder_buffer1587>>2]|0; $1036 = $frame_size$addr; $sub1588 = (($1035) - ($1036))|0; $1037 = $total_buffer; $sub1589 = (($sub1588) - ($1037))|0; $mul1590 = Math_imul($1033, $sub1589)|0; $arrayidx1591 = (($delay_buffer1585) + ($mul1590<<2)|0); $1038 = $frame_size$addr; $1039 = $total_buffer; $add1593 = (($1038) + ($1039))|0; $1040 = $st$addr; $channels1594 = ((($1040)) + 112|0); $1041 = HEAP32[$channels1594>>2]|0; $mul1595 = Math_imul($add1593, $1041)|0; $mul1596 = $mul1595<<2; $1042 = $st$addr; $delay_buffer1597 = ((($1042)) + 14276|0); $1043 = $st$addr; $channels1598 = ((($1043)) + 112|0); $1044 = HEAP32[$channels1598>>2]|0; $1045 = $st$addr; $encoder_buffer1599 = ((($1045)) + 172|0); $1046 = HEAP32[$encoder_buffer1599>>2]|0; $1047 = $frame_size$addr; $sub1600 = (($1046) - ($1047))|0; $1048 = $total_buffer; $sub1601 = (($sub1600) - ($1048))|0; $mul1602 = Math_imul($1044, $sub1601)|0; $arrayidx1603 = (($delay_buffer1597) + ($mul1602<<2)|0); $sub$ptr$lhs$cast1605 = $arrayidx1603; $sub$ptr$rhs$cast1606 = $vla; $sub$ptr$sub1607 = (($sub$ptr$lhs$cast1605) - ($sub$ptr$rhs$cast1606))|0; $sub$ptr$div1608 = (($sub$ptr$sub1607|0) / 4)&-1; $mul1609 = 0; $add1610 = (($mul1596) + ($mul1609))|0; _memcpy(($arrayidx1591|0),($vla|0),($add1610|0))|0; } else { $1049 = $frame_size$addr; $1050 = $total_buffer; $add1614 = (($1049) + ($1050))|0; $1051 = $st$addr; $encoder_buffer1615 = ((($1051)) + 172|0); $1052 = HEAP32[$encoder_buffer1615>>2]|0; $sub1616 = (($add1614) - ($1052))|0; $1053 = $st$addr; $channels1617 = ((($1053)) + 112|0); $1054 = HEAP32[$channels1617>>2]|0; $mul1618 = Math_imul($sub1616, $1054)|0; $arrayidx1619 = (($vla) + ($mul1618<<2)|0); $1055 = $st$addr; $encoder_buffer1620 = ((($1055)) + 172|0); $1056 = HEAP32[$encoder_buffer1620>>2]|0; $1057 = $st$addr; $channels1621 = ((($1057)) + 112|0); $1058 = HEAP32[$channels1621>>2]|0; $mul1622 = Math_imul($1056, $1058)|0; $mul1623 = $mul1622<<2; $1059 = $st$addr; $delay_buffer1624 = ((($1059)) + 14276|0); $1060 = $frame_size$addr; $1061 = $total_buffer; $add1626 = (($1060) + ($1061))|0; $1062 = $st$addr; $encoder_buffer1627 = ((($1062)) + 172|0); $1063 = HEAP32[$encoder_buffer1627>>2]|0; $sub1628 = (($add1626) - ($1063))|0; $1064 = $st$addr; $channels1629 = ((($1064)) + 112|0); $1065 = HEAP32[$channels1629>>2]|0; $mul1630 = Math_imul($sub1628, $1065)|0; $arrayidx1631 = (($vla) + ($mul1630<<2)|0); $sub$ptr$lhs$cast1632 = $delay_buffer1624; $sub$ptr$rhs$cast1633 = $arrayidx1631; $sub$ptr$sub1634 = (($sub$ptr$lhs$cast1632) - ($sub$ptr$rhs$cast1633))|0; $sub$ptr$div1635 = (($sub$ptr$sub1634|0) / 4)&-1; $mul1636 = 0; $add1637 = (($mul1623) + ($mul1636))|0; _memcpy(($delay_buffer1561|0),($arrayidx1619|0),($add1637|0))|0; } $1066 = $st$addr; $prev_HB_gain = ((($1066)) + 14200|0); $1067 = +HEAPF32[$prev_HB_gain>>2]; $cmp1639 = $1067 < 1.0; $1068 = $HB_gain; $cmp1642 = $1068 < 1.0; $or$cond21 = $cmp1639 | $cmp1642; if ($or$cond21) { $1069 = $st$addr; $prev_HB_gain1645 = ((($1069)) + 14200|0); $1070 = +HEAPF32[$prev_HB_gain1645>>2]; $1071 = $HB_gain; $1072 = HEAP32[$celt_mode>>2]|0; $overlap1646 = ((($1072)) + 4|0); $1073 = HEAP32[$overlap1646>>2]|0; $1074 = $frame_size$addr; $1075 = $st$addr; $channels1647 = ((($1075)) + 112|0); $1076 = HEAP32[$channels1647>>2]|0; $1077 = HEAP32[$celt_mode>>2]|0; $window1648 = ((($1077)) + 60|0); $1078 = HEAP32[$window1648>>2]|0; $1079 = $st$addr; $Fs1649 = ((($1079)) + 144|0); $1080 = HEAP32[$Fs1649>>2]|0; _gain_fade($vla,$vla,$1070,$1071,$1073,$1074,$1076,$1078,$1080); } $1081 = $HB_gain; $1082 = $st$addr; $prev_HB_gain1651 = ((($1082)) + 14200|0); HEAPF32[$prev_HB_gain1651>>2] = $1081; $1083 = $st$addr; $mode1652 = ((($1083)) + 14220|0); $1084 = HEAP32[$mode1652>>2]|0; $cmp1653 = ($1084|0)!=(1001); if ($cmp1653) { label = 349; } else { $1085 = $st$addr; $stream_channels1656 = ((($1085)) + 14188|0); $1086 = HEAP32[$stream_channels1656>>2]|0; $cmp1657 = ($1086|0)==(1); if ($cmp1657) { label = 349; } } if ((label|0) == 349) { $1087 = $equiv_rate; $cmp1660 = ($1087|0)>(32000); do { if ($cmp1660) { $1088 = $st$addr; $$sink22$sink = $1088;$sub1675$sink$sink = 16384; } else { $1089 = $equiv_rate; $cmp1665 = ($1089|0)<(16000); if ($cmp1665) { $1090 = $st$addr; $$sink22$sink = $1090;$sub1675$sink$sink = 0; break; } else { $1091 = $equiv_rate; $sub1671 = (32000 - ($1091))|0; $mul1672 = $sub1671<<11; $1092 = $equiv_rate; $sub1673 = (($1092) - 14000)|0; $div1674 = (($mul1672|0) / ($sub1673|0))&-1; $sub1675 = (16384 - ($div1674))|0; $1093 = $st$addr; $$sink22$sink = $1093;$sub1675$sink$sink = $sub1675; break; } } } while(0); $silk_mode1676 = ((($$sink22$sink)) + 8|0); $stereoWidth_Q141677 = ((($silk_mode1676)) + 84|0); HEAP32[$stereoWidth_Q141677>>2] = $sub1675$sink$sink; } $1094 = $st$addr; $energy_masking1681 = ((($1094)) + 14252|0); $1095 = HEAP32[$energy_masking1681>>2]|0; $tobool1682 = ($1095|0)!=(0|0); do { if (!($tobool1682)) { $1096 = $st$addr; $channels1684 = ((($1096)) + 112|0); $1097 = HEAP32[$channels1684>>2]|0; $cmp1685 = ($1097|0)==(2); if (!($cmp1685)) { break; } $1098 = $st$addr; $hybrid_stereo_width_Q14 = ((($1098)) + 14192|0); $1099 = HEAP16[$hybrid_stereo_width_Q14>>1]|0; $conv1688 = $1099 << 16 >> 16; $cmp1689 = ($conv1688|0)<(16384); if (!($cmp1689)) { $1100 = $st$addr; $silk_mode1692 = ((($1100)) + 8|0); $stereoWidth_Q141693 = ((($silk_mode1692)) + 84|0); $1101 = HEAP32[$stereoWidth_Q141693>>2]|0; $cmp1694 = ($1101|0)<(16384); if (!($cmp1694)) { break; } } $1102 = $st$addr; $hybrid_stereo_width_Q141697 = ((($1102)) + 14192|0); $1103 = HEAP16[$hybrid_stereo_width_Q141697>>1]|0; $conv1698 = (+($1103<<16>>16)); $g1 = $conv1698; $1104 = $st$addr; $silk_mode1699 = ((($1104)) + 8|0); $stereoWidth_Q141700 = ((($silk_mode1699)) + 84|0); $1105 = HEAP32[$stereoWidth_Q141700>>2]|0; $conv1701 = (+($1105|0)); $g2 = $conv1701; $1106 = $g1; $mul1702 = $1106 * 6.103515625E-5; $g1 = $mul1702; $1107 = $g2; $mul1703 = $1107 * 6.103515625E-5; $g2 = $mul1703; $1108 = $g1; $1109 = $g2; $1110 = HEAP32[$celt_mode>>2]|0; $overlap1704 = ((($1110)) + 4|0); $1111 = HEAP32[$overlap1704>>2]|0; $1112 = $frame_size$addr; $1113 = $st$addr; $channels1705 = ((($1113)) + 112|0); $1114 = HEAP32[$channels1705>>2]|0; $1115 = HEAP32[$celt_mode>>2]|0; $window1706 = ((($1115)) + 60|0); $1116 = HEAP32[$window1706>>2]|0; $1117 = $st$addr; $Fs1707 = ((($1117)) + 144|0); $1118 = HEAP32[$Fs1707>>2]|0; _stereo_fade($vla,$vla,$1108,$1109,$1111,$1112,$1114,$1116,$1118); $1119 = $st$addr; $silk_mode1708 = ((($1119)) + 8|0); $stereoWidth_Q141709 = ((($silk_mode1708)) + 84|0); $1120 = HEAP32[$stereoWidth_Q141709>>2]|0; $conv1710 = $1120&65535; $1121 = $st$addr; $hybrid_stereo_width_Q141711 = ((($1121)) + 14192|0); HEAP16[$hybrid_stereo_width_Q141711>>1] = $conv1710; } } while(0); $1122 = $st$addr; $mode1714 = ((($1122)) + 14220|0); $1123 = HEAP32[$mode1714>>2]|0; $cmp1715 = ($1123|0)!=(1002); do { if ($cmp1715) { $call1718 = (_ec_tell_13($enc)|0); $add1719 = (($call1718) + 17)|0; $1124 = $st$addr; $mode1720 = ((($1124)) + 14220|0); $1125 = HEAP32[$mode1720>>2]|0; $cmp1721 = ($1125|0)==(1001); $conv1722 = $cmp1721&1; $mul1723 = ($conv1722*20)|0; $add1724 = (($add1719) + ($mul1723))|0; $1126 = $max_data_bytes; $sub1725 = (($1126) - 1)|0; $mul1726 = $sub1725<<3; $cmp1727 = ($add1724|0)<=($mul1726|0); if (!($cmp1727)) { label = 372; break; } $1127 = $st$addr; $mode1730 = ((($1127)) + 14220|0); $1128 = HEAP32[$mode1730>>2]|0; $cmp1731 = ($1128|0)==(1001); if ($cmp1731) { $1129 = $redundancy; _ec_enc_bit_logp($enc,$1129,12); } $1130 = $redundancy; $tobool1735 = ($1130|0)!=(0); if (!($tobool1735)) { break; } $1131 = $celt_to_silk; _ec_enc_bit_logp($enc,$1131,1); $1132 = $st$addr; $mode1737 = ((($1132)) + 14220|0); $1133 = HEAP32[$mode1737>>2]|0; $cmp1738 = ($1133|0)==(1001); $1134 = $max_data_bytes; $sub1741 = (($1134) - 1)|0; $call1742 = (_ec_tell_13($enc)|0); if ($cmp1738) { $add1743 = (($call1742) + 8)|0; $add1744 = (($add1743) + 3)|0; $add1745 = (($add1744) + 7)|0; $shr1746 = $add1745 >> 3; $sub1747 = (($sub1741) - ($shr1746))|0; $max_redundancy = $sub1747; } else { $add1751 = (($call1742) + 7)|0; $shr1752 = $add1751 >> 3; $sub1753 = (($sub1741) - ($shr1752))|0; $max_redundancy = $sub1753; } $1135 = $max_redundancy; $1136 = $redundancy_bytes; $cmp1755 = ($1135|0)<($1136|0); $1137 = $max_redundancy; $1138 = $redundancy_bytes; $cond1760 = $cmp1755 ? $1137 : $1138; $redundancy_bytes = $cond1760; $1139 = $redundancy_bytes; $cmp1761 = (2)>($1139|0); $1140 = $redundancy_bytes; $cond1766 = $cmp1761 ? 2 : $1140; $cmp1767 = (257)<($cond1766|0); if ($cmp1767) { $cond1778 = 257; } else { $1141 = $redundancy_bytes; $cmp1771 = (2)>($1141|0); $1142 = $redundancy_bytes; $cond1776 = $cmp1771 ? 2 : $1142; $cond1778 = $cond1776; } $redundancy_bytes = $cond1778; $1143 = $st$addr; $mode1779 = ((($1143)) + 14220|0); $1144 = HEAP32[$mode1779>>2]|0; $cmp1780 = ($1144|0)==(1001); if (!($cmp1780)) { break; } $1145 = $redundancy_bytes; $sub1783 = (($1145) - 2)|0; _ec_enc_uint($enc,$sub1783,256); } else { label = 372; } } while(0); if ((label|0) == 372) { $redundancy = 0; } $1146 = $redundancy; $tobool1788 = ($1146|0)!=(0); if (!($tobool1788)) { $1147 = $st$addr; $silk_bw_switch1790 = ((($1147)) + 14244|0); HEAP32[$silk_bw_switch1790>>2] = 0; $redundancy_bytes = 0; } $1148 = $st$addr; $mode1792 = ((($1148)) + 14220|0); $1149 = HEAP32[$mode1792>>2]|0; $cmp1793 = ($1149|0)!=(1002); if ($cmp1793) { $start_band = 17; } $1150 = $st$addr; $mode1797 = ((($1150)) + 14220|0); $1151 = HEAP32[$mode1797>>2]|0; $cmp1798 = ($1151|0)==(1000); if ($cmp1798) { $call1801 = (_ec_tell_13($enc)|0); $add1802 = (($call1801) + 7)|0; $shr1803 = $add1802 >> 3; $ret = $shr1803; _ec_enc_done($enc); $1152 = $ret; $nb_compr_bytes = $1152; } else { $1153 = $max_data_bytes; $sub1805 = (($1153) - 1)|0; $1154 = $redundancy_bytes; $sub1806 = (($sub1805) - ($1154))|0; $nb_compr_bytes = $sub1806; $1155 = $nb_compr_bytes; _ec_enc_shrink($enc,$1155); } $1156 = $redundancy; $tobool1808 = ($1156|0)!=(0); if ($tobool1808) { label = 382; } else { $1157 = $st$addr; $mode1810 = ((($1157)) + 14220|0); $1158 = HEAP32[$mode1810>>2]|0; $cmp1811 = ($1158|0)!=(1000); if ($cmp1811) { label = 382; } } if ((label|0) == 382) { $1159 = $celt_enc; $sub$ptr$lhs$cast1814 = $analysis_info; $sub$ptr$rhs$cast1815 = $analysis_info; $sub$ptr$sub1816 = (($sub$ptr$lhs$cast1814) - ($sub$ptr$rhs$cast1815))|0; $sub$ptr$div1817 = (($sub$ptr$sub1816|0) / 64)&-1; $add$ptr1818 = (($analysis_info) + ($sub$ptr$div1817<<6)|0); HEAP32[$vararg_buffer66>>2] = $add$ptr1818; (_opus_custom_encoder_ctl($1159,10022,$vararg_buffer66)|0); } $1160 = $st$addr; $mode1821 = ((($1160)) + 14220|0); $1161 = HEAP32[$mode1821>>2]|0; $cmp1822 = ($1161|0)==(1001); if ($cmp1822) { $1162 = $st$addr; $silk_mode1825 = ((($1162)) + 8|0); $signalType = ((($silk_mode1825)) + 92|0); $1163 = HEAP32[$signalType>>2]|0; HEAP32[$info>>2] = $1163; $1164 = $st$addr; $silk_mode1827 = ((($1164)) + 8|0); $offset = ((($silk_mode1827)) + 96|0); $1165 = HEAP32[$offset>>2]|0; $offset1828 = ((($info)) + 4|0); HEAP32[$offset1828>>2] = $1165; $1166 = $celt_enc; $sub$ptr$lhs$cast1829 = $info; $sub$ptr$rhs$cast1830 = $info; $sub$ptr$sub1831 = (($sub$ptr$lhs$cast1829) - ($sub$ptr$rhs$cast1830))|0; $sub$ptr$div1832 = (($sub$ptr$sub1831|0) / 8)&-1; $add$ptr1833 = (($info) + ($sub$ptr$div1832<<3)|0); HEAP32[$vararg_buffer69>>2] = $add$ptr1833; (_opus_custom_encoder_ctl($1166,10028,$vararg_buffer69)|0); } else { $1167 = $celt_enc; HEAP32[$vararg_buffer72>>2] = 0; (_opus_custom_encoder_ctl($1167,10028,$vararg_buffer72)|0); } $1168 = $redundancy; $tobool1838 = ($1168|0)!=(0); $1169 = $celt_to_silk; $tobool1840 = ($1169|0)!=(0); $or$cond23 = $tobool1838 & $tobool1840; do { if ($or$cond23) { $1170 = $celt_enc; HEAP32[$vararg_buffer75>>2] = 0; (_opus_custom_encoder_ctl($1170,10010,$vararg_buffer75)|0); $1171 = $celt_enc; HEAP32[$vararg_buffer78>>2] = 0; (_opus_custom_encoder_ctl($1171,4006,$vararg_buffer78)|0); $1172 = $celt_enc; HEAP32[$vararg_buffer81>>2] = -1; (_opus_custom_encoder_ctl($1172,4002,$vararg_buffer81)|0); $1173 = $celt_enc; $1174 = $st$addr; $Fs1845 = ((($1174)) + 144|0); $1175 = HEAP32[$Fs1845>>2]|0; $div1846 = (($1175|0) / 200)&-1; $1176 = $data$addr; $1177 = $nb_compr_bytes; $add$ptr1847 = (($1176) + ($1177)|0); $1178 = $redundancy_bytes; $call1848 = (_celt_encode_with_ec($1173,$vla,$div1846,$add$ptr1847,$1178,0)|0); $err = $call1848; $1179 = $err; $cmp1849 = ($1179|0)<(0); if ($cmp1849) { $retval = -3; $cleanup$dest$slot = 1; break L404; } else { $1180 = $celt_enc; $sub$ptr$lhs$cast1853 = $redundant_rng; $sub$ptr$rhs$cast1854 = $redundant_rng; $sub$ptr$sub1855 = (($sub$ptr$lhs$cast1853) - ($sub$ptr$rhs$cast1854))|0; $sub$ptr$div1856 = (($sub$ptr$sub1855|0) / 4)&-1; $add$ptr1857 = (($redundant_rng) + ($sub$ptr$div1856<<2)|0); HEAP32[$vararg_buffer84>>2] = $add$ptr1857; (_opus_custom_encoder_ctl($1180,4031,$vararg_buffer84)|0); $1181 = $celt_enc; (_opus_custom_encoder_ctl($1181,4028,$vararg_buffer87)|0); break; } } } while(0); $1182 = $celt_enc; $1183 = $start_band; HEAP32[$vararg_buffer89>>2] = $1183; (_opus_custom_encoder_ctl($1182,10010,$vararg_buffer89)|0); $1184 = $st$addr; $mode1864 = ((($1184)) + 14220|0); $1185 = HEAP32[$mode1864>>2]|0; $cmp1865 = ($1185|0)!=(1000); do { if ($cmp1865) { $1186 = $st$addr; $mode1868 = ((($1186)) + 14220|0); $1187 = HEAP32[$mode1868>>2]|0; $1188 = $st$addr; $prev_mode1869 = ((($1188)) + 14224|0); $1189 = HEAP32[$prev_mode1869>>2]|0; $cmp1870 = ($1187|0)!=($1189|0); do { if ($cmp1870) { $1190 = $st$addr; $prev_mode1873 = ((($1190)) + 14224|0); $1191 = HEAP32[$prev_mode1873>>2]|0; $cmp1874 = ($1191|0)>(0); if (!($cmp1874)) { break; } $1192 = $celt_enc; (_opus_custom_encoder_ctl($1192,4028,$vararg_buffer92)|0); $1193 = $celt_enc; $1194 = $st$addr; $Fs1879 = ((($1194)) + 144|0); $1195 = HEAP32[$Fs1879>>2]|0; $div1880 = (($1195|0) / 400)&-1; (_celt_encode_with_ec($1193,$vla1509,$div1880,$dummy1877,2,0)|0); $1196 = $celt_enc; HEAP32[$vararg_buffer94>>2] = 0; (_opus_custom_encoder_ctl($1196,10002,$vararg_buffer94)|0); } } while(0); $call1885 = (_ec_tell_13($enc)|0); $1197 = $nb_compr_bytes; $mul1886 = $1197<<3; $cmp1887 = ($call1885|0)<=($mul1886|0); if (!($cmp1887)) { break; } $1198 = $redundancy; $tobool1890 = ($1198|0)!=(0); $1199 = $celt_to_silk; $tobool1892 = ($1199|0)!=(0); $or$cond24 = $tobool1890 & $tobool1892; do { if ($or$cond24) { $1200 = $st$addr; $mode1894 = ((($1200)) + 14220|0); $1201 = HEAP32[$mode1894>>2]|0; $cmp1895 = ($1201|0)==(1001); if (!($cmp1895)) { break; } $1202 = $st$addr; $use_vbr1898 = ((($1202)) + 148|0); $1203 = HEAP32[$use_vbr1898>>2]|0; $tobool1899 = ($1203|0)!=(0); if (!($tobool1899)) { break; } $1204 = $celt_enc; $1205 = $st$addr; $bitrate_bps1907 = ((($1205)) + 160|0); $1206 = HEAP32[$bitrate_bps1907>>2]|0; $1207 = $st$addr; $silk_mode1908 = ((($1207)) + 8|0); $bitRate1909 = ((($silk_mode1908)) + 28|0); $1208 = HEAP32[$bitRate1909>>2]|0; $sub1910 = (($1206) - ($1208))|0; HEAP32[$vararg_buffer97>>2] = $sub1910; (_opus_custom_encoder_ctl($1204,4002,$vararg_buffer97)|0); } } while(0); $1209 = $celt_enc; $1210 = $st$addr; $use_vbr1916 = ((($1210)) + 148|0); $1211 = HEAP32[$use_vbr1916>>2]|0; HEAP32[$vararg_buffer100>>2] = $1211; (_opus_custom_encoder_ctl($1209,4006,$vararg_buffer100)|0); $1212 = $celt_enc; $1213 = $frame_size$addr; $1214 = $nb_compr_bytes; $call1918 = (_celt_encode_with_ec($1212,$vla,$1213,0,$1214,$enc)|0); $ret = $call1918; $1215 = $ret; $cmp1919 = ($1215|0)<(0); if ($cmp1919) { $retval = -3; $cleanup$dest$slot = 1; break L404; } $1216 = $redundancy; $tobool1923 = ($1216|0)!=(0); $1217 = $celt_to_silk; $tobool1925 = ($1217|0)!=(0); $or$cond25 = $tobool1923 & $tobool1925; if (!($or$cond25)) { break; } $1218 = $st$addr; $mode1927 = ((($1218)) + 14220|0); $1219 = HEAP32[$mode1927>>2]|0; $cmp1928 = ($1219|0)==(1001); if (!($cmp1928)) { break; } $1220 = $st$addr; $use_vbr1931 = ((($1220)) + 148|0); $1221 = HEAP32[$use_vbr1931>>2]|0; $tobool1932 = ($1221|0)!=(0); if (!($tobool1932)) { break; } $1222 = $data$addr; $1223 = $ret; $add$ptr1934 = (($1222) + ($1223)|0); $1224 = $data$addr; $1225 = $nb_compr_bytes; $add$ptr1935 = (($1224) + ($1225)|0); $1226 = $redundancy_bytes; $mul1936 = $1226; $1227 = $data$addr; $1228 = $ret; $add$ptr1937 = (($1227) + ($1228)|0); $1229 = $data$addr; $1230 = $nb_compr_bytes; $add$ptr1938 = (($1229) + ($1230)|0); $sub$ptr$lhs$cast1939 = $add$ptr1937; $sub$ptr$rhs$cast1940 = $add$ptr1938; $sub$ptr$sub1941 = (($sub$ptr$lhs$cast1939) - ($sub$ptr$rhs$cast1940))|0; $mul1942 = 0; $add1943 = (($mul1936) + ($mul1942))|0; _memmove(($add$ptr1934|0),($add$ptr1935|0),($add1943|0))|0; $1231 = $nb_compr_bytes; $1232 = $redundancy_bytes; $add1944 = (($1231) + ($1232))|0; $nb_compr_bytes = $add1944; } } while(0); $1233 = $redundancy; $tobool1948 = ($1233|0)==(0); $1234 = $celt_to_silk; $tobool1950 = ($1234|0)!=(0); $or$cond26 = $tobool1948 | $tobool1950; do { if (!($or$cond26)) { $1235 = $st$addr; $Fs1954 = ((($1235)) + 144|0); $1236 = HEAP32[$Fs1954>>2]|0; $div1955 = (($1236|0) / 200)&-1; $N2 = $div1955; $1237 = $st$addr; $Fs1956 = ((($1237)) + 144|0); $1238 = HEAP32[$Fs1956>>2]|0; $div1957 = (($1238|0) / 400)&-1; $N4 = $div1957; $1239 = $celt_enc; (_opus_custom_encoder_ctl($1239,4028,$vararg_buffer103)|0); $1240 = $celt_enc; HEAP32[$vararg_buffer105>>2] = 0; (_opus_custom_encoder_ctl($1240,10010,$vararg_buffer105)|0); $1241 = $celt_enc; HEAP32[$vararg_buffer108>>2] = 0; (_opus_custom_encoder_ctl($1241,10002,$vararg_buffer108)|0); $1242 = $celt_enc; HEAP32[$vararg_buffer111>>2] = 0; (_opus_custom_encoder_ctl($1242,4006,$vararg_buffer111)|0); $1243 = $celt_enc; HEAP32[$vararg_buffer114>>2] = -1; (_opus_custom_encoder_ctl($1243,4002,$vararg_buffer114)|0); $1244 = $st$addr; $mode1963 = ((($1244)) + 14220|0); $1245 = HEAP32[$mode1963>>2]|0; $cmp1964 = ($1245|0)==(1001); if ($cmp1964) { $1246 = $ret; $nb_compr_bytes = $1246; $1247 = $nb_compr_bytes; _ec_enc_shrink($enc,$1247); } $1248 = $celt_enc; $1249 = $st$addr; $channels1968 = ((($1249)) + 112|0); $1250 = HEAP32[$channels1968>>2]|0; $1251 = $frame_size$addr; $1252 = $N2; $sub1969 = (($1251) - ($1252))|0; $1253 = $N4; $sub1970 = (($sub1969) - ($1253))|0; $mul1971 = Math_imul($1250, $sub1970)|0; $add$ptr1972 = (($vla) + ($mul1971<<2)|0); $1254 = $N4; (_celt_encode_with_ec($1248,$add$ptr1972,$1254,$dummy1953,2,0)|0); $1255 = $celt_enc; $1256 = $st$addr; $channels1975 = ((($1256)) + 112|0); $1257 = HEAP32[$channels1975>>2]|0; $1258 = $frame_size$addr; $1259 = $N2; $sub1976 = (($1258) - ($1259))|0; $mul1977 = Math_imul($1257, $sub1976)|0; $add$ptr1978 = (($vla) + ($mul1977<<2)|0); $1260 = $N2; $1261 = $data$addr; $1262 = $nb_compr_bytes; $add$ptr1979 = (($1261) + ($1262)|0); $1263 = $redundancy_bytes; $call1980 = (_celt_encode_with_ec($1255,$add$ptr1978,$1260,$add$ptr1979,$1263,0)|0); $err1952 = $call1980; $1264 = $err1952; $cmp1981 = ($1264|0)<(0); if ($cmp1981) { $retval = -3; $cleanup$dest$slot = 1; break L404; } else { $1265 = $celt_enc; $sub$ptr$lhs$cast1985 = $redundant_rng; $sub$ptr$rhs$cast1986 = $redundant_rng; $sub$ptr$sub1987 = (($sub$ptr$lhs$cast1985) - ($sub$ptr$rhs$cast1986))|0; $sub$ptr$div1988 = (($sub$ptr$sub1987|0) / 4)&-1; $add$ptr1989 = (($redundant_rng) + ($sub$ptr$div1988<<2)|0); HEAP32[$vararg_buffer117>>2] = $add$ptr1989; (_opus_custom_encoder_ctl($1265,4031,$vararg_buffer117)|0); break; } } } while(0); $1266 = $data$addr; $incdec$ptr = ((($1266)) + -1|0); $data$addr = $incdec$ptr; $1267 = $st$addr; $mode1992 = ((($1267)) + 14220|0); $1268 = HEAP32[$mode1992>>2]|0; $1269 = $st$addr; $Fs1993 = ((($1269)) + 144|0); $1270 = HEAP32[$Fs1993>>2]|0; $1271 = $frame_size$addr; $div1994 = (($1270|0) / ($1271|0))&-1; $1272 = $curr_bandwidth; $1273 = $st$addr; $stream_channels1995 = ((($1273)) + 14188|0); $1274 = HEAP32[$stream_channels1995>>2]|0; $call1996 = (_gen_toc($1268,$div1994,$1272,$1274)|0); $1275 = $data$addr; HEAP8[$1275>>0] = $call1996; $rng = ((($enc)) + 28|0); $1276 = HEAP32[$rng>>2]|0; $1277 = HEAP32[$redundant_rng>>2]|0; $xor = $1276 ^ $1277; $1278 = $st$addr; $rangeFinal1998 = ((($1278)) + 18132|0); HEAP32[$rangeFinal1998>>2] = $xor; $1279 = $to_celt; $tobool1999 = ($1279|0)!=(0); $1280 = $st$addr; if ($tobool1999) { $$sink27 = 1002;$$sink28 = $1280; } else { $mode2003 = ((($1280)) + 14220|0); $1281 = HEAP32[$mode2003>>2]|0; $1282 = $st$addr; $$sink27 = $1281;$$sink28 = $1282; } $prev_mode2004 = ((($$sink28)) + 14224|0); HEAP32[$prev_mode2004>>2] = $$sink27; $1283 = $st$addr; $stream_channels2006 = ((($1283)) + 14188|0); $1284 = HEAP32[$stream_channels2006>>2]|0; $1285 = $st$addr; $prev_channels2007 = ((($1285)) + 14228|0); HEAP32[$prev_channels2007>>2] = $1284; $1286 = $frame_size$addr; $1287 = $st$addr; $prev_framesize = ((($1287)) + 14232|0); HEAP32[$prev_framesize>>2] = $1286; $1288 = $st$addr; $first2008 = ((($1288)) + 14248|0); HEAP32[$first2008>>2] = 0; $1289 = $st$addr; $use_dtx2009 = ((($1289)) + 184|0); $1290 = HEAP32[$use_dtx2009>>2]|0; $tobool2010 = ($1290|0)!=(0); do { if ($tobool2010) { $1291 = HEAP32[$analysis_info>>2]|0; $tobool2013 = ($1291|0)!=(0); $1292 = $is_silence; $tobool2015 = ($1292|0)!=(0); $or$cond29 = $tobool2013 | $tobool2015; if (!($or$cond29)) { break; } $activity_probability2017 = ((($analysis_info)) + 36|0); $1293 = +HEAPF32[$activity_probability2017>>2]; $1294 = $st$addr; $nb_no_activity_frames = ((($1294)) + 18120|0); $1295 = $st$addr; $peak_signal_energy2018 = ((($1295)) + 18124|0); $1296 = +HEAPF32[$peak_signal_energy2018>>2]; $1297 = $pcm$addr; $1298 = $frame_size$addr; $1299 = $st$addr; $channels2019 = ((($1299)) + 112|0); $1300 = HEAP32[$channels2019>>2]|0; $1301 = $is_silence; $1302 = $st$addr; $arch2020 = ((($1302)) + 180|0); $1303 = HEAP32[$arch2020>>2]|0; $call2021 = (_decide_dtx_mode($1293,$nb_no_activity_frames,$1296,$1297,$1298,$1300,$1301,$1303)|0); $tobool2022 = ($call2021|0)!=(0); if (!($tobool2022)) { break; } $1304 = $st$addr; $rangeFinal2024 = ((($1304)) + 18132|0); HEAP32[$rangeFinal2024>>2] = 0; $1305 = $st$addr; $mode2025 = ((($1305)) + 14220|0); $1306 = HEAP32[$mode2025>>2]|0; $1307 = $st$addr; $Fs2026 = ((($1307)) + 144|0); $1308 = HEAP32[$Fs2026>>2]|0; $1309 = $frame_size$addr; $div2027 = (($1308|0) / ($1309|0))&-1; $1310 = $curr_bandwidth; $1311 = $st$addr; $stream_channels2028 = ((($1311)) + 14188|0); $1312 = HEAP32[$stream_channels2028>>2]|0; $call2029 = (_gen_toc($1306,$div2027,$1310,$1312)|0); $1313 = $data$addr; HEAP8[$1313>>0] = $call2029; $retval = 1; $cleanup$dest$slot = 1; break L404; } } while(0); $call2033 = (_ec_tell_13($enc)|0); $1314 = $max_data_bytes; $sub2034 = (($1314) - 1)|0; $mul2035 = $sub2034<<3; $cmp2036 = ($call2033|0)>($mul2035|0); L533: do { if ($cmp2036) { $1315 = $max_data_bytes; $cmp2039 = ($1315|0)<(2); if ($cmp2039) { $retval = -2; $cleanup$dest$slot = 1; break L404; } else { $1316 = $data$addr; $arrayidx2043 = ((($1316)) + 1|0); HEAP8[$arrayidx2043>>0] = 0; $ret = 1; $1317 = $st$addr; $rangeFinal2044 = ((($1317)) + 18132|0); HEAP32[$rangeFinal2044>>2] = 0; break; } } else { $1318 = $st$addr; $mode2046 = ((($1318)) + 14220|0); $1319 = HEAP32[$mode2046>>2]|0; $cmp2047 = ($1319|0)!=(1000); $1320 = $redundancy; $tobool2050 = ($1320|0)!=(0); $or$cond30 = $cmp2047 | $tobool2050; $or$cond30$not = $or$cond30 ^ 1; $1321 = $ret; $cmp2052 = ($1321|0)>(2); $or$cond32 = $or$cond30$not & $cmp2052; if (!($or$cond32)) { break; } while(1) { $1322 = $data$addr; $1323 = $ret; $arrayidx2055 = (($1322) + ($1323)|0); $1324 = HEAP8[$arrayidx2055>>0]|0; $conv2056 = $1324&255; $cmp2057 = ($conv2056|0)==(0); if (!($cmp2057)) { break L533; } $1325 = $ret; $dec2061 = (($1325) + -1)|0; $ret = $dec2061; $$old = $ret; $cmp2052$old = ($$old|0)>(2); if (!($cmp2052$old)) { break; } } } } while(0); $1326 = $redundancy_bytes; $add2064 = (1 + ($1326))|0; $1327 = $ret; $add2065 = (($1327) + ($add2064))|0; $ret = $add2065; $1328 = $st$addr; $use_vbr2066 = ((($1328)) + 148|0); $1329 = HEAP32[$use_vbr2066>>2]|0; $tobool2067 = ($1329|0)!=(0); do { if (!($tobool2067)) { $1330 = $data$addr; $1331 = $ret; $1332 = $max_data_bytes; $call2069 = (_opus_packet_pad($1330,$1331,$1332)|0); $cmp2070 = ($call2069|0)!=(0); if ($cmp2070) { $retval = -3; $cleanup$dest$slot = 1; break L404; } else { $1333 = $max_data_bytes; $ret = $1333; break; } } } while(0); $1334 = $ret; $retval = $1334; $cleanup$dest$slot = 1; } } while(0); $1335 = $saved_stack; _llvm_stackrestore(($1335|0)); $1336 = $retval; STACKTOP = sp;return ($1336|0); } } while(0); $530 = $st$addr; $mode822 = ((($530)) + 14220|0); $531 = HEAP32[$mode822>>2]|0; $cmp823 = ($531|0)==(1000); do { if ($cmp823) { $532 = $frame_size$addr; $533 = $st$addr; $Fs826 = ((($533)) + 144|0); $534 = HEAP32[$Fs826>>2]|0; $mul827 = $534<<1; $div828 = (($mul827|0) / 25)&-1; $cmp829 = ($532|0)==($div828|0); if ($cmp829) { $535 = $st$addr; $Fs832 = ((($535)) + 144|0); $536 = HEAP32[$Fs832>>2]|0; $div833 = (($536|0) / 25)&-1; $enc_frame_size = $div833; break; } $537 = $frame_size$addr; $538 = $st$addr; $Fs835 = ((($538)) + 144|0); $539 = HEAP32[$Fs835>>2]|0; $mul836 = ($539*3)|0; $div837 = (($mul836|0) / 25)&-1; $cmp838 = ($537|0)==($div837|0); $540 = $st$addr; $Fs841 = ((($540)) + 144|0); $541 = HEAP32[$Fs841>>2]|0; if ($cmp838) { $mul842 = ($541*3)|0; $div843 = (($mul842|0) / 50)&-1; $enc_frame_size = $div843; break; } else { $div846 = (($541|0) / 50)&-1; $enc_frame_size = $div846; break; } } else { $542 = $st$addr; $Fs850 = ((($542)) + 144|0); $543 = HEAP32[$Fs850>>2]|0; $div851 = (($543|0) / 50)&-1; $enc_frame_size = $div851; } } while(0); $544 = $frame_size$addr; $545 = $enc_frame_size; $div853 = (($544|0) / ($545|0))&-1; $nb_frames = $div853; $546 = $analysis_read_pos_bak; $cmp854 = ($546|0)!=(-1); if ($cmp854) { $547 = $analysis_read_pos_bak; $548 = $st$addr; $analysis857 = ((($548)) + 188|0); $read_pos858 = ((($analysis857)) + 7448|0); HEAP32[$read_pos858>>2] = $547; $549 = $analysis_read_subframe_bak; $550 = $st$addr; $analysis859 = ((($550)) + 188|0); $read_subframe860 = ((($analysis859)) + 7452|0); HEAP32[$read_subframe860>>2] = $549; } $551 = $st$addr; $552 = $pcm$addr; $553 = $nb_frames; $554 = $enc_frame_size; $555 = $data$addr; $556 = $out_data_bytes$addr; $557 = $to_celt; $558 = $lsb_depth$addr; $559 = $float_api$addr; $call862 = (_encode_multiframe_packet($551,$552,$553,$554,$555,$556,$557,$558,$559)|0); $ret = $call862; $560 = $ret; $retval = $560; $1336 = $retval; STACKTOP = sp;return ($1336|0); } } } while(0); $140 = $st$addr; $mode = ((($140)) + 14220|0); $141 = HEAP32[$mode>>2]|0; $tocmode = $141; $142 = $st$addr; $bandwidth167 = ((($142)) + 14236|0); $143 = HEAP32[$bandwidth167>>2]|0; $cmp168 = ($143|0)==(0); if ($cmp168) { $cond174 = 1101; } else { $144 = $st$addr; $bandwidth172 = ((($144)) + 14236|0); $145 = HEAP32[$bandwidth172>>2]|0; $cond174 = $145; } $bw = $cond174; $packet_code = 0; $num_multiframes = 0; $146 = $tocmode; $cmp175 = ($146|0)==(0); if ($cmp175) { $tocmode = 1000; } $147 = $frame_rate; $cmp179 = ($147|0)>(100); if ($cmp179) { $tocmode = 1002; } $148 = $frame_rate; $cmp183 = ($148|0)==(25); $149 = $tocmode; $cmp186 = ($149|0)!=(1000); $or$cond2 = $cmp183 & $cmp186; if ($or$cond2) { $frame_rate = 50; $packet_code = 1; } $150 = $frame_rate; $cmp190 = ($150|0)<=(16); do { if ($cmp190) { $151 = $out_data_bytes$addr; $cmp193 = ($151|0)==(1); if (!($cmp193)) { $152 = $tocmode; $cmp196 = ($152|0)==(1000); $153 = $frame_rate; $cmp199 = ($153|0)!=(10); $or$cond3 = $cmp196 & $cmp199; if (!($or$cond3)) { $156 = $frame_rate; $div208 = (50 / ($156|0))&-1; $num_multiframes = $div208; $frame_rate = 50; $packet_code = 3; break; } } $tocmode = 1000; $154 = $frame_rate; $cmp202 = ($154|0)<=(12); $conv203 = $cmp202&1; $packet_code = $conv203; $155 = $frame_rate; $cmp204 = ($155|0)==(12); $cond206 = $cmp204 ? 25 : 16; $frame_rate = $cond206; } } while(0); $157 = $tocmode; $cmp211 = ($157|0)==(1000); $158 = $bw; $cmp214 = ($158|0)>(1103); $or$cond4 = $cmp211 & $cmp214; do { if ($or$cond4) { $bw = 1103; } else { $159 = $tocmode; $cmp218 = ($159|0)==(1002); $160 = $bw; $cmp221 = ($160|0)==(1102); $or$cond5 = $cmp218 & $cmp221; if ($or$cond5) { $bw = 1101; break; } $161 = $tocmode; $cmp225 = ($161|0)==(1001); $162 = $bw; $cmp228 = ($162|0)<=(1104); $or$cond6 = $cmp225 & $cmp228; if ($or$cond6) { $bw = 1104; } } } while(0); $163 = $tocmode; $164 = $frame_rate; $165 = $bw; $166 = $st$addr; $stream_channels = ((($166)) + 14188|0); $167 = HEAP32[$stream_channels>>2]|0; $call234 = (_gen_toc($163,$164,$165,$167)|0); $168 = $data$addr; HEAP8[$168>>0] = $call234; $169 = $packet_code; $170 = $data$addr; $171 = HEAP8[$170>>0]|0; $conv236 = $171&255; $or = $conv236 | $169; $conv237 = $or&255; HEAP8[$170>>0] = $conv237; $172 = $packet_code; $cmp238 = ($172|0)<=(1); $cond240 = $cmp238 ? 1 : 2; $ret = $cond240; $173 = $max_data_bytes; $174 = $ret; $cmp241 = ($173|0)>($174|0); $175 = $max_data_bytes; $176 = $ret; $cond246 = $cmp241 ? $175 : $176; $max_data_bytes = $cond246; $177 = $packet_code; $cmp247 = ($177|0)==(3); if ($cmp247) { $178 = $num_multiframes; $conv250 = $178&255; $179 = $data$addr; $arrayidx251 = ((($179)) + 1|0); HEAP8[$arrayidx251>>0] = $conv250; } $180 = $st$addr; $use_vbr253 = ((($180)) + 148|0); $181 = HEAP32[$use_vbr253>>2]|0; $tobool254 = ($181|0)!=(0); do { if (!($tobool254)) { $182 = $data$addr; $183 = $ret; $184 = $max_data_bytes; $call256 = (_opus_packet_pad($182,$183,$184)|0); $ret = $call256; $185 = $ret; $cmp257 = ($185|0)==(0); if ($cmp257) { $186 = $max_data_bytes; $ret = $186; break; } else { $ret = -3; break; } } } while(0); $187 = $ret; $retval = $187; $1336 = $retval; STACKTOP = sp;return ($1336|0); } function _is_digital_silence($pcm,$frame_size,$channels,$lsb_depth) { $pcm = $pcm|0; $frame_size = $frame_size|0; $channels = $channels|0; $lsb_depth = $lsb_depth|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0.0, $4 = 0, $5 = 0, $call = 0.0, $channels$addr = 0, $cmp = 0, $conv = 0.0, $conv1 = 0, $div = 0.0, $frame_size$addr = 0, $lsb_depth$addr = 0, $mul = 0, $pcm$addr = 0, $sample_max = 0.0, $shl = 0, $silence = 0, label = 0; var sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $pcm$addr = $pcm; $frame_size$addr = $frame_size; $channels$addr = $channels; $lsb_depth$addr = $lsb_depth; $silence = 0; $sample_max = 0.0; $0 = $pcm$addr; $1 = $frame_size$addr; $2 = $channels$addr; $mul = Math_imul($1, $2)|0; $call = (+_celt_maxabs16($0,$mul)); $sample_max = $call; $3 = $sample_max; $4 = $lsb_depth$addr; $shl = 1 << $4; $conv = (+($shl|0)); $div = 1.0 / $conv; $cmp = $3 <= $div; $conv1 = $cmp&1; $silence = $conv1; $5 = $silence; STACKTOP = sp;return ($5|0); } function _compute_frame_energy($pcm,$frame_size,$channels,$arch) { $pcm = $pcm|0; $frame_size = $frame_size|0; $channels = $channels|0; $arch = $arch|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $and = 0, $arch$addr = 0, $arrayidx = 0, $call = 0.0, $channels$addr = 0, $conv = 0.0, $div = 0.0, $frame_size$addr = 0, $len = 0, $mul = 0, $pcm$addr = 0, label = 0; var sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $pcm$addr = $pcm; $frame_size$addr = $frame_size; $channels$addr = $channels; $arch$addr = $arch; $0 = $frame_size$addr; $1 = $channels$addr; $mul = Math_imul($0, $1)|0; $len = $mul; $2 = $arch$addr; $and = $2 & 7; $arrayidx = (_CELT_INNER_PROD_IMPL + ($and<<2)|0); $3 = HEAP32[$arrayidx>>2]|0; $4 = $pcm$addr; $5 = $pcm$addr; $6 = $len; $call = (+FUNCTION_TABLE_diii[$3 & 0]($4,$5,$6)); $7 = $len; $conv = (+($7|0)); $div = $call / $conv; STACKTOP = sp;return (+$div); } function _user_bitrate_to_bitrate($st,$frame_size,$max_data_bytes) { $st = $st|0; $frame_size = $frame_size|0; $max_data_bytes = $max_data_bytes|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; var $Fs = 0, $Fs10 = 0, $Fs2 = 0, $Fs4 = 0, $add = 0, $channels = 0, $cmp = 0, $cmp7 = 0, $div = 0, $div12 = 0, $div3 = 0, $frame_size$addr = 0, $max_data_bytes$addr = 0, $mul = 0, $mul11 = 0, $mul5 = 0, $mul9 = 0, $retval = 0, $st$addr = 0, $tobool = 0; var $user_bitrate_bps = 0, $user_bitrate_bps14 = 0, $user_bitrate_bps6 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $st$addr = $st; $frame_size$addr = $frame_size; $max_data_bytes$addr = $max_data_bytes; $0 = $frame_size$addr; $tobool = ($0|0)!=(0); if (!($tobool)) { $1 = $st$addr; $Fs = ((($1)) + 144|0); $2 = HEAP32[$Fs>>2]|0; $div = (($2|0) / 400)&-1; $frame_size$addr = $div; } $3 = $st$addr; $user_bitrate_bps = ((($3)) + 164|0); $4 = HEAP32[$user_bitrate_bps>>2]|0; $cmp = ($4|0)==(-1000); $5 = $st$addr; if ($cmp) { $Fs2 = ((($5)) + 144|0); $6 = HEAP32[$Fs2>>2]|0; $mul = ($6*60)|0; $7 = $frame_size$addr; $div3 = (($mul|0) / ($7|0))&-1; $8 = $st$addr; $Fs4 = ((($8)) + 144|0); $9 = HEAP32[$Fs4>>2]|0; $10 = $st$addr; $channels = ((($10)) + 112|0); $11 = HEAP32[$channels>>2]|0; $mul5 = Math_imul($9, $11)|0; $add = (($div3) + ($mul5))|0; $retval = $add; $19 = $retval; STACKTOP = sp;return ($19|0); } $user_bitrate_bps6 = ((($5)) + 164|0); $12 = HEAP32[$user_bitrate_bps6>>2]|0; $cmp7 = ($12|0)==(-1); if ($cmp7) { $13 = $max_data_bytes$addr; $mul9 = $13<<3; $14 = $st$addr; $Fs10 = ((($14)) + 144|0); $15 = HEAP32[$Fs10>>2]|0; $mul11 = Math_imul($mul9, $15)|0; $16 = $frame_size$addr; $div12 = (($mul11|0) / ($16|0))&-1; $retval = $div12; $19 = $retval; STACKTOP = sp;return ($19|0); } else { $17 = $st$addr; $user_bitrate_bps14 = ((($17)) + 164|0); $18 = HEAP32[$user_bitrate_bps14>>2]|0; $retval = $18; $19 = $retval; STACKTOP = sp;return ($19|0); } return (0)|0; } function _gen_toc($mode,$framerate,$bandwidth,$channels) { $mode = $mode|0; $framerate = $framerate|0; $bandwidth = $bandwidth|0; $channels = $channels|0; var $$sub10 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; var $8 = 0, $9 = 0, $bandwidth$addr = 0, $channels$addr = 0, $cmp = 0, $cmp1 = 0, $cmp11 = 0, $cmp35 = 0, $cmp7 = 0, $conv = 0, $conv15 = 0, $conv17 = 0, $conv19 = 0, $conv21 = 0, $conv25 = 0, $conv27 = 0, $conv30 = 0, $conv32 = 0, $conv36 = 0, $conv38 = 0; var $conv40 = 0, $conv5 = 0, $conv6 = 0, $framerate$addr = 0, $inc = 0, $mode$addr = 0, $or = 0, $or16 = 0, $or20 = 0, $or26 = 0, $or31 = 0, $or39 = 0, $period = 0, $shl = 0, $shl14 = 0, $shl18 = 0, $shl2 = 0, $shl24 = 0, $shl29 = 0, $shl37 = 0; var $shl4 = 0, $sub = 0, $sub10 = 0, $sub23 = 0, $sub28 = 0, $sub3 = 0, $tmp = 0, $toc = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $mode$addr = $mode; $framerate$addr = $framerate; $bandwidth$addr = $bandwidth; $channels$addr = $channels; $period = 0; while(1) { $0 = $framerate$addr; $cmp = ($0|0)<(400); if (!($cmp)) { break; } $1 = $framerate$addr; $shl = $1 << 1; $framerate$addr = $shl; $2 = $period; $inc = (($2) + 1)|0; $period = $inc; } $3 = $mode$addr; $cmp1 = ($3|0)==(1000); do { if ($cmp1) { $4 = $bandwidth$addr; $sub = (($4) - 1101)|0; $shl2 = $sub << 5; $conv = $shl2&255; $toc = $conv; $5 = $period; $sub3 = (($5) - 2)|0; $shl4 = $sub3 << 3; $6 = $toc; $conv5 = $6&255; $or = $conv5 | $shl4; $conv6 = $or&255; $toc = $conv6; } else { $7 = $mode$addr; $cmp7 = ($7|0)==(1002); if ($cmp7) { $8 = $bandwidth$addr; $sub10 = (($8) - 1102)|0; $tmp = $sub10; $9 = $tmp; $cmp11 = ($9|0)<(0); $$sub10 = $cmp11 ? 0 : $sub10; $tmp = $$sub10; $toc = -128; $10 = $tmp; $shl14 = $10 << 5; $11 = $toc; $conv15 = $11&255; $or16 = $conv15 | $shl14; $conv17 = $or16&255; $toc = $conv17; $12 = $period; $shl18 = $12 << 3; $13 = $toc; $conv19 = $13&255; $or20 = $conv19 | $shl18; $conv21 = $or20&255; $toc = $conv21; break; } else { $toc = 96; $14 = $bandwidth$addr; $sub23 = (($14) - 1104)|0; $shl24 = $sub23 << 4; $15 = $toc; $conv25 = $15&255; $or26 = $conv25 | $shl24; $conv27 = $or26&255; $toc = $conv27; $16 = $period; $sub28 = (($16) - 2)|0; $shl29 = $sub28 << 3; $17 = $toc; $conv30 = $17&255; $or31 = $conv30 | $shl29; $conv32 = $or31&255; $toc = $conv32; break; } } } while(0); $18 = $channels$addr; $cmp35 = ($18|0)==(2); $conv36 = $cmp35&1; $shl37 = $conv36 << 2; $19 = $toc; $conv38 = $19&255; $or39 = $conv38 | $shl37; $conv40 = $or39&255; $toc = $conv40; $20 = $toc; STACKTOP = sp;return ($20|0); } function _compute_equiv_rate($bitrate,$channels,$frame_rate,$vbr,$mode,$complexity,$loss) { $bitrate = $bitrate|0; $channels = $channels|0; $frame_rate = $frame_rate|0; $vbr = $vbr|0; $mode = $mode|0; $complexity = $complexity|0; $loss = $loss|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $add16 = 0, $add29 = 0, $add4 = 0, $bitrate$addr = 0, $channels$addr = 0, $cmp = 0, $cmp19 = 0, $cmp21 = 0, $cmp7 = 0, $cmp9 = 0, $complexity$addr = 0, $div = 0, $div12 = 0, $div17 = 0; var $div24 = 0, $div30 = 0, $div6 = 0, $equiv = 0, $frame_rate$addr = 0, $loss$addr = 0, $mode$addr = 0, $mul = 0, $mul1 = 0, $mul11 = 0, $mul14 = 0, $mul15 = 0, $mul23 = 0, $mul27 = 0, $mul28 = 0, $mul5 = 0, $or$cond = 0, $sub = 0, $sub18 = 0, $sub2 = 0; var $sub3 = 0, $sub31 = 0, $tobool = 0, $vbr$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $bitrate$addr = $bitrate; $channels$addr = $channels; $frame_rate$addr = $frame_rate; $vbr$addr = $vbr; $mode$addr = $mode; $complexity$addr = $complexity; $loss$addr = $loss; $0 = $bitrate$addr; $equiv = $0; $1 = $channels$addr; $mul = ($1*40)|0; $add = (($mul) + 20)|0; $2 = $frame_rate$addr; $sub = (($2) - 50)|0; $mul1 = Math_imul($add, $sub)|0; $3 = $equiv; $sub2 = (($3) - ($mul1))|0; $equiv = $sub2; $4 = $vbr$addr; $tobool = ($4|0)!=(0); if (!($tobool)) { $5 = $equiv; $div = (($5|0) / 12)&-1; $6 = $equiv; $sub3 = (($6) - ($div))|0; $equiv = $sub3; } $7 = $equiv; $8 = $complexity$addr; $add4 = (90 + ($8))|0; $mul5 = Math_imul($7, $add4)|0; $div6 = (($mul5|0) / 100)&-1; $equiv = $div6; $9 = $mode$addr; $cmp = ($9|0)==(1000); $10 = $mode$addr; $cmp7 = ($10|0)==(1001); $or$cond = $cmp | $cmp7; if ($or$cond) { $11 = $complexity$addr; $cmp9 = ($11|0)<(2); if ($cmp9) { $12 = $equiv; $mul11 = $12<<2; $div12 = (($mul11|0) / 5)&-1; $equiv = $div12; } $13 = $equiv; $14 = $loss$addr; $mul14 = Math_imul($13, $14)|0; $15 = $loss$addr; $mul15 = ($15*6)|0; $add16 = (($mul15) + 10)|0; $div17 = (($mul14|0) / ($add16|0))&-1; $16 = $equiv; $sub18 = (($16) - ($div17))|0; $equiv = $sub18; $24 = $equiv; STACKTOP = sp;return ($24|0); } $17 = $mode$addr; $cmp19 = ($17|0)==(1002); if (!($cmp19)) { $20 = $equiv; $21 = $loss$addr; $mul27 = Math_imul($20, $21)|0; $22 = $loss$addr; $mul28 = ($22*12)|0; $add29 = (($mul28) + 20)|0; $div30 = (($mul27|0) / ($add29|0))&-1; $23 = $equiv; $sub31 = (($23) - ($div30))|0; $equiv = $sub31; $24 = $equiv; STACKTOP = sp;return ($24|0); } $18 = $complexity$addr; $cmp21 = ($18|0)<(5); if (!($cmp21)) { $24 = $equiv; STACKTOP = sp;return ($24|0); } $19 = $equiv; $mul23 = ($19*9)|0; $div24 = (($mul23|0) / 10)&-1; $equiv = $div24; $24 = $equiv; STACKTOP = sp;return ($24|0); } function _decide_fec($useInBandFEC,$PacketLoss_perc,$last_fec,$mode,$bandwidth,$rate) { $useInBandFEC = $useInBandFEC|0; $PacketLoss_perc = $PacketLoss_perc|0; $last_fec = $last_fec|0; $mode = $mode|0; $bandwidth = $bandwidth|0; $rate = $rate|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $LBRR_rate_thres_bps = 0, $PacketLoss_perc$addr = 0, $add = 0, $add12 = 0, $add27 = 0, $and = 0, $arrayidx = 0; var $arrayidx5 = 0, $bandwidth$addr = 0, $cmp = 0, $cmp10 = 0, $cmp14 = 0, $cmp18 = 0, $cmp2 = 0, $cmp28 = 0, $cmp30 = 0, $cmp33 = 0, $cmp6 = 0, $cond = 0, $cond22 = 0, $dec = 0, $hysteresis = 0, $last_fec$addr = 0, $mode$addr = 0, $mul = 0, $mul16 = 0, $mul17 = 0; var $mul24 = 0, $mul25 = 0, $mul4 = 0, $or$cond = 0, $or$cond1 = 0, $orig_bandwidth = 0, $rate$addr = 0, $retval = 0, $shr = 0, $shr26 = 0, $sub = 0, $sub15 = 0, $sub23 = 0, $sub3 = 0, $sub8 = 0, $tobool = 0, $useInBandFEC$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $useInBandFEC$addr = $useInBandFEC; $PacketLoss_perc$addr = $PacketLoss_perc; $last_fec$addr = $last_fec; $mode$addr = $mode; $bandwidth$addr = $bandwidth; $rate$addr = $rate; $0 = $useInBandFEC$addr; $tobool = ($0|0)==(0); $1 = $PacketLoss_perc$addr; $cmp = ($1|0)==(0); $or$cond = $tobool | $cmp; $2 = $mode$addr; $cmp2 = ($2|0)==(1002); $or$cond1 = $or$cond | $cmp2; if ($or$cond1) { $retval = 0; $32 = $retval; STACKTOP = sp;return ($32|0); } $3 = $bandwidth$addr; $4 = HEAP32[$3>>2]|0; $orig_bandwidth = $4; while(1) { $5 = $bandwidth$addr; $6 = HEAP32[$5>>2]|0; $sub = (($6) - 1101)|0; $mul = $sub<<1; $arrayidx = (372 + ($mul<<2)|0); $7 = HEAP32[$arrayidx>>2]|0; $LBRR_rate_thres_bps = $7; $8 = $bandwidth$addr; $9 = HEAP32[$8>>2]|0; $sub3 = (($9) - 1101)|0; $mul4 = $sub3<<1; $add = (($mul4) + 1)|0; $arrayidx5 = (372 + ($add<<2)|0); $10 = HEAP32[$arrayidx5>>2]|0; $hysteresis = $10; $11 = $last_fec$addr; $cmp6 = ($11|0)==(1); if ($cmp6) { $12 = $hysteresis; $13 = $LBRR_rate_thres_bps; $sub8 = (($13) - ($12))|0; $LBRR_rate_thres_bps = $sub8; } $14 = $last_fec$addr; $cmp10 = ($14|0)==(0); if ($cmp10) { $15 = $hysteresis; $16 = $LBRR_rate_thres_bps; $add12 = (($16) + ($15))|0; $LBRR_rate_thres_bps = $add12; } $17 = $LBRR_rate_thres_bps; $18 = $PacketLoss_perc$addr; $cmp14 = ($18|0)<(25); $19 = $PacketLoss_perc$addr; $cond = $cmp14 ? $19 : 25; $sub15 = (125 - ($cond))|0; $mul16 = Math_imul($17, $sub15)|0; $shr = $mul16 >> 16; $mul17 = ($shr*655)|0; $20 = $LBRR_rate_thres_bps; $21 = $PacketLoss_perc$addr; $cmp18 = ($21|0)<(25); $22 = $PacketLoss_perc$addr; $cond22 = $cmp18 ? $22 : 25; $sub23 = (125 - ($cond22))|0; $mul24 = Math_imul($20, $sub23)|0; $and = $mul24 & 65535; $mul25 = ($and*655)|0; $shr26 = $mul25 >> 16; $add27 = (($mul17) + ($shr26))|0; $LBRR_rate_thres_bps = $add27; $23 = $rate$addr; $24 = $LBRR_rate_thres_bps; $cmp28 = ($23|0)>($24|0); if ($cmp28) { label = 9; break; } $25 = $PacketLoss_perc$addr; $cmp30 = ($25|0)<=(5); if ($cmp30) { label = 11; break; } $26 = $bandwidth$addr; $27 = HEAP32[$26>>2]|0; $cmp33 = ($27|0)>(1101); if (!($cmp33)) { label = 14; break; } $28 = $bandwidth$addr; $29 = HEAP32[$28>>2]|0; $dec = (($29) + -1)|0; HEAP32[$28>>2] = $dec; } if ((label|0) == 9) { $retval = 1; $32 = $retval; STACKTOP = sp;return ($32|0); } else if ((label|0) == 11) { $retval = 0; $32 = $retval; STACKTOP = sp;return ($32|0); } else if ((label|0) == 14) { $30 = $orig_bandwidth; $31 = $bandwidth$addr; HEAP32[$31>>2] = $30; $retval = 0; $32 = $retval; STACKTOP = sp;return ($32|0); } return (0)|0; } function _encode_multiframe_packet($st,$pcm,$nb_frames,$frame_size,$data,$out_data_bytes,$to_celt,$lsb_depth,$float_api) { $st = $st|0; $pcm = $pcm|0; $nb_frames = $nb_frames|0; $frame_size = $frame_size|0; $data = $data|0; $out_data_bytes = $out_data_bytes|0; $to_celt = $to_celt|0; $lsb_depth = $lsb_depth|0; $float_api = $float_api|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $Fs = 0, $add = 0, $add$ptr = 0, $add$ptr47 = 0, $add$ptr55 = 0, $add13 = 0, $add19 = 0, $bak_bandwidth = 0; var $bak_channels = 0, $bak_mode = 0, $bak_to_mono = 0, $bandwidth = 0, $bitrate_bps = 0, $bytes_per_frame = 0, $call48 = 0, $call56 = 0, $call64 = 0, $cbr_bytes = 0, $channels = 0, $cleanup$dest$slot = 0, $cmp = 0, $cmp1 = 0, $cmp14 = 0, $cmp32 = 0, $cmp36 = 0, $cmp39 = 0, $cmp49 = 0, $cmp57 = 0; var $cmp6 = 0, $cmp65 = 0, $cond = 0, $cond10 = 0, $cond21 = 0, $conv = 0, $data$addr = 0, $div = 0, $div12 = 0, $div18 = 0, $div5 = 0, $float_api$addr = 0, $force_channels = 0, $force_channels25 = 0, $force_channels28 = 0, $force_channels71 = 0, $frame_size$addr = 0, $i = 0, $inc = 0, $lnot = 0; var $lnot$ext = 0, $lsb_depth$addr = 0, $max_header_bytes = 0, $mode = 0, $mul = 0, $mul2 = 0, $mul22 = 0, $mul3 = 0, $mul4 = 0, $mul44 = 0, $mul45 = 0, $mul46 = 0, $mul54 = 0, $nb_frames$addr = 0, $nonfinal_frame = 0, $out_data_bytes$addr = 0, $pcm$addr = 0, $prev_channels = 0, $repacketize_len = 0, $ret = 0; var $retval = 0, $rp = 0, $saved_stack = 0, $silk_mode = 0, $silk_mode33 = 0, $silk_mode72 = 0, $st$addr = 0, $stream_channels = 0, $stream_channels30 = 0, $sub = 0, $sub11 = 0, $sub17 = 0, $sub35 = 0, $sub38 = 0, $tmp_len = 0, $toMono = 0, $toMono34 = 0, $toMono73 = 0, $to_celt$addr = 0, $tobool = 0; var $tobool26 = 0, $tobool37 = 0, $tobool63 = 0, $use_vbr = 0, $use_vbr62 = 0, $user_bandwidth = 0, $user_bandwidth24 = 0, $user_bandwidth70 = 0, $user_bitrate_bps = 0, $user_forced_mode = 0, $user_forced_mode23 = 0, $user_forced_mode42 = 0, $user_forced_mode69 = 0, $vla = 0, $vla$alloca_mul = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 400|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(400|0); $rp = sp + 4|0; $st$addr = $st; $pcm$addr = $pcm; $nb_frames$addr = $nb_frames; $frame_size$addr = $frame_size; $data$addr = $data; $out_data_bytes$addr = $out_data_bytes; $to_celt$addr = $to_celt; $lsb_depth$addr = $lsb_depth; $float_api$addr = $float_api; $ret = 0; $0 = $nb_frames$addr; $cmp = ($0|0)==(2); if ($cmp) { $cond = 3; } else { $1 = $nb_frames$addr; $sub = (($1) - 1)|0; $mul = $sub<<1; $add = (2 + ($mul))|0; $cond = $add; } $max_header_bytes = $cond; $2 = $st$addr; $use_vbr = ((($2)) + 148|0); $3 = HEAP32[$use_vbr>>2]|0; $tobool = ($3|0)!=(0); if ($tobool) { label = 5; } else { $4 = $st$addr; $user_bitrate_bps = ((($4)) + 164|0); $5 = HEAP32[$user_bitrate_bps>>2]|0; $cmp1 = ($5|0)==(-1); if ($cmp1) { label = 5; } else { $7 = $st$addr; $bitrate_bps = ((($7)) + 160|0); $8 = HEAP32[$bitrate_bps>>2]|0; $mul2 = ($8*3)|0; $9 = $st$addr; $Fs = ((($9)) + 144|0); $10 = HEAP32[$Fs>>2]|0; $mul3 = ($10*24)|0; $11 = $frame_size$addr; $12 = $nb_frames$addr; $mul4 = Math_imul($11, $12)|0; $div = (($mul3|0) / ($mul4|0))&-1; $div5 = (($mul2|0) / ($div|0))&-1; $cbr_bytes = $div5; $13 = $cbr_bytes; $14 = $out_data_bytes$addr; $cmp6 = ($13|0)<($14|0); $15 = $cbr_bytes; $16 = $out_data_bytes$addr; $cond10 = $cmp6 ? $15 : $16; $repacketize_len = $cond10; } } if ((label|0) == 5) { $6 = $out_data_bytes$addr; $repacketize_len = $6; } $17 = $repacketize_len; $18 = $max_header_bytes; $sub11 = (($17) - ($18))|0; $19 = $nb_frames$addr; $div12 = (($sub11|0) / ($19|0))&-1; $add13 = (1 + ($div12))|0; $cmp14 = (1276)<($add13|0); if ($cmp14) { $cond21 = 1276; } else { $20 = $repacketize_len; $21 = $max_header_bytes; $sub17 = (($20) - ($21))|0; $22 = $nb_frames$addr; $div18 = (($sub17|0) / ($22|0))&-1; $add19 = (1 + ($div18))|0; $cond21 = $add19; } $bytes_per_frame = $cond21; $23 = $nb_frames$addr; $24 = $bytes_per_frame; $mul22 = Math_imul($23, $24)|0; $25 = (_llvm_stacksave()|0); $saved_stack = $25; $vla$alloca_mul = $mul22; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; (_opus_repacketizer_init($rp)|0); $26 = $st$addr; $user_forced_mode = ((($26)) + 136|0); $27 = HEAP32[$user_forced_mode>>2]|0; $bak_mode = $27; $28 = $st$addr; $user_bandwidth = ((($28)) + 128|0); $29 = HEAP32[$user_bandwidth>>2]|0; $bak_bandwidth = $29; $30 = $st$addr; $force_channels = ((($30)) + 120|0); $31 = HEAP32[$force_channels>>2]|0; $bak_channels = $31; $32 = $st$addr; $mode = ((($32)) + 14220|0); $33 = HEAP32[$mode>>2]|0; $34 = $st$addr; $user_forced_mode23 = ((($34)) + 136|0); HEAP32[$user_forced_mode23>>2] = $33; $35 = $st$addr; $bandwidth = ((($35)) + 14236|0); $36 = HEAP32[$bandwidth>>2]|0; $37 = $st$addr; $user_bandwidth24 = ((($37)) + 128|0); HEAP32[$user_bandwidth24>>2] = $36; $38 = $st$addr; $stream_channels = ((($38)) + 14188|0); $39 = HEAP32[$stream_channels>>2]|0; $40 = $st$addr; $force_channels25 = ((($40)) + 120|0); HEAP32[$force_channels25>>2] = $39; $41 = $st$addr; $silk_mode = ((($41)) + 8|0); $toMono = ((($silk_mode)) + 60|0); $42 = HEAP32[$toMono>>2]|0; $bak_to_mono = $42; $43 = $bak_to_mono; $tobool26 = ($43|0)!=(0); $44 = $st$addr; if ($tobool26) { $force_channels28 = ((($44)) + 120|0); HEAP32[$force_channels28>>2] = 1; } else { $stream_channels30 = ((($44)) + 14188|0); $45 = HEAP32[$stream_channels30>>2]|0; $46 = $st$addr; $prev_channels = ((($46)) + 14228|0); HEAP32[$prev_channels>>2] = $45; } $i = 0; while(1) { $47 = $i; $48 = $nb_frames$addr; $cmp32 = ($47|0)<($48|0); if (!($cmp32)) { label = 22; break; } $49 = $st$addr; $silk_mode33 = ((($49)) + 8|0); $toMono34 = ((($silk_mode33)) + 60|0); HEAP32[$toMono34>>2] = 0; $50 = $i; $51 = $nb_frames$addr; $sub35 = (($51) - 1)|0; $cmp36 = ($50|0)<($sub35|0); $conv = $cmp36&1; $52 = $st$addr; $nonfinal_frame = ((($52)) + 18128|0); HEAP32[$nonfinal_frame>>2] = $conv; $53 = $to_celt$addr; $tobool37 = ($53|0)!=(0); if ($tobool37) { $54 = $i; $55 = $nb_frames$addr; $sub38 = (($55) - 1)|0; $cmp39 = ($54|0)==($sub38|0); if ($cmp39) { $56 = $st$addr; $user_forced_mode42 = ((($56)) + 136|0); HEAP32[$user_forced_mode42>>2] = 1002; } } $57 = $st$addr; $58 = $pcm$addr; $59 = $i; $60 = $st$addr; $channels = ((($60)) + 112|0); $61 = HEAP32[$channels>>2]|0; $62 = $frame_size$addr; $mul44 = Math_imul($61, $62)|0; $mul45 = Math_imul($59, $mul44)|0; $add$ptr = (($58) + ($mul45<<2)|0); $63 = $frame_size$addr; $64 = $i; $65 = $bytes_per_frame; $mul46 = Math_imul($64, $65)|0; $add$ptr47 = (($vla) + ($mul46)|0); $66 = $bytes_per_frame; $67 = $lsb_depth$addr; $68 = $float_api$addr; $call48 = (_opus_encode_native($57,$add$ptr,$63,$add$ptr47,$66,$67,0,0,0,0,0,0,$68)|0); $tmp_len = $call48; $69 = $tmp_len; $cmp49 = ($69|0)<(0); if ($cmp49) { label = 18; break; } $70 = $i; $71 = $bytes_per_frame; $mul54 = Math_imul($70, $71)|0; $add$ptr55 = (($vla) + ($mul54)|0); $72 = $tmp_len; $call56 = (_opus_repacketizer_cat($rp,$add$ptr55,$72)|0); $ret = $call56; $73 = $ret; $cmp57 = ($73|0)<(0); if ($cmp57) { label = 20; break; } $74 = $i; $inc = (($74) + 1)|0; $i = $inc; } if ((label|0) == 18) { $retval = -3; $cleanup$dest$slot = 1; $90 = $saved_stack; _llvm_stackrestore(($90|0)); $91 = $retval; STACKTOP = sp;return ($91|0); } else if ((label|0) == 20) { $retval = -3; $cleanup$dest$slot = 1; $90 = $saved_stack; _llvm_stackrestore(($90|0)); $91 = $retval; STACKTOP = sp;return ($91|0); } else if ((label|0) == 22) { $75 = $nb_frames$addr; $76 = $data$addr; $77 = $repacketize_len; $78 = $st$addr; $use_vbr62 = ((($78)) + 148|0); $79 = HEAP32[$use_vbr62>>2]|0; $tobool63 = ($79|0)!=(0); $lnot = $tobool63 ^ 1; $lnot$ext = $lnot&1; $call64 = (_opus_repacketizer_out_range_impl($rp,0,$75,$76,$77,0,$lnot$ext)|0); $ret = $call64; $80 = $ret; $cmp65 = ($80|0)<(0); if ($cmp65) { $retval = -3; $cleanup$dest$slot = 1; $90 = $saved_stack; _llvm_stackrestore(($90|0)); $91 = $retval; STACKTOP = sp;return ($91|0); } else { $81 = $bak_mode; $82 = $st$addr; $user_forced_mode69 = ((($82)) + 136|0); HEAP32[$user_forced_mode69>>2] = $81; $83 = $bak_bandwidth; $84 = $st$addr; $user_bandwidth70 = ((($84)) + 128|0); HEAP32[$user_bandwidth70>>2] = $83; $85 = $bak_channels; $86 = $st$addr; $force_channels71 = ((($86)) + 120|0); HEAP32[$force_channels71>>2] = $85; $87 = $bak_to_mono; $88 = $st$addr; $silk_mode72 = ((($88)) + 8|0); $toMono73 = ((($silk_mode72)) + 60|0); HEAP32[$toMono73>>2] = $87; $89 = $ret; $retval = $89; $cleanup$dest$slot = 1; $90 = $saved_stack; _llvm_stackrestore(($90|0)); $91 = $retval; STACKTOP = sp;return ($91|0); } } return (0)|0; } function _compute_redundancy_bytes($max_data_bytes,$bitrate_bps,$frame_rate,$channels) { $max_data_bytes = $max_data_bytes|0; $bitrate_bps = $bitrate_bps|0; $frame_rate = $frame_rate|0; $channels = $channels|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; var $add = 0, $add10 = 0, $add12 = 0, $add15 = 0, $add2 = 0, $available_bits = 0, $base_bits = 0, $bitrate_bps$addr = 0, $channels$addr = 0, $cmp = 0, $cmp16 = 0, $cmp17 = 0, $cond = 0, $cond21 = 0, $div = 0, $div11 = 0, $div13 = 0, $div4 = 0, $div9 = 0, $frame_rate$addr = 0; var $max_data_bytes$addr = 0, $mul = 0, $mul1 = 0, $mul14 = 0, $mul3 = 0, $mul5 = 0, $mul6 = 0, $mul8 = 0, $redundancy_bytes = 0, $redundancy_bytes_cap = 0, $redundancy_rate = 0, $sub = 0, $sub7 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $max_data_bytes$addr = $max_data_bytes; $bitrate_bps$addr = $bitrate_bps; $frame_rate$addr = $frame_rate; $channels$addr = $channels; $0 = $channels$addr; $mul = ($0*40)|0; $add = (($mul) + 20)|0; $base_bits = $add; $1 = $bitrate_bps$addr; $2 = $base_bits; $3 = $frame_rate$addr; $sub = (200 - ($3))|0; $mul1 = Math_imul($2, $sub)|0; $add2 = (($1) + ($mul1))|0; $redundancy_rate = $add2; $4 = $redundancy_rate; $mul3 = ($4*3)|0; $div = (($mul3|0) / 2)&-1; $redundancy_rate = $div; $5 = $redundancy_rate; $div4 = (($5|0) / 1600)&-1; $redundancy_bytes = $div4; $6 = $max_data_bytes$addr; $mul5 = $6<<3; $7 = $base_bits; $mul6 = $7<<1; $sub7 = (($mul5) - ($mul6))|0; $available_bits = $sub7; $8 = $available_bits; $mul8 = ($8*240)|0; $9 = $frame_rate$addr; $div9 = (48000 / ($9|0))&-1; $add10 = (240 + ($div9))|0; $div11 = (($mul8|0) / ($add10|0))&-1; $10 = $base_bits; $add12 = (($div11) + ($10))|0; $div13 = (($add12|0) / 8)&-1; $redundancy_bytes_cap = $div13; $11 = $redundancy_bytes; $12 = $redundancy_bytes_cap; $cmp = ($11|0)<($12|0); $13 = $redundancy_bytes; $14 = $redundancy_bytes_cap; $cond = $cmp ? $13 : $14; $redundancy_bytes = $cond; $15 = $redundancy_bytes; $16 = $channels$addr; $mul14 = $16<<3; $add15 = (4 + ($mul14))|0; $cmp16 = ($15|0)>($add15|0); if ($cmp16) { $17 = $redundancy_bytes; $cmp17 = (257)<($17|0); $18 = $redundancy_bytes; $cond21 = $cmp17 ? 257 : $18; $redundancy_bytes = $cond21; $19 = $redundancy_bytes; STACKTOP = sp;return ($19|0); } else { $redundancy_bytes = 0; $19 = $redundancy_bytes; STACKTOP = sp;return ($19|0); } return (0)|0; } function _hp_cutoff($in,$cutoff_Hz,$out,$hp_mem,$len,$channels,$Fs,$arch) { $in = $in|0; $cutoff_Hz = $cutoff_Hz|0; $out = $out|0; $hp_mem = $hp_mem|0; $len = $len|0; $channels = $channels|0; $Fs = $Fs|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $A_Q28 = 0, $B_Q28 = 0, $Fc_Q19 = 0, $Fs$addr = 0, $add = 0, $add$ptr = 0, $add$ptr89 = 0, $add$ptr90 = 0, $add17 = 0, $add20 = 0, $add35 = 0, $add37 = 0, $add40 = 0, $add46 = 0, $add56 = 0; var $add58 = 0, $add61 = 0, $add64 = 0, $add67 = 0, $add78 = 0, $add80 = 0, $add83 = 0, $and = 0, $and25 = 0, $and30 = 0, $and51 = 0, $and73 = 0, $arch$addr = 0, $arrayidx5 = 0, $arrayidx6 = 0, $arrayidx84 = 0, $channels$addr = 0, $cmp = 0, $conv = 0, $conv1 = 0; var $conv10 = 0, $conv12 = 0, $conv13 = 0, $conv22 = 0, $conv23 = 0, $conv27 = 0, $conv28 = 0, $conv31 = 0, $conv32 = 0, $conv42 = 0, $conv43 = 0, $conv48 = 0, $conv49 = 0, $conv52 = 0, $conv53 = 0, $conv70 = 0, $conv71 = 0, $conv74 = 0, $conv75 = 0, $conv9 = 0; var $cutoff_Hz$addr = 0, $div = 0, $div2 = 0, $hp_mem$addr = 0, $in$addr = 0, $len$addr = 0, $mul = 0, $mul11 = 0, $mul14 = 0, $mul19 = 0, $mul24 = 0, $mul29 = 0, $mul3 = 0, $mul33 = 0, $mul39 = 0, $mul44 = 0, $mul50 = 0, $mul54 = 0, $mul60 = 0, $mul66 = 0; var $mul72 = 0, $mul76 = 0, $mul82 = 0, $out$addr = 0, $r_Q22 = 0, $r_Q28 = 0, $shl = 0, $shr = 0, $shr15 = 0, $shr16 = 0, $shr18 = 0, $shr26 = 0, $shr34 = 0, $shr36 = 0, $shr38 = 0, $shr45 = 0, $shr47 = 0, $shr55 = 0, $shr57 = 0, $shr59 = 0; var $shr63 = 0, $shr65 = 0, $shr69 = 0, $shr7 = 0, $shr77 = 0, $shr79 = 0, $shr8 = 0, $shr81 = 0, $sub = 0, $sub21 = 0, $sub4 = 0, $sub41 = 0, $sub62 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(80|0); $B_Q28 = sp + 24|0; $A_Q28 = sp + 16|0; $in$addr = $in; $cutoff_Hz$addr = $cutoff_Hz; $out$addr = $out; $hp_mem$addr = $hp_mem; $len$addr = $len; $channels$addr = $channels; $Fs$addr = $Fs; $arch$addr = $arch; $0 = $cutoff_Hz$addr; $conv = $0&65535; $conv1 = $conv << 16 >> 16; $mul = ($conv1*2471)|0; $1 = $Fs$addr; $div = (($1|0) / 1000)&-1; $div2 = (($mul|0) / ($div|0))&-1; $Fc_Q19 = $div2; $2 = $Fc_Q19; $mul3 = ($2*471)|0; $sub = (268435456 - ($mul3))|0; $r_Q28 = $sub; $3 = $r_Q28; HEAP32[$B_Q28>>2] = $3; $4 = $r_Q28; $sub4 = (0 - ($4))|0; $shl = $sub4 << 1; $arrayidx5 = ((($B_Q28)) + 4|0); HEAP32[$arrayidx5>>2] = $shl; $5 = $r_Q28; $arrayidx6 = ((($B_Q28)) + 8|0); HEAP32[$arrayidx6>>2] = $5; $6 = $r_Q28; $shr = $6 >> 6; $r_Q22 = $shr; $7 = $r_Q22; $shr7 = $7 >> 16; $8 = $Fc_Q19; $shr8 = $8 >> 16; $9 = $Fc_Q19; $conv9 = $9&65535; $conv10 = $conv9 << 16 >> 16; $mul11 = Math_imul($shr8, $conv10)|0; $10 = $Fc_Q19; $and = $10 & 65535; $11 = $Fc_Q19; $conv12 = $11&65535; $conv13 = $conv12 << 16 >> 16; $mul14 = Math_imul($and, $conv13)|0; $shr15 = $mul14 >> 16; $add = (($mul11) + ($shr15))|0; $12 = $Fc_Q19; $13 = $Fc_Q19; $shr16 = $13 >> 15; $add17 = (($shr16) + 1)|0; $shr18 = $add17 >> 1; $mul19 = Math_imul($12, $shr18)|0; $add20 = (($add) + ($mul19))|0; $sub21 = (($add20) - 8388608)|0; $conv22 = $sub21&65535; $conv23 = $conv22 << 16 >> 16; $mul24 = Math_imul($shr7, $conv23)|0; $14 = $r_Q22; $and25 = $14 & 65535; $15 = $Fc_Q19; $shr26 = $15 >> 16; $16 = $Fc_Q19; $conv27 = $16&65535; $conv28 = $conv27 << 16 >> 16; $mul29 = Math_imul($shr26, $conv28)|0; $17 = $Fc_Q19; $and30 = $17 & 65535; $18 = $Fc_Q19; $conv31 = $18&65535; $conv32 = $conv31 << 16 >> 16; $mul33 = Math_imul($and30, $conv32)|0; $shr34 = $mul33 >> 16; $add35 = (($mul29) + ($shr34))|0; $19 = $Fc_Q19; $20 = $Fc_Q19; $shr36 = $20 >> 15; $add37 = (($shr36) + 1)|0; $shr38 = $add37 >> 1; $mul39 = Math_imul($19, $shr38)|0; $add40 = (($add35) + ($mul39))|0; $sub41 = (($add40) - 8388608)|0; $conv42 = $sub41&65535; $conv43 = $conv42 << 16 >> 16; $mul44 = Math_imul($and25, $conv43)|0; $shr45 = $mul44 >> 16; $add46 = (($mul24) + ($shr45))|0; $21 = $r_Q22; $22 = $Fc_Q19; $shr47 = $22 >> 16; $23 = $Fc_Q19; $conv48 = $23&65535; $conv49 = $conv48 << 16 >> 16; $mul50 = Math_imul($shr47, $conv49)|0; $24 = $Fc_Q19; $and51 = $24 & 65535; $25 = $Fc_Q19; $conv52 = $25&65535; $conv53 = $conv52 << 16 >> 16; $mul54 = Math_imul($and51, $conv53)|0; $shr55 = $mul54 >> 16; $add56 = (($mul50) + ($shr55))|0; $26 = $Fc_Q19; $27 = $Fc_Q19; $shr57 = $27 >> 15; $add58 = (($shr57) + 1)|0; $shr59 = $add58 >> 1; $mul60 = Math_imul($26, $shr59)|0; $add61 = (($add56) + ($mul60))|0; $sub62 = (($add61) - 8388608)|0; $shr63 = $sub62 >> 15; $add64 = (($shr63) + 1)|0; $shr65 = $add64 >> 1; $mul66 = Math_imul($21, $shr65)|0; $add67 = (($add46) + ($mul66))|0; HEAP32[$A_Q28>>2] = $add67; $28 = $r_Q22; $shr69 = $28 >> 16; $29 = $r_Q22; $conv70 = $29&65535; $conv71 = $conv70 << 16 >> 16; $mul72 = Math_imul($shr69, $conv71)|0; $30 = $r_Q22; $and73 = $30 & 65535; $31 = $r_Q22; $conv74 = $31&65535; $conv75 = $conv74 << 16 >> 16; $mul76 = Math_imul($and73, $conv75)|0; $shr77 = $mul76 >> 16; $add78 = (($mul72) + ($shr77))|0; $32 = $r_Q22; $33 = $r_Q22; $shr79 = $33 >> 15; $add80 = (($shr79) + 1)|0; $shr81 = $add80 >> 1; $mul82 = Math_imul($32, $shr81)|0; $add83 = (($add78) + ($mul82))|0; $arrayidx84 = ((($A_Q28)) + 4|0); HEAP32[$arrayidx84>>2] = $add83; $34 = $in$addr; $35 = $hp_mem$addr; $36 = $out$addr; $37 = $len$addr; $38 = $channels$addr; _silk_biquad_float($34,$B_Q28,$A_Q28,$35,$36,$37,$38); $39 = $channels$addr; $cmp = ($39|0)==(2); if (!($cmp)) { STACKTOP = sp;return; } $40 = $in$addr; $add$ptr = ((($40)) + 4|0); $41 = $hp_mem$addr; $add$ptr89 = ((($41)) + 8|0); $42 = $out$addr; $add$ptr90 = ((($42)) + 4|0); $43 = $len$addr; $44 = $channels$addr; _silk_biquad_float($add$ptr,$B_Q28,$A_Q28,$add$ptr89,$add$ptr90,$43,$44); STACKTOP = sp;return; } function _dc_reject($in,$cutoff_Hz,$out,$hp_mem,$len,$channels,$Fs) { $in = $in|0; $cutoff_Hz = $cutoff_Hz|0; $out = $out|0; $hp_mem = $hp_mem|0; $len = $len|0; $channels = $channels|0; $Fs = $Fs|0; var $$sink = 0.0, $0 = 0, $1 = 0, $10 = 0, $11 = 0.0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0.0, $17 = 0, $18 = 0, $19 = 0.0, $2 = 0.0, $20 = 0.0, $21 = 0.0, $22 = 0.0, $23 = 0.0, $24 = 0.0, $25 = 0.0; var $26 = 0.0, $27 = 0.0, $28 = 0.0, $29 = 0.0, $3 = 0, $30 = 0.0, $31 = 0.0, $32 = 0.0, $33 = 0.0, $34 = 0.0, $35 = 0.0, $36 = 0.0, $37 = 0.0, $38 = 0.0, $39 = 0.0, $4 = 0, $40 = 0.0, $41 = 0.0, $42 = 0.0, $43 = 0.0; var $44 = 0.0, $45 = 0, $46 = 0, $47 = 0.0, $48 = 0, $49 = 0, $5 = 0.0, $50 = 0, $51 = 0.0, $52 = 0, $53 = 0.0, $54 = 0, $55 = 0.0, $56 = 0, $57 = 0.0, $58 = 0, $59 = 0, $6 = 0, $60 = 0.0, $61 = 0; var $62 = 0, $63 = 0, $64 = 0, $65 = 0.0, $66 = 0.0, $67 = 0.0, $68 = 0.0, $69 = 0.0, $7 = 0.0, $70 = 0.0, $71 = 0.0, $72 = 0.0, $73 = 0.0, $74 = 0.0, $75 = 0.0, $76 = 0.0, $77 = 0.0, $78 = 0.0, $79 = 0, $8 = 0; var $80 = 0, $81 = 0, $82 = 0.0, $83 = 0, $84 = 0.0, $85 = 0, $9 = 0.0, $Fs$addr = 0, $add = 0, $add11 = 0, $add16 = 0.0, $add18 = 0.0, $add20 = 0.0, $add22 = 0.0, $add26 = 0.0, $add28 = 0.0, $add30 = 0.0, $add32 = 0.0, $add34 = 0, $add37 = 0; var $add54 = 0.0, $add56 = 0.0, $add59 = 0.0, $add61 = 0.0, $arrayidx12 = 0, $arrayidx3 = 0, $arrayidx35 = 0, $arrayidx38 = 0, $arrayidx4 = 0, $arrayidx40 = 0, $arrayidx41 = 0, $arrayidx42 = 0, $arrayidx46 = 0, $arrayidx5 = 0, $arrayidx51 = 0, $arrayidx62 = 0, $arrayidx67 = 0, $arrayidx67$sink = 0, $arrayidx9 = 0, $channels$addr = 0; var $cmp = 0, $cmp48 = 0, $cmp6 = 0, $coef = 0.0, $coef2 = 0.0, $conv = 0.0, $conv1 = 0.0, $cutoff_Hz$addr = 0, $div = 0.0, $hp_mem$addr = 0, $i = 0, $in$addr = 0, $inc = 0, $inc64 = 0, $len$addr = 0, $m0 = 0.0, $m043 = 0.0, $m1 = 0.0, $m144 = 0.0, $m2 = 0.0; var $m3 = 0.0, $mul = 0.0, $mul10 = 0, $mul15 = 0.0, $mul17 = 0.0, $mul19 = 0.0, $mul21 = 0.0, $mul25 = 0.0, $mul27 = 0.0, $mul29 = 0.0, $mul31 = 0.0, $mul33 = 0, $mul36 = 0, $mul53 = 0.0, $mul55 = 0.0, $mul58 = 0.0, $mul60 = 0.0, $mul8 = 0, $out$addr = 0, $out0 = 0.0; var $out1 = 0.0, $sub = 0.0, $sub13 = 0.0, $sub14 = 0.0, $sub23 = 0.0, $sub24 = 0.0, $sub52 = 0.0, $sub57 = 0.0, $tmp = 0.0, $tmp0 = 0.0, $tmp1 = 0.0, $x = 0.0, $x0 = 0.0, $x1 = 0.0, $y = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 112|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(112|0); $in$addr = $in; $cutoff_Hz$addr = $cutoff_Hz; $out$addr = $out; $hp_mem$addr = $hp_mem; $len$addr = $len; $channels$addr = $channels; $Fs$addr = $Fs; $0 = $cutoff_Hz$addr; $conv = (+($0|0)); $mul = 4.0 * $conv; $1 = $Fs$addr; $conv1 = (+($1|0)); $div = $mul / $conv1; $coef = $div; $2 = $coef; $sub = 1.0 - $2; $coef2 = $sub; $3 = $channels$addr; $cmp = ($3|0)==(2); $4 = $hp_mem$addr; $5 = +HEAPF32[$4>>2]; if ($cmp) { $m0 = $5; $6 = $hp_mem$addr; $arrayidx3 = ((($6)) + 4|0); $7 = +HEAPF32[$arrayidx3>>2]; $m1 = $7; $8 = $hp_mem$addr; $arrayidx4 = ((($8)) + 8|0); $9 = +HEAPF32[$arrayidx4>>2]; $m2 = $9; $10 = $hp_mem$addr; $arrayidx5 = ((($10)) + 12|0); $11 = +HEAPF32[$arrayidx5>>2]; $m3 = $11; $i = 0; while(1) { $12 = $i; $13 = $len$addr; $cmp6 = ($12|0)<($13|0); if (!($cmp6)) { break; } $14 = $in$addr; $15 = $i; $mul8 = $15<<1; $add = (($mul8) + 0)|0; $arrayidx9 = (($14) + ($add<<2)|0); $16 = +HEAPF32[$arrayidx9>>2]; $x0 = $16; $17 = $in$addr; $18 = $i; $mul10 = $18<<1; $add11 = (($mul10) + 1)|0; $arrayidx12 = (($17) + ($add11<<2)|0); $19 = +HEAPF32[$arrayidx12>>2]; $x1 = $19; $20 = $x0; $21 = $m0; $sub13 = $20 - $21; $tmp0 = $sub13; $22 = $x1; $23 = $m2; $sub14 = $22 - $23; $tmp1 = $sub14; $24 = $coef; $25 = $x0; $mul15 = $24 * $25; $add16 = $mul15 + 1.0000000031710769E-30; $26 = $coef2; $27 = $m0; $mul17 = $26 * $27; $add18 = $add16 + $mul17; $m0 = $add18; $28 = $coef; $29 = $x1; $mul19 = $28 * $29; $add20 = $mul19 + 1.0000000031710769E-30; $30 = $coef2; $31 = $m2; $mul21 = $30 * $31; $add22 = $add20 + $mul21; $m2 = $add22; $32 = $tmp0; $33 = $m1; $sub23 = $32 - $33; $out0 = $sub23; $34 = $tmp1; $35 = $m3; $sub24 = $34 - $35; $out1 = $sub24; $36 = $coef; $37 = $tmp0; $mul25 = $36 * $37; $add26 = $mul25 + 1.0000000031710769E-30; $38 = $coef2; $39 = $m1; $mul27 = $38 * $39; $add28 = $add26 + $mul27; $m1 = $add28; $40 = $coef; $41 = $tmp1; $mul29 = $40 * $41; $add30 = $mul29 + 1.0000000031710769E-30; $42 = $coef2; $43 = $m3; $mul31 = $42 * $43; $add32 = $add30 + $mul31; $m3 = $add32; $44 = $out0; $45 = $out$addr; $46 = $i; $mul33 = $46<<1; $add34 = (($mul33) + 0)|0; $arrayidx35 = (($45) + ($add34<<2)|0); HEAPF32[$arrayidx35>>2] = $44; $47 = $out1; $48 = $out$addr; $49 = $i; $mul36 = $49<<1; $add37 = (($mul36) + 1)|0; $arrayidx38 = (($48) + ($add37<<2)|0); HEAPF32[$arrayidx38>>2] = $47; $50 = $i; $inc = (($50) + 1)|0; $i = $inc; } $51 = $m0; $52 = $hp_mem$addr; HEAPF32[$52>>2] = $51; $53 = $m1; $54 = $hp_mem$addr; $arrayidx40 = ((($54)) + 4|0); HEAPF32[$arrayidx40>>2] = $53; $55 = $m2; $56 = $hp_mem$addr; $arrayidx41 = ((($56)) + 8|0); HEAPF32[$arrayidx41>>2] = $55; $57 = $m3; $58 = $hp_mem$addr; $arrayidx42 = ((($58)) + 12|0); $$sink = $57;$arrayidx67$sink = $arrayidx42; HEAPF32[$arrayidx67$sink>>2] = $$sink; STACKTOP = sp;return; } else { $m043 = $5; $59 = $hp_mem$addr; $arrayidx46 = ((($59)) + 4|0); $60 = +HEAPF32[$arrayidx46>>2]; $m144 = $60; $i = 0; while(1) { $61 = $i; $62 = $len$addr; $cmp48 = ($61|0)<($62|0); if (!($cmp48)) { break; } $63 = $in$addr; $64 = $i; $arrayidx51 = (($63) + ($64<<2)|0); $65 = +HEAPF32[$arrayidx51>>2]; $x = $65; $66 = $x; $67 = $m043; $sub52 = $66 - $67; $tmp = $sub52; $68 = $coef; $69 = $x; $mul53 = $68 * $69; $add54 = $mul53 + 1.0000000031710769E-30; $70 = $coef2; $71 = $m043; $mul55 = $70 * $71; $add56 = $add54 + $mul55; $m043 = $add56; $72 = $tmp; $73 = $m144; $sub57 = $72 - $73; $y = $sub57; $74 = $coef; $75 = $tmp; $mul58 = $74 * $75; $add59 = $mul58 + 1.0000000031710769E-30; $76 = $coef2; $77 = $m144; $mul60 = $76 * $77; $add61 = $add59 + $mul60; $m144 = $add61; $78 = $y; $79 = $out$addr; $80 = $i; $arrayidx62 = (($79) + ($80<<2)|0); HEAPF32[$arrayidx62>>2] = $78; $81 = $i; $inc64 = (($81) + 1)|0; $i = $inc64; } $82 = $m043; $83 = $hp_mem$addr; HEAPF32[$83>>2] = $82; $84 = $m144; $85 = $hp_mem$addr; $arrayidx67 = ((($85)) + 4|0); $$sink = $84;$arrayidx67$sink = $arrayidx67; HEAPF32[$arrayidx67$sink>>2] = $$sink; STACKTOP = sp;return; } } function _compute_silk_rate_for_hybrid($rate,$bandwidth,$frame20ms,$vbr,$fec,$channels) { $rate = $rate|0; $bandwidth = $bandwidth|0; $frame20ms = $frame20ms|0; $vbr = $vbr|0; $fec = $fec|0; $channels = $channels|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $5 = 0; var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $N = 0, $add = 0, $add14 = 0, $add2 = 0, $add29 = 0, $add34 = 0, $add38 = 0, $arrayidx = 0, $arrayidx10 = 0, $arrayidx18 = 0, $arrayidx19 = 0, $arrayidx21 = 0, $arrayidx23 = 0, $arrayidx7 = 0, $arrayidx8 = 0, $bandwidth$addr = 0; var $channels$addr = 0, $cmp = 0, $cmp36 = 0, $cmp4 = 0, $cmp41 = 0, $cmp42 = 0, $cmp5 = 0, $div = 0, $div13 = 0, $div31 = 0, $entry1 = 0, $fec$addr = 0, $frame20ms$addr = 0, $hi = 0, $i = 0, $inc = 0, $lo = 0, $mul = 0, $mul26 = 0, $mul28 = 0; var $mul40 = 0, $or$cond = 0, $rate$addr = 0, $silk_rate = 0, $sub = 0, $sub12 = 0, $sub20 = 0, $sub25 = 0, $sub27 = 0, $sub30 = 0, $sub44 = 0, $sub9 = 0, $tobool = 0, $vbr$addr = 0, $x0 = 0, $x1 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $rate$addr = $rate; $bandwidth$addr = $bandwidth; $frame20ms$addr = $frame20ms; $vbr$addr = $vbr; $fec$addr = $fec; $channels$addr = $channels; $0 = $channels$addr; $1 = $rate$addr; $div = (($1|0) / ($0|0))&-1; $rate$addr = $div; $2 = $frame20ms$addr; $add = (1 + ($2))|0; $3 = $fec$addr; $mul = $3<<1; $add2 = (($add) + ($mul))|0; $entry1 = $add2; $N = 7; $i = 1; while(1) { $4 = $i; $5 = $N; $cmp = ($4|0)<($5|0); if (!($cmp)) { break; } $6 = $i; $arrayidx = (232 + (($6*20)|0)|0); $7 = HEAP32[$arrayidx>>2]|0; $8 = $rate$addr; $cmp4 = ($7|0)>($8|0); if ($cmp4) { break; } $9 = $i; $inc = (($9) + 1)|0; $i = $inc; } $10 = $i; $11 = $N; $cmp5 = ($10|0)==($11|0); $12 = $i; $sub = (($12) - 1)|0; $arrayidx7 = (232 + (($sub*20)|0)|0); $13 = $entry1; $arrayidx8 = (($arrayidx7) + ($13<<2)|0); $14 = HEAP32[$arrayidx8>>2]|0; if ($cmp5) { $silk_rate = $14; $15 = $rate$addr; $16 = $i; $sub9 = (($16) - 1)|0; $arrayidx10 = (232 + (($sub9*20)|0)|0); $17 = HEAP32[$arrayidx10>>2]|0; $sub12 = (($15) - ($17))|0; $div13 = (($sub12|0) / 2)&-1; $18 = $silk_rate; $add14 = (($18) + ($div13))|0; $silk_rate = $add14; } else { $lo = $14; $19 = $i; $arrayidx18 = (232 + (($19*20)|0)|0); $20 = $entry1; $arrayidx19 = (($arrayidx18) + ($20<<2)|0); $21 = HEAP32[$arrayidx19>>2]|0; $hi = $21; $22 = $i; $sub20 = (($22) - 1)|0; $arrayidx21 = (232 + (($sub20*20)|0)|0); $23 = HEAP32[$arrayidx21>>2]|0; $x0 = $23; $24 = $i; $arrayidx23 = (232 + (($24*20)|0)|0); $25 = HEAP32[$arrayidx23>>2]|0; $x1 = $25; $26 = $lo; $27 = $x1; $28 = $rate$addr; $sub25 = (($27) - ($28))|0; $mul26 = Math_imul($26, $sub25)|0; $29 = $hi; $30 = $rate$addr; $31 = $x0; $sub27 = (($30) - ($31))|0; $mul28 = Math_imul($29, $sub27)|0; $add29 = (($mul26) + ($mul28))|0; $32 = $x1; $33 = $x0; $sub30 = (($32) - ($33))|0; $div31 = (($add29|0) / ($sub30|0))&-1; $silk_rate = $div31; } $34 = $vbr$addr; $tobool = ($34|0)!=(0); if (!($tobool)) { $35 = $silk_rate; $add34 = (($35) + 100)|0; $silk_rate = $add34; } $36 = $bandwidth$addr; $cmp36 = ($36|0)==(1104); if ($cmp36) { $37 = $silk_rate; $add38 = (($37) + 300)|0; $silk_rate = $add38; } $38 = $channels$addr; $39 = $silk_rate; $mul40 = Math_imul($39, $38)|0; $silk_rate = $mul40; $40 = $channels$addr; $cmp41 = ($40|0)==(2); $41 = $rate$addr; $cmp42 = ($41|0)>=(12000); $or$cond = $cmp41 & $cmp42; if (!($or$cond)) { $43 = $silk_rate; STACKTOP = sp;return ($43|0); } $42 = $silk_rate; $sub44 = (($42) - 1000)|0; $silk_rate = $sub44; $43 = $silk_rate; STACKTOP = sp;return ($43|0); } function _gain_fade($in,$out,$g1,$g2,$overlap48,$frame_size,$channels,$window,$Fs) { $in = $in|0; $out = $out|0; $g1 = +$g1; $g2 = +$g2; $overlap48 = $overlap48|0; $frame_size = $frame_size|0; $channels = $channels|0; $window = $window|0; $Fs = $Fs|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0.0, $14 = 0.0, $15 = 0.0, $16 = 0.0, $17 = 0.0, $18 = 0.0, $19 = 0, $2 = 0, $20 = 0, $21 = 0.0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0.0, $31 = 0, $32 = 0, $33 = 0, $34 = 0.0, $35 = 0.0, $36 = 0.0, $37 = 0.0, $38 = 0.0, $39 = 0.0, $4 = 0, $40 = 0, $41 = 0, $42 = 0.0, $43 = 0, $44 = 0; var $45 = 0.0, $46 = 0, $47 = 0, $48 = 0.0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0.0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0.0, $61 = 0, $62 = 0; var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $7 = 0, $8 = 0, $9 = 0.0, $Fs$addr = 0, $add = 0.0, $add25 = 0.0, $add32 = 0, $add36 = 0, $add45 = 0, $add49 = 0, $arrayidx = 0, $arrayidx10 = 0, $arrayidx18 = 0, $arrayidx20 = 0, $arrayidx27 = 0; var $arrayidx30 = 0, $arrayidx33 = 0, $arrayidx37 = 0, $arrayidx4 = 0, $arrayidx46 = 0, $arrayidx50 = 0, $arrayidx8 = 0, $c = 0, $channels$addr = 0, $cmp = 0, $cmp13 = 0, $cmp2 = 0, $cmp42 = 0, $cmp55 = 0, $div = 0, $div1 = 0, $frame_size$addr = 0, $g = 0.0, $g1$addr = 0.0, $g15 = 0.0; var $g2$addr = 0.0, $i = 0, $in$addr = 0, $inc = 0, $inc11 = 0, $inc39 = 0, $inc52 = 0, $inc54 = 0, $mul = 0, $mul17 = 0, $mul19 = 0, $mul21 = 0.0, $mul22 = 0.0, $mul24 = 0.0, $mul26 = 0, $mul28 = 0.0, $mul29 = 0, $mul3 = 0, $mul31 = 0, $mul34 = 0.0; var $mul35 = 0, $mul44 = 0, $mul47 = 0.0, $mul48 = 0, $mul5 = 0.0, $mul6 = 0.0, $mul7 = 0.0, $mul9 = 0.0, $out$addr = 0, $overlap = 0, $overlap48$addr = 0, $sub = 0.0, $sub23 = 0.0, $w = 0.0, $w16 = 0.0, $window$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(80|0); $in$addr = $in; $out$addr = $out; $g1$addr = $g1; $g2$addr = $g2; $overlap48$addr = $overlap48; $frame_size$addr = $frame_size; $channels$addr = $channels; $window$addr = $window; $Fs$addr = $Fs; $0 = $Fs$addr; $div = (48000 / ($0|0))&-1; $inc = $div; $1 = $overlap48$addr; $2 = $inc; $div1 = (($1|0) / ($2|0))&-1; $overlap = $div1; $3 = $channels$addr; $cmp = ($3|0)==(1); $i = 0; L1: do { if ($cmp) { while(1) { $4 = $i; $5 = $overlap; $cmp2 = ($4|0)<($5|0); if (!($cmp2)) { break L1; } $6 = $window$addr; $7 = $i; $8 = $inc; $mul = Math_imul($7, $8)|0; $arrayidx = (($6) + ($mul<<2)|0); $9 = +HEAPF32[$arrayidx>>2]; $10 = $window$addr; $11 = $i; $12 = $inc; $mul3 = Math_imul($11, $12)|0; $arrayidx4 = (($10) + ($mul3<<2)|0); $13 = +HEAPF32[$arrayidx4>>2]; $mul5 = $9 * $13; $w = $mul5; $14 = $w; $15 = $g2$addr; $mul6 = $14 * $15; $16 = $w; $sub = 1.0 - $16; $17 = $g1$addr; $mul7 = $sub * $17; $add = $mul6 + $mul7; $g = $add; $18 = $g; $19 = $in$addr; $20 = $i; $arrayidx8 = (($19) + ($20<<2)|0); $21 = +HEAPF32[$arrayidx8>>2]; $mul9 = $18 * $21; $22 = $out$addr; $23 = $i; $arrayidx10 = (($22) + ($23<<2)|0); HEAPF32[$arrayidx10>>2] = $mul9; $24 = $i; $inc11 = (($24) + 1)|0; $i = $inc11; } } else { while(1) { $25 = $i; $26 = $overlap; $cmp13 = ($25|0)<($26|0); if (!($cmp13)) { break L1; } $27 = $window$addr; $28 = $i; $29 = $inc; $mul17 = Math_imul($28, $29)|0; $arrayidx18 = (($27) + ($mul17<<2)|0); $30 = +HEAPF32[$arrayidx18>>2]; $31 = $window$addr; $32 = $i; $33 = $inc; $mul19 = Math_imul($32, $33)|0; $arrayidx20 = (($31) + ($mul19<<2)|0); $34 = +HEAPF32[$arrayidx20>>2]; $mul21 = $30 * $34; $w16 = $mul21; $35 = $w16; $36 = $g2$addr; $mul22 = $35 * $36; $37 = $w16; $sub23 = 1.0 - $37; $38 = $g1$addr; $mul24 = $sub23 * $38; $add25 = $mul22 + $mul24; $g15 = $add25; $39 = $g15; $40 = $in$addr; $41 = $i; $mul26 = $41<<1; $arrayidx27 = (($40) + ($mul26<<2)|0); $42 = +HEAPF32[$arrayidx27>>2]; $mul28 = $39 * $42; $43 = $out$addr; $44 = $i; $mul29 = $44<<1; $arrayidx30 = (($43) + ($mul29<<2)|0); HEAPF32[$arrayidx30>>2] = $mul28; $45 = $g15; $46 = $in$addr; $47 = $i; $mul31 = $47<<1; $add32 = (($mul31) + 1)|0; $arrayidx33 = (($46) + ($add32<<2)|0); $48 = +HEAPF32[$arrayidx33>>2]; $mul34 = $45 * $48; $49 = $out$addr; $50 = $i; $mul35 = $50<<1; $add36 = (($mul35) + 1)|0; $arrayidx37 = (($49) + ($add36<<2)|0); HEAPF32[$arrayidx37>>2] = $mul34; $51 = $i; $inc39 = (($51) + 1)|0; $i = $inc39; } } } while(0); $c = 0; while(1) { $52 = $overlap; $i = $52; while(1) { $53 = $i; $54 = $frame_size$addr; $cmp42 = ($53|0)<($54|0); if (!($cmp42)) { break; } $55 = $g2$addr; $56 = $in$addr; $57 = $i; $58 = $channels$addr; $mul44 = Math_imul($57, $58)|0; $59 = $c; $add45 = (($mul44) + ($59))|0; $arrayidx46 = (($56) + ($add45<<2)|0); $60 = +HEAPF32[$arrayidx46>>2]; $mul47 = $55 * $60; $61 = $out$addr; $62 = $i; $63 = $channels$addr; $mul48 = Math_imul($62, $63)|0; $64 = $c; $add49 = (($mul48) + ($64))|0; $arrayidx50 = (($61) + ($add49<<2)|0); HEAPF32[$arrayidx50>>2] = $mul47; $65 = $i; $inc52 = (($65) + 1)|0; $i = $inc52; } $66 = $c; $inc54 = (($66) + 1)|0; $c = $inc54; $67 = $channels$addr; $cmp55 = ($inc54|0)<($67|0); if (!($cmp55)) { break; } } STACKTOP = sp;return; } function _FLOAT2INT16_12($x) { $x = +$x; var $0 = 0.0, $1 = 0.0, $2 = 0.0, $3 = 0.0, $4 = 0.0, $5 = 0.0, $call = 0, $cmp = 0, $cmp1 = 0, $cond = 0.0, $cond5 = 0.0, $conv = 0, $mul = 0.0, $x$addr = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $x$addr = $x; $0 = $x$addr; $mul = $0 * 32768.0; $x$addr = $mul; $1 = $x$addr; $cmp = $1 > -32768.0; $2 = $x$addr; $cond = $cmp ? $2 : -32768.0; $x$addr = $cond; $3 = $x$addr; $cmp1 = $3 < 32767.0; $4 = $x$addr; $cond5 = $cmp1 ? $4 : 32767.0; $x$addr = $cond5; $5 = $x$addr; $call = (_lrintf($5)|0); $conv = $call&65535; STACKTOP = sp;return ($conv|0); } function _stereo_fade($in,$out,$g1,$g2,$overlap48,$frame_size,$channels,$window,$Fs) { $in = $in|0; $out = $out|0; $g1 = +$g1; $g2 = +$g2; $overlap48 = $overlap48|0; $frame_size = $frame_size|0; $channels = $channels|0; $window = $window|0; $Fs = $Fs|0; var $0 = 0, $1 = 0, $10 = 0.0, $11 = 0, $12 = 0, $13 = 0, $14 = 0.0, $15 = 0.0, $16 = 0.0, $17 = 0.0, $18 = 0.0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0.0, $23 = 0, $24 = 0, $25 = 0, $26 = 0.0; var $27 = 0.0, $28 = 0.0, $29 = 0, $3 = 0.0, $30 = 0, $31 = 0, $32 = 0.0, $33 = 0.0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0.0, $40 = 0.0, $41 = 0.0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0.0, $52 = 0, $53 = 0, $54 = 0, $55 = 0.0, $56 = 0.0, $57 = 0.0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0.0, $62 = 0.0; var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0.0, $7 = 0, $70 = 0.0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $8 = 0, $9 = 0, $Fs$addr = 0, $add = 0.0, $add12 = 0, $add23 = 0, $add25 = 0.0; var $add27 = 0, $add37 = 0, $add48 = 0, $add50 = 0.0, $add52 = 0, $arrayidx = 0, $arrayidx10 = 0, $arrayidx13 = 0, $arrayidx18 = 0, $arrayidx21 = 0, $arrayidx24 = 0, $arrayidx28 = 0, $arrayidx35 = 0, $arrayidx38 = 0, $arrayidx4 = 0, $arrayidx43 = 0, $arrayidx46 = 0, $arrayidx49 = 0, $arrayidx53 = 0, $channels$addr = 0; var $cmp = 0, $cmp31 = 0, $diff = 0.0, $diff33 = 0.0, $div = 0, $div1 = 0, $frame_size$addr = 0, $g = 0.0, $g1$addr = 0.0, $g2$addr = 0.0, $i = 0, $in$addr = 0, $inc = 0, $inc29 = 0, $inc55 = 0, $mul = 0, $mul11 = 0, $mul15 = 0.0, $mul16 = 0.0, $mul17 = 0; var $mul20 = 0, $mul22 = 0, $mul26 = 0, $mul3 = 0, $mul34 = 0, $mul36 = 0, $mul40 = 0.0, $mul41 = 0.0, $mul42 = 0, $mul45 = 0, $mul47 = 0, $mul5 = 0.0, $mul51 = 0, $mul6 = 0.0, $mul8 = 0.0, $mul9 = 0, $out$addr = 0, $overlap = 0, $overlap48$addr = 0, $sub = 0.0; var $sub14 = 0.0, $sub19 = 0.0, $sub2 = 0.0, $sub39 = 0.0, $sub44 = 0.0, $sub7 = 0.0, $w = 0.0, $window$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $in$addr = $in; $out$addr = $out; $g1$addr = $g1; $g2$addr = $g2; $overlap48$addr = $overlap48; $frame_size$addr = $frame_size; $channels$addr = $channels; $window$addr = $window; $Fs$addr = $Fs; $0 = $Fs$addr; $div = (48000 / ($0|0))&-1; $inc = $div; $1 = $overlap48$addr; $2 = $inc; $div1 = (($1|0) / ($2|0))&-1; $overlap = $div1; $3 = $g1$addr; $sub = 1.0 - $3; $g1$addr = $sub; $4 = $g2$addr; $sub2 = 1.0 - $4; $g2$addr = $sub2; $i = 0; while(1) { $5 = $i; $6 = $overlap; $cmp = ($5|0)<($6|0); if (!($cmp)) { break; } $7 = $window$addr; $8 = $i; $9 = $inc; $mul = Math_imul($8, $9)|0; $arrayidx = (($7) + ($mul<<2)|0); $10 = +HEAPF32[$arrayidx>>2]; $11 = $window$addr; $12 = $i; $13 = $inc; $mul3 = Math_imul($12, $13)|0; $arrayidx4 = (($11) + ($mul3<<2)|0); $14 = +HEAPF32[$arrayidx4>>2]; $mul5 = $10 * $14; $w = $mul5; $15 = $w; $16 = $g2$addr; $mul6 = $15 * $16; $17 = $w; $sub7 = 1.0 - $17; $18 = $g1$addr; $mul8 = $sub7 * $18; $add = $mul6 + $mul8; $g = $add; $19 = $in$addr; $20 = $i; $21 = $channels$addr; $mul9 = Math_imul($20, $21)|0; $arrayidx10 = (($19) + ($mul9<<2)|0); $22 = +HEAPF32[$arrayidx10>>2]; $23 = $in$addr; $24 = $i; $25 = $channels$addr; $mul11 = Math_imul($24, $25)|0; $add12 = (($mul11) + 1)|0; $arrayidx13 = (($23) + ($add12<<2)|0); $26 = +HEAPF32[$arrayidx13>>2]; $sub14 = $22 - $26; $mul15 = 0.5 * $sub14; $diff = $mul15; $27 = $g; $28 = $diff; $mul16 = $27 * $28; $diff = $mul16; $29 = $out$addr; $30 = $i; $31 = $channels$addr; $mul17 = Math_imul($30, $31)|0; $arrayidx18 = (($29) + ($mul17<<2)|0); $32 = +HEAPF32[$arrayidx18>>2]; $33 = $diff; $sub19 = $32 - $33; $34 = $out$addr; $35 = $i; $36 = $channels$addr; $mul20 = Math_imul($35, $36)|0; $arrayidx21 = (($34) + ($mul20<<2)|0); HEAPF32[$arrayidx21>>2] = $sub19; $37 = $out$addr; $38 = $i; $39 = $channels$addr; $mul22 = Math_imul($38, $39)|0; $add23 = (($mul22) + 1)|0; $arrayidx24 = (($37) + ($add23<<2)|0); $40 = +HEAPF32[$arrayidx24>>2]; $41 = $diff; $add25 = $40 + $41; $42 = $out$addr; $43 = $i; $44 = $channels$addr; $mul26 = Math_imul($43, $44)|0; $add27 = (($mul26) + 1)|0; $arrayidx28 = (($42) + ($add27<<2)|0); HEAPF32[$arrayidx28>>2] = $add25; $45 = $i; $inc29 = (($45) + 1)|0; $i = $inc29; } while(1) { $46 = $i; $47 = $frame_size$addr; $cmp31 = ($46|0)<($47|0); if (!($cmp31)) { break; } $48 = $in$addr; $49 = $i; $50 = $channels$addr; $mul34 = Math_imul($49, $50)|0; $arrayidx35 = (($48) + ($mul34<<2)|0); $51 = +HEAPF32[$arrayidx35>>2]; $52 = $in$addr; $53 = $i; $54 = $channels$addr; $mul36 = Math_imul($53, $54)|0; $add37 = (($mul36) + 1)|0; $arrayidx38 = (($52) + ($add37<<2)|0); $55 = +HEAPF32[$arrayidx38>>2]; $sub39 = $51 - $55; $mul40 = 0.5 * $sub39; $diff33 = $mul40; $56 = $g2$addr; $57 = $diff33; $mul41 = $56 * $57; $diff33 = $mul41; $58 = $out$addr; $59 = $i; $60 = $channels$addr; $mul42 = Math_imul($59, $60)|0; $arrayidx43 = (($58) + ($mul42<<2)|0); $61 = +HEAPF32[$arrayidx43>>2]; $62 = $diff33; $sub44 = $61 - $62; $63 = $out$addr; $64 = $i; $65 = $channels$addr; $mul45 = Math_imul($64, $65)|0; $arrayidx46 = (($63) + ($mul45<<2)|0); HEAPF32[$arrayidx46>>2] = $sub44; $66 = $out$addr; $67 = $i; $68 = $channels$addr; $mul47 = Math_imul($67, $68)|0; $add48 = (($mul47) + 1)|0; $arrayidx49 = (($66) + ($add48<<2)|0); $69 = +HEAPF32[$arrayidx49>>2]; $70 = $diff33; $add50 = $69 + $70; $71 = $out$addr; $72 = $i; $73 = $channels$addr; $mul51 = Math_imul($72, $73)|0; $add52 = (($mul51) + 1)|0; $arrayidx53 = (($71) + ($add52<<2)|0); HEAPF32[$arrayidx53>>2] = $add50; $74 = $i; $inc55 = (($74) + 1)|0; $i = $inc55; } STACKTOP = sp;return; } function _ec_tell_13($_this) { $_this = $_this|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $_this$addr = 0, $nbits_total = 0, $rng = 0, $sub = 0, $sub1 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $_this$addr = $_this; $0 = $_this$addr; $nbits_total = ((($0)) + 20|0); $1 = HEAP32[$nbits_total>>2]|0; $2 = $_this$addr; $rng = ((($2)) + 28|0); $3 = HEAP32[$rng>>2]|0; $4 = (Math_clz32(($3|0))|0); $sub = (32 - ($4))|0; $sub1 = (($1) - ($sub))|0; STACKTOP = sp;return ($sub1|0); } function _decide_dtx_mode($activity_probability,$nb_no_activity_frames,$peak_signal_energy,$pcm,$frame_size,$channels,$is_silence,$arch) { $activity_probability = +$activity_probability; $nb_no_activity_frames = $nb_no_activity_frames|0; $peak_signal_energy = +$peak_signal_energy; $pcm = $pcm|0; $frame_size = $frame_size|0; $channels = $channels|0; $is_silence = $is_silence|0; $arch = $arch|0; var $0 = 0, $1 = 0.0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0.0, $7 = 0.0, $8 = 0, $9 = 0, $activity_probability$addr = 0.0, $arch$addr = 0, $call = 0.0; var $channels$addr = 0, $cmp = 0, $cmp2 = 0, $cmp6 = 0, $cmp9 = 0, $conv = 0, $frame_size$addr = 0, $inc = 0, $is_silence$addr = 0, $mul = 0.0, $nb_no_activity_frames$addr = 0, $noise_energy = 0.0, $or$cond = 0, $pcm$addr = 0, $peak_signal_energy$addr = 0.0, $retval = 0, $tobool = 0, $tobool4 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $activity_probability$addr = $activity_probability; $nb_no_activity_frames$addr = $nb_no_activity_frames; $peak_signal_energy$addr = $peak_signal_energy; $pcm$addr = $pcm; $frame_size$addr = $frame_size; $channels$addr = $channels; $is_silence$addr = $is_silence; $arch$addr = $arch; $0 = $is_silence$addr; $tobool = ($0|0)==(0); $1 = $activity_probability$addr; $cmp = $1 < 0.10000000149011612; $or$cond = $tobool & $cmp; if ($or$cond) { $2 = $pcm$addr; $3 = $frame_size$addr; $4 = $channels$addr; $5 = $arch$addr; $call = (+_compute_frame_energy($2,$3,$4,$5)); $noise_energy = $call; $6 = $peak_signal_energy$addr; $7 = $noise_energy; $mul = 316.23001098632813 * $7; $cmp2 = $6 >= $mul; $conv = $cmp2&1; $is_silence$addr = $conv; } $8 = $is_silence$addr; $tobool4 = ($8|0)!=(0); $9 = $nb_no_activity_frames$addr; do { if ($tobool4) { $10 = HEAP32[$9>>2]|0; $inc = (($10) + 1)|0; HEAP32[$9>>2] = $inc; $11 = $nb_no_activity_frames$addr; $12 = HEAP32[$11>>2]|0; $cmp6 = ($12|0)>(10); if ($cmp6) { $13 = $nb_no_activity_frames$addr; $14 = HEAP32[$13>>2]|0; $cmp9 = ($14|0)<=(30); if (!($cmp9)) { $15 = $nb_no_activity_frames$addr; HEAP32[$15>>2] = 10; break; } $retval = 1; $16 = $retval; STACKTOP = sp;return ($16|0); } } else { HEAP32[$9>>2] = 0; } } while(0); $retval = 0; $16 = $retval; STACKTOP = sp;return ($16|0); } function _silk_biquad_float($in,$B_Q28,$A_Q28,$S,$out,$len,$stride) { $in = $in|0; $B_Q28 = $B_Q28|0; $A_Q28 = $A_Q28|0; $S = $S|0; $out = $out|0; $len = $len|0; $stride = $stride|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0.0, $16 = 0, $17 = 0.0, $18 = 0.0, $19 = 0.0, $2 = 0, $20 = 0, $21 = 0.0, $22 = 0.0, $23 = 0.0, $24 = 0.0, $25 = 0.0, $26 = 0; var $27 = 0.0, $28 = 0.0, $29 = 0.0, $3 = 0, $30 = 0.0, $31 = 0, $32 = 0.0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $A = 0, $A_Q28$addr = 0, $B = 0; var $B_Q28$addr = 0, $S$addr = 0, $add = 0.0, $add29 = 0.0, $add36 = 0.0, $add37 = 0.0, $arrayidx10 = 0, $arrayidx13 = 0, $arrayidx14 = 0, $arrayidx17 = 0, $arrayidx2 = 0, $arrayidx20 = 0, $arrayidx24 = 0, $arrayidx27 = 0, $arrayidx32 = 0, $arrayidx34 = 0, $arrayidx38 = 0, $arrayidx40 = 0, $arrayidx5 = 0, $cmp = 0; var $conv = 0.0, $conv11 = 0.0, $conv15 = 0.0, $conv3 = 0.0, $conv7 = 0.0, $in$addr = 0, $inc = 0, $inval = 0.0, $k = 0, $len$addr = 0, $mul = 0.0, $mul12 = 0.0, $mul16 = 0.0, $mul19 = 0, $mul23 = 0.0, $mul26 = 0.0, $mul28 = 0.0, $mul33 = 0.0, $mul35 = 0.0, $mul39 = 0; var $mul4 = 0.0, $mul8 = 0.0, $out$addr = 0, $stride$addr = 0, $sub = 0.0, $sub31 = 0.0, $vout = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $A = sp + 16|0; $B = sp; $in$addr = $in; $B_Q28$addr = $B_Q28; $A_Q28$addr = $A_Q28; $S$addr = $S; $out$addr = $out; $len$addr = $len; $stride$addr = $stride; $0 = $A_Q28$addr; $1 = HEAP32[$0>>2]|0; $conv = (+($1|0)); $mul = $conv * 3.7252902984619141E-9; HEAPF32[$A>>2] = $mul; $2 = $A_Q28$addr; $arrayidx2 = ((($2)) + 4|0); $3 = HEAP32[$arrayidx2>>2]|0; $conv3 = (+($3|0)); $mul4 = $conv3 * 3.7252902984619141E-9; $arrayidx5 = ((($A)) + 4|0); HEAPF32[$arrayidx5>>2] = $mul4; $4 = $B_Q28$addr; $5 = HEAP32[$4>>2]|0; $conv7 = (+($5|0)); $mul8 = $conv7 * 3.7252902984619141E-9; HEAPF32[$B>>2] = $mul8; $6 = $B_Q28$addr; $arrayidx10 = ((($6)) + 4|0); $7 = HEAP32[$arrayidx10>>2]|0; $conv11 = (+($7|0)); $mul12 = $conv11 * 3.7252902984619141E-9; $arrayidx13 = ((($B)) + 4|0); HEAPF32[$arrayidx13>>2] = $mul12; $8 = $B_Q28$addr; $arrayidx14 = ((($8)) + 8|0); $9 = HEAP32[$arrayidx14>>2]|0; $conv15 = (+($9|0)); $mul16 = $conv15 * 3.7252902984619141E-9; $arrayidx17 = ((($B)) + 8|0); HEAPF32[$arrayidx17>>2] = $mul16; $k = 0; while(1) { $10 = $k; $11 = $len$addr; $cmp = ($10|0)<($11|0); if (!($cmp)) { break; } $12 = $in$addr; $13 = $k; $14 = $stride$addr; $mul19 = Math_imul($13, $14)|0; $arrayidx20 = (($12) + ($mul19<<2)|0); $15 = +HEAPF32[$arrayidx20>>2]; $inval = $15; $16 = $S$addr; $17 = +HEAPF32[$16>>2]; $18 = +HEAPF32[$B>>2]; $19 = $inval; $mul23 = $18 * $19; $add = $17 + $mul23; $vout = $add; $20 = $S$addr; $arrayidx24 = ((($20)) + 4|0); $21 = +HEAPF32[$arrayidx24>>2]; $22 = $vout; $23 = +HEAPF32[$A>>2]; $mul26 = $22 * $23; $sub = $21 - $mul26; $arrayidx27 = ((($B)) + 4|0); $24 = +HEAPF32[$arrayidx27>>2]; $25 = $inval; $mul28 = $24 * $25; $add29 = $sub + $mul28; $26 = $S$addr; HEAPF32[$26>>2] = $add29; $27 = $vout; $sub31 = - $27; $arrayidx32 = ((($A)) + 4|0); $28 = +HEAPF32[$arrayidx32>>2]; $mul33 = $sub31 * $28; $arrayidx34 = ((($B)) + 8|0); $29 = +HEAPF32[$arrayidx34>>2]; $30 = $inval; $mul35 = $29 * $30; $add36 = $mul33 + $mul35; $add37 = $add36 + 1.0000000031710769E-30; $31 = $S$addr; $arrayidx38 = ((($31)) + 4|0); HEAPF32[$arrayidx38>>2] = $add37; $32 = $vout; $33 = $out$addr; $34 = $k; $35 = $stride$addr; $mul39 = Math_imul($34, $35)|0; $arrayidx40 = (($33) + ($mul39<<2)|0); HEAPF32[$arrayidx40>>2] = $32; $36 = $k; $inc = (($36) + 1)|0; $k = $inc; } STACKTOP = sp;return; } function _celt_maxabs16($x,$len) { $x = $x|0; $len = $len|0; var $0 = 0, $1 = 0, $10 = 0.0, $11 = 0, $12 = 0, $13 = 0.0, $14 = 0.0, $15 = 0, $16 = 0, $17 = 0.0, $18 = 0, $19 = 0.0, $2 = 0.0, $20 = 0.0, $21 = 0.0, $3 = 0, $4 = 0, $5 = 0.0, $6 = 0.0, $7 = 0; var $8 = 0, $9 = 0.0, $arrayidx = 0, $arrayidx2 = 0, $arrayidx3 = 0, $arrayidx7 = 0, $cmp = 0, $cmp1 = 0, $cmp10 = 0, $cmp4 = 0, $cond = 0.0, $cond15 = 0.0, $cond9 = 0.0, $i = 0, $inc = 0, $len$addr = 0, $maxval = 0.0, $minval = 0.0, $sub = 0.0, $sub13 = 0.0; var $x$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $x$addr = $x; $len$addr = $len; $maxval = 0.0; $minval = 0.0; $i = 0; while(1) { $0 = $i; $1 = $len$addr; $cmp = ($0|0)<($1|0); $2 = $maxval; if (!($cmp)) { break; } $3 = $x$addr; $4 = $i; $arrayidx = (($3) + ($4<<2)|0); $5 = +HEAPF32[$arrayidx>>2]; $cmp1 = $2 > $5; if ($cmp1) { $6 = $maxval; $cond = $6; } else { $7 = $x$addr; $8 = $i; $arrayidx2 = (($7) + ($8<<2)|0); $9 = +HEAPF32[$arrayidx2>>2]; $cond = $9; } $maxval = $cond; $10 = $minval; $11 = $x$addr; $12 = $i; $arrayidx3 = (($11) + ($12<<2)|0); $13 = +HEAPF32[$arrayidx3>>2]; $cmp4 = $10 < $13; if ($cmp4) { $14 = $minval; $cond9 = $14; } else { $15 = $x$addr; $16 = $i; $arrayidx7 = (($15) + ($16<<2)|0); $17 = +HEAPF32[$arrayidx7>>2]; $cond9 = $17; } $minval = $cond9; $18 = $i; $inc = (($18) + 1)|0; $i = $inc; } $19 = $minval; $sub = - $19; $cmp10 = $2 > $sub; $20 = $maxval; $21 = $minval; $sub13 = - $21; $cond15 = $cmp10 ? $20 : $sub13; STACKTOP = sp;return (+$cond15); } function _opus_encode_float($st,$pcm,$analysis_frame_size,$data,$out_data_bytes) { $st = $st|0; $pcm = $pcm|0; $analysis_frame_size = $analysis_frame_size|0; $data = $data|0; $out_data_bytes = $out_data_bytes|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $Fs = 0, $analysis_frame_size$addr = 0, $call = 0, $call1 = 0, $channels = 0, $data$addr = 0; var $frame_size = 0, $out_data_bytes$addr = 0, $pcm$addr = 0, $st$addr = 0, $variable_duration = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $st$addr = $st; $pcm$addr = $pcm; $analysis_frame_size$addr = $analysis_frame_size; $data$addr = $data; $out_data_bytes$addr = $out_data_bytes; $0 = $analysis_frame_size$addr; $1 = $st$addr; $variable_duration = ((($1)) + 156|0); $2 = HEAP32[$variable_duration>>2]|0; $3 = $st$addr; $Fs = ((($3)) + 144|0); $4 = HEAP32[$Fs>>2]|0; $call = (_frame_size_select($0,$2,$4)|0); $frame_size = $call; $5 = $st$addr; $6 = $pcm$addr; $7 = $frame_size; $8 = $data$addr; $9 = $out_data_bytes$addr; $10 = $pcm$addr; $11 = $analysis_frame_size$addr; $12 = $st$addr; $channels = ((($12)) + 112|0); $13 = HEAP32[$channels>>2]|0; $call1 = (_opus_encode_native($5,$6,$7,$8,$9,24,$10,$11,0,-2,$13,21,1)|0); STACKTOP = sp;return ($call1|0); } function _opus_encoder_ctl($st,$request,$varargs) { $st = $st|0; $request = $request|0; $varargs = $varargs|0; var $$old = 0, $$sink = 0, $$sink10 = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0; var $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0; var $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0; var $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0; var $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0; var $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0; var $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0; var $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0; var $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0; var $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0; var $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0; var $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0; var $311 = 0, $312 = 0, $313 = 0, $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0; var $33 = 0, $330 = 0, $331 = 0, $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0; var $348 = 0, $349 = 0, $35 = 0, $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0; var $366 = 0, $367 = 0, $368 = 0, $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0; var $384 = 0, $385 = 0, $386 = 0, $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0; var $401 = 0, $402 = 0, $403 = 0, $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0; var $42 = 0, $420 = 0, $421 = 0, $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0; var $438 = 0, $439 = 0, $44 = 0, $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0; var $456 = 0, $457 = 0, $458 = 0, $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0; var $474 = 0, $475 = 0, $476 = 0, $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0; var $492 = 0, $493 = 0, $494 = 0, $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0; var $51 = 0, $510 = 0, $511 = 0, $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0; var $528 = 0, $529 = 0, $53 = 0, $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0; var $546 = 0, $547 = 0, $548 = 0, $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0; var $564 = 0, $565 = 0, $566 = 0, $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0; var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0; var $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $Fs = 0; var $Fs313 = 0, $add = 0, $add$ptr = 0, $add$ptr428 = 0, $add$ptr431 = 0, $add$ptr474 = 0, $add$ptr487 = 0, $analysis = 0, $analysis432 = 0, $ap = 0, $application = 0, $application17 = 0, $application301 = 0, $application8 = 0, $application9 = 0, $arch = 0, $arglist_current = 0, $arglist_current100 = 0, $arglist_current103 = 0, $arglist_current109 = 0; var $arglist_current112 = 0, $arglist_current115 = 0, $arglist_current118 = 0, $arglist_current121 = 0, $arglist_current124 = 0, $arglist_current127 = 0, $arglist_current130 = 0, $arglist_current133 = 0, $arglist_current136 = 0, $arglist_current139 = 0, $arglist_current142 = 0, $arglist_current145 = 0, $arglist_current148 = 0, $arglist_current151 = 0, $arglist_current157 = 0, $arglist_current160 = 0, $arglist_current163 = 0, $arglist_current166 = 0, $arglist_current172 = 0, $arglist_current180 = 0; var $arglist_current183 = 0, $arglist_current189 = 0, $arglist_current195 = 0, $arglist_current58 = 0, $arglist_current61 = 0, $arglist_current64 = 0, $arglist_current67 = 0, $arglist_current70 = 0, $arglist_current73 = 0, $arglist_current76 = 0, $arglist_current79 = 0, $arglist_current82 = 0, $arglist_current85 = 0, $arglist_current88 = 0, $arglist_current91 = 0, $arglist_current94 = 0, $arglist_current97 = 0, $arglist_next = 0, $arglist_next101 = 0, $arglist_next104 = 0; var $arglist_next110 = 0, $arglist_next113 = 0, $arglist_next116 = 0, $arglist_next119 = 0, $arglist_next122 = 0, $arglist_next125 = 0, $arglist_next128 = 0, $arglist_next131 = 0, $arglist_next134 = 0, $arglist_next137 = 0, $arglist_next140 = 0, $arglist_next143 = 0, $arglist_next146 = 0, $arglist_next149 = 0, $arglist_next152 = 0, $arglist_next158 = 0, $arglist_next161 = 0, $arglist_next164 = 0, $arglist_next167 = 0, $arglist_next173 = 0; var $arglist_next181 = 0, $arglist_next184 = 0, $arglist_next190 = 0, $arglist_next196 = 0, $arglist_next59 = 0, $arglist_next62 = 0, $arglist_next65 = 0, $arglist_next68 = 0, $arglist_next71 = 0, $arglist_next74 = 0, $arglist_next77 = 0, $arglist_next80 = 0, $arglist_next83 = 0, $arglist_next86 = 0, $arglist_next89 = 0, $arglist_next92 = 0, $arglist_next95 = 0, $arglist_next98 = 0, $bandwidth = 0, $bandwidth443 = 0; var $call = 0, $call444 = 0, $call465 = 0, $call475 = 0, $call488 = 0, $celt_enc = 0, $channels = 0, $channels33 = 0, $channels440 = 0, $channels52 = 0, $cmp = 0, $cmp101 = 0, $cmp103 = 0, $cmp105 = 0, $cmp109 = 0, $cmp115 = 0, $cmp135 = 0, $cmp137 = 0, $cmp152 = 0, $cmp154 = 0; var $cmp173 = 0, $cmp176 = 0, $cmp194 = 0, $cmp197 = 0, $cmp218 = 0, $cmp22 = 0, $cmp221 = 0, $cmp238 = 0, $cmp24 = 0, $cmp241 = 0, $cmp257 = 0, $cmp26 = 0, $cmp260 = 0, $cmp276 = 0, $cmp279 = 0, $cmp28 = 0, $cmp282 = 0, $cmp3 = 0, $cmp302 = 0, $cmp31 = 0; var $cmp325 = 0, $cmp328 = 0, $cmp344 = 0, $cmp347 = 0, $cmp350 = 0, $cmp353 = 0, $cmp356 = 0, $cmp359 = 0, $cmp362 = 0, $cmp365 = 0, $cmp368 = 0, $cmp371 = 0, $cmp390 = 0, $cmp393 = 0, $cmp411 = 0, $cmp414 = 0, $cmp449 = 0, $cmp452 = 0, $cmp455 = 0, $cmp5 = 0; var $cmp50 = 0, $cmp53 = 0, $cmp55 = 0, $cmp55$old = 0, $cmp7 = 0, $cmp70 = 0, $cmp72 = 0, $cmp76 = 0, $cmp80 = 0, $complexity = 0, $complexity168 = 0, $delay_compensation = 0, $div = 0, $dummy = 0, $energy_masking = 0, $expanded = 0, $expanded100 = 0, $expanded102 = 0, $expanded103 = 0, $expanded104 = 0; var $expanded106 = 0, $expanded107 = 0, $expanded109 = 0, $expanded11 = 0, $expanded110 = 0, $expanded111 = 0, $expanded113 = 0, $expanded114 = 0, $expanded116 = 0, $expanded117 = 0, $expanded118 = 0, $expanded12 = 0, $expanded120 = 0, $expanded121 = 0, $expanded123 = 0, $expanded124 = 0, $expanded125 = 0, $expanded127 = 0, $expanded128 = 0, $expanded13 = 0; var $expanded130 = 0, $expanded131 = 0, $expanded132 = 0, $expanded134 = 0, $expanded135 = 0, $expanded137 = 0, $expanded138 = 0, $expanded139 = 0, $expanded141 = 0, $expanded142 = 0, $expanded144 = 0, $expanded145 = 0, $expanded146 = 0, $expanded148 = 0, $expanded149 = 0, $expanded15 = 0, $expanded151 = 0, $expanded152 = 0, $expanded153 = 0, $expanded155 = 0; var $expanded156 = 0, $expanded158 = 0, $expanded159 = 0, $expanded16 = 0, $expanded160 = 0, $expanded162 = 0, $expanded163 = 0, $expanded165 = 0, $expanded166 = 0, $expanded167 = 0, $expanded169 = 0, $expanded170 = 0, $expanded172 = 0, $expanded173 = 0, $expanded174 = 0, $expanded176 = 0, $expanded177 = 0, $expanded179 = 0, $expanded18 = 0, $expanded180 = 0; var $expanded181 = 0, $expanded183 = 0, $expanded184 = 0, $expanded186 = 0, $expanded187 = 0, $expanded188 = 0, $expanded19 = 0, $expanded190 = 0, $expanded191 = 0, $expanded193 = 0, $expanded194 = 0, $expanded195 = 0, $expanded197 = 0, $expanded198 = 0, $expanded2 = 0, $expanded20 = 0, $expanded200 = 0, $expanded201 = 0, $expanded202 = 0, $expanded204 = 0; var $expanded205 = 0, $expanded207 = 0, $expanded208 = 0, $expanded209 = 0, $expanded211 = 0, $expanded212 = 0, $expanded214 = 0, $expanded215 = 0, $expanded216 = 0, $expanded218 = 0, $expanded219 = 0, $expanded22 = 0, $expanded221 = 0, $expanded222 = 0, $expanded223 = 0, $expanded225 = 0, $expanded226 = 0, $expanded228 = 0, $expanded229 = 0, $expanded23 = 0; var $expanded230 = 0, $expanded232 = 0, $expanded233 = 0, $expanded235 = 0, $expanded236 = 0, $expanded237 = 0, $expanded239 = 0, $expanded240 = 0, $expanded242 = 0, $expanded243 = 0, $expanded244 = 0, $expanded246 = 0, $expanded247 = 0, $expanded249 = 0, $expanded25 = 0, $expanded250 = 0, $expanded251 = 0, $expanded253 = 0, $expanded254 = 0, $expanded256 = 0; var $expanded257 = 0, $expanded258 = 0, $expanded26 = 0, $expanded260 = 0, $expanded261 = 0, $expanded263 = 0, $expanded264 = 0, $expanded265 = 0, $expanded267 = 0, $expanded268 = 0, $expanded27 = 0, $expanded270 = 0, $expanded271 = 0, $expanded272 = 0, $expanded274 = 0, $expanded275 = 0, $expanded277 = 0, $expanded278 = 0, $expanded279 = 0, $expanded281 = 0; var $expanded282 = 0, $expanded284 = 0, $expanded285 = 0, $expanded286 = 0, $expanded29 = 0, $expanded30 = 0, $expanded32 = 0, $expanded33 = 0, $expanded34 = 0, $expanded36 = 0, $expanded37 = 0, $expanded39 = 0, $expanded4 = 0, $expanded40 = 0, $expanded41 = 0, $expanded43 = 0, $expanded44 = 0, $expanded46 = 0, $expanded47 = 0, $expanded48 = 0; var $expanded5 = 0, $expanded50 = 0, $expanded51 = 0, $expanded53 = 0, $expanded54 = 0, $expanded55 = 0, $expanded57 = 0, $expanded58 = 0, $expanded6 = 0, $expanded60 = 0, $expanded61 = 0, $expanded62 = 0, $expanded64 = 0, $expanded65 = 0, $expanded67 = 0, $expanded68 = 0, $expanded69 = 0, $expanded71 = 0, $expanded72 = 0, $expanded74 = 0; var $expanded75 = 0, $expanded76 = 0, $expanded78 = 0, $expanded79 = 0, $expanded8 = 0, $expanded81 = 0, $expanded82 = 0, $expanded83 = 0, $expanded85 = 0, $expanded86 = 0, $expanded88 = 0, $expanded89 = 0, $expanded9 = 0, $expanded90 = 0, $expanded92 = 0, $expanded93 = 0, $expanded95 = 0, $expanded96 = 0, $expanded97 = 0, $expanded99 = 0; var $first = 0, $first442 = 0, $force_channels = 0, $force_channels65 = 0, $hybrid_stereo_width_Q14 = 0, $lfe = 0, $lsb_depth = 0, $lsb_depth339 = 0, $maxInternalSampleRate = 0, $maxInternalSampleRate112 = 0, $maxInternalSampleRate118 = 0, $maxInternalSampleRate83 = 0, $max_bandwidth = 0, $max_bandwidth75 = 0, $max_bandwidth79 = 0, $max_bandwidth96 = 0, $mode = 0, $mul = 0, $mul34 = 0, $mul437 = 0; var $or$cond = 0, $or$cond1 = 0, $or$cond12 = 0, $or$cond14 = 0, $or$cond16 = 0, $or$cond18 = 0, $or$cond2 = 0, $or$cond20 = 0, $or$cond22 = 0, $or$cond24 = 0, $or$cond26 = 0, $or$cond28 = 0, $or$cond3 = 0, $or$cond30 = 0, $or$cond32 = 0, $or$cond34 = 0, $or$cond36 = 0, $or$cond38 = 0, $or$cond40 = 0, $or$cond42 = 0; var $or$cond44 = 0, $or$cond46 = 0, $or$cond48 = 0, $or$cond5 = 0, $or$cond50 = 0, $or$cond52 = 0, $or$cond54 = 0, $or$cond56 = 0, $or$cond7 = 0, $or$cond9 = 0, $packetLossPercentage = 0, $packetLossPercentage213 = 0, $prev_HB_gain = 0, $prev_framesize = 0, $rangeFinal = 0, $reducedDependency = 0, $reducedDependency406 = 0, $request$addr = 0, $ret = 0, $retval = 0; var $shl = 0, $signal_type = 0, $signal_type293 = 0, $silk_enc = 0, $silk_enc_offset = 0, $silk_mode = 0, $silk_mode111 = 0, $silk_mode117 = 0, $silk_mode157 = 0, $silk_mode167 = 0, $silk_mode180 = 0, $silk_mode188 = 0, $silk_mode201 = 0, $silk_mode212 = 0, $silk_mode225 = 0, $silk_mode397 = 0, $silk_mode405 = 0, $silk_mode82 = 0, $st$addr = 0, $start = 0; var $stream_channels = 0, $stream_channels441 = 0, $sub = 0, $sub$ptr$div = 0, $sub$ptr$div473 = 0, $sub$ptr$div486 = 0, $sub$ptr$lhs$cast = 0, $sub$ptr$lhs$cast433 = 0, $sub$ptr$lhs$cast470 = 0, $sub$ptr$lhs$cast483 = 0, $sub$ptr$rhs$cast = 0, $sub$ptr$rhs$cast434 = 0, $sub$ptr$rhs$cast471 = 0, $sub$ptr$rhs$cast484 = 0, $sub$ptr$sub = 0, $sub$ptr$sub435 = 0, $sub$ptr$sub472 = 0, $sub$ptr$sub485 = 0, $sub436 = 0, $tobool = 0; var $tobool128 = 0, $tobool14 = 0, $tobool144 = 0, $tobool164 = 0, $tobool185 = 0, $tobool209 = 0, $tobool230 = 0, $tobool249 = 0, $tobool268 = 0, $tobool290 = 0, $tobool298 = 0, $tobool310 = 0, $tobool318 = 0, $tobool336 = 0, $tobool382 = 0, $tobool402 = 0, $tobool425 = 0, $tobool43 = 0, $tobool480 = 0, $tobool62 = 0; var $tobool93 = 0, $useCBR = 0, $useInBandFEC = 0, $useInBandFEC189 = 0, $use_dtx = 0, $use_dtx147 = 0, $use_vbr = 0, $use_vbr233 = 0, $user_bandwidth = 0, $user_bandwidth108 = 0, $user_bandwidth114 = 0, $user_bitrate_bps = 0, $user_forced_mode = 0, $value = 0, $value11 = 0, $value125 = 0, $value132 = 0, $value141 = 0, $value149 = 0, $value161 = 0; var $value170 = 0, $value182 = 0, $value19 = 0, $value191 = 0, $value206 = 0, $value215 = 0, $value227 = 0, $value235 = 0, $value246 = 0, $value254 = 0, $value265 = 0, $value273 = 0, $value287 = 0, $value295 = 0, $value307 = 0, $value315 = 0, $value322 = 0, $value333 = 0, $value341 = 0, $value379 = 0; var $value387 = 0, $value399 = 0, $value40 = 0, $value408 = 0, $value422 = 0, $value446 = 0, $value460 = 0, $value467 = 0, $value47 = 0, $value477 = 0, $value59 = 0, $value67 = 0, $value90 = 0, $value98 = 0, $vararg_buffer = 0, $vararg_buffer105 = 0, $vararg_buffer153 = 0, $vararg_buffer168 = 0, $vararg_buffer174 = 0, $vararg_buffer177 = 0; var $vararg_buffer185 = 0, $vararg_buffer191 = 0, $vararg_buffer197 = 0, $varet = 0, $varet100 = 0, $varet127 = 0, $varet13 = 0, $varet134 = 0, $varet143 = 0, $varet151 = 0, $varet163 = 0, $varet172 = 0, $varet184 = 0, $varet193 = 0, $varet208 = 0, $varet21 = 0, $varet217 = 0, $varet229 = 0, $varet237 = 0, $varet248 = 0; var $varet256 = 0, $varet267 = 0, $varet275 = 0, $varet289 = 0, $varet297 = 0, $varet309 = 0, $varet317 = 0, $varet324 = 0, $varet335 = 0, $varet343 = 0, $varet381 = 0, $varet389 = 0, $varet401 = 0, $varet410 = 0, $varet42 = 0, $varet424 = 0, $varet448 = 0, $varet462 = 0, $varet469 = 0, $varet479 = 0; var $varet49 = 0, $varet61 = 0, $varet69 = 0, $varet92 = 0, $variable_HP_smth2_Q15 = 0, $variable_duration = 0, $variable_duration385 = 0, $vbr_constraint = 0, $vbr_constraint271 = 0, $voice_ratio = 0, $voice_ratio252 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 544|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(544|0); $vararg_buffer197 = sp + 64|0; $vararg_buffer191 = sp + 56|0; $vararg_buffer185 = sp + 48|0; $vararg_buffer177 = sp + 40|0; $vararg_buffer174 = sp + 32|0; $vararg_buffer168 = sp + 24|0; $vararg_buffer153 = sp + 16|0; $vararg_buffer105 = sp + 8|0; $vararg_buffer = sp; $ap = sp + 504|0; $dummy = sp + 104|0; $st$addr = $st; $request$addr = $request; $ret = 0; HEAP32[$ap>>2] = $varargs; $0 = $st$addr; $1 = $st$addr; $2 = HEAP32[$1>>2]|0; $add$ptr = (($0) + ($2)|0); $celt_enc = $add$ptr; $3 = $request$addr; L1: do { switch ($3|0) { case 4000: { $arglist_current = HEAP32[$ap>>2]|0; $4 = $arglist_current; $5 = ((0) + 4|0); $expanded2 = $5; $expanded = (($expanded2) - 1)|0; $6 = (($4) + ($expanded))|0; $7 = ((0) + 4|0); $expanded6 = $7; $expanded5 = (($expanded6) - 1)|0; $expanded4 = $expanded5 ^ -1; $8 = $6 & $expanded4; $9 = $8; $10 = HEAP32[$9>>2]|0; $arglist_next = ((($9)) + 4|0); HEAP32[$ap>>2] = $arglist_next; $varet = $10; $11 = $varet; $value = $11; $12 = $value; $cmp = ($12|0)!=(2048); $13 = $value; $cmp3 = ($13|0)!=(2049); $or$cond = $cmp & $cmp3; $14 = $value; $cmp5 = ($14|0)!=(2051); $or$cond1 = $or$cond & $cmp5; do { if (!($or$cond1)) { $15 = $st$addr; $first = ((($15)) + 14248|0); $16 = HEAP32[$first>>2]|0; $tobool = ($16|0)!=(0); if (!($tobool)) { $17 = $st$addr; $application = ((($17)) + 108|0); $18 = HEAP32[$application>>2]|0; $19 = $value; $cmp7 = ($18|0)!=($19|0); if ($cmp7) { break; } } $20 = $value; $21 = $st$addr; $application8 = ((($21)) + 108|0); HEAP32[$application8>>2] = $20; $22 = $value; $23 = $st$addr; $analysis = ((($23)) + 188|0); $application9 = ((($analysis)) + 4|0); HEAP32[$application9>>2] = $22; label = 99; break L1; } } while(0); $ret = -1; label = 99; break; } case 4001: { $arglist_current58 = HEAP32[$ap>>2]|0; $24 = $arglist_current58; $25 = ((0) + 4|0); $expanded9 = $25; $expanded8 = (($expanded9) - 1)|0; $26 = (($24) + ($expanded8))|0; $27 = ((0) + 4|0); $expanded13 = $27; $expanded12 = (($expanded13) - 1)|0; $expanded11 = $expanded12 ^ -1; $28 = $26 & $expanded11; $29 = $28; $30 = HEAP32[$29>>2]|0; $arglist_next59 = ((($29)) + 4|0); HEAP32[$ap>>2] = $arglist_next59; $varet13 = $30; $31 = $varet13; $value11 = $31; $32 = $value11; $tobool14 = ($32|0)!=(0|0); if ($tobool14) { $33 = $st$addr; $application17 = ((($33)) + 108|0); $34 = HEAP32[$application17>>2]|0; $35 = $value11; HEAP32[$35>>2] = $34; label = 99; } else { label = 100; } break; } case 4002: { $arglist_current61 = HEAP32[$ap>>2]|0; $36 = $arglist_current61; $37 = ((0) + 4|0); $expanded16 = $37; $expanded15 = (($expanded16) - 1)|0; $38 = (($36) + ($expanded15))|0; $39 = ((0) + 4|0); $expanded20 = $39; $expanded19 = (($expanded20) - 1)|0; $expanded18 = $expanded19 ^ -1; $40 = $38 & $expanded18; $41 = $40; $42 = HEAP32[$41>>2]|0; $arglist_next62 = ((($41)) + 4|0); HEAP32[$ap>>2] = $arglist_next62; $varet21 = $42; $43 = $varet21; $value19 = $43; $44 = $value19; $cmp22 = ($44|0)!=(-1000); $45 = $value19; $cmp24 = ($45|0)!=(-1); $or$cond2 = $cmp22 & $cmp24; do { if ($or$cond2) { $46 = $value19; $cmp26 = ($46|0)<=(0); if ($cmp26) { label = 100; break L1; } $47 = $value19; $cmp28 = ($47|0)<=(500); if ($cmp28) { $value19 = 500; break; } $48 = $value19; $49 = $st$addr; $channels = ((($49)) + 112|0); $50 = HEAP32[$channels>>2]|0; $mul = ($50*300000)|0; $cmp31 = ($48|0)>($mul|0); if ($cmp31) { $51 = $st$addr; $channels33 = ((($51)) + 112|0); $52 = HEAP32[$channels33>>2]|0; $mul34 = ($52*300000)|0; $value19 = $mul34; } } } while(0); $53 = $value19; $54 = $st$addr; $user_bitrate_bps = ((($54)) + 164|0); HEAP32[$user_bitrate_bps>>2] = $53; label = 99; break; } case 4003: { $arglist_current64 = HEAP32[$ap>>2]|0; $55 = $arglist_current64; $56 = ((0) + 4|0); $expanded23 = $56; $expanded22 = (($expanded23) - 1)|0; $57 = (($55) + ($expanded22))|0; $58 = ((0) + 4|0); $expanded27 = $58; $expanded26 = (($expanded27) - 1)|0; $expanded25 = $expanded26 ^ -1; $59 = $57 & $expanded25; $60 = $59; $61 = HEAP32[$60>>2]|0; $arglist_next65 = ((($60)) + 4|0); HEAP32[$ap>>2] = $arglist_next65; $varet42 = $61; $62 = $varet42; $value40 = $62; $63 = $value40; $tobool43 = ($63|0)!=(0|0); if ($tobool43) { $64 = $st$addr; $65 = $st$addr; $prev_framesize = ((($65)) + 14232|0); $66 = HEAP32[$prev_framesize>>2]|0; $call = (_user_bitrate_to_bitrate($64,$66,1276)|0); $67 = $value40; HEAP32[$67>>2] = $call; label = 99; } else { label = 100; } break; } case 4022: { $arglist_current67 = HEAP32[$ap>>2]|0; $68 = $arglist_current67; $69 = ((0) + 4|0); $expanded30 = $69; $expanded29 = (($expanded30) - 1)|0; $70 = (($68) + ($expanded29))|0; $71 = ((0) + 4|0); $expanded34 = $71; $expanded33 = (($expanded34) - 1)|0; $expanded32 = $expanded33 ^ -1; $72 = $70 & $expanded32; $73 = $72; $74 = HEAP32[$73>>2]|0; $arglist_next68 = ((($73)) + 4|0); HEAP32[$ap>>2] = $arglist_next68; $varet49 = $74; $75 = $varet49; $value47 = $75; $76 = $value47; $cmp50 = ($76|0)<(1); $$old = $value47; if ($cmp50) { $cmp55$old = ($$old|0)!=(-1000); if ($cmp55$old) { label = 100; break L1; } } else { $77 = $st$addr; $channels52 = ((($77)) + 112|0); $78 = HEAP32[$channels52>>2]|0; $cmp53 = ($$old|0)>($78|0); $79 = $value47; $cmp55 = ($79|0)!=(-1000); $or$cond3 = $cmp53 & $cmp55; if ($or$cond3) { label = 100; break L1; } } $80 = $value47; $81 = $st$addr; $force_channels = ((($81)) + 120|0); HEAP32[$force_channels>>2] = $80; label = 99; break; } case 4023: { $arglist_current70 = HEAP32[$ap>>2]|0; $82 = $arglist_current70; $83 = ((0) + 4|0); $expanded37 = $83; $expanded36 = (($expanded37) - 1)|0; $84 = (($82) + ($expanded36))|0; $85 = ((0) + 4|0); $expanded41 = $85; $expanded40 = (($expanded41) - 1)|0; $expanded39 = $expanded40 ^ -1; $86 = $84 & $expanded39; $87 = $86; $88 = HEAP32[$87>>2]|0; $arglist_next71 = ((($87)) + 4|0); HEAP32[$ap>>2] = $arglist_next71; $varet61 = $88; $89 = $varet61; $value59 = $89; $90 = $value59; $tobool62 = ($90|0)!=(0|0); if ($tobool62) { $91 = $st$addr; $force_channels65 = ((($91)) + 120|0); $92 = HEAP32[$force_channels65>>2]|0; $93 = $value59; HEAP32[$93>>2] = $92; label = 99; } else { label = 100; } break; } case 4004: { $arglist_current73 = HEAP32[$ap>>2]|0; $94 = $arglist_current73; $95 = ((0) + 4|0); $expanded44 = $95; $expanded43 = (($expanded44) - 1)|0; $96 = (($94) + ($expanded43))|0; $97 = ((0) + 4|0); $expanded48 = $97; $expanded47 = (($expanded48) - 1)|0; $expanded46 = $expanded47 ^ -1; $98 = $96 & $expanded46; $99 = $98; $100 = HEAP32[$99>>2]|0; $arglist_next74 = ((($99)) + 4|0); HEAP32[$ap>>2] = $arglist_next74; $varet69 = $100; $101 = $varet69; $value67 = $101; $102 = $value67; $cmp70 = ($102|0)<(1101); $103 = $value67; $cmp72 = ($103|0)>(1105); $or$cond5 = $cmp70 | $cmp72; if ($or$cond5) { label = 100; } else { $104 = $value67; $105 = $st$addr; $max_bandwidth = ((($105)) + 132|0); HEAP32[$max_bandwidth>>2] = $104; $106 = $st$addr; $max_bandwidth75 = ((($106)) + 132|0); $107 = HEAP32[$max_bandwidth75>>2]|0; $cmp76 = ($107|0)==(1101); $108 = $st$addr; if ($cmp76) { $silk_mode = ((($108)) + 8|0); $maxInternalSampleRate = ((($silk_mode)) + 12|0); HEAP32[$maxInternalSampleRate>>2] = 8000; label = 99; break L1; } else { $max_bandwidth79 = ((($108)) + 132|0); $109 = HEAP32[$max_bandwidth79>>2]|0; $cmp80 = ($109|0)==(1102); $110 = $st$addr; $silk_mode82 = ((($110)) + 8|0); $maxInternalSampleRate83 = ((($silk_mode82)) + 12|0); $$sink = $cmp80 ? 12000 : 16000; HEAP32[$maxInternalSampleRate83>>2] = $$sink; label = 99; break L1; } } break; } case 4005: { $arglist_current76 = HEAP32[$ap>>2]|0; $111 = $arglist_current76; $112 = ((0) + 4|0); $expanded51 = $112; $expanded50 = (($expanded51) - 1)|0; $113 = (($111) + ($expanded50))|0; $114 = ((0) + 4|0); $expanded55 = $114; $expanded54 = (($expanded55) - 1)|0; $expanded53 = $expanded54 ^ -1; $115 = $113 & $expanded53; $116 = $115; $117 = HEAP32[$116>>2]|0; $arglist_next77 = ((($116)) + 4|0); HEAP32[$ap>>2] = $arglist_next77; $varet92 = $117; $118 = $varet92; $value90 = $118; $119 = $value90; $tobool93 = ($119|0)!=(0|0); if ($tobool93) { $120 = $st$addr; $max_bandwidth96 = ((($120)) + 132|0); $121 = HEAP32[$max_bandwidth96>>2]|0; $122 = $value90; HEAP32[$122>>2] = $121; label = 99; } else { label = 100; } break; } case 4008: { $arglist_current79 = HEAP32[$ap>>2]|0; $123 = $arglist_current79; $124 = ((0) + 4|0); $expanded58 = $124; $expanded57 = (($expanded58) - 1)|0; $125 = (($123) + ($expanded57))|0; $126 = ((0) + 4|0); $expanded62 = $126; $expanded61 = (($expanded62) - 1)|0; $expanded60 = $expanded61 ^ -1; $127 = $125 & $expanded60; $128 = $127; $129 = HEAP32[$128>>2]|0; $arglist_next80 = ((($128)) + 4|0); HEAP32[$ap>>2] = $arglist_next80; $varet100 = $129; $130 = $varet100; $value98 = $130; $131 = $value98; $cmp101 = ($131|0)<(1101); $132 = $value98; $cmp103 = ($132|0)>(1105); $or$cond7 = $cmp101 | $cmp103; $133 = $value98; $cmp105 = ($133|0)!=(-1000); $or$cond9 = $or$cond7 & $cmp105; if ($or$cond9) { label = 100; } else { $134 = $value98; $135 = $st$addr; $user_bandwidth = ((($135)) + 128|0); HEAP32[$user_bandwidth>>2] = $134; $136 = $st$addr; $user_bandwidth108 = ((($136)) + 128|0); $137 = HEAP32[$user_bandwidth108>>2]|0; $cmp109 = ($137|0)==(1101); $138 = $st$addr; if ($cmp109) { $silk_mode111 = ((($138)) + 8|0); $maxInternalSampleRate112 = ((($silk_mode111)) + 12|0); HEAP32[$maxInternalSampleRate112>>2] = 8000; label = 99; break L1; } else { $user_bandwidth114 = ((($138)) + 128|0); $139 = HEAP32[$user_bandwidth114>>2]|0; $cmp115 = ($139|0)==(1102); $140 = $st$addr; $silk_mode117 = ((($140)) + 8|0); $maxInternalSampleRate118 = ((($silk_mode117)) + 12|0); $$sink10 = $cmp115 ? 12000 : 16000; HEAP32[$maxInternalSampleRate118>>2] = $$sink10; label = 99; break L1; } } break; } case 4009: { $arglist_current82 = HEAP32[$ap>>2]|0; $141 = $arglist_current82; $142 = ((0) + 4|0); $expanded65 = $142; $expanded64 = (($expanded65) - 1)|0; $143 = (($141) + ($expanded64))|0; $144 = ((0) + 4|0); $expanded69 = $144; $expanded68 = (($expanded69) - 1)|0; $expanded67 = $expanded68 ^ -1; $145 = $143 & $expanded67; $146 = $145; $147 = HEAP32[$146>>2]|0; $arglist_next83 = ((($146)) + 4|0); HEAP32[$ap>>2] = $arglist_next83; $varet127 = $147; $148 = $varet127; $value125 = $148; $149 = $value125; $tobool128 = ($149|0)!=(0|0); if ($tobool128) { $150 = $st$addr; $bandwidth = ((($150)) + 14236|0); $151 = HEAP32[$bandwidth>>2]|0; $152 = $value125; HEAP32[$152>>2] = $151; label = 99; } else { label = 100; } break; } case 4016: { $arglist_current85 = HEAP32[$ap>>2]|0; $153 = $arglist_current85; $154 = ((0) + 4|0); $expanded72 = $154; $expanded71 = (($expanded72) - 1)|0; $155 = (($153) + ($expanded71))|0; $156 = ((0) + 4|0); $expanded76 = $156; $expanded75 = (($expanded76) - 1)|0; $expanded74 = $expanded75 ^ -1; $157 = $155 & $expanded74; $158 = $157; $159 = HEAP32[$158>>2]|0; $arglist_next86 = ((($158)) + 4|0); HEAP32[$ap>>2] = $arglist_next86; $varet134 = $159; $160 = $varet134; $value132 = $160; $161 = $value132; $cmp135 = ($161|0)<(0); $162 = $value132; $cmp137 = ($162|0)>(1); $or$cond12 = $cmp135 | $cmp137; if ($or$cond12) { label = 100; } else { $163 = $value132; $164 = $st$addr; $use_dtx = ((($164)) + 184|0); HEAP32[$use_dtx>>2] = $163; label = 99; } break; } case 4017: { $arglist_current88 = HEAP32[$ap>>2]|0; $165 = $arglist_current88; $166 = ((0) + 4|0); $expanded79 = $166; $expanded78 = (($expanded79) - 1)|0; $167 = (($165) + ($expanded78))|0; $168 = ((0) + 4|0); $expanded83 = $168; $expanded82 = (($expanded83) - 1)|0; $expanded81 = $expanded82 ^ -1; $169 = $167 & $expanded81; $170 = $169; $171 = HEAP32[$170>>2]|0; $arglist_next89 = ((($170)) + 4|0); HEAP32[$ap>>2] = $arglist_next89; $varet143 = $171; $172 = $varet143; $value141 = $172; $173 = $value141; $tobool144 = ($173|0)!=(0|0); if ($tobool144) { $174 = $st$addr; $use_dtx147 = ((($174)) + 184|0); $175 = HEAP32[$use_dtx147>>2]|0; $176 = $value141; HEAP32[$176>>2] = $175; label = 99; } else { label = 100; } break; } case 4010: { $arglist_current91 = HEAP32[$ap>>2]|0; $177 = $arglist_current91; $178 = ((0) + 4|0); $expanded86 = $178; $expanded85 = (($expanded86) - 1)|0; $179 = (($177) + ($expanded85))|0; $180 = ((0) + 4|0); $expanded90 = $180; $expanded89 = (($expanded90) - 1)|0; $expanded88 = $expanded89 ^ -1; $181 = $179 & $expanded88; $182 = $181; $183 = HEAP32[$182>>2]|0; $arglist_next92 = ((($182)) + 4|0); HEAP32[$ap>>2] = $arglist_next92; $varet151 = $183; $184 = $varet151; $value149 = $184; $185 = $value149; $cmp152 = ($185|0)<(0); $186 = $value149; $cmp154 = ($186|0)>(10); $or$cond14 = $cmp152 | $cmp154; if ($or$cond14) { label = 100; } else { $187 = $value149; $188 = $st$addr; $silk_mode157 = ((($188)) + 8|0); $complexity = ((($silk_mode157)) + 36|0); HEAP32[$complexity>>2] = $187; $189 = $celt_enc; $190 = $value149; HEAP32[$vararg_buffer>>2] = $190; (_opus_custom_encoder_ctl($189,4010,$vararg_buffer)|0); label = 99; } break; } case 4011: { $arglist_current94 = HEAP32[$ap>>2]|0; $191 = $arglist_current94; $192 = ((0) + 4|0); $expanded93 = $192; $expanded92 = (($expanded93) - 1)|0; $193 = (($191) + ($expanded92))|0; $194 = ((0) + 4|0); $expanded97 = $194; $expanded96 = (($expanded97) - 1)|0; $expanded95 = $expanded96 ^ -1; $195 = $193 & $expanded95; $196 = $195; $197 = HEAP32[$196>>2]|0; $arglist_next95 = ((($196)) + 4|0); HEAP32[$ap>>2] = $arglist_next95; $varet163 = $197; $198 = $varet163; $value161 = $198; $199 = $value161; $tobool164 = ($199|0)!=(0|0); if ($tobool164) { $200 = $st$addr; $silk_mode167 = ((($200)) + 8|0); $complexity168 = ((($silk_mode167)) + 36|0); $201 = HEAP32[$complexity168>>2]|0; $202 = $value161; HEAP32[$202>>2] = $201; label = 99; } else { label = 100; } break; } case 4012: { $arglist_current97 = HEAP32[$ap>>2]|0; $203 = $arglist_current97; $204 = ((0) + 4|0); $expanded100 = $204; $expanded99 = (($expanded100) - 1)|0; $205 = (($203) + ($expanded99))|0; $206 = ((0) + 4|0); $expanded104 = $206; $expanded103 = (($expanded104) - 1)|0; $expanded102 = $expanded103 ^ -1; $207 = $205 & $expanded102; $208 = $207; $209 = HEAP32[$208>>2]|0; $arglist_next98 = ((($208)) + 4|0); HEAP32[$ap>>2] = $arglist_next98; $varet172 = $209; $210 = $varet172; $value170 = $210; $211 = $value170; $cmp173 = ($211|0)<(0); $212 = $value170; $cmp176 = ($212|0)>(1); $or$cond16 = $cmp173 | $cmp176; if ($or$cond16) { label = 100; } else { $213 = $value170; $214 = $st$addr; $silk_mode180 = ((($214)) + 8|0); $useInBandFEC = ((($silk_mode180)) + 40|0); HEAP32[$useInBandFEC>>2] = $213; label = 99; } break; } case 4013: { $arglist_current100 = HEAP32[$ap>>2]|0; $215 = $arglist_current100; $216 = ((0) + 4|0); $expanded107 = $216; $expanded106 = (($expanded107) - 1)|0; $217 = (($215) + ($expanded106))|0; $218 = ((0) + 4|0); $expanded111 = $218; $expanded110 = (($expanded111) - 1)|0; $expanded109 = $expanded110 ^ -1; $219 = $217 & $expanded109; $220 = $219; $221 = HEAP32[$220>>2]|0; $arglist_next101 = ((($220)) + 4|0); HEAP32[$ap>>2] = $arglist_next101; $varet184 = $221; $222 = $varet184; $value182 = $222; $223 = $value182; $tobool185 = ($223|0)!=(0|0); if ($tobool185) { $224 = $st$addr; $silk_mode188 = ((($224)) + 8|0); $useInBandFEC189 = ((($silk_mode188)) + 40|0); $225 = HEAP32[$useInBandFEC189>>2]|0; $226 = $value182; HEAP32[$226>>2] = $225; label = 99; } else { label = 100; } break; } case 4014: { $arglist_current103 = HEAP32[$ap>>2]|0; $227 = $arglist_current103; $228 = ((0) + 4|0); $expanded114 = $228; $expanded113 = (($expanded114) - 1)|0; $229 = (($227) + ($expanded113))|0; $230 = ((0) + 4|0); $expanded118 = $230; $expanded117 = (($expanded118) - 1)|0; $expanded116 = $expanded117 ^ -1; $231 = $229 & $expanded116; $232 = $231; $233 = HEAP32[$232>>2]|0; $arglist_next104 = ((($232)) + 4|0); HEAP32[$ap>>2] = $arglist_next104; $varet193 = $233; $234 = $varet193; $value191 = $234; $235 = $value191; $cmp194 = ($235|0)<(0); $236 = $value191; $cmp197 = ($236|0)>(100); $or$cond18 = $cmp194 | $cmp197; if ($or$cond18) { label = 100; } else { $237 = $value191; $238 = $st$addr; $silk_mode201 = ((($238)) + 8|0); $packetLossPercentage = ((($silk_mode201)) + 32|0); HEAP32[$packetLossPercentage>>2] = $237; $239 = $celt_enc; $240 = $value191; HEAP32[$vararg_buffer105>>2] = $240; (_opus_custom_encoder_ctl($239,4014,$vararg_buffer105)|0); label = 99; } break; } case 4015: { $arglist_current109 = HEAP32[$ap>>2]|0; $241 = $arglist_current109; $242 = ((0) + 4|0); $expanded121 = $242; $expanded120 = (($expanded121) - 1)|0; $243 = (($241) + ($expanded120))|0; $244 = ((0) + 4|0); $expanded125 = $244; $expanded124 = (($expanded125) - 1)|0; $expanded123 = $expanded124 ^ -1; $245 = $243 & $expanded123; $246 = $245; $247 = HEAP32[$246>>2]|0; $arglist_next110 = ((($246)) + 4|0); HEAP32[$ap>>2] = $arglist_next110; $varet208 = $247; $248 = $varet208; $value206 = $248; $249 = $value206; $tobool209 = ($249|0)!=(0|0); if ($tobool209) { $250 = $st$addr; $silk_mode212 = ((($250)) + 8|0); $packetLossPercentage213 = ((($silk_mode212)) + 32|0); $251 = HEAP32[$packetLossPercentage213>>2]|0; $252 = $value206; HEAP32[$252>>2] = $251; label = 99; } else { label = 100; } break; } case 4006: { $arglist_current112 = HEAP32[$ap>>2]|0; $253 = $arglist_current112; $254 = ((0) + 4|0); $expanded128 = $254; $expanded127 = (($expanded128) - 1)|0; $255 = (($253) + ($expanded127))|0; $256 = ((0) + 4|0); $expanded132 = $256; $expanded131 = (($expanded132) - 1)|0; $expanded130 = $expanded131 ^ -1; $257 = $255 & $expanded130; $258 = $257; $259 = HEAP32[$258>>2]|0; $arglist_next113 = ((($258)) + 4|0); HEAP32[$ap>>2] = $arglist_next113; $varet217 = $259; $260 = $varet217; $value215 = $260; $261 = $value215; $cmp218 = ($261|0)<(0); $262 = $value215; $cmp221 = ($262|0)>(1); $or$cond20 = $cmp218 | $cmp221; if ($or$cond20) { label = 100; } else { $263 = $value215; $264 = $st$addr; $use_vbr = ((($264)) + 148|0); HEAP32[$use_vbr>>2] = $263; $265 = $value215; $sub = (1 - ($265))|0; $266 = $st$addr; $silk_mode225 = ((($266)) + 8|0); $useCBR = ((($silk_mode225)) + 52|0); HEAP32[$useCBR>>2] = $sub; label = 99; } break; } case 4007: { $arglist_current115 = HEAP32[$ap>>2]|0; $267 = $arglist_current115; $268 = ((0) + 4|0); $expanded135 = $268; $expanded134 = (($expanded135) - 1)|0; $269 = (($267) + ($expanded134))|0; $270 = ((0) + 4|0); $expanded139 = $270; $expanded138 = (($expanded139) - 1)|0; $expanded137 = $expanded138 ^ -1; $271 = $269 & $expanded137; $272 = $271; $273 = HEAP32[$272>>2]|0; $arglist_next116 = ((($272)) + 4|0); HEAP32[$ap>>2] = $arglist_next116; $varet229 = $273; $274 = $varet229; $value227 = $274; $275 = $value227; $tobool230 = ($275|0)!=(0|0); if ($tobool230) { $276 = $st$addr; $use_vbr233 = ((($276)) + 148|0); $277 = HEAP32[$use_vbr233>>2]|0; $278 = $value227; HEAP32[$278>>2] = $277; label = 99; } else { label = 100; } break; } case 11018: { $arglist_current118 = HEAP32[$ap>>2]|0; $279 = $arglist_current118; $280 = ((0) + 4|0); $expanded142 = $280; $expanded141 = (($expanded142) - 1)|0; $281 = (($279) + ($expanded141))|0; $282 = ((0) + 4|0); $expanded146 = $282; $expanded145 = (($expanded146) - 1)|0; $expanded144 = $expanded145 ^ -1; $283 = $281 & $expanded144; $284 = $283; $285 = HEAP32[$284>>2]|0; $arglist_next119 = ((($284)) + 4|0); HEAP32[$ap>>2] = $arglist_next119; $varet237 = $285; $286 = $varet237; $value235 = $286; $287 = $value235; $cmp238 = ($287|0)<(-1); $288 = $value235; $cmp241 = ($288|0)>(100); $or$cond22 = $cmp238 | $cmp241; if ($or$cond22) { label = 100; } else { $289 = $value235; $290 = $st$addr; $voice_ratio = ((($290)) + 140|0); HEAP32[$voice_ratio>>2] = $289; label = 99; } break; } case 11019: { $arglist_current121 = HEAP32[$ap>>2]|0; $291 = $arglist_current121; $292 = ((0) + 4|0); $expanded149 = $292; $expanded148 = (($expanded149) - 1)|0; $293 = (($291) + ($expanded148))|0; $294 = ((0) + 4|0); $expanded153 = $294; $expanded152 = (($expanded153) - 1)|0; $expanded151 = $expanded152 ^ -1; $295 = $293 & $expanded151; $296 = $295; $297 = HEAP32[$296>>2]|0; $arglist_next122 = ((($296)) + 4|0); HEAP32[$ap>>2] = $arglist_next122; $varet248 = $297; $298 = $varet248; $value246 = $298; $299 = $value246; $tobool249 = ($299|0)!=(0|0); if ($tobool249) { $300 = $st$addr; $voice_ratio252 = ((($300)) + 140|0); $301 = HEAP32[$voice_ratio252>>2]|0; $302 = $value246; HEAP32[$302>>2] = $301; label = 99; } else { label = 100; } break; } case 4020: { $arglist_current124 = HEAP32[$ap>>2]|0; $303 = $arglist_current124; $304 = ((0) + 4|0); $expanded156 = $304; $expanded155 = (($expanded156) - 1)|0; $305 = (($303) + ($expanded155))|0; $306 = ((0) + 4|0); $expanded160 = $306; $expanded159 = (($expanded160) - 1)|0; $expanded158 = $expanded159 ^ -1; $307 = $305 & $expanded158; $308 = $307; $309 = HEAP32[$308>>2]|0; $arglist_next125 = ((($308)) + 4|0); HEAP32[$ap>>2] = $arglist_next125; $varet256 = $309; $310 = $varet256; $value254 = $310; $311 = $value254; $cmp257 = ($311|0)<(0); $312 = $value254; $cmp260 = ($312|0)>(1); $or$cond24 = $cmp257 | $cmp260; if ($or$cond24) { label = 100; } else { $313 = $value254; $314 = $st$addr; $vbr_constraint = ((($314)) + 152|0); HEAP32[$vbr_constraint>>2] = $313; label = 99; } break; } case 4021: { $arglist_current127 = HEAP32[$ap>>2]|0; $315 = $arglist_current127; $316 = ((0) + 4|0); $expanded163 = $316; $expanded162 = (($expanded163) - 1)|0; $317 = (($315) + ($expanded162))|0; $318 = ((0) + 4|0); $expanded167 = $318; $expanded166 = (($expanded167) - 1)|0; $expanded165 = $expanded166 ^ -1; $319 = $317 & $expanded165; $320 = $319; $321 = HEAP32[$320>>2]|0; $arglist_next128 = ((($320)) + 4|0); HEAP32[$ap>>2] = $arglist_next128; $varet267 = $321; $322 = $varet267; $value265 = $322; $323 = $value265; $tobool268 = ($323|0)!=(0|0); if ($tobool268) { $324 = $st$addr; $vbr_constraint271 = ((($324)) + 152|0); $325 = HEAP32[$vbr_constraint271>>2]|0; $326 = $value265; HEAP32[$326>>2] = $325; label = 99; } else { label = 100; } break; } case 4024: { $arglist_current130 = HEAP32[$ap>>2]|0; $327 = $arglist_current130; $328 = ((0) + 4|0); $expanded170 = $328; $expanded169 = (($expanded170) - 1)|0; $329 = (($327) + ($expanded169))|0; $330 = ((0) + 4|0); $expanded174 = $330; $expanded173 = (($expanded174) - 1)|0; $expanded172 = $expanded173 ^ -1; $331 = $329 & $expanded172; $332 = $331; $333 = HEAP32[$332>>2]|0; $arglist_next131 = ((($332)) + 4|0); HEAP32[$ap>>2] = $arglist_next131; $varet275 = $333; $334 = $varet275; $value273 = $334; $335 = $value273; $cmp276 = ($335|0)!=(-1000); $336 = $value273; $cmp279 = ($336|0)!=(3001); $or$cond26 = $cmp276 & $cmp279; $337 = $value273; $cmp282 = ($337|0)!=(3002); $or$cond28 = $or$cond26 & $cmp282; if ($or$cond28) { label = 100; } else { $338 = $value273; $339 = $st$addr; $signal_type = ((($339)) + 124|0); HEAP32[$signal_type>>2] = $338; label = 99; } break; } case 4025: { $arglist_current133 = HEAP32[$ap>>2]|0; $340 = $arglist_current133; $341 = ((0) + 4|0); $expanded177 = $341; $expanded176 = (($expanded177) - 1)|0; $342 = (($340) + ($expanded176))|0; $343 = ((0) + 4|0); $expanded181 = $343; $expanded180 = (($expanded181) - 1)|0; $expanded179 = $expanded180 ^ -1; $344 = $342 & $expanded179; $345 = $344; $346 = HEAP32[$345>>2]|0; $arglist_next134 = ((($345)) + 4|0); HEAP32[$ap>>2] = $arglist_next134; $varet289 = $346; $347 = $varet289; $value287 = $347; $348 = $value287; $tobool290 = ($348|0)!=(0|0); if ($tobool290) { $349 = $st$addr; $signal_type293 = ((($349)) + 124|0); $350 = HEAP32[$signal_type293>>2]|0; $351 = $value287; HEAP32[$351>>2] = $350; label = 99; } else { label = 100; } break; } case 4027: { $arglist_current136 = HEAP32[$ap>>2]|0; $352 = $arglist_current136; $353 = ((0) + 4|0); $expanded184 = $353; $expanded183 = (($expanded184) - 1)|0; $354 = (($352) + ($expanded183))|0; $355 = ((0) + 4|0); $expanded188 = $355; $expanded187 = (($expanded188) - 1)|0; $expanded186 = $expanded187 ^ -1; $356 = $354 & $expanded186; $357 = $356; $358 = HEAP32[$357>>2]|0; $arglist_next137 = ((($357)) + 4|0); HEAP32[$ap>>2] = $arglist_next137; $varet297 = $358; $359 = $varet297; $value295 = $359; $360 = $value295; $tobool298 = ($360|0)!=(0|0); if ($tobool298) { $361 = $st$addr; $Fs = ((($361)) + 144|0); $362 = HEAP32[$Fs>>2]|0; $div = (($362|0) / 400)&-1; $363 = $value295; HEAP32[$363>>2] = $div; $364 = $st$addr; $application301 = ((($364)) + 108|0); $365 = HEAP32[$application301>>2]|0; $cmp302 = ($365|0)!=(2051); if ($cmp302) { $366 = $st$addr; $delay_compensation = ((($366)) + 116|0); $367 = HEAP32[$delay_compensation>>2]|0; $368 = $value295; $369 = HEAP32[$368>>2]|0; $add = (($369) + ($367))|0; HEAP32[$368>>2] = $add; label = 99; } else { label = 99; } } else { label = 100; } break; } case 4029: { $arglist_current139 = HEAP32[$ap>>2]|0; $370 = $arglist_current139; $371 = ((0) + 4|0); $expanded191 = $371; $expanded190 = (($expanded191) - 1)|0; $372 = (($370) + ($expanded190))|0; $373 = ((0) + 4|0); $expanded195 = $373; $expanded194 = (($expanded195) - 1)|0; $expanded193 = $expanded194 ^ -1; $374 = $372 & $expanded193; $375 = $374; $376 = HEAP32[$375>>2]|0; $arglist_next140 = ((($375)) + 4|0); HEAP32[$ap>>2] = $arglist_next140; $varet309 = $376; $377 = $varet309; $value307 = $377; $378 = $value307; $tobool310 = ($378|0)!=(0|0); if ($tobool310) { $379 = $st$addr; $Fs313 = ((($379)) + 144|0); $380 = HEAP32[$Fs313>>2]|0; $381 = $value307; HEAP32[$381>>2] = $380; label = 99; } else { label = 100; } break; } case 4031: { $arglist_current142 = HEAP32[$ap>>2]|0; $382 = $arglist_current142; $383 = ((0) + 4|0); $expanded198 = $383; $expanded197 = (($expanded198) - 1)|0; $384 = (($382) + ($expanded197))|0; $385 = ((0) + 4|0); $expanded202 = $385; $expanded201 = (($expanded202) - 1)|0; $expanded200 = $expanded201 ^ -1; $386 = $384 & $expanded200; $387 = $386; $388 = HEAP32[$387>>2]|0; $arglist_next143 = ((($387)) + 4|0); HEAP32[$ap>>2] = $arglist_next143; $varet317 = $388; $389 = $varet317; $value315 = $389; $390 = $value315; $tobool318 = ($390|0)!=(0|0); if ($tobool318) { $391 = $st$addr; $rangeFinal = ((($391)) + 18132|0); $392 = HEAP32[$rangeFinal>>2]|0; $393 = $value315; HEAP32[$393>>2] = $392; label = 99; } else { label = 100; } break; } case 4036: { $arglist_current145 = HEAP32[$ap>>2]|0; $394 = $arglist_current145; $395 = ((0) + 4|0); $expanded205 = $395; $expanded204 = (($expanded205) - 1)|0; $396 = (($394) + ($expanded204))|0; $397 = ((0) + 4|0); $expanded209 = $397; $expanded208 = (($expanded209) - 1)|0; $expanded207 = $expanded208 ^ -1; $398 = $396 & $expanded207; $399 = $398; $400 = HEAP32[$399>>2]|0; $arglist_next146 = ((($399)) + 4|0); HEAP32[$ap>>2] = $arglist_next146; $varet324 = $400; $401 = $varet324; $value322 = $401; $402 = $value322; $cmp325 = ($402|0)<(8); $403 = $value322; $cmp328 = ($403|0)>(24); $or$cond30 = $cmp325 | $cmp328; if ($or$cond30) { label = 100; } else { $404 = $value322; $405 = $st$addr; $lsb_depth = ((($405)) + 168|0); HEAP32[$lsb_depth>>2] = $404; label = 99; } break; } case 4037: { $arglist_current148 = HEAP32[$ap>>2]|0; $406 = $arglist_current148; $407 = ((0) + 4|0); $expanded212 = $407; $expanded211 = (($expanded212) - 1)|0; $408 = (($406) + ($expanded211))|0; $409 = ((0) + 4|0); $expanded216 = $409; $expanded215 = (($expanded216) - 1)|0; $expanded214 = $expanded215 ^ -1; $410 = $408 & $expanded214; $411 = $410; $412 = HEAP32[$411>>2]|0; $arglist_next149 = ((($411)) + 4|0); HEAP32[$ap>>2] = $arglist_next149; $varet335 = $412; $413 = $varet335; $value333 = $413; $414 = $value333; $tobool336 = ($414|0)!=(0|0); if ($tobool336) { $415 = $st$addr; $lsb_depth339 = ((($415)) + 168|0); $416 = HEAP32[$lsb_depth339>>2]|0; $417 = $value333; HEAP32[$417>>2] = $416; label = 99; } else { label = 100; } break; } case 4040: { $arglist_current151 = HEAP32[$ap>>2]|0; $418 = $arglist_current151; $419 = ((0) + 4|0); $expanded219 = $419; $expanded218 = (($expanded219) - 1)|0; $420 = (($418) + ($expanded218))|0; $421 = ((0) + 4|0); $expanded223 = $421; $expanded222 = (($expanded223) - 1)|0; $expanded221 = $expanded222 ^ -1; $422 = $420 & $expanded221; $423 = $422; $424 = HEAP32[$423>>2]|0; $arglist_next152 = ((($423)) + 4|0); HEAP32[$ap>>2] = $arglist_next152; $varet343 = $424; $425 = $varet343; $value341 = $425; $426 = $value341; $cmp344 = ($426|0)!=(5000); $427 = $value341; $cmp347 = ($427|0)!=(5001); $or$cond32 = $cmp344 & $cmp347; $428 = $value341; $cmp350 = ($428|0)!=(5002); $or$cond34 = $or$cond32 & $cmp350; $429 = $value341; $cmp353 = ($429|0)!=(5003); $or$cond36 = $or$cond34 & $cmp353; $430 = $value341; $cmp356 = ($430|0)!=(5004); $or$cond38 = $or$cond36 & $cmp356; $431 = $value341; $cmp359 = ($431|0)!=(5005); $or$cond40 = $or$cond38 & $cmp359; $432 = $value341; $cmp362 = ($432|0)!=(5006); $or$cond42 = $or$cond40 & $cmp362; $433 = $value341; $cmp365 = ($433|0)!=(5007); $or$cond44 = $or$cond42 & $cmp365; $434 = $value341; $cmp368 = ($434|0)!=(5008); $or$cond46 = $or$cond44 & $cmp368; $435 = $value341; $cmp371 = ($435|0)!=(5009); $or$cond48 = $or$cond46 & $cmp371; if ($or$cond48) { label = 100; } else { $436 = $value341; $437 = $st$addr; $variable_duration = ((($437)) + 156|0); HEAP32[$variable_duration>>2] = $436; $438 = $celt_enc; $439 = $value341; HEAP32[$vararg_buffer153>>2] = $439; (_opus_custom_encoder_ctl($438,4040,$vararg_buffer153)|0); label = 99; } break; } case 4041: { $arglist_current157 = HEAP32[$ap>>2]|0; $440 = $arglist_current157; $441 = ((0) + 4|0); $expanded226 = $441; $expanded225 = (($expanded226) - 1)|0; $442 = (($440) + ($expanded225))|0; $443 = ((0) + 4|0); $expanded230 = $443; $expanded229 = (($expanded230) - 1)|0; $expanded228 = $expanded229 ^ -1; $444 = $442 & $expanded228; $445 = $444; $446 = HEAP32[$445>>2]|0; $arglist_next158 = ((($445)) + 4|0); HEAP32[$ap>>2] = $arglist_next158; $varet381 = $446; $447 = $varet381; $value379 = $447; $448 = $value379; $tobool382 = ($448|0)!=(0|0); if ($tobool382) { $449 = $st$addr; $variable_duration385 = ((($449)) + 156|0); $450 = HEAP32[$variable_duration385>>2]|0; $451 = $value379; HEAP32[$451>>2] = $450; label = 99; } else { label = 100; } break; } case 4042: { $arglist_current160 = HEAP32[$ap>>2]|0; $452 = $arglist_current160; $453 = ((0) + 4|0); $expanded233 = $453; $expanded232 = (($expanded233) - 1)|0; $454 = (($452) + ($expanded232))|0; $455 = ((0) + 4|0); $expanded237 = $455; $expanded236 = (($expanded237) - 1)|0; $expanded235 = $expanded236 ^ -1; $456 = $454 & $expanded235; $457 = $456; $458 = HEAP32[$457>>2]|0; $arglist_next161 = ((($457)) + 4|0); HEAP32[$ap>>2] = $arglist_next161; $varet389 = $458; $459 = $varet389; $value387 = $459; $460 = $value387; $cmp390 = ($460|0)>(1); $461 = $value387; $cmp393 = ($461|0)<(0); $or$cond50 = $cmp390 | $cmp393; if ($or$cond50) { label = 100; } else { $462 = $value387; $463 = $st$addr; $silk_mode397 = ((($463)) + 8|0); $reducedDependency = ((($silk_mode397)) + 68|0); HEAP32[$reducedDependency>>2] = $462; label = 99; } break; } case 4043: { $arglist_current163 = HEAP32[$ap>>2]|0; $464 = $arglist_current163; $465 = ((0) + 4|0); $expanded240 = $465; $expanded239 = (($expanded240) - 1)|0; $466 = (($464) + ($expanded239))|0; $467 = ((0) + 4|0); $expanded244 = $467; $expanded243 = (($expanded244) - 1)|0; $expanded242 = $expanded243 ^ -1; $468 = $466 & $expanded242; $469 = $468; $470 = HEAP32[$469>>2]|0; $arglist_next164 = ((($469)) + 4|0); HEAP32[$ap>>2] = $arglist_next164; $varet401 = $470; $471 = $varet401; $value399 = $471; $472 = $value399; $tobool402 = ($472|0)!=(0|0); if ($tobool402) { $473 = $st$addr; $silk_mode405 = ((($473)) + 8|0); $reducedDependency406 = ((($silk_mode405)) + 68|0); $474 = HEAP32[$reducedDependency406>>2]|0; $475 = $value399; HEAP32[$475>>2] = $474; label = 99; } else { label = 100; } break; } case 4046: { $arglist_current166 = HEAP32[$ap>>2]|0; $476 = $arglist_current166; $477 = ((0) + 4|0); $expanded247 = $477; $expanded246 = (($expanded247) - 1)|0; $478 = (($476) + ($expanded246))|0; $479 = ((0) + 4|0); $expanded251 = $479; $expanded250 = (($expanded251) - 1)|0; $expanded249 = $expanded250 ^ -1; $480 = $478 & $expanded249; $481 = $480; $482 = HEAP32[$481>>2]|0; $arglist_next167 = ((($481)) + 4|0); HEAP32[$ap>>2] = $arglist_next167; $varet410 = $482; $483 = $varet410; $value408 = $483; $484 = $value408; $cmp411 = ($484|0)<(0); $485 = $value408; $cmp414 = ($485|0)>(1); $or$cond52 = $cmp411 | $cmp414; if ($or$cond52) { label = 100; } else { $486 = $celt_enc; $487 = $value408; HEAP32[$vararg_buffer168>>2] = $487; (_opus_custom_encoder_ctl($486,4046,$vararg_buffer168)|0); label = 99; } break; } case 4047: { $arglist_current172 = HEAP32[$ap>>2]|0; $488 = $arglist_current172; $489 = ((0) + 4|0); $expanded254 = $489; $expanded253 = (($expanded254) - 1)|0; $490 = (($488) + ($expanded253))|0; $491 = ((0) + 4|0); $expanded258 = $491; $expanded257 = (($expanded258) - 1)|0; $expanded256 = $expanded257 ^ -1; $492 = $490 & $expanded256; $493 = $492; $494 = HEAP32[$493>>2]|0; $arglist_next173 = ((($493)) + 4|0); HEAP32[$ap>>2] = $arglist_next173; $varet424 = $494; $495 = $varet424; $value422 = $495; $496 = $value422; $tobool425 = ($496|0)!=(0|0); if ($tobool425) { $497 = $celt_enc; $498 = $value422; $499 = $value422; $500 = $value422; $sub$ptr$lhs$cast = $499; $sub$ptr$rhs$cast = $500; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $sub$ptr$div = (($sub$ptr$sub|0) / 4)&-1; $add$ptr428 = (($498) + ($sub$ptr$div<<2)|0); HEAP32[$vararg_buffer174>>2] = $add$ptr428; (_opus_custom_encoder_ctl($497,4047,$vararg_buffer174)|0); label = 99; } else { label = 100; } break; } case 4028: { $501 = $st$addr; $502 = $st$addr; $silk_enc_offset = ((($502)) + 4|0); $503 = HEAP32[$silk_enc_offset>>2]|0; $add$ptr431 = (($501) + ($503)|0); $silk_enc = $add$ptr431; $504 = $st$addr; $analysis432 = ((($504)) + 188|0); _tonality_analysis_reset($analysis432); $505 = $st$addr; $stream_channels = ((($505)) + 14188|0); $start = $stream_channels; $506 = $start; $507 = $start; $508 = $st$addr; $sub$ptr$lhs$cast433 = $507; $sub$ptr$rhs$cast434 = $508; $sub$ptr$sub435 = (($sub$ptr$lhs$cast433) - ($sub$ptr$rhs$cast434))|0; $sub436 = (18136 - ($sub$ptr$sub435))|0; $mul437 = $sub436; _memset(($506|0),0,($mul437|0))|0; $509 = $celt_enc; (_opus_custom_encoder_ctl($509,4028,$vararg_buffer177)|0); $510 = $silk_enc; $511 = $st$addr; $arch = ((($511)) + 180|0); $512 = HEAP32[$arch>>2]|0; (_silk_InitEncoder($510,$512,$dummy)|0); $513 = $st$addr; $channels440 = ((($513)) + 112|0); $514 = HEAP32[$channels440>>2]|0; $515 = $st$addr; $stream_channels441 = ((($515)) + 14188|0); HEAP32[$stream_channels441>>2] = $514; $516 = $st$addr; $hybrid_stereo_width_Q14 = ((($516)) + 14192|0); HEAP16[$hybrid_stereo_width_Q14>>1] = 16384; $517 = $st$addr; $prev_HB_gain = ((($517)) + 14200|0); HEAPF32[$prev_HB_gain>>2] = 1.0; $518 = $st$addr; $first442 = ((($518)) + 14248|0); HEAP32[$first442>>2] = 1; $519 = $st$addr; $mode = ((($519)) + 14220|0); HEAP32[$mode>>2] = 1001; $520 = $st$addr; $bandwidth443 = ((($520)) + 14236|0); HEAP32[$bandwidth443>>2] = 1105; $call444 = (_silk_lin2log(60)|0); $shl = $call444 << 8; $521 = $st$addr; $variable_HP_smth2_Q15 = ((($521)) + 14196|0); HEAP32[$variable_HP_smth2_Q15>>2] = $shl; label = 99; break; } case 11002: { $arglist_current180 = HEAP32[$ap>>2]|0; $522 = $arglist_current180; $523 = ((0) + 4|0); $expanded261 = $523; $expanded260 = (($expanded261) - 1)|0; $524 = (($522) + ($expanded260))|0; $525 = ((0) + 4|0); $expanded265 = $525; $expanded264 = (($expanded265) - 1)|0; $expanded263 = $expanded264 ^ -1; $526 = $524 & $expanded263; $527 = $526; $528 = HEAP32[$527>>2]|0; $arglist_next181 = ((($527)) + 4|0); HEAP32[$ap>>2] = $arglist_next181; $varet448 = $528; $529 = $varet448; $value446 = $529; $530 = $value446; $cmp449 = ($530|0)<(1000); $531 = $value446; $cmp452 = ($531|0)>(1002); $or$cond54 = $cmp449 | $cmp452; $532 = $value446; $cmp455 = ($532|0)!=(-1000); $or$cond56 = $or$cond54 & $cmp455; if ($or$cond56) { label = 100; } else { $533 = $value446; $534 = $st$addr; $user_forced_mode = ((($534)) + 136|0); HEAP32[$user_forced_mode>>2] = $533; label = 99; } break; } case 10024: { $arglist_current183 = HEAP32[$ap>>2]|0; $535 = $arglist_current183; $536 = ((0) + 4|0); $expanded268 = $536; $expanded267 = (($expanded268) - 1)|0; $537 = (($535) + ($expanded267))|0; $538 = ((0) + 4|0); $expanded272 = $538; $expanded271 = (($expanded272) - 1)|0; $expanded270 = $expanded271 ^ -1; $539 = $537 & $expanded270; $540 = $539; $541 = HEAP32[$540>>2]|0; $arglist_next184 = ((($540)) + 4|0); HEAP32[$ap>>2] = $arglist_next184; $varet462 = $541; $542 = $varet462; $value460 = $542; $543 = $value460; $544 = $st$addr; $lfe = ((($544)) + 176|0); HEAP32[$lfe>>2] = $543; $545 = $celt_enc; $546 = $value460; HEAP32[$vararg_buffer185>>2] = $546; $call465 = (_opus_custom_encoder_ctl($545,10024,$vararg_buffer185)|0); $ret = $call465; label = 99; break; } case 10026: { $arglist_current189 = HEAP32[$ap>>2]|0; $547 = $arglist_current189; $548 = ((0) + 4|0); $expanded275 = $548; $expanded274 = (($expanded275) - 1)|0; $549 = (($547) + ($expanded274))|0; $550 = ((0) + 4|0); $expanded279 = $550; $expanded278 = (($expanded279) - 1)|0; $expanded277 = $expanded278 ^ -1; $551 = $549 & $expanded277; $552 = $551; $553 = HEAP32[$552>>2]|0; $arglist_next190 = ((($552)) + 4|0); HEAP32[$ap>>2] = $arglist_next190; $varet469 = $553; $554 = $varet469; $value467 = $554; $555 = $value467; $556 = $st$addr; $energy_masking = ((($556)) + 14252|0); HEAP32[$energy_masking>>2] = $555; $557 = $celt_enc; $558 = $value467; $559 = $value467; $560 = $value467; $sub$ptr$lhs$cast470 = $559; $sub$ptr$rhs$cast471 = $560; $sub$ptr$sub472 = (($sub$ptr$lhs$cast470) - ($sub$ptr$rhs$cast471))|0; $sub$ptr$div473 = (($sub$ptr$sub472|0) / 4)&-1; $add$ptr474 = (($558) + ($sub$ptr$div473<<2)|0); HEAP32[$vararg_buffer191>>2] = $add$ptr474; $call475 = (_opus_custom_encoder_ctl($557,10026,$vararg_buffer191)|0); $ret = $call475; label = 99; break; } case 10015: { $arglist_current195 = HEAP32[$ap>>2]|0; $561 = $arglist_current195; $562 = ((0) + 4|0); $expanded282 = $562; $expanded281 = (($expanded282) - 1)|0; $563 = (($561) + ($expanded281))|0; $564 = ((0) + 4|0); $expanded286 = $564; $expanded285 = (($expanded286) - 1)|0; $expanded284 = $expanded285 ^ -1; $565 = $563 & $expanded284; $566 = $565; $567 = HEAP32[$566>>2]|0; $arglist_next196 = ((($566)) + 4|0); HEAP32[$ap>>2] = $arglist_next196; $varet479 = $567; $568 = $varet479; $value477 = $568; $569 = $value477; $tobool480 = ($569|0)!=(0|0); if ($tobool480) { $570 = $celt_enc; $571 = $value477; $572 = $value477; $573 = $value477; $sub$ptr$lhs$cast483 = $572; $sub$ptr$rhs$cast484 = $573; $sub$ptr$sub485 = (($sub$ptr$lhs$cast483) - ($sub$ptr$rhs$cast484))|0; $sub$ptr$div486 = (($sub$ptr$sub485|0) / 4)&-1; $add$ptr487 = (($571) + ($sub$ptr$div486<<2)|0); HEAP32[$vararg_buffer197>>2] = $add$ptr487; $call488 = (_opus_custom_encoder_ctl($570,10015,$vararg_buffer197)|0); $ret = $call488; label = 99; } else { label = 100; } break; } default: { $ret = -5; label = 99; } } } while(0); if ((label|0) == 99) { $574 = $ret; $retval = $574; $575 = $retval; STACKTOP = sp;return ($575|0); } else if ((label|0) == 100) { $retval = -1; $575 = $retval; STACKTOP = sp;return ($575|0); } return (0)|0; } function _opus_encoder_destroy($st) { $st = $st|0; var $0 = 0, $st$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $st$addr = $st; $0 = $st$addr; _opus_free_11($0); STACKTOP = sp;return; } function _opus_repacketizer_init($rp) { $rp = $rp|0; var $0 = 0, $1 = 0, $nb_frames = 0, $rp$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $rp$addr = $rp; $0 = $rp$addr; $nb_frames = ((($0)) + 4|0); HEAP32[$nb_frames>>2] = 0; $1 = $rp$addr; STACKTOP = sp;return ($1|0); } function _opus_repacketizer_cat($rp,$data,$len) { $rp = $rp|0; $data = $data|0; $len = $len|0; var $0 = 0, $1 = 0, $2 = 0, $call = 0, $data$addr = 0, $len$addr = 0, $rp$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $rp$addr = $rp; $data$addr = $data; $len$addr = $len; $0 = $rp$addr; $1 = $data$addr; $2 = $len$addr; $call = (_opus_repacketizer_cat_impl($0,$1,$2,0)|0); STACKTOP = sp;return ($call|0); } function _opus_repacketizer_cat_impl($rp,$data,$len,$self_delimited) { $rp = $rp|0; $data = $data|0; $len = $len|0; $self_delimited = $self_delimited|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $add34 = 0, $and = 0, $and6 = 0, $arrayidx24 = 0; var $arrayidx27 = 0, $call = 0, $call12 = 0, $call28 = 0, $cmp = 0, $cmp1 = 0, $cmp13 = 0, $cmp19 = 0, $cmp29 = 0, $cmp7 = 0, $conv = 0, $conv5 = 0, $curr_nb_frames = 0, $data$addr = 0, $frames = 0, $framesize = 0, $framesize18 = 0, $len$addr = 0, $len25 = 0, $mul = 0; var $nb_frames = 0, $nb_frames17 = 0, $nb_frames23 = 0, $nb_frames26 = 0, $nb_frames33 = 0, $ret = 0, $retval = 0, $rp$addr = 0, $self_delimited$addr = 0, $tmp_toc = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $tmp_toc = sp + 28|0; $rp$addr = $rp; $data$addr = $data; $len$addr = $len; $self_delimited$addr = $self_delimited; $0 = $len$addr; $cmp = ($0|0)<(1); if ($cmp) { $retval = -4; $34 = $retval; STACKTOP = sp;return ($34|0); } $1 = $rp$addr; $nb_frames = ((($1)) + 4|0); $2 = HEAP32[$nb_frames>>2]|0; $cmp1 = ($2|0)==(0); if ($cmp1) { $3 = $data$addr; $4 = HEAP8[$3>>0]|0; $5 = $rp$addr; HEAP8[$5>>0] = $4; $6 = $data$addr; $call = (_opus_packet_get_samples_per_frame($6,8000)|0); $7 = $rp$addr; $framesize = ((($7)) + 296|0); HEAP32[$framesize>>2] = $call; } else { $8 = $rp$addr; $9 = HEAP8[$8>>0]|0; $conv = $9&255; $and = $conv & 252; $10 = $data$addr; $11 = HEAP8[$10>>0]|0; $conv5 = $11&255; $and6 = $conv5 & 252; $cmp7 = ($and|0)!=($and6|0); if ($cmp7) { $retval = -4; $34 = $retval; STACKTOP = sp;return ($34|0); } } $12 = $data$addr; $13 = $len$addr; $call12 = (_opus_packet_get_nb_frames($12,$13)|0); $curr_nb_frames = $call12; $14 = $curr_nb_frames; $cmp13 = ($14|0)<(1); if ($cmp13) { $retval = -4; $34 = $retval; STACKTOP = sp;return ($34|0); } $15 = $curr_nb_frames; $16 = $rp$addr; $nb_frames17 = ((($16)) + 4|0); $17 = HEAP32[$nb_frames17>>2]|0; $add = (($15) + ($17))|0; $18 = $rp$addr; $framesize18 = ((($18)) + 296|0); $19 = HEAP32[$framesize18>>2]|0; $mul = Math_imul($add, $19)|0; $cmp19 = ($mul|0)>(960); if ($cmp19) { $retval = -4; $34 = $retval; STACKTOP = sp;return ($34|0); } $20 = $data$addr; $21 = $len$addr; $22 = $self_delimited$addr; $23 = $rp$addr; $frames = ((($23)) + 8|0); $24 = $rp$addr; $nb_frames23 = ((($24)) + 4|0); $25 = HEAP32[$nb_frames23>>2]|0; $arrayidx24 = (($frames) + ($25<<2)|0); $26 = $rp$addr; $len25 = ((($26)) + 200|0); $27 = $rp$addr; $nb_frames26 = ((($27)) + 4|0); $28 = HEAP32[$nb_frames26>>2]|0; $arrayidx27 = (($len25) + ($28<<1)|0); $call28 = (_opus_packet_parse_impl($20,$21,$22,$tmp_toc,$arrayidx24,$arrayidx27,0,0)|0); $ret = $call28; $29 = $ret; $cmp29 = ($29|0)<(1); if ($cmp29) { $30 = $ret; $retval = $30; $34 = $retval; STACKTOP = sp;return ($34|0); } else { $31 = $curr_nb_frames; $32 = $rp$addr; $nb_frames33 = ((($32)) + 4|0); $33 = HEAP32[$nb_frames33>>2]|0; $add34 = (($33) + ($31))|0; HEAP32[$nb_frames33>>2] = $add34; $retval = 0; $34 = $retval; STACKTOP = sp;return ($34|0); } return (0)|0; } function _opus_repacketizer_out_range_impl($rp,$begin,$end,$data,$maxlen,$self_delimited,$pad) { $rp = $rp|0; $begin = $begin|0; $end = $end|0; $data = $data|0; $maxlen = $maxlen|0; $self_delimited = $self_delimited|0; $pad = $pad|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; var $add = 0, $add$ptr = 0, $add$ptr197 = 0, $add$ptr209 = 0, $add$ptr224 = 0, $add$ptr230 = 0, $add$ptr7 = 0, $add$ptr75 = 0, $add108 = 0, $add118 = 0, $add121 = 0, $add122 = 0, $add129 = 0, $add147 = 0, $add148 = 0, $add18 = 0, $add185 = 0, $add19 = 0, $add221 = 0, $add39 = 0; var $add40 = 0, $add55 = 0, $add56 = 0, $add61 = 0, $add62 = 0, $add93 = 0, $and = 0, $and136 = 0, $and155 = 0, $and47 = 0, $and69 = 0, $arrayidx = 0, $arrayidx114 = 0, $arrayidx119 = 0, $arrayidx127 = 0, $arrayidx167 = 0, $arrayidx194 = 0, $arrayidx206 = 0, $arrayidx215 = 0, $arrayidx216 = 0; var $arrayidx219 = 0, $arrayidx222 = 0, $arrayidx30 = 0, $arrayidx53 = 0, $arrayidx89 = 0, $arrayidx98 = 0, $begin$addr = 0, $call = 0, $call196 = 0, $call208 = 0, $cmp = 0, $cmp1 = 0, $cmp10 = 0, $cmp102 = 0, $cmp111 = 0, $cmp116 = 0, $cmp13 = 0, $cmp130 = 0, $cmp149 = 0, $cmp164 = 0; var $cmp173 = 0, $cmp191 = 0, $cmp20 = 0, $cmp212 = 0, $cmp231 = 0, $cmp27 = 0, $cmp3 = 0, $cmp34 = 0, $cmp41 = 0, $cmp59 = 0, $cmp63 = 0, $cmp79 = 0, $cmp83 = 0, $cmp91 = 0, $cmp96 = 0, $cond = 0, $conv = 0, $conv101 = 0, $conv11 = 0, $conv115 = 0; var $conv117 = 0, $conv120 = 0, $conv128 = 0, $conv135 = 0, $conv138 = 0, $conv141 = 0, $conv145 = 0, $conv154 = 0, $conv157 = 0, $conv159 = 0, $conv168 = 0, $conv17 = 0, $conv170 = 0, $conv183 = 0, $conv195 = 0, $conv207 = 0, $conv217 = 0, $conv223 = 0, $conv24 = 0, $conv25 = 0; var $conv31 = 0, $conv33 = 0, $conv38 = 0, $conv46 = 0, $conv48 = 0, $conv54 = 0, $conv58 = 0, $conv60 = 0, $conv68 = 0, $conv71 = 0, $conv74 = 0, $conv90 = 0, $conv92 = 0, $conv99 = 0, $count = 0, $data$addr = 0, $div = 0, $end$addr = 0, $frames = 0, $frames5 = 0; var $i = 0, $inc = 0, $inc124 = 0, $inc178 = 0, $inc199 = 0, $inc226 = 0, $incdec$ptr = 0, $incdec$ptr139 = 0, $incdec$ptr142 = 0, $incdec$ptr158 = 0, $incdec$ptr160 = 0, $incdec$ptr176 = 0, $incdec$ptr184 = 0, $incdec$ptr233 = 0, $incdec$ptr49 = 0, $incdec$ptr72 = 0, $len = 0, $len4 = 0, $maxlen$addr = 0, $mul = 0; var $mul146 = 0, $mul180 = 0, $mul218 = 0, $mul220 = 0, $nb_255s = 0, $nb_frames = 0, $or = 0, $or137 = 0, $or140 = 0, $or156 = 0, $or169 = 0, $or70 = 0, $pad$addr = 0, $pad_amount = 0, $ptr = 0, $retval = 0, $rp$addr = 0, $sdlen = 0, $self_delimited$addr = 0, $sub = 0; var $sub$ptr$lhs$cast = 0, $sub$ptr$rhs$cast = 0, $sub$ptr$sub = 0, $sub110 = 0, $sub126 = 0, $sub163 = 0, $sub171 = 0, $sub181 = 0, $sub182 = 0, $sub190 = 0, $sub205 = 0, $sub88 = 0, $sub9 = 0, $tobool = 0, $tobool106 = 0, $tobool162 = 0, $tobool187 = 0, $tobool203 = 0, $tobool228 = 0, $tobool82 = 0; var $tobool86 = 0, $tot_size = 0, $vbr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(80|0); $rp$addr = $rp; $begin$addr = $begin; $end$addr = $end; $data$addr = $data; $maxlen$addr = $maxlen; $self_delimited$addr = $self_delimited; $pad$addr = $pad; $0 = $begin$addr; $cmp = ($0|0)<(0); if (!($cmp)) { $1 = $begin$addr; $2 = $end$addr; $cmp1 = ($1|0)>=($2|0); if (!($cmp1)) { $3 = $end$addr; $4 = $rp$addr; $nb_frames = ((($4)) + 4|0); $5 = HEAP32[$nb_frames>>2]|0; $cmp3 = ($3|0)>($5|0); if (!($cmp3)) { $6 = $end$addr; $7 = $begin$addr; $sub = (($6) - ($7))|0; $count = $sub; $8 = $rp$addr; $len4 = ((($8)) + 200|0); $9 = $begin$addr; $add$ptr = (($len4) + ($9<<1)|0); $len = $add$ptr; $10 = $rp$addr; $frames5 = ((($10)) + 8|0); $11 = $begin$addr; $add$ptr7 = (($frames5) + ($11<<2)|0); $frames = $add$ptr7; $12 = $self_delimited$addr; $tobool = ($12|0)!=(0); if ($tobool) { $13 = $len; $14 = $count; $sub9 = (($14) - 1)|0; $arrayidx = (($13) + ($sub9<<1)|0); $15 = HEAP16[$arrayidx>>1]|0; $conv = $15 << 16 >> 16; $cmp10 = ($conv|0)>=(252); $conv11 = $cmp10&1; $add = (1 + ($conv11))|0; $tot_size = $add; } else { $tot_size = 0; } $16 = $data$addr; $ptr = $16; $17 = $count; $cmp13 = ($17|0)==(1); do { if ($cmp13) { $18 = $len; $19 = HEAP16[$18>>1]|0; $conv17 = $19 << 16 >> 16; $add18 = (($conv17) + 1)|0; $20 = $tot_size; $add19 = (($20) + ($add18))|0; $tot_size = $add19; $21 = $tot_size; $22 = $maxlen$addr; $cmp20 = ($21|0)>($22|0); if (!($cmp20)) { $23 = $rp$addr; $24 = HEAP8[$23>>0]|0; $conv24 = $24&255; $and = $conv24 & 252; $conv25 = $and&255; $25 = $ptr; $incdec$ptr = ((($25)) + 1|0); $ptr = $incdec$ptr; HEAP8[$25>>0] = $conv25; break; } $retval = -2; $159 = $retval; STACKTOP = sp;return ($159|0); } else { $26 = $count; $cmp27 = ($26|0)==(2); if ($cmp27) { $27 = $len; $arrayidx30 = ((($27)) + 2|0); $28 = HEAP16[$arrayidx30>>1]|0; $conv31 = $28 << 16 >> 16; $29 = $len; $30 = HEAP16[$29>>1]|0; $conv33 = $30 << 16 >> 16; $cmp34 = ($conv31|0)==($conv33|0); $31 = $len; $32 = HEAP16[$31>>1]|0; $conv38 = $32 << 16 >> 16; if ($cmp34) { $mul = $conv38<<1; $add39 = (($mul) + 1)|0; $33 = $tot_size; $add40 = (($33) + ($add39))|0; $tot_size = $add40; $34 = $tot_size; $35 = $maxlen$addr; $cmp41 = ($34|0)>($35|0); if (!($cmp41)) { $36 = $rp$addr; $37 = HEAP8[$36>>0]|0; $conv46 = $37&255; $and47 = $conv46 & 252; $or = $and47 | 1; $conv48 = $or&255; $38 = $ptr; $incdec$ptr49 = ((($38)) + 1|0); $ptr = $incdec$ptr49; HEAP8[$38>>0] = $conv48; break; } $retval = -2; $159 = $retval; STACKTOP = sp;return ($159|0); } else { $39 = $len; $arrayidx53 = ((($39)) + 2|0); $40 = HEAP16[$arrayidx53>>1]|0; $conv54 = $40 << 16 >> 16; $add55 = (($conv38) + ($conv54))|0; $add56 = (($add55) + 2)|0; $41 = $len; $42 = HEAP16[$41>>1]|0; $conv58 = $42 << 16 >> 16; $cmp59 = ($conv58|0)>=(252); $conv60 = $cmp59&1; $add61 = (($add56) + ($conv60))|0; $43 = $tot_size; $add62 = (($43) + ($add61))|0; $tot_size = $add62; $44 = $tot_size; $45 = $maxlen$addr; $cmp63 = ($44|0)>($45|0); if (!($cmp63)) { $46 = $rp$addr; $47 = HEAP8[$46>>0]|0; $conv68 = $47&255; $and69 = $conv68 & 252; $or70 = $and69 | 2; $conv71 = $or70&255; $48 = $ptr; $incdec$ptr72 = ((($48)) + 1|0); $ptr = $incdec$ptr72; HEAP8[$48>>0] = $conv71; $49 = $len; $50 = HEAP16[$49>>1]|0; $conv74 = $50 << 16 >> 16; $51 = $ptr; $call = (_encode_size($conv74,$51)|0); $52 = $ptr; $add$ptr75 = (($52) + ($call)|0); $ptr = $add$ptr75; break; } $retval = -2; $159 = $retval; STACKTOP = sp;return ($159|0); } } } } while(0); $53 = $count; $cmp79 = ($53|0)>(2); if ($cmp79) { label = 23; } else { $54 = $pad$addr; $tobool82 = ($54|0)!=(0); if ($tobool82) { $55 = $tot_size; $56 = $maxlen$addr; $cmp83 = ($55|0)<($56|0); if ($cmp83) { label = 23; } } } L32: do { if ((label|0) == 23) { $pad_amount = 0; $57 = $data$addr; $ptr = $57; $58 = $self_delimited$addr; $tobool86 = ($58|0)!=(0); if ($tobool86) { $59 = $len; $60 = $count; $sub88 = (($60) - 1)|0; $arrayidx89 = (($59) + ($sub88<<1)|0); $61 = HEAP16[$arrayidx89>>1]|0; $conv90 = $61 << 16 >> 16; $cmp91 = ($conv90|0)>=(252); $conv92 = $cmp91&1; $add93 = (1 + ($conv92))|0; $tot_size = $add93; } else { $tot_size = 0; } $vbr = 0; $i = 1; while(1) { $62 = $i; $63 = $count; $cmp96 = ($62|0)<($63|0); if (!($cmp96)) { break; } $64 = $len; $65 = $i; $arrayidx98 = (($64) + ($65<<1)|0); $66 = HEAP16[$arrayidx98>>1]|0; $conv99 = $66 << 16 >> 16; $67 = $len; $68 = HEAP16[$67>>1]|0; $conv101 = $68 << 16 >> 16; $cmp102 = ($conv99|0)!=($conv101|0); if ($cmp102) { label = 29; break; } $69 = $i; $inc = (($69) + 1)|0; $i = $inc; } if ((label|0) == 29) { $vbr = 1; } $70 = $vbr; $tobool106 = ($70|0)!=(0); do { if ($tobool106) { $71 = $tot_size; $add108 = (($71) + 2)|0; $tot_size = $add108; $i = 0; while(1) { $72 = $i; $73 = $count; $sub110 = (($73) - 1)|0; $cmp111 = ($72|0)<($sub110|0); $74 = $len; if (!($cmp111)) { break; } $75 = $i; $arrayidx114 = (($74) + ($75<<1)|0); $76 = HEAP16[$arrayidx114>>1]|0; $conv115 = $76 << 16 >> 16; $cmp116 = ($conv115|0)>=(252); $conv117 = $cmp116&1; $add118 = (1 + ($conv117))|0; $77 = $len; $78 = $i; $arrayidx119 = (($77) + ($78<<1)|0); $79 = HEAP16[$arrayidx119>>1]|0; $conv120 = $79 << 16 >> 16; $add121 = (($add118) + ($conv120))|0; $80 = $tot_size; $add122 = (($80) + ($add121))|0; $tot_size = $add122; $81 = $i; $inc124 = (($81) + 1)|0; $i = $inc124; } $82 = $count; $sub126 = (($82) - 1)|0; $arrayidx127 = (($74) + ($sub126<<1)|0); $83 = HEAP16[$arrayidx127>>1]|0; $conv128 = $83 << 16 >> 16; $84 = $tot_size; $add129 = (($84) + ($conv128))|0; $tot_size = $add129; $85 = $tot_size; $86 = $maxlen$addr; $cmp130 = ($85|0)>($86|0); if (!($cmp130)) { $87 = $rp$addr; $88 = HEAP8[$87>>0]|0; $conv135 = $88&255; $and136 = $conv135 & 252; $or137 = $and136 | 3; $conv138 = $or137&255; $89 = $ptr; $incdec$ptr139 = ((($89)) + 1|0); $ptr = $incdec$ptr139; HEAP8[$89>>0] = $conv138; $90 = $count; $or140 = $90 | 128; $conv141 = $or140&255; $91 = $ptr; $incdec$ptr142 = ((($91)) + 1|0); $ptr = $incdec$ptr142; HEAP8[$91>>0] = $conv141; break; } $retval = -2; $159 = $retval; STACKTOP = sp;return ($159|0); } else { $92 = $count; $93 = $len; $94 = HEAP16[$93>>1]|0; $conv145 = $94 << 16 >> 16; $mul146 = Math_imul($92, $conv145)|0; $add147 = (($mul146) + 2)|0; $95 = $tot_size; $add148 = (($95) + ($add147))|0; $tot_size = $add148; $96 = $tot_size; $97 = $maxlen$addr; $cmp149 = ($96|0)>($97|0); if (!($cmp149)) { $98 = $rp$addr; $99 = HEAP8[$98>>0]|0; $conv154 = $99&255; $and155 = $conv154 & 252; $or156 = $and155 | 3; $conv157 = $or156&255; $100 = $ptr; $incdec$ptr158 = ((($100)) + 1|0); $ptr = $incdec$ptr158; HEAP8[$100>>0] = $conv157; $101 = $count; $conv159 = $101&255; $102 = $ptr; $incdec$ptr160 = ((($102)) + 1|0); $ptr = $incdec$ptr160; HEAP8[$102>>0] = $conv159; break; } $retval = -2; $159 = $retval; STACKTOP = sp;return ($159|0); } } while(0); $103 = $pad$addr; $tobool162 = ($103|0)!=(0); if ($tobool162) { $104 = $maxlen$addr; $105 = $tot_size; $sub163 = (($104) - ($105))|0; $cond = $sub163; } else { $cond = 0; } $pad_amount = $cond; $106 = $pad_amount; $cmp164 = ($106|0)!=(0); if ($cmp164) { $107 = $data$addr; $arrayidx167 = ((($107)) + 1|0); $108 = HEAP8[$arrayidx167>>0]|0; $conv168 = $108&255; $or169 = $conv168 | 64; $conv170 = $or169&255; HEAP8[$arrayidx167>>0] = $conv170; $109 = $pad_amount; $sub171 = (($109) - 1)|0; $div = (($sub171|0) / 255)&-1; $nb_255s = $div; $i = 0; while(1) { $110 = $i; $111 = $nb_255s; $cmp173 = ($110|0)<($111|0); if (!($cmp173)) { break; } $112 = $ptr; $incdec$ptr176 = ((($112)) + 1|0); $ptr = $incdec$ptr176; HEAP8[$112>>0] = -1; $113 = $i; $inc178 = (($113) + 1)|0; $i = $inc178; } $114 = $pad_amount; $115 = $nb_255s; $mul180 = ($115*255)|0; $sub181 = (($114) - ($mul180))|0; $sub182 = (($sub181) - 1)|0; $conv183 = $sub182&255; $116 = $ptr; $incdec$ptr184 = ((($116)) + 1|0); $ptr = $incdec$ptr184; HEAP8[$116>>0] = $conv183; $117 = $pad_amount; $118 = $tot_size; $add185 = (($118) + ($117))|0; $tot_size = $add185; } $119 = $vbr; $tobool187 = ($119|0)!=(0); if ($tobool187) { $i = 0; while(1) { $120 = $i; $121 = $count; $sub190 = (($121) - 1)|0; $cmp191 = ($120|0)<($sub190|0); if (!($cmp191)) { break L32; } $122 = $len; $123 = $i; $arrayidx194 = (($122) + ($123<<1)|0); $124 = HEAP16[$arrayidx194>>1]|0; $conv195 = $124 << 16 >> 16; $125 = $ptr; $call196 = (_encode_size($conv195,$125)|0); $126 = $ptr; $add$ptr197 = (($126) + ($call196)|0); $ptr = $add$ptr197; $127 = $i; $inc199 = (($127) + 1)|0; $i = $inc199; } } } } while(0); $128 = $self_delimited$addr; $tobool203 = ($128|0)!=(0); if ($tobool203) { $129 = $len; $130 = $count; $sub205 = (($130) - 1)|0; $arrayidx206 = (($129) + ($sub205<<1)|0); $131 = HEAP16[$arrayidx206>>1]|0; $conv207 = $131 << 16 >> 16; $132 = $ptr; $call208 = (_encode_size($conv207,$132)|0); $sdlen = $call208; $133 = $sdlen; $134 = $ptr; $add$ptr209 = (($134) + ($133)|0); $ptr = $add$ptr209; } $i = 0; while(1) { $135 = $i; $136 = $count; $cmp212 = ($135|0)<($136|0); if (!($cmp212)) { break; } $137 = $ptr; $138 = $frames; $139 = $i; $arrayidx215 = (($138) + ($139<<2)|0); $140 = HEAP32[$arrayidx215>>2]|0; $141 = $len; $142 = $i; $arrayidx216 = (($141) + ($142<<1)|0); $143 = HEAP16[$arrayidx216>>1]|0; $conv217 = $143 << 16 >> 16; $mul218 = $conv217; $144 = $ptr; $145 = $frames; $146 = $i; $arrayidx219 = (($145) + ($146<<2)|0); $147 = HEAP32[$arrayidx219>>2]|0; $sub$ptr$lhs$cast = $144; $sub$ptr$rhs$cast = $147; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $mul220 = 0; $add221 = (($mul218) + ($mul220))|0; _memmove(($137|0),($140|0),($add221|0))|0; $148 = $len; $149 = $i; $arrayidx222 = (($148) + ($149<<1)|0); $150 = HEAP16[$arrayidx222>>1]|0; $conv223 = $150 << 16 >> 16; $151 = $ptr; $add$ptr224 = (($151) + ($conv223)|0); $ptr = $add$ptr224; $152 = $i; $inc226 = (($152) + 1)|0; $i = $inc226; } $153 = $pad$addr; $tobool228 = ($153|0)!=(0); L83: do { if ($tobool228) { while(1) { $154 = $ptr; $155 = $data$addr; $156 = $maxlen$addr; $add$ptr230 = (($155) + ($156)|0); $cmp231 = ($154>>>0)<($add$ptr230>>>0); if (!($cmp231)) { break L83; } $157 = $ptr; $incdec$ptr233 = ((($157)) + 1|0); $ptr = $incdec$ptr233; HEAP8[$157>>0] = 0; } } } while(0); $158 = $tot_size; $retval = $158; $159 = $retval; STACKTOP = sp;return ($159|0); } } } $retval = -1; $159 = $retval; STACKTOP = sp;return ($159|0); } function _opus_packet_pad($data,$len,$new_len) { $data = $data|0; $len = $len|0; $new_len = $new_len|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $add$ptr = 0, $add$ptr10 = 0, $add$ptr12 = 0, $add$ptr14 = 0, $add$ptr7 = 0, $add$ptr8 = 0, $call15 = 0, $call19 = 0, $cmp = 0, $cmp1 = 0, $cmp16 = 0, $cmp20 = 0, $cmp3 = 0; var $data$addr = 0, $idx$neg = 0, $idx$neg13 = 0, $idx$neg9 = 0, $len$addr = 0, $mul = 0, $mul11 = 0, $nb_frames = 0, $new_len$addr = 0, $ret = 0, $retval = 0, $rp = 0, $sub$ptr$lhs$cast = 0, $sub$ptr$rhs$cast = 0, $sub$ptr$sub = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 320|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(320|0); $rp = sp + 4|0; $data$addr = $data; $len$addr = $len; $new_len$addr = $new_len; $0 = $len$addr; $cmp = ($0|0)<(1); if ($cmp) { $retval = -1; $25 = $retval; STACKTOP = sp;return ($25|0); } $1 = $len$addr; $2 = $new_len$addr; $cmp1 = ($1|0)==($2|0); if ($cmp1) { $retval = 0; $25 = $retval; STACKTOP = sp;return ($25|0); } $3 = $len$addr; $4 = $new_len$addr; $cmp3 = ($3|0)>($4|0); if ($cmp3) { $retval = -1; $25 = $retval; STACKTOP = sp;return ($25|0); } (_opus_repacketizer_init($rp)|0); $5 = $data$addr; $6 = $new_len$addr; $add$ptr = (($5) + ($6)|0); $7 = $len$addr; $idx$neg = (0 - ($7))|0; $add$ptr7 = (($add$ptr) + ($idx$neg)|0); $8 = $data$addr; $9 = $len$addr; $mul = $9; $10 = $data$addr; $11 = $new_len$addr; $add$ptr8 = (($10) + ($11)|0); $12 = $len$addr; $idx$neg9 = (0 - ($12))|0; $add$ptr10 = (($add$ptr8) + ($idx$neg9)|0); $13 = $data$addr; $sub$ptr$lhs$cast = $add$ptr10; $sub$ptr$rhs$cast = $13; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $mul11 = 0; $add = (($mul) + ($mul11))|0; _memmove(($add$ptr7|0),($8|0),($add|0))|0; $14 = $data$addr; $15 = $new_len$addr; $add$ptr12 = (($14) + ($15)|0); $16 = $len$addr; $idx$neg13 = (0 - ($16))|0; $add$ptr14 = (($add$ptr12) + ($idx$neg13)|0); $17 = $len$addr; $call15 = (_opus_repacketizer_cat($rp,$add$ptr14,$17)|0); $ret = $call15; $18 = $ret; $cmp16 = ($18|0)!=(0); if ($cmp16) { $19 = $ret; $retval = $19; $25 = $retval; STACKTOP = sp;return ($25|0); } $nb_frames = ((($rp)) + 4|0); $20 = HEAP32[$nb_frames>>2]|0; $21 = $data$addr; $22 = $new_len$addr; $call19 = (_opus_repacketizer_out_range_impl($rp,0,$20,$21,$22,0,1)|0); $ret = $call19; $23 = $ret; $cmp20 = ($23|0)>(0); if ($cmp20) { $retval = 0; $25 = $retval; STACKTOP = sp;return ($25|0); } else { $24 = $ret; $retval = $24; $25 = $retval; STACKTOP = sp;return ($25|0); } return (0)|0; } function _tonality_analysis_init($tonal,$Fs) { $tonal = $tonal|0; $Fs = $Fs|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $Fs$addr = 0, $Fs1 = 0, $call = 0, $tonal$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $tonal$addr = $tonal; $Fs$addr = $Fs; $call = (_opus_select_arch()|0); $0 = $tonal$addr; HEAP32[$0>>2] = $call; $1 = $Fs$addr; $2 = $tonal$addr; $Fs1 = ((($2)) + 8|0); HEAP32[$Fs1>>2] = $1; $3 = $tonal$addr; _tonality_analysis_reset($3); STACKTOP = sp;return; } function _tonality_analysis_reset($tonal) { $tonal = $tonal|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $angle = 0, $mul = 0, $start = 0, $sub = 0, $sub$ptr$lhs$cast = 0, $sub$ptr$rhs$cast = 0, $sub$ptr$sub = 0, $tonal$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $tonal$addr = $tonal; $0 = $tonal$addr; $angle = ((($0)) + 12|0); $start = $angle; $1 = $start; $2 = $start; $3 = $tonal$addr; $sub$ptr$lhs$cast = $2; $sub$ptr$rhs$cast = $3; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $sub = (14000 - ($sub$ptr$sub))|0; $mul = $sub; _memset(($1|0),0,($mul|0))|0; STACKTOP = sp;return; } function _tonality_get_info($tonal,$info_out,$len) { $tonal = $tonal|0; $info_out = $info_out|0; $len = $len|0; var $$dec202 = 0, $$inc = 0, $$inc21 = 0, $$inc87 = 0, $$inc97 = 0, $$sink1 = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0.0, $101 = 0.0, $102 = 0.0, $103 = 0.0, $104 = 0.0, $105 = 0.0, $106 = 0.0, $107 = 0.0, $108 = 0.0, $109 = 0.0, $11 = 0; var $110 = 0.0, $111 = 0.0, $112 = 0.0, $113 = 0, $114 = 0, $115 = 0.0, $116 = 0.0, $117 = 0.0, $118 = 0.0, $119 = 0, $12 = 0, $120 = 0.0, $121 = 0.0, $122 = 0.0, $123 = 0.0, $124 = 0.0, $125 = 0.0, $126 = 0.0, $127 = 0.0, $128 = 0.0; var $129 = 0.0, $13 = 0, $130 = 0.0, $131 = 0.0, $132 = 0.0, $133 = 0.0, $134 = 0.0, $135 = 0.0, $136 = 0, $137 = 0.0, $138 = 0.0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0; var $147 = 0.0, $148 = 0, $149 = 0, $15 = 0, $150 = 0.0, $151 = 0.0, $152 = 0, $153 = 0, $154 = 0.0, $155 = 0.0, $156 = 0, $157 = 0, $158 = 0.0, $159 = 0.0, $16 = 0, $160 = 0, $161 = 0, $162 = 0.0, $163 = 0, $164 = 0.0; var $165 = 0.0, $166 = 0.0, $167 = 0.0, $168 = 0.0, $169 = 0.0, $17 = 0, $170 = 0.0, $171 = 0.0, $172 = 0, $173 = 0.0, $174 = 0.0, $175 = 0.0, $176 = 0, $177 = 0.0, $178 = 0.0, $179 = 0.0, $18 = 0, $180 = 0.0, $181 = 0, $182 = 0.0; var $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0; var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0.0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0.0, $37 = 0, $38 = 0, $39 = 0.0, $4 = 0, $40 = 0.0, $41 = 0; var $42 = 0, $43 = 0.0, $44 = 0, $45 = 0, $46 = 0.0, $47 = 0.0, $48 = 0, $49 = 0, $5 = 0, $50 = 0.0, $51 = 0, $52 = 0.0, $53 = 0.0, $54 = 0, $55 = 0.0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0.0, $68 = 0.0, $69 = 0.0, $7 = 0, $70 = 0.0, $71 = 0.0, $72 = 0, $73 = 0, $74 = 0.0, $75 = 0, $76 = 0, $77 = 0, $78 = 0; var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0.0, $88 = 0.0, $89 = 0.0, $9 = 0, $90 = 0.0, $91 = 0.0, $92 = 0.0, $93 = 0.0, $94 = 0.0, $95 = 0.0, $96 = 0.0; var $97 = 0.0, $98 = 0.0, $99 = 0.0, $Fs = 0, $Fs267 = 0, $activity_probability = 0, $activity_probability109 = 0, $add = 0, $add126 = 0.0, $add133 = 0.0, $add144 = 0.0, $add155 = 0.0, $add19 = 0, $add245 = 0.0, $add251 = 0.0, $add259 = 0.0, $add265 = 0.0, $add39 = 0.0, $add57 = 0, $add63 = 0; var $arrayidx = 0, $arrayidx108 = 0, $arrayidx152 = 0, $arrayidx18 = 0, $arrayidx208 = 0, $arrayidx215 = 0, $arrayidx220 = 0, $arrayidx227 = 0, $arrayidx30 = 0, $arrayidx34 = 0, $arrayidx37 = 0, $arrayidx71 = 0, $arrayidx85 = 0, $cmp = 0, $cmp103 = 0, $cmp11 = 0, $cmp114 = 0, $cmp128 = 0, $cmp138 = 0, $cmp14 = 0; var $cmp145 = 0, $cmp159 = 0, $cmp167 = 0, $cmp174 = 0, $cmp180 = 0, $cmp186 = 0, $cmp191 = 0, $cmp199 = 0, $cmp2 = 0, $cmp20 = 0, $cmp203 = 0, $cmp210 = 0, $cmp22 = 0, $cmp222 = 0, $cmp236 = 0, $cmp246 = 0, $cmp26 = 0, $cmp272 = 0, $cmp281 = 0, $cmp32 = 0; var $cmp4 = 0, $cmp44 = 0, $cmp54 = 0, $cmp58 = 0, $cmp6 = 0, $cmp64 = 0, $cmp72 = 0, $cmp78 = 0, $cmp88 = 0, $cmp93 = 0, $cmp98 = 0, $cond = 0.0, $cond123 = 0.0, $cond137 = 0.0, $cond143 = 0.0, $cond150 = 0.0, $cond165 = 0.0, $cond173 = 0.0, $cond179 = 0.0, $cond185 = 0.0; var $cond198 = 0, $cond218 = 0.0, $cond230 = 0.0, $cond243 = 0.0, $cond253 = 0.0, $cond52 = 0.0, $cond77 = 0.0, $cond83 = 0.0, $conv = 0.0, $conv254 = 0.0, $conv260 = 0.0, $conv47 = 0.0, $count = 0, $count194 = 0, $curr_lookahead = 0, $dec = 0, $dec202 = 0, $div = 0, $div113 = 0.0, $div120 = 0.0; var $div127 = 0.0, $div134 = 0.0, $div156 = 0.0, $div158 = 0.0, $div162 = 0.0, $div166 = 0.0, $div170 = 0.0, $div268 = 0, $div269 = 0, $div42 = 0.0, $div48 = 0.0, $i = 0, $inc = 0, $inc21 = 0, $inc232 = 0, $inc278 = 0, $inc40 = 0, $inc41 = 0, $inc87 = 0, $inc97 = 0; var $info = 0, $info107 = 0, $info151 = 0, $info17 = 0, $info207 = 0, $info214 = 0, $info219 = 0, $info226 = 0, $info29 = 0, $info33 = 0, $info36 = 0, $info70 = 0, $info84 = 0, $info_out$addr = 0, $len$addr = 0, $mpos = 0, $mul = 0, $mul111 = 0.0, $mul118 = 0.0, $mul125 = 0.0; var $mul132 = 0.0, $mul154 = 0.0, $mul234 = 0.0, $mul240 = 0.0, $mul244 = 0.0, $mul250 = 0.0, $mul255 = 0.0, $mul258 = 0.0, $mul261 = 0.0, $mul264 = 0.0, $mul86 = 0.0, $music_prob = 0, $music_prob153 = 0, $music_prob157 = 0, $music_prob209 = 0, $music_prob216 = 0, $music_prob221 = 0, $music_prob228 = 0, $music_prob_max = 0, $music_prob_min = 0; var $pmax = 0.0, $pmin = 0.0, $pos = 0, $pos0 = 0, $pos_vad = 0.0, $prob_avg = 0.0, $prob_count = 0.0, $prob_max = 0.0, $prob_min = 0.0, $read_pos = 0, $read_pos1 = 0, $read_pos277 = 0, $read_pos277$sink2 = 0, $read_pos280 = 0, $read_pos284 = 0, $read_subframe = 0, $read_subframe271 = 0, $read_subframe275 = 0, $sub = 0, $sub$ptr$div = 0; var $sub$ptr$lhs$cast = 0, $sub$ptr$rhs$cast = 0, $sub$ptr$sub = 0, $sub110 = 0.0, $sub112 = 0.0, $sub117 = 0.0, $sub119 = 0.0, $sub124 = 0.0, $sub131 = 0.0, $sub190 = 0, $sub195 = 0, $sub235 = 0.0, $sub241 = 0.0, $sub256 = 0.0, $sub257 = 0.0, $sub262 = 0.0, $sub263 = 0.0, $sub276 = 0, $sub285 = 0, $sub43 = 0.0; var $sub50 = 0.0, $sub61 = 0, $sub67 = 0, $tonal$addr = 0, $tonality = 0, $tonality31 = 0, $tonality35 = 0, $tonality38 = 0, $tonality53 = 0, $tonality_avg = 0.0, $tonality_count = 0, $tonality_max = 0.0, $vad_prob = 0.0, $vpos = 0, $write_pos = 0, $write_pos10 = 0, $write_pos102 = 0, $write_pos25 = 0, $write_pos3 = 0, $write_pos92 = 0; var label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(80|0); $tonal$addr = $tonal; $info_out$addr = $info_out; $len$addr = $len; $0 = $tonal$addr; $read_pos = ((($0)) + 7448|0); $1 = HEAP32[$read_pos>>2]|0; $pos = $1; $2 = $tonal$addr; $write_pos = ((($2)) + 7444|0); $3 = HEAP32[$write_pos>>2]|0; $4 = $tonal$addr; $read_pos1 = ((($4)) + 7448|0); $5 = HEAP32[$read_pos1>>2]|0; $sub = (($3) - ($5))|0; $curr_lookahead = $sub; $6 = $curr_lookahead; $cmp = ($6|0)<(0); if ($cmp) { $7 = $curr_lookahead; $add = (($7) + 100)|0; $curr_lookahead = $add; } $8 = $len$addr; $9 = $tonal$addr; $Fs = ((($9)) + 8|0); $10 = HEAP32[$Fs>>2]|0; $div = (($10|0) / 50)&-1; $cmp2 = ($8|0)>($div|0); if ($cmp2) { $11 = $pos; $12 = $tonal$addr; $write_pos3 = ((($12)) + 7444|0); $13 = HEAP32[$write_pos3>>2]|0; $cmp4 = ($11|0)!=($13|0); if ($cmp4) { $14 = $pos; $inc = (($14) + 1)|0; $pos = $inc; $15 = $pos; $cmp6 = ($15|0)==(100); $$inc = $cmp6 ? 0 : $inc; $pos = $$inc; } } $16 = $pos; $17 = $tonal$addr; $write_pos10 = ((($17)) + 7444|0); $18 = HEAP32[$write_pos10>>2]|0; $cmp11 = ($16|0)==($18|0); if ($cmp11) { $19 = $pos; $dec = (($19) + -1)|0; $pos = $dec; } $20 = $pos; $cmp14 = ($20|0)<(0); if ($cmp14) { $pos = 99; } $21 = $pos; $pos0 = $21; $22 = $info_out$addr; $23 = $tonal$addr; $info = ((($23)) + 7600|0); $24 = $pos; $arrayidx = (($info) + ($24<<6)|0); $25 = $info_out$addr; $26 = $tonal$addr; $info17 = ((($26)) + 7600|0); $27 = $pos; $arrayidx18 = (($info17) + ($27<<6)|0); $sub$ptr$lhs$cast = $25; $sub$ptr$rhs$cast = $arrayidx18; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $sub$ptr$div = (($sub$ptr$sub|0) / 64)&-1; $mul = 0; $add19 = (64 + ($mul))|0; _memcpy(($22|0),($arrayidx|0),($add19|0))|0; $28 = $info_out$addr; $tonality = ((($28)) + 4|0); $29 = +HEAPF32[$tonality>>2]; $tonality_avg = $29; $tonality_max = $29; $tonality_count = 1; $i = 0; while(1) { $30 = $i; $cmp20 = ($30|0)<(3); if (!($cmp20)) { break; } $31 = $pos; $inc21 = (($31) + 1)|0; $pos = $inc21; $32 = $pos; $cmp22 = ($32|0)==(100); $$inc21 = $cmp22 ? 0 : $inc21; $pos = $$inc21; $33 = $pos; $34 = $tonal$addr; $write_pos25 = ((($34)) + 7444|0); $35 = HEAP32[$write_pos25>>2]|0; $cmp26 = ($33|0)==($35|0); if ($cmp26) { break; } $36 = $tonality_max; $37 = $tonal$addr; $info29 = ((($37)) + 7600|0); $38 = $pos; $arrayidx30 = (($info29) + ($38<<6)|0); $tonality31 = ((($arrayidx30)) + 4|0); $39 = +HEAPF32[$tonality31>>2]; $cmp32 = $36 > $39; if ($cmp32) { $40 = $tonality_max; $cond = $40; } else { $41 = $tonal$addr; $info33 = ((($41)) + 7600|0); $42 = $pos; $arrayidx34 = (($info33) + ($42<<6)|0); $tonality35 = ((($arrayidx34)) + 4|0); $43 = +HEAPF32[$tonality35>>2]; $cond = $43; } $tonality_max = $cond; $44 = $tonal$addr; $info36 = ((($44)) + 7600|0); $45 = $pos; $arrayidx37 = (($info36) + ($45<<6)|0); $tonality38 = ((($arrayidx37)) + 4|0); $46 = +HEAPF32[$tonality38>>2]; $47 = $tonality_avg; $add39 = $47 + $46; $tonality_avg = $add39; $48 = $tonality_count; $inc40 = (($48) + 1)|0; $tonality_count = $inc40; $49 = $i; $inc41 = (($49) + 1)|0; $i = $inc41; } $50 = $tonality_avg; $51 = $tonality_count; $conv = (+($51|0)); $div42 = $50 / $conv; $52 = $tonality_max; $sub43 = $52 - 0.20000000298023224; $cmp44 = $div42 > $sub43; if ($cmp44) { $53 = $tonality_avg; $54 = $tonality_count; $conv47 = (+($54|0)); $div48 = $53 / $conv47; $cond52 = $div48; } else { $55 = $tonality_max; $sub50 = $55 - 0.20000000298023224; $cond52 = $sub50; } $56 = $info_out$addr; $tonality53 = ((($56)) + 4|0); HEAPF32[$tonality53>>2] = $cond52; $57 = $pos0; $vpos = $57; $mpos = $57; $58 = $curr_lookahead; $cmp54 = ($58|0)>(15); if ($cmp54) { $59 = $mpos; $add57 = (($59) + 5)|0; $mpos = $add57; $60 = $mpos; $cmp58 = ($60|0)>=(100); if ($cmp58) { $61 = $mpos; $sub61 = (($61) - 100)|0; $mpos = $sub61; } $62 = $vpos; $add63 = (($62) + 1)|0; $vpos = $add63; $63 = $vpos; $cmp64 = ($63|0)>=(100); if ($cmp64) { $64 = $vpos; $sub67 = (($64) - 100)|0; $vpos = $sub67; } } $prob_min = 1.0; $prob_max = 0.0; $65 = $tonal$addr; $info70 = ((($65)) + 7600|0); $66 = $vpos; $arrayidx71 = (($info70) + ($66<<6)|0); $activity_probability = ((($arrayidx71)) + 36|0); $67 = +HEAPF32[$activity_probability>>2]; $vad_prob = $67; $68 = $vad_prob; $cmp72 = 0.10000000149011612 > $68; $69 = $vad_prob; $cond77 = $cmp72 ? 0.10000000149011612 : $69; $prob_count = $cond77; $70 = $vad_prob; $cmp78 = 0.10000000149011612 > $70; $71 = $vad_prob; $cond83 = $cmp78 ? 0.10000000149011612 : $71; $72 = $tonal$addr; $info84 = ((($72)) + 7600|0); $73 = $mpos; $arrayidx85 = (($info84) + ($73<<6)|0); $music_prob = ((($arrayidx85)) + 20|0); $74 = +HEAPF32[$music_prob>>2]; $mul86 = $cond83 * $74; $prob_avg = $mul86; while(1) { $75 = $mpos; $inc87 = (($75) + 1)|0; $mpos = $inc87; $76 = $mpos; $cmp88 = ($76|0)==(100); $$inc87 = $cmp88 ? 0 : $inc87; $mpos = $$inc87; $77 = $mpos; $78 = $tonal$addr; $write_pos92 = ((($78)) + 7444|0); $79 = HEAP32[$write_pos92>>2]|0; $cmp93 = ($77|0)==($79|0); if ($cmp93) { break; } $80 = $vpos; $inc97 = (($80) + 1)|0; $vpos = $inc97; $81 = $vpos; $cmp98 = ($81|0)==(100); $$inc97 = $cmp98 ? 0 : $inc97; $vpos = $$inc97; $82 = $vpos; $83 = $tonal$addr; $write_pos102 = ((($83)) + 7444|0); $84 = HEAP32[$write_pos102>>2]|0; $cmp103 = ($82|0)==($84|0); if ($cmp103) { break; } $85 = $tonal$addr; $info107 = ((($85)) + 7600|0); $86 = $vpos; $arrayidx108 = (($info107) + ($86<<6)|0); $activity_probability109 = ((($arrayidx108)) + 36|0); $87 = +HEAPF32[$activity_probability109>>2]; $pos_vad = $87; $88 = $prob_avg; $89 = $vad_prob; $90 = $pos_vad; $sub110 = $89 - $90; $mul111 = 10.0 * $sub110; $sub112 = $88 - $mul111; $91 = $prob_count; $div113 = $sub112 / $91; $92 = $prob_min; $cmp114 = $div113 < $92; if ($cmp114) { $93 = $prob_avg; $94 = $vad_prob; $95 = $pos_vad; $sub117 = $94 - $95; $mul118 = 10.0 * $sub117; $sub119 = $93 - $mul118; $96 = $prob_count; $div120 = $sub119 / $96; $cond123 = $div120; } else { $97 = $prob_min; $cond123 = $97; } $prob_min = $cond123; $98 = $prob_avg; $99 = $vad_prob; $100 = $pos_vad; $sub124 = $99 - $100; $mul125 = 10.0 * $sub124; $add126 = $98 + $mul125; $101 = $prob_count; $div127 = $add126 / $101; $102 = $prob_max; $cmp128 = $div127 > $102; if ($cmp128) { $103 = $prob_avg; $104 = $vad_prob; $105 = $pos_vad; $sub131 = $104 - $105; $mul132 = 10.0 * $sub131; $add133 = $103 + $mul132; $106 = $prob_count; $div134 = $add133 / $106; $cond137 = $div134; } else { $107 = $prob_max; $cond137 = $107; } $prob_max = $cond137; $108 = $pos_vad; $cmp138 = 0.10000000149011612 > $108; $109 = $pos_vad; $cond143 = $cmp138 ? 0.10000000149011612 : $109; $110 = $prob_count; $add144 = $110 + $cond143; $prob_count = $add144; $111 = $pos_vad; $cmp145 = 0.10000000149011612 > $111; $112 = $pos_vad; $cond150 = $cmp145 ? 0.10000000149011612 : $112; $113 = $tonal$addr; $info151 = ((($113)) + 7600|0); $114 = $mpos; $arrayidx152 = (($info151) + ($114<<6)|0); $music_prob153 = ((($arrayidx152)) + 20|0); $115 = +HEAPF32[$music_prob153>>2]; $mul154 = $cond150 * $115; $116 = $prob_avg; $add155 = $116 + $mul154; $prob_avg = $add155; } $117 = $prob_avg; $118 = $prob_count; $div156 = $117 / $118; $119 = $info_out$addr; $music_prob157 = ((($119)) + 20|0); HEAPF32[$music_prob157>>2] = $div156; $120 = $prob_avg; $121 = $prob_count; $div158 = $120 / $121; $122 = $prob_min; $cmp159 = $div158 < $122; if ($cmp159) { $123 = $prob_avg; $124 = $prob_count; $div162 = $123 / $124; $cond165 = $div162; } else { $125 = $prob_min; $cond165 = $125; } $prob_min = $cond165; $126 = $prob_avg; $127 = $prob_count; $div166 = $126 / $127; $128 = $prob_max; $cmp167 = $div166 > $128; if ($cmp167) { $129 = $prob_avg; $130 = $prob_count; $div170 = $129 / $130; $cond173 = $div170; } else { $131 = $prob_max; $cond173 = $131; } $prob_max = $cond173; $132 = $prob_min; $cmp174 = $132 > 0.0; $133 = $prob_min; $cond179 = $cmp174 ? $133 : 0.0; $prob_min = $cond179; $134 = $prob_max; $cmp180 = $134 < 1.0; $135 = $prob_max; $cond185 = $cmp180 ? $135 : 1.0; $prob_max = $cond185; $136 = $curr_lookahead; $cmp186 = ($136|0)<(10); if ($cmp186) { $137 = $prob_min; $pmin = $137; $138 = $prob_max; $pmax = $138; $139 = $pos0; $pos = $139; $i = 0; while(1) { $140 = $i; $141 = $tonal$addr; $count = ((($141)) + 7436|0); $142 = HEAP32[$count>>2]|0; $sub190 = (($142) - 1)|0; $cmp191 = ($sub190|0)<(15); if ($cmp191) { $143 = $tonal$addr; $count194 = ((($143)) + 7436|0); $144 = HEAP32[$count194>>2]|0; $sub195 = (($144) - 1)|0; $cond198 = $sub195; } else { $cond198 = 15; } $cmp199 = ($140|0)<($cond198|0); if (!($cmp199)) { break; } $145 = $pos; $dec202 = (($145) + -1)|0; $pos = $dec202; $146 = $pos; $cmp203 = ($146|0)<(0); $$dec202 = $cmp203 ? 99 : $dec202; $pos = $$dec202; $147 = $pmin; $148 = $tonal$addr; $info207 = ((($148)) + 7600|0); $149 = $pos; $arrayidx208 = (($info207) + ($149<<6)|0); $music_prob209 = ((($arrayidx208)) + 20|0); $150 = +HEAPF32[$music_prob209>>2]; $cmp210 = $147 < $150; if ($cmp210) { $151 = $pmin; $cond218 = $151; } else { $152 = $tonal$addr; $info214 = ((($152)) + 7600|0); $153 = $pos; $arrayidx215 = (($info214) + ($153<<6)|0); $music_prob216 = ((($arrayidx215)) + 20|0); $154 = +HEAPF32[$music_prob216>>2]; $cond218 = $154; } $pmin = $cond218; $155 = $pmax; $156 = $tonal$addr; $info219 = ((($156)) + 7600|0); $157 = $pos; $arrayidx220 = (($info219) + ($157<<6)|0); $music_prob221 = ((($arrayidx220)) + 20|0); $158 = +HEAPF32[$music_prob221>>2]; $cmp222 = $155 > $158; if ($cmp222) { $159 = $pmax; $cond230 = $159; } else { $160 = $tonal$addr; $info226 = ((($160)) + 7600|0); $161 = $pos; $arrayidx227 = (($info226) + ($161<<6)|0); $music_prob228 = ((($arrayidx227)) + 20|0); $162 = +HEAPF32[$music_prob228>>2]; $cond230 = $162; } $pmax = $cond230; $163 = $i; $inc232 = (($163) + 1)|0; $i = $inc232; } $164 = $pmin; $165 = $vad_prob; $mul234 = 0.10000000149011612 * $165; $sub235 = $164 - $mul234; $cmp236 = 0.0 > $sub235; if ($cmp236) { $cond243 = 0.0; } else { $166 = $pmin; $167 = $vad_prob; $mul240 = 0.10000000149011612 * $167; $sub241 = $166 - $mul240; $cond243 = $sub241; } $pmin = $cond243; $168 = $pmax; $169 = $vad_prob; $mul244 = 0.10000000149011612 * $169; $add245 = $168 + $mul244; $cmp246 = 1.0 < $add245; if ($cmp246) { $cond253 = 1.0; } else { $170 = $pmax; $171 = $vad_prob; $mul250 = 0.10000000149011612 * $171; $add251 = $170 + $mul250; $cond253 = $add251; } $pmax = $cond253; $172 = $curr_lookahead; $conv254 = (+($172|0)); $mul255 = 0.10000000149011612 * $conv254; $sub256 = 1.0 - $mul255; $173 = $pmin; $174 = $prob_min; $sub257 = $173 - $174; $mul258 = $sub256 * $sub257; $175 = $prob_min; $add259 = $175 + $mul258; $prob_min = $add259; $176 = $curr_lookahead; $conv260 = (+($176|0)); $mul261 = 0.10000000149011612 * $conv260; $sub262 = 1.0 - $mul261; $177 = $pmax; $178 = $prob_max; $sub263 = $177 - $178; $mul264 = $sub262 * $sub263; $179 = $prob_max; $add265 = $179 + $mul264; $prob_max = $add265; } $180 = $prob_min; $181 = $info_out$addr; $music_prob_min = ((($181)) + 24|0); HEAPF32[$music_prob_min>>2] = $180; $182 = $prob_max; $183 = $info_out$addr; $music_prob_max = ((($183)) + 28|0); HEAPF32[$music_prob_max>>2] = $182; $184 = $len$addr; $185 = $tonal$addr; $Fs267 = ((($185)) + 8|0); $186 = HEAP32[$Fs267>>2]|0; $div268 = (($186|0) / 400)&-1; $div269 = (($184|0) / ($div268|0))&-1; $187 = $tonal$addr; $read_subframe = ((($187)) + 7452|0); $$sink1 = $div269;$read_pos277$sink2 = $read_subframe; while(1) { $188 = HEAP32[$read_pos277$sink2>>2]|0; $inc278 = (($188) + ($$sink1))|0; HEAP32[$read_pos277$sink2>>2] = $inc278; $189 = $tonal$addr; $read_subframe271 = ((($189)) + 7452|0); $190 = HEAP32[$read_subframe271>>2]|0; $cmp272 = ($190|0)>=(8); $191 = $tonal$addr; if (!($cmp272)) { break; } $read_subframe275 = ((($191)) + 7452|0); $192 = HEAP32[$read_subframe275>>2]|0; $sub276 = (($192) - 8)|0; HEAP32[$read_subframe275>>2] = $sub276; $193 = $tonal$addr; $read_pos277 = ((($193)) + 7448|0); $$sink1 = 1;$read_pos277$sink2 = $read_pos277; } $read_pos280 = ((($191)) + 7448|0); $194 = HEAP32[$read_pos280>>2]|0; $cmp281 = ($194|0)>=(100); if (!($cmp281)) { STACKTOP = sp;return; } $195 = $tonal$addr; $read_pos284 = ((($195)) + 7448|0); $196 = HEAP32[$read_pos284>>2]|0; $sub285 = (($196) - 100)|0; HEAP32[$read_pos284>>2] = $sub285; STACKTOP = sp;return; } function _run_analysis($analysis,$celt_mode,$analysis_pcm,$analysis_frame_size,$frame_size,$c1,$c2,$C,$Fs,$lsb_depth,$downmix,$analysis_info) { $analysis = $analysis|0; $celt_mode = $celt_mode|0; $analysis_pcm = $analysis_pcm|0; $analysis_frame_size = $analysis_frame_size|0; $frame_size = $frame_size|0; $c1 = $c1|0; $c2 = $c2|0; $C = $C|0; $Fs = $Fs|0; $lsb_depth = $lsb_depth|0; $downmix = $downmix|0; $analysis_info = $analysis_info|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $C$addr = 0; var $Fs$addr = 0, $add = 0, $analysis$addr = 0, $analysis_frame_size$addr = 0, $analysis_info$addr = 0, $analysis_offset = 0, $analysis_offset17 = 0, $analysis_offset18 = 0, $analysis_offset5 = 0, $analysis_pcm$addr = 0, $and = 0, $c1$addr = 0, $c2$addr = 0, $celt_mode$addr = 0, $cmp = 0, $cmp1 = 0, $cmp6 = 0, $cmp8 = 0, $cond = 0, $cond13 = 0; var $div = 0, $div10 = 0, $div14 = 0, $div15 = 0, $div3 = 0, $div7 = 0, $downmix$addr = 0, $frame_size$addr = 0, $lsb_depth$addr = 0, $mul = 0, $mul2 = 0, $offset = 0, $pcm_len = 0, $sub = 0, $sub16 = 0, $sub19 = 0, $sub4 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $analysis$addr = $analysis; $celt_mode$addr = $celt_mode; $analysis_pcm$addr = $analysis_pcm; $analysis_frame_size$addr = $analysis_frame_size; $frame_size$addr = $frame_size; $c1$addr = $c1; $c2$addr = $c2; $C$addr = $C; $Fs$addr = $Fs; $lsb_depth$addr = $lsb_depth; $downmix$addr = $downmix; $analysis_info$addr = $analysis_info; $0 = $analysis_frame_size$addr; $and = $0 & 1; $1 = $analysis_frame_size$addr; $sub = (($1) - ($and))|0; $analysis_frame_size$addr = $sub; $2 = $analysis_pcm$addr; $cmp = ($2|0)!=(0|0); if (!($cmp)) { $35 = $analysis_info$addr; HEAP32[$35>>2] = 0; $36 = $analysis$addr; $37 = $analysis_info$addr; $38 = $frame_size$addr; _tonality_get_info($36,$37,$38); STACKTOP = sp;return; } $3 = $Fs$addr; $mul = ($3*95)|0; $div = (($mul|0) / 50)&-1; $4 = $analysis_frame_size$addr; $cmp1 = ($div|0)<($4|0); if ($cmp1) { $5 = $Fs$addr; $mul2 = ($5*95)|0; $div3 = (($mul2|0) / 50)&-1; $cond = $div3; } else { $6 = $analysis_frame_size$addr; $cond = $6; } $analysis_frame_size$addr = $cond; $7 = $analysis_frame_size$addr; $8 = $analysis$addr; $analysis_offset = ((($8)) + 7440|0); $9 = HEAP32[$analysis_offset>>2]|0; $sub4 = (($7) - ($9))|0; $pcm_len = $sub4; $10 = $analysis$addr; $analysis_offset5 = ((($10)) + 7440|0); $11 = HEAP32[$analysis_offset5>>2]|0; $offset = $11; while(1) { $12 = $pcm_len; $cmp6 = ($12|0)>(0); if (!($cmp6)) { break; } $13 = $analysis$addr; $14 = $celt_mode$addr; $15 = $analysis_pcm$addr; $16 = $Fs$addr; $div7 = (($16|0) / 50)&-1; $17 = $pcm_len; $cmp8 = ($div7|0)<($17|0); if ($cmp8) { $18 = $Fs$addr; $div10 = (($18|0) / 50)&-1; $cond13 = $div10; } else { $19 = $pcm_len; $cond13 = $19; } $20 = $offset; $21 = $c1$addr; $22 = $c2$addr; $23 = $C$addr; $24 = $lsb_depth$addr; $25 = $downmix$addr; _tonality_analysis($13,$14,$15,$cond13,$20,$21,$22,$23,$24,$25); $26 = $Fs$addr; $div14 = (($26|0) / 50)&-1; $27 = $offset; $add = (($27) + ($div14))|0; $offset = $add; $28 = $Fs$addr; $div15 = (($28|0) / 50)&-1; $29 = $pcm_len; $sub16 = (($29) - ($div15))|0; $pcm_len = $sub16; } $30 = $analysis_frame_size$addr; $31 = $analysis$addr; $analysis_offset17 = ((($31)) + 7440|0); HEAP32[$analysis_offset17>>2] = $30; $32 = $frame_size$addr; $33 = $analysis$addr; $analysis_offset18 = ((($33)) + 7440|0); $34 = HEAP32[$analysis_offset18>>2]|0; $sub19 = (($34) - ($32))|0; HEAP32[$analysis_offset18>>2] = $sub19; $35 = $analysis_info$addr; HEAP32[$35>>2] = 0; $36 = $analysis$addr; $37 = $analysis_info$addr; $38 = $frame_size$addr; _tonality_get_info($36,$37,$38); STACKTOP = sp;return; } function _tonality_analysis($tonal,$celt_mode,$x,$len,$offset,$c1,$c2,$C,$lsb_depth,$downmix) { $tonal = $tonal|0; $celt_mode = $celt_mode|0; $x = $x|0; $len = $len|0; $offset = $offset|0; $c1 = $c1|0; $c2 = $c2|0; $C = $C|0; $lsb_depth = $lsb_depth|0; $downmix = $downmix|0; var $$div1148 = 0.0, $$div28 = 0.0, $$sink = 0.0, $$sink1 = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0; var $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0.0, $121 = 0.0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0.0, $127 = 0, $128 = 0, $129 = 0.0, $13 = 0; var $130 = 0, $131 = 0.0, $132 = 0, $133 = 0, $134 = 0.0, $135 = 0, $136 = 0.0, $137 = 0, $138 = 0, $139 = 0.0, $14 = 0, $140 = 0, $141 = 0, $142 = 0.0, $143 = 0, $144 = 0.0, $145 = 0.0, $146 = 0.0, $147 = 0.0, $148 = 0; var $149 = 0, $15 = 0, $150 = 0.0, $151 = 0.0, $152 = 0, $153 = 0, $154 = 0.0, $155 = 0.0, $156 = 0.0, $157 = 0.0, $158 = 0.0, $159 = 0.0, $16 = 0, $160 = 0.0, $161 = 0.0, $162 = 0.0, $163 = 0.0, $164 = 0, $165 = 0.0, $166 = 0.0; var $167 = 0.0, $168 = 0.0, $169 = 0.0, $17 = 0, $170 = 0.0, $171 = 0.0, $172 = 0, $173 = 0.0, $174 = 0.0, $175 = 0.0, $176 = 0.0, $177 = 0.0, $178 = 0, $179 = 0, $18 = 0, $180 = 0.0, $181 = 0.0, $182 = 0.0, $183 = 0.0, $184 = 0; var $185 = 0.0, $186 = 0, $187 = 0.0, $188 = 0, $189 = 0, $19 = 0, $190 = 0.0, $191 = 0, $192 = 0, $193 = 0.0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0.0, $201 = 0; var $202 = 0.0, $203 = 0, $204 = 0.0, $205 = 0, $206 = 0.0, $207 = 0, $208 = 0.0, $209 = 0, $21 = 0, $210 = 0.0, $211 = 0, $212 = 0.0, $213 = 0, $214 = 0.0, $215 = 0.0, $216 = 0, $217 = 0.0, $218 = 0.0, $219 = 0, $22 = 0; var $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0.0, $231 = 0.0, $232 = 0.0, $233 = 0.0, $234 = 0.0, $235 = 0.0, $236 = 0, $237 = 0, $238 = 0.0; var $239 = 0, $24 = 0, $240 = 0.0, $241 = 0, $242 = 0, $243 = 0.0, $244 = 0, $245 = 0, $246 = 0.0, $247 = 0, $248 = 0.0, $249 = 0, $25 = 0, $250 = 0.0, $251 = 0, $252 = 0, $253 = 0.0, $254 = 0, $255 = 0, $256 = 0.0; var $257 = 0.0, $258 = 0.0, $259 = 0, $26 = 0, $260 = 0.0, $261 = 0.0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0.0, $27 = 0, $270 = 0, $271 = 0.0, $272 = 0, $273 = 0, $274 = 0.0; var $275 = 0, $276 = 0, $277 = 0.0, $278 = 0, $279 = 0.0, $28 = 0, $280 = 0, $281 = 0.0, $282 = 0, $283 = 0, $284 = 0.0, $285 = 0, $286 = 0, $287 = 0.0, $288 = 0.0, $289 = 0.0, $29 = 0, $290 = 0.0, $291 = 0.0, $292 = 0; var $293 = 0.0, $294 = 0, $295 = 0.0, $296 = 0.0, $297 = 0.0, $298 = 0, $299 = 0.0, $3 = 0, $30 = 0, $300 = 0.0, $301 = 0, $302 = 0.0, $303 = 0.0, $304 = 0.0, $305 = 0, $306 = 0.0, $307 = 0, $308 = 0, $309 = 0, $31 = 0; var $310 = 0, $311 = 0.0, $312 = 0.0, $313 = 0.0, $314 = 0.0, $315 = 0.0, $316 = 0.0, $317 = 0, $318 = 0.0, $319 = 0, $32 = 0, $320 = 0, $321 = 0.0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0; var $329 = 0.0, $33 = 0, $330 = 0, $331 = 0, $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0.0, $337 = 0, $338 = 0, $339 = 0.0, $34 = 0, $340 = 0, $341 = 0, $342 = 0.0, $343 = 0, $344 = 0.0, $345 = 0, $346 = 0.0; var $347 = 0, $348 = 0, $349 = 0.0, $35 = 0, $350 = 0, $351 = 0, $352 = 0.0, $353 = 0, $354 = 0.0, $355 = 0, $356 = 0.0, $357 = 0, $358 = 0, $359 = 0.0, $36 = 0, $360 = 0, $361 = 0.0, $362 = 0, $363 = 0, $364 = 0; var $365 = 0, $366 = 0.0, $367 = 0, $368 = 0, $369 = 0.0, $37 = 0, $370 = 0, $371 = 0, $372 = 0.0, $373 = 0, $374 = 0.0, $375 = 0, $376 = 0, $377 = 0, $378 = 0.0, $379 = 0, $38 = 0, $380 = 0.0, $381 = 0, $382 = 0; var $383 = 0, $384 = 0, $385 = 0.0, $386 = 0, $387 = 0, $388 = 0.0, $389 = 0, $39 = 0, $390 = 0, $391 = 0.0, $392 = 0, $393 = 0.0, $394 = 0, $395 = 0, $396 = 0, $397 = 0.0, $398 = 0, $399 = 0, $4 = 0, $40 = 0; var $400 = 0.0, $401 = 0, $402 = 0, $403 = 0.0, $404 = 0, $405 = 0, $406 = 0.0, $407 = 0.0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0.0, $413 = 0.0, $414 = 0, $415 = 0, $416 = 0, $417 = 0.0, $418 = 0.0; var $419 = 0, $42 = 0, $420 = 0.0, $421 = 0.0, $422 = 0.0, $423 = 0.0, $424 = 0.0, $425 = 0.0, $426 = 0.0, $427 = 0.0, $428 = 0.0, $429 = 0.0, $43 = 0, $430 = 0.0, $431 = 0.0, $432 = 0.0, $433 = 0, $434 = 0, $435 = 0.0, $436 = 0.0; var $437 = 0.0, $438 = 0.0, $439 = 0, $44 = 0, $440 = 0, $441 = 0.0, $442 = 0, $443 = 0, $444 = 0.0, $445 = 0.0, $446 = 0, $447 = 0, $448 = 0.0, $449 = 0.0, $45 = 0, $450 = 0.0, $451 = 0, $452 = 0.0, $453 = 0.0, $454 = 0; var $455 = 0.0, $456 = 0, $457 = 0.0, $458 = 0, $459 = 0.0, $46 = 0, $460 = 0, $461 = 0.0, $462 = 0, $463 = 0, $464 = 0, $465 = 0.0, $466 = 0.0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0; var $473 = 0.0, $474 = 0.0, $475 = 0, $476 = 0.0, $477 = 0, $478 = 0.0, $479 = 0.0, $48 = 0, $480 = 0.0, $481 = 0, $482 = 0, $483 = 0.0, $484 = 0.0, $485 = 0, $486 = 0.0, $487 = 0, $488 = 0.0, $489 = 0.0, $49 = 0.0, $490 = 0.0; var $491 = 0, $492 = 0, $493 = 0, $494 = 0, $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0.0, $5 = 0, $50 = 0, $500 = 0.0, $501 = 0, $502 = 0.0, $503 = 0, $504 = 0.0, $505 = 0.0, $506 = 0.0, $507 = 0, $508 = 0; var $509 = 0.0, $51 = 0, $510 = 0.0, $511 = 0, $512 = 0.0, $513 = 0, $514 = 0.0, $515 = 0.0, $516 = 0.0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0.0, $522 = 0, $523 = 0.0, $524 = 0, $525 = 0.0, $526 = 0; var $527 = 0.0, $528 = 0, $529 = 0.0, $53 = 0, $530 = 0, $531 = 0.0, $532 = 0, $533 = 0.0, $534 = 0, $535 = 0.0, $536 = 0.0, $537 = 0.0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0; var $545 = 0, $546 = 0, $547 = 0, $548 = 0, $549 = 0, $55 = 0, $550 = 0, $551 = 0.0, $552 = 0, $553 = 0, $554 = 0, $555 = 0.0, $556 = 0.0, $557 = 0.0, $558 = 0.0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0.0; var $563 = 0.0, $564 = 0.0, $565 = 0.0, $566 = 0, $567 = 0.0, $568 = 0.0, $569 = 0, $57 = 0.0, $570 = 0.0, $571 = 0, $572 = 0, $573 = 0.0, $574 = 0.0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0; var $581 = 0, $582 = 0, $583 = 0, $584 = 0.0, $585 = 0, $586 = 0.0, $587 = 0, $588 = 0, $589 = 0.0, $59 = 0, $590 = 0, $591 = 0, $592 = 0.0, $593 = 0, $594 = 0.0, $595 = 0, $596 = 0.0, $597 = 0, $598 = 0, $599 = 0.0; var $6 = 0, $60 = 0, $600 = 0, $601 = 0, $602 = 0.0, $603 = 0.0, $604 = 0.0, $605 = 0, $606 = 0.0, $607 = 0.0, $608 = 0.0, $609 = 0.0, $61 = 0, $610 = 0.0, $611 = 0, $612 = 0.0, $613 = 0.0, $614 = 0.0, $615 = 0.0, $616 = 0; var $617 = 0, $618 = 0.0, $619 = 0.0, $62 = 0, $620 = 0.0, $621 = 0, $622 = 0, $623 = 0.0, $624 = 0.0, $625 = 0, $626 = 0, $627 = 0.0, $628 = 0, $629 = 0, $63 = 0, $630 = 0.0, $631 = 0.0, $632 = 0, $633 = 0, $634 = 0.0; var $635 = 0.0, $636 = 0.0, $637 = 0.0, $638 = 0.0, $639 = 0, $64 = 0, $640 = 0, $641 = 0.0, $642 = 0.0, $643 = 0, $644 = 0, $645 = 0, $646 = 0.0, $647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0.0, $651 = 0, $652 = 0.0; var $653 = 0.0, $654 = 0.0, $655 = 0.0, $656 = 0, $657 = 0, $658 = 0, $659 = 0.0, $66 = 0, $660 = 0, $661 = 0, $662 = 0.0, $663 = 0.0, $664 = 0.0, $665 = 0, $666 = 0, $667 = 0.0, $668 = 0.0, $669 = 0.0, $67 = 0, $670 = 0; var $671 = 0, $672 = 0.0, $673 = 0.0, $674 = 0, $675 = 0, $676 = 0.0, $677 = 0, $678 = 0, $679 = 0.0, $68 = 0.0, $680 = 0.0, $681 = 0, $682 = 0, $683 = 0.0, $684 = 0.0, $685 = 0.0, $686 = 0.0, $687 = 0.0, $688 = 0.0, $689 = 0.0; var $69 = 0.0, $690 = 0.0, $691 = 0, $692 = 0, $693 = 0.0, $694 = 0, $695 = 0.0, $696 = 0.0, $697 = 0.0, $698 = 0.0, $699 = 0, $7 = 0, $70 = 0, $700 = 0, $701 = 0, $702 = 0, $703 = 0, $704 = 0, $705 = 0, $706 = 0; var $707 = 0, $708 = 0, $709 = 0, $71 = 0, $710 = 0, $711 = 0.0, $712 = 0, $713 = 0.0, $714 = 0.0, $715 = 0, $716 = 0.0, $717 = 0.0, $718 = 0, $719 = 0.0, $72 = 0.0, $720 = 0, $721 = 0.0, $722 = 0.0, $723 = 0, $724 = 0.0; var $725 = 0.0, $726 = 0, $727 = 0.0, $728 = 0, $729 = 0, $73 = 0, $730 = 0, $731 = 0, $732 = 0.0, $733 = 0, $734 = 0.0, $735 = 0.0, $736 = 0, $737 = 0.0, $738 = 0, $739 = 0, $74 = 0.0, $740 = 0, $741 = 0, $742 = 0; var $743 = 0, $744 = 0.0, $745 = 0, $746 = 0, $747 = 0.0, $748 = 0, $749 = 0, $75 = 0, $750 = 0.0, $751 = 0.0, $752 = 0, $753 = 0.0, $754 = 0, $755 = 0, $756 = 0.0, $757 = 0.0, $758 = 0, $759 = 0, $76 = 0, $760 = 0.0; var $761 = 0.0, $762 = 0.0, $763 = 0.0, $764 = 0, $765 = 0.0, $766 = 0.0, $767 = 0, $768 = 0.0, $769 = 0.0, $77 = 0, $770 = 0, $771 = 0.0, $772 = 0.0, $773 = 0, $774 = 0.0, $775 = 0.0, $776 = 0, $777 = 0, $778 = 0, $779 = 0; var $78 = 0.0, $780 = 0, $781 = 0, $782 = 0, $783 = 0, $784 = 0, $785 = 0.0, $786 = 0, $787 = 0, $788 = 0, $789 = 0.0, $79 = 0, $790 = 0, $791 = 0, $792 = 0.0, $793 = 0, $794 = 0, $795 = 0.0, $796 = 0, $797 = 0; var $798 = 0.0, $799 = 0, $8 = 0, $80 = 0.0, $800 = 0, $801 = 0.0, $802 = 0, $803 = 0, $804 = 0.0, $805 = 0, $806 = 0, $807 = 0, $808 = 0.0, $809 = 0, $81 = 0, $810 = 0, $811 = 0.0, $812 = 0.0, $813 = 0, $814 = 0.0; var $815 = 0, $816 = 0, $817 = 0, $818 = 0, $819 = 0, $82 = 0, $820 = 0.0, $821 = 0, $822 = 0, $823 = 0.0, $824 = 0, $825 = 0, $826 = 0.0, $827 = 0, $828 = 0, $829 = 0.0, $83 = 0, $830 = 0, $831 = 0, $832 = 0; var $833 = 0, $834 = 0.0, $835 = 0, $836 = 0, $837 = 0.0, $838 = 0, $839 = 0, $84 = 0.0, $840 = 0.0, $841 = 0, $842 = 0, $843 = 0.0, $844 = 0, $845 = 0, $846 = 0.0, $847 = 0, $848 = 0, $849 = 0, $85 = 0, $850 = 0; var $851 = 0, $852 = 0.0, $853 = 0, $854 = 0, $855 = 0.0, $856 = 0.0, $857 = 0, $858 = 0.0, $859 = 0, $86 = 0, $860 = 0.0, $861 = 0, $862 = 0, $863 = 0, $864 = 0, $865 = 0, $866 = 0.0, $867 = 0, $868 = 0.0, $869 = 0; var $87 = 0.0, $870 = 0, $871 = 0, $872 = 0, $873 = 0, $874 = 0.0, $875 = 0, $876 = 0, $877 = 0, $878 = 0, $879 = 0.0, $88 = 0, $880 = 0, $881 = 0, $882 = 0, $883 = 0, $884 = 0.0, $885 = 0, $886 = 0, $887 = 0; var $888 = 0.0, $889 = 0, $89 = 0, $890 = 0, $891 = 0, $892 = 0, $893 = 0, $894 = 0, $895 = 0.0, $896 = 0, $897 = 0.0, $898 = 0, $899 = 0, $9 = 0, $90 = 0, $900 = 0.0, $901 = 0, $902 = 0.0, $903 = 0, $904 = 0.0; var $905 = 0.0, $906 = 0, $907 = 0.0, $908 = 0, $909 = 0.0, $91 = 0, $910 = 0, $911 = 0, $912 = 0.0, $913 = 0, $914 = 0.0, $915 = 0.0, $916 = 0.0, $917 = 0.0, $918 = 0.0, $919 = 0.0, $92 = 0.0, $920 = 0.0, $921 = 0.0, $922 = 0.0; var $923 = 0.0, $924 = 0.0, $925 = 0, $926 = 0, $927 = 0, $928 = 0, $929 = 0, $93 = 0, $930 = 0.0, $931 = 0, $932 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $A = 0, $BFCC = 0, $C$addr = 0; var $E = 0.0, $E360 = 0.0, $E422 = 0, $E563 = 0, $E570 = 0, $E868 = 0.0, $E988 = 0.0, $E_count = 0, $E_count1171 = 0, $E_count1173 = 0, $E_count447 = 0, $Em = 0.0, $Em987 = 0.0, $Etracker = 0, $Etracker1083 = 0, $Etracker1088 = 0, $Etracker1091 = 0, $Fs = 0, $Fs140 = 0, $Fs37 = 0; var $Fs64 = 0, $Fs983 = 0, $L1 = 0.0, $L2 = 0.0, $N = 0, $N2 = 0, $X1i = 0.0, $X1r = 0.0, $X1r304 = 0.0, $X2i = 0.0, $X2r = 0.0, $X2r305 = 0.0, $above_max_pitch = 0.0, $activity = 0, $activity1158 = 0, $activity1363 = 0, $activity_probability = 0, $add = 0, $add$ptr = 0, $add$ptr121 = 0; var $add$ptr126 = 0, $add$ptr127 = 0, $add107 = 0, $add1097 = 0.0, $add1108 = 0, $add1112 = 0.0, $add1130 = 0, $add1137 = 0.0, $add1139 = 0.0, $add1157 = 0.0, $add1172 = 0, $add1175 = 0, $add1180 = 0, $add1191 = 0, $add1193 = 0.0, $add1198 = 0, $add12 = 0, $add1200 = 0.0, $add1202 = 0.0, $add1204 = 0; var $add1207 = 0.0, $add1225 = 0.0, $add1237 = 0, $add1244 = 0, $add1248 = 0.0, $add1249 = 0, $add1260 = 0, $add1262 = 0.0, $add1267 = 0, $add1269 = 0.0, $add1273 = 0, $add1277 = 0, $add129 = 0, $add1297 = 0.0, $add1320 = 0, $add1323 = 0, $add1326 = 0, $add1329 = 0, $add1334 = 0, $add1353 = 0; var $add1369 = 0.0, $add137 = 0, $add1393 = 0.0, $add1405 = 0.0, $add1423 = 0.0, $add143 = 0, $add1435 = 0.0, $add167 = 0.0, $add179 = 0.0, $add18 = 0, $add212 = 0.0, $add216 = 0.0, $add218 = 0.0, $add221 = 0.0, $add226 = 0.0, $add24 = 0, $add244 = 0, $add252 = 0, $add252$sink = 0, $add263 = 0; var $add271 = 0, $add271$sink = 0, $add271$sink$sink = 0, $add314 = 0.0, $add331 = 0.0, $add337 = 0.0, $add345 = 0.0, $add346 = 0.0, $add350 = 0.0, $add363 = 0, $add381 = 0.0, $add387 = 0.0, $add395 = 0.0, $add396 = 0.0, $add4 = 0, $add406 = 0.0, $add411 = 0.0, $add425 = 0.0, $add427 = 0.0, $add428 = 0.0; var $add432 = 0.0, $add433 = 0.0, $add438 = 0.0, $add443 = 0, $add466 = 0.0, $add487 = 0.0, $add529 = 0.0, $add537 = 0.0, $add556 = 0.0, $add558 = 0.0, $add569 = 0.0, $add573 = 0.0, $add579 = 0.0, $add589 = 0.0, $add597 = 0.0, $add598 = 0.0, $add6 = 0, $add605 = 0.0, $add615 = 0.0, $add620 = 0; var $add627 = 0.0, $add636 = 0.0, $add644 = 0.0, $add65 = 0.0, $add669 = 0.0, $add67 = 0, $add676 = 0.0, $add707 = 0, $add714 = 0, $add716 = 0.0, $add72 = 0, $add721 = 0, $add723 = 0.0, $add729 = 0, $add736 = 0, $add764 = 0.0, $add772 = 0.0, $add776 = 0.0, $add779 = 0.0, $add788 = 0.0; var $add827 = 0.0, $add844 = 0.0, $add870 = 0, $add889 = 0.0, $add895 = 0.0, $add903 = 0.0, $add904 = 0.0, $add917 = 0.0, $add919 = 0.0, $add92 = 0, $add962 = 0, $add964 = 0, $add994 = 0.0, $alpha = 0.0, $alphaE = 0.0, $alphaE2 = 0.0, $angle = 0, $angle159 = 0.0, $angle2 = 0.0, $arrayidx100 = 0; var $arrayidx1004 = 0, $arrayidx1010 = 0, $arrayidx1012 = 0, $arrayidx1018 = 0, $arrayidx104 = 0, $arrayidx1040 = 0, $arrayidx1052 = 0, $arrayidx1064 = 0, $arrayidx110 = 0, $arrayidx1109 = 0, $arrayidx1110 = 0, $arrayidx1116 = 0, $arrayidx1131 = 0, $arrayidx1134 = 0, $arrayidx1136 = 0, $arrayidx114 = 0, $arrayidx1143 = 0, $arrayidx1190 = 0, $arrayidx1192 = 0, $arrayidx1196 = 0; var $arrayidx1199 = 0, $arrayidx1205 = 0, $arrayidx1208 = 0, $arrayidx1211 = 0, $arrayidx1221 = 0, $arrayidx1223 = 0, $arrayidx1227 = 0, $arrayidx1235 = 0, $arrayidx1238 = 0, $arrayidx1242 = 0, $arrayidx1245 = 0, $arrayidx1250 = 0, $arrayidx1258 = 0, $arrayidx1261 = 0, $arrayidx1265 = 0, $arrayidx1268 = 0, $arrayidx1274 = 0, $arrayidx1278 = 0, $arrayidx1291 = 0, $arrayidx1293 = 0; var $arrayidx1295 = 0, $arrayidx1299 = 0, $arrayidx1308 = 0, $arrayidx1309 = 0, $arrayidx1311 = 0, $arrayidx1321 = 0, $arrayidx1324 = 0, $arrayidx1327 = 0, $arrayidx1330 = 0, $arrayidx1332 = 0, $arrayidx1335 = 0, $arrayidx1336 = 0, $arrayidx1338 = 0, $arrayidx134 = 0, $arrayidx1347 = 0, $arrayidx1351 = 0, $arrayidx1354 = 0, $arrayidx1359 = 0, $arrayidx1362 = 0, $arrayidx1365 = 0; var $arrayidx1367 = 0, $arrayidx1370 = 0, $arrayidx1373 = 0, $arrayidx1381 = 0, $arrayidx162 = 0, $arrayidx165 = 0, $arrayidx168 = 0, $arrayidx171 = 0, $arrayidx174 = 0, $arrayidx177 = 0, $arrayidx181 = 0, $arrayidx183 = 0, $arrayidx188 = 0, $arrayidx190 = 0, $arrayidx202 = 0, $arrayidx211 = 0, $arrayidx215 = 0, $arrayidx224 = 0, $arrayidx229 = 0, $arrayidx230 = 0; var $arrayidx231 = 0, $arrayidx232 = 0, $arrayidx241 = 0, $arrayidx243 = 0, $arrayidx245 = 0, $arrayidx253 = 0, $arrayidx262 = 0, $arrayidx264 = 0, $arrayidx272 = 0, $arrayidx277 = 0, $arrayidx282 = 0, $arrayidx288 = 0, $arrayidx298 = 0, $arrayidx299 = 0, $arrayidx319 = 0, $arrayidx321 = 0, $arrayidx325 = 0, $arrayidx328 = 0, $arrayidx332 = 0, $arrayidx334 = 0; var $arrayidx339 = 0, $arrayidx342 = 0, $arrayidx361 = 0, $arrayidx364 = 0, $arrayidx369 = 0, $arrayidx371 = 0, $arrayidx375 = 0, $arrayidx378 = 0, $arrayidx382 = 0, $arrayidx384 = 0, $arrayidx389 = 0, $arrayidx392 = 0, $arrayidx397 = 0, $arrayidx402 = 0, $arrayidx408 = 0, $arrayidx423 = 0, $arrayidx424 = 0, $arrayidx437 = 0, $arrayidx444 = 0, $arrayidx445 = 0; var $arrayidx448 = 0, $arrayidx449 = 0, $arrayidx454 = 0, $arrayidx456 = 0, $arrayidx458 = 0, $arrayidx461 = 0, $arrayidx464 = 0, $arrayidx471 = 0, $arrayidx472 = 0, $arrayidx474 = 0, $arrayidx476 = 0, $arrayidx482 = 0, $arrayidx486 = 0, $arrayidx490 = 0, $arrayidx492 = 0, $arrayidx496 = 0, $arrayidx498 = 0, $arrayidx500 = 0, $arrayidx503 = 0, $arrayidx508 = 0; var $arrayidx512 = 0, $arrayidx516 = 0, $arrayidx520 = 0, $arrayidx524 = 0, $arrayidx526 = 0, $arrayidx528 = 0, $arrayidx53 = 0, $arrayidx531 = 0, $arrayidx536 = 0, $arrayidx540 = 0, $arrayidx544 = 0, $arrayidx544$sink = 0, $arrayidx547 = 0, $arrayidx549 = 0, $arrayidx552 = 0, $arrayidx554 = 0, $arrayidx564 = 0, $arrayidx565 = 0, $arrayidx571 = 0, $arrayidx572 = 0; var $arrayidx600 = 0, $arrayidx609 = 0, $arrayidx613 = 0, $arrayidx614 = 0, $arrayidx621 = 0, $arrayidx640 = 0, $arrayidx645 = 0, $arrayidx647 = 0, $arrayidx660 = 0, $arrayidx662 = 0, $arrayidx668 = 0, $arrayidx670 = 0, $arrayidx675 = 0, $arrayidx678 = 0, $arrayidx681 = 0, $arrayidx683 = 0, $arrayidx685 = 0, $arrayidx691 = 0, $arrayidx694 = 0, $arrayidx698 = 0; var $arrayidx708 = 0, $arrayidx709 = 0, $arrayidx715 = 0, $arrayidx717 = 0, $arrayidx722 = 0, $arrayidx725 = 0, $arrayidx728 = 0, $arrayidx730 = 0, $arrayidx732 = 0, $arrayidx737 = 0, $arrayidx740 = 0, $arrayidx743 = 0, $arrayidx750 = 0, $arrayidx751 = 0, $arrayidx757 = 0, $arrayidx758 = 0, $arrayidx76 = 0, $arrayidx762 = 0, $arrayidx763 = 0, $arrayidx770 = 0; var $arrayidx771 = 0, $arrayidx794 = 0, $arrayidx803 = 0, $arrayidx820 = 0, $arrayidx821 = 0, $arrayidx823 = 0, $arrayidx824 = 0, $arrayidx86 = 0, $arrayidx869 = 0, $arrayidx871 = 0, $arrayidx877 = 0, $arrayidx879 = 0, $arrayidx88 = 0, $arrayidx883 = 0, $arrayidx886 = 0, $arrayidx890 = 0, $arrayidx892 = 0, $arrayidx897 = 0, $arrayidx90 = 0, $arrayidx900 = 0; var $arrayidx922 = 0, $arrayidx929 = 0, $arrayidx93 = 0, $arrayidx935 = 0, $arrayidx937 = 0, $arrayidx943 = 0, $arrayidx95 = 0, $arrayidx971 = 0, $arrayidx997 = 0, $avg_mod = 0.0, $b = 0, $band_end = 0, $band_log2 = 0, $band_start = 0, $band_tonality = 0, $bandwidth = 0, $bandwidth1440 = 0, $bandwidth_mask = 0.0, $below_max_pitch = 0.0, $binE = 0.0; var $binE368 = 0.0, $binE876 = 0.0, $boost = 0.0, $c1$addr = 0, $c2$addr = 0, $call = 0.0, $call1076 = 0.0, $call1349 = 0.0, $call141 = 0.0, $call186 = 0.0, $call192 = 0.0, $call196 = 0, $call200 = 0.0, $call205 = 0, $call209 = 0.0, $call352 = 0.0, $call430 = 0.0, $call435 = 0.0, $call440 = 0.0, $call567 = 0.0; var $call580 = 0.0, $call590 = 0.0, $call780 = 0.0, $call789 = 0.0, $call851 = 0.0, $celt_mode$addr = 0, $cmean = 0, $cmean1220 = 0, $cmean1226 = 0, $cmp = 0, $cmp1013 = 0, $cmp1024 = 0, $cmp1029 = 0, $cmp1034 = 0, $cmp1038 = 0, $cmp1042 = 0, $cmp1049 = 0, $cmp1057 = 0, $cmp1060 = 0, $cmp1071 = 0; var $cmp1080 = 0, $cmp1093 = 0, $cmp1100 = 0, $cmp1104 = 0, $cmp1121 = 0, $cmp1126 = 0, $cmp1150 = 0, $cmp1161 = 0, $cmp1176 = 0, $cmp1187 = 0, $cmp1216 = 0, $cmp1232 = 0, $cmp1255 = 0, $cmp1283 = 0, $cmp1287 = 0, $cmp1305 = 0, $cmp1316 = 0, $cmp1343 = 0, $cmp1394 = 0, $cmp1408 = 0; var $cmp1424 = 0, $cmp151 = 0, $cmp156 = 0, $cmp19 = 0, $cmp238 = 0, $cmp246 = 0, $cmp256 = 0, $cmp265 = 0, $cmp279 = 0, $cmp295 = 0, $cmp30 = 0, $cmp316 = 0, $cmp32 = 0, $cmp357 = 0, $cmp365 = 0, $cmp38 = 0, $cmp398 = 0, $cmp415 = 0, $cmp417 = 0, $cmp451 = 0; var $cmp467 = 0, $cmp478 = 0, $cmp48 = 0, $cmp493 = 0, $cmp504 = 0, $cmp521 = 0, $cmp532 = 0, $cmp56 = 0, $cmp560 = 0, $cmp583 = 0, $cmp602 = 0, $cmp616 = 0, $cmp629 = 0, $cmp657 = 0, $cmp671 = 0, $cmp68 = 0, $cmp687 = 0, $cmp7 = 0, $cmp703 = 0, $cmp718 = 0; var $cmp733 = 0, $cmp747 = 0, $cmp753 = 0, $cmp766 = 0, $cmp78 = 0, $cmp782 = 0, $cmp799 = 0, $cmp808 = 0, $cmp812 = 0, $cmp816 = 0, $cmp831 = 0, $cmp834 = 0, $cmp84 = 0, $cmp854 = 0, $cmp865 = 0, $cmp873 = 0, $cmp908 = 0, $cmp914 = 0, $cmp924 = 0, $cmp938 = 0; var $cmp947 = 0, $cmp953 = 0, $cmp959 = 0, $cmp965 = 0, $cmp969 = 0, $cmp973 = 0, $cmp984 = 0, $cmp991 = 0, $cmp999 = 0, $cond = 0, $cond1008 = 0.0, $cond1020 = 0.0, $cond1036 = 0.0, $cond1087 = 0.0, $cond1168 = 0.0, $cond1183 = 0, $cond14 = 0, $cond1407 = 0.0, $cond1439 = 0.0, $cond26 = 0; var $cond286 = 0.0, $cond404 = 0.0, $cond514 = 0.0, $cond542 = 0.0, $cond542$sink = 0.0, $cond594 = 0.0, $cond612 = 0.0, $cond63 = 0, $cond639 = 0.0, $cond680 = 0.0, $cond697 = 0.0, $cond727 = 0.0, $cond742 = 0.0, $cond761 = 0.0, $cond775 = 0.0, $cond792 = 0, $cond839 = 0.0, $cond860 = 0, $cond913 = 0.0, $cond933 = 0.0; var $cond945 = 0.0, $cond967 = 0.0, $cond979 = 0.0, $cond993 = 0.0, $conv = 0.0, $conv1039 = 0, $conv1075 = 0.0, $conv1077 = 0.0, $conv1348 = 0.0, $conv1350 = 0.0, $conv15 = 0.0, $conv197 = 0.0, $conv199 = 0.0, $conv201 = 0.0, $conv206 = 0.0, $conv208 = 0.0, $conv210 = 0.0, $conv27 = 0.0, $conv351 = 0.0, $conv353 = 0.0; var $conv429 = 0.0, $conv431 = 0.0, $conv434 = 0.0, $conv436 = 0.0, $conv439 = 0.0, $conv441 = 0.0, $conv462 = 0.0, $conv465 = 0.0, $conv566 = 0.0, $conv568 = 0.0, $conv578 = 0.0, $conv581 = 0.0, $conv588 = 0.0, $conv591 = 0.0, $conv625 = 0.0, $conv634 = 0.0, $conv642 = 0.0, $conv664 = 0.0, $conv711 = 0.0, $conv778 = 0.0; var $conv781 = 0, $conv787 = 0.0, $conv790 = 0, $conv793 = 0, $conv850 = 0.0, $conv852 = 0.0, $conv861 = 0.0, $conv951 = 0.0, $conv957 = 0.0, $conv970 = 0, $count = 0, $count1070 = 0, $count11 = 0, $count1149 = 0, $count1174 = 0, $count1179 = 0, $count1184 = 0, $count1282 = 0, $count17 = 0, $count23 = 0; var $count29 = 0, $count292 = 0, $count3 = 0, $count450 = 0, $count47 = 0, $count5 = 0, $d2A = 0, $d2_angle = 0, $d2_angle161 = 0.0, $d2_angle2 = 0.0, $dA = 0, $d_angle = 0, $d_angle160 = 0.0, $d_angle2 = 0.0, $dec = 0, $dec1067 = 0, $dist = 0.0, $div = 0.0, $div1045 = 0.0, $div1147 = 0.0; var $div1148 = 0.0, $div1154 = 0.0, $div1159 = 0.0, $div1170 = 0.0, $div16 = 0.0, $div222 = 0.0, $div227 = 0.0, $div28 = 0.0, $div35 = 0, $div36 = 0, $div41 = 0, $div426 = 0.0, $div43 = 0, $div557 = 0.0, $div582 = 0.0, $div592 = 0.0, $div599 = 0.0, $div606 = 0.0, $div666 = 0.0, $div713 = 0.0; var $div848 = 0.0, $div849 = 0.0, $div862 = 0.0, $downmix$addr = 0, $downmix_state = 0, $downmix_state135 = 0, $features = 0, $frame_loudness = 0.0, $frame_noisiness = 0.0, $frame_probs = 0, $frame_stationarity = 0.0, $frame_tonality = 0.0, $highE = 0, $highE1133 = 0, $highE457 = 0, $highE460 = 0, $highE470 = 0, $highE481 = 0, $highE491 = 0, $highE497 = 0; var $highE499 = 0, $highE507 = 0, $highE530 = 0, $highE539 = 0, $highE543 = 0, $highE551 = 0, $hp_ener = 0.0, $hp_ener_accum = 0, $hp_ener_accum142 = 0, $hp_ener_accum74 = 0, $i = 0, $i115 = 0, $i169 = 0, $i172 = 0, $i175 = 0, $i178 = 0, $i310 = 0, $i333 = 0, $i335 = 0, $i340 = 0; var $i343 = 0, $i383 = 0, $i385 = 0, $i390 = 0, $i393 = 0, $i891 = 0, $i893 = 0, $i898 = 0, $i901 = 0, $i96 = 0, $in = 0, $inc = 0, $inc1114 = 0, $inc1118 = 0, $inc1141 = 0, $inc1145 = 0, $inc116 = 0, $inc1213 = 0, $inc1229 = 0, $inc1252 = 0; var $inc1280 = 0, $inc1301 = 0, $inc1313 = 0, $inc1340 = 0, $inc1356 = 0, $inc234 = 0, $inc290 = 0, $inc301 = 0, $inc348 = 0, $inc413 = 0, $inc575 = 0, $inc649 = 0, $inc700 = 0, $inc796 = 0, $inc805 = 0, $inc829 = 0, $inc842 = 0, $inc846 = 0, $inc906 = 0, $inc981 = 0; var $info = 0, $info75 = 0, $inmem = 0, $inmem106 = 0, $inmem117 = 0, $inmem119 = 0, $inmem122 = 0, $inmem124 = 0, $inmem133 = 0, $inmem87 = 0, $inmem91 = 0, $inmem97 = 0, $is_masked = 0, $j = 0, $k = 0, $kfft = 0, $kfft46 = 0, $layer_out = 0, $leak_boost = 0, $leak_boost802 = 0; var $leak_slope = 0.0, $leak_slope706 = 0.0, $leakage_from = 0, $leakage_to = 0, $len$addr = 0, $logE = 0, $logE446 = 0, $logE819 = 0, $logE822 = 0, $lowE = 0, $lowE1135 = 0, $lowE455 = 0, $lowE463 = 0, $lowE475 = 0, $lowE485 = 0, $lowE502 = 0, $lowE511 = 0, $lowE515 = 0, $lowE519 = 0, $lowE525 = 0; var $lowE527 = 0, $lowE535 = 0, $lowE548 = 0, $lowE553 = 0, $lowECount = 0, $lowECount1096 = 0, $lowECount1371 = 0, $lsb_depth$addr = 0, $maxE = 0.0, $max_frame_tonality = 0.0, $max_pitch_ratio1047 = 0, $mdct = 0, $meanE = 0, $meanE1003 = 0, $meanE1009 = 0, $meanE1011 = 0, $meanE1017 = 0, $meanE928 = 0, $meanE934 = 0, $meanE936 = 0; var $meanE942 = 0, $meanE996 = 0, $mem = 0, $mem1195 = 0, $mem1197 = 0, $mem1203 = 0, $mem1236 = 0, $mem1241 = 0, $mem1243 = 0, $mem1259 = 0, $mem1264 = 0, $mem1266 = 0, $mem1272 = 0, $mem1319 = 0, $mem1322 = 0, $mem1325 = 0, $mem1328 = 0, $mem1331 = 0, $mem1333 = 0, $mem1337 = 0; var $mem_fill = 0, $mem_fill130 = 0, $mem_fill138 = 0, $mem_fill144 = 0, $mem_fill52 = 0, $mem_fill55 = 0, $mem_fill60 = 0, $mem_fill66 = 0, $mem_fill71 = 0, $midE = 0, $mindist = 0.0, $mod1 = 0.0, $mod2 = 0.0, $mul = 0, $mul1005 = 0.0, $mul101 = 0.0, $mul1021 = 0.0, $mul1022 = 0.0, $mul1023 = 0.0, $mul1027 = 0.0; var $mul1028 = 0.0, $mul1037 = 0.0, $mul1078 = 0.0, $mul1090 = 0.0, $mul1107 = 0, $mul111 = 0.0, $mul1111 = 0.0, $mul1129 = 0, $mul1132 = 0.0, $mul1138 = 0.0, $mul1156 = 0.0, $mul1160 = 0.0, $mul1166 = 0.0, $mul1194 = 0.0, $mul1201 = 0.0, $mul1206 = 0.0, $mul1209 = 0.0, $mul1222 = 0.0, $mul1224 = 0.0, $mul1240 = 0.0; var $mul1247 = 0.0, $mul1263 = 0.0, $mul1270 = 0.0, $mul1275 = 0.0, $mul128 = 0, $mul1292 = 0.0, $mul1294 = 0.0, $mul1296 = 0.0, $mul1384 = 0.0, $mul1387 = 0.0, $mul1389 = 0.0, $mul1392 = 0.0, $mul1398 = 0.0, $mul1401 = 0.0, $mul1404 = 0.0, $mul1413 = 0.0, $mul1417 = 0.0, $mul1419 = 0.0, $mul1422 = 0.0, $mul1428 = 0.0; var $mul1431 = 0.0, $mul1434 = 0.0, $mul187 = 0.0, $mul193 = 0.0, $mul203 = 0.0, $mul204 = 0.0, $mul213 = 0.0, $mul214 = 0.0, $mul217 = 0.0, $mul219 = 0.0, $mul220 = 0.0, $mul225 = 0.0, $mul287 = 0.0, $mul308 = 0.0, $mul311 = 0.0, $mul312 = 0.0, $mul313 = 0.0, $mul323 = 0.0, $mul330 = 0.0, $mul336 = 0.0; var $mul344 = 0.0, $mul354 = 0.0, $mul373 = 0.0, $mul380 = 0.0, $mul386 = 0.0, $mul394 = 0.0, $mul405 = 0.0, $mul407 = 0.0, $mul410 = 0.0, $mul42 = 0, $mul442 = 0.0, $mul577 = 0.0, $mul587 = 0.0, $mul595 = 0.0, $mul596 = 0.0, $mul601 = 0.0, $mul610 = 0.0, $mul626 = 0.0, $mul628 = 0.0, $mul635 = 0.0; var $mul637 = 0.0, $mul643 = 0.0, $mul665 = 0.0, $mul712 = 0.0, $mul777 = 0.0, $mul786 = 0.0, $mul826 = 0.0, $mul863 = 0.0, $mul881 = 0.0, $mul888 = 0.0, $mul89 = 0.0, $mul894 = 0.0, $mul902 = 0.0, $mul923 = 0.0, $mul930 = 0.0, $mul94 = 0.0, $mul946 = 0.0, $mul949 = 0.0, $mul952 = 0.0, $mul958 = 0.0; var $mul968 = 0.0, $mul972 = 0.0, $mul976 = 0.0, $mul989 = 0.0, $mul998 = 0.0, $music_prob = 0, $nE = 0.0, $noise_floor = 0.0, $noise_ratio = 0.0, $noisiness = 0, $noisiness1442 = 0, $offset$addr = 0, $or$cond = 0, $out = 0, $pi4 = 0.0, $prev_band_tonality = 0, $prev_band_tonality608 = 0, $prev_band_tonality646 = 0, $prev_bandwidth = 0, $prev_bandwidth1033 = 0; var $prev_bandwidth1441 = 0, $prev_bandwidth990 = 0, $prev_tonality = 0, $prev_tonality1165 = 0, $prev_tonality1169 = 0, $relativeE = 0.0, $rem = 0, $remaining = 0, $rnn_state = 0, $rnn_state1379 = 0, $shl = 0, $slope = 0.0, $spec_variability = 0.0, $stationarity = 0.0, $std = 0, $std1298 = 0, $std1346 = 0, $sub = 0, $sub$ptr$div = 0, $sub$ptr$lhs$cast = 0; var $sub$ptr$rhs$cast = 0, $sub$ptr$sub = 0, $sub1002 = 0.0, $sub102 = 0, $sub103 = 0, $sub1055 = 0, $sub1063 = 0, $sub1079 = 0.0, $sub108 = 0, $sub1084 = 0.0, $sub1089 = 0.0, $sub109 = 0, $sub1092 = 0.0, $sub112 = 0, $sub113 = 0, $sub1155 = 0.0, $sub1210 = 0.0, $sub1219 = 0.0, $sub1239 = 0.0, $sub1246 = 0.0; var $sub1271 = 0.0, $sub1276 = 0.0, $sub1290 = 0.0, $sub131 = 0, $sub1310 = 0.0, $sub132 = 0, $sub1352 = 0.0, $sub1358 = 0.0, $sub1361 = 0.0, $sub1364 = 0.0, $sub1366 = 0.0, $sub1372 = 0.0, $sub1383 = 0.0, $sub1385 = 0.0, $sub139 = 0, $sub1391 = 0.0, $sub1403 = 0.0, $sub1412 = 0.0, $sub1414 = 0.0, $sub1421 = 0.0; var $sub1433 = 0.0, $sub164 = 0, $sub170 = 0, $sub173 = 0.0, $sub176 = 0, $sub180 = 0, $sub185 = 0.0, $sub189 = 0.0, $sub191 = 0.0, $sub194 = 0.0, $sub195 = 0.0, $sub198 = 0.0, $sub207 = 0.0, $sub223 = 0.0, $sub228 = 0.0, $sub237 = 0, $sub242 = 0, $sub249 = 0, $sub261 = 0, $sub268 = 0; var $sub278 = 0.0, $sub284 = 0.0, $sub324 = 0, $sub327 = 0, $sub338 = 0, $sub341 = 0, $sub374 = 0, $sub377 = 0, $sub388 = 0, $sub391 = 0, $sub409 = 0.0, $sub473 = 0.0, $sub477 = 0.0, $sub483 = 0.0, $sub501 = 0.0, $sub509 = 0.0, $sub550 = 0.0, $sub555 = 0.0, $sub61 = 0, $sub619 = 0; var $sub622 = 0.0, $sub624 = 0, $sub633 = 0, $sub641 = 0, $sub654 = 0.0, $sub661 = 0, $sub663 = 0, $sub667 = 0, $sub674 = 0, $sub682 = 0, $sub684 = 0.0, $sub686 = 0.0, $sub690 = 0, $sub692 = 0.0, $sub695 = 0.0, $sub710 = 0, $sub731 = 0.0, $sub738 = 0.0, $sub752 = 0.0, $sub759 = 0.0; var $sub765 = 0.0, $sub773 = 0.0, $sub82 = 0, $sub825 = 0.0, $sub853 = 0, $sub858 = 0, $sub882 = 0, $sub885 = 0, $sub896 = 0, $sub899 = 0, $sub921 = 0.0, $sub927 = 0.0, $sub950 = 0, $sub956 = 0, $sub98 = 0, $sub99 = 0, $sub995 = 0.0, $sum = 0.0, $sum1124 = 0.0, $tE = 0.0; var $tmp = 0.0, $tobool = 0, $tobool1053 = 0, $tobool1065 = 0, $tonal$addr = 0, $tonality = 0, $tonality1185 = 0, $tonality1360 = 0, $tonality2 = 0, $tonality_slope = 0, $tonality_slope1368 = 0, $tt = 0.0, $w = 0.0, $write_pos = 0, $write_pos77 = 0, $write_pos81 = 0, $x$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 11648|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(11648|0); $band_tonality = sp + 11496|0; $logE = sp + 11424|0; $BFCC = sp + 11392|0; $features = sp + 11292|0; $frame_probs = sp + 11256|0; $is_masked = sp + 11160|0; $tonality2 = sp + 10176|0; $midE = sp + 10144|0; $band_log2 = sp + 10064|0; $leakage_from = sp + 9988|0; $leakage_to = sp + 9912|0; $layer_out = sp + 9784|0; $in = sp + 5936|0; $out = sp + 2096|0; $tonality = sp + 1136|0; $noisiness = sp + 176|0; $tonal$addr = $tonal; $celt_mode$addr = $celt_mode; $x$addr = $x; $len$addr = $len; $offset$addr = $offset; $c1$addr = $c1; $c2$addr = $c2; $C$addr = $C; $lsb_depth$addr = $lsb_depth; $downmix$addr = $downmix; $N = 480; $N2 = 240; $0 = $tonal$addr; $angle = ((($0)) + 12|0); $A = $angle; $1 = $tonal$addr; $d_angle = ((($1)) + 972|0); $dA = $d_angle; $2 = $tonal$addr; $d2_angle = ((($2)) + 1932|0); $d2A = $d2_angle; $pi4 = 97.409088134765625; $slope = 0.0; $bandwidth = 0; $maxE = 0.0; $spec_variability = 0.0; $3 = $tonal$addr; $count = ((($3)) + 7436|0); $4 = HEAP32[$count>>2]|0; $add = (1 + ($4))|0; $cmp = (10)<($add|0); if ($cmp) { $cond = 10; } else { $5 = $tonal$addr; $count3 = ((($5)) + 7436|0); $6 = HEAP32[$count3>>2]|0; $add4 = (1 + ($6))|0; $cond = $add4; } $conv = (+($cond|0)); $div = 1.0 / $conv; $alpha = $div; $7 = $tonal$addr; $count5 = ((($7)) + 7436|0); $8 = HEAP32[$count5>>2]|0; $add6 = (1 + ($8))|0; $cmp7 = (25)<($add6|0); if ($cmp7) { $cond14 = 25; } else { $9 = $tonal$addr; $count11 = ((($9)) + 7436|0); $10 = HEAP32[$count11>>2]|0; $add12 = (1 + ($10))|0; $cond14 = $add12; } $conv15 = (+($cond14|0)); $div16 = 1.0 / $conv15; $alphaE = $div16; $11 = $tonal$addr; $count17 = ((($11)) + 7436|0); $12 = HEAP32[$count17>>2]|0; $add18 = (1 + ($12))|0; $cmp19 = (100)<($add18|0); if ($cmp19) { $cond26 = 100; } else { $13 = $tonal$addr; $count23 = ((($13)) + 7436|0); $14 = HEAP32[$count23>>2]|0; $add24 = (1 + ($14))|0; $cond26 = $add24; } $conv27 = (+($cond26|0)); $div28 = 1.0 / $conv27; $alphaE2 = $div28; $15 = $tonal$addr; $count29 = ((($15)) + 7436|0); $16 = HEAP32[$count29>>2]|0; $cmp30 = ($16|0)<=(1); $$div28 = $cmp30 ? 1.0 : $div28; $alphaE2 = $$div28; $17 = $tonal$addr; $Fs = ((($17)) + 8|0); $18 = HEAP32[$Fs>>2]|0; $cmp32 = ($18|0)==(48000); if ($cmp32) { $19 = $len$addr; $div35 = (($19|0) / 2)&-1; $len$addr = $div35; $20 = $offset$addr; $div36 = (($20|0) / 2)&-1; $offset$addr = $div36; } else { $21 = $tonal$addr; $Fs37 = ((($21)) + 8|0); $22 = HEAP32[$Fs37>>2]|0; $cmp38 = ($22|0)==(16000); if ($cmp38) { $23 = $len$addr; $mul = ($23*3)|0; $div41 = (($mul|0) / 2)&-1; $len$addr = $div41; $24 = $offset$addr; $mul42 = ($24*3)|0; $div43 = (($mul42|0) / 2)&-1; $offset$addr = $div43; } } $25 = $celt_mode$addr; $mdct = ((($25)) + 64|0); $kfft46 = ((($mdct)) + 8|0); $26 = HEAP32[$kfft46>>2]|0; $kfft = $26; $27 = $tonal$addr; $count47 = ((($27)) + 7436|0); $28 = HEAP32[$count47>>2]|0; $cmp48 = ($28|0)==(0); if ($cmp48) { $29 = $tonal$addr; $mem_fill = ((($29)) + 5772|0); HEAP32[$mem_fill>>2] = 240; } $30 = $downmix$addr; $31 = $x$addr; $32 = $tonal$addr; $inmem = ((($32)) + 2892|0); $33 = $tonal$addr; $mem_fill52 = ((($33)) + 5772|0); $34 = HEAP32[$mem_fill52>>2]|0; $arrayidx53 = (($inmem) + ($34<<2)|0); $35 = $tonal$addr; $downmix_state = ((($35)) + 7588|0); $36 = $len$addr; $37 = $tonal$addr; $mem_fill55 = ((($37)) + 5772|0); $38 = HEAP32[$mem_fill55>>2]|0; $sub = (720 - ($38))|0; $cmp56 = ($36|0)<($sub|0); if ($cmp56) { $39 = $len$addr; $cond63 = $39; } else { $40 = $tonal$addr; $mem_fill60 = ((($40)) + 5772|0); $41 = HEAP32[$mem_fill60>>2]|0; $sub61 = (720 - ($41))|0; $cond63 = $sub61; } $42 = $offset$addr; $43 = $c1$addr; $44 = $c2$addr; $45 = $C$addr; $46 = $tonal$addr; $Fs64 = ((($46)) + 8|0); $47 = HEAP32[$Fs64>>2]|0; $call = (+_downmix_and_resample($30,$31,$arrayidx53,$downmix_state,$cond63,$42,$43,$44,$45,$47)); $48 = $tonal$addr; $hp_ener_accum = ((($48)) + 7456|0); $49 = +HEAPF32[$hp_ener_accum>>2]; $add65 = $49 + $call; HEAPF32[$hp_ener_accum>>2] = $add65; $50 = $tonal$addr; $mem_fill66 = ((($50)) + 5772|0); $51 = HEAP32[$mem_fill66>>2]|0; $52 = $len$addr; $add67 = (($51) + ($52))|0; $cmp68 = ($add67|0)<(720); if ($cmp68) { $53 = $len$addr; $54 = $tonal$addr; $mem_fill71 = ((($54)) + 5772|0); $55 = HEAP32[$mem_fill71>>2]|0; $add72 = (($55) + ($53))|0; HEAP32[$mem_fill71>>2] = $add72; STACKTOP = sp;return; } $56 = $tonal$addr; $hp_ener_accum74 = ((($56)) + 7456|0); $57 = +HEAPF32[$hp_ener_accum74>>2]; $hp_ener = $57; $58 = $tonal$addr; $info75 = ((($58)) + 7600|0); $59 = $tonal$addr; $write_pos = ((($59)) + 7444|0); $60 = HEAP32[$write_pos>>2]|0; $inc = (($60) + 1)|0; HEAP32[$write_pos>>2] = $inc; $arrayidx76 = (($info75) + ($60<<6)|0); $info = $arrayidx76; $61 = $tonal$addr; $write_pos77 = ((($61)) + 7444|0); $62 = HEAP32[$write_pos77>>2]|0; $cmp78 = ($62|0)>=(100); if ($cmp78) { $63 = $tonal$addr; $write_pos81 = ((($63)) + 7444|0); $64 = HEAP32[$write_pos81>>2]|0; $sub82 = (($64) - 100)|0; HEAP32[$write_pos81>>2] = $sub82; } $i = 0; while(1) { $65 = $i; $66 = $N2; $cmp84 = ($65|0)<($66|0); if (!($cmp84)) { break; } $67 = $i; $arrayidx86 = (412 + ($67<<2)|0); $68 = +HEAPF32[$arrayidx86>>2]; $w = $68; $69 = $w; $70 = $tonal$addr; $inmem87 = ((($70)) + 2892|0); $71 = $i; $arrayidx88 = (($inmem87) + ($71<<2)|0); $72 = +HEAPF32[$arrayidx88>>2]; $mul89 = $69 * $72; $73 = $i; $arrayidx90 = (($in) + ($73<<3)|0); HEAPF32[$arrayidx90>>2] = $mul89; $74 = $w; $75 = $tonal$addr; $inmem91 = ((($75)) + 2892|0); $76 = $N2; $77 = $i; $add92 = (($76) + ($77))|0; $arrayidx93 = (($inmem91) + ($add92<<2)|0); $78 = +HEAPF32[$arrayidx93>>2]; $mul94 = $74 * $78; $79 = $i; $arrayidx95 = (($in) + ($79<<3)|0); $i96 = ((($arrayidx95)) + 4|0); HEAPF32[$i96>>2] = $mul94; $80 = $w; $81 = $tonal$addr; $inmem97 = ((($81)) + 2892|0); $82 = $N; $83 = $i; $sub98 = (($82) - ($83))|0; $sub99 = (($sub98) - 1)|0; $arrayidx100 = (($inmem97) + ($sub99<<2)|0); $84 = +HEAPF32[$arrayidx100>>2]; $mul101 = $80 * $84; $85 = $N; $86 = $i; $sub102 = (($85) - ($86))|0; $sub103 = (($sub102) - 1)|0; $arrayidx104 = (($in) + ($sub103<<3)|0); HEAPF32[$arrayidx104>>2] = $mul101; $87 = $w; $88 = $tonal$addr; $inmem106 = ((($88)) + 2892|0); $89 = $N; $90 = $N2; $add107 = (($89) + ($90))|0; $91 = $i; $sub108 = (($add107) - ($91))|0; $sub109 = (($sub108) - 1)|0; $arrayidx110 = (($inmem106) + ($sub109<<2)|0); $92 = +HEAPF32[$arrayidx110>>2]; $mul111 = $87 * $92; $93 = $N; $94 = $i; $sub112 = (($93) - ($94))|0; $sub113 = (($sub112) - 1)|0; $arrayidx114 = (($in) + ($sub113<<3)|0); $i115 = ((($arrayidx114)) + 4|0); HEAPF32[$i115>>2] = $mul111; $95 = $i; $inc116 = (($95) + 1)|0; $i = $inc116; } $96 = $tonal$addr; $inmem117 = ((($96)) + 2892|0); $97 = $tonal$addr; $inmem119 = ((($97)) + 2892|0); $add$ptr = ((($inmem119)) + 2880|0); $add$ptr121 = ((($add$ptr)) + -960|0); $98 = $tonal$addr; $inmem122 = ((($98)) + 2892|0); $99 = $tonal$addr; $inmem124 = ((($99)) + 2892|0); $add$ptr126 = ((($inmem124)) + 2880|0); $add$ptr127 = ((($add$ptr126)) + -960|0); $sub$ptr$lhs$cast = $inmem122; $sub$ptr$rhs$cast = $add$ptr127; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $sub$ptr$div = (($sub$ptr$sub|0) / 4)&-1; $mul128 = 0; $add129 = (960 + ($mul128))|0; _memmove(($inmem117|0),($add$ptr121|0),($add129|0))|0; $100 = $len$addr; $101 = $tonal$addr; $mem_fill130 = ((($101)) + 5772|0); $102 = HEAP32[$mem_fill130>>2]|0; $sub131 = (720 - ($102))|0; $sub132 = (($100) - ($sub131))|0; $remaining = $sub132; $103 = $downmix$addr; $104 = $x$addr; $105 = $tonal$addr; $inmem133 = ((($105)) + 2892|0); $arrayidx134 = ((($inmem133)) + 960|0); $106 = $tonal$addr; $downmix_state135 = ((($106)) + 7588|0); $107 = $remaining; $108 = $offset$addr; $add137 = (($108) + 720)|0; $109 = $tonal$addr; $mem_fill138 = ((($109)) + 5772|0); $110 = HEAP32[$mem_fill138>>2]|0; $sub139 = (($add137) - ($110))|0; $111 = $c1$addr; $112 = $c2$addr; $113 = $C$addr; $114 = $tonal$addr; $Fs140 = ((($114)) + 8|0); $115 = HEAP32[$Fs140>>2]|0; $call141 = (+_downmix_and_resample($103,$104,$arrayidx134,$downmix_state135,$107,$sub139,$111,$112,$113,$115)); $116 = $tonal$addr; $hp_ener_accum142 = ((($116)) + 7456|0); HEAPF32[$hp_ener_accum142>>2] = $call141; $117 = $remaining; $add143 = (240 + ($117))|0; $118 = $tonal$addr; $mem_fill144 = ((($118)) + 5772|0); HEAP32[$mem_fill144>>2] = $add143; $119 = $kfft; _opus_fft_c($119,$in,$out); $120 = +HEAPF32[$out>>2]; $121 = +HEAPF32[$out>>2]; $cmp151 = $120 != $121; if ($cmp151) { $122 = $info; HEAP32[$122>>2] = 0; STACKTOP = sp;return; } $i = 1; while(1) { $123 = $i; $124 = $N2; $cmp156 = ($123|0)<($124|0); if (!($cmp156)) { break; } $125 = $i; $arrayidx162 = (($out) + ($125<<3)|0); $126 = +HEAPF32[$arrayidx162>>2]; $127 = $N; $128 = $i; $sub164 = (($127) - ($128))|0; $arrayidx165 = (($out) + ($sub164<<3)|0); $129 = +HEAPF32[$arrayidx165>>2]; $add167 = $126 + $129; $X1r = $add167; $130 = $i; $arrayidx168 = (($out) + ($130<<3)|0); $i169 = ((($arrayidx168)) + 4|0); $131 = +HEAPF32[$i169>>2]; $132 = $N; $133 = $i; $sub170 = (($132) - ($133))|0; $arrayidx171 = (($out) + ($sub170<<3)|0); $i172 = ((($arrayidx171)) + 4|0); $134 = +HEAPF32[$i172>>2]; $sub173 = $131 - $134; $X1i = $sub173; $135 = $i; $arrayidx174 = (($out) + ($135<<3)|0); $i175 = ((($arrayidx174)) + 4|0); $136 = +HEAPF32[$i175>>2]; $137 = $N; $138 = $i; $sub176 = (($137) - ($138))|0; $arrayidx177 = (($out) + ($sub176<<3)|0); $i178 = ((($arrayidx177)) + 4|0); $139 = +HEAPF32[$i178>>2]; $add179 = $136 + $139; $X2r = $add179; $140 = $N; $141 = $i; $sub180 = (($140) - ($141))|0; $arrayidx181 = (($out) + ($sub180<<3)|0); $142 = +HEAPF32[$arrayidx181>>2]; $143 = $i; $arrayidx183 = (($out) + ($143<<3)|0); $144 = +HEAPF32[$arrayidx183>>2]; $sub185 = $142 - $144; $X2i = $sub185; $145 = $X1i; $146 = $X1r; $call186 = (+_fast_atan2f($145,$146)); $mul187 = 0.15915493667125702 * $call186; $angle159 = $mul187; $147 = $angle159; $148 = $A; $149 = $i; $arrayidx188 = (($148) + ($149<<2)|0); $150 = +HEAPF32[$arrayidx188>>2]; $sub189 = $147 - $150; $d_angle160 = $sub189; $151 = $d_angle160; $152 = $dA; $153 = $i; $arrayidx190 = (($152) + ($153<<2)|0); $154 = +HEAPF32[$arrayidx190>>2]; $sub191 = $151 - $154; $d2_angle161 = $sub191; $155 = $X2i; $156 = $X2r; $call192 = (+_fast_atan2f($155,$156)); $mul193 = 0.15915493667125702 * $call192; $angle2 = $mul193; $157 = $angle2; $158 = $angle159; $sub194 = $157 - $158; $d_angle2 = $sub194; $159 = $d_angle2; $160 = $d_angle160; $sub195 = $159 - $160; $d2_angle2 = $sub195; $161 = $d2_angle161; $162 = $d2_angle161; $call196 = (_lrintf($162)|0); $conv197 = (+($call196|0)); $sub198 = $161 - $conv197; $mod1 = $sub198; $163 = $mod1; $conv199 = $163; $call200 = (+Math_abs((+$conv199))); $conv201 = $call200; $164 = $i; $arrayidx202 = (($noisiness) + ($164<<2)|0); HEAPF32[$arrayidx202>>2] = $conv201; $165 = $mod1; $166 = $mod1; $mul203 = $166 * $165; $mod1 = $mul203; $167 = $mod1; $168 = $mod1; $mul204 = $168 * $167; $mod1 = $mul204; $169 = $d2_angle2; $170 = $d2_angle2; $call205 = (_lrintf($170)|0); $conv206 = (+($call205|0)); $sub207 = $169 - $conv206; $mod2 = $sub207; $171 = $mod2; $conv208 = $171; $call209 = (+Math_abs((+$conv208))); $conv210 = $call209; $172 = $i; $arrayidx211 = (($noisiness) + ($172<<2)|0); $173 = +HEAPF32[$arrayidx211>>2]; $add212 = $173 + $conv210; HEAPF32[$arrayidx211>>2] = $add212; $174 = $mod2; $175 = $mod2; $mul213 = $175 * $174; $mod2 = $mul213; $176 = $mod2; $177 = $mod2; $mul214 = $177 * $176; $mod2 = $mul214; $178 = $d2A; $179 = $i; $arrayidx215 = (($178) + ($179<<2)|0); $180 = +HEAPF32[$arrayidx215>>2]; $181 = $mod1; $add216 = $180 + $181; $182 = $mod2; $mul217 = 2.0 * $182; $add218 = $add216 + $mul217; $mul219 = 0.25 * $add218; $avg_mod = $mul219; $183 = $avg_mod; $mul220 = 62341.81640625 * $183; $add221 = 1.0 + $mul220; $div222 = 1.0 / $add221; $sub223 = $div222 - 0.014999999664723873; $184 = $i; $arrayidx224 = (($tonality) + ($184<<2)|0); HEAPF32[$arrayidx224>>2] = $sub223; $185 = $mod2; $mul225 = 62341.81640625 * $185; $add226 = 1.0 + $mul225; $div227 = 1.0 / $add226; $sub228 = $div227 - 0.014999999664723873; $186 = $i; $arrayidx229 = (($tonality2) + ($186<<2)|0); HEAPF32[$arrayidx229>>2] = $sub228; $187 = $angle2; $188 = $A; $189 = $i; $arrayidx230 = (($188) + ($189<<2)|0); HEAPF32[$arrayidx230>>2] = $187; $190 = $d_angle2; $191 = $dA; $192 = $i; $arrayidx231 = (($191) + ($192<<2)|0); HEAPF32[$arrayidx231>>2] = $190; $193 = $mod2; $194 = $d2A; $195 = $i; $arrayidx232 = (($194) + ($195<<2)|0); HEAPF32[$arrayidx232>>2] = $193; $196 = $i; $inc234 = (($196) + 1)|0; $i = $inc234; } $i = 2; while(1) { $197 = $i; $198 = $N2; $sub237 = (($198) - 1)|0; $cmp238 = ($197|0)<($sub237|0); if (!($cmp238)) { break; } $199 = $i; $arrayidx241 = (($tonality2) + ($199<<2)|0); $200 = +HEAPF32[$arrayidx241>>2]; $201 = $i; $sub242 = (($201) - 1)|0; $arrayidx243 = (($tonality2) + ($sub242<<2)|0); $202 = +HEAPF32[$arrayidx243>>2]; $203 = $i; $add244 = (($203) + 1)|0; $arrayidx245 = (($tonality2) + ($add244<<2)|0); $204 = +HEAPF32[$arrayidx245>>2]; $cmp246 = $202 > $204; $205 = $i; $add252 = (($205) + 1)|0; $sub249 = (($205) - 1)|0; $add252$sink = $cmp246 ? $sub249 : $add252; $arrayidx253 = (($tonality2) + ($add252$sink<<2)|0); $206 = +HEAPF32[$arrayidx253>>2]; $cmp256 = $200 < $206; $207 = $i; if ($cmp256) { $add271$sink$sink = $207; } else { $sub261 = (($207) - 1)|0; $arrayidx262 = (($tonality2) + ($sub261<<2)|0); $208 = +HEAPF32[$arrayidx262>>2]; $209 = $i; $add263 = (($209) + 1)|0; $arrayidx264 = (($tonality2) + ($add263<<2)|0); $210 = +HEAPF32[$arrayidx264>>2]; $cmp265 = $208 > $210; $211 = $i; $add271 = (($211) + 1)|0; $sub268 = (($211) - 1)|0; $add271$sink = $cmp265 ? $sub268 : $add271; $add271$sink$sink = $add271$sink; } $arrayidx272 = (($tonality2) + ($add271$sink$sink<<2)|0); $212 = +HEAPF32[$arrayidx272>>2]; $tt = $212; $213 = $i; $arrayidx277 = (($tonality) + ($213<<2)|0); $214 = +HEAPF32[$arrayidx277>>2]; $215 = $tt; $sub278 = $215 - 0.10000000149011612; $cmp279 = $214 > $sub278; if ($cmp279) { $216 = $i; $arrayidx282 = (($tonality) + ($216<<2)|0); $217 = +HEAPF32[$arrayidx282>>2]; $cond286 = $217; } else { $218 = $tt; $sub284 = $218 - 0.10000000149011612; $cond286 = $sub284; } $mul287 = 0.89999997615814208 * $cond286; $219 = $i; $arrayidx288 = (($tonality) + ($219<<2)|0); HEAPF32[$arrayidx288>>2] = $mul287; $220 = $i; $inc290 = (($220) + 1)|0; $i = $inc290; } $frame_tonality = 0.0; $max_frame_tonality = 0.0; $221 = $info; $activity = ((($221)) + 16|0); HEAPF32[$activity>>2] = 0.0; $frame_noisiness = 0.0; $frame_stationarity = 0.0; $222 = $tonal$addr; $count292 = ((($222)) + 7436|0); $223 = HEAP32[$count292>>2]|0; $tobool = ($223|0)!=(0); L52: do { if (!($tobool)) { $b = 0; while(1) { $224 = $b; $cmp295 = ($224|0)<(18); if (!($cmp295)) { break L52; } $225 = $tonal$addr; $lowE = ((($225)) + 7008|0); $226 = $b; $arrayidx298 = (($lowE) + ($226<<2)|0); HEAPF32[$arrayidx298>>2] = 1.0E+10; $227 = $tonal$addr; $highE = ((($227)) + 7080|0); $228 = $b; $arrayidx299 = (($highE) + ($228<<2)|0); HEAPF32[$arrayidx299>>2] = -1.0E+10; $229 = $b; $inc301 = (($229) + 1)|0; $b = $inc301; } } } while(0); $relativeE = 0.0; $frame_loudness = 0.0; $E = 0.0; $230 = +HEAPF32[$out>>2]; $mul308 = 2.0 * $230; $X1r304 = $mul308; $i310 = ((($out)) + 4|0); $231 = +HEAPF32[$i310>>2]; $mul311 = 2.0 * $231; $X2r305 = $mul311; $232 = $X1r304; $233 = $X1r304; $mul312 = $232 * $233; $234 = $X2r305; $235 = $X2r305; $mul313 = $234 * $235; $add314 = $mul312 + $mul313; $E = $add314; $i = 1; while(1) { $236 = $i; $cmp316 = ($236|0)<(4); if (!($cmp316)) { break; } $237 = $i; $arrayidx319 = (($out) + ($237<<3)|0); $238 = +HEAPF32[$arrayidx319>>2]; $239 = $i; $arrayidx321 = (($out) + ($239<<3)|0); $240 = +HEAPF32[$arrayidx321>>2]; $mul323 = $238 * $240; $241 = $N; $242 = $i; $sub324 = (($241) - ($242))|0; $arrayidx325 = (($out) + ($sub324<<3)|0); $243 = +HEAPF32[$arrayidx325>>2]; $244 = $N; $245 = $i; $sub327 = (($244) - ($245))|0; $arrayidx328 = (($out) + ($sub327<<3)|0); $246 = +HEAPF32[$arrayidx328>>2]; $mul330 = $243 * $246; $add331 = $mul323 + $mul330; $247 = $i; $arrayidx332 = (($out) + ($247<<3)|0); $i333 = ((($arrayidx332)) + 4|0); $248 = +HEAPF32[$i333>>2]; $249 = $i; $arrayidx334 = (($out) + ($249<<3)|0); $i335 = ((($arrayidx334)) + 4|0); $250 = +HEAPF32[$i335>>2]; $mul336 = $248 * $250; $add337 = $add331 + $mul336; $251 = $N; $252 = $i; $sub338 = (($251) - ($252))|0; $arrayidx339 = (($out) + ($sub338<<3)|0); $i340 = ((($arrayidx339)) + 4|0); $253 = +HEAPF32[$i340>>2]; $254 = $N; $255 = $i; $sub341 = (($254) - ($255))|0; $arrayidx342 = (($out) + ($sub341<<3)|0); $i343 = ((($arrayidx342)) + 4|0); $256 = +HEAPF32[$i343>>2]; $mul344 = $253 * $256; $add345 = $add337 + $mul344; $binE = $add345; $257 = $binE; $258 = $E; $add346 = $258 + $257; $E = $add346; $259 = $i; $inc348 = (($259) + 1)|0; $i = $inc348; } $260 = $E; $E = $260; $261 = $E; $add350 = $261 + 1.000000013351432E-10; $conv351 = $add350; $call352 = (+Math_log((+$conv351))); $conv353 = $call352; $mul354 = 0.72134751081466675 * $conv353; HEAPF32[$band_log2>>2] = $mul354; $b = 0; while(1) { $262 = $b; $cmp357 = ($262|0)<(18); if (!($cmp357)) { break; } $E360 = 0.0; $tE = 0.0; $nE = 0.0; $263 = $b; $arrayidx361 = (1372 + ($263<<2)|0); $264 = HEAP32[$arrayidx361>>2]|0; $i = $264; while(1) { $265 = $i; $266 = $b; $add363 = (($266) + 1)|0; $arrayidx364 = (1372 + ($add363<<2)|0); $267 = HEAP32[$arrayidx364>>2]|0; $cmp365 = ($265|0)<($267|0); if (!($cmp365)) { break; } $268 = $i; $arrayidx369 = (($out) + ($268<<3)|0); $269 = +HEAPF32[$arrayidx369>>2]; $270 = $i; $arrayidx371 = (($out) + ($270<<3)|0); $271 = +HEAPF32[$arrayidx371>>2]; $mul373 = $269 * $271; $272 = $N; $273 = $i; $sub374 = (($272) - ($273))|0; $arrayidx375 = (($out) + ($sub374<<3)|0); $274 = +HEAPF32[$arrayidx375>>2]; $275 = $N; $276 = $i; $sub377 = (($275) - ($276))|0; $arrayidx378 = (($out) + ($sub377<<3)|0); $277 = +HEAPF32[$arrayidx378>>2]; $mul380 = $274 * $277; $add381 = $mul373 + $mul380; $278 = $i; $arrayidx382 = (($out) + ($278<<3)|0); $i383 = ((($arrayidx382)) + 4|0); $279 = +HEAPF32[$i383>>2]; $280 = $i; $arrayidx384 = (($out) + ($280<<3)|0); $i385 = ((($arrayidx384)) + 4|0); $281 = +HEAPF32[$i385>>2]; $mul386 = $279 * $281; $add387 = $add381 + $mul386; $282 = $N; $283 = $i; $sub388 = (($282) - ($283))|0; $arrayidx389 = (($out) + ($sub388<<3)|0); $i390 = ((($arrayidx389)) + 4|0); $284 = +HEAPF32[$i390>>2]; $285 = $N; $286 = $i; $sub391 = (($285) - ($286))|0; $arrayidx392 = (($out) + ($sub391<<3)|0); $i393 = ((($arrayidx392)) + 4|0); $287 = +HEAPF32[$i393>>2]; $mul394 = $284 * $287; $add395 = $add387 + $mul394; $binE368 = $add395; $288 = $binE368; $binE368 = $288; $289 = $binE368; $290 = $E360; $add396 = $290 + $289; $E360 = $add396; $291 = $binE368; $292 = $i; $arrayidx397 = (($tonality) + ($292<<2)|0); $293 = +HEAPF32[$arrayidx397>>2]; $cmp398 = 0.0 > $293; if ($cmp398) { $cond404 = 0.0; } else { $294 = $i; $arrayidx402 = (($tonality) + ($294<<2)|0); $295 = +HEAPF32[$arrayidx402>>2]; $cond404 = $295; } $mul405 = $291 * $cond404; $296 = $tE; $add406 = $296 + $mul405; $tE = $add406; $297 = $binE368; $mul407 = $297 * 2.0; $298 = $i; $arrayidx408 = (($noisiness) + ($298<<2)|0); $299 = +HEAPF32[$arrayidx408>>2]; $sub409 = 0.5 - $299; $mul410 = $mul407 * $sub409; $300 = $nE; $add411 = $300 + $mul410; $nE = $add411; $301 = $i; $inc413 = (($301) + 1)|0; $i = $inc413; } $302 = $E360; $cmp415 = $302 < 1.0E+9; if (!($cmp415)) { label = 52; break; } $303 = $E360; $304 = $E360; $cmp417 = $303 != $304; if ($cmp417) { label = 52; break; } $306 = $E360; $307 = $tonal$addr; $E422 = ((($307)) + 5856|0); $308 = $tonal$addr; $E_count = ((($308)) + 7432|0); $309 = HEAP32[$E_count>>2]|0; $arrayidx423 = (($E422) + (($309*72)|0)|0); $310 = $b; $arrayidx424 = (($arrayidx423) + ($310<<2)|0); HEAPF32[$arrayidx424>>2] = $306; $311 = $nE; $312 = $E360; $add425 = 1.0000000036274937E-15 + $312; $div426 = $311 / $add425; $313 = $frame_noisiness; $add427 = $313 + $div426; $frame_noisiness = $add427; $314 = $E360; $add428 = $314 + 1.000000013351432E-10; $conv429 = $add428; $call430 = (+Math_sqrt((+$conv429))); $conv431 = $call430; $315 = $frame_loudness; $add432 = $315 + $conv431; $frame_loudness = $add432; $316 = $E360; $add433 = $316 + 1.000000013351432E-10; $conv434 = $add433; $call435 = (+Math_log((+$conv434))); $conv436 = $call435; $317 = $b; $arrayidx437 = (($logE) + ($317<<2)|0); HEAPF32[$arrayidx437>>2] = $conv436; $318 = $E360; $add438 = $318 + 1.000000013351432E-10; $conv439 = $add438; $call440 = (+Math_log((+$conv439))); $conv441 = $call440; $mul442 = 0.72134751081466675 * $conv441; $319 = $b; $add443 = (($319) + 1)|0; $arrayidx444 = (($band_log2) + ($add443<<2)|0); HEAPF32[$arrayidx444>>2] = $mul442; $320 = $b; $arrayidx445 = (($logE) + ($320<<2)|0); $321 = +HEAPF32[$arrayidx445>>2]; $322 = $tonal$addr; $logE446 = ((($322)) + 6432|0); $323 = $tonal$addr; $E_count447 = ((($323)) + 7432|0); $324 = HEAP32[$E_count447>>2]|0; $arrayidx448 = (($logE446) + (($324*72)|0)|0); $325 = $b; $arrayidx449 = (($arrayidx448) + ($325<<2)|0); HEAPF32[$arrayidx449>>2] = $321; $326 = $tonal$addr; $count450 = ((($326)) + 7436|0); $327 = HEAP32[$count450>>2]|0; $cmp451 = ($327|0)==(0); if ($cmp451) { $328 = $b; $arrayidx454 = (($logE) + ($328<<2)|0); $329 = +HEAPF32[$arrayidx454>>2]; $330 = $tonal$addr; $lowE455 = ((($330)) + 7008|0); $331 = $b; $arrayidx456 = (($lowE455) + ($331<<2)|0); HEAPF32[$arrayidx456>>2] = $329; $332 = $tonal$addr; $highE457 = ((($332)) + 7080|0); $333 = $b; $arrayidx458 = (($highE457) + ($333<<2)|0); HEAPF32[$arrayidx458>>2] = $329; } $334 = $tonal$addr; $highE460 = ((($334)) + 7080|0); $335 = $b; $arrayidx461 = (($highE460) + ($335<<2)|0); $336 = +HEAPF32[$arrayidx461>>2]; $conv462 = $336; $337 = $tonal$addr; $lowE463 = ((($337)) + 7008|0); $338 = $b; $arrayidx464 = (($lowE463) + ($338<<2)|0); $339 = +HEAPF32[$arrayidx464>>2]; $conv465 = $339; $add466 = $conv465 + 7.5; $cmp467 = $conv462 > $add466; do { if ($cmp467) { $340 = $tonal$addr; $highE470 = ((($340)) + 7080|0); $341 = $b; $arrayidx471 = (($highE470) + ($341<<2)|0); $342 = +HEAPF32[$arrayidx471>>2]; $343 = $b; $arrayidx472 = (($logE) + ($343<<2)|0); $344 = +HEAPF32[$arrayidx472>>2]; $sub473 = $342 - $344; $345 = $b; $arrayidx474 = (($logE) + ($345<<2)|0); $346 = +HEAPF32[$arrayidx474>>2]; $347 = $tonal$addr; $lowE475 = ((($347)) + 7008|0); $348 = $b; $arrayidx476 = (($lowE475) + ($348<<2)|0); $349 = +HEAPF32[$arrayidx476>>2]; $sub477 = $346 - $349; $cmp478 = $sub473 > $sub477; $350 = $tonal$addr; if ($cmp478) { $highE481 = ((($350)) + 7080|0); $351 = $b; $arrayidx482 = (($highE481) + ($351<<2)|0); $352 = +HEAPF32[$arrayidx482>>2]; $sub483 = $352 - 0.0099999997764825821; HEAPF32[$arrayidx482>>2] = $sub483; break; } else { $lowE485 = ((($350)) + 7008|0); $353 = $b; $arrayidx486 = (($lowE485) + ($353<<2)|0); $354 = +HEAPF32[$arrayidx486>>2]; $add487 = $354 + 0.0099999997764825821; HEAPF32[$arrayidx486>>2] = $add487; break; } } } while(0); $355 = $b; $arrayidx490 = (($logE) + ($355<<2)|0); $356 = +HEAPF32[$arrayidx490>>2]; $357 = $tonal$addr; $highE491 = ((($357)) + 7080|0); $358 = $b; $arrayidx492 = (($highE491) + ($358<<2)|0); $359 = +HEAPF32[$arrayidx492>>2]; $cmp493 = $356 > $359; $360 = $b; $arrayidx496 = (($logE) + ($360<<2)|0); $361 = +HEAPF32[$arrayidx496>>2]; $362 = $tonal$addr; if ($cmp493) { $highE497 = ((($362)) + 7080|0); $363 = $b; $arrayidx498 = (($highE497) + ($363<<2)|0); HEAPF32[$arrayidx498>>2] = $361; $364 = $tonal$addr; $highE499 = ((($364)) + 7080|0); $365 = $b; $arrayidx500 = (($highE499) + ($365<<2)|0); $366 = +HEAPF32[$arrayidx500>>2]; $sub501 = $366 - 15.0; $367 = $tonal$addr; $lowE502 = ((($367)) + 7008|0); $368 = $b; $arrayidx503 = (($lowE502) + ($368<<2)|0); $369 = +HEAPF32[$arrayidx503>>2]; $cmp504 = $sub501 > $369; $370 = $tonal$addr; if ($cmp504) { $highE507 = ((($370)) + 7080|0); $371 = $b; $arrayidx508 = (($highE507) + ($371<<2)|0); $372 = +HEAPF32[$arrayidx508>>2]; $sub509 = $372 - 15.0; $cond514 = $sub509; } else { $lowE511 = ((($370)) + 7008|0); $373 = $b; $arrayidx512 = (($lowE511) + ($373<<2)|0); $374 = +HEAPF32[$arrayidx512>>2]; $cond514 = $374; } $375 = $tonal$addr; $lowE515 = ((($375)) + 7008|0); $376 = $b; $arrayidx516 = (($lowE515) + ($376<<2)|0); $arrayidx544$sink = $arrayidx516;$cond542$sink = $cond514; label = 69; } else { $lowE519 = ((($362)) + 7008|0); $377 = $b; $arrayidx520 = (($lowE519) + ($377<<2)|0); $378 = +HEAPF32[$arrayidx520>>2]; $cmp521 = $361 < $378; if ($cmp521) { $379 = $b; $arrayidx524 = (($logE) + ($379<<2)|0); $380 = +HEAPF32[$arrayidx524>>2]; $381 = $tonal$addr; $lowE525 = ((($381)) + 7008|0); $382 = $b; $arrayidx526 = (($lowE525) + ($382<<2)|0); HEAPF32[$arrayidx526>>2] = $380; $383 = $tonal$addr; $lowE527 = ((($383)) + 7008|0); $384 = $b; $arrayidx528 = (($lowE527) + ($384<<2)|0); $385 = +HEAPF32[$arrayidx528>>2]; $add529 = $385 + 15.0; $386 = $tonal$addr; $highE530 = ((($386)) + 7080|0); $387 = $b; $arrayidx531 = (($highE530) + ($387<<2)|0); $388 = +HEAPF32[$arrayidx531>>2]; $cmp532 = $add529 < $388; $389 = $tonal$addr; if ($cmp532) { $lowE535 = ((($389)) + 7008|0); $390 = $b; $arrayidx536 = (($lowE535) + ($390<<2)|0); $391 = +HEAPF32[$arrayidx536>>2]; $add537 = $391 + 15.0; $cond542 = $add537; } else { $highE539 = ((($389)) + 7080|0); $392 = $b; $arrayidx540 = (($highE539) + ($392<<2)|0); $393 = +HEAPF32[$arrayidx540>>2]; $cond542 = $393; } $394 = $tonal$addr; $highE543 = ((($394)) + 7080|0); $395 = $b; $arrayidx544 = (($highE543) + ($395<<2)|0); $arrayidx544$sink = $arrayidx544;$cond542$sink = $cond542; label = 69; } } if ((label|0) == 69) { label = 0; HEAPF32[$arrayidx544$sink>>2] = $cond542$sink; } $396 = $b; $arrayidx547 = (($logE) + ($396<<2)|0); $397 = +HEAPF32[$arrayidx547>>2]; $398 = $tonal$addr; $lowE548 = ((($398)) + 7008|0); $399 = $b; $arrayidx549 = (($lowE548) + ($399<<2)|0); $400 = +HEAPF32[$arrayidx549>>2]; $sub550 = $397 - $400; $401 = $tonal$addr; $highE551 = ((($401)) + 7080|0); $402 = $b; $arrayidx552 = (($highE551) + ($402<<2)|0); $403 = +HEAPF32[$arrayidx552>>2]; $404 = $tonal$addr; $lowE553 = ((($404)) + 7008|0); $405 = $b; $arrayidx554 = (($lowE553) + ($405<<2)|0); $406 = +HEAPF32[$arrayidx554>>2]; $sub555 = $403 - $406; $add556 = 1.0000000036274937E-15 + $sub555; $div557 = $sub550 / $add556; $407 = $relativeE; $add558 = $407 + $div557; $relativeE = $add558; $L2 = 0.0; $L1 = 0.0; $i = 0; while(1) { $408 = $i; $cmp560 = ($408|0)<(8); if (!($cmp560)) { break; } $409 = $tonal$addr; $E563 = ((($409)) + 5856|0); $410 = $i; $arrayidx564 = (($E563) + (($410*72)|0)|0); $411 = $b; $arrayidx565 = (($arrayidx564) + ($411<<2)|0); $412 = +HEAPF32[$arrayidx565>>2]; $conv566 = $412; $call567 = (+Math_sqrt((+$conv566))); $conv568 = $call567; $413 = $L1; $add569 = $413 + $conv568; $L1 = $add569; $414 = $tonal$addr; $E570 = ((($414)) + 5856|0); $415 = $i; $arrayidx571 = (($E570) + (($415*72)|0)|0); $416 = $b; $arrayidx572 = (($arrayidx571) + ($416<<2)|0); $417 = +HEAPF32[$arrayidx572>>2]; $418 = $L2; $add573 = $418 + $417; $L2 = $add573; $419 = $i; $inc575 = (($419) + 1)|0; $i = $inc575; } $420 = $L1; $421 = $L2; $mul577 = 8.0 * $421; $conv578 = $mul577; $add579 = 1.0000000000000001E-15 + $conv578; $call580 = (+Math_sqrt((+$add579))); $conv581 = $call580; $div582 = $420 / $conv581; $cmp583 = 0.99000000953674316 < $div582; if ($cmp583) { $cond594 = 0.99000000953674316; } else { $422 = $L1; $423 = $L2; $mul587 = 8.0 * $423; $conv588 = $mul587; $add589 = 1.0000000000000001E-15 + $conv588; $call590 = (+Math_sqrt((+$add589))); $conv591 = $call590; $div592 = $422 / $conv591; $cond594 = $div592; } $stationarity = $cond594; $424 = $stationarity; $425 = $stationarity; $mul595 = $425 * $424; $stationarity = $mul595; $426 = $stationarity; $427 = $stationarity; $mul596 = $427 * $426; $stationarity = $mul596; $428 = $stationarity; $429 = $frame_stationarity; $add597 = $429 + $428; $frame_stationarity = $add597; $430 = $tE; $431 = $E360; $add598 = 1.0000000036274937E-15 + $431; $div599 = $430 / $add598; $432 = $stationarity; $433 = $tonal$addr; $prev_band_tonality = ((($433)) + 5776|0); $434 = $b; $arrayidx600 = (($prev_band_tonality) + ($434<<2)|0); $435 = +HEAPF32[$arrayidx600>>2]; $mul601 = $432 * $435; $cmp602 = $div599 > $mul601; if ($cmp602) { $436 = $tE; $437 = $E360; $add605 = 1.0000000036274937E-15 + $437; $div606 = $436 / $add605; $cond612 = $div606; } else { $438 = $stationarity; $439 = $tonal$addr; $prev_band_tonality608 = ((($439)) + 5776|0); $440 = $b; $arrayidx609 = (($prev_band_tonality608) + ($440<<2)|0); $441 = +HEAPF32[$arrayidx609>>2]; $mul610 = $438 * $441; $cond612 = $mul610; } $442 = $b; $arrayidx613 = (($band_tonality) + ($442<<2)|0); HEAPF32[$arrayidx613>>2] = $cond612; $443 = $b; $arrayidx614 = (($band_tonality) + ($443<<2)|0); $444 = +HEAPF32[$arrayidx614>>2]; $445 = $frame_tonality; $add615 = $445 + $444; $frame_tonality = $add615; $446 = $b; $cmp616 = ($446|0)>=(9); if ($cmp616) { $447 = $b; $sub619 = (($447) - 18)|0; $add620 = (($sub619) + 9)|0; $arrayidx621 = (($band_tonality) + ($add620<<2)|0); $448 = +HEAPF32[$arrayidx621>>2]; $449 = $frame_tonality; $sub622 = $449 - $448; $frame_tonality = $sub622; } $450 = $max_frame_tonality; $451 = $b; $sub624 = (($451) - 18)|0; $conv625 = (+($sub624|0)); $mul626 = 0.029999999329447746 * $conv625; $add627 = 1.0 + $mul626; $452 = $frame_tonality; $mul628 = $add627 * $452; $cmp629 = $450 > $mul628; if ($cmp629) { $453 = $max_frame_tonality; $cond639 = $453; } else { $454 = $b; $sub633 = (($454) - 18)|0; $conv634 = (+($sub633|0)); $mul635 = 0.029999999329447746 * $conv634; $add636 = 1.0 + $mul635; $455 = $frame_tonality; $mul637 = $add636 * $455; $cond639 = $mul637; } $max_frame_tonality = $cond639; $456 = $b; $arrayidx640 = (($band_tonality) + ($456<<2)|0); $457 = +HEAPF32[$arrayidx640>>2]; $458 = $b; $sub641 = (($458) - 8)|0; $conv642 = (+($sub641|0)); $mul643 = $457 * $conv642; $459 = $slope; $add644 = $459 + $mul643; $slope = $add644; $460 = $b; $arrayidx645 = (($band_tonality) + ($460<<2)|0); $461 = +HEAPF32[$arrayidx645>>2]; $462 = $tonal$addr; $prev_band_tonality646 = ((($462)) + 5776|0); $463 = $b; $arrayidx647 = (($prev_band_tonality646) + ($463<<2)|0); HEAPF32[$arrayidx647>>2] = $461; $464 = $b; $inc649 = (($464) + 1)|0; $b = $inc649; } if ((label|0) == 52) { $305 = $info; HEAP32[$305>>2] = 0; STACKTOP = sp;return; } $465 = +HEAPF32[$band_log2>>2]; HEAPF32[$leakage_from>>2] = $465; $466 = +HEAPF32[$band_log2>>2]; $sub654 = $466 - 2.5; HEAPF32[$leakage_to>>2] = $sub654; $b = 1; while(1) { $467 = $b; $cmp657 = ($467|0)<(19); if (!($cmp657)) { break; } $468 = $b; $arrayidx660 = (1372 + ($468<<2)|0); $469 = HEAP32[$arrayidx660>>2]|0; $470 = $b; $sub661 = (($470) - 1)|0; $arrayidx662 = (1372 + ($sub661<<2)|0); $471 = HEAP32[$arrayidx662>>2]|0; $sub663 = (($469) - ($471))|0; $conv664 = (+($sub663|0)); $mul665 = 2.0 * $conv664; $div666 = $mul665 / 4.0; $leak_slope = $div666; $472 = $b; $sub667 = (($472) - 1)|0; $arrayidx668 = (($leakage_from) + ($sub667<<2)|0); $473 = +HEAPF32[$arrayidx668>>2]; $474 = $leak_slope; $add669 = $473 + $474; $475 = $b; $arrayidx670 = (($band_log2) + ($475<<2)|0); $476 = +HEAPF32[$arrayidx670>>2]; $cmp671 = $add669 < $476; $477 = $b; if ($cmp671) { $sub674 = (($477) - 1)|0; $arrayidx675 = (($leakage_from) + ($sub674<<2)|0); $478 = +HEAPF32[$arrayidx675>>2]; $479 = $leak_slope; $add676 = $478 + $479; $cond680 = $add676; } else { $arrayidx678 = (($band_log2) + ($477<<2)|0); $480 = +HEAPF32[$arrayidx678>>2]; $cond680 = $480; } $481 = $b; $arrayidx681 = (($leakage_from) + ($481<<2)|0); HEAPF32[$arrayidx681>>2] = $cond680; $482 = $b; $sub682 = (($482) - 1)|0; $arrayidx683 = (($leakage_to) + ($sub682<<2)|0); $483 = +HEAPF32[$arrayidx683>>2]; $484 = $leak_slope; $sub684 = $483 - $484; $485 = $b; $arrayidx685 = (($band_log2) + ($485<<2)|0); $486 = +HEAPF32[$arrayidx685>>2]; $sub686 = $486 - 2.5; $cmp687 = $sub684 > $sub686; $487 = $b; if ($cmp687) { $sub690 = (($487) - 1)|0; $arrayidx691 = (($leakage_to) + ($sub690<<2)|0); $488 = +HEAPF32[$arrayidx691>>2]; $489 = $leak_slope; $sub692 = $488 - $489; $cond697 = $sub692; } else { $arrayidx694 = (($band_log2) + ($487<<2)|0); $490 = +HEAPF32[$arrayidx694>>2]; $sub695 = $490 - 2.5; $cond697 = $sub695; } $491 = $b; $arrayidx698 = (($leakage_to) + ($491<<2)|0); HEAPF32[$arrayidx698>>2] = $cond697; $492 = $b; $inc700 = (($492) + 1)|0; $b = $inc700; } $b = 16; while(1) { $493 = $b; $cmp703 = ($493|0)>=(0); if (!($cmp703)) { break; } $494 = $b; $add707 = (($494) + 1)|0; $arrayidx708 = (1372 + ($add707<<2)|0); $495 = HEAP32[$arrayidx708>>2]|0; $496 = $b; $arrayidx709 = (1372 + ($496<<2)|0); $497 = HEAP32[$arrayidx709>>2]|0; $sub710 = (($495) - ($497))|0; $conv711 = (+($sub710|0)); $mul712 = 2.0 * $conv711; $div713 = $mul712 / 4.0; $leak_slope706 = $div713; $498 = $b; $add714 = (($498) + 1)|0; $arrayidx715 = (($leakage_from) + ($add714<<2)|0); $499 = +HEAPF32[$arrayidx715>>2]; $500 = $leak_slope706; $add716 = $499 + $500; $501 = $b; $arrayidx717 = (($leakage_from) + ($501<<2)|0); $502 = +HEAPF32[$arrayidx717>>2]; $cmp718 = $add716 < $502; $503 = $b; if ($cmp718) { $add721 = (($503) + 1)|0; $arrayidx722 = (($leakage_from) + ($add721<<2)|0); $504 = +HEAPF32[$arrayidx722>>2]; $505 = $leak_slope706; $add723 = $504 + $505; $cond727 = $add723; } else { $arrayidx725 = (($leakage_from) + ($503<<2)|0); $506 = +HEAPF32[$arrayidx725>>2]; $cond727 = $506; } $507 = $b; $arrayidx728 = (($leakage_from) + ($507<<2)|0); HEAPF32[$arrayidx728>>2] = $cond727; $508 = $b; $add729 = (($508) + 1)|0; $arrayidx730 = (($leakage_to) + ($add729<<2)|0); $509 = +HEAPF32[$arrayidx730>>2]; $510 = $leak_slope706; $sub731 = $509 - $510; $511 = $b; $arrayidx732 = (($leakage_to) + ($511<<2)|0); $512 = +HEAPF32[$arrayidx732>>2]; $cmp733 = $sub731 > $512; $513 = $b; if ($cmp733) { $add736 = (($513) + 1)|0; $arrayidx737 = (($leakage_to) + ($add736<<2)|0); $514 = +HEAPF32[$arrayidx737>>2]; $515 = $leak_slope706; $sub738 = $514 - $515; $cond742 = $sub738; } else { $arrayidx740 = (($leakage_to) + ($513<<2)|0); $516 = +HEAPF32[$arrayidx740>>2]; $cond742 = $516; } $517 = $b; $arrayidx743 = (($leakage_to) + ($517<<2)|0); HEAPF32[$arrayidx743>>2] = $cond742; $518 = $b; $dec = (($518) + -1)|0; $b = $dec; } $b = 0; while(1) { $519 = $b; $cmp747 = ($519|0)<(19); if (!($cmp747)) { break; } $520 = $b; $arrayidx750 = (($leakage_to) + ($520<<2)|0); $521 = +HEAPF32[$arrayidx750>>2]; $522 = $b; $arrayidx751 = (($band_log2) + ($522<<2)|0); $523 = +HEAPF32[$arrayidx751>>2]; $sub752 = $521 - $523; $cmp753 = 0.0 > $sub752; if ($cmp753) { $cond761 = 0.0; } else { $524 = $b; $arrayidx757 = (($leakage_to) + ($524<<2)|0); $525 = +HEAPF32[$arrayidx757>>2]; $526 = $b; $arrayidx758 = (($band_log2) + ($526<<2)|0); $527 = +HEAPF32[$arrayidx758>>2]; $sub759 = $525 - $527; $cond761 = $sub759; } $528 = $b; $arrayidx762 = (($band_log2) + ($528<<2)|0); $529 = +HEAPF32[$arrayidx762>>2]; $530 = $b; $arrayidx763 = (($leakage_from) + ($530<<2)|0); $531 = +HEAPF32[$arrayidx763>>2]; $add764 = $531 + 2.5; $sub765 = $529 - $add764; $cmp766 = 0.0 > $sub765; if ($cmp766) { $cond775 = 0.0; } else { $532 = $b; $arrayidx770 = (($band_log2) + ($532<<2)|0); $533 = +HEAPF32[$arrayidx770>>2]; $534 = $b; $arrayidx771 = (($leakage_from) + ($534<<2)|0); $535 = +HEAPF32[$arrayidx771>>2]; $add772 = $535 + 2.5; $sub773 = $533 - $add772; $cond775 = $sub773; } $add776 = $cond761 + $cond775; $boost = $add776; $536 = $boost; $mul777 = 64.0 * $536; $conv778 = $mul777; $add779 = 0.5 + $conv778; $call780 = (+Math_floor((+$add779))); $conv781 = (~~(($call780))); $cmp782 = (255)<($conv781|0); if ($cmp782) { $cond792 = 255; } else { $537 = $boost; $mul786 = 64.0 * $537; $conv787 = $mul786; $add788 = 0.5 + $conv787; $call789 = (+Math_floor((+$add788))); $conv790 = (~~(($call789))); $cond792 = $conv790; } $conv793 = $cond792&255; $538 = $info; $leak_boost = ((($538)) + 44|0); $539 = $b; $arrayidx794 = (($leak_boost) + ($539)|0); HEAP8[$arrayidx794>>0] = $conv793; $540 = $b; $inc796 = (($540) + 1)|0; $b = $inc796; } while(1) { $541 = $b; $cmp799 = ($541|0)<(19); if (!($cmp799)) { break; } $542 = $info; $leak_boost802 = ((($542)) + 44|0); $543 = $b; $arrayidx803 = (($leak_boost802) + ($543)|0); HEAP8[$arrayidx803>>0] = 0; $544 = $b; $inc805 = (($544) + 1)|0; $b = $inc805; } $i = 0; while(1) { $545 = $i; $cmp808 = ($545|0)<(8); if (!($cmp808)) { break; } $mindist = 999999986991104.0; $j = 0; while(1) { $546 = $j; $cmp812 = ($546|0)<(8); if (!($cmp812)) { break; } $dist = 0.0; $k = 0; while(1) { $547 = $k; $cmp816 = ($547|0)<(18); if (!($cmp816)) { break; } $548 = $tonal$addr; $logE819 = ((($548)) + 6432|0); $549 = $i; $arrayidx820 = (($logE819) + (($549*72)|0)|0); $550 = $k; $arrayidx821 = (($arrayidx820) + ($550<<2)|0); $551 = +HEAPF32[$arrayidx821>>2]; $552 = $tonal$addr; $logE822 = ((($552)) + 6432|0); $553 = $j; $arrayidx823 = (($logE822) + (($553*72)|0)|0); $554 = $k; $arrayidx824 = (($arrayidx823) + ($554<<2)|0); $555 = +HEAPF32[$arrayidx824>>2]; $sub825 = $551 - $555; $tmp = $sub825; $556 = $tmp; $557 = $tmp; $mul826 = $556 * $557; $558 = $dist; $add827 = $558 + $mul826; $dist = $add827; $559 = $k; $inc829 = (($559) + 1)|0; $k = $inc829; } $560 = $j; $561 = $i; $cmp831 = ($560|0)!=($561|0); if ($cmp831) { $562 = $mindist; $563 = $dist; $cmp834 = $562 < $563; $564 = $mindist; $565 = $dist; $cond839 = $cmp834 ? $564 : $565; $mindist = $cond839; } $566 = $j; $inc842 = (($566) + 1)|0; $j = $inc842; } $567 = $mindist; $568 = $spec_variability; $add844 = $568 + $567; $spec_variability = $add844; $569 = $i; $inc846 = (($569) + 1)|0; $i = $inc846; } $570 = $spec_variability; $div848 = $570 / 8.0; $div849 = $div848 / 18.0; $conv850 = $div849; $call851 = (+Math_sqrt((+$conv850))); $conv852 = $call851; $spec_variability = $conv852; $bandwidth_mask = 0.0; $bandwidth = 0; $maxE = 0.0; $571 = $lsb_depth$addr; $sub853 = (($571) - 8)|0; $cmp854 = (0)>($sub853|0); $572 = $lsb_depth$addr; $sub858 = (($572) - 8)|0; $cond860 = $cmp854 ? 0 : $sub858; $shl = 1 << $cond860; $conv861 = (+($shl|0)); $div862 = 5.6999997468665242E-4 / $conv861; $noise_floor = $div862; $573 = $noise_floor; $574 = $noise_floor; $mul863 = $574 * $573; $noise_floor = $mul863; $below_max_pitch = 0.0; $above_max_pitch = 0.0; $b = 0; while(1) { $575 = $b; $cmp865 = ($575|0)<(18); if (!($cmp865)) { break; } $E868 = 0.0; $576 = $b; $arrayidx869 = (1372 + ($576<<2)|0); $577 = HEAP32[$arrayidx869>>2]|0; $band_start = $577; $578 = $b; $add870 = (($578) + 1)|0; $arrayidx871 = (1372 + ($add870<<2)|0); $579 = HEAP32[$arrayidx871>>2]|0; $band_end = $579; $580 = $band_start; $i = $580; while(1) { $581 = $i; $582 = $band_end; $cmp873 = ($581|0)<($582|0); if (!($cmp873)) { break; } $583 = $i; $arrayidx877 = (($out) + ($583<<3)|0); $584 = +HEAPF32[$arrayidx877>>2]; $585 = $i; $arrayidx879 = (($out) + ($585<<3)|0); $586 = +HEAPF32[$arrayidx879>>2]; $mul881 = $584 * $586; $587 = $N; $588 = $i; $sub882 = (($587) - ($588))|0; $arrayidx883 = (($out) + ($sub882<<3)|0); $589 = +HEAPF32[$arrayidx883>>2]; $590 = $N; $591 = $i; $sub885 = (($590) - ($591))|0; $arrayidx886 = (($out) + ($sub885<<3)|0); $592 = +HEAPF32[$arrayidx886>>2]; $mul888 = $589 * $592; $add889 = $mul881 + $mul888; $593 = $i; $arrayidx890 = (($out) + ($593<<3)|0); $i891 = ((($arrayidx890)) + 4|0); $594 = +HEAPF32[$i891>>2]; $595 = $i; $arrayidx892 = (($out) + ($595<<3)|0); $i893 = ((($arrayidx892)) + 4|0); $596 = +HEAPF32[$i893>>2]; $mul894 = $594 * $596; $add895 = $add889 + $mul894; $597 = $N; $598 = $i; $sub896 = (($597) - ($598))|0; $arrayidx897 = (($out) + ($sub896<<3)|0); $i898 = ((($arrayidx897)) + 4|0); $599 = +HEAPF32[$i898>>2]; $600 = $N; $601 = $i; $sub899 = (($600) - ($601))|0; $arrayidx900 = (($out) + ($sub899<<3)|0); $i901 = ((($arrayidx900)) + 4|0); $602 = +HEAPF32[$i901>>2]; $mul902 = $599 * $602; $add903 = $add895 + $mul902; $binE876 = $add903; $603 = $binE876; $604 = $E868; $add904 = $604 + $603; $E868 = $add904; $605 = $i; $inc906 = (($605) + 1)|0; $i = $inc906; } $606 = $E868; $E868 = $606; $607 = $maxE; $608 = $E868; $cmp908 = $607 > $608; $609 = $maxE; $610 = $E868; $cond913 = $cmp908 ? $609 : $610; $maxE = $cond913; $611 = $band_start; $cmp914 = ($611|0)<(64); $612 = $E868; if ($cmp914) { $613 = $below_max_pitch; $add917 = $613 + $612; $below_max_pitch = $add917; } else { $614 = $above_max_pitch; $add919 = $614 + $612; $above_max_pitch = $add919; } $615 = $alphaE2; $sub921 = 1.0 - $615; $616 = $tonal$addr; $meanE = ((($616)) + 7152|0); $617 = $b; $arrayidx922 = (($meanE) + ($617<<2)|0); $618 = +HEAPF32[$arrayidx922>>2]; $mul923 = $sub921 * $618; $619 = $E868; $cmp924 = $mul923 > $619; if ($cmp924) { $620 = $alphaE2; $sub927 = 1.0 - $620; $621 = $tonal$addr; $meanE928 = ((($621)) + 7152|0); $622 = $b; $arrayidx929 = (($meanE928) + ($622<<2)|0); $623 = +HEAPF32[$arrayidx929>>2]; $mul930 = $sub927 * $623; $cond933 = $mul930; } else { $624 = $E868; $cond933 = $624; } $625 = $tonal$addr; $meanE934 = ((($625)) + 7152|0); $626 = $b; $arrayidx935 = (($meanE934) + ($626<<2)|0); HEAPF32[$arrayidx935>>2] = $cond933; $627 = $E868; $628 = $tonal$addr; $meanE936 = ((($628)) + 7152|0); $629 = $b; $arrayidx937 = (($meanE936) + ($629<<2)|0); $630 = +HEAPF32[$arrayidx937>>2]; $cmp938 = $627 > $630; if ($cmp938) { $631 = $E868; $cond945 = $631; } else { $632 = $tonal$addr; $meanE942 = ((($632)) + 7152|0); $633 = $b; $arrayidx943 = (($meanE942) + ($633<<2)|0); $634 = +HEAPF32[$arrayidx943>>2]; $cond945 = $634; } $Em = $cond945; $635 = $E868; $mul946 = $635 * 1.0E+9; $636 = $maxE; $cmp947 = $mul946 > $636; do { if ($cmp947) { $637 = $Em; $638 = $noise_floor; $mul949 = 3.0 * $638; $639 = $band_end; $640 = $band_start; $sub950 = (($639) - ($640))|0; $conv951 = (+($sub950|0)); $mul952 = $mul949 * $conv951; $cmp953 = $637 > $mul952; if (!($cmp953)) { $641 = $E868; $642 = $noise_floor; $643 = $band_end; $644 = $band_start; $sub956 = (($643) - ($644))|0; $conv957 = (+($sub956|0)); $mul958 = $642 * $conv957; $cmp959 = $641 > $mul958; if (!($cmp959)) { break; } } $645 = $b; $add962 = (($645) + 1)|0; $bandwidth = $add962; } } while(0); $646 = $E868; $647 = $tonal$addr; $prev_bandwidth = ((($647)) + 5852|0); $648 = HEAP32[$prev_bandwidth>>2]|0; $649 = $b; $add964 = (($649) + 1)|0; $cmp965 = ($648|0)>=($add964|0); $cond967 = $cmp965 ? 0.0099999997764825821 : 0.05000000074505806; $650 = $bandwidth_mask; $mul968 = $cond967 * $650; $cmp969 = $646 < $mul968; $conv970 = $cmp969&1; $651 = $b; $arrayidx971 = (($is_masked) + ($651<<2)|0); HEAP32[$arrayidx971>>2] = $conv970; $652 = $bandwidth_mask; $mul972 = 0.05000000074505806 * $652; $653 = $E868; $cmp973 = $mul972 > $653; $654 = $bandwidth_mask; $mul976 = 0.05000000074505806 * $654; $655 = $E868; $cond979 = $cmp973 ? $mul976 : $655; $bandwidth_mask = $cond979; $656 = $b; $inc981 = (($656) + 1)|0; $b = $inc981; } $657 = $tonal$addr; $Fs983 = ((($657)) + 8|0); $658 = HEAP32[$Fs983>>2]|0; $cmp984 = ($658|0)==(48000); if ($cmp984) { $659 = $hp_ener; $mul989 = $659 * 2.7777778450399637E-4; $E988 = $mul989; $660 = $tonal$addr; $prev_bandwidth990 = ((($660)) + 5852|0); $661 = HEAP32[$prev_bandwidth990>>2]|0; $cmp991 = ($661|0)==(20); $cond993 = $cmp991 ? 10.0 : 30.0; $noise_ratio = $cond993; $662 = $E988; $663 = $above_max_pitch; $add994 = $663 + $662; $above_max_pitch = $add994; $664 = $alphaE2; $sub995 = 1.0 - $664; $665 = $tonal$addr; $meanE996 = ((($665)) + 7152|0); $666 = $b; $arrayidx997 = (($meanE996) + ($666<<2)|0); $667 = +HEAPF32[$arrayidx997>>2]; $mul998 = $sub995 * $667; $668 = $E988; $cmp999 = $mul998 > $668; if ($cmp999) { $669 = $alphaE2; $sub1002 = 1.0 - $669; $670 = $tonal$addr; $meanE1003 = ((($670)) + 7152|0); $671 = $b; $arrayidx1004 = (($meanE1003) + ($671<<2)|0); $672 = +HEAPF32[$arrayidx1004>>2]; $mul1005 = $sub1002 * $672; $cond1008 = $mul1005; } else { $673 = $E988; $cond1008 = $673; } $674 = $tonal$addr; $meanE1009 = ((($674)) + 7152|0); $675 = $b; $arrayidx1010 = (($meanE1009) + ($675<<2)|0); HEAPF32[$arrayidx1010>>2] = $cond1008; $676 = $E988; $677 = $tonal$addr; $meanE1011 = ((($677)) + 7152|0); $678 = $b; $arrayidx1012 = (($meanE1011) + ($678<<2)|0); $679 = +HEAPF32[$arrayidx1012>>2]; $cmp1013 = $676 > $679; if ($cmp1013) { $680 = $E988; $cond1020 = $680; } else { $681 = $tonal$addr; $meanE1017 = ((($681)) + 7152|0); $682 = $b; $arrayidx1018 = (($meanE1017) + ($682<<2)|0); $683 = +HEAPF32[$arrayidx1018>>2]; $cond1020 = $683; } $Em987 = $cond1020; $684 = $Em987; $685 = $noise_ratio; $mul1021 = 3.0 * $685; $686 = $noise_floor; $mul1022 = $mul1021 * $686; $mul1023 = $mul1022 * 160.0; $cmp1024 = $684 > $mul1023; if ($cmp1024) { label = 152; } else { $687 = $E988; $688 = $noise_ratio; $689 = $noise_floor; $mul1027 = $688 * $689; $mul1028 = $mul1027 * 160.0; $cmp1029 = $687 > $mul1028; if ($cmp1029) { label = 152; } } if ((label|0) == 152) { $bandwidth = 20; } $690 = $E988; $691 = $tonal$addr; $prev_bandwidth1033 = ((($691)) + 5852|0); $692 = HEAP32[$prev_bandwidth1033>>2]|0; $cmp1034 = ($692|0)==(20); $cond1036 = $cmp1034 ? 0.0099999997764825821 : 0.05000000074505806; $693 = $bandwidth_mask; $mul1037 = $cond1036 * $693; $cmp1038 = $690 < $mul1037; $conv1039 = $cmp1038&1; $694 = $b; $arrayidx1040 = (($is_masked) + ($694<<2)|0); HEAP32[$arrayidx1040>>2] = $conv1039; } $695 = $above_max_pitch; $696 = $below_max_pitch; $cmp1042 = $695 > $696; if ($cmp1042) { $697 = $below_max_pitch; $698 = $above_max_pitch; $div1045 = $697 / $698; $699 = $info; $$sink = $div1045;$$sink1 = $699; } else { $700 = $info; $$sink = 1.0;$$sink1 = $700; } $max_pitch_ratio1047 = ((($$sink1)) + 40|0); HEAPF32[$max_pitch_ratio1047>>2] = $$sink; $701 = $bandwidth; $cmp1049 = ($701|0)==(20); if ($cmp1049) { $arrayidx1052 = ((($is_masked)) + 72|0); $702 = HEAP32[$arrayidx1052>>2]|0; $tobool1053 = ($702|0)!=(0); if ($tobool1053) { $703 = $bandwidth; $sub1055 = (($703) - 2)|0; $bandwidth = $sub1055; } else { label = 160; } } else { label = 160; } if ((label|0) == 160) { $704 = $bandwidth; $cmp1057 = ($704|0)>(0); $705 = $bandwidth; $cmp1060 = ($705|0)<=(18); $or$cond = $cmp1057 & $cmp1060; if ($or$cond) { $706 = $bandwidth; $sub1063 = (($706) - 1)|0; $arrayidx1064 = (($is_masked) + ($sub1063<<2)|0); $707 = HEAP32[$arrayidx1064>>2]|0; $tobool1065 = ($707|0)!=(0); if ($tobool1065) { $708 = $bandwidth; $dec1067 = (($708) + -1)|0; $bandwidth = $dec1067; } } } $709 = $tonal$addr; $count1070 = ((($709)) + 7436|0); $710 = HEAP32[$count1070>>2]|0; $cmp1071 = ($710|0)<=(2); if ($cmp1071) { $bandwidth = 20; } $711 = $frame_loudness; $conv1075 = $711; $call1076 = (+_log10($conv1075)); $conv1077 = $call1076; $mul1078 = 20.0 * $conv1077; $frame_loudness = $mul1078; $712 = $tonal$addr; $Etracker = ((($712)) + 7424|0); $713 = +HEAPF32[$Etracker>>2]; $sub1079 = $713 - 0.0030000000260770321; $714 = $frame_loudness; $cmp1080 = $sub1079 > $714; if ($cmp1080) { $715 = $tonal$addr; $Etracker1083 = ((($715)) + 7424|0); $716 = +HEAPF32[$Etracker1083>>2]; $sub1084 = $716 - 0.0030000000260770321; $cond1087 = $sub1084; } else { $717 = $frame_loudness; $cond1087 = $717; } $718 = $tonal$addr; $Etracker1088 = ((($718)) + 7424|0); HEAPF32[$Etracker1088>>2] = $cond1087; $719 = $alphaE; $sub1089 = 1.0 - $719; $720 = $tonal$addr; $lowECount = ((($720)) + 7428|0); $721 = +HEAPF32[$lowECount>>2]; $mul1090 = $721 * $sub1089; HEAPF32[$lowECount>>2] = $mul1090; $722 = $frame_loudness; $723 = $tonal$addr; $Etracker1091 = ((($723)) + 7424|0); $724 = +HEAPF32[$Etracker1091>>2]; $sub1092 = $724 - 30.0; $cmp1093 = $722 < $sub1092; if ($cmp1093) { $725 = $alphaE; $726 = $tonal$addr; $lowECount1096 = ((($726)) + 7428|0); $727 = +HEAPF32[$lowECount1096>>2]; $add1097 = $727 + $725; HEAPF32[$lowECount1096>>2] = $add1097; } $i = 0; while(1) { $728 = $i; $cmp1100 = ($728|0)<(8); if (!($cmp1100)) { break; } $sum = 0.0; $b = 0; while(1) { $729 = $b; $cmp1104 = ($729|0)<(16); if (!($cmp1104)) { break; } $730 = $i; $mul1107 = $730<<4; $731 = $b; $add1108 = (($mul1107) + ($731))|0; $arrayidx1109 = (1448 + ($add1108<<2)|0); $732 = +HEAPF32[$arrayidx1109>>2]; $733 = $b; $arrayidx1110 = (($logE) + ($733<<2)|0); $734 = +HEAPF32[$arrayidx1110>>2]; $mul1111 = $732 * $734; $735 = $sum; $add1112 = $735 + $mul1111; $sum = $add1112; $736 = $b; $inc1114 = (($736) + 1)|0; $b = $inc1114; } $737 = $sum; $738 = $i; $arrayidx1116 = (($BFCC) + ($738<<2)|0); HEAPF32[$arrayidx1116>>2] = $737; $739 = $i; $inc1118 = (($739) + 1)|0; $i = $inc1118; } $i = 0; while(1) { $740 = $i; $cmp1121 = ($740|0)<(8); if (!($cmp1121)) { break; } $sum1124 = 0.0; $b = 0; while(1) { $741 = $b; $cmp1126 = ($741|0)<(16); if (!($cmp1126)) { break; } $742 = $i; $mul1129 = $742<<4; $743 = $b; $add1130 = (($mul1129) + ($743))|0; $arrayidx1131 = (1448 + ($add1130<<2)|0); $744 = +HEAPF32[$arrayidx1131>>2]; $mul1132 = $744 * 0.5; $745 = $tonal$addr; $highE1133 = ((($745)) + 7080|0); $746 = $b; $arrayidx1134 = (($highE1133) + ($746<<2)|0); $747 = +HEAPF32[$arrayidx1134>>2]; $748 = $tonal$addr; $lowE1135 = ((($748)) + 7008|0); $749 = $b; $arrayidx1136 = (($lowE1135) + ($749<<2)|0); $750 = +HEAPF32[$arrayidx1136>>2]; $add1137 = $747 + $750; $mul1138 = $mul1132 * $add1137; $751 = $sum1124; $add1139 = $751 + $mul1138; $sum1124 = $add1139; $752 = $b; $inc1141 = (($752) + 1)|0; $b = $inc1141; } $753 = $sum1124; $754 = $i; $arrayidx1143 = (($midE) + ($754<<2)|0); HEAPF32[$arrayidx1143>>2] = $753; $755 = $i; $inc1145 = (($755) + 1)|0; $i = $inc1145; } $756 = $frame_stationarity; $div1147 = $756 / 18.0; $frame_stationarity = $div1147; $757 = $relativeE; $div1148 = $757 / 18.0; $relativeE = $div1148; $758 = $tonal$addr; $count1149 = ((($758)) + 7436|0); $759 = HEAP32[$count1149>>2]|0; $cmp1150 = ($759|0)<(10); $$div1148 = $cmp1150 ? 0.5 : $div1148; $relativeE = $$div1148; $760 = $frame_noisiness; $div1154 = $760 / 18.0; $frame_noisiness = $div1154; $761 = $frame_noisiness; $762 = $frame_noisiness; $sub1155 = 1.0 - $762; $763 = $relativeE; $mul1156 = $sub1155 * $763; $add1157 = $761 + $mul1156; $764 = $info; $activity1158 = ((($764)) + 16|0); HEAPF32[$activity1158>>2] = $add1157; $765 = $max_frame_tonality; $div1159 = $765 / 9.0; $frame_tonality = $div1159; $766 = $frame_tonality; $767 = $tonal$addr; $prev_tonality = ((($767)) + 5848|0); $768 = +HEAPF32[$prev_tonality>>2]; $mul1160 = $768 * 0.80000001192092896; $cmp1161 = $766 > $mul1160; if ($cmp1161) { $769 = $frame_tonality; $cond1168 = $769; } else { $770 = $tonal$addr; $prev_tonality1165 = ((($770)) + 5848|0); $771 = +HEAPF32[$prev_tonality1165>>2]; $mul1166 = $771 * 0.80000001192092896; $cond1168 = $mul1166; } $frame_tonality = $cond1168; $772 = $frame_tonality; $773 = $tonal$addr; $prev_tonality1169 = ((($773)) + 5848|0); HEAPF32[$prev_tonality1169>>2] = $772; $774 = $slope; $div1170 = $774 / 64.0; $slope = $div1170; $775 = $slope; $776 = $info; $tonality_slope = ((($776)) + 8|0); HEAPF32[$tonality_slope>>2] = $775; $777 = $tonal$addr; $E_count1171 = ((($777)) + 7432|0); $778 = HEAP32[$E_count1171>>2]|0; $add1172 = (($778) + 1)|0; $rem = (($add1172|0) % 8)&-1; $779 = $tonal$addr; $E_count1173 = ((($779)) + 7432|0); HEAP32[$E_count1173>>2] = $rem; $780 = $tonal$addr; $count1174 = ((($780)) + 7436|0); $781 = HEAP32[$count1174>>2]|0; $add1175 = (($781) + 1)|0; $cmp1176 = ($add1175|0)<(10000); if ($cmp1176) { $782 = $tonal$addr; $count1179 = ((($782)) + 7436|0); $783 = HEAP32[$count1179>>2]|0; $add1180 = (($783) + 1)|0; $cond1183 = $add1180; } else { $cond1183 = 10000; } $784 = $tonal$addr; $count1184 = ((($784)) + 7436|0); HEAP32[$count1184>>2] = $cond1183; $785 = $frame_tonality; $786 = $info; $tonality1185 = ((($786)) + 4|0); HEAPF32[$tonality1185>>2] = $785; $i = 0; while(1) { $787 = $i; $cmp1187 = ($787|0)<(4); if (!($cmp1187)) { break; } $788 = $i; $arrayidx1190 = (($BFCC) + ($788<<2)|0); $789 = +HEAPF32[$arrayidx1190>>2]; $790 = $tonal$addr; $mem = ((($790)) + 7228|0); $791 = $i; $add1191 = (($791) + 24)|0; $arrayidx1192 = (($mem) + ($add1191<<2)|0); $792 = +HEAPF32[$arrayidx1192>>2]; $add1193 = $789 + $792; $mul1194 = -0.12298999726772308 * $add1193; $793 = $tonal$addr; $mem1195 = ((($793)) + 7228|0); $794 = $i; $arrayidx1196 = (($mem1195) + ($794<<2)|0); $795 = +HEAPF32[$arrayidx1196>>2]; $796 = $tonal$addr; $mem1197 = ((($796)) + 7228|0); $797 = $i; $add1198 = (($797) + 16)|0; $arrayidx1199 = (($mem1197) + ($add1198<<2)|0); $798 = +HEAPF32[$arrayidx1199>>2]; $add1200 = $795 + $798; $mul1201 = 0.49195000529289246 * $add1200; $add1202 = $mul1194 + $mul1201; $799 = $tonal$addr; $mem1203 = ((($799)) + 7228|0); $800 = $i; $add1204 = (($800) + 8)|0; $arrayidx1205 = (($mem1203) + ($add1204<<2)|0); $801 = +HEAPF32[$arrayidx1205>>2]; $mul1206 = 0.69692999124526978 * $801; $add1207 = $add1202 + $mul1206; $802 = $tonal$addr; $cmean = ((($802)) + 7356|0); $803 = $i; $arrayidx1208 = (($cmean) + ($803<<2)|0); $804 = +HEAPF32[$arrayidx1208>>2]; $mul1209 = 1.4349000453948975 * $804; $sub1210 = $add1207 - $mul1209; $805 = $i; $arrayidx1211 = (($features) + ($805<<2)|0); HEAPF32[$arrayidx1211>>2] = $sub1210; $806 = $i; $inc1213 = (($806) + 1)|0; $i = $inc1213; } $i = 0; while(1) { $807 = $i; $cmp1216 = ($807|0)<(4); if (!($cmp1216)) { break; } $808 = $alpha; $sub1219 = 1.0 - $808; $809 = $tonal$addr; $cmean1220 = ((($809)) + 7356|0); $810 = $i; $arrayidx1221 = (($cmean1220) + ($810<<2)|0); $811 = +HEAPF32[$arrayidx1221>>2]; $mul1222 = $sub1219 * $811; $812 = $alpha; $813 = $i; $arrayidx1223 = (($BFCC) + ($813<<2)|0); $814 = +HEAPF32[$arrayidx1223>>2]; $mul1224 = $812 * $814; $add1225 = $mul1222 + $mul1224; $815 = $tonal$addr; $cmean1226 = ((($815)) + 7356|0); $816 = $i; $arrayidx1227 = (($cmean1226) + ($816<<2)|0); HEAPF32[$arrayidx1227>>2] = $add1225; $817 = $i; $inc1229 = (($817) + 1)|0; $i = $inc1229; } $i = 0; while(1) { $818 = $i; $cmp1232 = ($818|0)<(4); if (!($cmp1232)) { break; } $819 = $i; $arrayidx1235 = (($BFCC) + ($819<<2)|0); $820 = +HEAPF32[$arrayidx1235>>2]; $821 = $tonal$addr; $mem1236 = ((($821)) + 7228|0); $822 = $i; $add1237 = (($822) + 24)|0; $arrayidx1238 = (($mem1236) + ($add1237<<2)|0); $823 = +HEAPF32[$arrayidx1238>>2]; $sub1239 = $820 - $823; $mul1240 = 0.63245999813079834 * $sub1239; $824 = $tonal$addr; $mem1241 = ((($824)) + 7228|0); $825 = $i; $arrayidx1242 = (($mem1241) + ($825<<2)|0); $826 = +HEAPF32[$arrayidx1242>>2]; $827 = $tonal$addr; $mem1243 = ((($827)) + 7228|0); $828 = $i; $add1244 = (($828) + 16)|0; $arrayidx1245 = (($mem1243) + ($add1244<<2)|0); $829 = +HEAPF32[$arrayidx1245>>2]; $sub1246 = $826 - $829; $mul1247 = 0.31622999906539917 * $sub1246; $add1248 = $mul1240 + $mul1247; $830 = $i; $add1249 = (4 + ($830))|0; $arrayidx1250 = (($features) + ($add1249<<2)|0); HEAPF32[$arrayidx1250>>2] = $add1248; $831 = $i; $inc1252 = (($831) + 1)|0; $i = $inc1252; } $i = 0; while(1) { $832 = $i; $cmp1255 = ($832|0)<(3); if (!($cmp1255)) { break; } $833 = $i; $arrayidx1258 = (($BFCC) + ($833<<2)|0); $834 = +HEAPF32[$arrayidx1258>>2]; $835 = $tonal$addr; $mem1259 = ((($835)) + 7228|0); $836 = $i; $add1260 = (($836) + 24)|0; $arrayidx1261 = (($mem1259) + ($add1260<<2)|0); $837 = +HEAPF32[$arrayidx1261>>2]; $add1262 = $834 + $837; $mul1263 = 0.53451997041702271 * $add1262; $838 = $tonal$addr; $mem1264 = ((($838)) + 7228|0); $839 = $i; $arrayidx1265 = (($mem1264) + ($839<<2)|0); $840 = +HEAPF32[$arrayidx1265>>2]; $841 = $tonal$addr; $mem1266 = ((($841)) + 7228|0); $842 = $i; $add1267 = (($842) + 16)|0; $arrayidx1268 = (($mem1266) + ($add1267<<2)|0); $843 = +HEAPF32[$arrayidx1268>>2]; $add1269 = $840 + $843; $mul1270 = 0.26725998520851135 * $add1269; $sub1271 = $mul1263 - $mul1270; $844 = $tonal$addr; $mem1272 = ((($844)) + 7228|0); $845 = $i; $add1273 = (($845) + 8)|0; $arrayidx1274 = (($mem1272) + ($add1273<<2)|0); $846 = +HEAPF32[$arrayidx1274>>2]; $mul1275 = 0.53451997041702271 * $846; $sub1276 = $sub1271 - $mul1275; $847 = $i; $add1277 = (8 + ($847))|0; $arrayidx1278 = (($features) + ($add1277<<2)|0); HEAPF32[$arrayidx1278>>2] = $sub1276; $848 = $i; $inc1280 = (($848) + 1)|0; $i = $inc1280; } $849 = $tonal$addr; $count1282 = ((($849)) + 7436|0); $850 = HEAP32[$count1282>>2]|0; $cmp1283 = ($850|0)>(5); L278: do { if ($cmp1283) { $i = 0; while(1) { $851 = $i; $cmp1287 = ($851|0)<(9); if (!($cmp1287)) { break L278; } $852 = $alpha; $sub1290 = 1.0 - $852; $853 = $tonal$addr; $std = ((($853)) + 7388|0); $854 = $i; $arrayidx1291 = (($std) + ($854<<2)|0); $855 = +HEAPF32[$arrayidx1291>>2]; $mul1292 = $sub1290 * $855; $856 = $alpha; $857 = $i; $arrayidx1293 = (($features) + ($857<<2)|0); $858 = +HEAPF32[$arrayidx1293>>2]; $mul1294 = $856 * $858; $859 = $i; $arrayidx1295 = (($features) + ($859<<2)|0); $860 = +HEAPF32[$arrayidx1295>>2]; $mul1296 = $mul1294 * $860; $add1297 = $mul1292 + $mul1296; $861 = $tonal$addr; $std1298 = ((($861)) + 7388|0); $862 = $i; $arrayidx1299 = (($std1298) + ($862<<2)|0); HEAPF32[$arrayidx1299>>2] = $add1297; $863 = $i; $inc1301 = (($863) + 1)|0; $i = $inc1301; } } } while(0); $i = 0; while(1) { $864 = $i; $cmp1305 = ($864|0)<(4); if (!($cmp1305)) { break; } $865 = $i; $arrayidx1308 = (($BFCC) + ($865<<2)|0); $866 = +HEAPF32[$arrayidx1308>>2]; $867 = $i; $arrayidx1309 = (($midE) + ($867<<2)|0); $868 = +HEAPF32[$arrayidx1309>>2]; $sub1310 = $866 - $868; $869 = $i; $arrayidx1311 = (($features) + ($869<<2)|0); HEAPF32[$arrayidx1311>>2] = $sub1310; $870 = $i; $inc1313 = (($870) + 1)|0; $i = $inc1313; } $i = 0; while(1) { $871 = $i; $cmp1316 = ($871|0)<(8); if (!($cmp1316)) { break; } $872 = $tonal$addr; $mem1319 = ((($872)) + 7228|0); $873 = $i; $add1320 = (($873) + 16)|0; $arrayidx1321 = (($mem1319) + ($add1320<<2)|0); $874 = +HEAPF32[$arrayidx1321>>2]; $875 = $tonal$addr; $mem1322 = ((($875)) + 7228|0); $876 = $i; $add1323 = (($876) + 24)|0; $arrayidx1324 = (($mem1322) + ($add1323<<2)|0); HEAPF32[$arrayidx1324>>2] = $874; $877 = $tonal$addr; $mem1325 = ((($877)) + 7228|0); $878 = $i; $add1326 = (($878) + 8)|0; $arrayidx1327 = (($mem1325) + ($add1326<<2)|0); $879 = +HEAPF32[$arrayidx1327>>2]; $880 = $tonal$addr; $mem1328 = ((($880)) + 7228|0); $881 = $i; $add1329 = (($881) + 16)|0; $arrayidx1330 = (($mem1328) + ($add1329<<2)|0); HEAPF32[$arrayidx1330>>2] = $879; $882 = $tonal$addr; $mem1331 = ((($882)) + 7228|0); $883 = $i; $arrayidx1332 = (($mem1331) + ($883<<2)|0); $884 = +HEAPF32[$arrayidx1332>>2]; $885 = $tonal$addr; $mem1333 = ((($885)) + 7228|0); $886 = $i; $add1334 = (($886) + 8)|0; $arrayidx1335 = (($mem1333) + ($add1334<<2)|0); HEAPF32[$arrayidx1335>>2] = $884; $887 = $i; $arrayidx1336 = (($BFCC) + ($887<<2)|0); $888 = +HEAPF32[$arrayidx1336>>2]; $889 = $tonal$addr; $mem1337 = ((($889)) + 7228|0); $890 = $i; $arrayidx1338 = (($mem1337) + ($890<<2)|0); HEAPF32[$arrayidx1338>>2] = $888; $891 = $i; $inc1340 = (($891) + 1)|0; $i = $inc1340; } $i = 0; while(1) { $892 = $i; $cmp1343 = ($892|0)<(9); if (!($cmp1343)) { break; } $893 = $tonal$addr; $std1346 = ((($893)) + 7388|0); $894 = $i; $arrayidx1347 = (($std1346) + ($894<<2)|0); $895 = +HEAPF32[$arrayidx1347>>2]; $conv1348 = $895; $call1349 = (+Math_sqrt((+$conv1348))); $conv1350 = $call1349; $896 = $i; $arrayidx1351 = (1960 + ($896<<2)|0); $897 = +HEAPF32[$arrayidx1351>>2]; $sub1352 = $conv1350 - $897; $898 = $i; $add1353 = (11 + ($898))|0; $arrayidx1354 = (($features) + ($add1353<<2)|0); HEAPF32[$arrayidx1354>>2] = $sub1352; $899 = $i; $inc1356 = (($899) + 1)|0; $i = $inc1356; } $900 = $spec_variability; $sub1358 = $900 - 0.77999997138977051; $arrayidx1359 = ((($features)) + 72|0); HEAPF32[$arrayidx1359>>2] = $sub1358; $901 = $info; $tonality1360 = ((($901)) + 4|0); $902 = +HEAPF32[$tonality1360>>2]; $sub1361 = $902 - 0.15472300350666046; $arrayidx1362 = ((($features)) + 80|0); HEAPF32[$arrayidx1362>>2] = $sub1361; $903 = $info; $activity1363 = ((($903)) + 16|0); $904 = +HEAPF32[$activity1363>>2]; $sub1364 = $904 - 0.72464299201965332; $arrayidx1365 = ((($features)) + 84|0); HEAPF32[$arrayidx1365>>2] = $sub1364; $905 = $frame_stationarity; $sub1366 = $905 - 0.7437170147895813; $arrayidx1367 = ((($features)) + 88|0); HEAPF32[$arrayidx1367>>2] = $sub1366; $906 = $info; $tonality_slope1368 = ((($906)) + 8|0); $907 = +HEAPF32[$tonality_slope1368>>2]; $add1369 = $907 + 0.06921599805355072; $arrayidx1370 = ((($features)) + 92|0); HEAPF32[$arrayidx1370>>2] = $add1369; $908 = $tonal$addr; $lowECount1371 = ((($908)) + 7428|0); $909 = +HEAPF32[$lowECount1371>>2]; $sub1372 = $909 - 0.06792999804019928; $arrayidx1373 = ((($features)) + 96|0); HEAPF32[$arrayidx1373>>2] = $sub1372; _compute_dense(2800,$layer_out,$features); $910 = $tonal$addr; $rnn_state = ((($910)) + 7460|0); _compute_gru(2820,$rnn_state,$layer_out); $911 = $tonal$addr; $rnn_state1379 = ((($911)) + 7460|0); _compute_dense(2840,$frame_probs,$rnn_state1379); $arrayidx1381 = ((($frame_probs)) + 4|0); $912 = +HEAPF32[$arrayidx1381>>2]; $913 = $info; $activity_probability = ((($913)) + 36|0); HEAPF32[$activity_probability>>2] = $912; $914 = +HEAPF32[$frame_probs>>2]; $sub1383 = 1.0 - $914; $mul1384 = 10.0 * $sub1383; $sub1385 = 1.0 - $mul1384; $915 = +HEAPF32[$frame_probs>>2]; $mul1387 = 10.0 * $915; $916 = +HEAPF32[$frame_probs>>2]; $mul1389 = 0.68999999761581421 * $916; $917 = +HEAPF32[$frame_probs>>2]; $sub1391 = 2.0 - $917; $mul1392 = $mul1389 * $sub1391; $add1393 = 0.11999999731779099 + $mul1392; $cmp1394 = $mul1387 < $add1393; $918 = +HEAPF32[$frame_probs>>2]; if ($cmp1394) { $mul1398 = 10.0 * $918; $cond1407 = $mul1398; } else { $mul1401 = 0.68999999761581421 * $918; $919 = +HEAPF32[$frame_probs>>2]; $sub1403 = 2.0 - $919; $mul1404 = $mul1401 * $sub1403; $add1405 = 0.11999999731779099 + $mul1404; $cond1407 = $add1405; } $cmp1408 = $sub1385 > $cond1407; $920 = +HEAPF32[$frame_probs>>2]; do { if ($cmp1408) { $sub1412 = 1.0 - $920; $mul1413 = 10.0 * $sub1412; $sub1414 = 1.0 - $mul1413; $cond1439 = $sub1414; } else { $mul1417 = 10.0 * $920; $921 = +HEAPF32[$frame_probs>>2]; $mul1419 = 0.68999999761581421 * $921; $922 = +HEAPF32[$frame_probs>>2]; $sub1421 = 2.0 - $922; $mul1422 = $mul1419 * $sub1421; $add1423 = 0.11999999731779099 + $mul1422; $cmp1424 = $mul1417 < $add1423; $923 = +HEAPF32[$frame_probs>>2]; if ($cmp1424) { $mul1428 = 10.0 * $923; $cond1439 = $mul1428; break; } else { $mul1431 = 0.68999999761581421 * $923; $924 = +HEAPF32[$frame_probs>>2]; $sub1433 = 2.0 - $924; $mul1434 = $mul1431 * $sub1433; $add1435 = 0.11999999731779099 + $mul1434; $cond1439 = $add1435; break; } } } while(0); $925 = $info; $music_prob = ((($925)) + 20|0); HEAPF32[$music_prob>>2] = $cond1439; $926 = $bandwidth; $927 = $info; $bandwidth1440 = ((($927)) + 32|0); HEAP32[$bandwidth1440>>2] = $926; $928 = $bandwidth; $929 = $tonal$addr; $prev_bandwidth1441 = ((($929)) + 5852|0); HEAP32[$prev_bandwidth1441>>2] = $928; $930 = $frame_noisiness; $931 = $info; $noisiness1442 = ((($931)) + 12|0); HEAPF32[$noisiness1442>>2] = $930; $932 = $info; HEAP32[$932>>2] = 1; STACKTOP = sp;return; } function _downmix_and_resample($downmix,$_x,$y,$S,$subframe,$offset,$c1,$c2,$C,$Fs) { $downmix = $downmix|0; $_x = $_x|0; $y = $y|0; $S = $S|0; $subframe = $subframe|0; $offset = $offset|0; $c1 = $c1|0; $c2 = $c2|0; $C = $C|0; $Fs = $Fs|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0.0, $19 = 0, $2 = 0, $20 = 0.0, $21 = 0, $22 = 0, $23 = 0.0, $24 = 0, $25 = 0.0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0.0, $42 = 0, $43 = 0, $44 = 0.0; var $45 = 0, $46 = 0, $47 = 0.0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0.0, $55 = 0, $56 = 0.0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $C$addr = 0, $Fs$addr = 0, $S$addr = 0; var $_x$addr = 0, $add = 0, $add49 = 0, $add53 = 0, $arrayidx = 0, $arrayidx44 = 0, $arrayidx46 = 0, $arrayidx47 = 0, $arrayidx50 = 0, $arrayidx51 = 0, $arrayidx54 = 0, $c1$addr = 0, $c2$addr = 0, $call = 0.0, $cmp = 0, $cmp1 = 0, $cmp11 = 0, $cmp15 = 0, $cmp21 = 0, $cmp24 = 0; var $cmp28 = 0, $cmp34 = 0, $cmp4 = 0, $cmp41 = 0, $conv = 0.0, $div = 0, $div13 = 0.0, $div18 = 0.0, $div8 = 0, $downmix$addr = 0, $inc = 0, $inc56 = 0, $j = 0, $mul = 0, $mul23 = 0.0, $mul3 = 0, $mul31 = 0, $mul32 = 0, $mul37 = 0, $mul45 = 0; var $mul48 = 0, $mul52 = 0, $mul58 = 0, $mul6 = 0, $mul7 = 0, $offset$addr = 0, $ret = 0.0, $retval = 0.0, $saved_stack = 0, $saved_stack38 = 0, $scale = 0.0, $sub$ptr$div = 0, $sub$ptr$lhs$cast = 0, $sub$ptr$rhs$cast = 0, $sub$ptr$sub = 0, $subframe$addr = 0, $vla = 0, $vla$alloca_mul = 0, $vla39 = 0, $vla39$alloca_mul = 0; var $y$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $downmix$addr = $downmix; $_x$addr = $_x; $y$addr = $y; $S$addr = $S; $subframe$addr = $subframe; $offset$addr = $offset; $c1$addr = $c1; $c2$addr = $c2; $C$addr = $C; $Fs$addr = $Fs; $ret = 0.0; $0 = $subframe$addr; $cmp = ($0|0)==(0); if ($cmp) { $retval = 0.0; $56 = $retval; STACKTOP = sp;return (+$56); } $1 = $Fs$addr; $cmp1 = ($1|0)==(48000); if ($cmp1) { $2 = $subframe$addr; $mul = $2<<1; $subframe$addr = $mul; $3 = $offset$addr; $mul3 = $3<<1; $offset$addr = $mul3; } else { $4 = $Fs$addr; $cmp4 = ($4|0)==(16000); if ($cmp4) { $5 = $subframe$addr; $mul6 = $5<<1; $div = (($mul6|0) / 3)&-1; $subframe$addr = $div; $6 = $offset$addr; $mul7 = $6<<1; $div8 = (($mul7|0) / 3)&-1; $offset$addr = $div8; } } $7 = $subframe$addr; $8 = (_llvm_stacksave()|0); $saved_stack = $8; $vla$alloca_mul = $7<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $9 = $downmix$addr; $10 = $_x$addr; $11 = $subframe$addr; $12 = $offset$addr; $13 = $c1$addr; $14 = $c2$addr; $15 = $C$addr; FUNCTION_TABLE_viiiiiii[$9 & 31]($10,$vla,$11,$12,$13,$14,$15); $scale = 3.0517578125E-5; $16 = $c2$addr; $cmp11 = ($16|0)==(-2); if ($cmp11) { $17 = $C$addr; $conv = (+($17|0)); $18 = $scale; $div13 = $18 / $conv; $scale = $div13; } else { $19 = $c2$addr; $cmp15 = ($19|0)>(-1); if ($cmp15) { $20 = $scale; $div18 = $20 / 2.0; $scale = $div18; } } $j = 0; while(1) { $21 = $j; $22 = $subframe$addr; $cmp21 = ($21|0)<($22|0); if (!($cmp21)) { break; } $23 = $scale; $24 = $j; $arrayidx = (($vla) + ($24<<2)|0); $25 = +HEAPF32[$arrayidx>>2]; $mul23 = $25 * $23; HEAPF32[$arrayidx>>2] = $mul23; $26 = $j; $inc = (($26) + 1)|0; $j = $inc; } $27 = $Fs$addr; $cmp24 = ($27|0)==(48000); do { if ($cmp24) { $28 = $S$addr; $29 = $y$addr; $30 = $subframe$addr; $call = (+_silk_resampler_down2_hp($28,$29,$vla,$30)); $ret = $call; } else { $31 = $Fs$addr; $cmp28 = ($31|0)==(24000); if ($cmp28) { $32 = $y$addr; $33 = $subframe$addr; $mul31 = $33<<2; $34 = $y$addr; $sub$ptr$lhs$cast = $34; $sub$ptr$rhs$cast = $vla; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $sub$ptr$div = (($sub$ptr$sub|0) / 4)&-1; $mul32 = 0; $add = (($mul31) + ($mul32))|0; _memcpy(($32|0),($vla|0),($add|0))|0; break; } $35 = $Fs$addr; $cmp34 = ($35|0)==(16000); if ($cmp34) { $36 = $subframe$addr; $mul37 = ($36*3)|0; $37 = (_llvm_stacksave()|0); $saved_stack38 = $37; $vla39$alloca_mul = $mul37<<2; $vla39 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla39$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla39$alloca_mul)|0)+15)&-16)|0);; $j = 0; while(1) { $38 = $j; $39 = $subframe$addr; $cmp41 = ($38|0)<($39|0); if (!($cmp41)) { break; } $40 = $j; $arrayidx44 = (($vla) + ($40<<2)|0); $41 = +HEAPF32[$arrayidx44>>2]; $42 = $j; $mul45 = ($42*3)|0; $arrayidx46 = (($vla39) + ($mul45<<2)|0); HEAPF32[$arrayidx46>>2] = $41; $43 = $j; $arrayidx47 = (($vla) + ($43<<2)|0); $44 = +HEAPF32[$arrayidx47>>2]; $45 = $j; $mul48 = ($45*3)|0; $add49 = (($mul48) + 1)|0; $arrayidx50 = (($vla39) + ($add49<<2)|0); HEAPF32[$arrayidx50>>2] = $44; $46 = $j; $arrayidx51 = (($vla) + ($46<<2)|0); $47 = +HEAPF32[$arrayidx51>>2]; $48 = $j; $mul52 = ($48*3)|0; $add53 = (($mul52) + 2)|0; $arrayidx54 = (($vla39) + ($add53<<2)|0); HEAPF32[$arrayidx54>>2] = $47; $49 = $j; $inc56 = (($49) + 1)|0; $j = $inc56; } $50 = $S$addr; $51 = $y$addr; $52 = $subframe$addr; $mul58 = ($52*3)|0; (+_silk_resampler_down2_hp($50,$51,$vla39,$mul58)); $53 = $saved_stack38; _llvm_stackrestore(($53|0)); } } } while(0); $54 = $ret; $retval = $54; $55 = $saved_stack; _llvm_stackrestore(($55|0)); $56 = $retval; STACKTOP = sp;return (+$56); } function _fast_atan2f($y,$x) { $y = +$y; $x = +$x; var $0 = 0.0, $1 = 0.0, $10 = 0.0, $11 = 0.0, $12 = 0.0, $13 = 0.0, $14 = 0.0, $15 = 0.0, $16 = 0.0, $17 = 0.0, $18 = 0.0, $19 = 0.0, $2 = 0.0, $20 = 0.0, $21 = 0.0, $22 = 0.0, $23 = 0.0, $24 = 0.0, $25 = 0.0, $26 = 0.0; var $27 = 0.0, $28 = 0.0, $29 = 0.0, $3 = 0.0, $30 = 0.0, $4 = 0.0, $5 = 0.0, $6 = 0.0, $7 = 0.0, $8 = 0.0, $9 = 0.0, $add = 0.0, $add11 = 0.0, $add14 = 0.0, $add17 = 0.0, $add19 = 0.0, $add23 = 0.0, $add28 = 0.0, $add5 = 0.0, $add7 = 0.0; var $cmp = 0, $cmp13 = 0, $cmp2 = 0, $cmp26 = 0, $cmp30 = 0, $cond = 0.0, $cond27 = 0.0, $cond31 = 0.0, $den = 0.0, $den15 = 0.0, $div = 0.0, $div25 = 0.0, $mul = 0.0, $mul1 = 0.0, $mul10 = 0.0, $mul12 = 0.0, $mul16 = 0.0, $mul18 = 0.0, $mul20 = 0.0, $mul21 = 0.0; var $mul22 = 0.0, $mul24 = 0.0, $mul29 = 0.0, $mul4 = 0.0, $mul6 = 0.0, $mul8 = 0.0, $mul9 = 0.0, $retval = 0.0, $sub = 0.0, $sub32 = 0.0, $x$addr = 0.0, $x2 = 0.0, $y$addr = 0.0, $y2 = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $y$addr = $y; $x$addr = $x; $0 = $x$addr; $1 = $x$addr; $mul = $0 * $1; $x2 = $mul; $2 = $y$addr; $3 = $y$addr; $mul1 = $2 * $3; $y2 = $mul1; $4 = $x2; $5 = $y2; $add = $4 + $5; $cmp = $add < 1.000000045813705E-18; if ($cmp) { $retval = 0.0; $30 = $retval; STACKTOP = sp;return (+$30); } $6 = $x2; $7 = $y2; $cmp2 = $6 < $7; if ($cmp2) { $8 = $y2; $9 = $x2; $mul4 = 0.67848402261734009 * $9; $add5 = $8 + $mul4; $10 = $y2; $11 = $x2; $mul6 = 0.085955418646335601 * $11; $add7 = $10 + $mul6; $mul8 = $add5 * $add7; $den = $mul8; $12 = $x$addr; $sub = - $12; $13 = $y$addr; $mul9 = $sub * $13; $14 = $y2; $15 = $x2; $mul10 = 0.43157973885536194 * $15; $add11 = $14 + $mul10; $mul12 = $mul9 * $add11; $16 = $den; $div = $mul12 / $16; $17 = $y$addr; $cmp13 = $17 < 0.0; $cond = $cmp13 ? -1.5707963705062866 : 1.5707963705062866; $add14 = $div + $cond; $retval = $add14; $30 = $retval; STACKTOP = sp;return (+$30); } else { $18 = $x2; $19 = $y2; $mul16 = 0.67848402261734009 * $19; $add17 = $18 + $mul16; $20 = $x2; $21 = $y2; $mul18 = 0.085955418646335601 * $21; $add19 = $20 + $mul18; $mul20 = $add17 * $add19; $den15 = $mul20; $22 = $x$addr; $23 = $y$addr; $mul21 = $22 * $23; $24 = $x2; $25 = $y2; $mul22 = 0.43157973885536194 * $25; $add23 = $24 + $mul22; $mul24 = $mul21 * $add23; $26 = $den15; $div25 = $mul24 / $26; $27 = $y$addr; $cmp26 = $27 < 0.0; $cond27 = $cmp26 ? -1.5707963705062866 : 1.5707963705062866; $add28 = $div25 + $cond27; $28 = $x$addr; $29 = $y$addr; $mul29 = $28 * $29; $cmp30 = $mul29 < 0.0; $cond31 = $cmp30 ? -1.5707963705062866 : 1.5707963705062866; $sub32 = $add28 - $cond31; $retval = $sub32; $30 = $retval; STACKTOP = sp;return (+$30); } return +(0.0); } function _silk_resampler_down2_hp($S,$out,$in,$inLen) { $S = $S|0; $out = $out|0; $in = $in|0; $inLen = $inLen|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0.0, $12 = 0.0, $13 = 0.0, $14 = 0.0, $15 = 0, $16 = 0.0, $17 = 0, $18 = 0, $19 = 0.0, $2 = 0, $20 = 0.0, $21 = 0, $22 = 0.0, $23 = 0.0, $24 = 0.0, $25 = 0, $26 = 0.0; var $27 = 0.0, $28 = 0.0, $29 = 0.0, $3 = 0, $30 = 0.0, $31 = 0, $32 = 0.0, $33 = 0, $34 = 0.0, $35 = 0.0, $36 = 0.0, $37 = 0, $38 = 0.0, $39 = 0.0, $4 = 0, $40 = 0.0, $41 = 0.0, $42 = 0.0, $43 = 0, $44 = 0.0; var $45 = 0.0, $46 = 0.0, $47 = 0.0, $48 = 0, $49 = 0, $5 = 0.0, $50 = 0, $51 = 0.0, $6 = 0.0, $7 = 0, $8 = 0.0, $9 = 0.0, $S$addr = 0, $X = 0.0, $Y = 0.0, $add = 0.0, $add13 = 0.0, $add14 = 0.0, $add15 = 0.0, $add22 = 0.0; var $add23 = 0.0, $add25 = 0.0, $add28 = 0.0, $add4 = 0.0, $add7 = 0, $arrayidx = 0, $arrayidx12 = 0, $arrayidx16 = 0, $arrayidx18 = 0, $arrayidx21 = 0, $arrayidx26 = 0, $arrayidx30 = 0, $arrayidx8 = 0, $arrayidx9 = 0, $cmp = 0, $div = 0, $hp_ener = 0.0, $in$addr = 0, $in32 = 0.0, $inLen$addr = 0; var $inc = 0, $k = 0, $len2 = 0, $mul = 0, $mul11 = 0.0, $mul2 = 0.0, $mul20 = 0.0, $mul27 = 0.0, $mul29 = 0.0, $mul6 = 0, $out$addr = 0, $out32 = 0.0, $out32_hp = 0.0, $sub = 0.0, $sub10 = 0.0, $sub17 = 0.0, $sub19 = 0.0, $sub24 = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $S$addr = $S; $out$addr = $out; $in$addr = $in; $inLen$addr = $inLen; $0 = $inLen$addr; $div = (($0|0) / 2)&-1; $len2 = $div; $hp_ener = 0.0; $k = 0; while(1) { $1 = $k; $2 = $len2; $cmp = ($1|0)<($2|0); if (!($cmp)) { break; } $3 = $in$addr; $4 = $k; $mul = $4<<1; $arrayidx = (($3) + ($mul<<2)|0); $5 = +HEAPF32[$arrayidx>>2]; $in32 = $5; $6 = $in32; $7 = $S$addr; $8 = +HEAPF32[$7>>2]; $sub = $6 - $8; $Y = $sub; $9 = $Y; $mul2 = 0.60743707418441772 * $9; $X = $mul2; $10 = $S$addr; $11 = +HEAPF32[$10>>2]; $12 = $X; $add = $11 + $12; $out32 = $add; $13 = $in32; $14 = $X; $add4 = $13 + $14; $15 = $S$addr; HEAPF32[$15>>2] = $add4; $16 = $out32; $out32_hp = $16; $17 = $in$addr; $18 = $k; $mul6 = $18<<1; $add7 = (($mul6) + 1)|0; $arrayidx8 = (($17) + ($add7<<2)|0); $19 = +HEAPF32[$arrayidx8>>2]; $in32 = $19; $20 = $in32; $21 = $S$addr; $arrayidx9 = ((($21)) + 4|0); $22 = +HEAPF32[$arrayidx9>>2]; $sub10 = $20 - $22; $Y = $sub10; $23 = $Y; $mul11 = 0.15062999725341797 * $23; $X = $mul11; $24 = $out32; $25 = $S$addr; $arrayidx12 = ((($25)) + 4|0); $26 = +HEAPF32[$arrayidx12>>2]; $add13 = $24 + $26; $out32 = $add13; $27 = $out32; $28 = $X; $add14 = $27 + $28; $out32 = $add14; $29 = $in32; $30 = $X; $add15 = $29 + $30; $31 = $S$addr; $arrayidx16 = ((($31)) + 4|0); HEAPF32[$arrayidx16>>2] = $add15; $32 = $in32; $sub17 = - $32; $33 = $S$addr; $arrayidx18 = ((($33)) + 8|0); $34 = +HEAPF32[$arrayidx18>>2]; $sub19 = $sub17 - $34; $Y = $sub19; $35 = $Y; $mul20 = 0.15062999725341797 * $35; $X = $mul20; $36 = $out32_hp; $37 = $S$addr; $arrayidx21 = ((($37)) + 8|0); $38 = +HEAPF32[$arrayidx21>>2]; $add22 = $36 + $38; $out32_hp = $add22; $39 = $out32_hp; $40 = $X; $add23 = $39 + $40; $out32_hp = $add23; $41 = $in32; $sub24 = - $41; $42 = $X; $add25 = $sub24 + $42; $43 = $S$addr; $arrayidx26 = ((($43)) + 8|0); HEAPF32[$arrayidx26>>2] = $add25; $44 = $out32_hp; $45 = $out32_hp; $mul27 = $44 * $45; $46 = $hp_ener; $add28 = $46 + $mul27; $hp_ener = $add28; $47 = $out32; $mul29 = 0.5 * $47; $48 = $out$addr; $49 = $k; $arrayidx30 = (($48) + ($49<<2)|0); HEAPF32[$arrayidx30>>2] = $mul29; $50 = $k; $inc = (($50) + 1)|0; $k = $inc; } $51 = $hp_ener; STACKTOP = sp;return (+$51); } function _compute_dense($layer,$output,$input) { $layer = $layer|0; $output = $output|0; $input = $input|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0.0, $22 = 0.0, $23 = 0, $24 = 0.0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0.0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0.0, $42 = 0, $43 = 0, $44 = 0; var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $M = 0, $N = 0, $add = 0, $add10 = 0.0, $arrayidx = 0, $arrayidx12 = 0, $arrayidx20 = 0, $arrayidx21 = 0, $arrayidx29 = 0, $arrayidx31 = 0, $arrayidx5 = 0, $arrayidx8 = 0, $call = 0.0, $call30 = 0.0, $cmp = 0; var $cmp17 = 0, $cmp2 = 0, $cmp26 = 0, $conv = 0.0, $conv6 = 0, $conv7 = 0.0, $i = 0, $inc = 0, $inc14 = 0, $inc23 = 0, $inc33 = 0, $input$addr = 0, $input_weights = 0, $j = 0, $layer$addr = 0, $mul = 0, $mul11 = 0.0, $mul9 = 0.0, $nb_inputs = 0, $nb_neurons = 0; var $output$addr = 0, $sigmoid = 0, $stride = 0, $sum = 0.0, $tobool = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $layer$addr = $layer; $output$addr = $output; $input$addr = $input; $0 = $layer$addr; $nb_inputs = ((($0)) + 8|0); $1 = HEAP32[$nb_inputs>>2]|0; $M = $1; $2 = $layer$addr; $nb_neurons = ((($2)) + 12|0); $3 = HEAP32[$nb_neurons>>2]|0; $N = $3; $4 = $N; $stride = $4; $i = 0; while(1) { $5 = $i; $6 = $N; $cmp = ($5|0)<($6|0); $7 = $layer$addr; if (!($cmp)) { break; } $8 = HEAP32[$7>>2]|0; $9 = $i; $arrayidx = (($8) + ($9)|0); $10 = HEAP8[$arrayidx>>0]|0; $conv = (+($10<<24>>24)); $sum = $conv; $j = 0; while(1) { $11 = $j; $12 = $M; $cmp2 = ($11|0)<($12|0); if (!($cmp2)) { break; } $13 = $layer$addr; $input_weights = ((($13)) + 4|0); $14 = HEAP32[$input_weights>>2]|0; $15 = $j; $16 = $stride; $mul = Math_imul($15, $16)|0; $17 = $i; $add = (($mul) + ($17))|0; $arrayidx5 = (($14) + ($add)|0); $18 = HEAP8[$arrayidx5>>0]|0; $conv6 = $18 << 24 >> 24; $conv7 = (+($conv6|0)); $19 = $input$addr; $20 = $j; $arrayidx8 = (($19) + ($20<<2)|0); $21 = +HEAPF32[$arrayidx8>>2]; $mul9 = $conv7 * $21; $22 = $sum; $add10 = $22 + $mul9; $sum = $add10; $23 = $j; $inc = (($23) + 1)|0; $j = $inc; } $24 = $sum; $mul11 = 0.0078125 * $24; $25 = $output$addr; $26 = $i; $arrayidx12 = (($25) + ($26<<2)|0); HEAPF32[$arrayidx12>>2] = $mul11; $27 = $i; $inc14 = (($27) + 1)|0; $i = $inc14; } $sigmoid = ((($7)) + 16|0); $28 = HEAP32[$sigmoid>>2]|0; $tobool = ($28|0)!=(0); $i = 0; if ($tobool) { while(1) { $29 = $i; $30 = $N; $cmp17 = ($29|0)<($30|0); if (!($cmp17)) { break; } $31 = $output$addr; $32 = $i; $arrayidx20 = (($31) + ($32<<2)|0); $33 = +HEAPF32[$arrayidx20>>2]; $call = (+_sigmoid_approx($33)); $34 = $output$addr; $35 = $i; $arrayidx21 = (($34) + ($35<<2)|0); HEAPF32[$arrayidx21>>2] = $call; $36 = $i; $inc23 = (($36) + 1)|0; $i = $inc23; } STACKTOP = sp;return; } else { while(1) { $37 = $i; $38 = $N; $cmp26 = ($37|0)<($38|0); if (!($cmp26)) { break; } $39 = $output$addr; $40 = $i; $arrayidx29 = (($39) + ($40<<2)|0); $41 = +HEAPF32[$arrayidx29>>2]; $call30 = (+_tansig_approx($41)); $42 = $output$addr; $43 = $i; $arrayidx31 = (($42) + ($43<<2)|0); HEAPF32[$arrayidx31>>2] = $call30; $44 = $i; $inc33 = (($44) + 1)|0; $i = $inc33; } STACKTOP = sp;return; } } function _sigmoid_approx($x) { $x = +$x; var $0 = 0.0, $add = 0.0, $call = 0.0, $mul = 0.0, $mul1 = 0.0, $x$addr = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $x$addr = $x; $0 = $x$addr; $mul = 0.5 * $0; $call = (+_tansig_approx($mul)); $mul1 = 0.5 * $call; $add = 0.5 + $mul1; STACKTOP = sp;return (+$add); } function _tansig_approx($x) { $x = +$x; var $0 = 0.0, $1 = 0.0, $10 = 0.0, $11 = 0.0, $12 = 0.0, $13 = 0.0, $14 = 0.0, $15 = 0.0, $16 = 0.0, $17 = 0.0, $18 = 0.0, $19 = 0.0, $2 = 0.0, $20 = 0.0, $3 = 0.0, $4 = 0.0, $5 = 0.0, $6 = 0.0, $7 = 0, $8 = 0.0; var $9 = 0, $add = 0.0, $add20 = 0.0, $arrayidx = 0, $call = 0.0, $cmp = 0, $cmp1 = 0, $cmp4 = 0, $cmp7 = 0, $conv = 0.0, $conv10 = 0, $conv11 = 0.0, $dy = 0.0, $i = 0, $mul = 0.0, $mul12 = 0.0, $mul14 = 0.0, $mul16 = 0.0, $mul17 = 0.0, $mul19 = 0.0; var $mul21 = 0.0, $retval = 0.0, $sign = 0.0, $sub = 0.0, $sub13 = 0.0, $sub15 = 0.0, $sub18 = 0.0, $x$addr = 0.0, $y = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $x$addr = $x; $sign = 1.0; $0 = $x$addr; $cmp = $0 < 8.0; if (!($cmp)) { $retval = 1.0; $20 = $retval; STACKTOP = sp;return (+$20); } $1 = $x$addr; $cmp1 = $1 > -8.0; if (!($cmp1)) { $retval = -1.0; $20 = $retval; STACKTOP = sp;return (+$20); } $2 = $x$addr; $3 = $x$addr; $cmp4 = $2 != $3; if ($cmp4) { $retval = 0.0; $20 = $retval; STACKTOP = sp;return (+$20); } $4 = $x$addr; $cmp7 = $4 < 0.0; if ($cmp7) { $5 = $x$addr; $sub = - $5; $x$addr = $sub; $sign = -1.0; } $6 = $x$addr; $mul = 25.0 * $6; $add = 0.5 + $mul; $conv = $add; $call = (+Math_floor((+$conv))); $conv10 = (~~(($call))); $i = $conv10; $7 = $i; $conv11 = (+($7|0)); $mul12 = 0.039999999105930328 * $conv11; $8 = $x$addr; $sub13 = $8 - $mul12; $x$addr = $sub13; $9 = $i; $arrayidx = (1996 + ($9<<2)|0); $10 = +HEAPF32[$arrayidx>>2]; $y = $10; $11 = $y; $12 = $y; $mul14 = $11 * $12; $sub15 = 1.0 - $mul14; $dy = $sub15; $13 = $y; $14 = $x$addr; $15 = $dy; $mul16 = $14 * $15; $16 = $y; $17 = $x$addr; $mul17 = $16 * $17; $sub18 = 1.0 - $mul17; $mul19 = $mul16 * $sub18; $add20 = $13 + $mul19; $y = $add20; $18 = $sign; $19 = $y; $mul21 = $18 * $19; $retval = $mul21; $20 = $retval; STACKTOP = sp;return (+$20); } function _compute_gru($gru,$state,$input) { $gru = $gru|0; $state = $state|0; $input = $input|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0.0, $111 = 0, $112 = 0.0, $113 = 0.0, $114 = 0, $115 = 0; var $116 = 0.0, $117 = 0, $118 = 0, $119 = 0.0, $12 = 0, $120 = 0, $121 = 0.0, $122 = 0.0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0.0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $14 = 0, $15 = 0; var $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0.0, $22 = 0.0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0; var $34 = 0.0, $35 = 0.0, $36 = 0, $37 = 0.0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0; var $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0.0, $59 = 0.0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0; var $70 = 0, $71 = 0, $72 = 0.0, $73 = 0.0, $74 = 0, $75 = 0.0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0; var $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0.0, $97 = 0.0, $98 = 0, $99 = 0, $M = 0, $N = 0, $add = 0, $add105 = 0.0, $add11 = 0.0, $add116 = 0, $add117 = 0, $add125 = 0.0; var $add136 = 0.0, $add17 = 0, $add23 = 0.0, $add38 = 0, $add47 = 0, $add48 = 0, $add54 = 0.0, $add64 = 0, $add65 = 0, $add71 = 0.0, $add88 = 0, $add98 = 0, $add99 = 0, $arrayidx = 0, $arrayidx100 = 0, $arrayidx103 = 0, $arrayidx118 = 0, $arrayidx121 = 0, $arrayidx123 = 0, $arrayidx129 = 0; var $arrayidx130 = 0, $arrayidx132 = 0, $arrayidx137 = 0, $arrayidx145 = 0, $arrayidx146 = 0, $arrayidx18 = 0, $arrayidx21 = 0, $arrayidx28 = 0, $arrayidx39 = 0, $arrayidx49 = 0, $arrayidx52 = 0, $arrayidx6 = 0, $arrayidx66 = 0, $arrayidx69 = 0, $arrayidx77 = 0, $arrayidx89 = 0, $arrayidx9 = 0, $call = 0.0, $call134 = 0.0, $call76 = 0.0; var $cmp = 0, $cmp110 = 0, $cmp13 = 0, $cmp142 = 0, $cmp2 = 0, $cmp33 = 0, $cmp42 = 0, $cmp59 = 0, $cmp82 = 0, $cmp92 = 0, $conv = 0.0, $conv101 = 0, $conv102 = 0.0, $conv119 = 0, $conv120 = 0.0, $conv19 = 0, $conv20 = 0.0, $conv40 = 0.0, $conv50 = 0, $conv51 = 0.0; var $conv67 = 0, $conv68 = 0.0, $conv7 = 0, $conv8 = 0.0, $conv90 = 0.0, $gru$addr = 0, $h = 0, $i = 0, $inc = 0, $inc107 = 0, $inc127 = 0, $inc139 = 0, $inc148 = 0, $inc25 = 0, $inc30 = 0, $inc56 = 0, $inc73 = 0, $inc79 = 0, $input$addr = 0, $input_weights = 0; var $input_weights45 = 0, $input_weights95 = 0, $j = 0, $mul = 0, $mul10 = 0.0, $mul104 = 0.0, $mul114 = 0, $mul115 = 0, $mul122 = 0.0, $mul124 = 0.0, $mul131 = 0.0, $mul133 = 0.0, $mul135 = 0.0, $mul16 = 0, $mul22 = 0.0, $mul27 = 0.0, $mul46 = 0, $mul5 = 0, $mul53 = 0.0, $mul63 = 0; var $mul70 = 0.0, $mul75 = 0.0, $mul87 = 0, $mul96 = 0, $mul97 = 0, $nb_inputs = 0, $nb_neurons = 0, $r = 0, $recurrent_weights = 0, $recurrent_weights113 = 0, $recurrent_weights62 = 0, $state$addr = 0, $stride = 0, $sub = 0.0, $sum = 0.0, $sum36 = 0.0, $sum85 = 0.0, $z = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 432|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(432|0); $z = sp + 272|0; $r = sp + 144|0; $h = sp + 16|0; $gru$addr = $gru; $state$addr = $state; $input$addr = $input; $0 = $gru$addr; $nb_inputs = ((($0)) + 12|0); $1 = HEAP32[$nb_inputs>>2]|0; $M = $1; $2 = $gru$addr; $nb_neurons = ((($2)) + 16|0); $3 = HEAP32[$nb_neurons>>2]|0; $N = $3; $4 = $N; $mul = ($4*3)|0; $stride = $mul; $i = 0; while(1) { $5 = $i; $6 = $N; $cmp = ($5|0)<($6|0); if (!($cmp)) { break; } $7 = $gru$addr; $8 = HEAP32[$7>>2]|0; $9 = $i; $arrayidx = (($8) + ($9)|0); $10 = HEAP8[$arrayidx>>0]|0; $conv = (+($10<<24>>24)); $sum = $conv; $j = 0; while(1) { $11 = $j; $12 = $M; $cmp2 = ($11|0)<($12|0); if (!($cmp2)) { break; } $13 = $gru$addr; $input_weights = ((($13)) + 4|0); $14 = HEAP32[$input_weights>>2]|0; $15 = $j; $16 = $stride; $mul5 = Math_imul($15, $16)|0; $17 = $i; $add = (($mul5) + ($17))|0; $arrayidx6 = (($14) + ($add)|0); $18 = HEAP8[$arrayidx6>>0]|0; $conv7 = $18 << 24 >> 24; $conv8 = (+($conv7|0)); $19 = $input$addr; $20 = $j; $arrayidx9 = (($19) + ($20<<2)|0); $21 = +HEAPF32[$arrayidx9>>2]; $mul10 = $conv8 * $21; $22 = $sum; $add11 = $22 + $mul10; $sum = $add11; $23 = $j; $inc = (($23) + 1)|0; $j = $inc; } $j = 0; while(1) { $24 = $j; $25 = $N; $cmp13 = ($24|0)<($25|0); if (!($cmp13)) { break; } $26 = $gru$addr; $recurrent_weights = ((($26)) + 8|0); $27 = HEAP32[$recurrent_weights>>2]|0; $28 = $j; $29 = $stride; $mul16 = Math_imul($28, $29)|0; $30 = $i; $add17 = (($mul16) + ($30))|0; $arrayidx18 = (($27) + ($add17)|0); $31 = HEAP8[$arrayidx18>>0]|0; $conv19 = $31 << 24 >> 24; $conv20 = (+($conv19|0)); $32 = $state$addr; $33 = $j; $arrayidx21 = (($32) + ($33<<2)|0); $34 = +HEAPF32[$arrayidx21>>2]; $mul22 = $conv20 * $34; $35 = $sum; $add23 = $35 + $mul22; $sum = $add23; $36 = $j; $inc25 = (($36) + 1)|0; $j = $inc25; } $37 = $sum; $mul27 = 0.0078125 * $37; $call = (+_sigmoid_approx($mul27)); $38 = $i; $arrayidx28 = (($z) + ($38<<2)|0); HEAPF32[$arrayidx28>>2] = $call; $39 = $i; $inc30 = (($39) + 1)|0; $i = $inc30; } $i = 0; while(1) { $40 = $i; $41 = $N; $cmp33 = ($40|0)<($41|0); if (!($cmp33)) { break; } $42 = $gru$addr; $43 = HEAP32[$42>>2]|0; $44 = $N; $45 = $i; $add38 = (($44) + ($45))|0; $arrayidx39 = (($43) + ($add38)|0); $46 = HEAP8[$arrayidx39>>0]|0; $conv40 = (+($46<<24>>24)); $sum36 = $conv40; $j = 0; while(1) { $47 = $j; $48 = $M; $cmp42 = ($47|0)<($48|0); if (!($cmp42)) { break; } $49 = $gru$addr; $input_weights45 = ((($49)) + 4|0); $50 = HEAP32[$input_weights45>>2]|0; $51 = $N; $52 = $j; $53 = $stride; $mul46 = Math_imul($52, $53)|0; $add47 = (($51) + ($mul46))|0; $54 = $i; $add48 = (($add47) + ($54))|0; $arrayidx49 = (($50) + ($add48)|0); $55 = HEAP8[$arrayidx49>>0]|0; $conv50 = $55 << 24 >> 24; $conv51 = (+($conv50|0)); $56 = $input$addr; $57 = $j; $arrayidx52 = (($56) + ($57<<2)|0); $58 = +HEAPF32[$arrayidx52>>2]; $mul53 = $conv51 * $58; $59 = $sum36; $add54 = $59 + $mul53; $sum36 = $add54; $60 = $j; $inc56 = (($60) + 1)|0; $j = $inc56; } $j = 0; while(1) { $61 = $j; $62 = $N; $cmp59 = ($61|0)<($62|0); if (!($cmp59)) { break; } $63 = $gru$addr; $recurrent_weights62 = ((($63)) + 8|0); $64 = HEAP32[$recurrent_weights62>>2]|0; $65 = $N; $66 = $j; $67 = $stride; $mul63 = Math_imul($66, $67)|0; $add64 = (($65) + ($mul63))|0; $68 = $i; $add65 = (($add64) + ($68))|0; $arrayidx66 = (($64) + ($add65)|0); $69 = HEAP8[$arrayidx66>>0]|0; $conv67 = $69 << 24 >> 24; $conv68 = (+($conv67|0)); $70 = $state$addr; $71 = $j; $arrayidx69 = (($70) + ($71<<2)|0); $72 = +HEAPF32[$arrayidx69>>2]; $mul70 = $conv68 * $72; $73 = $sum36; $add71 = $73 + $mul70; $sum36 = $add71; $74 = $j; $inc73 = (($74) + 1)|0; $j = $inc73; } $75 = $sum36; $mul75 = 0.0078125 * $75; $call76 = (+_sigmoid_approx($mul75)); $76 = $i; $arrayidx77 = (($r) + ($76<<2)|0); HEAPF32[$arrayidx77>>2] = $call76; $77 = $i; $inc79 = (($77) + 1)|0; $i = $inc79; } $i = 0; while(1) { $78 = $i; $79 = $N; $cmp82 = ($78|0)<($79|0); if (!($cmp82)) { break; } $80 = $gru$addr; $81 = HEAP32[$80>>2]|0; $82 = $N; $mul87 = $82<<1; $83 = $i; $add88 = (($mul87) + ($83))|0; $arrayidx89 = (($81) + ($add88)|0); $84 = HEAP8[$arrayidx89>>0]|0; $conv90 = (+($84<<24>>24)); $sum85 = $conv90; $j = 0; while(1) { $85 = $j; $86 = $M; $cmp92 = ($85|0)<($86|0); if (!($cmp92)) { break; } $87 = $gru$addr; $input_weights95 = ((($87)) + 4|0); $88 = HEAP32[$input_weights95>>2]|0; $89 = $N; $mul96 = $89<<1; $90 = $j; $91 = $stride; $mul97 = Math_imul($90, $91)|0; $add98 = (($mul96) + ($mul97))|0; $92 = $i; $add99 = (($add98) + ($92))|0; $arrayidx100 = (($88) + ($add99)|0); $93 = HEAP8[$arrayidx100>>0]|0; $conv101 = $93 << 24 >> 24; $conv102 = (+($conv101|0)); $94 = $input$addr; $95 = $j; $arrayidx103 = (($94) + ($95<<2)|0); $96 = +HEAPF32[$arrayidx103>>2]; $mul104 = $conv102 * $96; $97 = $sum85; $add105 = $97 + $mul104; $sum85 = $add105; $98 = $j; $inc107 = (($98) + 1)|0; $j = $inc107; } $j = 0; while(1) { $99 = $j; $100 = $N; $cmp110 = ($99|0)<($100|0); if (!($cmp110)) { break; } $101 = $gru$addr; $recurrent_weights113 = ((($101)) + 8|0); $102 = HEAP32[$recurrent_weights113>>2]|0; $103 = $N; $mul114 = $103<<1; $104 = $j; $105 = $stride; $mul115 = Math_imul($104, $105)|0; $add116 = (($mul114) + ($mul115))|0; $106 = $i; $add117 = (($add116) + ($106))|0; $arrayidx118 = (($102) + ($add117)|0); $107 = HEAP8[$arrayidx118>>0]|0; $conv119 = $107 << 24 >> 24; $conv120 = (+($conv119|0)); $108 = $state$addr; $109 = $j; $arrayidx121 = (($108) + ($109<<2)|0); $110 = +HEAPF32[$arrayidx121>>2]; $mul122 = $conv120 * $110; $111 = $j; $arrayidx123 = (($r) + ($111<<2)|0); $112 = +HEAPF32[$arrayidx123>>2]; $mul124 = $mul122 * $112; $113 = $sum85; $add125 = $113 + $mul124; $sum85 = $add125; $114 = $j; $inc127 = (($114) + 1)|0; $j = $inc127; } $115 = $i; $arrayidx129 = (($z) + ($115<<2)|0); $116 = +HEAPF32[$arrayidx129>>2]; $117 = $state$addr; $118 = $i; $arrayidx130 = (($117) + ($118<<2)|0); $119 = +HEAPF32[$arrayidx130>>2]; $mul131 = $116 * $119; $120 = $i; $arrayidx132 = (($z) + ($120<<2)|0); $121 = +HEAPF32[$arrayidx132>>2]; $sub = 1.0 - $121; $122 = $sum85; $mul133 = 0.0078125 * $122; $call134 = (+_tansig_approx($mul133)); $mul135 = $sub * $call134; $add136 = $mul131 + $mul135; $123 = $i; $arrayidx137 = (($h) + ($123<<2)|0); HEAPF32[$arrayidx137>>2] = $add136; $124 = $i; $inc139 = (($124) + 1)|0; $i = $inc139; } $i = 0; while(1) { $125 = $i; $126 = $N; $cmp142 = ($125|0)<($126|0); if (!($cmp142)) { break; } $127 = $i; $arrayidx145 = (($h) + ($127<<2)|0); $128 = +HEAPF32[$arrayidx145>>2]; $129 = $state$addr; $130 = $i; $arrayidx146 = (($129) + ($130<<2)|0); HEAPF32[$arrayidx146>>2] = $128; $131 = $i; $inc148 = (($131) + 1)|0; $i = $inc148; } STACKTOP = sp;return; } function _celt_encoder_get_size($channels) { $channels = $channels|0; var $0 = 0, $1 = 0, $call = 0, $call1 = 0, $channels$addr = 0, $mode = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $channels$addr = $channels; $call = (_opus_custom_mode_create(48000,960,0)|0); $mode = $call; $0 = $mode; $1 = $channels$addr; $call1 = (_opus_custom_encoder_get_size($0,$1)|0); STACKTOP = sp;return ($call1|0); } function _opus_custom_encoder_get_size($mode,$channels) { $mode = $mode|0; $channels = $channels|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $add = 0, $add4 = 0, $add8 = 0, $channels$addr = 0, $mode$addr = 0, $mul = 0, $mul1 = 0, $mul2 = 0, $mul3 = 0, $mul5 = 0, $mul6 = 0, $mul7 = 0; var $nbEBands = 0, $overlap = 0, $size = 0, $sub = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $mode$addr = $mode; $channels$addr = $channels; $0 = $channels$addr; $1 = $mode$addr; $overlap = ((($1)) + 4|0); $2 = HEAP32[$overlap>>2]|0; $mul = Math_imul($0, $2)|0; $sub = (($mul) - 1)|0; $mul1 = $sub<<2; $add = (248 + ($mul1))|0; $3 = $channels$addr; $mul2 = $3<<10; $mul3 = $mul2<<2; $add4 = (($add) + ($mul3))|0; $4 = $channels$addr; $mul5 = $4<<2; $5 = $mode$addr; $nbEBands = ((($5)) + 8|0); $6 = HEAP32[$nbEBands>>2]|0; $mul6 = Math_imul($mul5, $6)|0; $mul7 = $mul6<<2; $add8 = (($add4) + ($mul7))|0; $size = $add8; $7 = $size; STACKTOP = sp;return ($7|0); } function _celt_encoder_init($st,$sampling_rate,$channels,$arch) { $st = $st|0; $sampling_rate = $sampling_rate|0; $channels = $channels|0; $arch = $arch|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $arch$addr = 0, $call = 0, $call1 = 0, $call2 = 0, $channels$addr = 0, $cmp = 0, $ret = 0, $retval = 0, $sampling_rate$addr = 0, $st$addr = 0, $upsample = 0, label = 0; var sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $st$addr = $st; $sampling_rate$addr = $sampling_rate; $channels$addr = $channels; $arch$addr = $arch; $0 = $st$addr; $call = (_opus_custom_mode_create(48000,960,0)|0); $1 = $channels$addr; $2 = $arch$addr; $call1 = (_opus_custom_encoder_init_arch($0,$call,$1,$2)|0); $ret = $call1; $3 = $ret; $cmp = ($3|0)!=(0); if ($cmp) { $4 = $ret; $retval = $4; $7 = $retval; STACKTOP = sp;return ($7|0); } else { $5 = $sampling_rate$addr; $call2 = (_resampling_factor($5)|0); $6 = $st$addr; $upsample = ((($6)) + 28|0); HEAP32[$upsample>>2] = $call2; $retval = 0; $7 = $retval; STACKTOP = sp;return ($7|0); } return (0)|0; } function _opus_custom_encoder_init_arch($st,$mode,$channels,$arch) { $st = $st|0; $mode = $mode|0; $channels = $channels|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $arch$addr = 0, $arch10 = 0, $bitrate = 0, $call = 0, $channels$addr = 0, $channels8 = 0, $clip = 0, $cmp = 0, $cmp1 = 0, $cmp2 = 0; var $cmp4 = 0, $complexity = 0, $constrained_vbr = 0, $effEBands = 0, $end = 0, $force_intra = 0, $lsb_depth = 0, $mode$addr = 0, $mul = 0, $or$cond = 0, $or$cond1 = 0, $retval = 0, $signalling = 0, $st$addr = 0, $start = 0, $stream_channels = 0, $upsample = 0, $vararg_buffer = 0, $vbr = 0, label = 0; var sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $vararg_buffer = sp; $st$addr = $st; $mode$addr = $mode; $channels$addr = $channels; $arch$addr = $arch; $0 = $channels$addr; $cmp = ($0|0)<(0); $1 = $channels$addr; $cmp1 = ($1|0)>(2); $or$cond = $cmp | $cmp1; if ($or$cond) { $retval = -1; $29 = $retval; STACKTOP = sp;return ($29|0); } $2 = $st$addr; $cmp2 = ($2|0)==(0|0); $3 = $mode$addr; $cmp4 = ($3|0)==(0|0); $or$cond1 = $cmp2 | $cmp4; if ($or$cond1) { $retval = -7; $29 = $retval; STACKTOP = sp;return ($29|0); } else { $4 = $st$addr; $5 = $mode$addr; $6 = $channels$addr; $call = (_opus_custom_encoder_get_size($5,$6)|0); $mul = $call; _memset(($4|0),0,($mul|0))|0; $7 = $mode$addr; $8 = $st$addr; HEAP32[$8>>2] = $7; $9 = $channels$addr; $10 = $st$addr; $channels8 = ((($10)) + 4|0); HEAP32[$channels8>>2] = $9; $11 = $st$addr; $stream_channels = ((($11)) + 8|0); HEAP32[$stream_channels>>2] = $9; $12 = $st$addr; $upsample = ((($12)) + 28|0); HEAP32[$upsample>>2] = 1; $13 = $st$addr; $start = ((($13)) + 32|0); HEAP32[$start>>2] = 0; $14 = $st$addr; $15 = HEAP32[$14>>2]|0; $effEBands = ((($15)) + 12|0); $16 = HEAP32[$effEBands>>2]|0; $17 = $st$addr; $end = ((($17)) + 36|0); HEAP32[$end>>2] = $16; $18 = $st$addr; $signalling = ((($18)) + 48|0); HEAP32[$signalling>>2] = 1; $19 = $arch$addr; $20 = $st$addr; $arch10 = ((($20)) + 72|0); HEAP32[$arch10>>2] = $19; $21 = $st$addr; $constrained_vbr = ((($21)) + 52|0); HEAP32[$constrained_vbr>>2] = 1; $22 = $st$addr; $clip = ((($22)) + 16|0); HEAP32[$clip>>2] = 1; $23 = $st$addr; $bitrate = ((($23)) + 40|0); HEAP32[$bitrate>>2] = -1; $24 = $st$addr; $vbr = ((($24)) + 44|0); HEAP32[$vbr>>2] = 0; $25 = $st$addr; $force_intra = ((($25)) + 12|0); HEAP32[$force_intra>>2] = 0; $26 = $st$addr; $complexity = ((($26)) + 24|0); HEAP32[$complexity>>2] = 5; $27 = $st$addr; $lsb_depth = ((($27)) + 60|0); HEAP32[$lsb_depth>>2] = 24; $28 = $st$addr; (_opus_custom_encoder_ctl($28,4028,$vararg_buffer)|0); $retval = 0; $29 = $retval; STACKTOP = sp;return ($29|0); } return (0)|0; } function _opus_custom_encoder_ctl($st,$request,$varargs) { $st = $st|0; $request = $request|0; $varargs = $varargs|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0; var $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $add = 0, $add$ptr = 0, $add$ptr123 = 0, $add$ptr128 = 0, $add154 = 0, $add168 = 0, $analysis = 0, $analysis149 = 0, $ap = 0, $arglist_current = 0, $arglist_current11 = 0; var $arglist_current14 = 0, $arglist_current17 = 0, $arglist_current20 = 0, $arglist_current23 = 0, $arglist_current26 = 0, $arglist_current29 = 0, $arglist_current32 = 0, $arglist_current35 = 0, $arglist_current38 = 0, $arglist_current41 = 0, $arglist_current44 = 0, $arglist_current47 = 0, $arglist_current50 = 0, $arglist_current53 = 0, $arglist_current56 = 0, $arglist_current59 = 0, $arglist_current62 = 0, $arglist_current8 = 0, $arglist_next = 0, $arglist_next12 = 0; var $arglist_next15 = 0, $arglist_next18 = 0, $arglist_next21 = 0, $arglist_next24 = 0, $arglist_next27 = 0, $arglist_next30 = 0, $arglist_next33 = 0, $arglist_next36 = 0, $arglist_next39 = 0, $arglist_next42 = 0, $arglist_next45 = 0, $arglist_next48 = 0, $arglist_next51 = 0, $arglist_next54 = 0, $arglist_next57 = 0, $arglist_next60 = 0, $arglist_next63 = 0, $arglist_next9 = 0, $arrayidx = 0, $arrayidx139 = 0; var $bitrate = 0, $call = 0, $channels = 0, $channels116 = 0, $channels119 = 0, $channels124 = 0, $channels130 = 0, $channels133 = 0, $channels67 = 0, $cmp = 0, $cmp10 = 0, $cmp100 = 0, $cmp103 = 0, $cmp137 = 0, $cmp17 = 0, $cmp174 = 0, $cmp183 = 0, $cmp21 = 0, $cmp28 = 0, $cmp3 = 0; var $cmp30 = 0, $cmp33 = 0, $cmp34 = 0, $cmp40 = 0, $cmp43 = 0, $cmp59 = 0, $cmp61 = 0, $cmp65 = 0, $cmp73 = 0, $cmp76 = 0, $cmp8 = 0, $cmp84 = 0, $cmp87 = 0, $complexity = 0, $cond = 0, $constrained_vbr = 0, $conv = 0, $conv35 = 0, $delayedIntra = 0, $disable_inv = 0; var $disable_inv113 = 0, $disable_pf = 0, $end = 0, $energy_mask = 0, $expanded = 0, $expanded100 = 0, $expanded102 = 0, $expanded103 = 0, $expanded104 = 0, $expanded106 = 0, $expanded107 = 0, $expanded109 = 0, $expanded11 = 0, $expanded110 = 0, $expanded111 = 0, $expanded113 = 0, $expanded114 = 0, $expanded116 = 0, $expanded117 = 0, $expanded118 = 0; var $expanded12 = 0, $expanded120 = 0, $expanded121 = 0, $expanded123 = 0, $expanded124 = 0, $expanded125 = 0, $expanded127 = 0, $expanded128 = 0, $expanded13 = 0, $expanded130 = 0, $expanded131 = 0, $expanded132 = 0, $expanded134 = 0, $expanded135 = 0, $expanded137 = 0, $expanded138 = 0, $expanded139 = 0, $expanded15 = 0, $expanded16 = 0, $expanded18 = 0; var $expanded19 = 0, $expanded2 = 0, $expanded20 = 0, $expanded22 = 0, $expanded23 = 0, $expanded25 = 0, $expanded26 = 0, $expanded27 = 0, $expanded29 = 0, $expanded30 = 0, $expanded32 = 0, $expanded33 = 0, $expanded34 = 0, $expanded36 = 0, $expanded37 = 0, $expanded39 = 0, $expanded4 = 0, $expanded40 = 0, $expanded41 = 0, $expanded43 = 0; var $expanded44 = 0, $expanded46 = 0, $expanded47 = 0, $expanded48 = 0, $expanded5 = 0, $expanded50 = 0, $expanded51 = 0, $expanded53 = 0, $expanded54 = 0, $expanded55 = 0, $expanded57 = 0, $expanded58 = 0, $expanded6 = 0, $expanded60 = 0, $expanded61 = 0, $expanded62 = 0, $expanded64 = 0, $expanded65 = 0, $expanded67 = 0, $expanded68 = 0; var $expanded69 = 0, $expanded71 = 0, $expanded72 = 0, $expanded74 = 0, $expanded75 = 0, $expanded76 = 0, $expanded78 = 0, $expanded79 = 0, $expanded8 = 0, $expanded81 = 0, $expanded82 = 0, $expanded83 = 0, $expanded85 = 0, $expanded86 = 0, $expanded88 = 0, $expanded89 = 0, $expanded9 = 0, $expanded90 = 0, $expanded92 = 0, $expanded93 = 0; var $expanded95 = 0, $expanded96 = 0, $expanded97 = 0, $expanded99 = 0, $force_intra = 0, $hf_average = 0, $i = 0, $in_mem = 0, $inc = 0, $info = 0, $info157 = 0, $lfe = 0, $loss_rate = 0, $lsb_depth = 0, $lsb_depth95 = 0, $mul = 0, $mul118 = 0, $mul122 = 0, $mul127 = 0, $mul132 = 0; var $mul136 = 0, $mul153 = 0, $mul167 = 0, $mul68 = 0, $nbEBands = 0, $nbEBands121 = 0, $nbEBands126 = 0, $nbEBands135 = 0, $nbEBands20 = 0, $oldBandE = 0, $oldLogE = 0, $oldLogE2 = 0, $or$cond = 0, $or$cond1 = 0, $or$cond2 = 0, $or$cond3 = 0, $or$cond4 = 0, $or$cond5 = 0, $or$cond6 = 0, $overlap = 0; var $request$addr = 0, $retval = 0, $rng = 0, $rng131 = 0, $rng187 = 0, $signalling = 0, $silk_info = 0, $silk_info162 = 0, $spread_decision = 0, $st$addr = 0, $start = 0, $stream_channels = 0, $sub = 0, $sub$ptr$div = 0, $sub$ptr$div166 = 0, $sub$ptr$lhs$cast = 0, $sub$ptr$lhs$cast150 = 0, $sub$ptr$lhs$cast163 = 0, $sub$ptr$rhs$cast = 0, $sub$ptr$rhs$cast151 = 0; var $sub$ptr$rhs$cast164 = 0, $sub$ptr$sub = 0, $sub$ptr$sub152 = 0, $sub$ptr$sub165 = 0, $tapset_decision = 0, $tobool = 0, $tobool147 = 0, $tobool160 = 0, $tonal_average = 0, $value = 0, $value108 = 0, $value14 = 0, $value141 = 0, $value171 = 0, $value180 = 0, $value189 = 0, $value193 = 0, $value25 = 0, $value37 = 0, $value48 = 0; var $value5 = 0, $value52 = 0, $value56 = 0, $value70 = 0, $value81 = 0, $value92 = 0, $value97 = 0, $varet = 0, $varet110 = 0, $varet143 = 0, $varet146 = 0, $varet159 = 0, $varet16 = 0, $varet173 = 0, $varet182 = 0, $varet191 = 0, $varet195 = 0, $varet27 = 0, $varet39 = 0, $varet50 = 0; var $varet54 = 0, $varet58 = 0, $varet7 = 0, $varet72 = 0, $varet83 = 0, $varet94 = 0, $varet99 = 0, $vbr = 0, $vbr_offset = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 208|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(208|0); $ap = sp + 176|0; $st$addr = $st; $request$addr = $request; HEAP32[$ap>>2] = $varargs; $0 = $request$addr; do { switch ($0|0) { case 4010: { $arglist_current = HEAP32[$ap>>2]|0; $1 = $arglist_current; $2 = ((0) + 4|0); $expanded2 = $2; $expanded = (($expanded2) - 1)|0; $3 = (($1) + ($expanded))|0; $4 = ((0) + 4|0); $expanded6 = $4; $expanded5 = (($expanded6) - 1)|0; $expanded4 = $expanded5 ^ -1; $5 = $3 & $expanded4; $6 = $5; $7 = HEAP32[$6>>2]|0; $arglist_next = ((($6)) + 4|0); HEAP32[$ap>>2] = $arglist_next; $varet = $7; $8 = $varet; $value = $8; $9 = $value; $cmp = ($9|0)<(0); $10 = $value; $cmp3 = ($10|0)>(10); $or$cond = $cmp | $cmp3; if ($or$cond) { label = 46; } else { $11 = $value; $12 = $st$addr; $complexity = ((($12)) + 24|0); HEAP32[$complexity>>2] = $11; label = 45; } break; } case 10010: { $arglist_current8 = HEAP32[$ap>>2]|0; $13 = $arglist_current8; $14 = ((0) + 4|0); $expanded9 = $14; $expanded8 = (($expanded9) - 1)|0; $15 = (($13) + ($expanded8))|0; $16 = ((0) + 4|0); $expanded13 = $16; $expanded12 = (($expanded13) - 1)|0; $expanded11 = $expanded12 ^ -1; $17 = $15 & $expanded11; $18 = $17; $19 = HEAP32[$18>>2]|0; $arglist_next9 = ((($18)) + 4|0); HEAP32[$ap>>2] = $arglist_next9; $varet7 = $19; $20 = $varet7; $value5 = $20; $21 = $value5; $cmp8 = ($21|0)<(0); if ($cmp8) { label = 46; } else { $22 = $value5; $23 = $st$addr; $24 = HEAP32[$23>>2]|0; $nbEBands = ((($24)) + 8|0); $25 = HEAP32[$nbEBands>>2]|0; $cmp10 = ($22|0)>=($25|0); if ($cmp10) { label = 46; } else { $26 = $value5; $27 = $st$addr; $start = ((($27)) + 32|0); HEAP32[$start>>2] = $26; label = 45; } } break; } case 10012: { $arglist_current11 = HEAP32[$ap>>2]|0; $28 = $arglist_current11; $29 = ((0) + 4|0); $expanded16 = $29; $expanded15 = (($expanded16) - 1)|0; $30 = (($28) + ($expanded15))|0; $31 = ((0) + 4|0); $expanded20 = $31; $expanded19 = (($expanded20) - 1)|0; $expanded18 = $expanded19 ^ -1; $32 = $30 & $expanded18; $33 = $32; $34 = HEAP32[$33>>2]|0; $arglist_next12 = ((($33)) + 4|0); HEAP32[$ap>>2] = $arglist_next12; $varet16 = $34; $35 = $varet16; $value14 = $35; $36 = $value14; $cmp17 = ($36|0)<(1); if ($cmp17) { label = 46; } else { $37 = $value14; $38 = $st$addr; $39 = HEAP32[$38>>2]|0; $nbEBands20 = ((($39)) + 8|0); $40 = HEAP32[$nbEBands20>>2]|0; $cmp21 = ($37|0)>($40|0); if ($cmp21) { label = 46; } else { $41 = $value14; $42 = $st$addr; $end = ((($42)) + 36|0); HEAP32[$end>>2] = $41; label = 45; } } break; } case 10002: { $arglist_current14 = HEAP32[$ap>>2]|0; $43 = $arglist_current14; $44 = ((0) + 4|0); $expanded23 = $44; $expanded22 = (($expanded23) - 1)|0; $45 = (($43) + ($expanded22))|0; $46 = ((0) + 4|0); $expanded27 = $46; $expanded26 = (($expanded27) - 1)|0; $expanded25 = $expanded26 ^ -1; $47 = $45 & $expanded25; $48 = $47; $49 = HEAP32[$48>>2]|0; $arglist_next15 = ((($48)) + 4|0); HEAP32[$ap>>2] = $arglist_next15; $varet27 = $49; $50 = $varet27; $value25 = $50; $51 = $value25; $cmp28 = ($51|0)<(0); $52 = $value25; $cmp30 = ($52|0)>(2); $or$cond1 = $cmp28 | $cmp30; if ($or$cond1) { label = 46; } else { $53 = $value25; $cmp33 = ($53|0)<=(1); $conv = $cmp33&1; $54 = $st$addr; $disable_pf = ((($54)) + 20|0); HEAP32[$disable_pf>>2] = $conv; $55 = $value25; $cmp34 = ($55|0)==(0); $conv35 = $cmp34&1; $56 = $st$addr; $force_intra = ((($56)) + 12|0); HEAP32[$force_intra>>2] = $conv35; label = 45; } break; } case 4014: { $arglist_current17 = HEAP32[$ap>>2]|0; $57 = $arglist_current17; $58 = ((0) + 4|0); $expanded30 = $58; $expanded29 = (($expanded30) - 1)|0; $59 = (($57) + ($expanded29))|0; $60 = ((0) + 4|0); $expanded34 = $60; $expanded33 = (($expanded34) - 1)|0; $expanded32 = $expanded33 ^ -1; $61 = $59 & $expanded32; $62 = $61; $63 = HEAP32[$62>>2]|0; $arglist_next18 = ((($62)) + 4|0); HEAP32[$ap>>2] = $arglist_next18; $varet39 = $63; $64 = $varet39; $value37 = $64; $65 = $value37; $cmp40 = ($65|0)<(0); $66 = $value37; $cmp43 = ($66|0)>(100); $or$cond2 = $cmp40 | $cmp43; if ($or$cond2) { label = 46; } else { $67 = $value37; $68 = $st$addr; $loss_rate = ((($68)) + 56|0); HEAP32[$loss_rate>>2] = $67; label = 45; } break; } case 4020: { $arglist_current20 = HEAP32[$ap>>2]|0; $69 = $arglist_current20; $70 = ((0) + 4|0); $expanded37 = $70; $expanded36 = (($expanded37) - 1)|0; $71 = (($69) + ($expanded36))|0; $72 = ((0) + 4|0); $expanded41 = $72; $expanded40 = (($expanded41) - 1)|0; $expanded39 = $expanded40 ^ -1; $73 = $71 & $expanded39; $74 = $73; $75 = HEAP32[$74>>2]|0; $arglist_next21 = ((($74)) + 4|0); HEAP32[$ap>>2] = $arglist_next21; $varet50 = $75; $76 = $varet50; $value48 = $76; $77 = $value48; $78 = $st$addr; $constrained_vbr = ((($78)) + 52|0); HEAP32[$constrained_vbr>>2] = $77; label = 45; break; } case 4006: { $arglist_current23 = HEAP32[$ap>>2]|0; $79 = $arglist_current23; $80 = ((0) + 4|0); $expanded44 = $80; $expanded43 = (($expanded44) - 1)|0; $81 = (($79) + ($expanded43))|0; $82 = ((0) + 4|0); $expanded48 = $82; $expanded47 = (($expanded48) - 1)|0; $expanded46 = $expanded47 ^ -1; $83 = $81 & $expanded46; $84 = $83; $85 = HEAP32[$84>>2]|0; $arglist_next24 = ((($84)) + 4|0); HEAP32[$ap>>2] = $arglist_next24; $varet54 = $85; $86 = $varet54; $value52 = $86; $87 = $value52; $88 = $st$addr; $vbr = ((($88)) + 44|0); HEAP32[$vbr>>2] = $87; label = 45; break; } case 4002: { $arglist_current26 = HEAP32[$ap>>2]|0; $89 = $arglist_current26; $90 = ((0) + 4|0); $expanded51 = $90; $expanded50 = (($expanded51) - 1)|0; $91 = (($89) + ($expanded50))|0; $92 = ((0) + 4|0); $expanded55 = $92; $expanded54 = (($expanded55) - 1)|0; $expanded53 = $expanded54 ^ -1; $93 = $91 & $expanded53; $94 = $93; $95 = HEAP32[$94>>2]|0; $arglist_next27 = ((($94)) + 4|0); HEAP32[$ap>>2] = $arglist_next27; $varet58 = $95; $96 = $varet58; $value56 = $96; $97 = $value56; $cmp59 = ($97|0)<=(500); $98 = $value56; $cmp61 = ($98|0)!=(-1); $or$cond3 = $cmp59 & $cmp61; if ($or$cond3) { label = 46; } else { $99 = $value56; $100 = $st$addr; $channels = ((($100)) + 4|0); $101 = HEAP32[$channels>>2]|0; $mul = ($101*260000)|0; $cmp65 = ($99|0)<($mul|0); if ($cmp65) { $102 = $value56; $cond = $102; } else { $103 = $st$addr; $channels67 = ((($103)) + 4|0); $104 = HEAP32[$channels67>>2]|0; $mul68 = ($104*260000)|0; $cond = $mul68; } $value56 = $cond; $105 = $value56; $106 = $st$addr; $bitrate = ((($106)) + 40|0); HEAP32[$bitrate>>2] = $105; label = 45; } break; } case 10008: { $arglist_current29 = HEAP32[$ap>>2]|0; $107 = $arglist_current29; $108 = ((0) + 4|0); $expanded58 = $108; $expanded57 = (($expanded58) - 1)|0; $109 = (($107) + ($expanded57))|0; $110 = ((0) + 4|0); $expanded62 = $110; $expanded61 = (($expanded62) - 1)|0; $expanded60 = $expanded61 ^ -1; $111 = $109 & $expanded60; $112 = $111; $113 = HEAP32[$112>>2]|0; $arglist_next30 = ((($112)) + 4|0); HEAP32[$ap>>2] = $arglist_next30; $varet72 = $113; $114 = $varet72; $value70 = $114; $115 = $value70; $cmp73 = ($115|0)<(1); $116 = $value70; $cmp76 = ($116|0)>(2); $or$cond4 = $cmp73 | $cmp76; if ($or$cond4) { label = 46; } else { $117 = $value70; $118 = $st$addr; $stream_channels = ((($118)) + 8|0); HEAP32[$stream_channels>>2] = $117; label = 45; } break; } case 4036: { $arglist_current32 = HEAP32[$ap>>2]|0; $119 = $arglist_current32; $120 = ((0) + 4|0); $expanded65 = $120; $expanded64 = (($expanded65) - 1)|0; $121 = (($119) + ($expanded64))|0; $122 = ((0) + 4|0); $expanded69 = $122; $expanded68 = (($expanded69) - 1)|0; $expanded67 = $expanded68 ^ -1; $123 = $121 & $expanded67; $124 = $123; $125 = HEAP32[$124>>2]|0; $arglist_next33 = ((($124)) + 4|0); HEAP32[$ap>>2] = $arglist_next33; $varet83 = $125; $126 = $varet83; $value81 = $126; $127 = $value81; $cmp84 = ($127|0)<(8); $128 = $value81; $cmp87 = ($128|0)>(24); $or$cond5 = $cmp84 | $cmp87; if ($or$cond5) { label = 46; } else { $129 = $value81; $130 = $st$addr; $lsb_depth = ((($130)) + 60|0); HEAP32[$lsb_depth>>2] = $129; label = 45; } break; } case 4037: { $arglist_current35 = HEAP32[$ap>>2]|0; $131 = $arglist_current35; $132 = ((0) + 4|0); $expanded72 = $132; $expanded71 = (($expanded72) - 1)|0; $133 = (($131) + ($expanded71))|0; $134 = ((0) + 4|0); $expanded76 = $134; $expanded75 = (($expanded76) - 1)|0; $expanded74 = $expanded75 ^ -1; $135 = $133 & $expanded74; $136 = $135; $137 = HEAP32[$136>>2]|0; $arglist_next36 = ((($136)) + 4|0); HEAP32[$ap>>2] = $arglist_next36; $varet94 = $137; $138 = $varet94; $value92 = $138; $139 = $st$addr; $lsb_depth95 = ((($139)) + 60|0); $140 = HEAP32[$lsb_depth95>>2]|0; $141 = $value92; HEAP32[$141>>2] = $140; label = 45; break; } case 4046: { $arglist_current38 = HEAP32[$ap>>2]|0; $142 = $arglist_current38; $143 = ((0) + 4|0); $expanded79 = $143; $expanded78 = (($expanded79) - 1)|0; $144 = (($142) + ($expanded78))|0; $145 = ((0) + 4|0); $expanded83 = $145; $expanded82 = (($expanded83) - 1)|0; $expanded81 = $expanded82 ^ -1; $146 = $144 & $expanded81; $147 = $146; $148 = HEAP32[$147>>2]|0; $arglist_next39 = ((($147)) + 4|0); HEAP32[$ap>>2] = $arglist_next39; $varet99 = $148; $149 = $varet99; $value97 = $149; $150 = $value97; $cmp100 = ($150|0)<(0); $151 = $value97; $cmp103 = ($151|0)>(1); $or$cond6 = $cmp100 | $cmp103; if ($or$cond6) { label = 46; } else { $152 = $value97; $153 = $st$addr; $disable_inv = ((($153)) + 68|0); HEAP32[$disable_inv>>2] = $152; label = 45; } break; } case 4047: { $arglist_current41 = HEAP32[$ap>>2]|0; $154 = $arglist_current41; $155 = ((0) + 4|0); $expanded86 = $155; $expanded85 = (($expanded86) - 1)|0; $156 = (($154) + ($expanded85))|0; $157 = ((0) + 4|0); $expanded90 = $157; $expanded89 = (($expanded90) - 1)|0; $expanded88 = $expanded89 ^ -1; $158 = $156 & $expanded88; $159 = $158; $160 = HEAP32[$159>>2]|0; $arglist_next42 = ((($159)) + 4|0); HEAP32[$ap>>2] = $arglist_next42; $varet110 = $160; $161 = $varet110; $value108 = $161; $162 = $value108; $tobool = ($162|0)!=(0|0); if ($tobool) { $163 = $st$addr; $disable_inv113 = ((($163)) + 68|0); $164 = HEAP32[$disable_inv113>>2]|0; $165 = $value108; HEAP32[$165>>2] = $164; label = 45; } else { label = 46; } break; } case 4028: { $166 = $st$addr; $in_mem = ((($166)) + 244|0); $167 = $st$addr; $channels116 = ((($167)) + 4|0); $168 = HEAP32[$channels116>>2]|0; $169 = $st$addr; $170 = HEAP32[$169>>2]|0; $overlap = ((($170)) + 4|0); $171 = HEAP32[$overlap>>2]|0; $add = (($171) + 1024)|0; $mul118 = Math_imul($168, $add)|0; $add$ptr = (($in_mem) + ($mul118<<2)|0); $oldBandE = $add$ptr; $172 = $oldBandE; $173 = $st$addr; $channels119 = ((($173)) + 4|0); $174 = HEAP32[$channels119>>2]|0; $175 = $st$addr; $176 = HEAP32[$175>>2]|0; $nbEBands121 = ((($176)) + 8|0); $177 = HEAP32[$nbEBands121>>2]|0; $mul122 = Math_imul($174, $177)|0; $add$ptr123 = (($172) + ($mul122<<2)|0); $oldLogE = $add$ptr123; $178 = $oldLogE; $179 = $st$addr; $channels124 = ((($179)) + 4|0); $180 = HEAP32[$channels124>>2]|0; $181 = $st$addr; $182 = HEAP32[$181>>2]|0; $nbEBands126 = ((($182)) + 8|0); $183 = HEAP32[$nbEBands126>>2]|0; $mul127 = Math_imul($180, $183)|0; $add$ptr128 = (($178) + ($mul127<<2)|0); $oldLogE2 = $add$ptr128; $184 = $st$addr; $rng = ((($184)) + 76|0); $185 = $st$addr; $186 = HEAP32[$185>>2]|0; $187 = $st$addr; $channels130 = ((($187)) + 4|0); $188 = HEAP32[$channels130>>2]|0; $call = (_opus_custom_encoder_get_size($186,$188)|0); $189 = $st$addr; $rng131 = ((($189)) + 76|0); $190 = $st$addr; $sub$ptr$lhs$cast = $rng131; $sub$ptr$rhs$cast = $190; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $sub = (($call) - ($sub$ptr$sub))|0; $mul132 = $sub; _memset(($rng|0),0,($mul132|0))|0; $i = 0; while(1) { $191 = $i; $192 = $st$addr; $channels133 = ((($192)) + 4|0); $193 = HEAP32[$channels133>>2]|0; $194 = $st$addr; $195 = HEAP32[$194>>2]|0; $nbEBands135 = ((($195)) + 8|0); $196 = HEAP32[$nbEBands135>>2]|0; $mul136 = Math_imul($193, $196)|0; $cmp137 = ($191|0)<($mul136|0); if (!($cmp137)) { break; } $197 = $oldLogE2; $198 = $i; $arrayidx = (($197) + ($198<<2)|0); HEAPF32[$arrayidx>>2] = -28.0; $199 = $oldLogE; $200 = $i; $arrayidx139 = (($199) + ($200<<2)|0); HEAPF32[$arrayidx139>>2] = -28.0; $201 = $i; $inc = (($201) + 1)|0; $i = $inc; } $202 = $st$addr; $vbr_offset = ((($202)) + 216|0); HEAP32[$vbr_offset>>2] = 0; $203 = $st$addr; $delayedIntra = ((($203)) + 84|0); HEAPF32[$delayedIntra>>2] = 1.0; $204 = $st$addr; $spread_decision = ((($204)) + 80|0); HEAP32[$spread_decision>>2] = 2; $205 = $st$addr; $tonal_average = ((($205)) + 88|0); HEAP32[$tonal_average>>2] = 256; $206 = $st$addr; $hf_average = ((($206)) + 96|0); HEAP32[$hf_average>>2] = 0; $207 = $st$addr; $tapset_decision = ((($207)) + 100|0); HEAP32[$tapset_decision>>2] = 0; label = 45; break; } case 10016: { $arglist_current44 = HEAP32[$ap>>2]|0; $208 = $arglist_current44; $209 = ((0) + 4|0); $expanded93 = $209; $expanded92 = (($expanded93) - 1)|0; $210 = (($208) + ($expanded92))|0; $211 = ((0) + 4|0); $expanded97 = $211; $expanded96 = (($expanded97) - 1)|0; $expanded95 = $expanded96 ^ -1; $212 = $210 & $expanded95; $213 = $212; $214 = HEAP32[$213>>2]|0; $arglist_next45 = ((($213)) + 4|0); HEAP32[$ap>>2] = $arglist_next45; $varet143 = $214; $215 = $varet143; $value141 = $215; $216 = $value141; $217 = $st$addr; $signalling = ((($217)) + 48|0); HEAP32[$signalling>>2] = $216; label = 45; break; } case 10022: { $arglist_current47 = HEAP32[$ap>>2]|0; $218 = $arglist_current47; $219 = ((0) + 4|0); $expanded100 = $219; $expanded99 = (($expanded100) - 1)|0; $220 = (($218) + ($expanded99))|0; $221 = ((0) + 4|0); $expanded104 = $221; $expanded103 = (($expanded104) - 1)|0; $expanded102 = $expanded103 ^ -1; $222 = $220 & $expanded102; $223 = $222; $224 = HEAP32[$223>>2]|0; $arglist_next48 = ((($223)) + 4|0); HEAP32[$ap>>2] = $arglist_next48; $varet146 = $224; $225 = $varet146; $info = $225; $226 = $info; $tobool147 = ($226|0)!=(0|0); if ($tobool147) { $227 = $st$addr; $analysis = ((($227)) + 120|0); $228 = $info; $229 = $st$addr; $analysis149 = ((($229)) + 120|0); $230 = $info; $sub$ptr$lhs$cast150 = $analysis149; $sub$ptr$rhs$cast151 = $230; $sub$ptr$sub152 = (($sub$ptr$lhs$cast150) - ($sub$ptr$rhs$cast151))|0; $sub$ptr$div = (($sub$ptr$sub152|0) / 64)&-1; $mul153 = 0; $add154 = (64 + ($mul153))|0; _memcpy(($analysis|0),($228|0),($add154|0))|0; label = 45; } else { label = 45; } break; } case 10028: { $arglist_current50 = HEAP32[$ap>>2]|0; $231 = $arglist_current50; $232 = ((0) + 4|0); $expanded107 = $232; $expanded106 = (($expanded107) - 1)|0; $233 = (($231) + ($expanded106))|0; $234 = ((0) + 4|0); $expanded111 = $234; $expanded110 = (($expanded111) - 1)|0; $expanded109 = $expanded110 ^ -1; $235 = $233 & $expanded109; $236 = $235; $237 = HEAP32[$236>>2]|0; $arglist_next51 = ((($236)) + 4|0); HEAP32[$ap>>2] = $arglist_next51; $varet159 = $237; $238 = $varet159; $info157 = $238; $239 = $info157; $tobool160 = ($239|0)!=(0|0); if ($tobool160) { $240 = $st$addr; $silk_info = ((($240)) + 184|0); $241 = $info157; $242 = $st$addr; $silk_info162 = ((($242)) + 184|0); $243 = $info157; $sub$ptr$lhs$cast163 = $silk_info162; $sub$ptr$rhs$cast164 = $243; $sub$ptr$sub165 = (($sub$ptr$lhs$cast163) - ($sub$ptr$rhs$cast164))|0; $sub$ptr$div166 = (($sub$ptr$sub165|0) / 8)&-1; $mul167 = 0; $add168 = (8 + ($mul167))|0; _memcpy(($silk_info|0),($241|0),($add168|0))|0; label = 45; } else { label = 45; } break; } case 10015: { $arglist_current53 = HEAP32[$ap>>2]|0; $244 = $arglist_current53; $245 = ((0) + 4|0); $expanded114 = $245; $expanded113 = (($expanded114) - 1)|0; $246 = (($244) + ($expanded113))|0; $247 = ((0) + 4|0); $expanded118 = $247; $expanded117 = (($expanded118) - 1)|0; $expanded116 = $expanded117 ^ -1; $248 = $246 & $expanded116; $249 = $248; $250 = HEAP32[$249>>2]|0; $arglist_next54 = ((($249)) + 4|0); HEAP32[$ap>>2] = $arglist_next54; $varet173 = $250; $251 = $varet173; $value171 = $251; $252 = $value171; $cmp174 = ($252|0)==(0|0); if ($cmp174) { label = 46; } else { $253 = $st$addr; $254 = HEAP32[$253>>2]|0; $255 = $value171; HEAP32[$255>>2] = $254; label = 45; } break; } case 4031: { $arglist_current56 = HEAP32[$ap>>2]|0; $256 = $arglist_current56; $257 = ((0) + 4|0); $expanded121 = $257; $expanded120 = (($expanded121) - 1)|0; $258 = (($256) + ($expanded120))|0; $259 = ((0) + 4|0); $expanded125 = $259; $expanded124 = (($expanded125) - 1)|0; $expanded123 = $expanded124 ^ -1; $260 = $258 & $expanded123; $261 = $260; $262 = HEAP32[$261>>2]|0; $arglist_next57 = ((($261)) + 4|0); HEAP32[$ap>>2] = $arglist_next57; $varet182 = $262; $263 = $varet182; $value180 = $263; $264 = $value180; $cmp183 = ($264|0)==(0|0); if ($cmp183) { label = 46; } else { $265 = $st$addr; $rng187 = ((($265)) + 76|0); $266 = HEAP32[$rng187>>2]|0; $267 = $value180; HEAP32[$267>>2] = $266; label = 45; } break; } case 10024: { $arglist_current59 = HEAP32[$ap>>2]|0; $268 = $arglist_current59; $269 = ((0) + 4|0); $expanded128 = $269; $expanded127 = (($expanded128) - 1)|0; $270 = (($268) + ($expanded127))|0; $271 = ((0) + 4|0); $expanded132 = $271; $expanded131 = (($expanded132) - 1)|0; $expanded130 = $expanded131 ^ -1; $272 = $270 & $expanded130; $273 = $272; $274 = HEAP32[$273>>2]|0; $arglist_next60 = ((($273)) + 4|0); HEAP32[$ap>>2] = $arglist_next60; $varet191 = $274; $275 = $varet191; $value189 = $275; $276 = $value189; $277 = $st$addr; $lfe = ((($277)) + 64|0); HEAP32[$lfe>>2] = $276; label = 45; break; } case 10026: { $arglist_current62 = HEAP32[$ap>>2]|0; $278 = $arglist_current62; $279 = ((0) + 4|0); $expanded135 = $279; $expanded134 = (($expanded135) - 1)|0; $280 = (($278) + ($expanded134))|0; $281 = ((0) + 4|0); $expanded139 = $281; $expanded138 = (($expanded139) - 1)|0; $expanded137 = $expanded138 ^ -1; $282 = $280 & $expanded137; $283 = $282; $284 = HEAP32[$283>>2]|0; $arglist_next63 = ((($283)) + 4|0); HEAP32[$ap>>2] = $arglist_next63; $varet195 = $284; $285 = $varet195; $value193 = $285; $286 = $value193; $287 = $st$addr; $energy_mask = ((($287)) + 236|0); HEAP32[$energy_mask>>2] = $286; label = 45; break; } default: { $retval = -5; $288 = $retval; STACKTOP = sp;return ($288|0); } } } while(0); if ((label|0) == 45) { $retval = 0; $288 = $retval; STACKTOP = sp;return ($288|0); } else if ((label|0) == 46) { $retval = -1; $288 = $retval; STACKTOP = sp;return ($288|0); } return (0)|0; } function _celt_preemphasis($pcmp,$inp,$N,$CC,$upsample,$coef,$mem,$clip) { $pcmp = $pcmp|0; $inp = $inp|0; $N = $N|0; $CC = $CC|0; $upsample = $upsample|0; $coef = $coef|0; $mem = $mem|0; $clip = $clip|0; var $0 = 0, $1 = 0.0, $10 = 0, $11 = 0, $12 = 0, $13 = 0.0, $14 = 0.0, $15 = 0.0, $16 = 0, $17 = 0, $18 = 0.0, $19 = 0.0, $2 = 0, $20 = 0, $21 = 0.0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0.0, $30 = 0, $31 = 0, $32 = 0, $33 = 0.0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0.0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0.0, $49 = 0, $5 = 0.0, $50 = 0, $51 = 0, $52 = 0.0, $53 = 0, $54 = 0, $55 = 0, $56 = 0.0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; var $63 = 0, $64 = 0, $65 = 0.0, $66 = 0.0, $67 = 0.0, $68 = 0, $69 = 0, $7 = 0, $70 = 0.0, $71 = 0.0, $72 = 0, $73 = 0.0, $74 = 0, $8 = 0, $9 = 0, $CC$addr = 0, $N$addr = 0, $Nu = 0, $arrayidx1 = 0, $arrayidx17 = 0; var $arrayidx20 = 0, $arrayidx30 = 0, $arrayidx33 = 0, $arrayidx38 = 0, $arrayidx43 = 0, $arrayidx49 = 0, $arrayidx5 = 0, $arrayidx58 = 0, $arrayidx60 = 0, $arrayidx7 = 0, $clip$addr = 0, $cmp = 0, $cmp14 = 0, $cmp2 = 0, $cmp27 = 0, $cmp31 = 0, $cmp34 = 0, $cmp39 = 0, $cmp4 = 0, $cmp55 = 0; var $cmp9 = 0, $coef$addr = 0, $coef0 = 0.0, $cond = 0.0, $cond47 = 0.0, $div = 0, $i = 0, $inc = 0, $inc22 = 0, $inc51 = 0, $inc63 = 0, $inp$addr = 0, $m = 0.0, $mem$addr = 0, $mul = 0, $mul11 = 0, $mul16 = 0, $mul18 = 0.0, $mul19 = 0, $mul29 = 0; var $mul32 = 0, $mul37 = 0, $mul42 = 0, $mul48 = 0, $mul6 = 0.0, $mul61 = 0.0, $mul8 = 0.0, $or$cond = 0, $or$cond$not = 0, $or$cond1 = 0, $pcmp$addr = 0, $sub = 0.0, $sub59 = 0.0, $tobool = 0, $tobool24 = 0, $upsample$addr = 0, $x = 0.0, $x57 = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $pcmp$addr = $pcmp; $inp$addr = $inp; $N$addr = $N; $CC$addr = $CC; $upsample$addr = $upsample; $coef$addr = $coef; $mem$addr = $mem; $clip$addr = $clip; $0 = $coef$addr; $1 = +HEAPF32[$0>>2]; $coef0 = $1; $2 = $mem$addr; $3 = +HEAPF32[$2>>2]; $m = $3; $4 = $coef$addr; $arrayidx1 = ((($4)) + 4|0); $5 = +HEAPF32[$arrayidx1>>2]; $cmp = $5 == 0.0; $6 = $upsample$addr; $cmp2 = ($6|0)==(1); $or$cond = $cmp & $cmp2; $or$cond$not = $or$cond ^ 1; $7 = $clip$addr; $tobool = ($7|0)!=(0); $or$cond1 = $or$cond$not | $tobool; if (!($or$cond1)) { $i = 0; while(1) { $8 = $i; $9 = $N$addr; $cmp4 = ($8|0)<($9|0); if (!($cmp4)) { break; } $10 = $pcmp$addr; $11 = $CC$addr; $12 = $i; $mul = Math_imul($11, $12)|0; $arrayidx5 = (($10) + ($mul<<2)|0); $13 = +HEAPF32[$arrayidx5>>2]; $mul6 = $13 * 32768.0; $x = $mul6; $14 = $x; $15 = $m; $sub = $14 - $15; $16 = $inp$addr; $17 = $i; $arrayidx7 = (($16) + ($17<<2)|0); HEAPF32[$arrayidx7>>2] = $sub; $18 = $coef0; $19 = $x; $mul8 = $18 * $19; $m = $mul8; $20 = $i; $inc = (($20) + 1)|0; $i = $inc; } $21 = $m; $22 = $mem$addr; HEAPF32[$22>>2] = $21; STACKTOP = sp;return; } $23 = $N$addr; $24 = $upsample$addr; $div = (($23|0) / ($24|0))&-1; $Nu = $div; $25 = $upsample$addr; $cmp9 = ($25|0)!=(1); if ($cmp9) { $26 = $inp$addr; $27 = $N$addr; $mul11 = $27<<2; _memset(($26|0),0,($mul11|0))|0; } $i = 0; while(1) { $28 = $i; $29 = $Nu; $cmp14 = ($28|0)<($29|0); if (!($cmp14)) { break; } $30 = $pcmp$addr; $31 = $CC$addr; $32 = $i; $mul16 = Math_imul($31, $32)|0; $arrayidx17 = (($30) + ($mul16<<2)|0); $33 = +HEAPF32[$arrayidx17>>2]; $mul18 = $33 * 32768.0; $34 = $inp$addr; $35 = $i; $36 = $upsample$addr; $mul19 = Math_imul($35, $36)|0; $arrayidx20 = (($34) + ($mul19<<2)|0); HEAPF32[$arrayidx20>>2] = $mul18; $37 = $i; $inc22 = (($37) + 1)|0; $i = $inc22; } $38 = $clip$addr; $tobool24 = ($38|0)!=(0); L16: do { if ($tobool24) { $i = 0; while(1) { $39 = $i; $40 = $Nu; $cmp27 = ($39|0)<($40|0); if (!($cmp27)) { break L16; } $41 = $inp$addr; $42 = $i; $43 = $upsample$addr; $mul29 = Math_imul($42, $43)|0; $arrayidx30 = (($41) + ($mul29<<2)|0); $44 = +HEAPF32[$arrayidx30>>2]; $cmp31 = 65536.0 < $44; if ($cmp31) { $cond = 65536.0; } else { $45 = $inp$addr; $46 = $i; $47 = $upsample$addr; $mul32 = Math_imul($46, $47)|0; $arrayidx33 = (($45) + ($mul32<<2)|0); $48 = +HEAPF32[$arrayidx33>>2]; $cond = $48; } $cmp34 = -65536.0 > $cond; if ($cmp34) { $cond47 = -65536.0; } else { $49 = $inp$addr; $50 = $i; $51 = $upsample$addr; $mul37 = Math_imul($50, $51)|0; $arrayidx38 = (($49) + ($mul37<<2)|0); $52 = +HEAPF32[$arrayidx38>>2]; $cmp39 = 65536.0 < $52; if ($cmp39) { $cond47 = 65536.0; } else { $53 = $inp$addr; $54 = $i; $55 = $upsample$addr; $mul42 = Math_imul($54, $55)|0; $arrayidx43 = (($53) + ($mul42<<2)|0); $56 = +HEAPF32[$arrayidx43>>2]; $cond47 = $56; } } $57 = $inp$addr; $58 = $i; $59 = $upsample$addr; $mul48 = Math_imul($58, $59)|0; $arrayidx49 = (($57) + ($mul48<<2)|0); HEAPF32[$arrayidx49>>2] = $cond47; $60 = $i; $inc51 = (($60) + 1)|0; $i = $inc51; } } } while(0); $i = 0; while(1) { $61 = $i; $62 = $N$addr; $cmp55 = ($61|0)<($62|0); if (!($cmp55)) { break; } $63 = $inp$addr; $64 = $i; $arrayidx58 = (($63) + ($64<<2)|0); $65 = +HEAPF32[$arrayidx58>>2]; $x57 = $65; $66 = $x57; $67 = $m; $sub59 = $66 - $67; $68 = $inp$addr; $69 = $i; $arrayidx60 = (($68) + ($69<<2)|0); HEAPF32[$arrayidx60>>2] = $sub59; $70 = $coef0; $71 = $x57; $mul61 = $70 * $71; $m = $mul61; $72 = $i; $inc63 = (($72) + 1)|0; $i = $inc63; } $73 = $m; $74 = $mem$addr; HEAPF32[$74>>2] = $73; STACKTOP = sp;return; } function _celt_encode_with_ec($st,$pcm,$frame_size,$compressed,$nbCompressedBytes,$enc) { $st = $st|0; $pcm = $pcm|0; $frame_size = $frame_size|0; $compressed = $compressed|0; $nbCompressedBytes = $nbCompressedBytes|0; $enc = $enc|0; var $$old = 0, $$old3 = 0, $$sink = 0, $$sink21 = 0, $$sink24 = 0, $$sink25 = 0, $$sink30 = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $1000 = 0, $1001 = 0, $1002 = 0, $1003 = 0, $1004 = 0, $1005 = 0, $1006 = 0, $1007 = 0, $1008 = 0; var $1009 = 0, $101 = 0, $1010 = 0, $1011 = 0, $1012 = 0, $1013 = 0, $1014 = 0, $1015 = 0, $1016 = 0, $1017 = 0, $1018 = 0, $1019 = 0, $102 = 0, $1020 = 0, $1021 = 0, $1022 = 0, $1023 = 0, $1024 = 0, $1025 = 0, $1026 = 0; var $1027 = 0, $1028 = 0, $1029 = 0, $103 = 0, $1030 = 0, $1031 = 0, $1032 = 0, $1033 = 0, $1034 = 0, $1035 = 0, $1036 = 0, $1037 = 0, $1038 = 0, $1039 = 0, $104 = 0, $1040 = 0, $1041 = 0, $1042 = 0, $1043 = 0, $1044 = 0; var $1045 = 0, $1046 = 0, $1047 = 0, $1048 = 0, $1049 = 0, $105 = 0, $1050 = 0, $1051 = 0, $1052 = 0, $1053 = 0, $1054 = 0, $1055 = 0, $1056 = 0, $1057 = 0, $1058 = 0, $1059 = 0, $106 = 0, $1060 = 0, $1061 = 0, $1062 = 0; var $1063 = 0, $1064 = 0, $1065 = 0, $1066 = 0, $1067 = 0, $1068 = 0, $1069 = 0, $107 = 0, $1070 = 0, $1071 = 0, $1072 = 0, $1073 = 0, $1074 = 0, $1075 = 0, $1076 = 0, $1077 = 0, $1078 = 0, $1079 = 0, $108 = 0, $1080 = 0; var $1081 = 0, $1082 = 0, $1083 = 0, $1084 = 0, $1085 = 0, $1086 = 0, $1087 = 0, $1088 = 0, $1089 = 0, $109 = 0, $1090 = 0, $1091 = 0, $1092 = 0, $1093 = 0, $1094 = 0, $1095 = 0, $1096 = 0, $1097 = 0, $1098 = 0, $1099 = 0; var $11 = 0, $110 = 0, $1100 = 0, $1101 = 0, $1102 = 0, $1103 = 0, $1104 = 0, $1105 = 0, $1106 = 0, $1107 = 0, $1108 = 0, $1109 = 0, $111 = 0, $1110 = 0, $1111 = 0, $1112 = 0, $1113 = 0, $1114 = 0, $1115 = 0, $1116 = 0; var $1117 = 0, $1118 = 0, $1119 = 0, $112 = 0, $1120 = 0, $1121 = 0.0, $1122 = 0, $1123 = 0, $1124 = 0, $1125 = 0.0, $1126 = 0, $1127 = 0, $1128 = 0, $1129 = 0.0, $113 = 0, $1130 = 0, $1131 = 0, $1132 = 0, $1133 = 0.0, $1134 = 0; var $1135 = 0, $1136 = 0, $1137 = 0, $1138 = 0, $1139 = 0, $114 = 0, $1140 = 0, $1141 = 0, $1142 = 0, $1143 = 0, $1144 = 0, $1145 = 0, $1146 = 0, $1147 = 0, $1148 = 0, $1149 = 0, $115 = 0, $1150 = 0.0, $1151 = 0, $1152 = 0; var $1153 = 0, $1154 = 0, $1155 = 0, $1156 = 0, $1157 = 0, $1158 = 0, $1159 = 0, $116 = 0, $1160 = 0, $1161 = 0, $1162 = 0, $1163 = 0, $1164 = 0, $1165 = 0, $1166 = 0, $1167 = 0, $1168 = 0, $1169 = 0, $117 = 0, $1170 = 0; var $1171 = 0, $1172 = 0, $1173 = 0, $1174 = 0, $1175 = 0, $1176 = 0, $1177 = 0, $1178 = 0, $1179 = 0, $118 = 0, $1180 = 0, $1181 = 0.0, $1182 = 0, $1183 = 0, $1184 = 0.0, $1185 = 0, $1186 = 0, $1187 = 0, $1188 = 0, $1189 = 0.0; var $119 = 0, $1190 = 0, $1191 = 0, $1192 = 0, $1193 = 0, $1194 = 0, $1195 = 0, $1196 = 0, $1197 = 0, $1198 = 0, $1199 = 0, $12 = 0, $120 = 0, $1200 = 0, $1201 = 0, $1202 = 0, $1203 = 0, $1204 = 0, $1205 = 0, $1206 = 0; var $1207 = 0, $1208 = 0, $1209 = 0, $121 = 0, $1210 = 0, $1211 = 0, $1212 = 0, $1213 = 0, $1214 = 0, $1215 = 0, $1216 = 0, $1217 = 0, $1218 = 0, $1219 = 0, $122 = 0, $1220 = 0, $1221 = 0, $1222 = 0, $1223 = 0, $1224 = 0; var $1225 = 0, $1226 = 0, $1227 = 0, $1228 = 0, $1229 = 0, $123 = 0, $1230 = 0, $1231 = 0, $1232 = 0, $1233 = 0, $1234 = 0, $1235 = 0, $1236 = 0, $1237 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0; var $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0; var $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0; var $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0.0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0; var $184 = 0, $185 = 0, $186 = 0.0, $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0; var $201 = 0, $202 = 0, $203 = 0, $204 = 0.0, $205 = 0, $206 = 0.0, $207 = 0.0, $208 = 0, $209 = 0.0, $21 = 0, $210 = 0.0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0; var $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0.0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0; var $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0; var $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0.0, $273 = 0; var $274 = 0.0, $275 = 0, $276 = 0, $277 = 0, $278 = 0.0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0; var $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0; var $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0, $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0; var $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0, $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0; var $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0, $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0.0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0; var $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0, $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0; var $382 = 0, $383 = 0.0, $384 = 0.0, $385 = 0, $386 = 0.0, $387 = 0.0, $388 = 0, $389 = 0, $39 = 0, $390 = 0.0, $391 = 0, $392 = 0.0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0; var $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0, $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0; var $418 = 0, $419 = 0, $42 = 0, $420 = 0.0, $421 = 0, $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0.0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0.0, $433 = 0, $434 = 0, $435 = 0; var $436 = 0, $437 = 0, $438 = 0.0, $439 = 0.0, $44 = 0, $440 = 0.0, $441 = 0.0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0.0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0; var $454 = 0, $455 = 0, $456 = 0.0, $457 = 0, $458 = 0, $459 = 0.0, $46 = 0, $460 = 0, $461 = 0, $462 = 0.0, $463 = 0, $464 = 0.0, $465 = 0.0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0.0, $471 = 0.0; var $472 = 0.0, $473 = 0.0, $474 = 0.0, $475 = 0, $476 = 0, $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0.0, $485 = 0.0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0; var $490 = 0, $491 = 0, $492 = 0.0, $493 = 0, $494 = 0, $495 = 0, $496 = 0, $497 = 0.0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0.0, $504 = 0.0, $505 = 0.0, $506 = 0.0, $507 = 0.0; var $508 = 0.0, $509 = 0.0, $51 = 0, $510 = 0, $511 = 0, $512 = 0, $513 = 0, $514 = 0.0, $515 = 0.0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0.0, $521 = 0, $522 = 0.0, $523 = 0, $524 = 0, $525 = 0.0; var $526 = 0.0, $527 = 0.0, $528 = 0, $529 = 0, $53 = 0, $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0.0, $536 = 0, $537 = 0.0, $538 = 0.0, $539 = 0.0, $54 = 0, $540 = 0, $541 = 0.0, $542 = 0.0, $543 = 0; var $544 = 0.0, $545 = 0, $546 = 0, $547 = 0.0, $548 = 0.0, $549 = 0.0, $55 = 0, $550 = 0, $551 = 0, $552 = 0.0, $553 = 0.0, $554 = 0.0, $555 = 0.0, $556 = 0, $557 = 0, $558 = 0, $559 = 0.0, $56 = 0, $560 = 0.0, $561 = 0; var $562 = 0.0, $563 = 0.0, $564 = 0.0, $565 = 0.0, $566 = 0.0, $567 = 0.0, $568 = 0, $569 = 0.0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0; var $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0, $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0; var $599 = 0, $6 = 0, $60 = 0, $600 = 0, $601 = 0, $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0.0, $613 = 0, $614 = 0, $615 = 0; var $616 = 0, $617 = 0, $618 = 0, $619 = 0, $62 = 0, $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0; var $634 = 0, $635 = 0, $636 = 0, $637 = 0, $638 = 0, $639 = 0, $64 = 0, $640 = 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0; var $652 = 0, $653 = 0, $654 = 0, $655 = 0, $656 = 0, $657 = 0, $658 = 0, $659 = 0, $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0.0, $666 = 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0; var $670 = 0, $671 = 0, $672 = 0, $673 = 0, $674 = 0, $675 = 0, $676 = 0, $677 = 0, $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0, $684 = 0, $685 = 0, $686 = 0, $687 = 0, $688 = 0; var $689 = 0, $69 = 0, $690 = 0, $691 = 0, $692 = 0, $693 = 0, $694 = 0, $695 = 0, $696 = 0, $697 = 0, $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 0, $701 = 0, $702 = 0.0, $703 = 0, $704 = 0, $705 = 0; var $706 = 0, $707 = 0.0, $708 = 0, $709 = 0, $71 = 0, $710 = 0, $711 = 0, $712 = 0.0, $713 = 0, $714 = 0, $715 = 0, $716 = 0.0, $717 = 0, $718 = 0, $719 = 0, $72 = 0, $720 = 0, $721 = 0, $722 = 0, $723 = 0; var $724 = 0, $725 = 0, $726 = 0, $727 = 0, $728 = 0, $729 = 0, $73 = 0, $730 = 0, $731 = 0, $732 = 0, $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0, $738 = 0, $739 = 0, $74 = 0, $740 = 0, $741 = 0; var $742 = 0, $743 = 0, $744 = 0, $745 = 0, $746 = 0, $747 = 0, $748 = 0, $749 = 0, $75 = 0, $750 = 0, $751 = 0, $752 = 0, $753 = 0, $754 = 0, $755 = 0, $756 = 0, $757 = 0, $758 = 0, $759 = 0, $76 = 0; var $760 = 0, $761 = 0, $762 = 0, $763 = 0, $764 = 0, $765 = 0, $766 = 0, $767 = 0, $768 = 0, $769 = 0, $77 = 0, $770 = 0, $771 = 0, $772 = 0, $773 = 0, $774 = 0, $775 = 0, $776 = 0, $777 = 0, $778 = 0; var $779 = 0, $78 = 0, $780 = 0, $781 = 0, $782 = 0, $783 = 0, $784 = 0, $785 = 0, $786 = 0, $787 = 0, $788 = 0, $789 = 0, $79 = 0, $790 = 0, $791 = 0, $792 = 0, $793 = 0, $794 = 0, $795 = 0, $796 = 0; var $797 = 0, $798 = 0, $799 = 0, $8 = 0, $80 = 0, $800 = 0, $801 = 0, $802 = 0, $803 = 0, $804 = 0, $805 = 0, $806 = 0, $807 = 0, $808 = 0, $809 = 0, $81 = 0, $810 = 0, $811 = 0, $812 = 0, $813 = 0; var $814 = 0, $815 = 0, $816 = 0, $817 = 0, $818 = 0, $819 = 0, $82 = 0, $820 = 0, $821 = 0, $822 = 0, $823 = 0, $824 = 0, $825 = 0, $826 = 0, $827 = 0, $828 = 0, $829 = 0, $83 = 0, $830 = 0, $831 = 0; var $832 = 0, $833 = 0, $834 = 0, $835 = 0, $836 = 0, $837 = 0, $838 = 0, $839 = 0, $84 = 0, $840 = 0, $841 = 0, $842 = 0, $843 = 0, $844 = 0, $845 = 0, $846 = 0, $847 = 0, $848 = 0, $849 = 0, $85 = 0; var $850 = 0, $851 = 0, $852 = 0, $853 = 0, $854 = 0, $855 = 0, $856 = 0, $857 = 0, $858 = 0, $859 = 0, $86 = 0, $860 = 0, $861 = 0, $862 = 0, $863 = 0, $864 = 0, $865 = 0, $866 = 0, $867 = 0, $868 = 0; var $869 = 0, $87 = 0, $870 = 0, $871 = 0.0, $872 = 0, $873 = 0, $874 = 0.0, $875 = 0, $876 = 0, $877 = 0, $878 = 0, $879 = 0, $88 = 0, $880 = 0, $881 = 0, $882 = 0, $883 = 0, $884 = 0, $885 = 0, $886 = 0; var $887 = 0, $888 = 0, $889 = 0, $89 = 0, $890 = 0, $891 = 0, $892 = 0, $893 = 0, $894 = 0, $895 = 0, $896 = 0, $897 = 0, $898 = 0, $899 = 0, $9 = 0, $90 = 0, $900 = 0, $901 = 0, $902 = 0, $903 = 0; var $904 = 0, $905 = 0, $906 = 0, $907 = 0, $908 = 0, $909 = 0, $91 = 0, $910 = 0, $911 = 0, $912 = 0, $913 = 0, $914 = 0.0, $915 = 0, $916 = 0.0, $917 = 0, $918 = 0.0, $919 = 0, $92 = 0, $920 = 0, $921 = 0; var $922 = 0, $923 = 0.0, $924 = 0.0, $925 = 0, $926 = 0, $927 = 0, $928 = 0, $929 = 0, $93 = 0, $930 = 0, $931 = 0, $932 = 0, $933 = 0, $934 = 0.0, $935 = 0, $936 = 0.0, $937 = 0, $938 = 0, $939 = 0, $94 = 0; var $940 = 0, $941 = 0, $942 = 0, $943 = 0, $944 = 0, $945 = 0, $946 = 0, $947 = 0, $948 = 0, $949 = 0, $95 = 0, $950 = 0, $951 = 0, $952 = 0, $953 = 0, $954 = 0, $955 = 0, $956 = 0, $957 = 0, $958 = 0; var $959 = 0, $96 = 0, $960 = 0, $961 = 0, $962 = 0, $963 = 0, $964 = 0, $965 = 0, $966 = 0, $967 = 0, $968 = 0, $969 = 0, $97 = 0, $970 = 0, $971 = 0, $972 = 0, $973 = 0, $974 = 0, $975 = 0, $976 = 0; var $977 = 0.0, $978 = 0, $979 = 0, $98 = 0, $980 = 0, $981 = 0, $982 = 0, $983 = 0, $984 = 0, $985 = 0, $986 = 0, $987 = 0, $988 = 0, $989 = 0, $99 = 0, $990 = 0, $991 = 0, $992 = 0, $993 = 0, $994 = 0; var $995 = 0, $996 = 0, $997 = 0, $998 = 0, $999 = 0, $C = 0, $CC = 0, $LM = 0, $M = 0, $N = 0, $_enc = 0, $add = 0, $add$ptr = 0, $add$ptr1476 = 0, $add$ptr259 = 0, $add$ptr29 = 0, $add$ptr306 = 0, $add$ptr309 = 0, $add$ptr31 = 0, $add$ptr310 = 0; var $add$ptr314 = 0, $add$ptr33 = 0, $add$ptr35 = 0, $add1050 = 0, $add1080 = 0, $add1098 = 0, $add1099 = 0, $add1154 = 0, $add116 = 0, $add1192 = 0, $add1197 = 0, $add1205 = 0, $add1215 = 0, $add1237 = 0, $add1251 = 0, $add1263 = 0, $add1264 = 0, $add1265 = 0, $add1268 = 0, $add1271 = 0; var $add1272 = 0, $add1273 = 0, $add1280 = 0, $add1281 = 0, $add1282 = 0, $add1288 = 0, $add1313 = 0, $add1323 = 0, $add1337 = 0, $add1357 = 0, $add1380 = 0, $add139 = 0, $add1438 = 0, $add1453 = 0, $add150 = 0, $add1503 = 0, $add1510 = 0, $add1519 = 0, $add1526 = 0, $add1533 = 0; var $add1572 = 0, $add1583 = 0, $add1591 = 0, $add161 = 0, $add1619 = 0, $add1622 = 0, $add1625 = 0, $add1635 = 0, $add1638 = 0, $add1641 = 0, $add181 = 0, $add191 = 0, $add203 = 0, $add214 = 0, $add226 = 0, $add236 = 0, $add288 = 0, $add293 = 0, $add301 = 0, $add307 = 0; var $add371 = 0, $add377 = 0, $add382 = 0, $add40 = 0, $add401 = 0, $add408 = 0, $add443 = 0.0, $add51 = 0, $add518 = 0, $add525 = 0, $add535 = 0, $add542 = 0, $add555 = 0, $add563 = 0.0, $add564 = 0, $add570 = 0, $add572 = 0, $add576 = 0.0, $add585 = 0.0, $add589 = 0; var $add59 = 0, $add614 = 0, $add633 = 0.0, $add640 = 0, $add649 = 0, $add649$sink = 0, $add67 = 0, $add677 = 0.0, $add703 = 0.0, $add735 = 0, $add742 = 0, $add748 = 0.0, $add776 = 0.0, $add783 = 0, $add789 = 0, $add80 = 0, $add818 = 0.0, $add828 = 0, $add864 = 0, $add870 = 0; var $add936 = 0, $add939 = 0, $add949 = 0, $add953 = 0, $add970 = 0, $add99 = 0, $adjust = 0, $alloc_trim = 0, $allow_weak_transients = 0, $alpha = 0.0, $analysis = 0, $analysis1166 = 0, $analysis1219 = 0, $analysis1389 = 0, $analysis1417 = 0, $analysis1421 = 0, $analysis344 = 0, $analysis347 = 0, $analysis858 = 0, $anti_collapse_on = 0; var $anti_collapse_rsv = 0, $arch = 0, $arch1169 = 0, $arch1485 = 0, $arch435 = 0, $arch449 = 0, $arch457 = 0, $arch808 = 0, $arch809 = 0, $arrayidx = 0, $arrayidx1051 = 0, $arrayidx1053 = 0, $arrayidx1085 = 0, $arrayidx1091 = 0, $arrayidx1114 = 0, $arrayidx1504 = 0, $arrayidx1511 = 0, $arrayidx1520 = 0, $arrayidx1527 = 0, $arrayidx1534 = 0; var $arrayidx1550 = 0, $arrayidx1564 = 0, $arrayidx1566 = 0, $arrayidx1598 = 0, $arrayidx1599 = 0, $arrayidx1603 = 0, $arrayidx1605 = 0, $arrayidx1605$sink = 0, $arrayidx1608 = 0, $arrayidx1620 = 0, $arrayidx1623 = 0, $arrayidx1626 = 0, $arrayidx1636 = 0, $arrayidx1639 = 0, $arrayidx1642 = 0, $arrayidx465 = 0, $arrayidx471 = 0, $arrayidx477 = 0, $arrayidx478 = 0, $arrayidx482 = 0; var $arrayidx486 = 0, $arrayidx519 = 0, $arrayidx526 = 0, $arrayidx536 = 0, $arrayidx543 = 0, $arrayidx556 = 0, $arrayidx558 = 0, $arrayidx565 = 0, $arrayidx567 = 0, $arrayidx615 = 0, $arrayidx617 = 0, $arrayidx638 = 0, $arrayidx641 = 0, $arrayidx650 = 0, $arrayidx668 = 0, $arrayidx687 = 0, $arrayidx693 = 0, $arrayidx697 = 0, $arrayidx721 = 0, $arrayidx728 = 0; var $arrayidx736 = 0, $arrayidx743 = 0, $arrayidx817 = 0, $arrayidx879 = 0, $arrayidx880 = 0, $arrayidx893 = 0, $arrayidx912 = 0, $arrayidx921 = 0, $arrayidx937 = 0, $arrayidx940 = 0, $arrayidx950 = 0, $arrayidx954 = 0, $balance = 0, $bandwidth = 0, $bandwidth1422 = 0, $base_target = 0, $bitrate = 0, $bitrate144 = 0, $bitrate148 = 0, $bitrate159 = 0; var $bitrate48 = 0, $bitrate54 = 0, $bitrate61 = 0, $bits = 0, $boost = 0, $c = 0, $call = 0, $call1023 = 0, $call1045 = 0, $call1094 = 0, $call1124 = 0, $call1128 = 0, $call1170 = 0, $call1172 = 0, $call1228 = 0, $call1372 = 0, $call1433 = 0, $call1493 = 0, $call1662 = 0, $call242 = 0.0; var $call252 = 0.0, $call263 = 0.0, $call299 = 0, $call337 = 0, $call39 = 0, $call402 = 0, $call407 = 0, $call788 = 0, $call804 = 0, $call827 = 0, $call859 = 0.0, $call873 = 0, $call943 = 0.0, $call969 = 0, $channels = 0, $cleanup$dest$slot = 0, $clip = 0, $cmp = 0, $cmp1002 = 0, $cmp1006 = 0; var $cmp1034 = 0, $cmp1047 = 0, $cmp1059 = 0, $cmp1065 = 0, $cmp1070 = 0, $cmp1082 = 0, $cmp1086 = 0, $cmp1092 = 0, $cmp11 = 0, $cmp110 = 0, $cmp1106 = 0, $cmp1118 = 0, $cmp1121 = 0, $cmp1131 = 0, $cmp1138 = 0, $cmp1143 = 0, $cmp1156 = 0, $cmp1159 = 0, $cmp1174 = 0, $cmp1181 = 0; var $cmp1200 = 0, $cmp1226 = 0, $cmp1232 = 0, $cmp1241 = 0, $cmp1252 = 0, $cmp1255 = 0, $cmp1276 = 0, $cmp1290 = 0, $cmp1296 = 0, $cmp13 = 0, $cmp1307 = 0, $cmp1346 = 0, $cmp1360 = 0, $cmp1377 = 0, $cmp1382 = 0, $cmp1394 = 0, $cmp1399 = 0, $cmp1404 = 0, $cmp1409 = 0, $cmp1418 = 0; var $cmp1441 = 0, $cmp1449 = 0, $cmp145 = 0, $cmp1457 = 0, $cmp1473 = 0, $cmp1486 = 0, $cmp1489 = 0, $cmp1499 = 0, $cmp1505 = 0, $cmp1514 = 0, $cmp1521 = 0, $cmp1540 = 0, $cmp1547 = 0, $cmp155 = 0, $cmp1558 = 0, $cmp1561 = 0, $cmp1595 = 0, $cmp1600 = 0, $cmp1615 = 0, $cmp1631 = 0; var $cmp1648 = 0, $cmp169 = 0, $cmp173 = 0, $cmp178 = 0, $cmp18 = 0, $cmp184 = 0, $cmp187 = 0, $cmp197 = 0, $cmp200 = 0, $cmp207 = 0, $cmp210 = 0, $cmp223 = 0, $cmp231 = 0, $cmp243 = 0, $cmp266 = 0, $cmp276 = 0, $cmp278 = 0, $cmp285 = 0, $cmp289 = 0, $cmp304 = 0; var $cmp316 = 0, $cmp320 = 0, $cmp324 = 0, $cmp333 = 0, $cmp338 = 0, $cmp341 = 0, $cmp349 = 0, $cmp355 = 0, $cmp36 = 0, $cmp362 = 0, $cmp366 = 0, $cmp372 = 0, $cmp386 = 0, $cmp394 = 0, $cmp397 = 0, $cmp404 = 0, $cmp409 = 0, $cmp42 = 0, $cmp426 = 0, $cmp438 = 0; var $cmp44 = 0, $cmp450 = 0, $cmp453 = 0, $cmp462 = 0, $cmp468 = 0, $cmp479 = 0, $cmp501 = 0, $cmp509 = 0, $cmp513 = 0, $cmp520 = 0, $cmp530 = 0, $cmp537 = 0, $cmp550 = 0, $cmp56 = 0, $cmp595 = 0, $cmp601 = 0, $cmp604 = 0, $cmp62 = 0, $cmp620 = 0, $cmp627 = 0; var $cmp634 = 0, $cmp642 = 0, $cmp657 = 0, $cmp664 = 0, $cmp674 = 0, $cmp678 = 0, $cmp684 = 0, $cmp689 = 0, $cmp7 = 0, $cmp717 = 0, $cmp723 = 0, $cmp732 = 0, $cmp738 = 0, $cmp74 = 0, $cmp756 = 0, $cmp762 = 0, $cmp766 = 0, $cmp785 = 0, $cmp790 = 0, $cmp796 = 0; var $cmp812 = 0, $cmp824 = 0, $cmp829 = 0, $cmp836 = 0, $cmp842 = 0, $cmp865 = 0, $cmp875 = 0, $cmp890 = 0, $cmp9 = 0, $cmp900 = 0, $cmp905 = 0, $cmp909 = 0, $cmp918 = 0, $cmp93 = 0, $cmp932 = 0, $cmp945 = 0, $cmp962 = 0, $cmp966 = 0, $cmp971 = 0, $cmp982 = 0; var $cmp998 = 0, $codedBands = 0, $complexity = 0, $complexity1005 = 0, $complexity1484 = 0, $complexity385 = 0, $complexity425 = 0, $complexity795 = 0, $complexity841 = 0, $complexity965 = 0, $complexity981 = 0, $complexity997 = 0, $compressed$addr = 0, $cond = 0, $cond1040 = 0, $cond1064 = 0, $cond1075 = 0, $cond1077 = 0, $cond1112 = 0, $cond1137 = 0; var $cond1151 = 0, $cond1188 = 0, $cond1209 = 0, $cond1260 = 0, $cond1286 = 0, $cond1295 = 0, $cond130 = 0, $cond1301 = 0, $cond1356 = 0, $cond1365 = 0, $cond1386 = 0, $cond1425 = 0, $cond1448 = 0, $cond1466 = 0, $cond1479 = 0, $cond1513 = 0.0, $cond1531 = 0.0, $cond167 = 0, $cond180 = 0, $cond189 = 0; var $cond196 = 0, $cond202 = 0, $cond212 = 0, $cond222 = 0, $cond254 = 0.0, $cond272 = 0.0, $cond295 = 0, $cond476 = 0.0, $cond485 = 0.0, $cond507 = 0, $cond529 = 0.0, $cond549 = 0.0, $cond600 = 0.0, $cond609 = 0.0, $cond612 = 0.0, $cond662 = 0.0, $cond696 = 0.0, $cond715 = 0.0, $cond731 = 0.0, $cond746 = 0.0; var $cond761 = 0.0, $cond771 = 0.0, $cond773 = 0.0, $cond872 = 0, $cond92 = 0, $consec_transient = 0, $consec_transient1655 = 0, $constrained_vbr = 0, $constrained_vbr1211 = 0, $constrained_vbr1222 = 0, $constrained_vbr1318 = 0, $constrained_vbr1325 = 0, $constrained_vbr1342 = 0, $constrained_vbr856 = 0, $conv = 0, $conv1052 = 0, $conv1054 = 0, $conv1093 = 0, $conv1127 = 0.0, $conv1227 = 0; var $conv1250 = 0, $conv1314 = 0.0, $conv1333 = 0.0, $conv1335 = 0, $conv1490 = 0, $conv274 = 0.0, $conv277 = 0, $conv348 = 0.0, $conv352 = 0.0, $conv353 = 0.0, $conv358 = 0.0, $conv360 = 0.0, $conv441 = 0.0, $conv557 = 0, $conv559 = 0, $conv561 = 0.0, $conv566 = 0, $conv568 = 0, $conv574 = 0.0, $conv583 = 0.0; var $conv592 = 0.0, $conv616 = 0, $conv618 = 0, $conv631 = 0.0, $conv711 = 0.0, $conv753 = 0.0, $conv815 = 0.0, $conv942 = 0.0, $conv944 = 0.0, $conv967 = 0, $count = 0, $count_dynalloc = 0, $delayedIntra = 0, $delta = 0, $den = 0, $diff = 0.0, $disable_inv = 0, $disable_pf = 0, $div = 0, $div102 = 0; var $div1033 = 0, $div1038 = 0, $div1126 = 0, $div119 = 0, $div1315 = 0.0, $div1351 = 0, $div241 = 0, $div251 = 0, $div258 = 0, $div262 = 0, $div275 = 0.0, $div584 = 0.0, $div593 = 0.0, $div619 = 0, $div70 = 0, $div754 = 0.0, $div83 = 0, $div863 = 0, $div869 = 0, $dual_stereo = 0; var $dynalloc_logp = 0, $dynalloc_loop_logp = 0, $eBands = 0, $eBands4 = 0, $effEBands = 0, $effEBands234 = 0, $effEnd = 0, $effectiveBytes = 0, $enable_tf_analysis = 0, $enabled = 0, $enc$addr = 0, $end = 0, $end6 = 0, $energyError = 0, $energy_mask = 0, $energy_mask1225 = 0, $energy_mask516 = 0, $energy_mask523 = 0, $energy_mask533 = 0, $energy_mask540 = 0; var $energy_mask637 = 0, $energy_mask639 = 0, $energy_mask645 = 0, $equiv_rate = 0, $flag = 0, $follow = 0.0, $force_intra = 0, $frame_avg = 0.0, $frame_size$addr = 0, $gain1 = 0, $hf_average = 0, $hybrid = 0, $i = 0, $in_mem = 0, $in_mem26 = 0, $inc = 0, $inc1101 = 0, $inc1116 = 0, $inc1311 = 0, $inc1536 = 0; var $inc1539 = 0, $inc1552 = 0, $inc1610 = 0, $inc1628 = 0, $inc1644 = 0, $inc1647 = 0, $inc1656 = 0, $inc315 = 0, $inc445 = 0, $inc488 = 0, $inc578 = 0, $inc581 = 0, $inc624 = 0, $inc669 = 0, $inc672 = 0, $inc699 = 0, $inc750 = 0, $inc820 = 0, $inc882 = 0, $inc895 = 0; var $inc914 = 0, $inc923 = 0, $inc958 = 0, $inc961 = 0, $intensity = 0, $intensity1129 = 0, $intensity1130 = 0, $intensity1135 = 0, $intensity1142 = 0, $intensity1147 = 0, $intensity1152 = 0, $intensity1168 = 0, $intensity1221 = 0, $intensity1431 = 0, $intensity1481 = 0, $isTransient = 0, $j = 0, $lambda = 0, $land$ext = 0, $land$ext1022 = 0; var $land$ext336 = 0, $land$ext400 = 0, $land$ext429 = 0, $land$ext850 = 0, $lastCodedBands = 0, $lastCodedBands1220 = 0, $lastCodedBands1432 = 0, $lastCodedBands1434 = 0, $lastCodedBands1437 = 0, $lastCodedBands1439 = 0, $lastCodedBands1444 = 0, $lastCodedBands1452 = 0, $lastCodedBands1460 = 0, $lastCodedBands1469 = 0, $lastCodedBands505 = 0, $lfe = 0, $lfe1030 = 0, $lfe1162 = 0, $lfe1224 = 0, $lfe1427 = 0; var $lfe389 = 0, $lfe458 = 0, $lfe498 = 0, $lfe706 = 0, $lfe799 = 0, $lfe845 = 0, $lfe857 = 0, $lfe968 = 0, $lfe974 = 0, $lin = 0.0, $lm_diff = 0, $lnot = 0, $lnot$ext = 0, $lnot$ext108 = 0, $lnot$ext125 = 0, $lnot$ext89 = 0, $lnot1019 = 0, $lnot105 = 0, $lnot107 = 0, $lnot122 = 0; var $lnot124 = 0, $lnot72 = 0, $lnot847 = 0, $lnot86 = 0, $lnot88 = 0, $logN = 0, $loss_rate = 0, $lsb_depth = 0, $lsb_depth854 = 0, $mask = 0.0, $mask_avg = 0.0, $mask_end = 0, $maxDepth = 0.0, $maxLM = 0, $maxLM1177 = 0, $maxLM17 = 0, $max_allowed = 0, $midband = 0, $min_allowed = 0, $min_bandwidth = 0; var $mode = 0, $mul = 0, $mul1001 = 0, $mul101 = 0, $mul1056 = 0, $mul115 = 0, $mul118 = 0, $mul1191 = 0, $mul1196 = 0, $mul1204 = 0, $mul1249 = 0.0, $mul1329 = 0, $mul1334 = 0.0, $mul134 = 0, $mul135 = 0, $mul1370 = 0, $mul138 = 0, $mul1393 = 0, $mul1398 = 0, $mul1403 = 0; var $mul1408 = 0, $mul142 = 0, $mul1471 = 0, $mul1482 = 0, $mul149 = 0, $mul1492 = 0, $mul1495 = 0, $mul1496 = 0, $mul1502 = 0, $mul1509 = 0, $mul1518 = 0, $mul1525 = 0, $mul153 = 0, $mul1532 = 0, $mul1546 = 0, $mul1565 = 0, $mul1571 = 0, $mul1576 = 0, $mul1577 = 0, $mul1582 = 0; var $mul1584 = 0, $mul1585 = 0, $mul1590 = 0, $mul1594 = 0, $mul160 = 0, $mul1618 = 0, $mul1621 = 0, $mul1624 = 0, $mul1634 = 0, $mul1637 = 0, $mul164 = 0, $mul1640 = 0, $mul230 = 0, $mul237 = 0, $mul239 = 0, $mul24 = 0, $mul249 = 0, $mul25 = 0, $mul256 = 0, $mul260 = 0; var $mul28 = 0, $mul296 = 0, $mul298 = 0, $mul30 = 0, $mul308 = 0, $mul32 = 0, $mul323 = 0, $mul34 = 0, $mul354 = 0.0, $mul361 = 0.0, $mul417 = 0, $mul419 = 0, $mul421 = 0, $mul430 = 0, $mul437 = 0, $mul442 = 0.0, $mul467 = 0.0, $mul474 = 0.0, $mul49 = 0, $mul491 = 0; var $mul493 = 0, $mul517 = 0, $mul524 = 0, $mul534 = 0, $mul541 = 0, $mul55 = 0, $mul553 = 0.0, $mul562 = 0.0, $mul571 = 0, $mul575 = 0.0, $mul586 = 0.0, $mul588 = 0, $mul590 = 0, $mul591 = 0, $mul594 = 0.0, $mul632 = 0.0, $mul66 = 0, $mul681 = 0, $mul69 = 0, $mul704 = 0.0; var $mul712 = 0.0, $mul774 = 0.0, $mul780 = 0, $mul781 = 0, $mul782 = 0, $mul79 = 0, $mul811 = 0, $mul816 = 0.0, $mul82 = 0, $mul833 = 0, $mul835 = 0, $mul928 = 0, $mul935 = 0, $mul938 = 0, $mul948 = 0, $mul951 = 0.0, $mul952 = 0, $mul98 = 0, $nbAvailableBytes = 0, $nbCompressedBytes$addr = 0; var $nbEBands = 0, $nbEBands2 = 0, $nbFilledBytes = 0, $nbits_total = 0, $need_clip = 0, $octave = 0, $offset = 0.0, $offset1231 = 0, $offset1240 = 0, $oldBandE = 0, $oldLogE = 0, $oldLogE2 = 0, $or$cond = 0, $or$cond1 = 0, $or$cond10 = 0, $or$cond12 = 0, $or$cond14 = 0, $or$cond16 = 0, $or$cond18 = 0, $or$cond2 = 0; var $or$cond20 = 0, $or$cond23 = 0, $or$cond27 = 0, $or$cond29 = 0, $or$cond4 = 0, $or$cond6 = 0, $or$cond8 = 0, $overlap = 0, $overlap3 = 0, $overlap_max = 0, $overlap_max246 = 0, $overlap_max264 = 0, $overlap_max265 = 0, $overlap_max270 = 0, $pcm$addr = 0, $pf_on = 0, $pitch_change = 0, $pitch_index = 0, $preemph = 0, $preemph_memE = 0; var $prefilter_gain = 0, $prefilter_gain1556 = 0, $prefilter_mem = 0, $prefilter_period = 0, $prefilter_period1555 = 0, $prefilter_period359 = 0, $prefilter_tapset = 0, $prefilter_tapset1557 = 0, $qg = 0, $quanta = 0, $retval = 0, $rng = 0, $rng1660 = 0, $rng1661 = 0, $sample_max = 0.0, $saved_stack = 0, $secondMdct = 0, $shl = 0, $shl1044 = 0, $shl1057 = 0; var $shl1058 = 0, $shl1068 = 0, $shl1079 = 0, $shl1193 = 0, $shl1198 = 0, $shl1206 = 0, $shl1303 = 0, $shl1328 = 0, $shl1371 = 0, $shl1381 = 0, $shl22 = 0, $shl273 = 0, $shl380 = 0, $shortBlocks = 0, $shortMdctSize = 0, $shortMdctSize23 = 0, $shr = 0, $shr1180 = 0, $shr1186 = 0, $shr1214 = 0; var $shr1236 = 0, $shr1245 = 0, $shr1267 = 0, $shr1275 = 0, $shr1284 = 0, $shr1289 = 0, $shr137 = 0, $shr140 = 0, $shr151 = 0, $shr162 = 0, $shr183 = 0, $shr194 = 0, $shr206 = 0, $shr217 = 0, $shr47 = 0, $shr50 = 0, $shr52 = 0, $signalBandwidth = 0, $signalling = 0, $signalling103 = 0; var $signalling120 = 0, $signalling84 = 0, $silence = 0, $silk_info = 0, $silk_info1230 = 0, $silk_info1239 = 0, $silk_info903 = 0, $spec_avg = 0, $spec_avg775 = 0, $spread_decision = 0, $spread_decision1009 = 0, $spread_decision1014 = 0, $spread_decision1024 = 0, $spread_decision1028 = 0, $spread_decision1480 = 0, $spread_decision985 = 0, $spread_decision989 = 0, $st$addr = 0, $start = 0, $start5 = 0; var $stereo_saving = 0, $stereo_saving1167 = 0, $stereo_saving1223 = 0, $stream_channels = 0, $sub = 0, $sub$ptr$div = 0, $sub$ptr$div1570 = 0, $sub$ptr$div1581 = 0, $sub$ptr$div1589 = 0, $sub$ptr$lhs$cast = 0, $sub$ptr$lhs$cast1567 = 0, $sub$ptr$lhs$cast1578 = 0, $sub$ptr$lhs$cast1586 = 0, $sub$ptr$rhs$cast = 0, $sub$ptr$rhs$cast1568 = 0, $sub$ptr$rhs$cast1579 = 0, $sub$ptr$rhs$cast1587 = 0, $sub$ptr$sub = 0, $sub$ptr$sub1569 = 0, $sub$ptr$sub1580 = 0; var $sub$ptr$sub1588 = 0, $sub1055 = 0, $sub1081 = 0, $sub109 = 0, $sub1105 = 0, $sub1110 = 0, $sub1155 = 0, $sub1178 = 0, $sub1179 = 0, $sub1185 = 0, $sub1194 = 0, $sub1199 = 0, $sub1207 = 0, $sub1235 = 0, $sub1244 = 0, $sub1246 = 0, $sub1248 = 0.0, $sub126 = 0, $sub1266 = 0, $sub1274 = 0; var $sub1283 = 0, $sub1302 = 0, $sub132 = 0, $sub1321 = 0, $sub1331 = 0, $sub1332 = 0, $sub1339 = 0, $sub1350 = 0, $sub136 = 0, $sub1373 = 0, $sub1374 = 0, $sub1387 = 0, $sub1388 = 0, $sub141 = 0, $sub143 = 0, $sub1440 = 0, $sub1445 = 0, $sub1456 = 0, $sub1461 = 0, $sub1483 = 0; var $sub1494 = 0, $sub152 = 0, $sub154 = 0, $sub163 = 0, $sub165 = 0, $sub182 = 0, $sub193 = 0, $sub205 = 0, $sub216 = 0, $sub238 = 0, $sub248 = 0, $sub255 = 0, $sub300 = 0, $sub378 = 0, $sub379 = 0, $sub381 = 0, $sub383 = 0, $sub560 = 0, $sub569 = 0, $sub573 = 0; var $sub587 = 0, $sub630 = 0, $sub663 = 0.0, $sub667 = 0.0, $sub688 = 0.0, $sub694 = 0.0, $sub720 = 0.0, $sub722 = 0.0, $sub726 = 0.0, $sub729 = 0.0, $sub73 = 0, $sub737 = 0.0, $sub744 = 0.0, $sub752 = 0, $sub755 = 0.0, $sub878 = 0, $sub90 = 0, $sub941 = 0.0, $sub955 = 0.0, $surround_masking = 0.0; var $surround_trim = 0.0, $tapset_decision = 0, $tapset_decision1015 = 0, $tapset_decision977 = 0, $target = 0, $tell = 0, $tell0_frac = 0, $temporal_vbr = 0.0, $tf_chan = 0, $tf_estimate = 0, $tf_select = 0, $tmp = 0, $tobool = 0, $tobool1016 = 0, $tobool1018 = 0, $tobool1031 = 0, $tobool104 = 0, $tobool1095 = 0, $tobool1103 = 0, $tobool1163 = 0; var $tobool1189 = 0, $tobool121 = 0, $tobool1212 = 0, $tobool1217 = 0, $tobool1269 = 0, $tobool1304 = 0, $tobool1319 = 0, $tobool1326 = 0, $tobool1343 = 0, $tobool1352 = 0, $tobool1375 = 0, $tobool1391 = 0, $tobool1428 = 0, $tobool1435 = 0, $tobool1543 = 0, $tobool1574 = 0, $tobool1651 = 0, $tobool1653 = 0, $tobool1663 = 0, $tobool176 = 0; var $tobool283 = 0, $tobool303 = 0, $tobool318 = 0, $tobool327 = 0, $tobool327$old = 0, $tobool329 = 0, $tobool329$old = 0, $tobool331 = 0, $tobool345 = 0, $tobool369 = 0, $tobool390 = 0, $tobool392 = 0, $tobool412 = 0, $tobool423 = 0, $tobool432 = 0, $tobool459 = 0, $tobool494 = 0, $tobool496 = 0, $tobool499 = 0, $tobool707 = 0; var $tobool709 = 0, $tobool71 = 0, $tobool778 = 0, $tobool793 = 0, $tobool800 = 0, $tobool802 = 0, $tobool805 = 0, $tobool839 = 0, $tobool846 = 0, $tobool85 = 0, $tobool861 = 0, $tobool885 = 0, $tobool887 = 0, $tobool898 = 0, $tobool975 = 0, $tobool979 = 0, $tobool987 = 0, $tobool995 = 0, $tonal_average = 0, $tonality = 0; var $tot_boost = 0, $total_bits = 0, $total_boost = 0, $transient_got_disabled = 0, $unmask = 0.0, $upsample = 0, $upsample240 = 0, $upsample250 = 0, $upsample257 = 0, $upsample261 = 0, $upsample311 = 0, $upsample434 = 0, $upsample448 = 0, $upsample807 = 0, $vbr = 0, $vbr855 = 0, $vbr_bound = 0, $vbr_count = 0, $vbr_count1310 = 0, $vbr_count1312 = 0; var $vbr_drift = 0, $vbr_drift1336 = 0, $vbr_drift1338 = 0, $vbr_offset = 0, $vbr_offset1330 = 0, $vbr_offset1340 = 0, $vbr_rate = 0, $vbr_reservoir = 0, $vbr_reservoir1322 = 0, $vbr_reservoir1345 = 0, $vbr_reservoir1349 = 0, $vbr_reservoir1358 = 0, $vbr_reservoir192 = 0, $vbr_reservoir204 = 0, $vbr_reservoir215 = 0, $vla = 0, $vla$alloca_mul = 0, $vla1043 = 0, $vla1043$alloca_mul = 0, $vla1367 = 0; var $vla1367$alloca_mul = 0, $vla1368 = 0, $vla1368$alloca_mul = 0, $vla1369 = 0, $vla1369$alloca_mul = 0, $vla1472 = 0, $vla1472$alloca_mul = 0, $vla418 = 0, $vla418$alloca_mul = 0, $vla420 = 0, $vla420$alloca_mul = 0, $vla422 = 0, $vla422$alloca_mul = 0, $vla431 = 0, $vla431$alloca_mul = 0, $vla492 = 0, $vla492$alloca_mul = 0, $vla834 = 0, $vla834$alloca_mul = 0, $vla851 = 0; var $vla851$alloca_mul = 0, $vla852 = 0, $vla852$alloca_mul = 0, $vla853 = 0, $vla853$alloca_mul = 0, $vla860 = 0, $vla860$alloca_mul = 0, $vla929 = 0, $vla929$alloca_mul = 0, $weak_transient = 0, $width = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 480|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(480|0); $_enc = sp + 376|0; $pitch_index = sp + 292|0; $gain1 = sp + 288|0; $dual_stereo = sp + 284|0; $balance = sp + 260|0; $tf_chan = sp + 228|0; $tf_estimate = sp + 224|0; $tot_boost = sp + 216|0; $weak_transient = sp + 156|0; $qg = sp + 120|0; $st$addr = $st; $pcm$addr = $pcm; $frame_size$addr = $frame_size; $compressed$addr = $compressed; $nbCompressedBytes$addr = $nbCompressedBytes; $enc$addr = $enc; $shortBlocks = 0; $isTransient = 0; $0 = $st$addr; $channels = ((($0)) + 4|0); $1 = HEAP32[$channels>>2]|0; $CC = $1; $2 = $st$addr; $stream_channels = ((($2)) + 8|0); $3 = HEAP32[$stream_channels>>2]|0; $C = $3; HEAP32[$pitch_index>>2] = 15; HEAPF32[$gain1>>2] = 0.0; HEAP32[$dual_stereo>>2] = 0; $prefilter_tapset = 0; $anti_collapse_on = 0; $silence = 0; HEAP32[$tf_chan>>2] = 0; $pitch_change = 0; $transient_got_disabled = 0; $surround_masking = 0.0; $temporal_vbr = 0.0; $surround_trim = 0.0; HEAP32[$weak_transient>>2] = 0; $4 = $st$addr; $5 = HEAP32[$4>>2]|0; $mode = $5; $6 = $mode; $nbEBands2 = ((($6)) + 8|0); $7 = HEAP32[$nbEBands2>>2]|0; $nbEBands = $7; $8 = $mode; $overlap3 = ((($8)) + 4|0); $9 = HEAP32[$overlap3>>2]|0; $overlap = $9; $10 = $mode; $eBands4 = ((($10)) + 32|0); $11 = HEAP32[$eBands4>>2]|0; $eBands = $11; $12 = $st$addr; $start5 = ((($12)) + 32|0); $13 = HEAP32[$start5>>2]|0; $start = $13; $14 = $st$addr; $end6 = ((($14)) + 36|0); $15 = HEAP32[$end6>>2]|0; $end = $15; $16 = $start; $cmp = ($16|0)!=(0); $conv = $cmp&1; $hybrid = $conv; HEAPF32[$tf_estimate>>2] = 0.0; $17 = $nbCompressedBytes$addr; $cmp7 = ($17|0)<(2); $18 = $pcm$addr; $cmp9 = ($18|0)==(0|0); $or$cond = $cmp7 | $cmp9; if ($or$cond) { $retval = -1; $1237 = $retval; STACKTOP = sp;return ($1237|0); } $19 = $st$addr; $upsample = ((($19)) + 28|0); $20 = HEAP32[$upsample>>2]|0; $21 = $frame_size$addr; $mul = Math_imul($21, $20)|0; $frame_size$addr = $mul; $LM = 0; while(1) { $22 = $LM; $23 = $mode; $maxLM = ((($23)) + 36|0); $24 = HEAP32[$maxLM>>2]|0; $cmp11 = ($22|0)<=($24|0); if (!($cmp11)) { break; } $25 = $mode; $shortMdctSize = ((($25)) + 44|0); $26 = HEAP32[$shortMdctSize>>2]|0; $27 = $LM; $shl = $26 << $27; $28 = $frame_size$addr; $cmp13 = ($shl|0)==($28|0); if ($cmp13) { break; } $29 = $LM; $inc = (($29) + 1)|0; $LM = $inc; } $30 = $LM; $31 = $mode; $maxLM17 = ((($31)) + 36|0); $32 = HEAP32[$maxLM17>>2]|0; $cmp18 = ($30|0)>($32|0); if ($cmp18) { $retval = -1; $1237 = $retval; STACKTOP = sp;return ($1237|0); } $33 = $LM; $shl22 = 1 << $33; $M = $shl22; $34 = $M; $35 = $mode; $shortMdctSize23 = ((($35)) + 44|0); $36 = HEAP32[$shortMdctSize23>>2]|0; $mul24 = Math_imul($34, $36)|0; $N = $mul24; $37 = $st$addr; $in_mem = ((($37)) + 244|0); $38 = $CC; $39 = $overlap; $mul25 = Math_imul($38, $39)|0; $add$ptr = (($in_mem) + ($mul25<<2)|0); $prefilter_mem = $add$ptr; $40 = $st$addr; $in_mem26 = ((($40)) + 244|0); $41 = $CC; $42 = $overlap; $add = (($42) + 1024)|0; $mul28 = Math_imul($41, $add)|0; $add$ptr29 = (($in_mem26) + ($mul28<<2)|0); $oldBandE = $add$ptr29; $43 = $oldBandE; $44 = $CC; $45 = $nbEBands; $mul30 = Math_imul($44, $45)|0; $add$ptr31 = (($43) + ($mul30<<2)|0); $oldLogE = $add$ptr31; $46 = $oldLogE; $47 = $CC; $48 = $nbEBands; $mul32 = Math_imul($47, $48)|0; $add$ptr33 = (($46) + ($mul32<<2)|0); $oldLogE2 = $add$ptr33; $49 = $oldLogE2; $50 = $CC; $51 = $nbEBands; $mul34 = Math_imul($50, $51)|0; $add$ptr35 = (($49) + ($mul34<<2)|0); $energyError = $add$ptr35; $52 = $enc$addr; $cmp36 = ($52|0)==(0|0); if ($cmp36) { $tell = 1; $tell0_frac = 1; $nbFilledBytes = 0; } else { $53 = $enc$addr; $call = (_ec_tell_frac($53)|0); $tell0_frac = $call; $54 = $enc$addr; $call39 = (_ec_tell_54($54)|0); $tell = $call39; $55 = $tell; $add40 = (($55) + 4)|0; $shr = $add40 >> 3; $nbFilledBytes = $shr; } $56 = $nbCompressedBytes$addr; $cmp42 = ($56|0)<(1275); $57 = $nbCompressedBytes$addr; $cond = $cmp42 ? $57 : 1275; $nbCompressedBytes$addr = $cond; $58 = $nbCompressedBytes$addr; $59 = $nbFilledBytes; $sub = (($58) - ($59))|0; $nbAvailableBytes = $sub; $60 = $st$addr; $vbr = ((($60)) + 44|0); $61 = HEAP32[$vbr>>2]|0; $tobool = ($61|0)!=(0); if ($tobool) { $62 = $st$addr; $bitrate = ((($62)) + 40|0); $63 = HEAP32[$bitrate>>2]|0; $cmp44 = ($63|0)!=(-1); if ($cmp44) { $64 = $mode; $65 = HEAP32[$64>>2]|0; $shr47 = $65 >> 3; $den = $shr47; $66 = $st$addr; $bitrate48 = ((($66)) + 40|0); $67 = HEAP32[$bitrate48>>2]|0; $68 = $frame_size$addr; $mul49 = Math_imul($67, $68)|0; $69 = $den; $shr50 = $69 >> 1; $add51 = (($mul49) + ($shr50))|0; $70 = $den; $div = (($add51|0) / ($70|0))&-1; $vbr_rate = $div; $71 = $vbr_rate; $shr52 = $71 >> 6; $effectiveBytes = $shr52; } else { label = 15; } } else { label = 15; } if ((label|0) == 15) { $vbr_rate = 0; $72 = $st$addr; $bitrate54 = ((($72)) + 40|0); $73 = HEAP32[$bitrate54>>2]|0; $74 = $frame_size$addr; $mul55 = Math_imul($73, $74)|0; $tmp = $mul55; $75 = $tell; $cmp56 = ($75|0)>(1); if ($cmp56) { $76 = $tell; $77 = $tmp; $add59 = (($77) + ($76))|0; $tmp = $add59; } $78 = $st$addr; $bitrate61 = ((($78)) + 40|0); $79 = HEAP32[$bitrate61>>2]|0; $cmp62 = ($79|0)!=(-1); if ($cmp62) { $80 = $nbCompressedBytes$addr; $81 = $tmp; $82 = $mode; $83 = HEAP32[$82>>2]|0; $mul66 = $83<<2; $add67 = (($81) + ($mul66))|0; $84 = $mode; $85 = HEAP32[$84>>2]|0; $mul69 = $85<<3; $div70 = (($add67|0) / ($mul69|0))&-1; $86 = $st$addr; $signalling = ((($86)) + 48|0); $87 = HEAP32[$signalling>>2]|0; $tobool71 = ($87|0)!=(0); $lnot = $tobool71 ^ 1; $lnot72 = $lnot ^ 1; $lnot$ext = $lnot72&1; $sub73 = (($div70) - ($lnot$ext))|0; $cmp74 = ($80|0)<($sub73|0); if ($cmp74) { $88 = $nbCompressedBytes$addr; $cond92 = $88; } else { $89 = $tmp; $90 = $mode; $91 = HEAP32[$90>>2]|0; $mul79 = $91<<2; $add80 = (($89) + ($mul79))|0; $92 = $mode; $93 = HEAP32[$92>>2]|0; $mul82 = $93<<3; $div83 = (($add80|0) / ($mul82|0))&-1; $94 = $st$addr; $signalling84 = ((($94)) + 48|0); $95 = HEAP32[$signalling84>>2]|0; $tobool85 = ($95|0)!=(0); $lnot86 = $tobool85 ^ 1; $lnot88 = $lnot86 ^ 1; $lnot$ext89 = $lnot88&1; $sub90 = (($div83) - ($lnot$ext89))|0; $cond92 = $sub90; } $cmp93 = (2)>($cond92|0); do { if ($cmp93) { $cond130 = 2; } else { $96 = $nbCompressedBytes$addr; $97 = $tmp; $98 = $mode; $99 = HEAP32[$98>>2]|0; $mul98 = $99<<2; $add99 = (($97) + ($mul98))|0; $100 = $mode; $101 = HEAP32[$100>>2]|0; $mul101 = $101<<3; $div102 = (($add99|0) / ($mul101|0))&-1; $102 = $st$addr; $signalling103 = ((($102)) + 48|0); $103 = HEAP32[$signalling103>>2]|0; $tobool104 = ($103|0)!=(0); $lnot105 = $tobool104 ^ 1; $lnot107 = $lnot105 ^ 1; $lnot$ext108 = $lnot107&1; $sub109 = (($div102) - ($lnot$ext108))|0; $cmp110 = ($96|0)<($sub109|0); if ($cmp110) { $104 = $nbCompressedBytes$addr; $cond130 = $104; break; } else { $105 = $tmp; $106 = $mode; $107 = HEAP32[$106>>2]|0; $mul115 = $107<<2; $add116 = (($105) + ($mul115))|0; $108 = $mode; $109 = HEAP32[$108>>2]|0; $mul118 = $109<<3; $div119 = (($add116|0) / ($mul118|0))&-1; $110 = $st$addr; $signalling120 = ((($110)) + 48|0); $111 = HEAP32[$signalling120>>2]|0; $tobool121 = ($111|0)!=(0); $lnot122 = $tobool121 ^ 1; $lnot124 = $lnot122 ^ 1; $lnot$ext125 = $lnot124&1; $sub126 = (($div119) - ($lnot$ext125))|0; $cond130 = $sub126; break; } } } while(0); $nbCompressedBytes$addr = $cond130; } $112 = $nbCompressedBytes$addr; $113 = $nbFilledBytes; $sub132 = (($112) - ($113))|0; $effectiveBytes = $sub132; } $114 = $nbCompressedBytes$addr; $mul134 = $114<<3; $mul135 = ($mul134*50)|0; $115 = $LM; $sub136 = (3 - ($115))|0; $shr137 = $mul135 >> $sub136; $116 = $C; $mul138 = ($116*40)|0; $add139 = (($mul138) + 20)|0; $117 = $LM; $shr140 = 400 >> $117; $sub141 = (($shr140) - 50)|0; $mul142 = Math_imul($add139, $sub141)|0; $sub143 = (($shr137) - ($mul142))|0; $equiv_rate = $sub143; $118 = $st$addr; $bitrate144 = ((($118)) + 40|0); $119 = HEAP32[$bitrate144>>2]|0; $cmp145 = ($119|0)!=(-1); if ($cmp145) { $120 = $equiv_rate; $121 = $st$addr; $bitrate148 = ((($121)) + 40|0); $122 = HEAP32[$bitrate148>>2]|0; $123 = $C; $mul149 = ($123*40)|0; $add150 = (($mul149) + 20)|0; $124 = $LM; $shr151 = 400 >> $124; $sub152 = (($shr151) - 50)|0; $mul153 = Math_imul($add150, $sub152)|0; $sub154 = (($122) - ($mul153))|0; $cmp155 = ($120|0)<($sub154|0); if ($cmp155) { $125 = $equiv_rate; $cond167 = $125; } else { $126 = $st$addr; $bitrate159 = ((($126)) + 40|0); $127 = HEAP32[$bitrate159>>2]|0; $128 = $C; $mul160 = ($128*40)|0; $add161 = (($mul160) + 20)|0; $129 = $LM; $shr162 = 400 >> $129; $sub163 = (($shr162) - 50)|0; $mul164 = Math_imul($add161, $sub163)|0; $sub165 = (($127) - ($mul164))|0; $cond167 = $sub165; } $equiv_rate = $cond167; } $130 = $enc$addr; $cmp169 = ($130|0)==(0|0); if ($cmp169) { $131 = $compressed$addr; $132 = $nbCompressedBytes$addr; _ec_enc_init($_enc,$131,$132); $enc$addr = $_enc; } $133 = $vbr_rate; $cmp173 = ($133|0)>(0); if ($cmp173) { $134 = $st$addr; $constrained_vbr = ((($134)) + 52|0); $135 = HEAP32[$constrained_vbr>>2]|0; $tobool176 = ($135|0)!=(0); if ($tobool176) { $136 = $vbr_rate; $vbr_bound = $136; $137 = $tell; $cmp178 = ($137|0)==(1); $cond180 = $cmp178 ? 2 : 0; $138 = $vbr_rate; $139 = $vbr_bound; $add181 = (($138) + ($139))|0; $140 = $st$addr; $vbr_reservoir = ((($140)) + 208|0); $141 = HEAP32[$vbr_reservoir>>2]|0; $sub182 = (($add181) - ($141))|0; $shr183 = $sub182 >> 6; $cmp184 = ($cond180|0)>($shr183|0); if ($cmp184) { $142 = $tell; $cmp187 = ($142|0)==(1); $cond189 = $cmp187 ? 2 : 0; $cond196 = $cond189; } else { $143 = $vbr_rate; $144 = $vbr_bound; $add191 = (($143) + ($144))|0; $145 = $st$addr; $vbr_reservoir192 = ((($145)) + 208|0); $146 = HEAP32[$vbr_reservoir192>>2]|0; $sub193 = (($add191) - ($146))|0; $shr194 = $sub193 >> 6; $cond196 = $shr194; } $147 = $nbAvailableBytes; $cmp197 = ($cond196|0)<($147|0); do { if ($cmp197) { $148 = $tell; $cmp200 = ($148|0)==(1); $cond202 = $cmp200 ? 2 : 0; $149 = $vbr_rate; $150 = $vbr_bound; $add203 = (($149) + ($150))|0; $151 = $st$addr; $vbr_reservoir204 = ((($151)) + 208|0); $152 = HEAP32[$vbr_reservoir204>>2]|0; $sub205 = (($add203) - ($152))|0; $shr206 = $sub205 >> 6; $cmp207 = ($cond202|0)>($shr206|0); if ($cmp207) { $153 = $tell; $cmp210 = ($153|0)==(1); $cond212 = $cmp210 ? 2 : 0; $cond222 = $cond212; break; } else { $154 = $vbr_rate; $155 = $vbr_bound; $add214 = (($154) + ($155))|0; $156 = $st$addr; $vbr_reservoir215 = ((($156)) + 208|0); $157 = HEAP32[$vbr_reservoir215>>2]|0; $sub216 = (($add214) - ($157))|0; $shr217 = $sub216 >> 6; $cond222 = $shr217; break; } } else { $158 = $nbAvailableBytes; $cond222 = $158; } } while(0); $max_allowed = $cond222; $159 = $max_allowed; $160 = $nbAvailableBytes; $cmp223 = ($159|0)<($160|0); if ($cmp223) { $161 = $nbFilledBytes; $162 = $max_allowed; $add226 = (($161) + ($162))|0; $nbCompressedBytes$addr = $add226; $163 = $max_allowed; $nbAvailableBytes = $163; $164 = $enc$addr; $165 = $nbCompressedBytes$addr; _ec_enc_shrink($164,$165); } } } $166 = $nbCompressedBytes$addr; $mul230 = $166<<3; $total_bits = $mul230; $167 = $end; $effEnd = $167; $168 = $effEnd; $169 = $mode; $effEBands = ((($169)) + 12|0); $170 = HEAP32[$effEBands>>2]|0; $cmp231 = ($168|0)>($170|0); if ($cmp231) { $171 = $mode; $effEBands234 = ((($171)) + 12|0); $172 = HEAP32[$effEBands234>>2]|0; $effEnd = $172; } $173 = $CC; $174 = $N; $175 = $overlap; $add236 = (($174) + ($175))|0; $mul237 = Math_imul($173, $add236)|0; $176 = (_llvm_stacksave()|0); $saved_stack = $176; $vla$alloca_mul = $mul237<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $177 = $st$addr; $overlap_max = ((($177)) + 224|0); $178 = +HEAPF32[$overlap_max>>2]; $179 = $pcm$addr; $180 = $C; $181 = $N; $182 = $overlap; $sub238 = (($181) - ($182))|0; $mul239 = Math_imul($180, $sub238)|0; $183 = $st$addr; $upsample240 = ((($183)) + 28|0); $184 = HEAP32[$upsample240>>2]|0; $div241 = (($mul239|0) / ($184|0))&-1; $call242 = (+_celt_maxabs16_55($179,$div241)); $cmp243 = $178 > $call242; if ($cmp243) { $185 = $st$addr; $overlap_max246 = ((($185)) + 224|0); $186 = +HEAPF32[$overlap_max246>>2]; $cond254 = $186; } else { $187 = $pcm$addr; $188 = $C; $189 = $N; $190 = $overlap; $sub248 = (($189) - ($190))|0; $mul249 = Math_imul($188, $sub248)|0; $191 = $st$addr; $upsample250 = ((($191)) + 28|0); $192 = HEAP32[$upsample250>>2]|0; $div251 = (($mul249|0) / ($192|0))&-1; $call252 = (+_celt_maxabs16_55($187,$div251)); $cond254 = $call252; } $sample_max = $cond254; $193 = $pcm$addr; $194 = $C; $195 = $N; $196 = $overlap; $sub255 = (($195) - ($196))|0; $mul256 = Math_imul($194, $sub255)|0; $197 = $st$addr; $upsample257 = ((($197)) + 28|0); $198 = HEAP32[$upsample257>>2]|0; $div258 = (($mul256|0) / ($198|0))&-1; $add$ptr259 = (($193) + ($div258<<2)|0); $199 = $C; $200 = $overlap; $mul260 = Math_imul($199, $200)|0; $201 = $st$addr; $upsample261 = ((($201)) + 28|0); $202 = HEAP32[$upsample261>>2]|0; $div262 = (($mul260|0) / ($202|0))&-1; $call263 = (+_celt_maxabs16_55($add$ptr259,$div262)); $203 = $st$addr; $overlap_max264 = ((($203)) + 224|0); HEAPF32[$overlap_max264>>2] = $call263; $204 = $sample_max; $205 = $st$addr; $overlap_max265 = ((($205)) + 224|0); $206 = +HEAPF32[$overlap_max265>>2]; $cmp266 = $204 > $206; if ($cmp266) { $207 = $sample_max; $cond272 = $207; } else { $208 = $st$addr; $overlap_max270 = ((($208)) + 224|0); $209 = +HEAPF32[$overlap_max270>>2]; $cond272 = $209; } $sample_max = $cond272; $210 = $sample_max; $211 = $st$addr; $lsb_depth = ((($211)) + 60|0); $212 = HEAP32[$lsb_depth>>2]|0; $shl273 = 1 << $212; $conv274 = (+($shl273|0)); $div275 = 1.0 / $conv274; $cmp276 = $210 <= $div275; $conv277 = $cmp276&1; $silence = $conv277; $213 = $tell; $cmp278 = ($213|0)==(1); if ($cmp278) { $214 = $enc$addr; $215 = $silence; _ec_enc_bit_logp($214,$215,15); } else { $silence = 0; } $216 = $silence; $tobool283 = ($216|0)!=(0); if ($tobool283) { $217 = $vbr_rate; $cmp285 = ($217|0)>(0); if ($cmp285) { $218 = $nbCompressedBytes$addr; $219 = $nbFilledBytes; $add288 = (($219) + 2)|0; $cmp289 = ($218|0)<($add288|0); $220 = $nbCompressedBytes$addr; $221 = $nbFilledBytes; $add293 = (($221) + 2)|0; $cond295 = $cmp289 ? $220 : $add293; $nbCompressedBytes$addr = $cond295; $effectiveBytes = $cond295; $222 = $nbCompressedBytes$addr; $mul296 = $222<<3; $total_bits = $mul296; $nbAvailableBytes = 2; $223 = $enc$addr; $224 = $nbCompressedBytes$addr; _ec_enc_shrink($223,$224); } $225 = $nbCompressedBytes$addr; $mul298 = $225<<3; $tell = $mul298; $226 = $tell; $227 = $enc$addr; $call299 = (_ec_tell_54($227)|0); $sub300 = (($226) - ($call299))|0; $228 = $enc$addr; $nbits_total = ((($228)) + 20|0); $229 = HEAP32[$nbits_total>>2]|0; $add301 = (($229) + ($sub300))|0; HEAP32[$nbits_total>>2] = $add301; } $c = 0; while(1) { $need_clip = 0; $230 = $st$addr; $clip = ((($230)) + 16|0); $231 = HEAP32[$clip>>2]|0; $tobool303 = ($231|0)!=(0); $232 = $sample_max; $cmp304 = $232 > 65536.0; $233 = $tobool303 ? $cmp304 : 0; $land$ext = $233&1; $need_clip = $land$ext; $234 = $pcm$addr; $235 = $c; $add$ptr306 = (($234) + ($235<<2)|0); $236 = $c; $237 = $N; $238 = $overlap; $add307 = (($237) + ($238))|0; $mul308 = Math_imul($236, $add307)|0; $add$ptr309 = (($vla) + ($mul308<<2)|0); $239 = $overlap; $add$ptr310 = (($add$ptr309) + ($239<<2)|0); $240 = $N; $241 = $CC; $242 = $st$addr; $upsample311 = ((($242)) + 28|0); $243 = HEAP32[$upsample311>>2]|0; $244 = $mode; $preemph = ((($244)) + 16|0); $245 = $st$addr; $preemph_memE = ((($245)) + 192|0); $246 = $c; $add$ptr314 = (($preemph_memE) + ($246<<2)|0); $247 = $need_clip; _celt_preemphasis($add$ptr306,$add$ptr310,$240,$241,$243,$preemph,$add$ptr314,$247); $248 = $c; $inc315 = (($248) + 1)|0; $c = $inc315; $249 = $CC; $cmp316 = ($inc315|0)<($249|0); if (!($cmp316)) { break; } } $250 = $st$addr; $lfe = ((($250)) + 64|0); $251 = HEAP32[$lfe>>2]|0; $tobool318 = ($251|0)!=(0); $252 = $nbAvailableBytes; $cmp320 = ($252|0)>(3); $or$cond1 = $tobool318 & $cmp320; if ($or$cond1) { $$old = $hybrid; $tobool327$old = ($$old|0)!=(0); $$old3 = $silence; $tobool329$old = ($$old3|0)!=(0); $or$cond6 = $tobool327$old | $tobool329$old; if ($or$cond6) { $261 = 0; } else { label = 66; } } else { $253 = $nbAvailableBytes; $254 = $C; $mul323 = ($254*12)|0; $cmp324 = ($253|0)<=($mul323|0); $255 = $hybrid; $tobool327 = ($255|0)!=(0); $or$cond2 = $cmp324 | $tobool327; $256 = $silence; $tobool329 = ($256|0)!=(0); $or$cond4 = $or$cond2 | $tobool329; if ($or$cond4) { $261 = 0; } else { label = 66; } } if ((label|0) == 66) { $257 = $st$addr; $disable_pf = ((($257)) + 20|0); $258 = HEAP32[$disable_pf>>2]|0; $tobool331 = ($258|0)!=(0); if ($tobool331) { $261 = 0; } else { $259 = $st$addr; $complexity = ((($259)) + 24|0); $260 = HEAP32[$complexity>>2]|0; $cmp333 = ($260|0)>=(5); $261 = $cmp333; } } $land$ext336 = $261&1; $enabled = $land$ext336; $262 = $st$addr; $tapset_decision = ((($262)) + 100|0); $263 = HEAP32[$tapset_decision>>2]|0; $prefilter_tapset = $263; $264 = $st$addr; $265 = $prefilter_mem; $266 = $CC; $267 = $N; $268 = $prefilter_tapset; $269 = $enabled; $270 = $nbAvailableBytes; $271 = $st$addr; $analysis = ((($271)) + 120|0); $call337 = (_run_prefilter($264,$vla,$265,$266,$267,$268,$pitch_index,$gain1,$qg,$269,$270,$analysis)|0); $pf_on = $call337; $272 = +HEAPF32[$gain1>>2]; $cmp338 = $272 > 0.40000000596046448; if ($cmp338) { label = 70; } else { $273 = $st$addr; $prefilter_gain = ((($273)) + 108|0); $274 = +HEAPF32[$prefilter_gain>>2]; $cmp341 = $274 > 0.40000000596046448; if ($cmp341) { label = 70; } } do { if ((label|0) == 70) { $275 = $st$addr; $analysis344 = ((($275)) + 120|0); $276 = HEAP32[$analysis344>>2]|0; $tobool345 = ($276|0)!=(0); if ($tobool345) { $277 = $st$addr; $analysis347 = ((($277)) + 120|0); $tonality = ((($analysis347)) + 4|0); $278 = +HEAPF32[$tonality>>2]; $conv348 = $278; $cmp349 = $conv348 > 0.29999999999999999; if (!($cmp349)) { break; } } $279 = HEAP32[$pitch_index>>2]|0; $conv352 = (+($279|0)); $280 = $st$addr; $prefilter_period = ((($280)) + 104|0); $281 = HEAP32[$prefilter_period>>2]|0; $conv353 = (+($281|0)); $mul354 = 1.26 * $conv353; $cmp355 = $conv352 > $mul354; if (!($cmp355)) { $282 = HEAP32[$pitch_index>>2]|0; $conv358 = (+($282|0)); $283 = $st$addr; $prefilter_period359 = ((($283)) + 104|0); $284 = HEAP32[$prefilter_period359>>2]|0; $conv360 = (+($284|0)); $mul361 = 0.79000000000000004 * $conv360; $cmp362 = $conv358 < $mul361; if (!($cmp362)) { break; } } $pitch_change = 1; } } while(0); $285 = $pf_on; $cmp366 = ($285|0)==(0); if ($cmp366) { $286 = $hybrid; $tobool369 = ($286|0)!=(0); if (!($tobool369)) { $287 = $tell; $add371 = (($287) + 16)|0; $288 = $total_bits; $cmp372 = ($add371|0)<=($288|0); if ($cmp372) { $289 = $enc$addr; _ec_enc_bit_logp($289,0,1); } } } else { $290 = $enc$addr; _ec_enc_bit_logp($290,1,1); $291 = HEAP32[$pitch_index>>2]|0; $add377 = (($291) + 1)|0; HEAP32[$pitch_index>>2] = $add377; $292 = HEAP32[$pitch_index>>2]|0; $293 = (Math_clz32(($292|0))|0); $sub378 = (32 - ($293))|0; $sub379 = (($sub378) - 5)|0; $octave = $sub379; $294 = $enc$addr; $295 = $octave; _ec_enc_uint($294,$295,6); $296 = $enc$addr; $297 = HEAP32[$pitch_index>>2]|0; $298 = $octave; $shl380 = 16 << $298; $sub381 = (($297) - ($shl380))|0; $299 = $octave; $add382 = (4 + ($299))|0; _ec_enc_bits($296,$sub381,$add382); $300 = HEAP32[$pitch_index>>2]|0; $sub383 = (($300) - 1)|0; HEAP32[$pitch_index>>2] = $sub383; $301 = $enc$addr; $302 = HEAP32[$qg>>2]|0; _ec_enc_bits($301,$302,3); $303 = $enc$addr; $304 = $prefilter_tapset; _ec_enc_icdf($303,$304,30939,2); } $isTransient = 0; $shortBlocks = 0; $305 = $st$addr; $complexity385 = ((($305)) + 24|0); $306 = HEAP32[$complexity385>>2]|0; $cmp386 = ($306|0)>=(1); if ($cmp386) { $307 = $st$addr; $lfe389 = ((($307)) + 64|0); $308 = HEAP32[$lfe389>>2]|0; $tobool390 = ($308|0)!=(0); if (!($tobool390)) { $309 = $hybrid; $tobool392 = ($309|0)!=(0); $310 = $effectiveBytes; $cmp394 = ($310|0)<(15); $or$cond8 = $tobool392 & $cmp394; if ($or$cond8) { $311 = $st$addr; $silk_info = ((($311)) + 184|0); $312 = HEAP32[$silk_info>>2]|0; $cmp397 = ($312|0)!=(2); $313 = $cmp397; } else { $313 = 0; } $land$ext400 = $313&1; $allow_weak_transients = $land$ext400; $314 = $N; $315 = $overlap; $add401 = (($314) + ($315))|0; $316 = $CC; $317 = $allow_weak_transients; $call402 = (_transient_analysis($vla,$add401,$316,$tf_estimate,$tf_chan,$317,$weak_transient)|0); $isTransient = $call402; } } $318 = $LM; $cmp404 = ($318|0)>(0); if ($cmp404) { $319 = $enc$addr; $call407 = (_ec_tell_54($319)|0); $add408 = (($call407) + 3)|0; $320 = $total_bits; $cmp409 = ($add408|0)<=($320|0); if ($cmp409) { $321 = $isTransient; $tobool412 = ($321|0)!=(0); if ($tobool412) { $322 = $M; $shortBlocks = $322; } } else { label = 89; } } else { label = 89; } if ((label|0) == 89) { $isTransient = 0; $transient_got_disabled = 1; } $323 = $CC; $324 = $N; $mul417 = Math_imul($323, $324)|0; $vla418$alloca_mul = $mul417<<2; $vla418 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla418$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla418$alloca_mul)|0)+15)&-16)|0);; $325 = $nbEBands; $326 = $CC; $mul419 = Math_imul($325, $326)|0; $vla420$alloca_mul = $mul419<<2; $vla420 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla420$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla420$alloca_mul)|0)+15)&-16)|0);; $327 = $nbEBands; $328 = $CC; $mul421 = Math_imul($327, $328)|0; $vla422$alloca_mul = $mul421<<2; $vla422 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla422$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla422$alloca_mul)|0)+15)&-16)|0);; $329 = $shortBlocks; $tobool423 = ($329|0)!=(0); if ($tobool423) { $330 = $st$addr; $complexity425 = ((($330)) + 24|0); $331 = HEAP32[$complexity425>>2]|0; $cmp426 = ($331|0)>=(8); $332 = $cmp426; } else { $332 = 0; } $land$ext429 = $332&1; $secondMdct = $land$ext429; $333 = $C; $334 = $nbEBands; $mul430 = Math_imul($333, $334)|0; $vla431$alloca_mul = $mul430<<2; $vla431 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla431$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla431$alloca_mul)|0)+15)&-16)|0);; $335 = $secondMdct; $tobool432 = ($335|0)!=(0); L131: do { if ($tobool432) { $336 = $mode; $337 = $C; $338 = $CC; $339 = $LM; $340 = $st$addr; $upsample434 = ((($340)) + 28|0); $341 = HEAP32[$upsample434>>2]|0; $342 = $st$addr; $arch = ((($342)) + 72|0); $343 = HEAP32[$arch>>2]|0; _compute_mdcts($336,0,$vla,$vla418,$337,$338,$339,$341,$343); $344 = $mode; $345 = $effEnd; $346 = $C; $347 = $LM; $348 = $st$addr; $arch435 = ((($348)) + 72|0); $349 = HEAP32[$arch435>>2]|0; _compute_band_energies($344,$vla418,$vla420,$345,$346,$347,$349); $350 = $mode; $351 = $effEnd; $352 = $end; $353 = $C; _amp2Log2($350,$351,$352,$vla420,$vla431,$353); $i = 0; while(1) { $354 = $i; $355 = $C; $356 = $nbEBands; $mul437 = Math_imul($355, $356)|0; $cmp438 = ($354|0)<($mul437|0); if (!($cmp438)) { break L131; } $357 = $LM; $conv441 = (+($357|0)); $mul442 = 0.5 * $conv441; $358 = $i; $arrayidx = (($vla431) + ($358<<2)|0); $359 = +HEAPF32[$arrayidx>>2]; $add443 = $359 + $mul442; HEAPF32[$arrayidx>>2] = $add443; $360 = $i; $inc445 = (($360) + 1)|0; $i = $inc445; } } } while(0); $361 = $mode; $362 = $shortBlocks; $363 = $C; $364 = $CC; $365 = $LM; $366 = $st$addr; $upsample448 = ((($366)) + 28|0); $367 = HEAP32[$upsample448>>2]|0; $368 = $st$addr; $arch449 = ((($368)) + 72|0); $369 = HEAP32[$arch449>>2]|0; _compute_mdcts($361,$362,$vla,$vla418,$363,$364,$365,$367,$369); $370 = $CC; $cmp450 = ($370|0)==(2); $371 = $C; $cmp453 = ($371|0)==(1); $or$cond10 = $cmp450 & $cmp453; if ($or$cond10) { HEAP32[$tf_chan>>2] = 0; } $372 = $mode; $373 = $effEnd; $374 = $C; $375 = $LM; $376 = $st$addr; $arch457 = ((($376)) + 72|0); $377 = HEAP32[$arch457>>2]|0; _compute_band_energies($372,$vla418,$vla420,$373,$374,$375,$377); $378 = $st$addr; $lfe458 = ((($378)) + 64|0); $379 = HEAP32[$lfe458>>2]|0; $tobool459 = ($379|0)!=(0); L140: do { if ($tobool459) { $i = 2; while(1) { $380 = $i; $381 = $end; $cmp462 = ($380|0)<($381|0); if (!($cmp462)) { break L140; } $382 = $i; $arrayidx465 = (($vla420) + ($382<<2)|0); $383 = +HEAPF32[$arrayidx465>>2]; $384 = +HEAPF32[$vla420>>2]; $mul467 = 9.9999997473787516E-5 * $384; $cmp468 = $383 < $mul467; if ($cmp468) { $385 = $i; $arrayidx471 = (($vla420) + ($385<<2)|0); $386 = +HEAPF32[$arrayidx471>>2]; $cond476 = $386; } else { $387 = +HEAPF32[$vla420>>2]; $mul474 = 9.9999997473787516E-5 * $387; $cond476 = $mul474; } $388 = $i; $arrayidx477 = (($vla420) + ($388<<2)|0); HEAPF32[$arrayidx477>>2] = $cond476; $389 = $i; $arrayidx478 = (($vla420) + ($389<<2)|0); $390 = +HEAPF32[$arrayidx478>>2]; $cmp479 = $390 > 1.0000000036274937E-15; if ($cmp479) { $391 = $i; $arrayidx482 = (($vla420) + ($391<<2)|0); $392 = +HEAPF32[$arrayidx482>>2]; $cond485 = $392; } else { $cond485 = 1.0000000036274937E-15; } $393 = $i; $arrayidx486 = (($vla420) + ($393<<2)|0); HEAPF32[$arrayidx486>>2] = $cond485; $394 = $i; $inc488 = (($394) + 1)|0; $i = $inc488; } } } while(0); $395 = $mode; $396 = $effEnd; $397 = $end; $398 = $C; _amp2Log2($395,$396,$397,$vla420,$vla422,$398); $399 = $C; $400 = $nbEBands; $mul491 = Math_imul($399, $400)|0; $vla492$alloca_mul = $mul491<<2; $vla492 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla492$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla492$alloca_mul)|0)+15)&-16)|0);; $401 = $end; $mul493 = $401<<2; _memset(($vla492|0),0,($mul493|0))|0; $402 = $hybrid; $tobool494 = ($402|0)!=(0); do { if (!($tobool494)) { $403 = $st$addr; $energy_mask = ((($403)) + 236|0); $404 = HEAP32[$energy_mask>>2]|0; $tobool496 = ($404|0)!=(0|0); if (!($tobool496)) { break; } $405 = $st$addr; $lfe498 = ((($405)) + 64|0); $406 = HEAP32[$lfe498>>2]|0; $tobool499 = ($406|0)!=(0); if ($tobool499) { break; } $mask_avg = 0.0; $diff = 0.0; $count = 0; $407 = $st$addr; $lastCodedBands = ((($407)) + 92|0); $408 = HEAP32[$lastCodedBands>>2]|0; $cmp501 = (2)>($408|0); if ($cmp501) { $cond507 = 2; } else { $409 = $st$addr; $lastCodedBands505 = ((($409)) + 92|0); $410 = HEAP32[$lastCodedBands505>>2]|0; $cond507 = $410; } $mask_end = $cond507; $c = 0; while(1) { $411 = $c; $412 = $C; $cmp509 = ($411|0)<($412|0); if (!($cmp509)) { break; } $i = 0; while(1) { $413 = $i; $414 = $mask_end; $cmp513 = ($413|0)<($414|0); if (!($cmp513)) { break; } $415 = $st$addr; $energy_mask516 = ((($415)) + 236|0); $416 = HEAP32[$energy_mask516>>2]|0; $417 = $nbEBands; $418 = $c; $mul517 = Math_imul($417, $418)|0; $419 = $i; $add518 = (($mul517) + ($419))|0; $arrayidx519 = (($416) + ($add518<<2)|0); $420 = +HEAPF32[$arrayidx519>>2]; $cmp520 = $420 < 0.25; if ($cmp520) { $421 = $st$addr; $energy_mask523 = ((($421)) + 236|0); $422 = HEAP32[$energy_mask523>>2]|0; $423 = $nbEBands; $424 = $c; $mul524 = Math_imul($423, $424)|0; $425 = $i; $add525 = (($mul524) + ($425))|0; $arrayidx526 = (($422) + ($add525<<2)|0); $426 = +HEAPF32[$arrayidx526>>2]; $cond529 = $426; } else { $cond529 = 0.25; } $cmp530 = $cond529 > -2.0; do { if ($cmp530) { $427 = $st$addr; $energy_mask533 = ((($427)) + 236|0); $428 = HEAP32[$energy_mask533>>2]|0; $429 = $nbEBands; $430 = $c; $mul534 = Math_imul($429, $430)|0; $431 = $i; $add535 = (($mul534) + ($431))|0; $arrayidx536 = (($428) + ($add535<<2)|0); $432 = +HEAPF32[$arrayidx536>>2]; $cmp537 = $432 < 0.25; if (!($cmp537)) { $cond549 = 0.25; break; } $433 = $st$addr; $energy_mask540 = ((($433)) + 236|0); $434 = HEAP32[$energy_mask540>>2]|0; $435 = $nbEBands; $436 = $c; $mul541 = Math_imul($435, $436)|0; $437 = $i; $add542 = (($mul541) + ($437))|0; $arrayidx543 = (($434) + ($add542<<2)|0); $438 = +HEAPF32[$arrayidx543>>2]; $cond549 = $438; } else { $cond549 = -2.0; } } while(0); $mask = $cond549; $439 = $mask; $cmp550 = $439 > 0.0; if ($cmp550) { $440 = $mask; $mul553 = 0.5 * $440; $mask = $mul553; } $441 = $mask; $442 = $eBands; $443 = $i; $add555 = (($443) + 1)|0; $arrayidx556 = (($442) + ($add555<<1)|0); $444 = HEAP16[$arrayidx556>>1]|0; $conv557 = $444 << 16 >> 16; $445 = $eBands; $446 = $i; $arrayidx558 = (($445) + ($446<<1)|0); $447 = HEAP16[$arrayidx558>>1]|0; $conv559 = $447 << 16 >> 16; $sub560 = (($conv557) - ($conv559))|0; $conv561 = (+($sub560|0)); $mul562 = $441 * $conv561; $448 = $mask_avg; $add563 = $448 + $mul562; $mask_avg = $add563; $449 = $eBands; $450 = $i; $add564 = (($450) + 1)|0; $arrayidx565 = (($449) + ($add564<<1)|0); $451 = HEAP16[$arrayidx565>>1]|0; $conv566 = $451 << 16 >> 16; $452 = $eBands; $453 = $i; $arrayidx567 = (($452) + ($453<<1)|0); $454 = HEAP16[$arrayidx567>>1]|0; $conv568 = $454 << 16 >> 16; $sub569 = (($conv566) - ($conv568))|0; $455 = $count; $add570 = (($455) + ($sub569))|0; $count = $add570; $456 = $mask; $457 = $i; $mul571 = $457<<1; $add572 = (1 + ($mul571))|0; $458 = $mask_end; $sub573 = (($add572) - ($458))|0; $conv574 = (+($sub573|0)); $mul575 = $456 * $conv574; $459 = $diff; $add576 = $459 + $mul575; $diff = $add576; $460 = $i; $inc578 = (($460) + 1)|0; $i = $inc578; } $461 = $c; $inc581 = (($461) + 1)|0; $c = $inc581; } $462 = $mask_avg; $463 = $count; $conv583 = (+($463|0)); $div584 = $462 / $conv583; $mask_avg = $div584; $464 = $mask_avg; $add585 = $464 + 0.20000000298023224; $mask_avg = $add585; $465 = $diff; $mul586 = $465 * 6.0; $466 = $C; $467 = $mask_end; $sub587 = (($467) - 1)|0; $mul588 = Math_imul($466, $sub587)|0; $468 = $mask_end; $add589 = (($468) + 1)|0; $mul590 = Math_imul($mul588, $add589)|0; $469 = $mask_end; $mul591 = Math_imul($mul590, $469)|0; $conv592 = (+($mul591|0)); $div593 = $mul586 / $conv592; $diff = $div593; $470 = $diff; $mul594 = 0.5 * $470; $diff = $mul594; $471 = $diff; $cmp595 = $471 < 0.030999999493360519; $472 = $diff; $cond600 = $cmp595 ? $472 : 0.030999999493360519; $cmp601 = $cond600 > -0.030999999493360519; if ($cmp601) { $473 = $diff; $cmp604 = $473 < 0.030999999493360519; $474 = $diff; $cond609 = $cmp604 ? $474 : 0.030999999493360519; $cond612 = $cond609; } else { $cond612 = -0.030999999493360519; } $diff = $cond612; $midband = 0; while(1) { $475 = $eBands; $476 = $midband; $add614 = (($476) + 1)|0; $arrayidx615 = (($475) + ($add614<<1)|0); $477 = HEAP16[$arrayidx615>>1]|0; $conv616 = $477 << 16 >> 16; $478 = $eBands; $479 = $mask_end; $arrayidx617 = (($478) + ($479<<1)|0); $480 = HEAP16[$arrayidx617>>1]|0; $conv618 = $480 << 16 >> 16; $div619 = (($conv618|0) / 2)&-1; $cmp620 = ($conv616|0)<($div619|0); if (!($cmp620)) { break; } $481 = $midband; $inc624 = (($481) + 1)|0; $midband = $inc624; } $count_dynalloc = 0; $i = 0; while(1) { $482 = $i; $483 = $mask_end; $cmp627 = ($482|0)<($483|0); if (!($cmp627)) { break; } $484 = $mask_avg; $485 = $diff; $486 = $i; $487 = $midband; $sub630 = (($486) - ($487))|0; $conv631 = (+($sub630|0)); $mul632 = $485 * $conv631; $add633 = $484 + $mul632; $lin = $add633; $488 = $C; $cmp634 = ($488|0)==(2); $489 = $st$addr; $energy_mask637 = ((($489)) + 236|0); $490 = HEAP32[$energy_mask637>>2]|0; $491 = $i; $arrayidx638 = (($490) + ($491<<2)|0); $492 = +HEAPF32[$arrayidx638>>2]; if ($cmp634) { $493 = $st$addr; $energy_mask639 = ((($493)) + 236|0); $494 = HEAP32[$energy_mask639>>2]|0; $495 = $nbEBands; $496 = $i; $add640 = (($495) + ($496))|0; $arrayidx641 = (($494) + ($add640<<2)|0); $497 = +HEAPF32[$arrayidx641>>2]; $cmp642 = $492 > $497; $498 = $st$addr; $energy_mask645 = ((($498)) + 236|0); $499 = HEAP32[$energy_mask645>>2]|0; if ($cmp642) { $500 = $i; $add649$sink = $500; } else { $501 = $nbEBands; $502 = $i; $add649 = (($501) + ($502))|0; $add649$sink = $add649; } $arrayidx650 = (($499) + ($add649$sink<<2)|0); $503 = +HEAPF32[$arrayidx650>>2]; $unmask = $503; } else { $unmask = $492; } $504 = $unmask; $cmp657 = $504 < 0.0; $505 = $unmask; $cond662 = $cmp657 ? $505 : 0.0; $unmask = $cond662; $506 = $lin; $507 = $unmask; $sub663 = $507 - $506; $unmask = $sub663; $508 = $unmask; $cmp664 = $508 > 0.25; if ($cmp664) { $509 = $unmask; $sub667 = $509 - 0.25; $510 = $i; $arrayidx668 = (($vla492) + ($510<<2)|0); HEAPF32[$arrayidx668>>2] = $sub667; $511 = $count_dynalloc; $inc669 = (($511) + 1)|0; $count_dynalloc = $inc669; } $512 = $i; $inc672 = (($512) + 1)|0; $i = $inc672; } $513 = $count_dynalloc; $cmp674 = ($513|0)>=(3); L200: do { if ($cmp674) { $514 = $mask_avg; $add677 = $514 + 0.25; $mask_avg = $add677; $515 = $mask_avg; $cmp678 = $515 > 0.0; if ($cmp678) { $mask_avg = 0.0; $diff = 0.0; $516 = $mask_end; $mul681 = $516<<2; _memset(($vla492|0),0,($mul681|0))|0; break; } $i = 0; while(1) { $517 = $i; $518 = $mask_end; $cmp684 = ($517|0)<($518|0); if (!($cmp684)) { break L200; } $519 = $i; $arrayidx687 = (($vla492) + ($519<<2)|0); $520 = +HEAPF32[$arrayidx687>>2]; $sub688 = $520 - 0.25; $cmp689 = 0.0 > $sub688; if ($cmp689) { $cond696 = 0.0; } else { $521 = $i; $arrayidx693 = (($vla492) + ($521<<2)|0); $522 = +HEAPF32[$arrayidx693>>2]; $sub694 = $522 - 0.25; $cond696 = $sub694; } $523 = $i; $arrayidx697 = (($vla492) + ($523<<2)|0); HEAPF32[$arrayidx697>>2] = $cond696; $524 = $i; $inc699 = (($524) + 1)|0; $i = $inc699; } } } while(0); $525 = $mask_avg; $add703 = $525 + 0.20000000298023224; $mask_avg = $add703; $526 = $diff; $mul704 = 64.0 * $526; $surround_trim = $mul704; $527 = $mask_avg; $surround_masking = $527; } } while(0); $528 = $st$addr; $lfe706 = ((($528)) + 64|0); $529 = HEAP32[$lfe706>>2]|0; $tobool707 = ($529|0)!=(0); if (!($tobool707)) { $follow = -10.0; $frame_avg = 0.0; $530 = $shortBlocks; $tobool709 = ($530|0)!=(0); if ($tobool709) { $531 = $LM; $conv711 = (+($531|0)); $mul712 = 0.5 * $conv711; $cond715 = $mul712; } else { $cond715 = 0.0; } $offset = $cond715; $532 = $start; $i = $532; while(1) { $533 = $i; $534 = $end; $cmp717 = ($533|0)<($534|0); if (!($cmp717)) { break; } $535 = $follow; $sub720 = $535 - 1.0; $536 = $i; $arrayidx721 = (($vla422) + ($536<<2)|0); $537 = +HEAPF32[$arrayidx721>>2]; $538 = $offset; $sub722 = $537 - $538; $cmp723 = $sub720 > $sub722; if ($cmp723) { $539 = $follow; $sub726 = $539 - 1.0; $cond731 = $sub726; } else { $540 = $i; $arrayidx728 = (($vla422) + ($540<<2)|0); $541 = +HEAPF32[$arrayidx728>>2]; $542 = $offset; $sub729 = $541 - $542; $cond731 = $sub729; } $follow = $cond731; $543 = $C; $cmp732 = ($543|0)==(2); if ($cmp732) { $544 = $follow; $545 = $i; $546 = $nbEBands; $add735 = (($545) + ($546))|0; $arrayidx736 = (($vla422) + ($add735<<2)|0); $547 = +HEAPF32[$arrayidx736>>2]; $548 = $offset; $sub737 = $547 - $548; $cmp738 = $544 > $sub737; if ($cmp738) { $549 = $follow; $cond746 = $549; } else { $550 = $i; $551 = $nbEBands; $add742 = (($550) + ($551))|0; $arrayidx743 = (($vla422) + ($add742<<2)|0); $552 = +HEAPF32[$arrayidx743>>2]; $553 = $offset; $sub744 = $552 - $553; $cond746 = $sub744; } $follow = $cond746; } $554 = $follow; $555 = $frame_avg; $add748 = $555 + $554; $frame_avg = $add748; $556 = $i; $inc750 = (($556) + 1)|0; $i = $inc750; } $557 = $end; $558 = $start; $sub752 = (($557) - ($558))|0; $conv753 = (+($sub752|0)); $559 = $frame_avg; $div754 = $559 / $conv753; $frame_avg = $div754; $560 = $frame_avg; $561 = $st$addr; $spec_avg = ((($561)) + 240|0); $562 = +HEAPF32[$spec_avg>>2]; $sub755 = $560 - $562; $temporal_vbr = $sub755; $563 = $temporal_vbr; $cmp756 = -1.5 > $563; $564 = $temporal_vbr; $cond761 = $cmp756 ? -1.5 : $564; $cmp762 = 3.0 < $cond761; if ($cmp762) { $cond773 = 3.0; } else { $565 = $temporal_vbr; $cmp766 = -1.5 > $565; $566 = $temporal_vbr; $cond771 = $cmp766 ? -1.5 : $566; $cond773 = $cond771; } $temporal_vbr = $cond773; $567 = $temporal_vbr; $mul774 = 0.019999999552965164 * $567; $568 = $st$addr; $spec_avg775 = ((($568)) + 240|0); $569 = +HEAPF32[$spec_avg775>>2]; $add776 = $569 + $mul774; HEAPF32[$spec_avg775>>2] = $add776; } $570 = $secondMdct; $tobool778 = ($570|0)!=(0); if (!($tobool778)) { $571 = $C; $572 = $nbEBands; $mul780 = Math_imul($571, $572)|0; $mul781 = $mul780<<2; $sub$ptr$lhs$cast = $vla431; $sub$ptr$rhs$cast = $vla422; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $sub$ptr$div = (($sub$ptr$sub|0) / 4)&-1; $mul782 = 0; $add783 = (($mul781) + ($mul782))|0; _memcpy(($vla431|0),($vla422|0),($add783|0))|0; } $573 = $LM; $cmp785 = ($573|0)>(0); do { if ($cmp785) { $574 = $enc$addr; $call788 = (_ec_tell_54($574)|0); $add789 = (($call788) + 3)|0; $575 = $total_bits; $cmp790 = ($add789|0)>($575|0); $576 = $isTransient; $tobool793 = ($576|0)!=(0); $or$cond12 = $cmp790 | $tobool793; if ($or$cond12) { break; } $577 = $st$addr; $complexity795 = ((($577)) + 24|0); $578 = HEAP32[$complexity795>>2]|0; $cmp796 = ($578|0)>=(5); if (!($cmp796)) { break; } $579 = $st$addr; $lfe799 = ((($579)) + 64|0); $580 = HEAP32[$lfe799>>2]|0; $tobool800 = ($580|0)!=(0); $581 = $hybrid; $tobool802 = ($581|0)!=(0); $or$cond14 = $tobool800 | $tobool802; if ($or$cond14) { break; } $582 = $oldBandE; $583 = $nbEBands; $584 = $start; $585 = $end; $586 = $C; $call804 = (_patch_transient_decision($vla422,$582,$583,$584,$585,$586)|0); $tobool805 = ($call804|0)!=(0); if (!($tobool805)) { break; } $isTransient = 1; $587 = $M; $shortBlocks = $587; $588 = $mode; $589 = $shortBlocks; $590 = $C; $591 = $CC; $592 = $LM; $593 = $st$addr; $upsample807 = ((($593)) + 28|0); $594 = HEAP32[$upsample807>>2]|0; $595 = $st$addr; $arch808 = ((($595)) + 72|0); $596 = HEAP32[$arch808>>2]|0; _compute_mdcts($588,$589,$vla,$vla418,$590,$591,$592,$594,$596); $597 = $mode; $598 = $effEnd; $599 = $C; $600 = $LM; $601 = $st$addr; $arch809 = ((($601)) + 72|0); $602 = HEAP32[$arch809>>2]|0; _compute_band_energies($597,$vla418,$vla420,$598,$599,$600,$602); $603 = $mode; $604 = $effEnd; $605 = $end; $606 = $C; _amp2Log2($603,$604,$605,$vla420,$vla422,$606); $i = 0; while(1) { $607 = $i; $608 = $C; $609 = $nbEBands; $mul811 = Math_imul($608, $609)|0; $cmp812 = ($607|0)<($mul811|0); if (!($cmp812)) { break; } $610 = $LM; $conv815 = (+($610|0)); $mul816 = 0.5 * $conv815; $611 = $i; $arrayidx817 = (($vla431) + ($611<<2)|0); $612 = +HEAPF32[$arrayidx817>>2]; $add818 = $612 + $mul816; HEAPF32[$arrayidx817>>2] = $add818; $613 = $i; $inc820 = (($613) + 1)|0; $i = $inc820; } HEAPF32[$tf_estimate>>2] = 0.20000000298023224; } } while(0); $614 = $LM; $cmp824 = ($614|0)>(0); do { if ($cmp824) { $615 = $enc$addr; $call827 = (_ec_tell_54($615)|0); $add828 = (($call827) + 3)|0; $616 = $total_bits; $cmp829 = ($add828|0)<=($616|0); if (!($cmp829)) { break; } $617 = $enc$addr; $618 = $isTransient; _ec_enc_bit_logp($617,$618,3); } } while(0); $619 = $C; $620 = $N; $mul833 = Math_imul($619, $620)|0; $vla834$alloca_mul = $mul833<<2; $vla834 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla834$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla834$alloca_mul)|0)+15)&-16)|0);; $621 = $mode; $622 = $effEnd; $623 = $C; $624 = $M; _normalise_bands($621,$vla418,$vla834,$vla420,$622,$623,$624); $625 = $effectiveBytes; $626 = $C; $mul835 = ($626*15)|0; $cmp836 = ($625|0)<($mul835|0); $627 = $hybrid; $tobool839 = ($627|0)!=(0); $or$cond16 = $cmp836 | $tobool839; do { if ($or$cond16) { $632 = 0; } else { $628 = $st$addr; $complexity841 = ((($628)) + 24|0); $629 = HEAP32[$complexity841>>2]|0; $cmp842 = ($629|0)>=(2); if (!($cmp842)) { $632 = 0; break; } $630 = $st$addr; $lfe845 = ((($630)) + 64|0); $631 = HEAP32[$lfe845>>2]|0; $tobool846 = ($631|0)!=(0); $lnot847 = $tobool846 ^ 1; $632 = $lnot847; } } while(0); $land$ext850 = $632&1; $enable_tf_analysis = $land$ext850; $633 = $nbEBands; $vla851$alloca_mul = $633<<2; $vla851 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla851$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla851$alloca_mul)|0)+15)&-16)|0);; $634 = $nbEBands; $vla852$alloca_mul = $634<<2; $vla852 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla852$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla852$alloca_mul)|0)+15)&-16)|0);; $635 = $nbEBands; $vla853$alloca_mul = $635<<2; $vla853 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla853$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla853$alloca_mul)|0)+15)&-16)|0);; $636 = $nbEBands; $637 = $start; $638 = $end; $639 = $C; $640 = $st$addr; $lsb_depth854 = ((($640)) + 60|0); $641 = HEAP32[$lsb_depth854>>2]|0; $642 = $mode; $logN = ((($642)) + 56|0); $643 = HEAP32[$logN>>2]|0; $644 = $isTransient; $645 = $st$addr; $vbr855 = ((($645)) + 44|0); $646 = HEAP32[$vbr855>>2]|0; $647 = $st$addr; $constrained_vbr856 = ((($647)) + 52|0); $648 = HEAP32[$constrained_vbr856>>2]|0; $649 = $eBands; $650 = $LM; $651 = $effectiveBytes; $652 = $st$addr; $lfe857 = ((($652)) + 64|0); $653 = HEAP32[$lfe857>>2]|0; $654 = $st$addr; $analysis858 = ((($654)) + 120|0); $call859 = (+_dynalloc_analysis($vla422,$vla431,$636,$637,$638,$639,$vla851,$641,$643,$644,$646,$648,$649,$650,$651,$tot_boost,$653,$vla492,$analysis858,$vla852,$vla853)); $maxDepth = $call859; $655 = $nbEBands; $vla860$alloca_mul = $655<<2; $vla860 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla860$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla860$alloca_mul)|0)+15)&-16)|0);; $656 = $enable_tf_analysis; $tobool861 = ($656|0)!=(0); L259: do { if ($tobool861) { $657 = $effectiveBytes; $div863 = (20480 / ($657|0))&-1; $add864 = (($div863) + 2)|0; $cmp865 = (80)>($add864|0); if ($cmp865) { $cond872 = 80; } else { $658 = $effectiveBytes; $div869 = (20480 / ($658|0))&-1; $add870 = (($div869) + 2)|0; $cond872 = $add870; } $lambda = $cond872; $659 = $mode; $660 = $effEnd; $661 = $isTransient; $662 = $lambda; $663 = $N; $664 = $LM; $665 = +HEAPF32[$tf_estimate>>2]; $666 = HEAP32[$tf_chan>>2]|0; $call873 = (_tf_analysis($659,$660,$661,$vla860,$662,$vla834,$663,$664,$665,$666,$vla852)|0); $tf_select = $call873; $667 = $effEnd; $i = $667; while(1) { $668 = $i; $669 = $end; $cmp875 = ($668|0)<($669|0); if (!($cmp875)) { break L259; } $670 = $effEnd; $sub878 = (($670) - 1)|0; $arrayidx879 = (($vla860) + ($sub878<<2)|0); $671 = HEAP32[$arrayidx879>>2]|0; $672 = $i; $arrayidx880 = (($vla860) + ($672<<2)|0); HEAP32[$arrayidx880>>2] = $671; $673 = $i; $inc882 = (($673) + 1)|0; $i = $inc882; } } else { $674 = $hybrid; $tobool885 = ($674|0)!=(0); $675 = HEAP32[$weak_transient>>2]|0; $tobool887 = ($675|0)!=(0); $or$cond18 = $tobool885 & $tobool887; if ($or$cond18) { $i = 0; while(1) { $676 = $i; $677 = $end; $cmp890 = ($676|0)<($677|0); if (!($cmp890)) { break; } $678 = $i; $arrayidx893 = (($vla860) + ($678<<2)|0); HEAP32[$arrayidx893>>2] = 1; $679 = $i; $inc895 = (($679) + 1)|0; $i = $inc895; } $tf_select = 0; break; } $680 = $hybrid; $tobool898 = ($680|0)!=(0); $681 = $effectiveBytes; $cmp900 = ($681|0)<(15); $or$cond20 = $tobool898 & $cmp900; do { if ($or$cond20) { $682 = $st$addr; $silk_info903 = ((($682)) + 184|0); $683 = HEAP32[$silk_info903>>2]|0; $cmp905 = ($683|0)!=(2); if (!($cmp905)) { break; } $i = 0; while(1) { $684 = $i; $685 = $end; $cmp909 = ($684|0)<($685|0); if (!($cmp909)) { break; } $686 = $i; $arrayidx912 = (($vla860) + ($686<<2)|0); HEAP32[$arrayidx912>>2] = 0; $687 = $i; $inc914 = (($687) + 1)|0; $i = $inc914; } $688 = $isTransient; $tf_select = $688; break L259; } } while(0); $i = 0; while(1) { $689 = $i; $690 = $end; $cmp918 = ($689|0)<($690|0); if (!($cmp918)) { break; } $691 = $isTransient; $692 = $i; $arrayidx921 = (($vla860) + ($692<<2)|0); HEAP32[$arrayidx921>>2] = $691; $693 = $i; $inc923 = (($693) + 1)|0; $i = $inc923; } $tf_select = 0; } } while(0); $694 = $C; $695 = $nbEBands; $mul928 = Math_imul($694, $695)|0; $vla929$alloca_mul = $mul928<<2; $vla929 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla929$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla929$alloca_mul)|0)+15)&-16)|0);; $c = 0; while(1) { $696 = $start; $i = $696; while(1) { $697 = $i; $698 = $end; $cmp932 = ($697|0)<($698|0); if (!($cmp932)) { break; } $699 = $i; $700 = $c; $701 = $nbEBands; $mul935 = Math_imul($700, $701)|0; $add936 = (($699) + ($mul935))|0; $arrayidx937 = (($vla422) + ($add936<<2)|0); $702 = +HEAPF32[$arrayidx937>>2]; $703 = $oldBandE; $704 = $i; $705 = $c; $706 = $nbEBands; $mul938 = Math_imul($705, $706)|0; $add939 = (($704) + ($mul938))|0; $arrayidx940 = (($703) + ($add939<<2)|0); $707 = +HEAPF32[$arrayidx940>>2]; $sub941 = $702 - $707; $conv942 = $sub941; $call943 = (+Math_abs((+$conv942))); $conv944 = $call943; $cmp945 = $conv944 < 2.0; if ($cmp945) { $708 = $energyError; $709 = $i; $710 = $c; $711 = $nbEBands; $mul948 = Math_imul($710, $711)|0; $add949 = (($709) + ($mul948))|0; $arrayidx950 = (($708) + ($add949<<2)|0); $712 = +HEAPF32[$arrayidx950>>2]; $mul951 = $712 * 0.25; $713 = $i; $714 = $c; $715 = $nbEBands; $mul952 = Math_imul($714, $715)|0; $add953 = (($713) + ($mul952))|0; $arrayidx954 = (($vla422) + ($add953<<2)|0); $716 = +HEAPF32[$arrayidx954>>2]; $sub955 = $716 - $mul951; HEAPF32[$arrayidx954>>2] = $sub955; } $717 = $i; $inc958 = (($717) + 1)|0; $i = $inc958; } $718 = $c; $inc961 = (($718) + 1)|0; $c = $inc961; $719 = $C; $cmp962 = ($inc961|0)<($719|0); if (!($cmp962)) { break; } } $720 = $mode; $721 = $start; $722 = $end; $723 = $effEnd; $724 = $oldBandE; $725 = $total_bits; $726 = $enc$addr; $727 = $C; $728 = $LM; $729 = $nbAvailableBytes; $730 = $st$addr; $force_intra = ((($730)) + 12|0); $731 = HEAP32[$force_intra>>2]|0; $732 = $st$addr; $delayedIntra = ((($732)) + 84|0); $733 = $st$addr; $complexity965 = ((($733)) + 24|0); $734 = HEAP32[$complexity965>>2]|0; $cmp966 = ($734|0)>=(4); $conv967 = $cmp966&1; $735 = $st$addr; $loss_rate = ((($735)) + 56|0); $736 = HEAP32[$loss_rate>>2]|0; $737 = $st$addr; $lfe968 = ((($737)) + 64|0); $738 = HEAP32[$lfe968>>2]|0; _quant_coarse_energy($720,$721,$722,$723,$vla422,$724,$725,$vla929,$726,$727,$728,$729,$731,$delayedIntra,$conv967,$736,$738); $739 = $start; $740 = $end; $741 = $isTransient; $742 = $LM; $743 = $tf_select; $744 = $enc$addr; _tf_encode($739,$740,$741,$vla860,$742,$743,$744); $745 = $enc$addr; $call969 = (_ec_tell_54($745)|0); $add970 = (($call969) + 4)|0; $746 = $total_bits; $cmp971 = ($add970|0)<=($746|0); if ($cmp971) { $747 = $st$addr; $lfe974 = ((($747)) + 64|0); $748 = HEAP32[$lfe974>>2]|0; $tobool975 = ($748|0)!=(0); L300: do { if ($tobool975) { $749 = $st$addr; $tapset_decision977 = ((($749)) + 100|0); HEAP32[$tapset_decision977>>2] = 0; $750 = $st$addr; $spread_decision = ((($750)) + 80|0); HEAP32[$spread_decision>>2] = 2; } else { $751 = $hybrid; $tobool979 = ($751|0)!=(0); if ($tobool979) { $752 = $st$addr; $complexity981 = ((($752)) + 24|0); $753 = HEAP32[$complexity981>>2]|0; $cmp982 = ($753|0)==(0); if ($cmp982) { $754 = $st$addr; $spread_decision985 = ((($754)) + 80|0); HEAP32[$spread_decision985>>2] = 0; break; } else { $755 = $isTransient; $tobool987 = ($755|0)!=(0); $756 = $st$addr; $spread_decision989 = ((($756)) + 80|0); $$sink = $tobool987 ? 2 : 3; HEAP32[$spread_decision989>>2] = $$sink; break; } } $757 = $shortBlocks; $tobool995 = ($757|0)!=(0); do { if (!($tobool995)) { $758 = $st$addr; $complexity997 = ((($758)) + 24|0); $759 = HEAP32[$complexity997>>2]|0; $cmp998 = ($759|0)<(3); if ($cmp998) { break; } $760 = $nbAvailableBytes; $761 = $C; $mul1001 = ($761*10)|0; $cmp1002 = ($760|0)<($mul1001|0); if ($cmp1002) { break; } $765 = $mode; $766 = $st$addr; $tonal_average = ((($766)) + 88|0); $767 = $st$addr; $spread_decision1014 = ((($767)) + 80|0); $768 = HEAP32[$spread_decision1014>>2]|0; $769 = $st$addr; $hf_average = ((($769)) + 96|0); $770 = $st$addr; $tapset_decision1015 = ((($770)) + 100|0); $771 = $pf_on; $tobool1016 = ($771|0)!=(0); if ($tobool1016) { $772 = $shortBlocks; $tobool1018 = ($772|0)!=(0); $lnot1019 = $tobool1018 ^ 1; $773 = $lnot1019; } else { $773 = 0; } $land$ext1022 = $773&1; $774 = $effEnd; $775 = $C; $776 = $M; $call1023 = (_spreading_decision($765,$vla834,$tonal_average,$768,$hf_average,$tapset_decision1015,$land$ext1022,$774,$775,$776,$vla853)|0); $777 = $st$addr; $spread_decision1024 = ((($777)) + 80|0); HEAP32[$spread_decision1024>>2] = $call1023; break L300; } } while(0); $762 = $st$addr; $complexity1005 = ((($762)) + 24|0); $763 = HEAP32[$complexity1005>>2]|0; $cmp1006 = ($763|0)==(0); $764 = $st$addr; $spread_decision1009 = ((($764)) + 80|0); $$sink21 = $cmp1006 ? 0 : 2; HEAP32[$spread_decision1009>>2] = $$sink21; } } while(0); $778 = $enc$addr; $779 = $st$addr; $spread_decision1028 = ((($779)) + 80|0); $780 = HEAP32[$spread_decision1028>>2]|0; _ec_enc_icdf($778,$780,30942,5); } $781 = $st$addr; $lfe1030 = ((($781)) + 64|0); $782 = HEAP32[$lfe1030>>2]|0; $tobool1031 = ($782|0)!=(0); if ($tobool1031) { $783 = $effectiveBytes; $div1033 = (($783|0) / 3)&-1; $cmp1034 = (8)<($div1033|0); if ($cmp1034) { $cond1040 = 8; } else { $784 = $effectiveBytes; $div1038 = (($784|0) / 3)&-1; $cond1040 = $div1038; } HEAP32[$vla851>>2] = $cond1040; } $785 = $nbEBands; $vla1043$alloca_mul = $785<<2; $vla1043 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla1043$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla1043$alloca_mul)|0)+15)&-16)|0);; $786 = $mode; $787 = $LM; $788 = $C; _init_caps($786,$vla1043,$787,$788); $dynalloc_logp = 6; $789 = $total_bits; $shl1044 = $789 << 3; $total_bits = $shl1044; $total_boost = 0; $790 = $enc$addr; $call1045 = (_ec_tell_frac($790)|0); $tell = $call1045; $791 = $start; $i = $791; while(1) { $792 = $i; $793 = $end; $cmp1047 = ($792|0)<($793|0); $794 = $C; if (!($cmp1047)) { break; } $795 = $eBands; $796 = $i; $add1050 = (($796) + 1)|0; $arrayidx1051 = (($795) + ($add1050<<1)|0); $797 = HEAP16[$arrayidx1051>>1]|0; $conv1052 = $797 << 16 >> 16; $798 = $eBands; $799 = $i; $arrayidx1053 = (($798) + ($799<<1)|0); $800 = HEAP16[$arrayidx1053>>1]|0; $conv1054 = $800 << 16 >> 16; $sub1055 = (($conv1052) - ($conv1054))|0; $mul1056 = Math_imul($794, $sub1055)|0; $801 = $LM; $shl1057 = $mul1056 << $801; $width = $shl1057; $802 = $width; $shl1058 = $802 << 3; $803 = $width; $cmp1059 = (48)>($803|0); $804 = $width; $cond1064 = $cmp1059 ? 48 : $804; $cmp1065 = ($shl1058|0)<($cond1064|0); $805 = $width; if ($cmp1065) { $shl1068 = $805 << 3; $cond1077 = $shl1068; } else { $cmp1070 = (48)>($805|0); $806 = $width; $cond1075 = $cmp1070 ? 48 : $806; $cond1077 = $cond1075; } $quanta = $cond1077; $807 = $dynalloc_logp; $dynalloc_loop_logp = $807; $boost = 0; $j = 0; while(1) { $808 = $tell; $809 = $dynalloc_loop_logp; $shl1079 = $809 << 3; $add1080 = (($808) + ($shl1079))|0; $810 = $total_bits; $811 = $total_boost; $sub1081 = (($810) - ($811))|0; $cmp1082 = ($add1080|0)<($sub1081|0); if (!($cmp1082)) { break; } $812 = $boost; $813 = $i; $arrayidx1085 = (($vla1043) + ($813<<2)|0); $814 = HEAP32[$arrayidx1085>>2]|0; $cmp1086 = ($812|0)<($814|0); if (!($cmp1086)) { break; } $815 = $j; $816 = $i; $arrayidx1091 = (($vla851) + ($816<<2)|0); $817 = HEAP32[$arrayidx1091>>2]|0; $cmp1092 = ($815|0)<($817|0); $conv1093 = $cmp1092&1; $flag = $conv1093; $818 = $enc$addr; $819 = $flag; $820 = $dynalloc_loop_logp; _ec_enc_bit_logp($818,$819,$820); $821 = $enc$addr; $call1094 = (_ec_tell_frac($821)|0); $tell = $call1094; $822 = $flag; $tobool1095 = ($822|0)!=(0); if (!($tobool1095)) { break; } $823 = $quanta; $824 = $boost; $add1098 = (($824) + ($823))|0; $boost = $add1098; $825 = $quanta; $826 = $total_boost; $add1099 = (($826) + ($825))|0; $total_boost = $add1099; $dynalloc_loop_logp = 1; $827 = $j; $inc1101 = (($827) + 1)|0; $j = $inc1101; } $828 = $j; $tobool1103 = ($828|0)!=(0); if ($tobool1103) { $829 = $dynalloc_logp; $sub1105 = (($829) - 1)|0; $cmp1106 = (2)>($sub1105|0); $830 = $dynalloc_logp; $sub1110 = (($830) - 1)|0; $cond1112 = $cmp1106 ? 2 : $sub1110; $dynalloc_logp = $cond1112; } $831 = $boost; $832 = $i; $arrayidx1114 = (($vla851) + ($832<<2)|0); HEAP32[$arrayidx1114>>2] = $831; $833 = $i; $inc1116 = (($833) + 1)|0; $i = $inc1116; } $cmp1118 = ($794|0)==(2); if ($cmp1118) { $834 = $LM; $cmp1121 = ($834|0)!=(0); if ($cmp1121) { $835 = $mode; $836 = $LM; $837 = $N; $call1124 = (_stereo_analysis($835,$vla834,$836,$837)|0); HEAP32[$dual_stereo>>2] = $call1124; } $838 = $equiv_rate; $div1126 = (($838|0) / 1000)&-1; $conv1127 = (+($div1126|0)); $839 = $st$addr; $intensity = ((($839)) + 232|0); $840 = HEAP32[$intensity>>2]|0; $call1128 = (_hysteresis_decision($conv1127,2860,2944,21,$840)|0); $841 = $st$addr; $intensity1129 = ((($841)) + 232|0); HEAP32[$intensity1129>>2] = $call1128; $842 = $end; $843 = $start; $844 = $st$addr; $intensity1130 = ((($844)) + 232|0); $845 = HEAP32[$intensity1130>>2]|0; $cmp1131 = ($843|0)>($845|0); if ($cmp1131) { $846 = $start; $cond1137 = $846; } else { $847 = $st$addr; $intensity1135 = ((($847)) + 232|0); $848 = HEAP32[$intensity1135>>2]|0; $cond1137 = $848; } $cmp1138 = ($842|0)<($cond1137|0); do { if ($cmp1138) { $849 = $end; $cond1151 = $849; } else { $850 = $start; $851 = $st$addr; $intensity1142 = ((($851)) + 232|0); $852 = HEAP32[$intensity1142>>2]|0; $cmp1143 = ($850|0)>($852|0); if ($cmp1143) { $853 = $start; $cond1151 = $853; break; } else { $854 = $st$addr; $intensity1147 = ((($854)) + 232|0); $855 = HEAP32[$intensity1147>>2]|0; $cond1151 = $855; break; } } } while(0); $856 = $st$addr; $intensity1152 = ((($856)) + 232|0); HEAP32[$intensity1152>>2] = $cond1151; } $alloc_trim = 5; $857 = $tell; $add1154 = (($857) + 48)|0; $858 = $total_bits; $859 = $total_boost; $sub1155 = (($858) - ($859))|0; $cmp1156 = ($add1154|0)<=($sub1155|0); if ($cmp1156) { $860 = $start; $cmp1159 = ($860|0)>(0); do { if ($cmp1159) { label = 259; } else { $861 = $st$addr; $lfe1162 = ((($861)) + 64|0); $862 = HEAP32[$lfe1162>>2]|0; $tobool1163 = ($862|0)!=(0); if ($tobool1163) { label = 259; break; } $864 = $mode; $865 = $end; $866 = $LM; $867 = $C; $868 = $N; $869 = $st$addr; $analysis1166 = ((($869)) + 120|0); $870 = $st$addr; $stereo_saving1167 = ((($870)) + 228|0); $871 = +HEAPF32[$tf_estimate>>2]; $872 = $st$addr; $intensity1168 = ((($872)) + 232|0); $873 = HEAP32[$intensity1168>>2]|0; $874 = $surround_trim; $875 = $equiv_rate; $876 = $st$addr; $arch1169 = ((($876)) + 72|0); $877 = HEAP32[$arch1169>>2]|0; $call1170 = (_alloc_trim_analysis($864,$vla834,$vla422,$865,$866,$867,$868,$analysis1166,$stereo_saving1167,$871,$873,$874,$875,$877)|0); $alloc_trim = $call1170; } } while(0); if ((label|0) == 259) { $863 = $st$addr; $stereo_saving = ((($863)) + 228|0); HEAPF32[$stereo_saving>>2] = 0.0; $alloc_trim = 5; } $878 = $enc$addr; $879 = $alloc_trim; _ec_enc_icdf($878,$879,30946,7); $880 = $enc$addr; $call1172 = (_ec_tell_frac($880)|0); $tell = $call1172; } $881 = $vbr_rate; $cmp1174 = ($881|0)>(0); if ($cmp1174) { $882 = $mode; $maxLM1177 = ((($882)) + 36|0); $883 = HEAP32[$maxLM1177>>2]|0; $884 = $LM; $sub1178 = (($883) - ($884))|0; $lm_diff = $sub1178; $885 = $nbCompressedBytes$addr; $886 = $LM; $sub1179 = (3 - ($886))|0; $shr1180 = 1275 >> $sub1179; $cmp1181 = ($885|0)<($shr1180|0); if ($cmp1181) { $887 = $nbCompressedBytes$addr; $cond1188 = $887; } else { $888 = $LM; $sub1185 = (3 - ($888))|0; $shr1186 = 1275 >> $sub1185; $cond1188 = $shr1186; } $nbCompressedBytes$addr = $cond1188; $889 = $hybrid; $tobool1189 = ($889|0)!=(0); $890 = $vbr_rate; $891 = $C; if ($tobool1189) { $mul1196 = ($891*9)|0; $add1197 = (($mul1196) + 4)|0; $shl1198 = $add1197 << 3; $sub1199 = (($890) - ($shl1198))|0; $cmp1200 = (0)>($sub1199|0); if ($cmp1200) { $cond1209 = 0; } else { $892 = $vbr_rate; $893 = $C; $mul1204 = ($893*9)|0; $add1205 = (($mul1204) + 4)|0; $shl1206 = $add1205 << 3; $sub1207 = (($892) - ($shl1206))|0; $cond1209 = $sub1207; } $base_target = $cond1209; } else { $mul1191 = ($891*40)|0; $add1192 = (($mul1191) + 20)|0; $shl1193 = $add1192 << 3; $sub1194 = (($890) - ($shl1193))|0; $base_target = $sub1194; } $894 = $st$addr; $constrained_vbr1211 = ((($894)) + 52|0); $895 = HEAP32[$constrained_vbr1211>>2]|0; $tobool1212 = ($895|0)!=(0); if ($tobool1212) { $896 = $st$addr; $vbr_offset = ((($896)) + 216|0); $897 = HEAP32[$vbr_offset>>2]|0; $898 = $lm_diff; $shr1214 = $897 >> $898; $899 = $base_target; $add1215 = (($899) + ($shr1214))|0; $base_target = $add1215; } $900 = $hybrid; $tobool1217 = ($900|0)!=(0); do { if ($tobool1217) { $925 = $base_target; $target = $925; $926 = $st$addr; $silk_info1230 = ((($926)) + 184|0); $offset1231 = ((($silk_info1230)) + 4|0); $927 = HEAP32[$offset1231>>2]|0; $cmp1232 = ($927|0)<(100); if ($cmp1232) { $928 = $LM; $sub1235 = (3 - ($928))|0; $shr1236 = 96 >> $sub1235; $929 = $target; $add1237 = (($929) + ($shr1236))|0; $target = $add1237; } $930 = $st$addr; $silk_info1239 = ((($930)) + 184|0); $offset1240 = ((($silk_info1239)) + 4|0); $931 = HEAP32[$offset1240>>2]|0; $cmp1241 = ($931|0)>(100); if ($cmp1241) { $932 = $LM; $sub1244 = (3 - ($932))|0; $shr1245 = 144 >> $sub1244; $933 = $target; $sub1246 = (($933) - ($shr1245))|0; $target = $sub1246; } $934 = +HEAPF32[$tf_estimate>>2]; $sub1248 = $934 - 0.25; $mul1249 = $sub1248 * 400.0; $conv1250 = (~~(($mul1249))); $935 = $target; $add1251 = (($935) + ($conv1250))|0; $target = $add1251; $936 = +HEAPF32[$tf_estimate>>2]; $cmp1252 = $936 > 0.69999998807907104; if (!($cmp1252)) { break; } $937 = $target; $cmp1255 = ($937|0)>(400); $938 = $target; $cond1260 = $cmp1255 ? $938 : 400; $target = $cond1260; } else { $901 = $mode; $902 = $st$addr; $analysis1219 = ((($902)) + 120|0); $903 = $base_target; $904 = $LM; $905 = $equiv_rate; $906 = $st$addr; $lastCodedBands1220 = ((($906)) + 92|0); $907 = HEAP32[$lastCodedBands1220>>2]|0; $908 = $C; $909 = $st$addr; $intensity1221 = ((($909)) + 232|0); $910 = HEAP32[$intensity1221>>2]|0; $911 = $st$addr; $constrained_vbr1222 = ((($911)) + 52|0); $912 = HEAP32[$constrained_vbr1222>>2]|0; $913 = $st$addr; $stereo_saving1223 = ((($913)) + 228|0); $914 = +HEAPF32[$stereo_saving1223>>2]; $915 = HEAP32[$tot_boost>>2]|0; $916 = +HEAPF32[$tf_estimate>>2]; $917 = $pitch_change; $918 = $maxDepth; $919 = $st$addr; $lfe1224 = ((($919)) + 64|0); $920 = HEAP32[$lfe1224>>2]|0; $921 = $st$addr; $energy_mask1225 = ((($921)) + 236|0); $922 = HEAP32[$energy_mask1225>>2]|0; $cmp1226 = ($922|0)!=(0|0); $conv1227 = $cmp1226&1; $923 = $surround_masking; $924 = $temporal_vbr; $call1228 = (_compute_vbr($901,$analysis1219,$903,$904,$905,$907,$908,$910,$912,$914,$915,$916,$917,$918,$920,$conv1227,$923,$924)|0); $target = $call1228; } } while(0); $939 = $target; $940 = $tell; $add1263 = (($939) + ($940))|0; $target = $add1263; $941 = $tell; $942 = $total_boost; $add1264 = (($941) + ($942))|0; $add1265 = (($add1264) + 64)|0; $sub1266 = (($add1265) - 1)|0; $shr1267 = $sub1266 >> 6; $add1268 = (($shr1267) + 2)|0; $min_allowed = $add1268; $943 = $hybrid; $tobool1269 = ($943|0)!=(0); if ($tobool1269) { $944 = $min_allowed; $945 = $tell0_frac; $add1271 = (($945) + 296)|0; $946 = $total_boost; $add1272 = (($add1271) + ($946))|0; $add1273 = (($add1272) + 64)|0; $sub1274 = (($add1273) - 1)|0; $shr1275 = $sub1274 >> 6; $cmp1276 = ($944|0)>($shr1275|0); if ($cmp1276) { $947 = $min_allowed; $cond1286 = $947; } else { $948 = $tell0_frac; $add1280 = (($948) + 296)|0; $949 = $total_boost; $add1281 = (($add1280) + ($949))|0; $add1282 = (($add1281) + 64)|0; $sub1283 = (($add1282) - 1)|0; $shr1284 = $sub1283 >> 6; $cond1286 = $shr1284; } $min_allowed = $cond1286; } $950 = $target; $add1288 = (($950) + 32)|0; $shr1289 = $add1288 >> 6; $nbAvailableBytes = $shr1289; $951 = $min_allowed; $952 = $nbAvailableBytes; $cmp1290 = ($951|0)>($952|0); $953 = $min_allowed; $954 = $nbAvailableBytes; $cond1295 = $cmp1290 ? $953 : $954; $nbAvailableBytes = $cond1295; $955 = $nbCompressedBytes$addr; $956 = $nbAvailableBytes; $cmp1296 = ($955|0)<($956|0); $957 = $nbCompressedBytes$addr; $958 = $nbAvailableBytes; $cond1301 = $cmp1296 ? $957 : $958; $nbAvailableBytes = $cond1301; $959 = $target; $960 = $vbr_rate; $sub1302 = (($959) - ($960))|0; $delta = $sub1302; $961 = $nbAvailableBytes; $shl1303 = $961 << 6; $target = $shl1303; $962 = $silence; $tobool1304 = ($962|0)!=(0); if ($tobool1304) { $nbAvailableBytes = 2; $target = 128; $delta = 0; } $963 = $st$addr; $vbr_count = ((($963)) + 220|0); $964 = HEAP32[$vbr_count>>2]|0; $cmp1307 = ($964|0)<(970); if ($cmp1307) { $965 = $st$addr; $vbr_count1310 = ((($965)) + 220|0); $966 = HEAP32[$vbr_count1310>>2]|0; $inc1311 = (($966) + 1)|0; HEAP32[$vbr_count1310>>2] = $inc1311; $967 = $st$addr; $vbr_count1312 = ((($967)) + 220|0); $968 = HEAP32[$vbr_count1312>>2]|0; $add1313 = (($968) + 20)|0; $conv1314 = (+($add1313|0)); $div1315 = 1.0 / $conv1314; $alpha = $div1315; } else { $alpha = 0.0010000000474974513; } $969 = $st$addr; $constrained_vbr1318 = ((($969)) + 52|0); $970 = HEAP32[$constrained_vbr1318>>2]|0; $tobool1319 = ($970|0)!=(0); if ($tobool1319) { $971 = $target; $972 = $vbr_rate; $sub1321 = (($971) - ($972))|0; $973 = $st$addr; $vbr_reservoir1322 = ((($973)) + 208|0); $974 = HEAP32[$vbr_reservoir1322>>2]|0; $add1323 = (($974) + ($sub1321))|0; HEAP32[$vbr_reservoir1322>>2] = $add1323; } $975 = $st$addr; $constrained_vbr1325 = ((($975)) + 52|0); $976 = HEAP32[$constrained_vbr1325>>2]|0; $tobool1326 = ($976|0)!=(0); if ($tobool1326) { $977 = $alpha; $978 = $delta; $979 = $lm_diff; $shl1328 = 1 << $979; $mul1329 = Math_imul($978, $shl1328)|0; $980 = $st$addr; $vbr_offset1330 = ((($980)) + 216|0); $981 = HEAP32[$vbr_offset1330>>2]|0; $sub1331 = (($mul1329) - ($981))|0; $982 = $st$addr; $vbr_drift = ((($982)) + 212|0); $983 = HEAP32[$vbr_drift>>2]|0; $sub1332 = (($sub1331) - ($983))|0; $conv1333 = (+($sub1332|0)); $mul1334 = $977 * $conv1333; $conv1335 = (~~(($mul1334))); $984 = $st$addr; $vbr_drift1336 = ((($984)) + 212|0); $985 = HEAP32[$vbr_drift1336>>2]|0; $add1337 = (($985) + ($conv1335))|0; HEAP32[$vbr_drift1336>>2] = $add1337; $986 = $st$addr; $vbr_drift1338 = ((($986)) + 212|0); $987 = HEAP32[$vbr_drift1338>>2]|0; $sub1339 = (0 - ($987))|0; $988 = $st$addr; $vbr_offset1340 = ((($988)) + 216|0); HEAP32[$vbr_offset1340>>2] = $sub1339; } $989 = $st$addr; $constrained_vbr1342 = ((($989)) + 52|0); $990 = HEAP32[$constrained_vbr1342>>2]|0; $tobool1343 = ($990|0)!=(0); do { if ($tobool1343) { $991 = $st$addr; $vbr_reservoir1345 = ((($991)) + 208|0); $992 = HEAP32[$vbr_reservoir1345>>2]|0; $cmp1346 = ($992|0)<(0); if (!($cmp1346)) { break; } $993 = $st$addr; $vbr_reservoir1349 = ((($993)) + 208|0); $994 = HEAP32[$vbr_reservoir1349>>2]|0; $sub1350 = (0 - ($994))|0; $div1351 = (($sub1350|0) / 64)&-1; $adjust = $div1351; $995 = $silence; $tobool1352 = ($995|0)!=(0); $996 = $adjust; $cond1356 = $tobool1352 ? 0 : $996; $997 = $nbAvailableBytes; $add1357 = (($997) + ($cond1356))|0; $nbAvailableBytes = $add1357; $998 = $st$addr; $vbr_reservoir1358 = ((($998)) + 208|0); HEAP32[$vbr_reservoir1358>>2] = 0; } } while(0); $999 = $nbCompressedBytes$addr; $1000 = $nbAvailableBytes; $cmp1360 = ($999|0)<($1000|0); $1001 = $nbCompressedBytes$addr; $1002 = $nbAvailableBytes; $cond1365 = $cmp1360 ? $1001 : $1002; $nbCompressedBytes$addr = $cond1365; $1003 = $enc$addr; $1004 = $nbCompressedBytes$addr; _ec_enc_shrink($1003,$1004); } $1005 = $nbEBands; $vla1367$alloca_mul = $1005<<2; $vla1367 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla1367$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla1367$alloca_mul)|0)+15)&-16)|0);; $1006 = $nbEBands; $vla1368$alloca_mul = $1006<<2; $vla1368 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla1368$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla1368$alloca_mul)|0)+15)&-16)|0);; $1007 = $nbEBands; $vla1369$alloca_mul = $1007<<2; $vla1369 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla1369$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla1369$alloca_mul)|0)+15)&-16)|0);; $1008 = $nbCompressedBytes$addr; $mul1370 = $1008<<3; $shl1371 = $mul1370 << 3; $1009 = $enc$addr; $call1372 = (_ec_tell_frac($1009)|0); $sub1373 = (($shl1371) - ($call1372))|0; $sub1374 = (($sub1373) - 1)|0; $bits = $sub1374; $1010 = $isTransient; $tobool1375 = ($1010|0)!=(0); $1011 = $LM; $cmp1377 = ($1011|0)>=(2); $or$cond23 = $tobool1375 & $cmp1377; if ($or$cond23) { $1012 = $bits; $1013 = $LM; $add1380 = (($1013) + 2)|0; $shl1381 = $add1380 << 3; $cmp1382 = ($1012|0)>=($shl1381|0); $1014 = $cmp1382; } else { $1014 = 0; } $cond1386 = $1014 ? 8 : 0; $anti_collapse_rsv = $cond1386; $1015 = $anti_collapse_rsv; $1016 = $bits; $sub1387 = (($1016) - ($1015))|0; $bits = $sub1387; $1017 = $end; $sub1388 = (($1017) - 1)|0; $signalBandwidth = $sub1388; $1018 = $st$addr; $analysis1389 = ((($1018)) + 120|0); $1019 = HEAP32[$analysis1389>>2]|0; $tobool1391 = ($1019|0)!=(0); if ($tobool1391) { $1020 = $equiv_rate; $1021 = $C; $mul1393 = ($1021*32000)|0; $cmp1394 = ($1020|0)<($mul1393|0); do { if ($cmp1394) { $min_bandwidth = 13; } else { $1022 = $equiv_rate; $1023 = $C; $mul1398 = ($1023*48000)|0; $cmp1399 = ($1022|0)<($mul1398|0); if ($cmp1399) { $min_bandwidth = 16; break; } $1024 = $equiv_rate; $1025 = $C; $mul1403 = ($1025*60000)|0; $cmp1404 = ($1024|0)<($mul1403|0); if ($cmp1404) { $min_bandwidth = 18; break; } $1026 = $equiv_rate; $1027 = $C; $mul1408 = ($1027*80000)|0; $cmp1409 = ($1026|0)<($mul1408|0); if ($cmp1409) { $min_bandwidth = 19; break; } else { $min_bandwidth = 20; break; } } } while(0); $1028 = $st$addr; $analysis1417 = ((($1028)) + 120|0); $bandwidth = ((($analysis1417)) + 32|0); $1029 = HEAP32[$bandwidth>>2]|0; $1030 = $min_bandwidth; $cmp1418 = ($1029|0)>($1030|0); if ($cmp1418) { $1031 = $st$addr; $analysis1421 = ((($1031)) + 120|0); $bandwidth1422 = ((($analysis1421)) + 32|0); $1032 = HEAP32[$bandwidth1422>>2]|0; $cond1425 = $1032; } else { $1033 = $min_bandwidth; $cond1425 = $1033; } $signalBandwidth = $cond1425; } $1034 = $st$addr; $lfe1427 = ((($1034)) + 64|0); $1035 = HEAP32[$lfe1427>>2]|0; $tobool1428 = ($1035|0)!=(0); if ($tobool1428) { $signalBandwidth = 1; } $1036 = $mode; $1037 = $start; $1038 = $end; $1039 = $alloc_trim; $1040 = $st$addr; $intensity1431 = ((($1040)) + 232|0); $1041 = $bits; $1042 = $C; $1043 = $LM; $1044 = $enc$addr; $1045 = $st$addr; $lastCodedBands1432 = ((($1045)) + 92|0); $1046 = HEAP32[$lastCodedBands1432>>2]|0; $1047 = $signalBandwidth; $call1433 = (_compute_allocation($1036,$1037,$1038,$vla851,$vla1043,$1039,$intensity1431,$dual_stereo,$1041,$balance,$vla1368,$vla1367,$vla1369,$1042,$1043,$1044,1,$1046,$1047)|0); $codedBands = $call1433; $1048 = $st$addr; $lastCodedBands1434 = ((($1048)) + 92|0); $1049 = HEAP32[$lastCodedBands1434>>2]|0; $tobool1435 = ($1049|0)!=(0); if ($tobool1435) { $1050 = $st$addr; $lastCodedBands1437 = ((($1050)) + 92|0); $1051 = HEAP32[$lastCodedBands1437>>2]|0; $add1438 = (($1051) + 1)|0; $1052 = $st$addr; $lastCodedBands1439 = ((($1052)) + 92|0); $1053 = HEAP32[$lastCodedBands1439>>2]|0; $sub1440 = (($1053) - 1)|0; $1054 = $codedBands; $cmp1441 = ($sub1440|0)>($1054|0); if ($cmp1441) { $1055 = $st$addr; $lastCodedBands1444 = ((($1055)) + 92|0); $1056 = HEAP32[$lastCodedBands1444>>2]|0; $sub1445 = (($1056) - 1)|0; $cond1448 = $sub1445; } else { $1057 = $codedBands; $cond1448 = $1057; } $cmp1449 = ($add1438|0)<($cond1448|0); $1058 = $st$addr; $lastCodedBands1452 = ((($1058)) + 92|0); $1059 = HEAP32[$lastCodedBands1452>>2]|0; do { if ($cmp1449) { $add1453 = (($1059) + 1)|0; $cond1466 = $add1453; } else { $sub1456 = (($1059) - 1)|0; $1060 = $codedBands; $cmp1457 = ($sub1456|0)>($1060|0); if ($cmp1457) { $1061 = $st$addr; $lastCodedBands1460 = ((($1061)) + 92|0); $1062 = HEAP32[$lastCodedBands1460>>2]|0; $sub1461 = (($1062) - 1)|0; $cond1466 = $sub1461; break; } else { $1063 = $codedBands; $cond1466 = $1063; break; } } } while(0); $1064 = $st$addr; $$sink24 = $cond1466;$$sink25 = $1064; } else { $1065 = $codedBands; $1066 = $st$addr; $$sink24 = $1065;$$sink25 = $1066; } $lastCodedBands1469 = ((($$sink25)) + 92|0); HEAP32[$lastCodedBands1469>>2] = $$sink24; $1067 = $mode; $1068 = $start; $1069 = $end; $1070 = $oldBandE; $1071 = $enc$addr; $1072 = $C; _quant_fine_energy($1067,$1068,$1069,$1070,$vla929,$vla1367,$1071,$1072); $1073 = $C; $1074 = $nbEBands; $mul1471 = Math_imul($1073, $1074)|0; $vla1472$alloca_mul = $mul1471; $vla1472 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla1472$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla1472$alloca_mul)|0)+15)&-16)|0);; $1075 = $mode; $1076 = $start; $1077 = $end; $1078 = $C; $cmp1473 = ($1078|0)==(2); $1079 = $N; $add$ptr1476 = (($vla834) + ($1079<<2)|0); $cond1479 = $cmp1473 ? $add$ptr1476 : 0; $1080 = $shortBlocks; $1081 = $st$addr; $spread_decision1480 = ((($1081)) + 80|0); $1082 = HEAP32[$spread_decision1480>>2]|0; $1083 = HEAP32[$dual_stereo>>2]|0; $1084 = $st$addr; $intensity1481 = ((($1084)) + 232|0); $1085 = HEAP32[$intensity1481>>2]|0; $1086 = $nbCompressedBytes$addr; $mul1482 = $1086<<6; $1087 = $anti_collapse_rsv; $sub1483 = (($mul1482) - ($1087))|0; $1088 = HEAP32[$balance>>2]|0; $1089 = $enc$addr; $1090 = $LM; $1091 = $codedBands; $1092 = $st$addr; $rng = ((($1092)) + 76|0); $1093 = $st$addr; $complexity1484 = ((($1093)) + 24|0); $1094 = HEAP32[$complexity1484>>2]|0; $1095 = $st$addr; $arch1485 = ((($1095)) + 72|0); $1096 = HEAP32[$arch1485>>2]|0; $1097 = $st$addr; $disable_inv = ((($1097)) + 68|0); $1098 = HEAP32[$disable_inv>>2]|0; _quant_all_bands(1,$1075,$1076,$1077,$vla834,$cond1479,$vla1472,$vla420,$vla1368,$1080,$1082,$1083,$1085,$vla860,$sub1483,$1088,$1089,$1090,$1091,$rng,$1094,$1096,$1098); $1099 = $anti_collapse_rsv; $cmp1486 = ($1099|0)>(0); if ($cmp1486) { $1100 = $st$addr; $consec_transient = ((($1100)) + 116|0); $1101 = HEAP32[$consec_transient>>2]|0; $cmp1489 = ($1101|0)<(2); $conv1490 = $cmp1489&1; $anti_collapse_on = $conv1490; $1102 = $enc$addr; $1103 = $anti_collapse_on; _ec_enc_bits($1102,$1103,1); } $1104 = $mode; $1105 = $start; $1106 = $end; $1107 = $oldBandE; $1108 = $nbCompressedBytes$addr; $mul1492 = $1108<<3; $1109 = $enc$addr; $call1493 = (_ec_tell_54($1109)|0); $sub1494 = (($mul1492) - ($call1493))|0; $1110 = $enc$addr; $1111 = $C; _quant_energy_finalise($1104,$1105,$1106,$1107,$vla929,$vla1367,$vla1369,$sub1494,$1110,$1111); $1112 = $energyError; $1113 = $nbEBands; $1114 = $CC; $mul1495 = Math_imul($1113, $1114)|0; $mul1496 = $mul1495<<2; _memset(($1112|0),0,($mul1496|0))|0; $c = 0; while(1) { $1115 = $start; $i = $1115; while(1) { $1116 = $i; $1117 = $end; $cmp1499 = ($1116|0)<($1117|0); if (!($cmp1499)) { break; } $1118 = $i; $1119 = $c; $1120 = $nbEBands; $mul1502 = Math_imul($1119, $1120)|0; $add1503 = (($1118) + ($mul1502))|0; $arrayidx1504 = (($vla929) + ($add1503<<2)|0); $1121 = +HEAPF32[$arrayidx1504>>2]; $cmp1505 = 0.5 < $1121; if ($cmp1505) { $cond1513 = 0.5; } else { $1122 = $i; $1123 = $c; $1124 = $nbEBands; $mul1509 = Math_imul($1123, $1124)|0; $add1510 = (($1122) + ($mul1509))|0; $arrayidx1511 = (($vla929) + ($add1510<<2)|0); $1125 = +HEAPF32[$arrayidx1511>>2]; $cond1513 = $1125; } $cmp1514 = -0.5 > $cond1513; do { if ($cmp1514) { $cond1531 = -0.5; } else { $1126 = $i; $1127 = $c; $1128 = $nbEBands; $mul1518 = Math_imul($1127, $1128)|0; $add1519 = (($1126) + ($mul1518))|0; $arrayidx1520 = (($vla929) + ($add1519<<2)|0); $1129 = +HEAPF32[$arrayidx1520>>2]; $cmp1521 = 0.5 < $1129; if ($cmp1521) { $cond1531 = 0.5; break; } $1130 = $i; $1131 = $c; $1132 = $nbEBands; $mul1525 = Math_imul($1131, $1132)|0; $add1526 = (($1130) + ($mul1525))|0; $arrayidx1527 = (($vla929) + ($add1526<<2)|0); $1133 = +HEAPF32[$arrayidx1527>>2]; $cond1531 = $1133; } } while(0); $1134 = $energyError; $1135 = $i; $1136 = $c; $1137 = $nbEBands; $mul1532 = Math_imul($1136, $1137)|0; $add1533 = (($1135) + ($mul1532))|0; $arrayidx1534 = (($1134) + ($add1533<<2)|0); HEAPF32[$arrayidx1534>>2] = $cond1531; $1138 = $i; $inc1536 = (($1138) + 1)|0; $i = $inc1536; } $1139 = $c; $inc1539 = (($1139) + 1)|0; $c = $inc1539; $1140 = $C; $cmp1540 = ($inc1539|0)<($1140|0); if (!($cmp1540)) { break; } } $1141 = $silence; $tobool1543 = ($1141|0)!=(0); L478: do { if ($tobool1543) { $i = 0; while(1) { $1142 = $i; $1143 = $C; $1144 = $nbEBands; $mul1546 = Math_imul($1143, $1144)|0; $cmp1547 = ($1142|0)<($mul1546|0); if (!($cmp1547)) { break L478; } $1145 = $oldBandE; $1146 = $i; $arrayidx1550 = (($1145) + ($1146<<2)|0); HEAPF32[$arrayidx1550>>2] = -28.0; $1147 = $i; $inc1552 = (($1147) + 1)|0; $i = $inc1552; } } } while(0); $1148 = HEAP32[$pitch_index>>2]|0; $1149 = $st$addr; $prefilter_period1555 = ((($1149)) + 104|0); HEAP32[$prefilter_period1555>>2] = $1148; $1150 = +HEAPF32[$gain1>>2]; $1151 = $st$addr; $prefilter_gain1556 = ((($1151)) + 108|0); HEAPF32[$prefilter_gain1556>>2] = $1150; $1152 = $prefilter_tapset; $1153 = $st$addr; $prefilter_tapset1557 = ((($1153)) + 112|0); HEAP32[$prefilter_tapset1557>>2] = $1152; $1154 = $CC; $cmp1558 = ($1154|0)==(2); $1155 = $C; $cmp1561 = ($1155|0)==(1); $or$cond27 = $cmp1558 & $cmp1561; if ($or$cond27) { $1156 = $oldBandE; $1157 = $nbEBands; $arrayidx1564 = (($1156) + ($1157<<2)|0); $1158 = $oldBandE; $1159 = $nbEBands; $mul1565 = $1159<<2; $1160 = $oldBandE; $1161 = $nbEBands; $arrayidx1566 = (($1160) + ($1161<<2)|0); $1162 = $oldBandE; $sub$ptr$lhs$cast1567 = $arrayidx1566; $sub$ptr$rhs$cast1568 = $1162; $sub$ptr$sub1569 = (($sub$ptr$lhs$cast1567) - ($sub$ptr$rhs$cast1568))|0; $sub$ptr$div1570 = (($sub$ptr$sub1569|0) / 4)&-1; $mul1571 = 0; $add1572 = (($mul1565) + ($mul1571))|0; _memcpy(($arrayidx1564|0),($1158|0),($add1572|0))|0; } $1163 = $isTransient; $tobool1574 = ($1163|0)!=(0); L487: do { if ($tobool1574) { $i = 0; while(1) { $1176 = $i; $1177 = $CC; $1178 = $nbEBands; $mul1594 = Math_imul($1177, $1178)|0; $cmp1595 = ($1176|0)<($mul1594|0); if (!($cmp1595)) { break L487; } $1179 = $oldLogE; $1180 = $i; $arrayidx1598 = (($1179) + ($1180<<2)|0); $1181 = +HEAPF32[$arrayidx1598>>2]; $1182 = $oldBandE; $1183 = $i; $arrayidx1599 = (($1182) + ($1183<<2)|0); $1184 = +HEAPF32[$arrayidx1599>>2]; $cmp1600 = $1181 < $1184; if ($cmp1600) { $1185 = $oldLogE; $1186 = $i; $arrayidx1603 = (($1185) + ($1186<<2)|0); $arrayidx1605$sink = $arrayidx1603; } else { $1187 = $oldBandE; $1188 = $i; $arrayidx1605 = (($1187) + ($1188<<2)|0); $arrayidx1605$sink = $arrayidx1605; } $1189 = +HEAPF32[$arrayidx1605$sink>>2]; $1190 = $oldLogE; $1191 = $i; $arrayidx1608 = (($1190) + ($1191<<2)|0); HEAPF32[$arrayidx1608>>2] = $1189; $1192 = $i; $inc1610 = (($1192) + 1)|0; $i = $inc1610; } } else { $1164 = $oldLogE2; $1165 = $oldLogE; $1166 = $CC; $1167 = $nbEBands; $mul1576 = Math_imul($1166, $1167)|0; $mul1577 = $mul1576<<2; $1168 = $oldLogE2; $1169 = $oldLogE; $sub$ptr$lhs$cast1578 = $1168; $sub$ptr$rhs$cast1579 = $1169; $sub$ptr$sub1580 = (($sub$ptr$lhs$cast1578) - ($sub$ptr$rhs$cast1579))|0; $sub$ptr$div1581 = (($sub$ptr$sub1580|0) / 4)&-1; $mul1582 = 0; $add1583 = (($mul1577) + ($mul1582))|0; _memcpy(($1164|0),($1165|0),($add1583|0))|0; $1170 = $oldLogE; $1171 = $oldBandE; $1172 = $CC; $1173 = $nbEBands; $mul1584 = Math_imul($1172, $1173)|0; $mul1585 = $mul1584<<2; $1174 = $oldLogE; $1175 = $oldBandE; $sub$ptr$lhs$cast1586 = $1174; $sub$ptr$rhs$cast1587 = $1175; $sub$ptr$sub1588 = (($sub$ptr$lhs$cast1586) - ($sub$ptr$rhs$cast1587))|0; $sub$ptr$div1589 = (($sub$ptr$sub1588|0) / 4)&-1; $mul1590 = 0; $add1591 = (($mul1585) + ($mul1590))|0; _memcpy(($1170|0),($1171|0),($add1591|0))|0; } } while(0); $c = 0; while(1) { $i = 0; while(1) { $1193 = $i; $1194 = $start; $cmp1615 = ($1193|0)<($1194|0); if (!($cmp1615)) { break; } $1195 = $oldBandE; $1196 = $c; $1197 = $nbEBands; $mul1618 = Math_imul($1196, $1197)|0; $1198 = $i; $add1619 = (($mul1618) + ($1198))|0; $arrayidx1620 = (($1195) + ($add1619<<2)|0); HEAPF32[$arrayidx1620>>2] = 0.0; $1199 = $oldLogE2; $1200 = $c; $1201 = $nbEBands; $mul1621 = Math_imul($1200, $1201)|0; $1202 = $i; $add1622 = (($mul1621) + ($1202))|0; $arrayidx1623 = (($1199) + ($add1622<<2)|0); HEAPF32[$arrayidx1623>>2] = -28.0; $1203 = $oldLogE; $1204 = $c; $1205 = $nbEBands; $mul1624 = Math_imul($1204, $1205)|0; $1206 = $i; $add1625 = (($mul1624) + ($1206))|0; $arrayidx1626 = (($1203) + ($add1625<<2)|0); HEAPF32[$arrayidx1626>>2] = -28.0; $1207 = $i; $inc1628 = (($1207) + 1)|0; $i = $inc1628; } $1208 = $end; $i = $1208; while(1) { $1209 = $i; $1210 = $nbEBands; $cmp1631 = ($1209|0)<($1210|0); if (!($cmp1631)) { break; } $1211 = $oldBandE; $1212 = $c; $1213 = $nbEBands; $mul1634 = Math_imul($1212, $1213)|0; $1214 = $i; $add1635 = (($mul1634) + ($1214))|0; $arrayidx1636 = (($1211) + ($add1635<<2)|0); HEAPF32[$arrayidx1636>>2] = 0.0; $1215 = $oldLogE2; $1216 = $c; $1217 = $nbEBands; $mul1637 = Math_imul($1216, $1217)|0; $1218 = $i; $add1638 = (($mul1637) + ($1218))|0; $arrayidx1639 = (($1215) + ($add1638<<2)|0); HEAPF32[$arrayidx1639>>2] = -28.0; $1219 = $oldLogE; $1220 = $c; $1221 = $nbEBands; $mul1640 = Math_imul($1220, $1221)|0; $1222 = $i; $add1641 = (($mul1640) + ($1222))|0; $arrayidx1642 = (($1219) + ($add1641<<2)|0); HEAPF32[$arrayidx1642>>2] = -28.0; $1223 = $i; $inc1644 = (($1223) + 1)|0; $i = $inc1644; } $1224 = $c; $inc1647 = (($1224) + 1)|0; $c = $inc1647; $1225 = $CC; $cmp1648 = ($inc1647|0)<($1225|0); if (!($cmp1648)) { break; } } $1226 = $isTransient; $tobool1651 = ($1226|0)!=(0); $1227 = $transient_got_disabled; $tobool1653 = ($1227|0)!=(0); $or$cond29 = $tobool1651 | $tobool1653; $1228 = $st$addr; $consec_transient1655 = ((($1228)) + 116|0); if ($or$cond29) { $1229 = HEAP32[$consec_transient1655>>2]|0; $inc1656 = (($1229) + 1)|0; $$sink30 = $inc1656; } else { $$sink30 = 0; } HEAP32[$consec_transient1655>>2] = $$sink30; $1230 = $enc$addr; $rng1660 = ((($1230)) + 28|0); $1231 = HEAP32[$rng1660>>2]|0; $1232 = $st$addr; $rng1661 = ((($1232)) + 76|0); HEAP32[$rng1661>>2] = $1231; $1233 = $enc$addr; _ec_enc_done($1233); $1234 = $enc$addr; $call1662 = (_ec_get_error($1234)|0); $tobool1663 = ($call1662|0)!=(0); if ($tobool1663) { $retval = -3; $cleanup$dest$slot = 1; } else { $1235 = $nbCompressedBytes$addr; $retval = $1235; $cleanup$dest$slot = 1; } $1236 = $saved_stack; _llvm_stackrestore(($1236|0)); $1237 = $retval; STACKTOP = sp;return ($1237|0); } function _ec_tell_54($_this) { $_this = $_this|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $_this$addr = 0, $nbits_total = 0, $rng = 0, $sub = 0, $sub1 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $_this$addr = $_this; $0 = $_this$addr; $nbits_total = ((($0)) + 20|0); $1 = HEAP32[$nbits_total>>2]|0; $2 = $_this$addr; $rng = ((($2)) + 28|0); $3 = HEAP32[$rng>>2]|0; $4 = (Math_clz32(($3|0))|0); $sub = (32 - ($4))|0; $sub1 = (($1) - ($sub))|0; STACKTOP = sp;return ($sub1|0); } function _celt_maxabs16_55($x,$len) { $x = $x|0; $len = $len|0; var $0 = 0, $1 = 0, $10 = 0.0, $11 = 0, $12 = 0, $13 = 0.0, $14 = 0.0, $15 = 0, $16 = 0, $17 = 0.0, $18 = 0, $19 = 0.0, $2 = 0.0, $20 = 0.0, $21 = 0.0, $3 = 0, $4 = 0, $5 = 0.0, $6 = 0.0, $7 = 0; var $8 = 0, $9 = 0.0, $arrayidx = 0, $arrayidx2 = 0, $arrayidx3 = 0, $arrayidx7 = 0, $cmp = 0, $cmp1 = 0, $cmp10 = 0, $cmp4 = 0, $cond = 0.0, $cond15 = 0.0, $cond9 = 0.0, $i = 0, $inc = 0, $len$addr = 0, $maxval = 0.0, $minval = 0.0, $sub = 0.0, $sub13 = 0.0; var $x$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $x$addr = $x; $len$addr = $len; $maxval = 0.0; $minval = 0.0; $i = 0; while(1) { $0 = $i; $1 = $len$addr; $cmp = ($0|0)<($1|0); $2 = $maxval; if (!($cmp)) { break; } $3 = $x$addr; $4 = $i; $arrayidx = (($3) + ($4<<2)|0); $5 = +HEAPF32[$arrayidx>>2]; $cmp1 = $2 > $5; if ($cmp1) { $6 = $maxval; $cond = $6; } else { $7 = $x$addr; $8 = $i; $arrayidx2 = (($7) + ($8<<2)|0); $9 = +HEAPF32[$arrayidx2>>2]; $cond = $9; } $maxval = $cond; $10 = $minval; $11 = $x$addr; $12 = $i; $arrayidx3 = (($11) + ($12<<2)|0); $13 = +HEAPF32[$arrayidx3>>2]; $cmp4 = $10 < $13; if ($cmp4) { $14 = $minval; $cond9 = $14; } else { $15 = $x$addr; $16 = $i; $arrayidx7 = (($15) + ($16<<2)|0); $17 = +HEAPF32[$arrayidx7>>2]; $cond9 = $17; } $minval = $cond9; $18 = $i; $inc = (($18) + 1)|0; $i = $inc; } $19 = $minval; $sub = - $19; $cmp10 = $2 > $sub; $20 = $maxval; $21 = $minval; $sub13 = - $21; $cond15 = $cmp10 ? $20 : $sub13; STACKTOP = sp;return (+$cond15); } function _run_prefilter($st,$in,$prefilter_mem,$CC,$N,$prefilter_tapset,$pitch,$gain,$qgain,$enabled,$nbAvailableBytes,$analysis) { $st = $st|0; $in = $in|0; $prefilter_mem = $prefilter_mem|0; $CC = $CC|0; $N = $N|0; $prefilter_tapset = $prefilter_tapset|0; $pitch = $pitch|0; $gain = $gain|0; $qgain = $qgain|0; $enabled = $enabled|0; $nbAvailableBytes = $nbAvailableBytes|0; $analysis = $analysis|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0.0, $135 = 0, $136 = 0.0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0.0, $159 = 0.0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0.0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; var $224 = 0, $225 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0; var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0.0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0.0, $53 = 0, $54 = 0, $55 = 0.0, $56 = 0, $57 = 0; var $58 = 0.0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0.0, $66 = 0.0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0.0, $72 = 0, $73 = 0.0, $74 = 0, $75 = 0.0; var $76 = 0, $77 = 0.0, $78 = 0.0, $79 = 0, $8 = 0, $80 = 0.0, $81 = 0.0, $82 = 0.0, $83 = 0.0, $84 = 0.0, $85 = 0.0, $86 = 0.0, $87 = 0, $88 = 0.0, $89 = 0, $9 = 0, $90 = 0.0, $91 = 0.0, $92 = 0, $93 = 0; var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $CC$addr = 0, $N$addr = 0, $add = 0, $add$ptr = 0, $add$ptr10 = 0, $add$ptr14 = 0, $add$ptr140 = 0, $add$ptr143 = 0, $add$ptr147 = 0, $add$ptr151 = 0, $add$ptr162 = 0, $add$ptr163 = 0, $add$ptr165 = 0, $add$ptr17 = 0; var $add$ptr178 = 0, $add$ptr179 = 0, $add$ptr18 = 0, $add$ptr180 = 0, $add$ptr182 = 0, $add$ptr183 = 0, $add$ptr194 = 0, $add$ptr197 = 0, $add$ptr198 = 0, $add$ptr203 = 0, $add$ptr206 = 0, $add$ptr207 = 0, $add$ptr21 = 0, $add$ptr218 = 0, $add$ptr220 = 0, $add$ptr222 = 0, $add$ptr224 = 0, $add$ptr235 = 0, $add$ptr236 = 0, $add$ptr24 = 0; var $add$ptr240 = 0, $add$ptr242 = 0, $add$ptr243 = 0, $add$ptr25 = 0, $add$ptr251 = 0, $add$ptr252 = 0, $add$ptr253 = 0, $add$ptr255 = 0, $add$ptr258 = 0, $add$ptr259 = 0, $add$ptr261 = 0, $add$ptr263 = 0, $add$ptr36 = 0, $add$ptr7 = 0, $add100 = 0.0, $add12 = 0, $add123 = 0, $add138 = 0, $add145 = 0, $add15 = 0; var $add157 = 0, $add160 = 0, $add176 = 0, $add195 = 0, $add204 = 0, $add213 = 0, $add22 = 0, $add230 = 0, $add249 = 0, $add269 = 0, $add3 = 0, $add31 = 0, $add32 = 0, $add35 = 0, $add66 = 0.0, $add70 = 0.0, $add74 = 0.0, $analysis$addr = 0, $arch = 0, $arch174 = 0; var $arch190 = 0, $arch37 = 0, $arch38 = 0, $arrayidx13 = 0, $arrayidx164 = 0, $arrayidx181 = 0, $arrayidx20 = 0, $arrayidx219 = 0, $arrayidx223 = 0, $arrayidx254 = 0, $arrayidx262 = 0, $arrayidx4 = 0, $arrayidx5 = 0, $arrayidx8 = 0, $c = 0, $call = 0.0, $call102 = 0.0, $call62 = 0, $call92 = 0.0, $cmp = 0; var $cmp105 = 0, $cmp111 = 0, $cmp115 = 0, $cmp130 = 0, $cmp214 = 0, $cmp273 = 0, $cmp39 = 0, $cmp42 = 0, $cmp47 = 0, $cmp52 = 0, $cmp64 = 0, $cmp68 = 0, $cmp72 = 0, $cmp77 = 0, $cmp82 = 0, $cmp86 = 0, $cmp87 = 0, $cmp94 = 0, $cond = 0.0, $cond110 = 0; var $cond120 = 0, $cond122 = 0, $cond136 = 0, $conv = 0.0, $conv101 = 0.0, $conv103 = 0, $conv124 = 0.0, $conv93 = 0.0, $div = 0.0, $enabled$addr = 0, $gain$addr = 0, $gain1 = 0.0, $idx$neg = 0, $idx$neg260 = 0, $in$addr = 0, $in_mem = 0, $in_mem148 = 0, $in_mem191 = 0, $in_mem200 = 0, $inc = 0; var $inc272 = 0, $loss_rate = 0, $loss_rate46 = 0, $loss_rate51 = 0, $max_pitch_ratio = 0, $mode = 0, $mul = 0, $mul11 = 0, $mul125 = 0.0, $mul139 = 0, $mul142 = 0, $mul144 = 0, $mul146 = 0, $mul150 = 0, $mul156 = 0, $mul16 = 0, $mul161 = 0, $mul177 = 0, $mul19 = 0, $mul193 = 0; var $mul196 = 0, $mul199 = 0, $mul202 = 0, $mul205 = 0, $mul212 = 0, $mul217 = 0, $mul221 = 0, $mul229 = 0, $mul23 = 0, $mul234 = 0, $mul238 = 0, $mul239 = 0, $mul241 = 0, $mul248 = 0, $mul250 = 0, $mul256 = 0, $mul257 = 0, $mul268 = 0, $mul30 = 0, $mul41 = 0.0; var $mul44 = 0.0, $mul49 = 0.0, $mul58 = 0.0, $mul6 = 0, $mul63 = 0, $mul9 = 0, $mul99 = 0.0, $nbAvailableBytes$addr = 0, $offset = 0, $overlap = 0, $overlap2 = 0, $pf_on = 0, $pf_threshold = 0.0, $pitch$addr = 0, $pitch_index = 0, $pre = 0, $prefilter_gain = 0, $prefilter_gain168 = 0, $prefilter_gain170 = 0, $prefilter_gain186 = 0; var $prefilter_gain76 = 0, $prefilter_gain81 = 0, $prefilter_gain90 = 0, $prefilter_gain97 = 0, $prefilter_mem$addr = 0, $prefilter_period = 0, $prefilter_period129 = 0, $prefilter_period133 = 0, $prefilter_period137 = 0, $prefilter_period166 = 0, $prefilter_period167 = 0, $prefilter_period184 = 0, $prefilter_period60 = 0, $prefilter_tapset$addr = 0, $prefilter_tapset172 = 0, $prefilter_tapset173 = 0, $prefilter_tapset189 = 0, $qg = 0, $qgain$addr = 0, $saved_stack = 0; var $saved_stack33 = 0, $shortMdctSize = 0, $shr = 0, $st$addr = 0, $sub = 0, $sub$ptr$div = 0, $sub$ptr$div155 = 0, $sub$ptr$div211 = 0, $sub$ptr$div228 = 0, $sub$ptr$div247 = 0, $sub$ptr$div267 = 0, $sub$ptr$div29 = 0, $sub$ptr$lhs$cast = 0, $sub$ptr$lhs$cast152 = 0, $sub$ptr$lhs$cast208 = 0, $sub$ptr$lhs$cast225 = 0, $sub$ptr$lhs$cast244 = 0, $sub$ptr$lhs$cast26 = 0, $sub$ptr$lhs$cast264 = 0, $sub$ptr$rhs$cast = 0; var $sub$ptr$rhs$cast153 = 0, $sub$ptr$rhs$cast209 = 0, $sub$ptr$rhs$cast226 = 0, $sub$ptr$rhs$cast245 = 0, $sub$ptr$rhs$cast265 = 0, $sub$ptr$rhs$cast27 = 0, $sub$ptr$sub = 0, $sub$ptr$sub154 = 0, $sub$ptr$sub210 = 0, $sub$ptr$sub227 = 0, $sub$ptr$sub246 = 0, $sub$ptr$sub266 = 0, $sub$ptr$sub28 = 0, $sub104 = 0, $sub128 = 0, $sub169 = 0.0, $sub171 = 0.0, $sub185 = 0, $sub187 = 0.0, $sub188 = 0.0; var $sub237 = 0, $sub61 = 0, $sub79 = 0.0, $sub84 = 0.0, $sub91 = 0.0, $tobool = 0, $tobool158 = 0, $tobool56 = 0, $vla = 0, $vla$alloca_mul = 0, $vla34 = 0, $vla34$alloca_mul = 0, $window = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 112|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(112|0); $pre = sp + 40|0; $pitch_index = sp + 32|0; $st$addr = $st; $in$addr = $in; $prefilter_mem$addr = $prefilter_mem; $CC$addr = $CC; $N$addr = $N; $prefilter_tapset$addr = $prefilter_tapset; $pitch$addr = $pitch; $gain$addr = $gain; $qgain$addr = $qgain; $enabled$addr = $enabled; $nbAvailableBytes$addr = $nbAvailableBytes; $analysis$addr = $analysis; $0 = $st$addr; $1 = HEAP32[$0>>2]|0; $mode = $1; $2 = $mode; $overlap2 = ((($2)) + 4|0); $3 = HEAP32[$overlap2>>2]|0; $overlap = $3; $4 = $CC$addr; $5 = $N$addr; $add = (($5) + 1024)|0; $mul = Math_imul($4, $add)|0; $6 = (_llvm_stacksave()|0); $saved_stack = $6; $vla$alloca_mul = $mul<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; HEAP32[$pre>>2] = $vla; $7 = $N$addr; $add3 = (($7) + 1024)|0; $add$ptr = (($vla) + ($add3<<2)|0); $arrayidx4 = ((($pre)) + 4|0); HEAP32[$arrayidx4>>2] = $add$ptr; $c = 0; while(1) { $8 = $c; $arrayidx5 = (($pre) + ($8<<2)|0); $9 = HEAP32[$arrayidx5>>2]|0; $10 = $prefilter_mem$addr; $11 = $c; $mul6 = $11<<10; $add$ptr7 = (($10) + ($mul6<<2)|0); $12 = $c; $arrayidx8 = (($pre) + ($12<<2)|0); $13 = HEAP32[$arrayidx8>>2]|0; $14 = $prefilter_mem$addr; $15 = $c; $mul9 = $15<<10; $add$ptr10 = (($14) + ($mul9<<2)|0); $sub$ptr$lhs$cast = $13; $sub$ptr$rhs$cast = $add$ptr10; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $sub$ptr$div = (($sub$ptr$sub|0) / 4)&-1; $mul11 = 0; $add12 = (4096 + ($mul11))|0; _memcpy(($9|0),($add$ptr7|0),($add12|0))|0; $16 = $c; $arrayidx13 = (($pre) + ($16<<2)|0); $17 = HEAP32[$arrayidx13>>2]|0; $add$ptr14 = ((($17)) + 4096|0); $18 = $in$addr; $19 = $c; $20 = $N$addr; $21 = $overlap; $add15 = (($20) + ($21))|0; $mul16 = Math_imul($19, $add15)|0; $add$ptr17 = (($18) + ($mul16<<2)|0); $22 = $overlap; $add$ptr18 = (($add$ptr17) + ($22<<2)|0); $23 = $N$addr; $mul19 = $23<<2; $24 = $c; $arrayidx20 = (($pre) + ($24<<2)|0); $25 = HEAP32[$arrayidx20>>2]|0; $add$ptr21 = ((($25)) + 4096|0); $26 = $in$addr; $27 = $c; $28 = $N$addr; $29 = $overlap; $add22 = (($28) + ($29))|0; $mul23 = Math_imul($27, $add22)|0; $add$ptr24 = (($26) + ($mul23<<2)|0); $30 = $overlap; $add$ptr25 = (($add$ptr24) + ($30<<2)|0); $sub$ptr$lhs$cast26 = $add$ptr21; $sub$ptr$rhs$cast27 = $add$ptr25; $sub$ptr$sub28 = (($sub$ptr$lhs$cast26) - ($sub$ptr$rhs$cast27))|0; $sub$ptr$div29 = (($sub$ptr$sub28|0) / 4)&-1; $mul30 = 0; $add31 = (($mul19) + ($mul30))|0; _memcpy(($add$ptr14|0),($add$ptr18|0),($add31|0))|0; $31 = $c; $inc = (($31) + 1)|0; $c = $inc; $32 = $CC$addr; $cmp = ($inc|0)<($32|0); if (!($cmp)) { break; } } $33 = $enabled$addr; $tobool = ($33|0)!=(0); if ($tobool) { $34 = $N$addr; $add32 = (1024 + ($34))|0; $shr = $add32 >> 1; $35 = (_llvm_stacksave()|0); $saved_stack33 = $35; $vla34$alloca_mul = $shr<<2; $vla34 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla34$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla34$alloca_mul)|0)+15)&-16)|0);; $36 = $N$addr; $add35 = (1024 + ($36))|0; $37 = $CC$addr; $38 = $st$addr; $arch = ((($38)) + 72|0); $39 = HEAP32[$arch>>2]|0; _pitch_downsample($pre,$vla34,$add35,$37,$39); $add$ptr36 = ((($vla34)) + 2048|0); $40 = $N$addr; $41 = $st$addr; $arch37 = ((($41)) + 72|0); $42 = HEAP32[$arch37>>2]|0; _pitch_search($add$ptr36,$vla34,$40,979,$pitch_index,$42); $43 = HEAP32[$pitch_index>>2]|0; $sub = (1024 - ($43))|0; HEAP32[$pitch_index>>2] = $sub; $44 = $N$addr; $45 = $st$addr; $prefilter_period = ((($45)) + 104|0); $46 = HEAP32[$prefilter_period>>2]|0; $47 = $st$addr; $prefilter_gain = ((($47)) + 108|0); $48 = +HEAPF32[$prefilter_gain>>2]; $49 = $st$addr; $arch38 = ((($49)) + 72|0); $50 = HEAP32[$arch38>>2]|0; $call = (+_remove_doubling($vla34,1024,15,$44,$pitch_index,$46,$48,$50)); $gain1 = $call; $51 = HEAP32[$pitch_index>>2]|0; $cmp39 = ($51|0)>(1022); if ($cmp39) { HEAP32[$pitch_index>>2] = 1022; } $52 = $gain1; $mul41 = 0.69999998807907104 * $52; $gain1 = $mul41; $53 = $st$addr; $loss_rate = ((($53)) + 56|0); $54 = HEAP32[$loss_rate>>2]|0; $cmp42 = ($54|0)>(2); if ($cmp42) { $55 = $gain1; $mul44 = 0.5 * $55; $gain1 = $mul44; } $56 = $st$addr; $loss_rate46 = ((($56)) + 56|0); $57 = HEAP32[$loss_rate46>>2]|0; $cmp47 = ($57|0)>(4); if ($cmp47) { $58 = $gain1; $mul49 = 0.5 * $58; $gain1 = $mul49; } $59 = $st$addr; $loss_rate51 = ((($59)) + 56|0); $60 = HEAP32[$loss_rate51>>2]|0; $cmp52 = ($60|0)>(8); if ($cmp52) { $gain1 = 0.0; } $61 = $saved_stack33; _llvm_stackrestore(($61|0)); } else { $gain1 = 0.0; HEAP32[$pitch_index>>2] = 15; } $62 = $analysis$addr; $63 = HEAP32[$62>>2]|0; $tobool56 = ($63|0)!=(0); if ($tobool56) { $64 = $analysis$addr; $max_pitch_ratio = ((($64)) + 40|0); $65 = +HEAPF32[$max_pitch_ratio>>2]; $66 = $gain1; $mul58 = $66 * $65; $gain1 = $mul58; } $pf_threshold = 0.20000000298023224; $67 = HEAP32[$pitch_index>>2]|0; $68 = $st$addr; $prefilter_period60 = ((($68)) + 104|0); $69 = HEAP32[$prefilter_period60>>2]|0; $sub61 = (($67) - ($69))|0; $call62 = (Math_abs(($sub61|0))|0); $mul63 = ($call62*10)|0; $70 = HEAP32[$pitch_index>>2]|0; $cmp64 = ($mul63|0)>($70|0); if ($cmp64) { $71 = $pf_threshold; $add66 = $71 + 0.20000000298023224; $pf_threshold = $add66; } $72 = $nbAvailableBytes$addr; $cmp68 = ($72|0)<(25); if ($cmp68) { $73 = $pf_threshold; $add70 = $73 + 0.10000000149011612; $pf_threshold = $add70; } $74 = $nbAvailableBytes$addr; $cmp72 = ($74|0)<(35); if ($cmp72) { $75 = $pf_threshold; $add74 = $75 + 0.10000000149011612; $pf_threshold = $add74; } $76 = $st$addr; $prefilter_gain76 = ((($76)) + 108|0); $77 = +HEAPF32[$prefilter_gain76>>2]; $cmp77 = $77 > 0.40000000596046448; if ($cmp77) { $78 = $pf_threshold; $sub79 = $78 - 0.10000000149011612; $pf_threshold = $sub79; } $79 = $st$addr; $prefilter_gain81 = ((($79)) + 108|0); $80 = +HEAPF32[$prefilter_gain81>>2]; $cmp82 = $80 > 0.55000001192092896; if ($cmp82) { $81 = $pf_threshold; $sub84 = $81 - 0.10000000149011612; $pf_threshold = $sub84; } $82 = $pf_threshold; $cmp86 = $82 > 0.20000000298023224; $83 = $pf_threshold; $cond = $cmp86 ? $83 : 0.20000000298023224; $pf_threshold = $cond; $84 = $gain1; $85 = $pf_threshold; $cmp87 = $84 < $85; if ($cmp87) { $gain1 = 0.0; $pf_on = 0; $qg = 0; } else { $86 = $gain1; $87 = $st$addr; $prefilter_gain90 = ((($87)) + 108|0); $88 = +HEAPF32[$prefilter_gain90>>2]; $sub91 = $86 - $88; $conv = $sub91; $call92 = (+Math_abs((+$conv))); $conv93 = $call92; $cmp94 = $conv93 < 0.10000000149011612; if ($cmp94) { $89 = $st$addr; $prefilter_gain97 = ((($89)) + 108|0); $90 = +HEAPF32[$prefilter_gain97>>2]; $gain1 = $90; } $91 = $gain1; $mul99 = $91 * 32.0; $div = $mul99 / 3.0; $add100 = 0.5 + $div; $conv101 = $add100; $call102 = (+Math_floor((+$conv101))); $conv103 = (~~(($call102))); $sub104 = (($conv103) - 1)|0; $qg = $sub104; $92 = $qg; $cmp105 = (7)<($92|0); $93 = $qg; $cond110 = $cmp105 ? 7 : $93; $cmp111 = (0)>($cond110|0); if ($cmp111) { $cond122 = 0; } else { $94 = $qg; $cmp115 = (7)<($94|0); $95 = $qg; $cond120 = $cmp115 ? 7 : $95; $cond122 = $cond120; } $qg = $cond122; $96 = $qg; $add123 = (($96) + 1)|0; $conv124 = (+($add123|0)); $mul125 = 0.09375 * $conv124; $gain1 = $mul125; $pf_on = 1; } $c = 0; while(1) { $97 = $mode; $shortMdctSize = ((($97)) + 44|0); $98 = HEAP32[$shortMdctSize>>2]|0; $99 = $overlap; $sub128 = (($98) - ($99))|0; $offset = $sub128; $100 = $st$addr; $prefilter_period129 = ((($100)) + 104|0); $101 = HEAP32[$prefilter_period129>>2]|0; $cmp130 = ($101|0)>(15); if ($cmp130) { $102 = $st$addr; $prefilter_period133 = ((($102)) + 104|0); $103 = HEAP32[$prefilter_period133>>2]|0; $cond136 = $103; } else { $cond136 = 15; } $104 = $st$addr; $prefilter_period137 = ((($104)) + 104|0); HEAP32[$prefilter_period137>>2] = $cond136; $105 = $in$addr; $106 = $c; $107 = $N$addr; $108 = $overlap; $add138 = (($107) + ($108))|0; $mul139 = Math_imul($106, $add138)|0; $add$ptr140 = (($105) + ($mul139<<2)|0); $109 = $st$addr; $in_mem = ((($109)) + 244|0); $110 = $c; $111 = $overlap; $mul142 = Math_imul($110, $111)|0; $add$ptr143 = (($in_mem) + ($mul142<<2)|0); $112 = $overlap; $mul144 = $112<<2; $113 = $in$addr; $114 = $c; $115 = $N$addr; $116 = $overlap; $add145 = (($115) + ($116))|0; $mul146 = Math_imul($114, $add145)|0; $add$ptr147 = (($113) + ($mul146<<2)|0); $117 = $st$addr; $in_mem148 = ((($117)) + 244|0); $118 = $c; $119 = $overlap; $mul150 = Math_imul($118, $119)|0; $add$ptr151 = (($in_mem148) + ($mul150<<2)|0); $sub$ptr$lhs$cast152 = $add$ptr147; $sub$ptr$rhs$cast153 = $add$ptr151; $sub$ptr$sub154 = (($sub$ptr$lhs$cast152) - ($sub$ptr$rhs$cast153))|0; $sub$ptr$div155 = (($sub$ptr$sub154|0) / 4)&-1; $mul156 = 0; $add157 = (($mul144) + ($mul156))|0; _memcpy(($add$ptr140|0),($add$ptr143|0),($add157|0))|0; $120 = $offset; $tobool158 = ($120|0)!=(0); if ($tobool158) { $121 = $in$addr; $122 = $c; $123 = $N$addr; $124 = $overlap; $add160 = (($123) + ($124))|0; $mul161 = Math_imul($122, $add160)|0; $add$ptr162 = (($121) + ($mul161<<2)|0); $125 = $overlap; $add$ptr163 = (($add$ptr162) + ($125<<2)|0); $126 = $c; $arrayidx164 = (($pre) + ($126<<2)|0); $127 = HEAP32[$arrayidx164>>2]|0; $add$ptr165 = ((($127)) + 4096|0); $128 = $st$addr; $prefilter_period166 = ((($128)) + 104|0); $129 = HEAP32[$prefilter_period166>>2]|0; $130 = $st$addr; $prefilter_period167 = ((($130)) + 104|0); $131 = HEAP32[$prefilter_period167>>2]|0; $132 = $offset; $133 = $st$addr; $prefilter_gain168 = ((($133)) + 108|0); $134 = +HEAPF32[$prefilter_gain168>>2]; $sub169 = - $134; $135 = $st$addr; $prefilter_gain170 = ((($135)) + 108|0); $136 = +HEAPF32[$prefilter_gain170>>2]; $sub171 = - $136; $137 = $st$addr; $prefilter_tapset172 = ((($137)) + 112|0); $138 = HEAP32[$prefilter_tapset172>>2]|0; $139 = $st$addr; $prefilter_tapset173 = ((($139)) + 112|0); $140 = HEAP32[$prefilter_tapset173>>2]|0; $141 = $st$addr; $arch174 = ((($141)) + 72|0); $142 = HEAP32[$arch174>>2]|0; _comb_filter($add$ptr163,$add$ptr165,$129,$131,$132,$sub169,$sub171,$138,$140,0,0,$142); } $143 = $in$addr; $144 = $c; $145 = $N$addr; $146 = $overlap; $add176 = (($145) + ($146))|0; $mul177 = Math_imul($144, $add176)|0; $add$ptr178 = (($143) + ($mul177<<2)|0); $147 = $overlap; $add$ptr179 = (($add$ptr178) + ($147<<2)|0); $148 = $offset; $add$ptr180 = (($add$ptr179) + ($148<<2)|0); $149 = $c; $arrayidx181 = (($pre) + ($149<<2)|0); $150 = HEAP32[$arrayidx181>>2]|0; $add$ptr182 = ((($150)) + 4096|0); $151 = $offset; $add$ptr183 = (($add$ptr182) + ($151<<2)|0); $152 = $st$addr; $prefilter_period184 = ((($152)) + 104|0); $153 = HEAP32[$prefilter_period184>>2]|0; $154 = HEAP32[$pitch_index>>2]|0; $155 = $N$addr; $156 = $offset; $sub185 = (($155) - ($156))|0; $157 = $st$addr; $prefilter_gain186 = ((($157)) + 108|0); $158 = +HEAPF32[$prefilter_gain186>>2]; $sub187 = - $158; $159 = $gain1; $sub188 = - $159; $160 = $st$addr; $prefilter_tapset189 = ((($160)) + 112|0); $161 = HEAP32[$prefilter_tapset189>>2]|0; $162 = $prefilter_tapset$addr; $163 = $mode; $window = ((($163)) + 60|0); $164 = HEAP32[$window>>2]|0; $165 = $overlap; $166 = $st$addr; $arch190 = ((($166)) + 72|0); $167 = HEAP32[$arch190>>2]|0; _comb_filter($add$ptr180,$add$ptr183,$153,$154,$sub185,$sub187,$sub188,$161,$162,$164,$165,$167); $168 = $st$addr; $in_mem191 = ((($168)) + 244|0); $169 = $c; $170 = $overlap; $mul193 = Math_imul($169, $170)|0; $add$ptr194 = (($in_mem191) + ($mul193<<2)|0); $171 = $in$addr; $172 = $c; $173 = $N$addr; $174 = $overlap; $add195 = (($173) + ($174))|0; $mul196 = Math_imul($172, $add195)|0; $add$ptr197 = (($171) + ($mul196<<2)|0); $175 = $N$addr; $add$ptr198 = (($add$ptr197) + ($175<<2)|0); $176 = $overlap; $mul199 = $176<<2; $177 = $st$addr; $in_mem200 = ((($177)) + 244|0); $178 = $c; $179 = $overlap; $mul202 = Math_imul($178, $179)|0; $add$ptr203 = (($in_mem200) + ($mul202<<2)|0); $180 = $in$addr; $181 = $c; $182 = $N$addr; $183 = $overlap; $add204 = (($182) + ($183))|0; $mul205 = Math_imul($181, $add204)|0; $add$ptr206 = (($180) + ($mul205<<2)|0); $184 = $N$addr; $add$ptr207 = (($add$ptr206) + ($184<<2)|0); $sub$ptr$lhs$cast208 = $add$ptr203; $sub$ptr$rhs$cast209 = $add$ptr207; $sub$ptr$sub210 = (($sub$ptr$lhs$cast208) - ($sub$ptr$rhs$cast209))|0; $sub$ptr$div211 = (($sub$ptr$sub210|0) / 4)&-1; $mul212 = 0; $add213 = (($mul199) + ($mul212))|0; _memcpy(($add$ptr194|0),($add$ptr198|0),($add213|0))|0; $185 = $N$addr; $cmp214 = ($185|0)>(1024); $186 = $prefilter_mem$addr; $187 = $c; $mul217 = $187<<10; $add$ptr218 = (($186) + ($mul217<<2)|0); if ($cmp214) { $188 = $c; $arrayidx219 = (($pre) + ($188<<2)|0); $189 = HEAP32[$arrayidx219>>2]|0; $190 = $N$addr; $add$ptr220 = (($189) + ($190<<2)|0); $191 = $prefilter_mem$addr; $192 = $c; $mul221 = $192<<10; $add$ptr222 = (($191) + ($mul221<<2)|0); $193 = $c; $arrayidx223 = (($pre) + ($193<<2)|0); $194 = HEAP32[$arrayidx223>>2]|0; $195 = $N$addr; $add$ptr224 = (($194) + ($195<<2)|0); $sub$ptr$lhs$cast225 = $add$ptr222; $sub$ptr$rhs$cast226 = $add$ptr224; $sub$ptr$sub227 = (($sub$ptr$lhs$cast225) - ($sub$ptr$rhs$cast226))|0; $sub$ptr$div228 = (($sub$ptr$sub227|0) / 4)&-1; $mul229 = 0; $add230 = (4096 + ($mul229))|0; _memcpy(($add$ptr218|0),($add$ptr220|0),($add230|0))|0; } else { $196 = $prefilter_mem$addr; $197 = $c; $mul234 = $197<<10; $add$ptr235 = (($196) + ($mul234<<2)|0); $198 = $N$addr; $add$ptr236 = (($add$ptr235) + ($198<<2)|0); $199 = $N$addr; $sub237 = (1024 - ($199))|0; $mul238 = $sub237<<2; $200 = $prefilter_mem$addr; $201 = $c; $mul239 = $201<<10; $add$ptr240 = (($200) + ($mul239<<2)|0); $202 = $prefilter_mem$addr; $203 = $c; $mul241 = $203<<10; $add$ptr242 = (($202) + ($mul241<<2)|0); $204 = $N$addr; $add$ptr243 = (($add$ptr242) + ($204<<2)|0); $sub$ptr$lhs$cast244 = $add$ptr240; $sub$ptr$rhs$cast245 = $add$ptr243; $sub$ptr$sub246 = (($sub$ptr$lhs$cast244) - ($sub$ptr$rhs$cast245))|0; $sub$ptr$div247 = (($sub$ptr$sub246|0) / 4)&-1; $mul248 = 0; $add249 = (($mul238) + ($mul248))|0; _memmove(($add$ptr218|0),($add$ptr236|0),($add249|0))|0; $205 = $prefilter_mem$addr; $206 = $c; $mul250 = $206<<10; $add$ptr251 = (($205) + ($mul250<<2)|0); $add$ptr252 = ((($add$ptr251)) + 4096|0); $207 = $N$addr; $idx$neg = (0 - ($207))|0; $add$ptr253 = (($add$ptr252) + ($idx$neg<<2)|0); $208 = $c; $arrayidx254 = (($pre) + ($208<<2)|0); $209 = HEAP32[$arrayidx254>>2]|0; $add$ptr255 = ((($209)) + 4096|0); $210 = $N$addr; $mul256 = $210<<2; $211 = $prefilter_mem$addr; $212 = $c; $mul257 = $212<<10; $add$ptr258 = (($211) + ($mul257<<2)|0); $add$ptr259 = ((($add$ptr258)) + 4096|0); $213 = $N$addr; $idx$neg260 = (0 - ($213))|0; $add$ptr261 = (($add$ptr259) + ($idx$neg260<<2)|0); $214 = $c; $arrayidx262 = (($pre) + ($214<<2)|0); $215 = HEAP32[$arrayidx262>>2]|0; $add$ptr263 = ((($215)) + 4096|0); $sub$ptr$lhs$cast264 = $add$ptr261; $sub$ptr$rhs$cast265 = $add$ptr263; $sub$ptr$sub266 = (($sub$ptr$lhs$cast264) - ($sub$ptr$rhs$cast265))|0; $sub$ptr$div267 = (($sub$ptr$sub266|0) / 4)&-1; $mul268 = 0; $add269 = (($mul256) + ($mul268))|0; _memcpy(($add$ptr253|0),($add$ptr255|0),($add269|0))|0; } $216 = $c; $inc272 = (($216) + 1)|0; $c = $inc272; $217 = $CC$addr; $cmp273 = ($inc272|0)<($217|0); if (!($cmp273)) { break; } } $218 = $gain1; $219 = $gain$addr; HEAPF32[$219>>2] = $218; $220 = HEAP32[$pitch_index>>2]|0; $221 = $pitch$addr; HEAP32[$221>>2] = $220; $222 = $qg; $223 = $qgain$addr; HEAP32[$223>>2] = $222; $224 = $pf_on; $225 = $saved_stack; _llvm_stackrestore(($225|0)); STACKTOP = sp;return ($224|0); } function _transient_analysis($in,$len,$C,$tf_estimate,$tf_chan,$allow_weak_transients,$weak_transient) { $in = $in|0; $len = $len|0; $C = $C|0; $tf_estimate = $tf_estimate|0; $tf_chan = $tf_chan|0; $allow_weak_transients = $allow_weak_transients|0; $weak_transient = $weak_transient|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $11 = 0, $12 = 0, $13 = 0.0, $14 = 0.0, $15 = 0.0, $16 = 0.0, $17 = 0.0, $18 = 0.0, $19 = 0.0, $2 = 0, $20 = 0.0, $21 = 0.0, $22 = 0, $23 = 0; var $24 = 0, $25 = 0, $26 = 0, $27 = 0.0, $28 = 0, $29 = 0.0, $3 = 0, $30 = 0, $31 = 0.0, $32 = 0, $33 = 0.0, $34 = 0.0, $35 = 0.0, $36 = 0.0, $37 = 0.0, $38 = 0.0, $39 = 0.0, $4 = 0, $40 = 0, $41 = 0; var $42 = 0.0, $43 = 0, $44 = 0, $45 = 0, $46 = 0.0, $47 = 0, $48 = 0.0, $49 = 0.0, $5 = 0, $50 = 0, $51 = 0, $52 = 0.0, $53 = 0.0, $54 = 0.0, $55 = 0.0, $56 = 0.0, $57 = 0, $58 = 0.0, $59 = 0.0, $6 = 0; var $60 = 0, $61 = 0, $62 = 0.0, $63 = 0, $64 = 0, $65 = 0.0, $66 = 0, $67 = 0.0, $68 = 0.0, $69 = 0, $7 = 0, $70 = 0.0, $71 = 0.0, $72 = 0, $73 = 0.0, $74 = 0.0, $75 = 0, $76 = 0.0, $77 = 0, $78 = 0; var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0.0; var $97 = 0.0, $98 = 0.0, $99 = 0.0, $C$addr = 0, $add = 0, $add106 = 0, $add108 = 0, $add19 = 0, $add22 = 0, $add25 = 0.0, $add26 = 0.0, $add29 = 0.0, $add4 = 0.0, $add42 = 0.0, $add5 = 0.0, $add54 = 0.0, $add63 = 0.0, $add73 = 0.0, $add85 = 0.0, $add95 = 0.0; var $allow_weak_transients$addr = 0, $arrayidx = 0, $arrayidx104 = 0, $arrayidx14 = 0, $arrayidx16 = 0, $arrayidx20 = 0, $arrayidx23 = 0, $arrayidx30 = 0, $arrayidx31 = 0, $arrayidx39 = 0, $arrayidx43 = 0, $arrayidx44 = 0, $arrayidx62 = 0, $arrayidx72 = 0, $arrayidx84 = 0, $arrayidx9 = 0, $arrayidx94 = 0, $c = 0, $call = 0.0, $call133 = 0.0; var $call142 = 0.0, $call171 = 0.0, $call66 = 0.0, $call76 = 0.0, $call88 = 0.0, $call98 = 0.0, $cmp = 0, $cmp11 = 0, $cmp115 = 0, $cmp122 = 0, $cmp127 = 0, $cmp136 = 0, $cmp147 = 0, $cmp156 = 0, $cmp160 = 0, $cmp2 = 0, $cmp37 = 0, $cmp45 = 0, $cmp58 = 0, $cmp67 = 0; var $cmp79 = 0, $cmp89 = 0, $cond = 0.0, $cond102 = 0.0, $cond146 = 0.0, $cond152 = 0.0, $cond165 = 0.0, $cond170 = 0.0, $cond78 = 0.0, $conv = 0.0, $conv103 = 0, $conv105 = 0, $conv123 = 0, $conv132 = 0.0, $conv134 = 0.0, $conv141 = 0.0, $conv143 = 0.0, $conv154 = 0.0, $conv167 = 0.0, $conv172 = 0.0; var $conv50 = 0.0, $conv52 = 0.0, $conv53 = 0.0, $conv65 = 0.0, $conv75 = 0.0, $conv87 = 0.0, $conv97 = 0.0, $dec = 0, $div = 0, $div114 = 0, $div55 = 0.0, $forward_decay = 0.0, $i = 0, $id = 0, $in$addr = 0, $inc = 0, $inc120 = 0, $inc33 = 0, $is_transient = 0, $len$addr = 0; var $len2 = 0, $mask_metric = 0, $maxE = 0.0, $mean = 0.0, $mem0 = 0.0, $mem1 = 0.0, $mul = 0, $mul110 = 0, $mul111 = 0, $mul113 = 0, $mul13 = 0, $mul131 = 0, $mul140 = 0, $mul15 = 0, $mul153 = 0.0, $mul166 = 0.0, $mul17 = 0.0, $mul18 = 0, $mul21 = 0, $mul24 = 0.0; var $mul28 = 0.0, $mul41 = 0.0, $mul48 = 0.0, $mul49 = 0.0, $mul51 = 0.0, $mul6 = 0.0, $mul61 = 0.0, $mul64 = 0.0, $mul7 = 0.0, $mul71 = 0.0, $mul74 = 0.0, $mul83 = 0.0, $mul86 = 0.0, $mul93 = 0.0, $mul96 = 0.0, $norm = 0.0, $or$cond = 0, $or$cond1 = 0, $saved_stack = 0, $sub = 0.0; var $sub112 = 0, $sub135 = 0.0, $sub144 = 0.0, $sub155 = 0.0, $sub168 = 0.0, $sub27 = 0.0, $sub35 = 0, $sub40 = 0.0, $sub57 = 0, $sub8 = 0.0, $tf_chan$addr = 0, $tf_estimate$addr = 0, $tf_max = 0.0, $tobool = 0, $tobool124 = 0, $tobool125 = 0, $unmask = 0, $vla = 0, $vla$alloca_mul = 0, $weak_transient$addr = 0; var $x = 0.0, $x2 = 0.0, $y = 0.0, dest = 0, label = 0, sp = 0, stop = 0; sp = STACKTOP; STACKTOP = STACKTOP + 112|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(112|0); $in$addr = $in; $len$addr = $len; $C$addr = $C; $tf_estimate$addr = $tf_estimate; $tf_chan$addr = $tf_chan; $allow_weak_transients$addr = $allow_weak_transients; $weak_transient$addr = $weak_transient; $is_transient = 0; $mask_metric = 0; $forward_decay = 0.0625; $0 = $len$addr; $1 = (_llvm_stacksave()|0); $saved_stack = $1; $vla$alloca_mul = $0<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $2 = $weak_transient$addr; HEAP32[$2>>2] = 0; $3 = $allow_weak_transients$addr; $tobool = ($3|0)!=(0); if ($tobool) { $forward_decay = 0.03125; } $4 = $len$addr; $div = (($4|0) / 2)&-1; $len2 = $div; $c = 0; while(1) { $5 = $c; $6 = $C$addr; $cmp = ($5|0)<($6|0); if (!($cmp)) { break; } $unmask = 0; $mem0 = 0.0; $mem1 = 0.0; $i = 0; while(1) { $7 = $i; $8 = $len$addr; $cmp2 = ($7|0)<($8|0); if (!($cmp2)) { break; } $9 = $in$addr; $10 = $i; $11 = $c; $12 = $len$addr; $mul = Math_imul($11, $12)|0; $add = (($10) + ($mul))|0; $arrayidx = (($9) + ($add<<2)|0); $13 = +HEAPF32[$arrayidx>>2]; $x = $13; $14 = $mem0; $15 = $x; $add4 = $14 + $15; $y = $add4; $16 = $mem1; $17 = $y; $add5 = $16 + $17; $18 = $x; $mul6 = 2.0 * $18; $sub = $add5 - $mul6; $mem0 = $sub; $19 = $x; $20 = $y; $mul7 = 0.5 * $20; $sub8 = $19 - $mul7; $mem1 = $sub8; $21 = $y; $22 = $i; $arrayidx9 = (($vla) + ($22<<2)|0); HEAPF32[$arrayidx9>>2] = $21; $23 = $i; $inc = (($23) + 1)|0; $i = $inc; } dest=$vla; stop=dest+48|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); $mean = 0.0; $mem0 = 0.0; $i = 0; while(1) { $24 = $i; $25 = $len2; $cmp11 = ($24|0)<($25|0); if (!($cmp11)) { break; } $26 = $i; $mul13 = $26<<1; $arrayidx14 = (($vla) + ($mul13<<2)|0); $27 = +HEAPF32[$arrayidx14>>2]; $28 = $i; $mul15 = $28<<1; $arrayidx16 = (($vla) + ($mul15<<2)|0); $29 = +HEAPF32[$arrayidx16>>2]; $mul17 = $27 * $29; $30 = $i; $mul18 = $30<<1; $add19 = (($mul18) + 1)|0; $arrayidx20 = (($vla) + ($add19<<2)|0); $31 = +HEAPF32[$arrayidx20>>2]; $32 = $i; $mul21 = $32<<1; $add22 = (($mul21) + 1)|0; $arrayidx23 = (($vla) + ($add22<<2)|0); $33 = +HEAPF32[$arrayidx23>>2]; $mul24 = $31 * $33; $add25 = $mul17 + $mul24; $x2 = $add25; $34 = $x2; $35 = $mean; $add26 = $35 + $34; $mean = $add26; $36 = $mem0; $37 = $forward_decay; $38 = $x2; $39 = $mem0; $sub27 = $38 - $39; $mul28 = $37 * $sub27; $add29 = $36 + $mul28; $40 = $i; $arrayidx30 = (($vla) + ($40<<2)|0); HEAPF32[$arrayidx30>>2] = $add29; $41 = $i; $arrayidx31 = (($vla) + ($41<<2)|0); $42 = +HEAPF32[$arrayidx31>>2]; $mem0 = $42; $43 = $i; $inc33 = (($43) + 1)|0; $i = $inc33; } $mem0 = 0.0; $maxE = 0.0; $44 = $len2; $sub35 = (($44) - 1)|0; $i = $sub35; while(1) { $45 = $i; $cmp37 = ($45|0)>=(0); if (!($cmp37)) { break; } $46 = $mem0; $47 = $i; $arrayidx39 = (($vla) + ($47<<2)|0); $48 = +HEAPF32[$arrayidx39>>2]; $49 = $mem0; $sub40 = $48 - $49; $mul41 = 0.125 * $sub40; $add42 = $46 + $mul41; $50 = $i; $arrayidx43 = (($vla) + ($50<<2)|0); HEAPF32[$arrayidx43>>2] = $add42; $51 = $i; $arrayidx44 = (($vla) + ($51<<2)|0); $52 = +HEAPF32[$arrayidx44>>2]; $mem0 = $52; $53 = $maxE; $54 = $mem0; $cmp45 = $53 > $54; $55 = $maxE; $56 = $mem0; $cond = $cmp45 ? $55 : $56; $maxE = $cond; $57 = $i; $dec = (($57) + -1)|0; $i = $dec; } $58 = $mean; $59 = $maxE; $mul48 = $58 * $59; $conv = $mul48; $mul49 = $conv * 0.5; $60 = $len2; $conv50 = (+($60|0)); $mul51 = $mul49 * $conv50; $call = (+Math_sqrt((+$mul51))); $conv52 = $call; $mean = $conv52; $61 = $len2; $conv53 = (+($61|0)); $62 = $mean; $add54 = 1.0000000036274937E-15 + $62; $div55 = $conv53 / $add54; $norm = $div55; $unmask = 0; $i = 12; while(1) { $63 = $i; $64 = $len2; $sub57 = (($64) - 5)|0; $cmp58 = ($63|0)<($sub57|0); if (!($cmp58)) { break; } $65 = $norm; $mul61 = 64.0 * $65; $66 = $i; $arrayidx62 = (($vla) + ($66<<2)|0); $67 = +HEAPF32[$arrayidx62>>2]; $add63 = $67 + 1.0000000036274937E-15; $mul64 = $mul61 * $add63; $conv65 = $mul64; $call66 = (+Math_floor((+$conv65))); $cmp67 = 127.0 < $call66; if ($cmp67) { $cond78 = 127.0; } else { $68 = $norm; $mul71 = 64.0 * $68; $69 = $i; $arrayidx72 = (($vla) + ($69<<2)|0); $70 = +HEAPF32[$arrayidx72>>2]; $add73 = $70 + 1.0000000036274937E-15; $mul74 = $mul71 * $add73; $conv75 = $mul74; $call76 = (+Math_floor((+$conv75))); $cond78 = $call76; } $cmp79 = 0.0 > $cond78; if ($cmp79) { $cond102 = 0.0; } else { $71 = $norm; $mul83 = 64.0 * $71; $72 = $i; $arrayidx84 = (($vla) + ($72<<2)|0); $73 = +HEAPF32[$arrayidx84>>2]; $add85 = $73 + 1.0000000036274937E-15; $mul86 = $mul83 * $add85; $conv87 = $mul86; $call88 = (+Math_floor((+$conv87))); $cmp89 = 127.0 < $call88; if ($cmp89) { $cond102 = 127.0; } else { $74 = $norm; $mul93 = 64.0 * $74; $75 = $i; $arrayidx94 = (($vla) + ($75<<2)|0); $76 = +HEAPF32[$arrayidx94>>2]; $add95 = $76 + 1.0000000036274937E-15; $mul96 = $mul93 * $add95; $conv97 = $mul96; $call98 = (+Math_floor((+$conv97))); $cond102 = $call98; } } $conv103 = (~~(($cond102))); $id = $conv103; $77 = $id; $arrayidx104 = (30957 + ($77)|0); $78 = HEAP8[$arrayidx104>>0]|0; $conv105 = $78&255; $79 = $unmask; $add106 = (($79) + ($conv105))|0; $unmask = $add106; $80 = $i; $add108 = (($80) + 4)|0; $i = $add108; } $81 = $unmask; $mul110 = $81<<6; $mul111 = $mul110<<2; $82 = $len2; $sub112 = (($82) - 17)|0; $mul113 = ($sub112*6)|0; $div114 = (($mul111|0) / ($mul113|0))&-1; $unmask = $div114; $83 = $unmask; $84 = $mask_metric; $cmp115 = ($83|0)>($84|0); if ($cmp115) { $85 = $c; $86 = $tf_chan$addr; HEAP32[$86>>2] = $85; $87 = $unmask; $mask_metric = $87; } $88 = $c; $inc120 = (($88) + 1)|0; $c = $inc120; } $89 = $mask_metric; $cmp122 = ($89|0)>(200); $conv123 = $cmp122&1; $is_transient = $conv123; $90 = $allow_weak_transients$addr; $tobool124 = ($90|0)!=(0); $91 = $is_transient; $tobool125 = ($91|0)!=(0); $or$cond = $tobool124 & $tobool125; $92 = $mask_metric; $cmp127 = ($92|0)<(600); $or$cond1 = $or$cond & $cmp127; if ($or$cond1) { $is_transient = 0; $93 = $weak_transient$addr; HEAP32[$93>>2] = 1; } $94 = $mask_metric; $mul131 = ($94*27)|0; $conv132 = (+($mul131|0)); $call133 = (+Math_sqrt((+$conv132))); $conv134 = $call133; $sub135 = $conv134 - 42.0; $cmp136 = 0.0 > $sub135; if ($cmp136) { $cond146 = 0.0; } else { $95 = $mask_metric; $mul140 = ($95*27)|0; $conv141 = (+($mul140|0)); $call142 = (+Math_sqrt((+$conv141))); $conv143 = $call142; $sub144 = $conv143 - 42.0; $cond146 = $sub144; } $tf_max = $cond146; $96 = $tf_max; $cmp147 = 163.0 < $96; $97 = $tf_max; $cond152 = $cmp147 ? 163.0 : $97; $mul153 = 0.0068999999202787876 * $cond152; $conv154 = $mul153; $sub155 = $conv154 - 0.13900000000000001; $cmp156 = 0.0 > $sub155; if ($cmp156) { $cond170 = 0.0; $call171 = (+Math_sqrt((+$cond170))); $conv172 = $call171; $100 = $tf_estimate$addr; HEAPF32[$100>>2] = $conv172; $101 = $is_transient; $102 = $saved_stack; _llvm_stackrestore(($102|0)); STACKTOP = sp;return ($101|0); } $98 = $tf_max; $cmp160 = 163.0 < $98; $99 = $tf_max; $cond165 = $cmp160 ? 163.0 : $99; $mul166 = 0.0068999999202787876 * $cond165; $conv167 = $mul166; $sub168 = $conv167 - 0.13900000000000001; $cond170 = $sub168; $call171 = (+Math_sqrt((+$cond170))); $conv172 = $call171; $100 = $tf_estimate$addr; HEAPF32[$100>>2] = $conv172; $101 = $is_transient; $102 = $saved_stack; _llvm_stackrestore(($102|0)); STACKTOP = sp;return ($101|0); } function _compute_mdcts($mode,$shortBlocks,$in,$out,$C,$CC,$LM,$upsample,$arch) { $mode = $mode|0; $shortBlocks = $shortBlocks|0; $in = $in|0; $out = $out|0; $C = $C|0; $CC = $CC|0; $LM = $LM|0; $upsample = $upsample|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0.0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0.0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; var $63 = 0, $64 = 0, $65 = 0, $66 = 0.0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $8 = 0, $9 = 0, $B = 0, $C$addr = 0; var $CC$addr = 0, $LM$addr = 0, $N = 0, $add = 0, $add$ptr = 0, $add$ptr6 = 0, $add22 = 0, $add25 = 0.0, $add40 = 0, $add48 = 0, $add9 = 0, $arch$addr = 0, $arrayidx = 0, $arrayidx19 = 0, $arrayidx23 = 0, $arrayidx26 = 0, $arrayidx41 = 0, $arrayidx49 = 0, $b = 0, $bound = 0; var $c = 0, $cmp = 0, $cmp11 = 0, $cmp12 = 0, $cmp13 = 0, $cmp17 = 0, $cmp31 = 0, $cmp36 = 0, $cmp55 = 0, $conv = 0.0, $div = 0, $i = 0, $in$addr = 0, $inc = 0, $inc10 = 0, $inc28 = 0, $inc44 = 0, $inc54 = 0, $maxLM = 0, $maxLM3 = 0; var $mdct = 0, $mode$addr = 0, $mul = 0, $mul16 = 0, $mul20 = 0.0, $mul21 = 0, $mul24 = 0.0, $mul34 = 0, $mul38 = 0, $mul39 = 0, $mul4 = 0, $mul42 = 0.0, $mul46 = 0, $mul47 = 0, $mul5 = 0, $mul50 = 0, $mul52 = 0, $mul7 = 0, $mul8 = 0, $or$cond = 0; var $out$addr = 0, $overlap = 0, $overlap1 = 0, $shift = 0, $shl = 0, $shortBlocks$addr = 0, $shortMdctSize = 0, $shortMdctSize2 = 0, $sub = 0, $sub51 = 0, $tobool = 0, $upsample$addr = 0, $window = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(80|0); $mode$addr = $mode; $shortBlocks$addr = $shortBlocks; $in$addr = $in; $out$addr = $out; $C$addr = $C; $CC$addr = $CC; $LM$addr = $LM; $upsample$addr = $upsample; $arch$addr = $arch; $0 = $mode$addr; $overlap1 = ((($0)) + 4|0); $1 = HEAP32[$overlap1>>2]|0; $overlap = $1; $2 = $shortBlocks$addr; $tobool = ($2|0)!=(0); if ($tobool) { $3 = $shortBlocks$addr; $B = $3; $4 = $mode$addr; $shortMdctSize = ((($4)) + 44|0); $5 = HEAP32[$shortMdctSize>>2]|0; $N = $5; $6 = $mode$addr; $maxLM = ((($6)) + 36|0); $7 = HEAP32[$maxLM>>2]|0; $shift = $7; } else { $B = 1; $8 = $mode$addr; $shortMdctSize2 = ((($8)) + 44|0); $9 = HEAP32[$shortMdctSize2>>2]|0; $10 = $LM$addr; $shl = $9 << $10; $N = $shl; $11 = $mode$addr; $maxLM3 = ((($11)) + 36|0); $12 = HEAP32[$maxLM3>>2]|0; $13 = $LM$addr; $sub = (($12) - ($13))|0; $shift = $sub; } $c = 0; while(1) { $b = 0; while(1) { $14 = $b; $15 = $B; $cmp = ($14|0)<($15|0); if (!($cmp)) { break; } $16 = $mode$addr; $mdct = ((($16)) + 64|0); $17 = $in$addr; $18 = $c; $19 = $B; $20 = $N; $mul = Math_imul($19, $20)|0; $21 = $overlap; $add = (($mul) + ($21))|0; $mul4 = Math_imul($18, $add)|0; $add$ptr = (($17) + ($mul4<<2)|0); $22 = $b; $23 = $N; $mul5 = Math_imul($22, $23)|0; $add$ptr6 = (($add$ptr) + ($mul5<<2)|0); $24 = $out$addr; $25 = $b; $26 = $c; $27 = $N; $mul7 = Math_imul($26, $27)|0; $28 = $B; $mul8 = Math_imul($mul7, $28)|0; $add9 = (($25) + ($mul8))|0; $arrayidx = (($24) + ($add9<<2)|0); $29 = $mode$addr; $window = ((($29)) + 60|0); $30 = HEAP32[$window>>2]|0; $31 = $overlap; $32 = $shift; $33 = $B; $34 = $arch$addr; _clt_mdct_forward_c($mdct,$add$ptr6,$arrayidx,$30,$31,$32,$33,$34); $35 = $b; $inc = (($35) + 1)|0; $b = $inc; } $36 = $c; $inc10 = (($36) + 1)|0; $c = $inc10; $37 = $CC$addr; $cmp11 = ($inc10|0)<($37|0); if (!($cmp11)) { break; } } $38 = $CC$addr; $cmp12 = ($38|0)==(2); $39 = $C$addr; $cmp13 = ($39|0)==(1); $or$cond = $cmp12 & $cmp13; L12: do { if ($or$cond) { $i = 0; while(1) { $40 = $i; $41 = $B; $42 = $N; $mul16 = Math_imul($41, $42)|0; $cmp17 = ($40|0)<($mul16|0); if (!($cmp17)) { break L12; } $43 = $out$addr; $44 = $i; $arrayidx19 = (($43) + ($44<<2)|0); $45 = +HEAPF32[$arrayidx19>>2]; $mul20 = 0.5 * $45; $46 = $out$addr; $47 = $B; $48 = $N; $mul21 = Math_imul($47, $48)|0; $49 = $i; $add22 = (($mul21) + ($49))|0; $arrayidx23 = (($46) + ($add22<<2)|0); $50 = +HEAPF32[$arrayidx23>>2]; $mul24 = 0.5 * $50; $add25 = $mul20 + $mul24; $51 = $out$addr; $52 = $i; $arrayidx26 = (($51) + ($52<<2)|0); HEAPF32[$arrayidx26>>2] = $add25; $53 = $i; $inc28 = (($53) + 1)|0; $i = $inc28; } } } while(0); $54 = $upsample$addr; $cmp31 = ($54|0)!=(1); if (!($cmp31)) { STACKTOP = sp;return; } $c = 0; while(1) { $55 = $B; $56 = $N; $mul34 = Math_imul($55, $56)|0; $57 = $upsample$addr; $div = (($mul34|0) / ($57|0))&-1; $bound = $div; $i = 0; while(1) { $58 = $i; $59 = $bound; $cmp36 = ($58|0)<($59|0); if (!($cmp36)) { break; } $60 = $upsample$addr; $conv = (+($60|0)); $61 = $out$addr; $62 = $c; $63 = $B; $mul38 = Math_imul($62, $63)|0; $64 = $N; $mul39 = Math_imul($mul38, $64)|0; $65 = $i; $add40 = (($mul39) + ($65))|0; $arrayidx41 = (($61) + ($add40<<2)|0); $66 = +HEAPF32[$arrayidx41>>2]; $mul42 = $66 * $conv; HEAPF32[$arrayidx41>>2] = $mul42; $67 = $i; $inc44 = (($67) + 1)|0; $i = $inc44; } $68 = $out$addr; $69 = $c; $70 = $B; $mul46 = Math_imul($69, $70)|0; $71 = $N; $mul47 = Math_imul($mul46, $71)|0; $72 = $bound; $add48 = (($mul47) + ($72))|0; $arrayidx49 = (($68) + ($add48<<2)|0); $73 = $B; $74 = $N; $mul50 = Math_imul($73, $74)|0; $75 = $bound; $sub51 = (($mul50) - ($75))|0; $mul52 = $sub51<<2; _memset(($arrayidx49|0),0,($mul52|0))|0; $76 = $c; $inc54 = (($76) + 1)|0; $c = $inc54; $77 = $C$addr; $cmp55 = ($inc54|0)<($77|0); if (!($cmp55)) { break; } } STACKTOP = sp;return; } function _patch_transient_decision($newE,$oldE,$nbEBands,$start,$end,$C) { $newE = $newE|0; $oldE = $oldE|0; $nbEBands = $nbEBands|0; $start = $start|0; $end = $end|0; $C = $C|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0.0, $11 = 0, $12 = 0.0, $13 = 0, $14 = 0.0, $15 = 0, $16 = 0, $17 = 0.0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0; var $23 = 0.0, $24 = 0, $25 = 0, $26 = 0, $27 = 0.0, $28 = 0, $29 = 0, $3 = 0.0, $30 = 0, $31 = 0, $32 = 0, $33 = 0.0, $34 = 0, $35 = 0, $36 = 0.0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0.0; var $41 = 0, $42 = 0, $43 = 0, $44 = 0.0, $45 = 0, $46 = 0.0, $47 = 0, $48 = 0, $49 = 0.0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0.0, $54 = 0, $55 = 0, $56 = 0, $57 = 0.0, $58 = 0, $59 = 0; var $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0.0, $65 = 0, $66 = 0.0, $67 = 0, $68 = 0.0, $69 = 0.0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0; var $78 = 0, $79 = 0, $8 = 0, $80 = 0.0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0.0, $86 = 0, $87 = 0.0, $88 = 0, $89 = 0.0, $9 = 0.0, $90 = 0.0, $91 = 0.0, $92 = 0.0, $93 = 0.0, $94 = 0.0, $95 = 0; var $96 = 0, $97 = 0, $98 = 0.0, $99 = 0, $C$addr = 0, $add = 0, $add100 = 0, $add118 = 0.0, $add13 = 0, $add19 = 0, $add19$sink = 0, $add24 = 0, $add32 = 0, $add38 = 0, $add38$sink = 0, $add49 = 0, $add55 = 0, $add55$sink = 0, $add70 = 0, $add77 = 0; var $add94 = 0, $arrayidx = 0, $arrayidx1 = 0, $arrayidx10 = 0, $arrayidx101 = 0, $arrayidx104 = 0, $arrayidx108 = 0, $arrayidx11 = 0, $arrayidx14 = 0, $arrayidx20 = 0, $arrayidx23 = 0, $arrayidx29 = 0, $arrayidx3 = 0, $arrayidx31 = 0, $arrayidx33 = 0, $arrayidx39 = 0, $arrayidx45 = 0, $arrayidx48 = 0, $arrayidx5 = 0, $arrayidx50 = 0; var $arrayidx56 = 0, $arrayidx61 = 0, $arrayidx69 = 0, $arrayidx71 = 0, $arrayidx75 = 0, $arrayidx78 = 0, $arrayidx8 = 0, $arrayidx82 = 0, $arrayidx95 = 0, $c = 0, $cmp = 0, $cmp105 = 0, $cmp112 = 0, $cmp123 = 0, $cmp125 = 0, $cmp132 = 0, $cmp15 = 0, $cmp2 = 0, $cmp26 = 0, $cmp34 = 0; var $cmp42 = 0, $cmp51 = 0, $cmp6 = 0, $cmp67 = 0, $cmp73 = 0, $cmp85 = 0, $cmp92 = 0, $cmp96 = 0, $cond = 0.0, $cond103 = 0.0, $cond110 = 0.0, $cond117 = 0.0, $cond129 = 0, $cond60 = 0.0, $cond81 = 0.0, $cond89 = 0, $conv = 0.0, $conv133 = 0, $dec = 0, $div = 0.0; var $end$addr = 0, $i = 0, $inc = 0, $inc120 = 0, $inc122 = 0, $inc63 = 0, $mean_diff = 0.0, $mul = 0, $mul131 = 0, $mul99 = 0, $nbEBands$addr = 0, $newE$addr = 0, $oldE$addr = 0, $spread_old = 0, $start$addr = 0, $sub = 0, $sub111 = 0.0, $sub115 = 0.0, $sub124 = 0, $sub130 = 0; var $sub28 = 0, $sub30 = 0.0, $sub4 = 0.0, $sub44 = 0, $sub46 = 0.0, $sub65 = 0, $sub7 = 0, $sub72 = 0.0, $sub79 = 0.0, $sub9 = 0.0, $sub91 = 0, $x1 = 0.0, $x2 = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 160|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(160|0); $spread_old = sp + 8|0; $newE$addr = $newE; $oldE$addr = $oldE; $nbEBands$addr = $nbEBands; $start$addr = $start; $end$addr = $end; $C$addr = $C; $mean_diff = 0.0; $0 = $C$addr; $cmp = ($0|0)==(1); $1 = $oldE$addr; $2 = $start$addr; $arrayidx = (($1) + ($2<<2)|0); $3 = +HEAPF32[$arrayidx>>2]; L1: do { if ($cmp) { $4 = $start$addr; $arrayidx1 = (($spread_old) + ($4<<2)|0); HEAPF32[$arrayidx1>>2] = $3; $5 = $start$addr; $add = (($5) + 1)|0; $i = $add; while(1) { $6 = $i; $7 = $end$addr; $cmp2 = ($6|0)<($7|0); if (!($cmp2)) { break L1; } $8 = $i; $sub = (($8) - 1)|0; $arrayidx3 = (($spread_old) + ($sub<<2)|0); $9 = +HEAPF32[$arrayidx3>>2]; $sub4 = $9 - 1.0; $10 = $oldE$addr; $11 = $i; $arrayidx5 = (($10) + ($11<<2)|0); $12 = +HEAPF32[$arrayidx5>>2]; $cmp6 = $sub4 > $12; if ($cmp6) { $13 = $i; $sub7 = (($13) - 1)|0; $arrayidx8 = (($spread_old) + ($sub7<<2)|0); $14 = +HEAPF32[$arrayidx8>>2]; $sub9 = $14 - 1.0; $cond = $sub9; } else { $15 = $oldE$addr; $16 = $i; $arrayidx10 = (($15) + ($16<<2)|0); $17 = +HEAPF32[$arrayidx10>>2]; $cond = $17; } $18 = $i; $arrayidx11 = (($spread_old) + ($18<<2)|0); HEAPF32[$arrayidx11>>2] = $cond; $19 = $i; $inc = (($19) + 1)|0; $i = $inc; } } else { $20 = $oldE$addr; $21 = $start$addr; $22 = $nbEBands$addr; $add13 = (($21) + ($22))|0; $arrayidx14 = (($20) + ($add13<<2)|0); $23 = +HEAPF32[$arrayidx14>>2]; $cmp15 = $3 > $23; $24 = $oldE$addr; $25 = $start$addr; $26 = $nbEBands$addr; $add19 = (($25) + ($26))|0; $add19$sink = $cmp15 ? $25 : $add19; $arrayidx20 = (($24) + ($add19$sink<<2)|0); $27 = +HEAPF32[$arrayidx20>>2]; $28 = $start$addr; $arrayidx23 = (($spread_old) + ($28<<2)|0); HEAPF32[$arrayidx23>>2] = $27; $29 = $start$addr; $add24 = (($29) + 1)|0; $i = $add24; while(1) { $30 = $i; $31 = $end$addr; $cmp26 = ($30|0)<($31|0); if (!($cmp26)) { break L1; } $32 = $i; $sub28 = (($32) - 1)|0; $arrayidx29 = (($spread_old) + ($sub28<<2)|0); $33 = +HEAPF32[$arrayidx29>>2]; $sub30 = $33 - 1.0; $34 = $oldE$addr; $35 = $i; $arrayidx31 = (($34) + ($35<<2)|0); $36 = +HEAPF32[$arrayidx31>>2]; $37 = $oldE$addr; $38 = $i; $39 = $nbEBands$addr; $add32 = (($38) + ($39))|0; $arrayidx33 = (($37) + ($add32<<2)|0); $40 = +HEAPF32[$arrayidx33>>2]; $cmp34 = $36 > $40; $41 = $oldE$addr; $42 = $i; $43 = $nbEBands$addr; $add38 = (($42) + ($43))|0; $add38$sink = $cmp34 ? $42 : $add38; $arrayidx39 = (($41) + ($add38$sink<<2)|0); $44 = +HEAPF32[$arrayidx39>>2]; $cmp42 = $sub30 > $44; if ($cmp42) { $45 = $i; $sub44 = (($45) - 1)|0; $arrayidx45 = (($spread_old) + ($sub44<<2)|0); $46 = +HEAPF32[$arrayidx45>>2]; $sub46 = $46 - 1.0; $cond60 = $sub46; } else { $47 = $oldE$addr; $48 = $i; $arrayidx48 = (($47) + ($48<<2)|0); $49 = +HEAPF32[$arrayidx48>>2]; $50 = $oldE$addr; $51 = $i; $52 = $nbEBands$addr; $add49 = (($51) + ($52))|0; $arrayidx50 = (($50) + ($add49<<2)|0); $53 = +HEAPF32[$arrayidx50>>2]; $cmp51 = $49 > $53; $54 = $oldE$addr; $55 = $i; $56 = $nbEBands$addr; $add55 = (($55) + ($56))|0; $add55$sink = $cmp51 ? $55 : $add55; $arrayidx56 = (($54) + ($add55$sink<<2)|0); $57 = +HEAPF32[$arrayidx56>>2]; $cond60 = $57; } $58 = $i; $arrayidx61 = (($spread_old) + ($58<<2)|0); HEAPF32[$arrayidx61>>2] = $cond60; $59 = $i; $inc63 = (($59) + 1)|0; $i = $inc63; } } } while(0); $60 = $end$addr; $sub65 = (($60) - 2)|0; $i = $sub65; while(1) { $61 = $i; $62 = $start$addr; $cmp67 = ($61|0)>=($62|0); if (!($cmp67)) { break; } $63 = $i; $arrayidx69 = (($spread_old) + ($63<<2)|0); $64 = +HEAPF32[$arrayidx69>>2]; $65 = $i; $add70 = (($65) + 1)|0; $arrayidx71 = (($spread_old) + ($add70<<2)|0); $66 = +HEAPF32[$arrayidx71>>2]; $sub72 = $66 - 1.0; $cmp73 = $64 > $sub72; $67 = $i; if ($cmp73) { $arrayidx75 = (($spread_old) + ($67<<2)|0); $68 = +HEAPF32[$arrayidx75>>2]; $cond81 = $68; } else { $add77 = (($67) + 1)|0; $arrayidx78 = (($spread_old) + ($add77<<2)|0); $69 = +HEAPF32[$arrayidx78>>2]; $sub79 = $69 - 1.0; $cond81 = $sub79; } $70 = $i; $arrayidx82 = (($spread_old) + ($70<<2)|0); HEAPF32[$arrayidx82>>2] = $cond81; $71 = $i; $dec = (($71) + -1)|0; $i = $dec; } $c = 0; while(1) { $72 = $start$addr; $cmp85 = (2)>($72|0); $73 = $start$addr; $cond89 = $cmp85 ? 2 : $73; $i = $cond89; while(1) { $74 = $i; $75 = $end$addr; $sub91 = (($75) - 1)|0; $cmp92 = ($74|0)<($sub91|0); if (!($cmp92)) { break; } $76 = $newE$addr; $77 = $i; $78 = $c; $79 = $nbEBands$addr; $mul = Math_imul($78, $79)|0; $add94 = (($77) + ($mul))|0; $arrayidx95 = (($76) + ($add94<<2)|0); $80 = +HEAPF32[$arrayidx95>>2]; $cmp96 = 0.0 > $80; if ($cmp96) { $cond103 = 0.0; } else { $81 = $newE$addr; $82 = $i; $83 = $c; $84 = $nbEBands$addr; $mul99 = Math_imul($83, $84)|0; $add100 = (($82) + ($mul99))|0; $arrayidx101 = (($81) + ($add100<<2)|0); $85 = +HEAPF32[$arrayidx101>>2]; $cond103 = $85; } $x1 = $cond103; $86 = $i; $arrayidx104 = (($spread_old) + ($86<<2)|0); $87 = +HEAPF32[$arrayidx104>>2]; $cmp105 = 0.0 > $87; if ($cmp105) { $cond110 = 0.0; } else { $88 = $i; $arrayidx108 = (($spread_old) + ($88<<2)|0); $89 = +HEAPF32[$arrayidx108>>2]; $cond110 = $89; } $x2 = $cond110; $90 = $mean_diff; $91 = $x1; $92 = $x2; $sub111 = $91 - $92; $cmp112 = 0.0 > $sub111; if ($cmp112) { $cond117 = 0.0; } else { $93 = $x1; $94 = $x2; $sub115 = $93 - $94; $cond117 = $sub115; } $add118 = $90 + $cond117; $mean_diff = $add118; $95 = $i; $inc120 = (($95) + 1)|0; $i = $inc120; } $96 = $c; $inc122 = (($96) + 1)|0; $c = $inc122; $97 = $C$addr; $cmp123 = ($inc122|0)<($97|0); if (!($cmp123)) { break; } } $98 = $mean_diff; $99 = $C$addr; $100 = $end$addr; $sub124 = (($100) - 1)|0; $101 = $start$addr; $cmp125 = (2)>($101|0); $102 = $start$addr; $cond129 = $cmp125 ? 2 : $102; $sub130 = (($sub124) - ($cond129))|0; $mul131 = Math_imul($99, $sub130)|0; $conv = (+($mul131|0)); $div = $98 / $conv; $mean_diff = $div; $103 = $mean_diff; $cmp132 = $103 > 1.0; $conv133 = $cmp132&1; STACKTOP = sp;return ($conv133|0); } function _dynalloc_analysis($bandLogE,$bandLogE2,$nbEBands,$start,$end,$C,$offsets,$lsb_depth,$logN,$isTransient,$vbr,$constrained_vbr,$eBands,$LM,$effectiveBytes,$tot_boost_,$lfe,$surround_dynalloc,$analysis,$importance,$spread_weight) { $bandLogE = $bandLogE|0; $bandLogE2 = $bandLogE2|0; $nbEBands = $nbEBands|0; $start = $start|0; $end = $end|0; $C = $C|0; $offsets = $offsets|0; $lsb_depth = $lsb_depth|0; $logN = $logN|0; $isTransient = $isTransient|0; $vbr = $vbr|0; $constrained_vbr = $constrained_vbr|0; $eBands = $eBands|0; $LM = $LM|0; $effectiveBytes = $effectiveBytes|0; $tot_boost_ = $tot_boost_|0; $lfe = $lfe|0; $surround_dynalloc = $surround_dynalloc|0; $analysis = $analysis|0; $importance = $importance|0; $spread_weight = $spread_weight|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0.0, $101 = 0.0, $102 = 0, $103 = 0.0, $104 = 0.0, $105 = 0.0, $106 = 0, $107 = 0.0, $108 = 0.0, $109 = 0.0, $11 = 0, $110 = 0.0, $111 = 0.0, $112 = 0.0, $113 = 0.0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0.0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0.0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0.0, $14 = 0.0, $140 = 0, $141 = 0, $142 = 0, $143 = 0.0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0.0, $149 = 0, $15 = 0, $150 = 0, $151 = 0.0; var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0.0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0.0, $165 = 0, $166 = 0, $167 = 0.0, $168 = 0, $169 = 0, $17 = 0; var $170 = 0, $171 = 0, $172 = 0.0, $173 = 0, $174 = 0, $175 = 0.0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0.0, $181 = 0, $182 = 0, $183 = 0.0, $184 = 0.0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; var $189 = 0.0, $19 = 0, $190 = 0, $191 = 0, $192 = 0.0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0.0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0.0; var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0.0, $210 = 0.0, $211 = 0, $212 = 0, $213 = 0.0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0.0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; var $224 = 0, $225 = 0.0, $226 = 0, $227 = 0.0, $228 = 0.0, $229 = 0, $23 = 0, $230 = 0.0, $231 = 0.0, $232 = 0, $233 = 0, $234 = 0.0, $235 = 0.0, $236 = 0, $237 = 0.0, $238 = 0.0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; var $242 = 0, $243 = 0, $244 = 0.0, $245 = 0, $246 = 0, $247 = 0.0, $248 = 0.0, $249 = 0, $25 = 0, $250 = 0, $251 = 0.0, $252 = 0.0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0.0, $258 = 0.0, $259 = 0, $26 = 0.0; var $260 = 0, $261 = 0.0, $262 = 0.0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0.0, $27 = 0, $270 = 0, $271 = 0.0, $272 = 0, $273 = 0, $274 = 0, $275 = 0.0, $276 = 0, $277 = 0, $278 = 0; var $279 = 0, $28 = 0.0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0.0, $288 = 0, $289 = 0.0, $29 = 0.0, $290 = 0, $291 = 0, $292 = 0.0, $293 = 0, $294 = 0.0, $295 = 0, $296 = 0; var $297 = 0, $298 = 0.0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0.0, $302 = 0, $303 = 0.0, $304 = 0, $305 = 0, $306 = 0.0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0.0, $311 = 0, $312 = 0.0, $313 = 0; var $314 = 0, $315 = 0.0, $316 = 0, $317 = 0.0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0.0, $322 = 0, $323 = 0, $324 = 0.0, $325 = 0, $326 = 0, $327 = 0, $328 = 0.0, $329 = 0, $33 = 0, $330 = 0, $331 = 0.0; var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0.0, $339 = 0, $34 = 0.0, $340 = 0.0, $341 = 0, $342 = 0, $343 = 0.0, $344 = 0, $345 = 0.0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; var $350 = 0, $351 = 0, $352 = 0.0, $353 = 0, $354 = 0, $355 = 0.0, $356 = 0, $357 = 0, $358 = 0, $359 = 0.0, $36 = 0.0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0.0, $367 = 0, $368 = 0.0; var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0.0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; var $387 = 0.0, $388 = 0, $389 = 0, $39 = 0, $390 = 0.0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0.0, $401 = 0, $402 = 0, $403 = 0; var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0.0, $411 = 0, $412 = 0.0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; var $422 = 0, $423 = 0, $424 = 0.0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0.0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; var $459 = 0, $46 = 0, $460 = 0.0, $461 = 0, $47 = 0.0, $48 = 0, $49 = 0.0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0.0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0.0; var $61 = 0, $62 = 0.0, $63 = 0, $64 = 0.0, $65 = 0, $66 = 0, $67 = 0, $68 = 0.0, $69 = 0, $7 = 0, $70 = 0.0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0.0, $78 = 0, $79 = 0.0; var $8 = 0, $80 = 0, $81 = 0.0, $82 = 0.0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0.0, $89 = 0, $9 = 0, $90 = 0.0, $91 = 0, $92 = 0.0, $93 = 0.0, $94 = 0, $95 = 0, $96 = 0, $97 = 0; var $98 = 0, $99 = 0.0, $C$addr = 0, $LM$addr = 0, $add = 0.0, $add10 = 0, $add109 = 0, $add117 = 0, $add14 = 0.0, $add173 = 0.0, $add181 = 0.0, $add21 = 0, $add210 = 0, $add213 = 0, $add216 = 0.0, $add223 = 0.0, $add225 = 0, $add232 = 0.0, $add235 = 0, $add249 = 0; var $add251 = 0.0, $add253 = 0, $add258 = 0, $add260 = 0.0, $add263 = 0, $add272 = 0, $add274 = 0.0, $add276 = 0, $add28 = 0, $add281 = 0, $add283 = 0.0, $add286 = 0, $add303 = 0, $add314 = 0, $add348 = 0, $add407 = 0, $add414 = 0, $add421 = 0, $add424 = 0, $add432 = 0; var $add450 = 0, $add452 = 0, $add459 = 0, $add461 = 0, $add466 = 0.0, $add528 = 0.0, $add589 = 0.0, $add59 = 0, $add6 = 0.0, $add608 = 0, $add647 = 0, $add663 = 0, $add68 = 0, $add80 = 0, $add9 = 0, $analysis$addr = 0, $arrayidx = 0, $arrayidx108 = 0, $arrayidx110 = 0, $arrayidx115 = 0; var $arrayidx118 = 0, $arrayidx122 = 0, $arrayidx129 = 0, $arrayidx138 = 0, $arrayidx15 = 0, $arrayidx151 = 0, $arrayidx189 = 0, $arrayidx201 = 0, $arrayidx203 = 0, $arrayidx211 = 0, $arrayidx215 = 0, $arrayidx22 = 0, $arrayidx222 = 0, $arrayidx226 = 0, $arrayidx23 = 0, $arrayidx231 = 0, $arrayidx236 = 0, $arrayidx239 = 0, $arrayidx248 = 0, $arrayidx250 = 0; var $arrayidx254 = 0, $arrayidx259 = 0, $arrayidx264 = 0, $arrayidx270 = 0, $arrayidx273 = 0, $arrayidx277 = 0, $arrayidx282 = 0, $arrayidx287 = 0, $arrayidx29 = 0, $arrayidx292 = 0, $arrayidx30 = 0, $arrayidx301 = 0, $arrayidx305 = 0, $arrayidx311 = 0, $arrayidx316 = 0, $arrayidx321 = 0, $arrayidx326 = 0, $arrayidx338 = 0, $arrayidx342 = 0, $arrayidx346 = 0; var $arrayidx350 = 0, $arrayidx354 = 0, $arrayidx359 = 0, $arrayidx364 = 0, $arrayidx366 = 0, $arrayidx371 = 0, $arrayidx376 = 0, $arrayidx381 = 0, $arrayidx382 = 0, $arrayidx386 = 0, $arrayidx388 = 0, $arrayidx388$sink = 0, $arrayidx391 = 0, $arrayidx408 = 0, $arrayidx409 = 0, $arrayidx415 = 0, $arrayidx417 = 0, $arrayidx422 = 0, $arrayidx423 = 0, $arrayidx425 = 0; var $arrayidx430 = 0, $arrayidx433 = 0, $arrayidx437 = 0, $arrayidx438 = 0, $arrayidx439 = 0, $arrayidx445 = 0, $arrayidx446 = 0, $arrayidx45 = 0, $arrayidx451 = 0, $arrayidx453 = 0, $arrayidx46 = 0, $arrayidx460 = 0, $arrayidx462 = 0, $arrayidx468 = 0, $arrayidx476 = 0, $arrayidx477 = 0, $arrayidx48 = 0, $arrayidx483 = 0, $arrayidx484 = 0, $arrayidx488 = 0; var $arrayidx497 = 0, $arrayidx498 = 0, $arrayidx502 = 0, $arrayidx504 = 0, $arrayidx504$sink = 0, $arrayidx507 = 0, $arrayidx515 = 0, $arrayidx519 = 0, $arrayidx532 = 0, $arrayidx545 = 0, $arrayidx547 = 0, $arrayidx559 = 0, $arrayidx565 = 0, $arrayidx567 = 0, $arrayidx58 = 0, $arrayidx584 = 0, $arrayidx585 = 0, $arrayidx590 = 0, $arrayidx599 = 0, $arrayidx60 = 0; var $arrayidx603 = 0, $arrayidx607 = 0, $arrayidx609 = 0, $arrayidx61 = 0, $arrayidx611 = 0, $arrayidx618 = 0, $arrayidx626 = 0, $arrayidx66 = 0, $arrayidx660 = 0, $arrayidx662 = 0, $arrayidx673 = 0, $arrayidx69 = 0, $arrayidx7 = 0, $arrayidx70 = 0, $arrayidx74 = 0, $arrayidx85 = 0, $arrayidx87 = 0, $arrayidx92 = 0, $arrayidx95 = 0, $arrayidx99 = 0; var $bandLogE$addr = 0, $bandLogE2$addr = 0, $boost = 0, $boost_bits = 0, $c = 0, $call = 0.0, $call183 = 0.0, $call306 = 0.0, $call317 = 0.0, $call327 = 0.0, $call351 = 0.0, $call525 = 0.0, $call530 = 0.0, $cap = 0, $cmp = 0, $cmp105 = 0, $cmp112 = 0, $cmp126 = 0, $cmp131 = 0, $cmp139 = 0; var $cmp143 = 0, $cmp155 = 0, $cmp161 = 0, $cmp165 = 0, $cmp17 = 0, $cmp177 = 0, $cmp193 = 0, $cmp195 = 0, $cmp206 = 0, $cmp217 = 0, $cmp227 = 0, $cmp245 = 0, $cmp25 = 0, $cmp255 = 0, $cmp267 = 0, $cmp278 = 0, $cmp298 = 0, $cmp308 = 0, $cmp330 = 0, $cmp339 = 0; var $cmp355 = 0, $cmp36 = 0, $cmp367 = 0, $cmp378 = 0, $cmp383 = 0, $cmp397 = 0, $cmp400 = 0, $cmp404 = 0, $cmp411 = 0, $cmp42 = 0, $cmp427 = 0, $cmp441 = 0, $cmp455 = 0, $cmp473 = 0, $cmp479 = 0, $cmp494 = 0, $cmp499 = 0, $cmp512 = 0, $cmp516 = 0, $cmp52 = 0; var $cmp542 = 0, $cmp55 = 0, $cmp553 = 0, $cmp556 = 0, $cmp562 = 0, $cmp575 = 0, $cmp581 = 0, $cmp596 = 0, $cmp600 = 0, $cmp615 = 0, $cmp623 = 0, $cmp63 = 0, $cmp652 = 0, $cmp670 = 0, $cmp82 = 0, $cmp89 = 0, $cond = 0.0, $cond121 = 0.0, $cond137 = 0.0, $cond149 = 0.0; var $cond153 = 0.0, $cond160 = 0.0, $cond170 = 0.0, $cond172 = 0.0, $cond188 = 0, $cond238 = 0.0, $cond266 = 0.0, $cond291 = 0.0, $cond320 = 0.0, $cond336 = 0.0, $cond345 = 0.0, $cond362 = 0.0, $cond374 = 0.0, $cond420 = 0.0, $cond436 = 0.0, $cond449 = 0.0, $cond465 = 0.0, $cond487 = 0.0, $cond522 = 0.0, $cond580 = 0; var $cond606 = 0.0, $cond73 = 0.0, $cond98 = 0.0, $constrained_vbr$addr = 0, $conv = 0.0, $conv12 = 0.0, $conv174 = 0.0, $conv175 = 0, $conv182 = 0.0, $conv184 = 0, $conv5 = 0.0, $conv523 = 0.0, $conv526 = 0.0, $conv529 = 0.0, $conv531 = 0, $conv586 = 0, $conv587 = 0.0, $conv610 = 0, $conv612 = 0, $conv619 = 0; var $conv628 = 0, $conv633 = 0.0, $conv636 = 0, $dec = 0, $dec294 = 0, $div = 0, $div635 = 0.0, $div651 = 0, $div656 = 0, $eBands$addr = 0, $effectiveBytes$addr = 0, $end$addr = 0, $f = 0, $i = 0, $importance$addr = 0, $inc = 0, $inc101 = 0, $inc191 = 0, $inc241 = 0, $inc323 = 0; var $inc33 = 0, $inc35 = 0, $inc393 = 0, $inc396 = 0, $inc470 = 0, $inc490 = 0, $inc50 = 0, $inc509 = 0, $inc534 = 0, $inc549 = 0, $inc570 = 0, $inc592 = 0, $inc666 = 0, $inc675 = 0, $inc76 = 0, $isTransient$addr = 0, $last = 0, $leak_boost = 0, $lfe$addr = 0, $logN$addr = 0; var $lsb_depth$addr = 0, $maxDepth = 0.0, $mul = 0, $mul1 = 0, $mul11 = 0, $mul13 = 0.0, $mul20 = 0, $mul200 = 0, $mul202 = 0, $mul209 = 0, $mul212 = 0, $mul224 = 0, $mul234 = 0, $mul252 = 0, $mul262 = 0, $mul27 = 0, $mul275 = 0, $mul285 = 0, $mul3 = 0, $mul302 = 0; var $mul313 = 0, $mul325 = 0, $mul347 = 0, $mul4 = 0.0, $mul467 = 0.0, $mul524 = 0.0, $mul527 = 0.0, $mul546 = 0.0, $mul560 = 0.0, $mul566 = 0.0, $mul588 = 0.0, $mul614 = 0, $mul620 = 0, $mul627 = 0.0, $mul629 = 0, $mul634 = 0.0, $mul637 = 0, $mul650 = 0, $mul655 = 0, $mul78 = 0; var $mul79 = 0, $nbEBands$addr = 0, $offset = 0.0, $offsets$addr = 0, $or$cond = 0, $or$cond$not = 0, $or$cond1 = 0, $or$cond2 = 0, $or$cond2$not = 0, $or$cond3 = 0, $or$cond4 = 0, $saved_stack = 0, $saved_stack38 = 0, $shl = 0, $shl621 = 0, $shl630 = 0, $shl638 = 0, $shl657 = 0, $shl658 = 0, $shr = 0; var $shr186 = 0, $shr648 = 0, $shr649 = 0, $smr = 0.0, $spread_weight$addr = 0, $start$addr = 0, $sub = 0, $sub$ptr$div = 0, $sub$ptr$lhs$cast = 0, $sub$ptr$rhs$cast = 0, $sub$ptr$sub = 0, $sub103 = 0, $sub111 = 0.0, $sub119 = 0.0, $sub130 = 0.0, $sub135 = 0.0, $sub142 = 0.0, $sub147 = 0.0, $sub154 = 0.0, $sub176 = 0; var $sub185 = 0, $sub214 = 0, $sub221 = 0, $sub230 = 0, $sub24 = 0.0, $sub243 = 0, $sub297 = 0, $sub304 = 0, $sub307 = 0.0, $sub31 = 0.0, $sub315 = 0, $sub318 = 0.0, $sub328 = 0.0, $sub349 = 0, $sub352 = 0.0, $sub353 = 0, $sub358 = 0, $sub363 = 0, $sub365 = 0, $sub370 = 0; var $sub375 = 0, $sub410 = 0.0, $sub418 = 0.0, $sub426 = 0.0, $sub434 = 0.0, $sub440 = 0.0, $sub447 = 0.0, $sub454 = 0.0, $sub463 = 0.0, $sub47 = 0.0, $sub478 = 0.0, $sub485 = 0.0, $sub613 = 0, $sub62 = 0.0, $sub659 = 0, $sub71 = 0.0, $sub8 = 0.0, $sub86 = 0, $sub88 = 0.0, $sub94 = 0; var $sub96 = 0.0, $surround_dynalloc$addr = 0, $tmp = 0.0, $tobool = 0, $tobool536 = 0, $tobool537 = 0, $tobool539 = 0, $tobool572 = 0, $tobool641 = 0, $tobool643 = 0, $tobool645 = 0, $tot_boost = 0, $tot_boost_$addr = 0, $vbr$addr = 0, $vla = 0, $vla$alloca_mul = 0, $vla2 = 0, $vla2$alloca_mul = 0, $vla39 = 0, $vla39$alloca_mul = 0; var $vla40 = 0, $vla40$alloca_mul = 0, $width = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 144|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(144|0); $bandLogE$addr = $bandLogE; $bandLogE2$addr = $bandLogE2; $nbEBands$addr = $nbEBands; $start$addr = $start; $end$addr = $end; $C$addr = $C; $offsets$addr = $offsets; $lsb_depth$addr = $lsb_depth; $logN$addr = $logN; $isTransient$addr = $isTransient; $vbr$addr = $vbr; $constrained_vbr$addr = $constrained_vbr; $eBands$addr = $eBands; $LM$addr = $LM; $effectiveBytes$addr = $effectiveBytes; $tot_boost_$addr = $tot_boost_; $lfe$addr = $lfe; $surround_dynalloc$addr = $surround_dynalloc; $analysis$addr = $analysis; $importance$addr = $importance; $spread_weight$addr = $spread_weight; $tot_boost = 0; $0 = $C$addr; $1 = $nbEBands$addr; $mul = Math_imul($0, $1)|0; $2 = (_llvm_stacksave()|0); $saved_stack = $2; $vla$alloca_mul = $mul<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $3 = $C$addr; $4 = $nbEBands$addr; $mul1 = Math_imul($3, $4)|0; $vla2$alloca_mul = $mul1<<2; $vla2 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla2$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla2$alloca_mul)|0)+15)&-16)|0);; $5 = $offsets$addr; $6 = $nbEBands$addr; $mul3 = $6<<2; _memset(($5|0),0,($mul3|0))|0; $maxDepth = -31.899999618530273; $i = 0; while(1) { $7 = $i; $8 = $end$addr; $cmp = ($7|0)<($8|0); if (!($cmp)) { break; } $9 = $logN$addr; $10 = $i; $arrayidx = (($9) + ($10<<1)|0); $11 = HEAP16[$arrayidx>>1]|0; $conv = (+($11<<16>>16)); $mul4 = 0.0625 * $conv; $add = $mul4 + 0.5; $12 = $lsb_depth$addr; $sub = (9 - ($12))|0; $conv5 = (+($sub|0)); $add6 = $add + $conv5; $13 = $i; $arrayidx7 = (14980 + ($13<<2)|0); $14 = +HEAPF32[$arrayidx7>>2]; $sub8 = $add6 - $14; $15 = $i; $add9 = (($15) + 5)|0; $16 = $i; $add10 = (($16) + 5)|0; $mul11 = Math_imul($add9, $add10)|0; $conv12 = (+($mul11|0)); $mul13 = 0.0062000001780688763 * $conv12; $add14 = $sub8 + $mul13; $17 = $i; $arrayidx15 = (($vla2) + ($17<<2)|0); HEAPF32[$arrayidx15>>2] = $add14; $18 = $i; $inc = (($18) + 1)|0; $i = $inc; } $c = 0; while(1) { $i = 0; while(1) { $19 = $i; $20 = $end$addr; $cmp17 = ($19|0)<($20|0); if (!($cmp17)) { break; } $21 = $maxDepth; $22 = $bandLogE$addr; $23 = $c; $24 = $nbEBands$addr; $mul20 = Math_imul($23, $24)|0; $25 = $i; $add21 = (($mul20) + ($25))|0; $arrayidx22 = (($22) + ($add21<<2)|0); $26 = +HEAPF32[$arrayidx22>>2]; $27 = $i; $arrayidx23 = (($vla2) + ($27<<2)|0); $28 = +HEAPF32[$arrayidx23>>2]; $sub24 = $26 - $28; $cmp25 = $21 > $sub24; if ($cmp25) { $29 = $maxDepth; $cond = $29; } else { $30 = $bandLogE$addr; $31 = $c; $32 = $nbEBands$addr; $mul27 = Math_imul($31, $32)|0; $33 = $i; $add28 = (($mul27) + ($33))|0; $arrayidx29 = (($30) + ($add28<<2)|0); $34 = +HEAPF32[$arrayidx29>>2]; $35 = $i; $arrayidx30 = (($vla2) + ($35<<2)|0); $36 = +HEAPF32[$arrayidx30>>2]; $sub31 = $34 - $36; $cond = $sub31; } $maxDepth = $cond; $37 = $i; $inc33 = (($37) + 1)|0; $i = $inc33; } $38 = $c; $inc35 = (($38) + 1)|0; $c = $inc35; $39 = $C$addr; $cmp36 = ($inc35|0)<($39|0); if (!($cmp36)) { break; } } $40 = $nbEBands$addr; $41 = (_llvm_stacksave()|0); $saved_stack38 = $41; $vla39$alloca_mul = $40<<2; $vla39 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla39$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla39$alloca_mul)|0)+15)&-16)|0);; $42 = $nbEBands$addr; $vla40$alloca_mul = $42<<2; $vla40 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla40$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla40$alloca_mul)|0)+15)&-16)|0);; $i = 0; while(1) { $43 = $i; $44 = $end$addr; $cmp42 = ($43|0)<($44|0); if (!($cmp42)) { break; } $45 = $bandLogE$addr; $46 = $i; $arrayidx45 = (($45) + ($46<<2)|0); $47 = +HEAPF32[$arrayidx45>>2]; $48 = $i; $arrayidx46 = (($vla2) + ($48<<2)|0); $49 = +HEAPF32[$arrayidx46>>2]; $sub47 = $47 - $49; $50 = $i; $arrayidx48 = (($vla39) + ($50<<2)|0); HEAPF32[$arrayidx48>>2] = $sub47; $51 = $i; $inc50 = (($51) + 1)|0; $i = $inc50; } $52 = $C$addr; $cmp52 = ($52|0)==(2); L20: do { if ($cmp52) { $i = 0; while(1) { $53 = $i; $54 = $end$addr; $cmp55 = ($53|0)<($54|0); if (!($cmp55)) { break L20; } $55 = $i; $arrayidx58 = (($vla39) + ($55<<2)|0); $56 = +HEAPF32[$arrayidx58>>2]; $57 = $bandLogE$addr; $58 = $nbEBands$addr; $59 = $i; $add59 = (($58) + ($59))|0; $arrayidx60 = (($57) + ($add59<<2)|0); $60 = +HEAPF32[$arrayidx60>>2]; $61 = $i; $arrayidx61 = (($vla2) + ($61<<2)|0); $62 = +HEAPF32[$arrayidx61>>2]; $sub62 = $60 - $62; $cmp63 = $56 > $sub62; if ($cmp63) { $63 = $i; $arrayidx66 = (($vla39) + ($63<<2)|0); $64 = +HEAPF32[$arrayidx66>>2]; $cond73 = $64; } else { $65 = $bandLogE$addr; $66 = $nbEBands$addr; $67 = $i; $add68 = (($66) + ($67))|0; $arrayidx69 = (($65) + ($add68<<2)|0); $68 = +HEAPF32[$arrayidx69>>2]; $69 = $i; $arrayidx70 = (($vla2) + ($69<<2)|0); $70 = +HEAPF32[$arrayidx70>>2]; $sub71 = $68 - $70; $cond73 = $sub71; } $71 = $i; $arrayidx74 = (($vla39) + ($71<<2)|0); HEAPF32[$arrayidx74>>2] = $cond73; $72 = $i; $inc76 = (($72) + 1)|0; $i = $inc76; } } } while(0); $73 = $end$addr; $mul78 = $73<<2; $sub$ptr$lhs$cast = $vla40; $sub$ptr$rhs$cast = $vla39; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $sub$ptr$div = (($sub$ptr$sub|0) / 4)&-1; $mul79 = 0; $add80 = (($mul78) + ($mul79))|0; _memcpy(($vla40|0),($vla39|0),($add80|0))|0; $i = 1; while(1) { $74 = $i; $75 = $end$addr; $cmp82 = ($74|0)<($75|0); if (!($cmp82)) { break; } $76 = $i; $arrayidx85 = (($vla39) + ($76<<2)|0); $77 = +HEAPF32[$arrayidx85>>2]; $78 = $i; $sub86 = (($78) - 1)|0; $arrayidx87 = (($vla39) + ($sub86<<2)|0); $79 = +HEAPF32[$arrayidx87>>2]; $sub88 = $79 - 2.0; $cmp89 = $77 > $sub88; $80 = $i; if ($cmp89) { $arrayidx92 = (($vla39) + ($80<<2)|0); $81 = +HEAPF32[$arrayidx92>>2]; $cond98 = $81; } else { $sub94 = (($80) - 1)|0; $arrayidx95 = (($vla39) + ($sub94<<2)|0); $82 = +HEAPF32[$arrayidx95>>2]; $sub96 = $82 - 2.0; $cond98 = $sub96; } $83 = $i; $arrayidx99 = (($vla39) + ($83<<2)|0); HEAPF32[$arrayidx99>>2] = $cond98; $84 = $i; $inc101 = (($84) + 1)|0; $i = $inc101; } $85 = $end$addr; $sub103 = (($85) - 2)|0; $i = $sub103; while(1) { $86 = $i; $cmp105 = ($86|0)>=(0); if (!($cmp105)) { break; } $87 = $i; $arrayidx108 = (($vla39) + ($87<<2)|0); $88 = +HEAPF32[$arrayidx108>>2]; $89 = $i; $add109 = (($89) + 1)|0; $arrayidx110 = (($vla39) + ($add109<<2)|0); $90 = +HEAPF32[$arrayidx110>>2]; $sub111 = $90 - 3.0; $cmp112 = $88 > $sub111; $91 = $i; if ($cmp112) { $arrayidx115 = (($vla39) + ($91<<2)|0); $92 = +HEAPF32[$arrayidx115>>2]; $cond121 = $92; } else { $add117 = (($91) + 1)|0; $arrayidx118 = (($vla39) + ($add117<<2)|0); $93 = +HEAPF32[$arrayidx118>>2]; $sub119 = $93 - 3.0; $cond121 = $sub119; } $94 = $i; $arrayidx122 = (($vla39) + ($94<<2)|0); HEAPF32[$arrayidx122>>2] = $cond121; $95 = $i; $dec = (($95) + -1)|0; $i = $dec; } $i = 0; while(1) { $96 = $i; $97 = $end$addr; $cmp126 = ($96|0)<($97|0); if (!($cmp126)) { break; } $98 = $i; $arrayidx129 = (($vla40) + ($98<<2)|0); $99 = +HEAPF32[$arrayidx129>>2]; $100 = $maxDepth; $sub130 = $100 - 12.0; $cmp131 = 0.0 > $sub130; $101 = $maxDepth; $sub135 = $101 - 12.0; $cond137 = $cmp131 ? 0.0 : $sub135; $102 = $i; $arrayidx138 = (($vla39) + ($102<<2)|0); $103 = +HEAPF32[$arrayidx138>>2]; $cmp139 = $cond137 > $103; if ($cmp139) { $104 = $maxDepth; $sub142 = $104 - 12.0; $cmp143 = 0.0 > $sub142; $105 = $maxDepth; $sub147 = $105 - 12.0; $cond149 = $cmp143 ? 0.0 : $sub147; $cond153 = $cond149; } else { $106 = $i; $arrayidx151 = (($vla39) + ($106<<2)|0); $107 = +HEAPF32[$arrayidx151>>2]; $cond153 = $107; } $sub154 = $99 - $cond153; $smr = $sub154; $108 = $smr; $cmp155 = 0.0 < $108; $109 = $smr; $cond160 = $cmp155 ? 0.0 : $109; $cmp161 = -5.0 > $cond160; if ($cmp161) { $cond172 = -5.0; } else { $110 = $smr; $cmp165 = 0.0 < $110; $111 = $smr; $cond170 = $cmp165 ? 0.0 : $111; $cond172 = $cond170; } $smr = $cond172; $112 = $smr; $add173 = 0.5 + $112; $conv174 = $add173; $call = (+Math_floor((+$conv174))); $conv175 = (~~(($call))); $sub176 = (0 - ($conv175))|0; $shr = 32 >> $sub176; $cmp177 = (1)>($shr|0); if ($cmp177) { $cond188 = 1; } else { $113 = $smr; $add181 = 0.5 + $113; $conv182 = $add181; $call183 = (+Math_floor((+$conv182))); $conv184 = (~~(($call183))); $sub185 = (0 - ($conv184))|0; $shr186 = 32 >> $sub185; $cond188 = $shr186; } $114 = $spread_weight$addr; $115 = $i; $arrayidx189 = (($114) + ($115<<2)|0); HEAP32[$arrayidx189>>2] = $cond188; $116 = $i; $inc191 = (($116) + 1)|0; $i = $inc191; } $117 = $saved_stack38; _llvm_stackrestore(($117|0)); $118 = $effectiveBytes$addr; $cmp193 = ($118|0)>(50); $119 = $LM$addr; $cmp195 = ($119|0)>=(1); $or$cond = $cmp193 & $cmp195; $or$cond$not = $or$cond ^ 1; $120 = $lfe$addr; $tobool = ($120|0)!=(0); $or$cond1 = $or$cond$not | $tobool; if ($or$cond1) { $452 = $start$addr; $i = $452; while(1) { $453 = $i; $454 = $end$addr; $cmp670 = ($453|0)<($454|0); if (!($cmp670)) { break; } $455 = $importance$addr; $456 = $i; $arrayidx673 = (($455) + ($456<<2)|0); HEAP32[$arrayidx673>>2] = 13; $457 = $i; $inc675 = (($457) + 1)|0; $i = $inc675; } $458 = $tot_boost; $459 = $tot_boost_$addr; HEAP32[$459>>2] = $458; $460 = $maxDepth; $461 = $saved_stack; _llvm_stackrestore(($461|0)); STACKTOP = sp;return (+$460); } $last = 0; $c = 0; while(1) { $121 = $c; $122 = $nbEBands$addr; $mul200 = Math_imul($121, $122)|0; $arrayidx201 = (($vla) + ($mul200<<2)|0); $f = $arrayidx201; $123 = $bandLogE2$addr; $124 = $c; $125 = $nbEBands$addr; $mul202 = Math_imul($124, $125)|0; $arrayidx203 = (($123) + ($mul202<<2)|0); $126 = +HEAPF32[$arrayidx203>>2]; $127 = $f; HEAPF32[$127>>2] = $126; $i = 1; while(1) { $128 = $i; $129 = $end$addr; $cmp206 = ($128|0)<($129|0); if (!($cmp206)) { break; } $130 = $bandLogE2$addr; $131 = $c; $132 = $nbEBands$addr; $mul209 = Math_imul($131, $132)|0; $133 = $i; $add210 = (($mul209) + ($133))|0; $arrayidx211 = (($130) + ($add210<<2)|0); $134 = +HEAPF32[$arrayidx211>>2]; $135 = $bandLogE2$addr; $136 = $c; $137 = $nbEBands$addr; $mul212 = Math_imul($136, $137)|0; $138 = $i; $add213 = (($mul212) + ($138))|0; $sub214 = (($add213) - 1)|0; $arrayidx215 = (($135) + ($sub214<<2)|0); $139 = +HEAPF32[$arrayidx215>>2]; $add216 = $139 + 0.5; $cmp217 = $134 > $add216; if ($cmp217) { $140 = $i; $last = $140; } $141 = $f; $142 = $i; $sub221 = (($142) - 1)|0; $arrayidx222 = (($141) + ($sub221<<2)|0); $143 = +HEAPF32[$arrayidx222>>2]; $add223 = $143 + 1.5; $144 = $bandLogE2$addr; $145 = $c; $146 = $nbEBands$addr; $mul224 = Math_imul($145, $146)|0; $147 = $i; $add225 = (($mul224) + ($147))|0; $arrayidx226 = (($144) + ($add225<<2)|0); $148 = +HEAPF32[$arrayidx226>>2]; $cmp227 = $add223 < $148; if ($cmp227) { $149 = $f; $150 = $i; $sub230 = (($150) - 1)|0; $arrayidx231 = (($149) + ($sub230<<2)|0); $151 = +HEAPF32[$arrayidx231>>2]; $add232 = $151 + 1.5; $cond238 = $add232; } else { $152 = $bandLogE2$addr; $153 = $c; $154 = $nbEBands$addr; $mul234 = Math_imul($153, $154)|0; $155 = $i; $add235 = (($mul234) + ($155))|0; $arrayidx236 = (($152) + ($add235<<2)|0); $156 = +HEAPF32[$arrayidx236>>2]; $cond238 = $156; } $157 = $f; $158 = $i; $arrayidx239 = (($157) + ($158<<2)|0); HEAPF32[$arrayidx239>>2] = $cond238; $159 = $i; $inc241 = (($159) + 1)|0; $i = $inc241; } $160 = $last; $sub243 = (($160) - 1)|0; $i = $sub243; while(1) { $161 = $i; $cmp245 = ($161|0)>=(0); if (!($cmp245)) { break; } $162 = $f; $163 = $i; $arrayidx248 = (($162) + ($163<<2)|0); $164 = +HEAPF32[$arrayidx248>>2]; $165 = $f; $166 = $i; $add249 = (($166) + 1)|0; $arrayidx250 = (($165) + ($add249<<2)|0); $167 = +HEAPF32[$arrayidx250>>2]; $add251 = $167 + 2.0; $168 = $bandLogE2$addr; $169 = $c; $170 = $nbEBands$addr; $mul252 = Math_imul($169, $170)|0; $171 = $i; $add253 = (($mul252) + ($171))|0; $arrayidx254 = (($168) + ($add253<<2)|0); $172 = +HEAPF32[$arrayidx254>>2]; $cmp255 = $add251 < $172; if ($cmp255) { $173 = $f; $174 = $i; $add258 = (($174) + 1)|0; $arrayidx259 = (($173) + ($add258<<2)|0); $175 = +HEAPF32[$arrayidx259>>2]; $add260 = $175 + 2.0; $cond266 = $add260; } else { $176 = $bandLogE2$addr; $177 = $c; $178 = $nbEBands$addr; $mul262 = Math_imul($177, $178)|0; $179 = $i; $add263 = (($mul262) + ($179))|0; $arrayidx264 = (($176) + ($add263<<2)|0); $180 = +HEAPF32[$arrayidx264>>2]; $cond266 = $180; } $cmp267 = $164 < $cond266; $181 = $f; $182 = $i; do { if ($cmp267) { $arrayidx270 = (($181) + ($182<<2)|0); $183 = +HEAPF32[$arrayidx270>>2]; $cond291 = $183; } else { $add272 = (($182) + 1)|0; $arrayidx273 = (($181) + ($add272<<2)|0); $184 = +HEAPF32[$arrayidx273>>2]; $add274 = $184 + 2.0; $185 = $bandLogE2$addr; $186 = $c; $187 = $nbEBands$addr; $mul275 = Math_imul($186, $187)|0; $188 = $i; $add276 = (($mul275) + ($188))|0; $arrayidx277 = (($185) + ($add276<<2)|0); $189 = +HEAPF32[$arrayidx277>>2]; $cmp278 = $add274 < $189; if ($cmp278) { $190 = $f; $191 = $i; $add281 = (($191) + 1)|0; $arrayidx282 = (($190) + ($add281<<2)|0); $192 = +HEAPF32[$arrayidx282>>2]; $add283 = $192 + 2.0; $cond291 = $add283; break; } else { $193 = $bandLogE2$addr; $194 = $c; $195 = $nbEBands$addr; $mul285 = Math_imul($194, $195)|0; $196 = $i; $add286 = (($mul285) + ($196))|0; $arrayidx287 = (($193) + ($add286<<2)|0); $197 = +HEAPF32[$arrayidx287>>2]; $cond291 = $197; break; } } } while(0); $198 = $f; $199 = $i; $arrayidx292 = (($198) + ($199<<2)|0); HEAPF32[$arrayidx292>>2] = $cond291; $200 = $i; $dec294 = (($200) + -1)|0; $i = $dec294; } $offset = 1.0; $i = 2; while(1) { $201 = $i; $202 = $end$addr; $sub297 = (($202) - 2)|0; $cmp298 = ($201|0)<($sub297|0); if (!($cmp298)) { break; } $203 = $f; $204 = $i; $arrayidx301 = (($203) + ($204<<2)|0); $205 = +HEAPF32[$arrayidx301>>2]; $206 = $bandLogE2$addr; $207 = $c; $208 = $nbEBands$addr; $mul302 = Math_imul($207, $208)|0; $209 = $i; $add303 = (($mul302) + ($209))|0; $sub304 = (($add303) - 2)|0; $arrayidx305 = (($206) + ($sub304<<2)|0); $call306 = (+_median_of_5($arrayidx305)); $210 = $offset; $sub307 = $call306 - $210; $cmp308 = $205 > $sub307; if ($cmp308) { $211 = $f; $212 = $i; $arrayidx311 = (($211) + ($212<<2)|0); $213 = +HEAPF32[$arrayidx311>>2]; $cond320 = $213; } else { $214 = $bandLogE2$addr; $215 = $c; $216 = $nbEBands$addr; $mul313 = Math_imul($215, $216)|0; $217 = $i; $add314 = (($mul313) + ($217))|0; $sub315 = (($add314) - 2)|0; $arrayidx316 = (($214) + ($sub315<<2)|0); $call317 = (+_median_of_5($arrayidx316)); $218 = $offset; $sub318 = $call317 - $218; $cond320 = $sub318; } $219 = $f; $220 = $i; $arrayidx321 = (($219) + ($220<<2)|0); HEAPF32[$arrayidx321>>2] = $cond320; $221 = $i; $inc323 = (($221) + 1)|0; $i = $inc323; } $222 = $bandLogE2$addr; $223 = $c; $224 = $nbEBands$addr; $mul325 = Math_imul($223, $224)|0; $arrayidx326 = (($222) + ($mul325<<2)|0); $call327 = (+_median_of_3($arrayidx326)); $225 = $offset; $sub328 = $call327 - $225; $tmp = $sub328; $226 = $f; $227 = +HEAPF32[$226>>2]; $228 = $tmp; $cmp330 = $227 > $228; if ($cmp330) { $229 = $f; $230 = +HEAPF32[$229>>2]; $cond336 = $230; } else { $231 = $tmp; $cond336 = $231; } $232 = $f; HEAPF32[$232>>2] = $cond336; $233 = $f; $arrayidx338 = ((($233)) + 4|0); $234 = +HEAPF32[$arrayidx338>>2]; $235 = $tmp; $cmp339 = $234 > $235; if ($cmp339) { $236 = $f; $arrayidx342 = ((($236)) + 4|0); $237 = +HEAPF32[$arrayidx342>>2]; $cond345 = $237; } else { $238 = $tmp; $cond345 = $238; } $239 = $f; $arrayidx346 = ((($239)) + 4|0); HEAPF32[$arrayidx346>>2] = $cond345; $240 = $bandLogE2$addr; $241 = $c; $242 = $nbEBands$addr; $mul347 = Math_imul($241, $242)|0; $243 = $end$addr; $add348 = (($mul347) + ($243))|0; $sub349 = (($add348) - 3)|0; $arrayidx350 = (($240) + ($sub349<<2)|0); $call351 = (+_median_of_3($arrayidx350)); $244 = $offset; $sub352 = $call351 - $244; $tmp = $sub352; $245 = $f; $246 = $end$addr; $sub353 = (($246) - 2)|0; $arrayidx354 = (($245) + ($sub353<<2)|0); $247 = +HEAPF32[$arrayidx354>>2]; $248 = $tmp; $cmp355 = $247 > $248; if ($cmp355) { $249 = $f; $250 = $end$addr; $sub358 = (($250) - 2)|0; $arrayidx359 = (($249) + ($sub358<<2)|0); $251 = +HEAPF32[$arrayidx359>>2]; $cond362 = $251; } else { $252 = $tmp; $cond362 = $252; } $253 = $f; $254 = $end$addr; $sub363 = (($254) - 2)|0; $arrayidx364 = (($253) + ($sub363<<2)|0); HEAPF32[$arrayidx364>>2] = $cond362; $255 = $f; $256 = $end$addr; $sub365 = (($256) - 1)|0; $arrayidx366 = (($255) + ($sub365<<2)|0); $257 = +HEAPF32[$arrayidx366>>2]; $258 = $tmp; $cmp367 = $257 > $258; if ($cmp367) { $259 = $f; $260 = $end$addr; $sub370 = (($260) - 1)|0; $arrayidx371 = (($259) + ($sub370<<2)|0); $261 = +HEAPF32[$arrayidx371>>2]; $cond374 = $261; } else { $262 = $tmp; $cond374 = $262; } $263 = $f; $264 = $end$addr; $sub375 = (($264) - 1)|0; $arrayidx376 = (($263) + ($sub375<<2)|0); HEAPF32[$arrayidx376>>2] = $cond374; $i = 0; while(1) { $265 = $i; $266 = $end$addr; $cmp378 = ($265|0)<($266|0); if (!($cmp378)) { break; } $267 = $f; $268 = $i; $arrayidx381 = (($267) + ($268<<2)|0); $269 = +HEAPF32[$arrayidx381>>2]; $270 = $i; $arrayidx382 = (($vla2) + ($270<<2)|0); $271 = +HEAPF32[$arrayidx382>>2]; $cmp383 = $269 > $271; if ($cmp383) { $272 = $f; $273 = $i; $arrayidx386 = (($272) + ($273<<2)|0); $arrayidx388$sink = $arrayidx386; } else { $274 = $i; $arrayidx388 = (($vla2) + ($274<<2)|0); $arrayidx388$sink = $arrayidx388; } $275 = +HEAPF32[$arrayidx388$sink>>2]; $276 = $f; $277 = $i; $arrayidx391 = (($276) + ($277<<2)|0); HEAPF32[$arrayidx391>>2] = $275; $278 = $i; $inc393 = (($278) + 1)|0; $i = $inc393; } $279 = $c; $inc396 = (($279) + 1)|0; $c = $inc396; $280 = $C$addr; $cmp397 = ($inc396|0)<($280|0); if (!($cmp397)) { break; } } $281 = $C$addr; $cmp400 = ($281|0)==(2); $282 = $start$addr; $i = $282; L128: do { if ($cmp400) { while(1) { $283 = $i; $284 = $end$addr; $cmp404 = ($283|0)<($284|0); if (!($cmp404)) { break L128; } $285 = $nbEBands$addr; $286 = $i; $add407 = (($285) + ($286))|0; $arrayidx408 = (($vla) + ($add407<<2)|0); $287 = +HEAPF32[$arrayidx408>>2]; $288 = $i; $arrayidx409 = (($vla) + ($288<<2)|0); $289 = +HEAPF32[$arrayidx409>>2]; $sub410 = $289 - 4.0; $cmp411 = $287 > $sub410; if ($cmp411) { $290 = $nbEBands$addr; $291 = $i; $add414 = (($290) + ($291))|0; $arrayidx415 = (($vla) + ($add414<<2)|0); $292 = +HEAPF32[$arrayidx415>>2]; $cond420 = $292; } else { $293 = $i; $arrayidx417 = (($vla) + ($293<<2)|0); $294 = +HEAPF32[$arrayidx417>>2]; $sub418 = $294 - 4.0; $cond420 = $sub418; } $295 = $nbEBands$addr; $296 = $i; $add421 = (($295) + ($296))|0; $arrayidx422 = (($vla) + ($add421<<2)|0); HEAPF32[$arrayidx422>>2] = $cond420; $297 = $i; $arrayidx423 = (($vla) + ($297<<2)|0); $298 = +HEAPF32[$arrayidx423>>2]; $299 = $nbEBands$addr; $300 = $i; $add424 = (($299) + ($300))|0; $arrayidx425 = (($vla) + ($add424<<2)|0); $301 = +HEAPF32[$arrayidx425>>2]; $sub426 = $301 - 4.0; $cmp427 = $298 > $sub426; if ($cmp427) { $302 = $i; $arrayidx430 = (($vla) + ($302<<2)|0); $303 = +HEAPF32[$arrayidx430>>2]; $cond436 = $303; } else { $304 = $nbEBands$addr; $305 = $i; $add432 = (($304) + ($305))|0; $arrayidx433 = (($vla) + ($add432<<2)|0); $306 = +HEAPF32[$arrayidx433>>2]; $sub434 = $306 - 4.0; $cond436 = $sub434; } $307 = $i; $arrayidx437 = (($vla) + ($307<<2)|0); HEAPF32[$arrayidx437>>2] = $cond436; $308 = $bandLogE$addr; $309 = $i; $arrayidx438 = (($308) + ($309<<2)|0); $310 = +HEAPF32[$arrayidx438>>2]; $311 = $i; $arrayidx439 = (($vla) + ($311<<2)|0); $312 = +HEAPF32[$arrayidx439>>2]; $sub440 = $310 - $312; $cmp441 = 0.0 > $sub440; if ($cmp441) { $cond449 = 0.0; } else { $313 = $bandLogE$addr; $314 = $i; $arrayidx445 = (($313) + ($314<<2)|0); $315 = +HEAPF32[$arrayidx445>>2]; $316 = $i; $arrayidx446 = (($vla) + ($316<<2)|0); $317 = +HEAPF32[$arrayidx446>>2]; $sub447 = $315 - $317; $cond449 = $sub447; } $318 = $bandLogE$addr; $319 = $nbEBands$addr; $320 = $i; $add450 = (($319) + ($320))|0; $arrayidx451 = (($318) + ($add450<<2)|0); $321 = +HEAPF32[$arrayidx451>>2]; $322 = $nbEBands$addr; $323 = $i; $add452 = (($322) + ($323))|0; $arrayidx453 = (($vla) + ($add452<<2)|0); $324 = +HEAPF32[$arrayidx453>>2]; $sub454 = $321 - $324; $cmp455 = 0.0 > $sub454; if ($cmp455) { $cond465 = 0.0; } else { $325 = $bandLogE$addr; $326 = $nbEBands$addr; $327 = $i; $add459 = (($326) + ($327))|0; $arrayidx460 = (($325) + ($add459<<2)|0); $328 = +HEAPF32[$arrayidx460>>2]; $329 = $nbEBands$addr; $330 = $i; $add461 = (($329) + ($330))|0; $arrayidx462 = (($vla) + ($add461<<2)|0); $331 = +HEAPF32[$arrayidx462>>2]; $sub463 = $328 - $331; $cond465 = $sub463; } $add466 = $cond449 + $cond465; $mul467 = 0.5 * $add466; $332 = $i; $arrayidx468 = (($vla) + ($332<<2)|0); HEAPF32[$arrayidx468>>2] = $mul467; $333 = $i; $inc470 = (($333) + 1)|0; $i = $inc470; } } else { while(1) { $334 = $i; $335 = $end$addr; $cmp473 = ($334|0)<($335|0); if (!($cmp473)) { break L128; } $336 = $bandLogE$addr; $337 = $i; $arrayidx476 = (($336) + ($337<<2)|0); $338 = +HEAPF32[$arrayidx476>>2]; $339 = $i; $arrayidx477 = (($vla) + ($339<<2)|0); $340 = +HEAPF32[$arrayidx477>>2]; $sub478 = $338 - $340; $cmp479 = 0.0 > $sub478; if ($cmp479) { $cond487 = 0.0; } else { $341 = $bandLogE$addr; $342 = $i; $arrayidx483 = (($341) + ($342<<2)|0); $343 = +HEAPF32[$arrayidx483>>2]; $344 = $i; $arrayidx484 = (($vla) + ($344<<2)|0); $345 = +HEAPF32[$arrayidx484>>2]; $sub485 = $343 - $345; $cond487 = $sub485; } $346 = $i; $arrayidx488 = (($vla) + ($346<<2)|0); HEAPF32[$arrayidx488>>2] = $cond487; $347 = $i; $inc490 = (($347) + 1)|0; $i = $inc490; } } } while(0); $348 = $start$addr; $i = $348; while(1) { $349 = $i; $350 = $end$addr; $cmp494 = ($349|0)<($350|0); if (!($cmp494)) { break; } $351 = $i; $arrayidx497 = (($vla) + ($351<<2)|0); $352 = +HEAPF32[$arrayidx497>>2]; $353 = $surround_dynalloc$addr; $354 = $i; $arrayidx498 = (($353) + ($354<<2)|0); $355 = +HEAPF32[$arrayidx498>>2]; $cmp499 = $352 > $355; if ($cmp499) { $356 = $i; $arrayidx502 = (($vla) + ($356<<2)|0); $arrayidx504$sink = $arrayidx502; } else { $357 = $surround_dynalloc$addr; $358 = $i; $arrayidx504 = (($357) + ($358<<2)|0); $arrayidx504$sink = $arrayidx504; } $359 = +HEAPF32[$arrayidx504$sink>>2]; $360 = $i; $arrayidx507 = (($vla) + ($360<<2)|0); HEAPF32[$arrayidx507>>2] = $359; $361 = $i; $inc509 = (($361) + 1)|0; $i = $inc509; } $362 = $start$addr; $i = $362; while(1) { $363 = $i; $364 = $end$addr; $cmp512 = ($363|0)<($364|0); if (!($cmp512)) { break; } $365 = $i; $arrayidx515 = (($vla) + ($365<<2)|0); $366 = +HEAPF32[$arrayidx515>>2]; $cmp516 = $366 < 4.0; if ($cmp516) { $367 = $i; $arrayidx519 = (($vla) + ($367<<2)|0); $368 = +HEAPF32[$arrayidx519>>2]; $cond522 = $368; } else { $cond522 = 4.0; } $conv523 = $cond522; $mul524 = 0.69314718055994529 * $conv523; $call525 = (+Math_exp((+$mul524))); $conv526 = $call525; $mul527 = 13.0 * $conv526; $add528 = 0.5 + $mul527; $conv529 = $add528; $call530 = (+Math_floor((+$conv529))); $conv531 = (~~(($call530))); $369 = $importance$addr; $370 = $i; $arrayidx532 = (($369) + ($370<<2)|0); HEAP32[$arrayidx532>>2] = $conv531; $371 = $i; $inc534 = (($371) + 1)|0; $i = $inc534; } $372 = $vbr$addr; $tobool536 = ($372|0)==(0); $373 = $constrained_vbr$addr; $tobool537 = ($373|0)!=(0); $or$cond2 = $tobool536 | $tobool537; $or$cond2$not = $or$cond2 ^ 1; $374 = $isTransient$addr; $tobool539 = ($374|0)!=(0); $or$cond3 = $or$cond2$not | $tobool539; L168: do { if (!($or$cond3)) { $375 = $start$addr; $i = $375; while(1) { $376 = $i; $377 = $end$addr; $cmp542 = ($376|0)<($377|0); if (!($cmp542)) { break L168; } $378 = $i; $arrayidx545 = (($vla) + ($378<<2)|0); $379 = +HEAPF32[$arrayidx545>>2]; $mul546 = 0.5 * $379; $380 = $i; $arrayidx547 = (($vla) + ($380<<2)|0); HEAPF32[$arrayidx547>>2] = $mul546; $381 = $i; $inc549 = (($381) + 1)|0; $i = $inc549; } } } while(0); $382 = $start$addr; $i = $382; while(1) { $383 = $i; $384 = $end$addr; $cmp553 = ($383|0)<($384|0); if (!($cmp553)) { break; } $385 = $i; $cmp556 = ($385|0)<(8); if ($cmp556) { $386 = $i; $arrayidx559 = (($vla) + ($386<<2)|0); $387 = +HEAPF32[$arrayidx559>>2]; $mul560 = $387 * 2.0; HEAPF32[$arrayidx559>>2] = $mul560; } $388 = $i; $cmp562 = ($388|0)>=(12); if ($cmp562) { $389 = $i; $arrayidx565 = (($vla) + ($389<<2)|0); $390 = +HEAPF32[$arrayidx565>>2]; $mul566 = 0.5 * $390; $391 = $i; $arrayidx567 = (($vla) + ($391<<2)|0); HEAPF32[$arrayidx567>>2] = $mul566; } $392 = $i; $inc570 = (($392) + 1)|0; $i = $inc570; } $393 = $analysis$addr; $394 = HEAP32[$393>>2]|0; $tobool572 = ($394|0)!=(0); L184: do { if ($tobool572) { $395 = $start$addr; $i = $395; while(1) { $396 = $i; $397 = $end$addr; $cmp575 = (19)<($397|0); $398 = $end$addr; $cond580 = $cmp575 ? 19 : $398; $cmp581 = ($396|0)<($cond580|0); if (!($cmp581)) { break L184; } $399 = $i; $arrayidx584 = (($vla) + ($399<<2)|0); $400 = +HEAPF32[$arrayidx584>>2]; $401 = $analysis$addr; $leak_boost = ((($401)) + 44|0); $402 = $i; $arrayidx585 = (($leak_boost) + ($402)|0); $403 = HEAP8[$arrayidx585>>0]|0; $conv586 = $403&255; $conv587 = (+($conv586|0)); $mul588 = 0.015625 * $conv587; $add589 = $400 + $mul588; $404 = $i; $arrayidx590 = (($vla) + ($404<<2)|0); HEAPF32[$arrayidx590>>2] = $add589; $405 = $i; $inc592 = (($405) + 1)|0; $i = $inc592; } } } while(0); $406 = $start$addr; $i = $406; while(1) { $407 = $i; $408 = $end$addr; $cmp596 = ($407|0)<($408|0); if (!($cmp596)) { label = 150; break; } $409 = $i; $arrayidx599 = (($vla) + ($409<<2)|0); $410 = +HEAPF32[$arrayidx599>>2]; $cmp600 = $410 < 4.0; if ($cmp600) { $411 = $i; $arrayidx603 = (($vla) + ($411<<2)|0); $412 = +HEAPF32[$arrayidx603>>2]; $cond606 = $412; } else { $cond606 = 4.0; } $413 = $i; $arrayidx607 = (($vla) + ($413<<2)|0); HEAPF32[$arrayidx607>>2] = $cond606; $414 = $C$addr; $415 = $eBands$addr; $416 = $i; $add608 = (($416) + 1)|0; $arrayidx609 = (($415) + ($add608<<1)|0); $417 = HEAP16[$arrayidx609>>1]|0; $conv610 = $417 << 16 >> 16; $418 = $eBands$addr; $419 = $i; $arrayidx611 = (($418) + ($419<<1)|0); $420 = HEAP16[$arrayidx611>>1]|0; $conv612 = $420 << 16 >> 16; $sub613 = (($conv610) - ($conv612))|0; $mul614 = Math_imul($414, $sub613)|0; $421 = $LM$addr; $shl = $mul614 << $421; $width = $shl; $422 = $width; $cmp615 = ($422|0)<(6); do { if ($cmp615) { $423 = $i; $arrayidx618 = (($vla) + ($423<<2)|0); $424 = +HEAPF32[$arrayidx618>>2]; $conv619 = (~~(($424))); $boost = $conv619; $425 = $boost; $426 = $width; $mul620 = Math_imul($425, $426)|0; $shl621 = $mul620 << 3; $boost_bits = $shl621; } else { $427 = $width; $cmp623 = ($427|0)>(48); $428 = $i; $arrayidx626 = (($vla) + ($428<<2)|0); $429 = +HEAPF32[$arrayidx626>>2]; if ($cmp623) { $mul627 = $429 * 8.0; $conv628 = (~~(($mul627))); $boost = $conv628; $430 = $boost; $431 = $width; $mul629 = Math_imul($430, $431)|0; $shl630 = $mul629 << 3; $div = (($shl630|0) / 8)&-1; $boost_bits = $div; break; } else { $432 = $width; $conv633 = (+($432|0)); $mul634 = $429 * $conv633; $div635 = $mul634 / 6.0; $conv636 = (~~(($div635))); $boost = $conv636; $433 = $boost; $mul637 = ($433*6)|0; $shl638 = $mul637 << 3; $boost_bits = $shl638; break; } } } while(0); $434 = $vbr$addr; $tobool641 = ($434|0)!=(0); if ($tobool641) { $435 = $constrained_vbr$addr; $tobool643 = ($435|0)==(0); $436 = $isTransient$addr; $tobool645 = ($436|0)!=(0); $or$cond4 = $tobool643 | $tobool645; if (!($or$cond4)) { label = 144; } } else { label = 144; } if ((label|0) == 144) { label = 0; $437 = $tot_boost; $438 = $boost_bits; $add647 = (($437) + ($438))|0; $shr648 = $add647 >> 3; $shr649 = $shr648 >> 3; $439 = $effectiveBytes$addr; $mul650 = $439<<1; $div651 = (($mul650|0) / 3)&-1; $cmp652 = ($shr649|0)>($div651|0); if ($cmp652) { break; } } $446 = $boost; $447 = $offsets$addr; $448 = $i; $arrayidx662 = (($447) + ($448<<2)|0); HEAP32[$arrayidx662>>2] = $446; $449 = $boost_bits; $450 = $tot_boost; $add663 = (($450) + ($449))|0; $tot_boost = $add663; $451 = $i; $inc666 = (($451) + 1)|0; $i = $inc666; } if ((label|0) == 150) { $458 = $tot_boost; $459 = $tot_boost_$addr; HEAP32[$459>>2] = $458; $460 = $maxDepth; $461 = $saved_stack; _llvm_stackrestore(($461|0)); STACKTOP = sp;return (+$460); } $440 = $effectiveBytes$addr; $mul655 = $440<<1; $div656 = (($mul655|0) / 3)&-1; $shl657 = $div656 << 3; $shl658 = $shl657 << 3; $cap = $shl658; $441 = $cap; $442 = $tot_boost; $sub659 = (($441) - ($442))|0; $443 = $offsets$addr; $444 = $i; $arrayidx660 = (($443) + ($444<<2)|0); HEAP32[$arrayidx660>>2] = $sub659; $445 = $cap; $tot_boost = $445; $458 = $tot_boost; $459 = $tot_boost_$addr; HEAP32[$459>>2] = $458; $460 = $maxDepth; $461 = $saved_stack; _llvm_stackrestore(($461|0)); STACKTOP = sp;return (+$460); } function _tf_analysis($m,$len,$isTransient,$tf_res,$lambda,$X,$N0,$LM,$tf_estimate,$tf_chan,$importance) { $m = $m|0; $len = $len|0; $isTransient = $isTransient|0; $tf_res = $tf_res|0; $lambda = $lambda|0; $X = $X|0; $N0 = $N0|0; $LM = $LM|0; $tf_estimate = +$tf_estimate; $tf_chan = $tf_chan|0; $importance = $importance|0; var $$sink = 0, $$sink2 = 0, $$sink3 = 0, $$sink4 = 0, $$sink5 = 0, $$sink6 = 0, $0 = 0.0, $1 = 0.0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0; var $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0; var $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0; var $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0; var $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0; var $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0; var $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0; var $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0; var $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0; var $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0; var $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0.0, $64 = 0.0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0; var $72 = 0, $73 = 0.0, $74 = 0.0, $75 = 0.0, $76 = 0.0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0; var $90 = 0, $91 = 0.0, $92 = 0.0, $93 = 0.0, $94 = 0.0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $B = 0, $L1 = 0.0, $LM$addr = 0, $N = 0, $N0$addr = 0, $X$addr = 0, $add = 0, $add131 = 0, $add132 = 0, $add144 = 0; var $add145 = 0, $add157 = 0, $add162 = 0, $add167 = 0, $add170 = 0, $add174 = 0, $add183 = 0, $add184 = 0, $add191 = 0, $add197 = 0, $add198 = 0, $add205 = 0, $add232 = 0, $add233 = 0, $add245 = 0, $add246 = 0, $add258 = 0, $add265 = 0, $add273 = 0, $add286 = 0; var $add287 = 0, $add294 = 0, $add300 = 0, $add301 = 0, $add308 = 0, $add31 = 0, $add322 = 0, $add327 = 0, $add45 = 0, $add53 = 0, $add56 = 0, $add69 = 0, $add71 = 0, $add80 = 0, $add88 = 0, $add96 = 0, $arrayidx = 0, $arrayidx104 = 0, $arrayidx108 = 0, $arrayidx111 = 0; var $arrayidx116 = 0, $arrayidx128 = 0, $arrayidx13 = 0, $arrayidx133 = 0, $arrayidx141 = 0, $arrayidx146 = 0, $arrayidx178 = 0, $arrayidx179 = 0, $arrayidx180 = 0, $arrayidx185 = 0, $arrayidx192 = 0, $arrayidx193 = 0, $arrayidx194 = 0, $arrayidx199 = 0, $arrayidx215 = 0, $arrayidx219 = 0, $arrayidx229 = 0, $arrayidx23 = 0, $arrayidx234 = 0, $arrayidx242 = 0; var $arrayidx247 = 0, $arrayidx26 = 0, $arrayidx271 = 0, $arrayidx279 = 0, $arrayidx281 = 0, $arrayidx282 = 0, $arrayidx283 = 0, $arrayidx288 = 0, $arrayidx295 = 0, $arrayidx296 = 0, $arrayidx297 = 0, $arrayidx302 = 0, $arrayidx316 = 0, $arrayidx32 = 0, $arrayidx323 = 0, $arrayidx328 = 0, $arrayidx329 = 0, $arrayidx332 = 0, $arrayidx333 = 0, $arrayidx333$sink = 0; var $arrayidx35 = 0, $arrayidx4 = 0, $arrayidx42 = 0, $arrayidx46 = 0, $arrayidx50 = 0, $arrayidx54 = 0, $arrayidx9 = 0, $best_L1 = 0.0, $best_level = 0, $bias = 0.0, $call = 0.0, $call137 = 0, $call150 = 0, $call189 = 0, $call203 = 0, $call238 = 0, $call251 = 0, $call292 = 0, $call306 = 0, $call72 = 0.0; var $call92 = 0.0, $cmp = 0, $cmp109 = 0, $cmp113 = 0, $cmp123 = 0, $cmp159 = 0, $cmp163 = 0, $cmp171 = 0, $cmp20 = 0, $cmp209 = 0, $cmp221 = 0, $cmp260 = 0, $cmp266 = 0, $cmp274 = 0, $cmp312 = 0, $cmp319 = 0, $cmp324 = 0, $cmp38 = 0, $cmp73 = 0, $cmp81 = 0; var $cmp93 = 0, $cond = 0.0, $cond156 = 0, $cond169 = 0, $cond177 = 0, $cond214 = 0, $cond257 = 0, $cond314 = 0, $cond60 = 0, $conv = 0, $conv10 = 0, $conv134 = 0, $conv14 = 0, $conv147 = 0, $conv186 = 0, $conv200 = 0, $conv235 = 0, $conv24 = 0, $conv248 = 0, $conv27 = 0; var $conv289 = 0, $conv303 = 0, $conv33 = 0, $conv36 = 0, $conv39 = 0, $conv43 = 0, $conv5 = 0, $conv51 = 0, $cost0 = 0, $cost1 = 0, $curr0 = 0, $curr0263 = 0, $curr1 = 0, $curr1264 = 0, $dec = 0, $eBands = 0, $eBands11 = 0, $eBands2 = 0, $eBands22 = 0, $eBands25 = 0; var $eBands30 = 0, $eBands34 = 0, $eBands41 = 0, $eBands49 = 0, $eBands8 = 0, $from0 = 0, $from1 = 0, $i = 0, $importance$addr = 0, $inc = 0, $inc120 = 0, $inc207 = 0, $inc217 = 0, $inc310 = 0, $isTransient$addr = 0, $k = 0, $lambda$addr = 0, $len$addr = 0, $lnot = 0, $lnot$ext = 0; var $m$addr = 0, $mul = 0.0, $mul100 = 0, $mul103 = 0, $mul103$sink = 0, $mul112 = 0, $mul129 = 0, $mul130 = 0, $mul135 = 0, $mul138 = 0, $mul142 = 0, $mul143 = 0, $mul148 = 0, $mul151 = 0, $mul181 = 0, $mul182 = 0, $mul187 = 0, $mul190 = 0, $mul195 = 0, $mul196 = 0; var $mul201 = 0, $mul204 = 0, $mul230 = 0, $mul231 = 0, $mul236 = 0, $mul239 = 0, $mul243 = 0, $mul244 = 0, $mul249 = 0, $mul252 = 0, $mul284 = 0, $mul285 = 0, $mul290 = 0, $mul293 = 0, $mul298 = 0, $mul299 = 0, $mul304 = 0, $mul307 = 0, $mul40 = 0, $mul47 = 0; var $mul48 = 0, $mul55 = 0, $mul63 = 0, $mul68 = 0, $narrow = 0, $or$cond = 0, $or$cond1 = 0, $saved_stack = 0, $sel = 0, $selcost = 0, $shl = 0, $shl16 = 0, $shl29 = 0, $shl44 = 0, $shl52 = 0, $shl70 = 0, $shl91 = 0, $shr = 0, $shr90 = 0, $sub = 0.0; var $sub$ptr$div = 0, $sub$ptr$div67 = 0, $sub$ptr$lhs$cast = 0, $sub$ptr$lhs$cast64 = 0, $sub$ptr$rhs$cast = 0, $sub$ptr$rhs$cast65 = 0, $sub$ptr$sub = 0, $sub$ptr$sub66 = 0, $sub1 = 0.0, $sub117 = 0, $sub12 = 0, $sub136 = 0, $sub149 = 0, $sub15 = 0, $sub188 = 0, $sub202 = 0, $sub237 = 0, $sub250 = 0, $sub28 = 0, $sub291 = 0; var $sub3 = 0, $sub305 = 0, $sub315 = 0, $sub317 = 0, $sub37 = 0, $sub6 = 0, $sub86 = 0, $sub87 = 0, $tf_chan$addr = 0, $tf_estimate$addr = 0.0, $tf_res$addr = 0, $tf_select = 0, $tobool = 0, $tobool106 = 0, $tobool152 = 0, $tobool224 = 0, $tobool253 = 0, $tobool61 = 0, $tobool62 = 0, $tobool78 = 0; var $tobool79 = 0, $tobool84 = 0, $vla = 0, $vla$alloca_mul = 0, $vla17 = 0, $vla17$alloca_mul = 0, $vla18 = 0, $vla18$alloca_mul = 0, $vla19 = 0, $vla19$alloca_mul = 0, $vla7 = 0, $vla7$alloca_mul = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 144|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(144|0); $selcost = sp + 64|0; $m$addr = $m; $len$addr = $len; $isTransient$addr = $isTransient; $tf_res$addr = $tf_res; $lambda$addr = $lambda; $X$addr = $X; $N0$addr = $N0; $LM$addr = $LM; $tf_estimate$addr = $tf_estimate; $tf_chan$addr = $tf_chan; $importance$addr = $importance; $tf_select = 0; $0 = $tf_estimate$addr; $sub = 0.5 - $0; $cmp = -0.25 > $sub; $1 = $tf_estimate$addr; $sub1 = 0.5 - $1; $cond = $cmp ? -0.25 : $sub1; $mul = 0.039999999105930328 * $cond; $bias = $mul; $2 = $len$addr; $3 = (_llvm_stacksave()|0); $saved_stack = $3; $vla$alloca_mul = $2<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $4 = $m$addr; $eBands = ((($4)) + 32|0); $5 = HEAP32[$eBands>>2]|0; $6 = $len$addr; $arrayidx = (($5) + ($6<<1)|0); $7 = HEAP16[$arrayidx>>1]|0; $conv = $7 << 16 >> 16; $8 = $m$addr; $eBands2 = ((($8)) + 32|0); $9 = HEAP32[$eBands2>>2]|0; $10 = $len$addr; $sub3 = (($10) - 1)|0; $arrayidx4 = (($9) + ($sub3<<1)|0); $11 = HEAP16[$arrayidx4>>1]|0; $conv5 = $11 << 16 >> 16; $sub6 = (($conv) - ($conv5))|0; $12 = $LM$addr; $shl = $sub6 << $12; $vla7$alloca_mul = $shl<<2; $vla7 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla7$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla7$alloca_mul)|0)+15)&-16)|0);; $13 = $m$addr; $eBands8 = ((($13)) + 32|0); $14 = HEAP32[$eBands8>>2]|0; $15 = $len$addr; $arrayidx9 = (($14) + ($15<<1)|0); $16 = HEAP16[$arrayidx9>>1]|0; $conv10 = $16 << 16 >> 16; $17 = $m$addr; $eBands11 = ((($17)) + 32|0); $18 = HEAP32[$eBands11>>2]|0; $19 = $len$addr; $sub12 = (($19) - 1)|0; $arrayidx13 = (($18) + ($sub12<<1)|0); $20 = HEAP16[$arrayidx13>>1]|0; $conv14 = $20 << 16 >> 16; $sub15 = (($conv10) - ($conv14))|0; $21 = $LM$addr; $shl16 = $sub15 << $21; $vla17$alloca_mul = $shl16<<2; $vla17 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla17$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla17$alloca_mul)|0)+15)&-16)|0);; $22 = $len$addr; $vla18$alloca_mul = $22<<2; $vla18 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla18$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla18$alloca_mul)|0)+15)&-16)|0);; $23 = $len$addr; $vla19$alloca_mul = $23<<2; $vla19 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla19$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla19$alloca_mul)|0)+15)&-16)|0);; $i = 0; while(1) { $24 = $i; $25 = $len$addr; $cmp20 = ($24|0)<($25|0); if (!($cmp20)) { break; } $best_level = 0; $26 = $m$addr; $eBands22 = ((($26)) + 32|0); $27 = HEAP32[$eBands22>>2]|0; $28 = $i; $add = (($28) + 1)|0; $arrayidx23 = (($27) + ($add<<1)|0); $29 = HEAP16[$arrayidx23>>1]|0; $conv24 = $29 << 16 >> 16; $30 = $m$addr; $eBands25 = ((($30)) + 32|0); $31 = HEAP32[$eBands25>>2]|0; $32 = $i; $arrayidx26 = (($31) + ($32<<1)|0); $33 = HEAP16[$arrayidx26>>1]|0; $conv27 = $33 << 16 >> 16; $sub28 = (($conv24) - ($conv27))|0; $34 = $LM$addr; $shl29 = $sub28 << $34; $N = $shl29; $35 = $m$addr; $eBands30 = ((($35)) + 32|0); $36 = HEAP32[$eBands30>>2]|0; $37 = $i; $add31 = (($37) + 1)|0; $arrayidx32 = (($36) + ($add31<<1)|0); $38 = HEAP16[$arrayidx32>>1]|0; $conv33 = $38 << 16 >> 16; $39 = $m$addr; $eBands34 = ((($39)) + 32|0); $40 = HEAP32[$eBands34>>2]|0; $41 = $i; $arrayidx35 = (($40) + ($41<<1)|0); $42 = HEAP16[$arrayidx35>>1]|0; $conv36 = $42 << 16 >> 16; $sub37 = (($conv33) - ($conv36))|0; $cmp38 = ($sub37|0)==(1); $conv39 = $cmp38&1; $narrow = $conv39; $43 = $X$addr; $44 = $tf_chan$addr; $45 = $N0$addr; $mul40 = Math_imul($44, $45)|0; $46 = $m$addr; $eBands41 = ((($46)) + 32|0); $47 = HEAP32[$eBands41>>2]|0; $48 = $i; $arrayidx42 = (($47) + ($48<<1)|0); $49 = HEAP16[$arrayidx42>>1]|0; $conv43 = $49 << 16 >> 16; $50 = $LM$addr; $shl44 = $conv43 << $50; $add45 = (($mul40) + ($shl44))|0; $arrayidx46 = (($43) + ($add45<<2)|0); $51 = $N; $mul47 = $51<<2; $52 = $X$addr; $53 = $tf_chan$addr; $54 = $N0$addr; $mul48 = Math_imul($53, $54)|0; $55 = $m$addr; $eBands49 = ((($55)) + 32|0); $56 = HEAP32[$eBands49>>2]|0; $57 = $i; $arrayidx50 = (($56) + ($57<<1)|0); $58 = HEAP16[$arrayidx50>>1]|0; $conv51 = $58 << 16 >> 16; $59 = $LM$addr; $shl52 = $conv51 << $59; $add53 = (($mul48) + ($shl52))|0; $arrayidx54 = (($52) + ($add53<<2)|0); $sub$ptr$lhs$cast = $vla7; $sub$ptr$rhs$cast = $arrayidx54; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $sub$ptr$div = (($sub$ptr$sub|0) / 4)&-1; $mul55 = 0; $add56 = (($mul47) + ($mul55))|0; _memcpy(($vla7|0),($arrayidx46|0),($add56|0))|0; $60 = $N; $61 = $isTransient$addr; $tobool = ($61|0)!=(0); $62 = $LM$addr; $cond60 = $tobool ? $62 : 0; $63 = $bias; $call = (+_l1_metric($vla7,$60,$cond60,$63)); $L1 = $call; $64 = $L1; $best_L1 = $64; $65 = $isTransient$addr; $tobool61 = ($65|0)==(0); $66 = $narrow; $tobool62 = ($66|0)!=(0); $or$cond = $tobool61 | $tobool62; if (!($or$cond)) { $67 = $N; $mul63 = $67<<2; $sub$ptr$lhs$cast64 = $vla17; $sub$ptr$rhs$cast65 = $vla7; $sub$ptr$sub66 = (($sub$ptr$lhs$cast64) - ($sub$ptr$rhs$cast65))|0; $sub$ptr$div67 = (($sub$ptr$sub66|0) / 4)&-1; $mul68 = 0; $add69 = (($mul63) + ($mul68))|0; _memcpy(($vla17|0),($vla7|0),($add69|0))|0; $68 = $N; $69 = $LM$addr; $shr = $68 >> $69; $70 = $LM$addr; $shl70 = 1 << $70; _haar1($vla17,$shr,$shl70); $71 = $N; $72 = $LM$addr; $add71 = (($72) + 1)|0; $73 = $bias; $call72 = (+_l1_metric($vla17,$71,$add71,$73)); $L1 = $call72; $74 = $L1; $75 = $best_L1; $cmp73 = $74 < $75; if ($cmp73) { $76 = $L1; $best_L1 = $76; $best_level = -1; } } $k = 0; while(1) { $77 = $k; $78 = $LM$addr; $79 = $isTransient$addr; $tobool78 = ($79|0)!=(0); $80 = $narrow; $tobool79 = ($80|0)!=(0); $81 = $tobool78 ? 1 : $tobool79; $lnot = $81 ^ 1; $lnot$ext = $lnot&1; $add80 = (($78) + ($lnot$ext))|0; $cmp81 = ($77|0)<($add80|0); $82 = $isTransient$addr; $tobool84 = ($82|0)!=(0); if (!($cmp81)) { break; } if ($tobool84) { $83 = $LM$addr; $84 = $k; $sub86 = (($83) - ($84))|0; $sub87 = (($sub86) - 1)|0; $B = $sub87; } else { $85 = $k; $add88 = (($85) + 1)|0; $B = $add88; } $86 = $N; $87 = $k; $shr90 = $86 >> $87; $88 = $k; $shl91 = 1 << $88; _haar1($vla7,$shr90,$shl91); $89 = $N; $90 = $B; $91 = $bias; $call92 = (+_l1_metric($vla7,$89,$90,$91)); $L1 = $call92; $92 = $L1; $93 = $best_L1; $cmp93 = $92 < $93; if ($cmp93) { $94 = $L1; $best_L1 = $94; $95 = $k; $add96 = (($95) + 1)|0; $best_level = $add96; } $96 = $k; $inc = (($96) + 1)|0; $k = $inc; } $97 = $best_level; $mul103 = Math_imul(-2, $97)|0; $98 = $i; $mul100 = $97<<1; $99 = $i; $$sink = $tobool84 ? $99 : $98; $mul103$sink = $tobool84 ? $mul100 : $mul103; $arrayidx104 = (($vla) + ($$sink<<2)|0); HEAP32[$arrayidx104>>2] = $mul103$sink; $100 = $narrow; $tobool106 = ($100|0)!=(0); do { if ($tobool106) { $101 = $i; $arrayidx108 = (($vla) + ($101<<2)|0); $102 = HEAP32[$arrayidx108>>2]|0; $cmp109 = ($102|0)==(0); if (!($cmp109)) { $103 = $i; $arrayidx111 = (($vla) + ($103<<2)|0); $104 = HEAP32[$arrayidx111>>2]|0; $105 = $LM$addr; $mul112 = Math_imul(-2, $105)|0; $cmp113 = ($104|0)==($mul112|0); if (!($cmp113)) { break; } } $106 = $i; $arrayidx116 = (($vla) + ($106<<2)|0); $107 = HEAP32[$arrayidx116>>2]|0; $sub117 = (($107) - 1)|0; HEAP32[$arrayidx116>>2] = $sub117; } } while(0); $108 = $i; $inc120 = (($108) + 1)|0; $i = $inc120; } $tf_select = 0; $sel = 0; while(1) { $109 = $sel; $cmp123 = ($109|0)<(2); if (!($cmp123)) { break; } $110 = $importance$addr; $111 = HEAP32[$110>>2]|0; $112 = HEAP32[$vla>>2]|0; $113 = $LM$addr; $arrayidx128 = (34086 + ($113<<3)|0); $114 = $isTransient$addr; $mul129 = $114<<2; $115 = $sel; $mul130 = $115<<1; $add131 = (($mul129) + ($mul130))|0; $add132 = (($add131) + 0)|0; $arrayidx133 = (($arrayidx128) + ($add132)|0); $116 = HEAP8[$arrayidx133>>0]|0; $conv134 = $116 << 24 >> 24; $mul135 = $conv134<<1; $sub136 = (($112) - ($mul135))|0; $call137 = (Math_abs(($sub136|0))|0); $mul138 = Math_imul($111, $call137)|0; $cost0 = $mul138; $117 = $importance$addr; $118 = HEAP32[$117>>2]|0; $119 = HEAP32[$vla>>2]|0; $120 = $LM$addr; $arrayidx141 = (34086 + ($120<<3)|0); $121 = $isTransient$addr; $mul142 = $121<<2; $122 = $sel; $mul143 = $122<<1; $add144 = (($mul142) + ($mul143))|0; $add145 = (($add144) + 1)|0; $arrayidx146 = (($arrayidx141) + ($add145)|0); $123 = HEAP8[$arrayidx146>>0]|0; $conv147 = $123 << 24 >> 24; $mul148 = $conv147<<1; $sub149 = (($119) - ($mul148))|0; $call150 = (Math_abs(($sub149|0))|0); $mul151 = Math_imul($118, $call150)|0; $124 = $isTransient$addr; $tobool152 = ($124|0)!=(0); $125 = $lambda$addr; $cond156 = $tobool152 ? 0 : $125; $add157 = (($mul151) + ($cond156))|0; $cost1 = $add157; $i = 1; while(1) { $126 = $i; $127 = $len$addr; $cmp159 = ($126|0)<($127|0); $128 = $cost0; $129 = $cost1; if (!($cmp159)) { break; } $130 = $lambda$addr; $add162 = (($129) + ($130))|0; $cmp163 = ($128|0)<($add162|0); if ($cmp163) { $131 = $cost0; $cond169 = $131; } else { $132 = $cost1; $133 = $lambda$addr; $add167 = (($132) + ($133))|0; $cond169 = $add167; } $curr0 = $cond169; $134 = $cost0; $135 = $lambda$addr; $add170 = (($134) + ($135))|0; $136 = $cost1; $cmp171 = ($add170|0)<($136|0); if ($cmp171) { $137 = $cost0; $138 = $lambda$addr; $add174 = (($137) + ($138))|0; $cond177 = $add174; } else { $139 = $cost1; $cond177 = $139; } $curr1 = $cond177; $140 = $curr0; $141 = $importance$addr; $142 = $i; $arrayidx178 = (($141) + ($142<<2)|0); $143 = HEAP32[$arrayidx178>>2]|0; $144 = $i; $arrayidx179 = (($vla) + ($144<<2)|0); $145 = HEAP32[$arrayidx179>>2]|0; $146 = $LM$addr; $arrayidx180 = (34086 + ($146<<3)|0); $147 = $isTransient$addr; $mul181 = $147<<2; $148 = $sel; $mul182 = $148<<1; $add183 = (($mul181) + ($mul182))|0; $add184 = (($add183) + 0)|0; $arrayidx185 = (($arrayidx180) + ($add184)|0); $149 = HEAP8[$arrayidx185>>0]|0; $conv186 = $149 << 24 >> 24; $mul187 = $conv186<<1; $sub188 = (($145) - ($mul187))|0; $call189 = (Math_abs(($sub188|0))|0); $mul190 = Math_imul($143, $call189)|0; $add191 = (($140) + ($mul190))|0; $cost0 = $add191; $150 = $curr1; $151 = $importance$addr; $152 = $i; $arrayidx192 = (($151) + ($152<<2)|0); $153 = HEAP32[$arrayidx192>>2]|0; $154 = $i; $arrayidx193 = (($vla) + ($154<<2)|0); $155 = HEAP32[$arrayidx193>>2]|0; $156 = $LM$addr; $arrayidx194 = (34086 + ($156<<3)|0); $157 = $isTransient$addr; $mul195 = $157<<2; $158 = $sel; $mul196 = $158<<1; $add197 = (($mul195) + ($mul196))|0; $add198 = (($add197) + 1)|0; $arrayidx199 = (($arrayidx194) + ($add198)|0); $159 = HEAP8[$arrayidx199>>0]|0; $conv200 = $159 << 24 >> 24; $mul201 = $conv200<<1; $sub202 = (($155) - ($mul201))|0; $call203 = (Math_abs(($sub202|0))|0); $mul204 = Math_imul($153, $call203)|0; $add205 = (($150) + ($mul204))|0; $cost1 = $add205; $160 = $i; $inc207 = (($160) + 1)|0; $i = $inc207; } $cmp209 = ($128|0)<($129|0); $161 = $cost0; $162 = $cost1; $cond214 = $cmp209 ? $161 : $162; $cost0 = $cond214; $163 = $cost0; $164 = $sel; $arrayidx215 = (($selcost) + ($164<<2)|0); HEAP32[$arrayidx215>>2] = $163; $165 = $sel; $inc217 = (($165) + 1)|0; $sel = $inc217; } $arrayidx219 = ((($selcost)) + 4|0); $166 = HEAP32[$arrayidx219>>2]|0; $167 = HEAP32[$selcost>>2]|0; $cmp221 = ($166|0)<($167|0); $168 = $isTransient$addr; $tobool224 = ($168|0)!=(0); $or$cond1 = $cmp221 & $tobool224; if ($or$cond1) { $tf_select = 1; } $169 = $importance$addr; $170 = HEAP32[$169>>2]|0; $171 = HEAP32[$vla>>2]|0; $172 = $LM$addr; $arrayidx229 = (34086 + ($172<<3)|0); $173 = $isTransient$addr; $mul230 = $173<<2; $174 = $tf_select; $mul231 = $174<<1; $add232 = (($mul230) + ($mul231))|0; $add233 = (($add232) + 0)|0; $arrayidx234 = (($arrayidx229) + ($add233)|0); $175 = HEAP8[$arrayidx234>>0]|0; $conv235 = $175 << 24 >> 24; $mul236 = $conv235<<1; $sub237 = (($171) - ($mul236))|0; $call238 = (Math_abs(($sub237|0))|0); $mul239 = Math_imul($170, $call238)|0; $cost0 = $mul239; $176 = $importance$addr; $177 = HEAP32[$176>>2]|0; $178 = HEAP32[$vla>>2]|0; $179 = $LM$addr; $arrayidx242 = (34086 + ($179<<3)|0); $180 = $isTransient$addr; $mul243 = $180<<2; $181 = $tf_select; $mul244 = $181<<1; $add245 = (($mul243) + ($mul244))|0; $add246 = (($add245) + 1)|0; $arrayidx247 = (($arrayidx242) + ($add246)|0); $182 = HEAP8[$arrayidx247>>0]|0; $conv248 = $182 << 24 >> 24; $mul249 = $conv248<<1; $sub250 = (($178) - ($mul249))|0; $call251 = (Math_abs(($sub250|0))|0); $mul252 = Math_imul($177, $call251)|0; $183 = $isTransient$addr; $tobool253 = ($183|0)!=(0); $184 = $lambda$addr; $cond257 = $tobool253 ? 0 : $184; $add258 = (($mul252) + ($cond257))|0; $cost1 = $add258; $i = 1; while(1) { $185 = $i; $186 = $len$addr; $cmp260 = ($185|0)<($186|0); $187 = $cost0; if (!($cmp260)) { break; } $from0 = $187; $188 = $cost1; $189 = $lambda$addr; $add265 = (($188) + ($189))|0; $from1 = $add265; $190 = $from0; $191 = $from1; $cmp266 = ($190|0)<($191|0); if ($cmp266) { $192 = $from0; $curr0263 = $192; $193 = $i; $$sink2 = 0;$$sink3 = $193; } else { $194 = $from1; $curr0263 = $194; $195 = $i; $$sink2 = 1;$$sink3 = $195; } $arrayidx271 = (($vla18) + ($$sink3<<2)|0); HEAP32[$arrayidx271>>2] = $$sink2; $196 = $cost0; $197 = $lambda$addr; $add273 = (($196) + ($197))|0; $from0 = $add273; $198 = $cost1; $from1 = $198; $199 = $from0; $200 = $from1; $cmp274 = ($199|0)<($200|0); if ($cmp274) { $201 = $from0; $curr1264 = $201; $202 = $i; $$sink4 = 0;$$sink5 = $202; } else { $203 = $from1; $curr1264 = $203; $204 = $i; $$sink4 = 1;$$sink5 = $204; } $arrayidx279 = (($vla19) + ($$sink5<<2)|0); HEAP32[$arrayidx279>>2] = $$sink4; $205 = $curr0263; $206 = $importance$addr; $207 = $i; $arrayidx281 = (($206) + ($207<<2)|0); $208 = HEAP32[$arrayidx281>>2]|0; $209 = $i; $arrayidx282 = (($vla) + ($209<<2)|0); $210 = HEAP32[$arrayidx282>>2]|0; $211 = $LM$addr; $arrayidx283 = (34086 + ($211<<3)|0); $212 = $isTransient$addr; $mul284 = $212<<2; $213 = $tf_select; $mul285 = $213<<1; $add286 = (($mul284) + ($mul285))|0; $add287 = (($add286) + 0)|0; $arrayidx288 = (($arrayidx283) + ($add287)|0); $214 = HEAP8[$arrayidx288>>0]|0; $conv289 = $214 << 24 >> 24; $mul290 = $conv289<<1; $sub291 = (($210) - ($mul290))|0; $call292 = (Math_abs(($sub291|0))|0); $mul293 = Math_imul($208, $call292)|0; $add294 = (($205) + ($mul293))|0; $cost0 = $add294; $215 = $curr1264; $216 = $importance$addr; $217 = $i; $arrayidx295 = (($216) + ($217<<2)|0); $218 = HEAP32[$arrayidx295>>2]|0; $219 = $i; $arrayidx296 = (($vla) + ($219<<2)|0); $220 = HEAP32[$arrayidx296>>2]|0; $221 = $LM$addr; $arrayidx297 = (34086 + ($221<<3)|0); $222 = $isTransient$addr; $mul298 = $222<<2; $223 = $tf_select; $mul299 = $223<<1; $add300 = (($mul298) + ($mul299))|0; $add301 = (($add300) + 1)|0; $arrayidx302 = (($arrayidx297) + ($add301)|0); $224 = HEAP8[$arrayidx302>>0]|0; $conv303 = $224 << 24 >> 24; $mul304 = $conv303<<1; $sub305 = (($220) - ($mul304))|0; $call306 = (Math_abs(($sub305|0))|0); $mul307 = Math_imul($218, $call306)|0; $add308 = (($215) + ($mul307))|0; $cost1 = $add308; $225 = $i; $inc310 = (($225) + 1)|0; $i = $inc310; } $226 = $cost1; $cmp312 = ($187|0)<($226|0); $cond314 = $cmp312 ? 0 : 1; $227 = $tf_res$addr; $228 = $len$addr; $sub315 = (($228) - 1)|0; $arrayidx316 = (($227) + ($sub315<<2)|0); HEAP32[$arrayidx316>>2] = $cond314; $229 = $len$addr; $sub317 = (($229) - 2)|0; $i = $sub317; while(1) { $230 = $i; $cmp319 = ($230|0)>=(0); if (!($cmp319)) { break; } $231 = $tf_res$addr; $232 = $i; $add322 = (($232) + 1)|0; $arrayidx323 = (($231) + ($add322<<2)|0); $233 = HEAP32[$arrayidx323>>2]|0; $cmp324 = ($233|0)==(1); $234 = $i; $add327 = (($234) + 1)|0; if ($cmp324) { $arrayidx328 = (($vla19) + ($add327<<2)|0); $235 = HEAP32[$arrayidx328>>2]|0; $236 = $tf_res$addr; $237 = $i; $arrayidx329 = (($236) + ($237<<2)|0); $$sink6 = $235;$arrayidx333$sink = $arrayidx329; } else { $arrayidx332 = (($vla18) + ($add327<<2)|0); $238 = HEAP32[$arrayidx332>>2]|0; $239 = $tf_res$addr; $240 = $i; $arrayidx333 = (($239) + ($240<<2)|0); $$sink6 = $238;$arrayidx333$sink = $arrayidx333; } HEAP32[$arrayidx333$sink>>2] = $$sink6; $241 = $i; $dec = (($241) + -1)|0; $i = $dec; } $242 = $tf_select; $243 = $saved_stack; _llvm_stackrestore(($243|0)); STACKTOP = sp;return ($242|0); } function _tf_encode($start,$end,$isTransient,$tf_res,$LM,$tf_select,$enc) { $start = $start|0; $end = $end|0; $isTransient = $isTransient|0; $tf_res = $tf_res|0; $LM = $LM|0; $tf_select = $tf_select|0; $enc = $enc|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $LM$addr = 0, $add = 0; var $add1 = 0, $add14 = 0, $add15 = 0, $add19 = 0, $add20 = 0, $add35 = 0, $add37 = 0, $add4 = 0, $arrayidx = 0, $arrayidx12 = 0, $arrayidx16 = 0, $arrayidx17 = 0, $arrayidx21 = 0, $arrayidx32 = 0, $arrayidx36 = 0, $arrayidx38 = 0, $arrayidx40 = 0, $arrayidx7 = 0, $arrayidx8 = 0, $budget = 0; var $call = 0, $call6 = 0, $cmp = 0, $cmp2 = 0, $cmp23 = 0, $cmp29 = 0, $cmp3 = 0, $cmp5 = 0, $cond = 0, $cond10 = 0, $conv = 0, $conv22 = 0, $conv39 = 0, $curr = 0, $enc$addr = 0, $end$addr = 0, $i = 0, $inc = 0, $inc42 = 0, $isTransient$addr = 0; var $land$ext = 0, $logp = 0, $mul = 0, $mul13 = 0, $mul18 = 0, $mul33 = 0, $mul34 = 0, $or = 0, $start$addr = 0, $storage = 0, $sub = 0, $tell = 0, $tf_changed = 0, $tf_res$addr = 0, $tf_select$addr = 0, $tf_select_rsv = 0, $tobool = 0, $tobool11 = 0, $tobool9 = 0, $xor = 0; var label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $start$addr = $start; $end$addr = $end; $isTransient$addr = $isTransient; $tf_res$addr = $tf_res; $LM$addr = $LM; $tf_select$addr = $tf_select; $enc$addr = $enc; $0 = $enc$addr; $storage = ((($0)) + 4|0); $1 = HEAP32[$storage>>2]|0; $mul = $1<<3; $budget = $mul; $2 = $enc$addr; $call = (_ec_tell_54($2)|0); $tell = $call; $3 = $isTransient$addr; $tobool = ($3|0)!=(0); $cond = $tobool ? 2 : 4; $logp = $cond; $4 = $LM$addr; $cmp = ($4|0)>(0); if ($cmp) { $5 = $tell; $6 = $logp; $add = (($5) + ($6))|0; $add1 = (($add) + 1)|0; $7 = $budget; $cmp2 = ($add1>>>0)<=($7>>>0); $8 = $cmp2; } else { $8 = 0; } $land$ext = $8&1; $tf_select_rsv = $land$ext; $9 = $tf_select_rsv; $10 = $budget; $sub = (($10) - ($9))|0; $budget = $sub; $tf_changed = 0; $curr = 0; $11 = $start$addr; $i = $11; while(1) { $12 = $i; $13 = $end$addr; $cmp3 = ($12|0)<($13|0); if (!($cmp3)) { break; } $14 = $tell; $15 = $logp; $add4 = (($14) + ($15))|0; $16 = $budget; $cmp5 = ($add4>>>0)<=($16>>>0); if ($cmp5) { $17 = $enc$addr; $18 = $tf_res$addr; $19 = $i; $arrayidx = (($18) + ($19<<2)|0); $20 = HEAP32[$arrayidx>>2]|0; $21 = $curr; $xor = $20 ^ $21; $22 = $logp; _ec_enc_bit_logp($17,$xor,$22); $23 = $enc$addr; $call6 = (_ec_tell_54($23)|0); $tell = $call6; $24 = $tf_res$addr; $25 = $i; $arrayidx7 = (($24) + ($25<<2)|0); $26 = HEAP32[$arrayidx7>>2]|0; $curr = $26; $27 = $curr; $28 = $tf_changed; $or = $28 | $27; $tf_changed = $or; } else { $29 = $curr; $30 = $tf_res$addr; $31 = $i; $arrayidx8 = (($30) + ($31<<2)|0); HEAP32[$arrayidx8>>2] = $29; } $32 = $isTransient$addr; $tobool9 = ($32|0)!=(0); $cond10 = $tobool9 ? 4 : 5; $logp = $cond10; $33 = $i; $inc = (($33) + 1)|0; $i = $inc; } $34 = $tf_select_rsv; $tobool11 = ($34|0)!=(0); if ($tobool11) { $35 = $LM$addr; $arrayidx12 = (34086 + ($35<<3)|0); $36 = $isTransient$addr; $mul13 = $36<<2; $add14 = (($mul13) + 0)|0; $37 = $tf_changed; $add15 = (($add14) + ($37))|0; $arrayidx16 = (($arrayidx12) + ($add15)|0); $38 = HEAP8[$arrayidx16>>0]|0; $conv = $38 << 24 >> 24; $39 = $LM$addr; $arrayidx17 = (34086 + ($39<<3)|0); $40 = $isTransient$addr; $mul18 = $40<<2; $add19 = (($mul18) + 2)|0; $41 = $tf_changed; $add20 = (($add19) + ($41))|0; $arrayidx21 = (($arrayidx17) + ($add20)|0); $42 = HEAP8[$arrayidx21>>0]|0; $conv22 = $42 << 24 >> 24; $cmp23 = ($conv|0)!=($conv22|0); if ($cmp23) { $43 = $enc$addr; $44 = $tf_select$addr; _ec_enc_bit_logp($43,$44,1); } else { label = 12; } } else { label = 12; } if ((label|0) == 12) { $tf_select$addr = 0; } $45 = $start$addr; $i = $45; while(1) { $46 = $i; $47 = $end$addr; $cmp29 = ($46|0)<($47|0); if (!($cmp29)) { break; } $48 = $LM$addr; $arrayidx32 = (34086 + ($48<<3)|0); $49 = $isTransient$addr; $mul33 = $49<<2; $50 = $tf_select$addr; $mul34 = $50<<1; $add35 = (($mul33) + ($mul34))|0; $51 = $tf_res$addr; $52 = $i; $arrayidx36 = (($51) + ($52<<2)|0); $53 = HEAP32[$arrayidx36>>2]|0; $add37 = (($add35) + ($53))|0; $arrayidx38 = (($arrayidx32) + ($add37)|0); $54 = HEAP8[$arrayidx38>>0]|0; $conv39 = $54 << 24 >> 24; $55 = $tf_res$addr; $56 = $i; $arrayidx40 = (($55) + ($56<<2)|0); HEAP32[$arrayidx40>>2] = $conv39; $57 = $i; $inc42 = (($57) + 1)|0; $i = $inc42; } STACKTOP = sp;return; } function _stereo_analysis($m,$X,$LM,$N0) { $m = $m|0; $X = $X|0; $LM = $LM|0; $N0 = $N0|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0.0, $15 = 0, $16 = 0, $17 = 0, $18 = 0.0, $19 = 0.0, $2 = 0, $20 = 0.0, $21 = 0.0, $22 = 0.0, $23 = 0.0, $24 = 0.0, $25 = 0.0, $26 = 0.0; var $27 = 0.0, $28 = 0.0, $29 = 0, $3 = 0, $30 = 0, $31 = 0.0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0.0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0.0; var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $L = 0.0, $LM$addr = 0, $M = 0.0, $N0$addr = 0, $R = 0.0, $S = 0.0, $X$addr = 0, $add = 0, $add10 = 0, $add12 = 0.0, $add18 = 0.0, $add19 = 0.0, $add26 = 0.0, $add27 = 0.0, $add37 = 0; var $add39 = 0, $add45 = 0, $arrayidx = 0, $arrayidx11 = 0, $arrayidx3 = 0, $arrayidx35 = 0, $arrayidx43 = 0, $arrayidx9 = 0, $call = 0.0, $call16 = 0.0, $call21 = 0.0, $call24 = 0.0, $cmp = 0, $cmp31 = 0, $cmp49 = 0, $cmp6 = 0, $conv = 0, $conv13 = 0.0, $conv14 = 0.0, $conv15 = 0.0; var $conv17 = 0.0, $conv20 = 0.0, $conv22 = 0.0, $conv23 = 0.0, $conv25 = 0.0, $conv36 = 0, $conv4 = 0, $conv40 = 0.0, $conv44 = 0, $conv47 = 0.0, $conv50 = 0, $eBands = 0, $eBands2 = 0, $eBands34 = 0, $eBands42 = 0, $i = 0, $inc = 0, $inc29 = 0, $j = 0, $m$addr = 0; var $mul = 0.0, $mul41 = 0.0, $mul48 = 0.0, $shl = 0, $shl38 = 0, $shl46 = 0, $shl5 = 0, $sub = 0.0, $sub33 = 0, $sumLR = 0.0, $sumMS = 0.0, $thetas = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $m$addr = $m; $X$addr = $X; $LM$addr = $LM; $N0$addr = $N0; $sumLR = 1.0000000036274937E-15; $sumMS = 1.0000000036274937E-15; $i = 0; while(1) { $0 = $i; $cmp = ($0|0)<(13); if (!($cmp)) { break; } $1 = $m$addr; $eBands = ((($1)) + 32|0); $2 = HEAP32[$eBands>>2]|0; $3 = $i; $arrayidx = (($2) + ($3<<1)|0); $4 = HEAP16[$arrayidx>>1]|0; $conv = $4 << 16 >> 16; $5 = $LM$addr; $shl = $conv << $5; $j = $shl; while(1) { $6 = $j; $7 = $m$addr; $eBands2 = ((($7)) + 32|0); $8 = HEAP32[$eBands2>>2]|0; $9 = $i; $add = (($9) + 1)|0; $arrayidx3 = (($8) + ($add<<1)|0); $10 = HEAP16[$arrayidx3>>1]|0; $conv4 = $10 << 16 >> 16; $11 = $LM$addr; $shl5 = $conv4 << $11; $cmp6 = ($6|0)<($shl5|0); if (!($cmp6)) { break; } $12 = $X$addr; $13 = $j; $arrayidx9 = (($12) + ($13<<2)|0); $14 = +HEAPF32[$arrayidx9>>2]; $L = $14; $15 = $X$addr; $16 = $N0$addr; $17 = $j; $add10 = (($16) + ($17))|0; $arrayidx11 = (($15) + ($add10<<2)|0); $18 = +HEAPF32[$arrayidx11>>2]; $R = $18; $19 = $L; $20 = $R; $add12 = $19 + $20; $M = $add12; $21 = $L; $22 = $R; $sub = $21 - $22; $S = $sub; $23 = $sumLR; $24 = $L; $conv13 = $24; $call = (+Math_abs((+$conv13))); $conv14 = $call; $25 = $R; $conv15 = $25; $call16 = (+Math_abs((+$conv15))); $conv17 = $call16; $add18 = $conv14 + $conv17; $add19 = $23 + $add18; $sumLR = $add19; $26 = $sumMS; $27 = $M; $conv20 = $27; $call21 = (+Math_abs((+$conv20))); $conv22 = $call21; $28 = $S; $conv23 = $28; $call24 = (+Math_abs((+$conv23))); $conv25 = $call24; $add26 = $conv22 + $conv25; $add27 = $26 + $add26; $sumMS = $add27; $29 = $j; $inc = (($29) + 1)|0; $j = $inc; } $30 = $i; $inc29 = (($30) + 1)|0; $i = $inc29; } $31 = $sumMS; $mul = 0.70710700750350952 * $31; $sumMS = $mul; $thetas = 13; $32 = $LM$addr; $cmp31 = ($32|0)<=(1); if ($cmp31) { $33 = $thetas; $sub33 = (($33) - 8)|0; $thetas = $sub33; } $34 = $m$addr; $eBands34 = ((($34)) + 32|0); $35 = HEAP32[$eBands34>>2]|0; $arrayidx35 = ((($35)) + 26|0); $36 = HEAP16[$arrayidx35>>1]|0; $conv36 = $36 << 16 >> 16; $37 = $LM$addr; $add37 = (($37) + 1)|0; $shl38 = $conv36 << $add37; $38 = $thetas; $add39 = (($shl38) + ($38))|0; $conv40 = (+($add39|0)); $39 = $sumMS; $mul41 = $conv40 * $39; $40 = $m$addr; $eBands42 = ((($40)) + 32|0); $41 = HEAP32[$eBands42>>2]|0; $arrayidx43 = ((($41)) + 26|0); $42 = HEAP16[$arrayidx43>>1]|0; $conv44 = $42 << 16 >> 16; $43 = $LM$addr; $add45 = (($43) + 1)|0; $shl46 = $conv44 << $add45; $conv47 = (+($shl46|0)); $44 = $sumLR; $mul48 = $conv47 * $44; $cmp49 = $mul41 > $mul48; $conv50 = $cmp49&1; STACKTOP = sp;return ($conv50|0); } function _alloc_trim_analysis($m,$X,$bandLogE,$end,$LM,$C,$N0,$analysis,$stereo_saving,$tf_estimate,$intensity,$surround_trim,$equiv_rate,$arch) { $m = $m|0; $X = $X|0; $bandLogE = $bandLogE|0; $end = $end|0; $LM = $LM|0; $C = $C|0; $N0 = $N0|0; $analysis = $analysis|0; $stereo_saving = $stereo_saving|0; $tf_estimate = +$tf_estimate; $intensity = $intensity|0; $surround_trim = +$surround_trim; $equiv_rate = $equiv_rate|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0.0, $105 = 0.0, $106 = 0.0, $107 = 0.0, $108 = 0.0, $109 = 0.0, $11 = 0, $110 = 0.0, $111 = 0.0, $112 = 0.0, $113 = 0.0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0.0, $118 = 0, $119 = 0.0, $12 = 0, $120 = 0, $121 = 0.0, $122 = 0, $123 = 0.0, $124 = 0.0, $125 = 0.0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $14 = 0, $15 = 0, $16 = 0; var $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0.0, $31 = 0.0, $32 = 0, $33 = 0.0, $34 = 0.0; var $35 = 0.0, $36 = 0.0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0; var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0.0, $64 = 0.0, $65 = 0.0, $66 = 0.0, $67 = 0, $68 = 0.0, $69 = 0.0, $7 = 0, $70 = 0.0; var $71 = 0.0, $72 = 0.0, $73 = 0.0, $74 = 0.0, $75 = 0.0, $76 = 0.0, $77 = 0.0, $78 = 0.0, $79 = 0.0, $8 = 0, $80 = 0.0, $81 = 0, $82 = 0.0, $83 = 0.0, $84 = 0, $85 = 0.0, $86 = 0.0, $87 = 0, $88 = 0, $89 = 0; var $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0.0, $96 = 0, $97 = 0, $98 = 0.0, $99 = 0, $C$addr = 0, $LM$addr = 0, $N0$addr = 0, $X$addr = 0, $add = 0.0, $add126 = 0.0, $add127 = 0.0, $add133 = 0.0, $add146 = 0; var $add149 = 0, $add153 = 0.0, $add16 = 0, $add163 = 0.0, $add169 = 0.0, $add177 = 0.0, $add183 = 0.0, $add19 = 0, $add194 = 0.0, $add201 = 0.0, $add210 = 0.0, $add217 = 0.0, $add225 = 0.0, $add27 = 0.0, $add53 = 0, $add56 = 0, $analysis$addr = 0, $and = 0, $and42 = 0, $arch$addr = 0; var $arrayidx = 0, $arrayidx11 = 0, $arrayidx13 = 0, $arrayidx147 = 0, $arrayidx17 = 0, $arrayidx20 = 0, $arrayidx23 = 0, $arrayidx43 = 0, $arrayidx45 = 0, $arrayidx48 = 0, $arrayidx50 = 0, $arrayidx54 = 0, $arrayidx57 = 0, $arrayidx60 = 0, $arrayidx9 = 0, $bandLogE$addr = 0, $c = 0, $call = 0.0, $call102 = 0.0, $call113 = 0.0; var $call227 = 0.0, $call30 = 0.0, $call35 = 0.0, $call64 = 0.0, $call66 = 0.0, $call73 = 0.0, $call81 = 0.0, $call88 = 0.0, $call95 = 0.0, $cmp = 0, $cmp1 = 0, $cmp105 = 0, $cmp119 = 0, $cmp130 = 0, $cmp142 = 0, $cmp158 = 0, $cmp165 = 0, $cmp173 = 0, $cmp179 = 0, $cmp196 = 0; var $cmp205 = 0, $cmp212 = 0, $cmp229 = 0, $cmp235 = 0, $cmp239 = 0, $cmp32 = 0, $cmp38 = 0, $cmp4 = 0, $cmp68 = 0, $cmp7 = 0, $cmp83 = 0, $cond = 0.0, $cond117 = 0.0, $cond125 = 0.0, $cond138 = 0.0, $cond172 = 0.0, $cond188 = 0.0, $cond204 = 0.0, $cond222 = 0.0, $cond234 = 0; var $cond244 = 0, $cond246 = 0, $cond76 = 0.0, $cond91 = 0.0, $conv = 0.0, $conv10 = 0, $conv101 = 0.0, $conv104 = 0.0, $conv112 = 0.0, $conv115 = 0.0, $conv14 = 0, $conv151 = 0.0, $conv162 = 0.0, $conv21 = 0, $conv226 = 0.0, $conv228 = 0, $conv24 = 0, $conv29 = 0.0, $conv31 = 0.0, $conv34 = 0.0; var $conv36 = 0.0, $conv46 = 0, $conv51 = 0, $conv58 = 0, $conv61 = 0, $conv65 = 0.0, $conv67 = 0.0, $conv72 = 0.0, $conv74 = 0.0, $conv80 = 0.0, $conv82 = 0.0, $conv87 = 0.0, $conv89 = 0.0, $conv94 = 0.0, $conv97 = 0.0, $diff = 0.0, $div = 0.0, $div164 = 0.0, $div170 = 0.0, $div178 = 0.0; var $div184 = 0.0, $eBands = 0, $eBands12 = 0, $eBands18 = 0, $eBands22 = 0, $eBands44 = 0, $eBands49 = 0, $eBands55 = 0, $eBands59 = 0, $end$addr = 0, $equiv_rate$addr = 0, $frac = 0, $i = 0, $inc = 0, $inc155 = 0, $inc157 = 0, $inc78 = 0, $intensity$addr = 0, $logXC = 0.0, $logXC2 = 0.0; var $m$addr = 0, $minXC = 0.0, $mul = 0.0, $mul103 = 0.0, $mul108 = 0.0, $mul110 = 0.0, $mul114 = 0.0, $mul118 = 0.0, $mul123 = 0.0, $mul128 = 0.0, $mul135 = 0.0, $mul145 = 0, $mul148 = 0, $mul152 = 0.0, $mul161 = 0, $mul191 = 0.0, $mul195 = 0.0, $mul202 = 0.0, $mul211 = 0.0, $mul218 = 0.0; var $mul28 = 0.0, $mul92 = 0.0, $mul96 = 0.0, $mul98 = 0.0, $mul99 = 0.0, $nbEBands = 0, $partial = 0.0, $partial41 = 0.0, $shl = 0, $shl15 = 0, $shl26 = 0, $shl47 = 0, $shl52 = 0, $shl63 = 0, $shr = 0, $stereo_saving$addr = 0, $sub = 0, $sub100 = 0.0, $sub111 = 0.0, $sub129 = 0.0; var $sub136 = 0.0, $sub141 = 0, $sub150 = 0, $sub160 = 0, $sub189 = 0.0, $sub190 = 0.0, $sub192 = 0.0, $sub223 = 0.0, $sub25 = 0, $sub62 = 0, $sub93 = 0.0, $sum = 0.0, $surround_trim$addr = 0.0, $tf_estimate$addr = 0.0, $tobool = 0, $tonality_slope = 0, $tonality_slope200 = 0, $tonality_slope209 = 0, $tonality_slope216 = 0, $trim = 0.0; var $trim_index = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 112|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(112|0); $m$addr = $m; $X$addr = $X; $bandLogE$addr = $bandLogE; $end$addr = $end; $LM$addr = $LM; $C$addr = $C; $N0$addr = $N0; $analysis$addr = $analysis; $stereo_saving$addr = $stereo_saving; $tf_estimate$addr = $tf_estimate; $intensity$addr = $intensity; $surround_trim$addr = $surround_trim; $equiv_rate$addr = $equiv_rate; $arch$addr = $arch; $diff = 0.0; $trim = 5.0; $0 = $equiv_rate$addr; $cmp = ($0|0)<(64000); if ($cmp) { $trim = 4.0; } else { $1 = $equiv_rate$addr; $cmp1 = ($1|0)<(80000); if ($cmp1) { $2 = $equiv_rate$addr; $sub = (($2) - 64000)|0; $shr = $sub >> 10; $frac = $shr; $3 = $frac; $conv = (+($3|0)); $mul = 0.0625 * $conv; $add = 4.0 + $mul; $trim = $add; } } $4 = $C$addr; $cmp4 = ($4|0)==(2); if ($cmp4) { $sum = 0.0; $i = 0; while(1) { $5 = $i; $cmp7 = ($5|0)<(8); if (!($cmp7)) { break; } $6 = $arch$addr; $and = $6 & 7; $arrayidx = (_CELT_INNER_PROD_IMPL + ($and<<2)|0); $7 = HEAP32[$arrayidx>>2]|0; $8 = $X$addr; $9 = $m$addr; $eBands = ((($9)) + 32|0); $10 = HEAP32[$eBands>>2]|0; $11 = $i; $arrayidx9 = (($10) + ($11<<1)|0); $12 = HEAP16[$arrayidx9>>1]|0; $conv10 = $12 << 16 >> 16; $13 = $LM$addr; $shl = $conv10 << $13; $arrayidx11 = (($8) + ($shl<<2)|0); $14 = $X$addr; $15 = $N0$addr; $16 = $m$addr; $eBands12 = ((($16)) + 32|0); $17 = HEAP32[$eBands12>>2]|0; $18 = $i; $arrayidx13 = (($17) + ($18<<1)|0); $19 = HEAP16[$arrayidx13>>1]|0; $conv14 = $19 << 16 >> 16; $20 = $LM$addr; $shl15 = $conv14 << $20; $add16 = (($15) + ($shl15))|0; $arrayidx17 = (($14) + ($add16<<2)|0); $21 = $m$addr; $eBands18 = ((($21)) + 32|0); $22 = HEAP32[$eBands18>>2]|0; $23 = $i; $add19 = (($23) + 1)|0; $arrayidx20 = (($22) + ($add19<<1)|0); $24 = HEAP16[$arrayidx20>>1]|0; $conv21 = $24 << 16 >> 16; $25 = $m$addr; $eBands22 = ((($25)) + 32|0); $26 = HEAP32[$eBands22>>2]|0; $27 = $i; $arrayidx23 = (($26) + ($27<<1)|0); $28 = HEAP16[$arrayidx23>>1]|0; $conv24 = $28 << 16 >> 16; $sub25 = (($conv21) - ($conv24))|0; $29 = $LM$addr; $shl26 = $sub25 << $29; $call = (+FUNCTION_TABLE_diii[$7 & 0]($arrayidx11,$arrayidx17,$shl26)); $partial = $call; $30 = $sum; $31 = $partial; $add27 = $30 + $31; $sum = $add27; $32 = $i; $inc = (($32) + 1)|0; $i = $inc; } $33 = $sum; $mul28 = 0.125 * $33; $sum = $mul28; $34 = $sum; $conv29 = $34; $call30 = (+Math_abs((+$conv29))); $conv31 = $call30; $cmp32 = 1.0 < $conv31; if ($cmp32) { $cond = 1.0; } else { $35 = $sum; $conv34 = $35; $call35 = (+Math_abs((+$conv34))); $conv36 = $call35; $cond = $conv36; } $sum = $cond; $36 = $sum; $minXC = $36; $i = 8; while(1) { $37 = $i; $38 = $intensity$addr; $cmp38 = ($37|0)<($38|0); if (!($cmp38)) { break; } $39 = $arch$addr; $and42 = $39 & 7; $arrayidx43 = (_CELT_INNER_PROD_IMPL + ($and42<<2)|0); $40 = HEAP32[$arrayidx43>>2]|0; $41 = $X$addr; $42 = $m$addr; $eBands44 = ((($42)) + 32|0); $43 = HEAP32[$eBands44>>2]|0; $44 = $i; $arrayidx45 = (($43) + ($44<<1)|0); $45 = HEAP16[$arrayidx45>>1]|0; $conv46 = $45 << 16 >> 16; $46 = $LM$addr; $shl47 = $conv46 << $46; $arrayidx48 = (($41) + ($shl47<<2)|0); $47 = $X$addr; $48 = $N0$addr; $49 = $m$addr; $eBands49 = ((($49)) + 32|0); $50 = HEAP32[$eBands49>>2]|0; $51 = $i; $arrayidx50 = (($50) + ($51<<1)|0); $52 = HEAP16[$arrayidx50>>1]|0; $conv51 = $52 << 16 >> 16; $53 = $LM$addr; $shl52 = $conv51 << $53; $add53 = (($48) + ($shl52))|0; $arrayidx54 = (($47) + ($add53<<2)|0); $54 = $m$addr; $eBands55 = ((($54)) + 32|0); $55 = HEAP32[$eBands55>>2]|0; $56 = $i; $add56 = (($56) + 1)|0; $arrayidx57 = (($55) + ($add56<<1)|0); $57 = HEAP16[$arrayidx57>>1]|0; $conv58 = $57 << 16 >> 16; $58 = $m$addr; $eBands59 = ((($58)) + 32|0); $59 = HEAP32[$eBands59>>2]|0; $60 = $i; $arrayidx60 = (($59) + ($60<<1)|0); $61 = HEAP16[$arrayidx60>>1]|0; $conv61 = $61 << 16 >> 16; $sub62 = (($conv58) - ($conv61))|0; $62 = $LM$addr; $shl63 = $sub62 << $62; $call64 = (+FUNCTION_TABLE_diii[$40 & 0]($arrayidx48,$arrayidx54,$shl63)); $partial41 = $call64; $63 = $minXC; $64 = $partial41; $conv65 = $64; $call66 = (+Math_abs((+$conv65))); $conv67 = $call66; $cmp68 = $63 < $conv67; if ($cmp68) { $65 = $minXC; $cond76 = $65; } else { $66 = $partial41; $conv72 = $66; $call73 = (+Math_abs((+$conv72))); $conv74 = $call73; $cond76 = $conv74; } $minXC = $cond76; $67 = $i; $inc78 = (($67) + 1)|0; $i = $inc78; } $68 = $minXC; $conv80 = $68; $call81 = (+Math_abs((+$conv80))); $conv82 = $call81; $cmp83 = 1.0 < $conv82; if ($cmp83) { $cond91 = 1.0; } else { $69 = $minXC; $conv87 = $69; $call88 = (+Math_abs((+$conv87))); $conv89 = $call88; $cond91 = $conv89; } $minXC = $cond91; $70 = $sum; $71 = $sum; $mul92 = $70 * $71; $sub93 = 1.0010000467300415 - $mul92; $conv94 = $sub93; $call95 = (+Math_log((+$conv94))); $mul96 = 1.4426950408889634 * $call95; $conv97 = $mul96; $logXC = $conv97; $72 = $logXC; $mul98 = 0.5 * $72; $73 = $minXC; $74 = $minXC; $mul99 = $73 * $74; $sub100 = 1.0010000467300415 - $mul99; $conv101 = $sub100; $call102 = (+Math_log((+$conv101))); $mul103 = 1.4426950408889634 * $call102; $conv104 = $mul103; $cmp105 = $mul98 > $conv104; if ($cmp105) { $75 = $logXC; $mul108 = 0.5 * $75; $cond117 = $mul108; } else { $76 = $minXC; $77 = $minXC; $mul110 = $76 * $77; $sub111 = 1.0010000467300415 - $mul110; $conv112 = $sub111; $call113 = (+Math_log((+$conv112))); $mul114 = 1.4426950408889634 * $call113; $conv115 = $mul114; $cond117 = $conv115; } $logXC2 = $cond117; $78 = $logXC; $mul118 = 0.75 * $78; $cmp119 = -4.0 > $mul118; $79 = $logXC; $mul123 = 0.75 * $79; $cond125 = $cmp119 ? -4.0 : $mul123; $80 = $trim; $add126 = $80 + $cond125; $trim = $add126; $81 = $stereo_saving$addr; $82 = +HEAPF32[$81>>2]; $add127 = $82 + 0.25; $83 = $logXC2; $mul128 = 0.5 * $83; $sub129 = - $mul128; $cmp130 = $add127 < $sub129; if ($cmp130) { $84 = $stereo_saving$addr; $85 = +HEAPF32[$84>>2]; $add133 = $85 + 0.25; $cond138 = $add133; } else { $86 = $logXC2; $mul135 = 0.5 * $86; $sub136 = - $mul135; $cond138 = $sub136; } $87 = $stereo_saving$addr; HEAPF32[$87>>2] = $cond138; } $c = 0; while(1) { $i = 0; while(1) { $88 = $i; $89 = $end$addr; $sub141 = (($89) - 1)|0; $cmp142 = ($88|0)<($sub141|0); if (!($cmp142)) { break; } $90 = $bandLogE$addr; $91 = $i; $92 = $c; $93 = $m$addr; $nbEBands = ((($93)) + 8|0); $94 = HEAP32[$nbEBands>>2]|0; $mul145 = Math_imul($92, $94)|0; $add146 = (($91) + ($mul145))|0; $arrayidx147 = (($90) + ($add146<<2)|0); $95 = +HEAPF32[$arrayidx147>>2]; $96 = $i; $mul148 = $96<<1; $add149 = (2 + ($mul148))|0; $97 = $end$addr; $sub150 = (($add149) - ($97))|0; $conv151 = (+($sub150|0)); $mul152 = $95 * $conv151; $98 = $diff; $add153 = $98 + $mul152; $diff = $add153; $99 = $i; $inc155 = (($99) + 1)|0; $i = $inc155; } $100 = $c; $inc157 = (($100) + 1)|0; $c = $inc157; $101 = $C$addr; $cmp158 = ($inc157|0)<($101|0); if (!($cmp158)) { break; } } $102 = $C$addr; $103 = $end$addr; $sub160 = (($103) - 1)|0; $mul161 = Math_imul($102, $sub160)|0; $conv162 = (+($mul161|0)); $104 = $diff; $div = $104 / $conv162; $diff = $div; $105 = $diff; $add163 = $105 + 1.0; $div164 = $add163 / 6.0; $cmp165 = 2.0 < $div164; if ($cmp165) { $cond172 = 2.0; } else { $106 = $diff; $add169 = $106 + 1.0; $div170 = $add169 / 6.0; $cond172 = $div170; } $cmp173 = -2.0 > $cond172; if ($cmp173) { $cond188 = -2.0; } else { $107 = $diff; $add177 = $107 + 1.0; $div178 = $add177 / 6.0; $cmp179 = 2.0 < $div178; if ($cmp179) { $cond188 = 2.0; } else { $108 = $diff; $add183 = $108 + 1.0; $div184 = $add183 / 6.0; $cond188 = $div184; } } $109 = $trim; $sub189 = $109 - $cond188; $trim = $sub189; $110 = $surround_trim$addr; $111 = $trim; $sub190 = $111 - $110; $trim = $sub190; $112 = $tf_estimate$addr; $mul191 = 2.0 * $112; $113 = $trim; $sub192 = $113 - $mul191; $trim = $sub192; $114 = $analysis$addr; $115 = HEAP32[$114>>2]|0; $tobool = ($115|0)!=(0); if ($tobool) { $116 = $analysis$addr; $tonality_slope = ((($116)) + 8|0); $117 = +HEAPF32[$tonality_slope>>2]; $add194 = $117 + 0.05000000074505806; $mul195 = 2.0 * $add194; $cmp196 = 2.0 < $mul195; if ($cmp196) { $cond204 = 2.0; } else { $118 = $analysis$addr; $tonality_slope200 = ((($118)) + 8|0); $119 = +HEAPF32[$tonality_slope200>>2]; $add201 = $119 + 0.05000000074505806; $mul202 = 2.0 * $add201; $cond204 = $mul202; } $cmp205 = -2.0 > $cond204; if ($cmp205) { $cond222 = -2.0; } else { $120 = $analysis$addr; $tonality_slope209 = ((($120)) + 8|0); $121 = +HEAPF32[$tonality_slope209>>2]; $add210 = $121 + 0.05000000074505806; $mul211 = 2.0 * $add210; $cmp212 = 2.0 < $mul211; if ($cmp212) { $cond222 = 2.0; } else { $122 = $analysis$addr; $tonality_slope216 = ((($122)) + 8|0); $123 = +HEAPF32[$tonality_slope216>>2]; $add217 = $123 + 0.05000000074505806; $mul218 = 2.0 * $add217; $cond222 = $mul218; } } $124 = $trim; $sub223 = $124 - $cond222; $trim = $sub223; } $125 = $trim; $add225 = 0.5 + $125; $conv226 = $add225; $call227 = (+Math_floor((+$conv226))); $conv228 = (~~(($call227))); $trim_index = $conv228; $126 = $trim_index; $cmp229 = (10)<($126|0); $127 = $trim_index; $cond234 = $cmp229 ? 10 : $127; $cmp235 = (0)>($cond234|0); if ($cmp235) { $cond246 = 0; $trim_index = $cond246; $130 = $trim_index; STACKTOP = sp;return ($130|0); } $128 = $trim_index; $cmp239 = (10)<($128|0); $129 = $trim_index; $cond244 = $cmp239 ? 10 : $129; $cond246 = $cond244; $trim_index = $cond246; $130 = $trim_index; STACKTOP = sp;return ($130|0); } function _compute_vbr($mode,$analysis,$base_target,$LM,$bitrate,$lastCodedBands,$C,$intensity,$constrained_vbr,$stereo_saving,$tot_boost,$tf_estimate,$pitch_change,$maxDepth,$lfe,$has_surround_mask,$surround_masking,$temporal_vbr) { $mode = $mode|0; $analysis = $analysis|0; $base_target = $base_target|0; $LM = $LM|0; $bitrate = $bitrate|0; $lastCodedBands = $lastCodedBands|0; $C = $C|0; $intensity = $intensity|0; $constrained_vbr = $constrained_vbr|0; $stereo_saving = +$stereo_saving; $tot_boost = $tot_boost|0; $tf_estimate = +$tf_estimate; $pitch_change = $pitch_change|0; $maxDepth = +$maxDepth; $lfe = $lfe|0; $has_surround_mask = $has_surround_mask|0; $surround_masking = +$surround_masking; $temporal_vbr = +$temporal_vbr; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0.0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0.0, $11 = 0, $110 = 0.0, $111 = 0.0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0.0, $25 = 0, $26 = 0, $27 = 0.0; var $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0.0, $42 = 0.0, $43 = 0.0, $44 = 0, $45 = 0.0; var $46 = 0, $47 = 0.0, $48 = 0, $49 = 0.0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0.0, $56 = 0.0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0.0; var $64 = 0, $65 = 0.0, $66 = 0, $67 = 0, $68 = 0.0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0.0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0; var $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0.0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $C$addr = 0; var $LM$addr = 0, $activity = 0, $activity20 = 0, $add = 0, $add102 = 0, $add113 = 0, $add154 = 0, $add189 = 0, $add69 = 0, $add74 = 0, $add95 = 0, $amount = 0.0, $analysis$addr = 0, $arrayidx = 0, $arrayidx10 = 0, $arrayidx124 = 0, $arrayidx33 = 0, $base_target$addr = 0, $bins = 0, $bitrate$addr = 0; var $cmp = 0, $cmp115 = 0, $cmp132 = 0, $cmp139 = 0, $cmp15 = 0, $cmp158 = 0, $cmp162 = 0, $cmp169 = 0, $cmp174 = 0, $cmp192 = 0, $cmp24 = 0, $cmp27 = 0, $cmp4 = 0, $cmp40 = 0, $cmp52 = 0, $cmp81 = 0, $coded_bands = 0, $coded_bins = 0, $coded_stereo_bands = 0, $coded_stereo_dof = 0; var $cond = 0, $cond121 = 0, $cond138 = 0, $cond144 = 0, $cond168 = 0, $cond180 = 0, $cond182 = 0, $cond198 = 0, $cond32 = 0, $cond45 = 0.0, $cond88 = 0.0, $cond9 = 0, $constrained_vbr$addr = 0, $conv = 0, $conv101 = 0, $conv11 = 0, $conv110 = 0.0, $conv112 = 0, $conv125 = 0, $conv129 = 0.0; var $conv131 = 0, $conv14 = 0.0, $conv151 = 0.0, $conv153 = 0, $conv183 = 0.0, $conv186 = 0.0, $conv188 = 0, $conv19 = 0.0, $conv21 = 0, $conv34 = 0, $conv37 = 0.0, $conv39 = 0.0, $conv46 = 0.0, $conv50 = 0.0, $conv60 = 0.0, $conv64 = 0, $conv71 = 0.0, $conv73 = 0, $conv91 = 0.0, $conv94 = 0; var $conv99 = 0.0, $div = 0.0, $div114 = 0, $div118 = 0, $eBands = 0, $eBands2 = 0, $floor_depth = 0, $has_surround_mask$addr = 0, $intensity$addr = 0, $lastCodedBands$addr = 0, $lfe$addr = 0, $maxDepth$addr = 0.0, $max_frac = 0.0, $mode$addr = 0, $mul = 0.0, $mul100 = 0.0, $mul111 = 0.0, $mul127 = 0, $mul130 = 0.0, $mul152 = 0.0; var $mul184 = 0.0, $mul185 = 0.0, $mul187 = 0.0, $mul191 = 0, $mul195 = 0, $mul38 = 0.0, $mul47 = 0.0, $mul51 = 0.0, $mul61 = 0.0, $mul72 = 0.0, $mul92 = 0.0, $mul93 = 0.0, $nbEBands = 0, $nbEBands1 = 0, $or$cond = 0, $or$cond1 = 0, $or$cond2 = 0, $or$cond3 = 0, $or$cond4 = 0, $pitch_change$addr = 0; var $shl = 0, $shl109 = 0, $shl12 = 0, $shl126 = 0, $shl128 = 0, $shl18 = 0, $shl35 = 0, $shl49 = 0, $shl59 = 0, $shl59$sink = 0, $shl67 = 0, $shl90 = 0, $shl98 = 0, $shr = 0, $shr136 = 0, $stereo_saving$addr = 0.0, $sub = 0.0, $sub123 = 0, $sub150 = 0, $sub161 = 0; var $sub166 = 0, $sub173 = 0, $sub178 = 0, $sub22 = 0, $sub36 = 0, $sub48 = 0.0, $sub58 = 0.0, $sub58$sink = 0.0, $sub65 = 0, $sub68 = 0, $sub70 = 0.0, $sub80 = 0.0, $sub86 = 0.0, $sub89 = 0.0, $surround_masking$addr = 0.0, $surround_target = 0, $target = 0, $temporal_vbr$addr = 0.0, $tf_calibration = 0.0, $tf_estimate$addr = 0.0; var $tobool = 0, $tobool105 = 0, $tobool107 = 0, $tobool13 = 0, $tobool145 = 0, $tobool146 = 0, $tobool148 = 0, $tobool156 = 0, $tobool76 = 0, $tobool78 = 0, $tobool96 = 0, $tonal = 0.0, $tonal_target = 0, $tonality = 0, $tonality85 = 0, $tot_boost$addr = 0, $tvbr_factor = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 144|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(144|0); $mode$addr = $mode; $analysis$addr = $analysis; $base_target$addr = $base_target; $LM$addr = $LM; $bitrate$addr = $bitrate; $lastCodedBands$addr = $lastCodedBands; $C$addr = $C; $intensity$addr = $intensity; $constrained_vbr$addr = $constrained_vbr; $stereo_saving$addr = $stereo_saving; $tot_boost$addr = $tot_boost; $tf_estimate$addr = $tf_estimate; $pitch_change$addr = $pitch_change; $maxDepth$addr = $maxDepth; $lfe$addr = $lfe; $has_surround_mask$addr = $has_surround_mask; $surround_masking$addr = $surround_masking; $temporal_vbr$addr = $temporal_vbr; $0 = $mode$addr; $nbEBands1 = ((($0)) + 8|0); $1 = HEAP32[$nbEBands1>>2]|0; $nbEBands = $1; $2 = $mode$addr; $eBands2 = ((($2)) + 32|0); $3 = HEAP32[$eBands2>>2]|0; $eBands = $3; $4 = $lastCodedBands$addr; $tobool = ($4|0)!=(0); $5 = $lastCodedBands$addr; $6 = $nbEBands; $cond = $tobool ? $5 : $6; $coded_bands = $cond; $7 = $eBands; $8 = $coded_bands; $arrayidx = (($7) + ($8<<1)|0); $9 = HEAP16[$arrayidx>>1]|0; $conv = $9 << 16 >> 16; $10 = $LM$addr; $shl = $conv << $10; $coded_bins = $shl; $11 = $C$addr; $cmp = ($11|0)==(2); if ($cmp) { $12 = $eBands; $13 = $intensity$addr; $14 = $coded_bands; $cmp4 = ($13|0)<($14|0); $15 = $intensity$addr; $16 = $coded_bands; $cond9 = $cmp4 ? $15 : $16; $arrayidx10 = (($12) + ($cond9<<1)|0); $17 = HEAP16[$arrayidx10>>1]|0; $conv11 = $17 << 16 >> 16; $18 = $LM$addr; $shl12 = $conv11 << $18; $19 = $coded_bins; $add = (($19) + ($shl12))|0; $coded_bins = $add; } $20 = $base_target$addr; $target = $20; $21 = $analysis$addr; $22 = HEAP32[$21>>2]|0; $tobool13 = ($22|0)!=(0); if ($tobool13) { $23 = $analysis$addr; $activity = ((($23)) + 16|0); $24 = +HEAPF32[$activity>>2]; $conv14 = $24; $cmp15 = $conv14 < 0.40000000000000002; if ($cmp15) { $25 = $coded_bins; $shl18 = $25 << 3; $conv19 = (+($shl18|0)); $26 = $analysis$addr; $activity20 = ((($26)) + 16|0); $27 = +HEAPF32[$activity20>>2]; $sub = 0.40000000596046448 - $27; $mul = $conv19 * $sub; $conv21 = (~~(($mul))); $28 = $target; $sub22 = (($28) - ($conv21))|0; $target = $sub22; } } $29 = $C$addr; $cmp24 = ($29|0)==(2); if ($cmp24) { $30 = $intensity$addr; $31 = $coded_bands; $cmp27 = ($30|0)<($31|0); $32 = $intensity$addr; $33 = $coded_bands; $cond32 = $cmp27 ? $32 : $33; $coded_stereo_bands = $cond32; $34 = $eBands; $35 = $coded_stereo_bands; $arrayidx33 = (($34) + ($35<<1)|0); $36 = HEAP16[$arrayidx33>>1]|0; $conv34 = $36 << 16 >> 16; $37 = $LM$addr; $shl35 = $conv34 << $37; $38 = $coded_stereo_bands; $sub36 = (($shl35) - ($38))|0; $coded_stereo_dof = $sub36; $39 = $coded_stereo_dof; $conv37 = (+($39|0)); $mul38 = 0.80000001192092896 * $conv37; $40 = $coded_bins; $conv39 = (+($40|0)); $div = $mul38 / $conv39; $max_frac = $div; $41 = $stereo_saving$addr; $cmp40 = $41 < 1.0; $42 = $stereo_saving$addr; $cond45 = $cmp40 ? $42 : 1.0; $stereo_saving$addr = $cond45; $43 = $max_frac; $44 = $target; $conv46 = (+($44|0)); $mul47 = $43 * $conv46; $45 = $stereo_saving$addr; $sub48 = $45 - 0.10000000149011612; $46 = $coded_stereo_dof; $shl49 = $46 << 3; $conv50 = (+($shl49|0)); $mul51 = $sub48 * $conv50; $cmp52 = $mul47 < $mul51; if ($cmp52) { $47 = $max_frac; $48 = $target; $shl59$sink = $48;$sub58$sink = $47; } else { $49 = $stereo_saving$addr; $sub58 = $49 - 0.10000000149011612; $50 = $coded_stereo_dof; $shl59 = $50 << 3; $shl59$sink = $shl59;$sub58$sink = $sub58; } $conv60 = (+($shl59$sink|0)); $mul61 = $sub58$sink * $conv60; $conv64 = (~~(($mul61))); $51 = $target; $sub65 = (($51) - ($conv64))|0; $target = $sub65; } $52 = $tot_boost$addr; $53 = $LM$addr; $shl67 = 19 << $53; $sub68 = (($52) - ($shl67))|0; $54 = $target; $add69 = (($54) + ($sub68))|0; $target = $add69; $tf_calibration = 0.043999999761581421; $55 = $tf_estimate$addr; $56 = $tf_calibration; $sub70 = $55 - $56; $57 = $target; $conv71 = (+($57|0)); $mul72 = $sub70 * $conv71; $conv73 = (~~(($mul72))); $58 = $target; $add74 = (($58) + ($conv73))|0; $target = $add74; $59 = $analysis$addr; $60 = HEAP32[$59>>2]|0; $tobool76 = ($60|0)==(0); $61 = $lfe$addr; $tobool78 = ($61|0)!=(0); $or$cond = $tobool76 | $tobool78; if (!($or$cond)) { $62 = $analysis$addr; $tonality = ((($62)) + 4|0); $63 = +HEAPF32[$tonality>>2]; $sub80 = $63 - 0.15000000596046448; $cmp81 = 0.0 > $sub80; if ($cmp81) { $cond88 = 0.0; } else { $64 = $analysis$addr; $tonality85 = ((($64)) + 4|0); $65 = +HEAPF32[$tonality85>>2]; $sub86 = $65 - 0.15000000596046448; $cond88 = $sub86; } $sub89 = $cond88 - 0.11999999731779099; $tonal = $sub89; $66 = $target; $67 = $coded_bins; $shl90 = $67 << 3; $conv91 = (+($shl90|0)); $mul92 = $conv91 * 1.2000000476837158; $68 = $tonal; $mul93 = $mul92 * $68; $conv94 = (~~(($mul93))); $add95 = (($66) + ($conv94))|0; $tonal_target = $add95; $69 = $pitch_change$addr; $tobool96 = ($69|0)!=(0); if ($tobool96) { $70 = $coded_bins; $shl98 = $70 << 3; $conv99 = (+($shl98|0)); $mul100 = $conv99 * 0.80000001192092896; $conv101 = (~~(($mul100))); $71 = $tonal_target; $add102 = (($71) + ($conv101))|0; $tonal_target = $add102; } $72 = $tonal_target; $target = $72; } $73 = $has_surround_mask$addr; $tobool105 = ($73|0)==(0); $74 = $lfe$addr; $tobool107 = ($74|0)!=(0); $or$cond1 = $tobool105 | $tobool107; if (!($or$cond1)) { $75 = $target; $76 = $surround_masking$addr; $77 = $coded_bins; $shl109 = $77 << 3; $conv110 = (+($shl109|0)); $mul111 = $76 * $conv110; $conv112 = (~~(($mul111))); $add113 = (($75) + ($conv112))|0; $surround_target = $add113; $78 = $target; $div114 = (($78|0) / 4)&-1; $79 = $surround_target; $cmp115 = ($div114|0)>($79|0); if ($cmp115) { $80 = $target; $div118 = (($80|0) / 4)&-1; $cond121 = $div118; } else { $81 = $surround_target; $cond121 = $81; } $target = $cond121; } $82 = $eBands; $83 = $nbEBands; $sub123 = (($83) - 2)|0; $arrayidx124 = (($82) + ($sub123<<1)|0); $84 = HEAP16[$arrayidx124>>1]|0; $conv125 = $84 << 16 >> 16; $85 = $LM$addr; $shl126 = $conv125 << $85; $bins = $shl126; $86 = $C$addr; $87 = $bins; $mul127 = Math_imul($86, $87)|0; $shl128 = $mul127 << 3; $conv129 = (+($shl128|0)); $88 = $maxDepth$addr; $mul130 = $conv129 * $88; $conv131 = (~~(($mul130))); $floor_depth = $conv131; $89 = $floor_depth; $90 = $target; $shr = $90 >> 2; $cmp132 = ($89|0)>($shr|0); $91 = $floor_depth; $92 = $target; $shr136 = $92 >> 2; $cond138 = $cmp132 ? $91 : $shr136; $floor_depth = $cond138; $93 = $target; $94 = $floor_depth; $cmp139 = ($93|0)<($94|0); $95 = $target; $96 = $floor_depth; $cond144 = $cmp139 ? $95 : $96; $target = $cond144; $97 = $has_surround_mask$addr; $tobool145 = ($97|0)==(0); $98 = $lfe$addr; $tobool146 = ($98|0)!=(0); $or$cond2 = $tobool145 | $tobool146; $99 = $constrained_vbr$addr; $tobool148 = ($99|0)!=(0); $or$cond3 = $or$cond2 & $tobool148; if ($or$cond3) { $100 = $base_target$addr; $101 = $target; $102 = $base_target$addr; $sub150 = (($101) - ($102))|0; $conv151 = (+($sub150|0)); $mul152 = 0.67000001668930054 * $conv151; $conv153 = (~~(($mul152))); $add154 = (($100) + ($conv153))|0; $target = $add154; } $103 = $has_surround_mask$addr; $tobool156 = ($103|0)==(0); $104 = $tf_estimate$addr; $cmp158 = $104 < 0.20000000298023224; $or$cond4 = $tobool156 & $cmp158; if (!($or$cond4)) { $114 = $base_target$addr; $mul191 = $114<<1; $115 = $target; $cmp192 = ($mul191|0)<($115|0); $116 = $base_target$addr; $mul195 = $116<<1; $117 = $target; $cond198 = $cmp192 ? $mul195 : $117; $target = $cond198; $118 = $target; STACKTOP = sp;return ($118|0); } $105 = $bitrate$addr; $sub161 = (96000 - ($105))|0; $cmp162 = (32000)<($sub161|0); $106 = $bitrate$addr; $sub166 = (96000 - ($106))|0; $cond168 = $cmp162 ? 32000 : $sub166; $cmp169 = (0)>($cond168|0); if ($cmp169) { $cond182 = 0; } else { $107 = $bitrate$addr; $sub173 = (96000 - ($107))|0; $cmp174 = (32000)<($sub173|0); $108 = $bitrate$addr; $sub178 = (96000 - ($108))|0; $cond180 = $cmp174 ? 32000 : $sub178; $cond182 = $cond180; } $conv183 = (+($cond182|0)); $mul184 = 3.0999999580672011E-6 * $conv183; $amount = $mul184; $109 = $temporal_vbr$addr; $110 = $amount; $mul185 = $109 * $110; $tvbr_factor = $mul185; $111 = $tvbr_factor; $112 = $target; $conv186 = (+($112|0)); $mul187 = $111 * $conv186; $conv188 = (~~(($mul187))); $113 = $target; $add189 = (($113) + ($conv188))|0; $target = $add189; $114 = $base_target$addr; $mul191 = $114<<1; $115 = $target; $cmp192 = ($mul191|0)<($115|0); $116 = $base_target$addr; $mul195 = $116<<1; $117 = $target; $cond198 = $cmp192 ? $mul195 : $117; $target = $cond198; $118 = $target; STACKTOP = sp;return ($118|0); } function _ec_get_error($_this) { $_this = $_this|0; var $0 = 0, $1 = 0, $_this$addr = 0, $error = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $_this$addr = $_this; $0 = $_this$addr; $error = ((($0)) + 44|0); $1 = HEAP32[$error>>2]|0; STACKTOP = sp;return ($1|0); } function _l1_metric($tmp,$N,$LM,$bias) { $tmp = $tmp|0; $N = $N|0; $LM = $LM|0; $bias = +$bias; var $0 = 0, $1 = 0, $10 = 0.0, $11 = 0.0, $2 = 0, $3 = 0, $4 = 0.0, $5 = 0.0, $6 = 0, $7 = 0.0, $8 = 0, $9 = 0.0, $L1 = 0.0, $LM$addr = 0, $N$addr = 0, $add = 0.0, $add4 = 0.0, $arrayidx = 0, $bias$addr = 0.0, $call = 0.0; var $cmp = 0, $conv = 0.0, $conv1 = 0.0, $conv2 = 0.0, $i = 0, $inc = 0, $mul = 0.0, $mul3 = 0.0, $tmp$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $tmp$addr = $tmp; $N$addr = $N; $LM$addr = $LM; $bias$addr = $bias; $L1 = 0.0; $i = 0; while(1) { $0 = $i; $1 = $N$addr; $cmp = ($0|0)<($1|0); if (!($cmp)) { break; } $2 = $tmp$addr; $3 = $i; $arrayidx = (($2) + ($3<<2)|0); $4 = +HEAPF32[$arrayidx>>2]; $conv = $4; $call = (+Math_abs((+$conv))); $conv1 = $call; $5 = $L1; $add = $5 + $conv1; $L1 = $add; $6 = $i; $inc = (($6) + 1)|0; $i = $inc; } $7 = $L1; $8 = $LM$addr; $conv2 = (+($8|0)); $9 = $bias$addr; $mul = $conv2 * $9; $10 = $L1; $mul3 = $mul * $10; $add4 = $7 + $mul3; $L1 = $add4; $11 = $L1; STACKTOP = sp;return (+$11); } function _median_of_5($x) { $x = $x|0; var $0 = 0, $1 = 0.0, $10 = 0.0, $11 = 0, $12 = 0.0, $13 = 0, $14 = 0.0, $15 = 0, $16 = 0.0, $17 = 0, $18 = 0.0, $19 = 0, $2 = 0, $20 = 0.0, $21 = 0.0, $22 = 0, $23 = 0.0, $24 = 0.0, $25 = 0.0, $26 = 0.0; var $27 = 0.0, $28 = 0.0, $29 = 0.0, $3 = 0.0, $30 = 0.0, $31 = 0.0, $32 = 0.0, $33 = 0.0, $34 = 0.0, $35 = 0.0, $36 = 0.0, $37 = 0.0, $38 = 0.0, $39 = 0.0, $4 = 0, $40 = 0.0, $41 = 0.0, $42 = 0.0, $43 = 0.0, $44 = 0.0; var $45 = 0.0, $46 = 0.0, $47 = 0.0, $48 = 0.0, $49 = 0.0, $5 = 0.0, $50 = 0.0, $51 = 0.0, $52 = 0.0, $53 = 0.0, $54 = 0.0, $6 = 0, $7 = 0.0, $8 = 0, $9 = 0.0, $arrayidx = 0, $arrayidx11 = 0, $arrayidx12 = 0, $arrayidx14 = 0, $arrayidx15 = 0; var $arrayidx2 = 0, $arrayidx3 = 0, $arrayidx6 = 0, $arrayidx7 = 0, $arrayidx8 = 0, $cmp = 0, $cmp17 = 0, $cmp23 = 0, $cmp25 = 0, $cmp27 = 0, $cmp29 = 0, $cmp35 = 0, $cmp37 = 0, $cmp43 = 0, $cmp9 = 0, $cond = 0.0, $cond33 = 0.0, $cond41 = 0.0, $cond47 = 0.0, $retval = 0.0; var $t0 = 0.0, $t1 = 0.0, $t2 = 0.0, $t3 = 0.0, $t4 = 0.0, $tmp = 0.0, $tmp20 = 0.0, $x$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $x$addr = $x; $0 = $x$addr; $arrayidx = ((($0)) + 8|0); $1 = +HEAPF32[$arrayidx>>2]; $t2 = $1; $2 = $x$addr; $3 = +HEAPF32[$2>>2]; $4 = $x$addr; $arrayidx2 = ((($4)) + 4|0); $5 = +HEAPF32[$arrayidx2>>2]; $cmp = $3 > $5; $6 = $x$addr; if ($cmp) { $arrayidx3 = ((($6)) + 4|0); $7 = +HEAPF32[$arrayidx3>>2]; $t0 = $7; $8 = $x$addr; $9 = +HEAPF32[$8>>2]; $t1 = $9; } else { $10 = +HEAPF32[$6>>2]; $t0 = $10; $11 = $x$addr; $arrayidx6 = ((($11)) + 4|0); $12 = +HEAPF32[$arrayidx6>>2]; $t1 = $12; } $13 = $x$addr; $arrayidx7 = ((($13)) + 12|0); $14 = +HEAPF32[$arrayidx7>>2]; $15 = $x$addr; $arrayidx8 = ((($15)) + 16|0); $16 = +HEAPF32[$arrayidx8>>2]; $cmp9 = $14 > $16; $17 = $x$addr; if ($cmp9) { $arrayidx11 = ((($17)) + 16|0); $18 = +HEAPF32[$arrayidx11>>2]; $t3 = $18; $19 = $x$addr; $arrayidx12 = ((($19)) + 12|0); $20 = +HEAPF32[$arrayidx12>>2]; $t4 = $20; } else { $arrayidx14 = ((($17)) + 12|0); $21 = +HEAPF32[$arrayidx14>>2]; $t3 = $21; $22 = $x$addr; $arrayidx15 = ((($22)) + 16|0); $23 = +HEAPF32[$arrayidx15>>2]; $t4 = $23; } $24 = $t0; $25 = $t3; $cmp17 = $24 > $25; if ($cmp17) { $26 = $t0; $tmp = $26; $27 = $t3; $t0 = $27; $28 = $tmp; $t3 = $28; $29 = $t1; $tmp20 = $29; $30 = $t4; $t1 = $30; $31 = $tmp20; $t4 = $31; } $32 = $t2; $33 = $t1; $cmp23 = $32 > $33; if ($cmp23) { $34 = $t1; $35 = $t3; $cmp25 = $34 < $35; if ($cmp25) { $36 = $t2; $37 = $t3; $cmp27 = $36 < $37; $38 = $t2; $39 = $t3; $cond = $cmp27 ? $38 : $39; $retval = $cond; $54 = $retval; STACKTOP = sp;return (+$54); } else { $40 = $t4; $41 = $t1; $cmp29 = $40 < $41; $42 = $t4; $43 = $t1; $cond33 = $cmp29 ? $42 : $43; $retval = $cond33; $54 = $retval; STACKTOP = sp;return (+$54); } } else { $44 = $t2; $45 = $t3; $cmp35 = $44 < $45; if ($cmp35) { $46 = $t1; $47 = $t3; $cmp37 = $46 < $47; $48 = $t1; $49 = $t3; $cond41 = $cmp37 ? $48 : $49; $retval = $cond41; $54 = $retval; STACKTOP = sp;return (+$54); } else { $50 = $t2; $51 = $t4; $cmp43 = $50 < $51; $52 = $t2; $53 = $t4; $cond47 = $cmp43 ? $52 : $53; $retval = $cond47; $54 = $retval; STACKTOP = sp;return (+$54); } } return +(0.0); } function _median_of_3($x) { $x = $x|0; var $0 = 0, $1 = 0.0, $10 = 0.0, $11 = 0, $12 = 0.0, $13 = 0.0, $14 = 0.0, $15 = 0.0, $16 = 0.0, $17 = 0.0, $18 = 0.0, $19 = 0.0, $2 = 0, $20 = 0.0, $3 = 0.0, $4 = 0, $5 = 0.0, $6 = 0, $7 = 0.0, $8 = 0.0; var $9 = 0, $arrayidx1 = 0, $arrayidx2 = 0, $arrayidx5 = 0, $arrayidx6 = 0, $cmp = 0, $cmp10 = 0, $cmp7 = 0, $retval = 0.0, $t0 = 0.0, $t1 = 0.0, $t2 = 0.0, $x$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $x$addr = $x; $0 = $x$addr; $1 = +HEAPF32[$0>>2]; $2 = $x$addr; $arrayidx1 = ((($2)) + 4|0); $3 = +HEAPF32[$arrayidx1>>2]; $cmp = $1 > $3; $4 = $x$addr; if ($cmp) { $arrayidx2 = ((($4)) + 4|0); $5 = +HEAPF32[$arrayidx2>>2]; $t0 = $5; $6 = $x$addr; $7 = +HEAPF32[$6>>2]; $t1 = $7; } else { $8 = +HEAPF32[$4>>2]; $t0 = $8; $9 = $x$addr; $arrayidx5 = ((($9)) + 4|0); $10 = +HEAPF32[$arrayidx5>>2]; $t1 = $10; } $11 = $x$addr; $arrayidx6 = ((($11)) + 8|0); $12 = +HEAPF32[$arrayidx6>>2]; $t2 = $12; $13 = $t1; $14 = $t2; $cmp7 = $13 < $14; if ($cmp7) { $15 = $t1; $retval = $15; $20 = $retval; STACKTOP = sp;return (+$20); } $16 = $t0; $17 = $t2; $cmp10 = $16 < $17; if ($cmp10) { $18 = $t2; $retval = $18; $20 = $retval; STACKTOP = sp;return (+$20); } else { $19 = $t0; $retval = $19; $20 = $retval; STACKTOP = sp;return (+$20); } return +(0.0); } function _celt_decoder_get_size($channels) { $channels = $channels|0; var $0 = 0, $1 = 0, $call = 0, $call1 = 0, $channels$addr = 0, $mode = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $channels$addr = $channels; $call = (_opus_custom_mode_create(48000,960,0)|0); $mode = $call; $0 = $mode; $1 = $channels$addr; $call1 = (_opus_custom_decoder_get_size($0,$1)|0); STACKTOP = sp;return ($call1|0); } function _opus_custom_decoder_get_size($mode,$channels) { $mode = $mode|0; $channels = $channels|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $add = 0, $add2 = 0, $add5 = 0, $add8 = 0, $channels$addr = 0, $mode$addr = 0, $mul = 0, $mul1 = 0, $mul3 = 0, $mul4 = 0, $mul6 = 0, $mul7 = 0, $nbEBands = 0; var $overlap = 0, $size = 0, $sub = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $mode$addr = $mode; $channels$addr = $channels; $0 = $channels$addr; $1 = $mode$addr; $overlap = ((($1)) + 4|0); $2 = HEAP32[$overlap>>2]|0; $add = (2048 + ($2))|0; $mul = Math_imul($0, $add)|0; $sub = (($mul) - 1)|0; $mul1 = $sub<<2; $add2 = (96 + ($mul1))|0; $3 = $channels$addr; $mul3 = ($3*24)|0; $mul4 = $mul3<<2; $add5 = (($add2) + ($mul4))|0; $4 = $mode$addr; $nbEBands = ((($4)) + 8|0); $5 = HEAP32[$nbEBands>>2]|0; $mul6 = $5<<3; $mul7 = $mul6<<2; $add8 = (($add5) + ($mul7))|0; $size = $add8; $6 = $size; STACKTOP = sp;return ($6|0); } function _celt_decoder_init($st,$sampling_rate,$channels) { $st = $st|0; $sampling_rate = $sampling_rate|0; $channels = $channels|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $call = 0, $call1 = 0, $call2 = 0, $channels$addr = 0, $cmp = 0, $cmp4 = 0, $downsample = 0, $downsample3 = 0, $ret = 0, $retval = 0, $sampling_rate$addr = 0; var $st$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $st$addr = $st; $sampling_rate$addr = $sampling_rate; $channels$addr = $channels; $0 = $st$addr; $call = (_opus_custom_mode_create(48000,960,0)|0); $1 = $channels$addr; $call1 = (_opus_custom_decoder_init($0,$call,$1)|0); $ret = $call1; $2 = $ret; $cmp = ($2|0)!=(0); if ($cmp) { $3 = $ret; $retval = $3; $8 = $retval; STACKTOP = sp;return ($8|0); } $4 = $sampling_rate$addr; $call2 = (_resampling_factor($4)|0); $5 = $st$addr; $downsample = ((($5)) + 16|0); HEAP32[$downsample>>2] = $call2; $6 = $st$addr; $downsample3 = ((($6)) + 16|0); $7 = HEAP32[$downsample3>>2]|0; $cmp4 = ($7|0)==(0); if ($cmp4) { $retval = -1; $8 = $retval; STACKTOP = sp;return ($8|0); } else { $retval = 0; $8 = $retval; STACKTOP = sp;return ($8|0); } return (0)|0; } function _opus_custom_decoder_init($st,$mode,$channels) { $st = $st|0; $mode = $mode|0; $channels = $channels|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $arch = 0, $call = 0, $call10 = 0, $channels$addr = 0, $channels7 = 0, $cmp = 0, $cmp1 = 0, $cmp2 = 0, $cmp9 = 0, $conv = 0, $disable_inv = 0, $downsample = 0, $effEBands = 0, $end = 0; var $mode$addr = 0, $mul = 0, $or$cond = 0, $overlap = 0, $overlap6 = 0, $retval = 0, $signalling = 0, $st$addr = 0, $start = 0, $stream_channels = 0, $vararg_buffer = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $vararg_buffer = sp; $st$addr = $st; $mode$addr = $mode; $channels$addr = $channels; $0 = $channels$addr; $cmp = ($0|0)<(0); $1 = $channels$addr; $cmp1 = ($1|0)>(2); $or$cond = $cmp | $cmp1; if ($or$cond) { $retval = -1; $25 = $retval; STACKTOP = sp;return ($25|0); } $2 = $st$addr; $cmp2 = ($2|0)==(0|0); if ($cmp2) { $retval = -7; $25 = $retval; STACKTOP = sp;return ($25|0); } else { $3 = $st$addr; $4 = $mode$addr; $5 = $channels$addr; $call = (_opus_custom_decoder_get_size($4,$5)|0); $mul = $call; _memset(($3|0),0,($mul|0))|0; $6 = $mode$addr; $7 = $st$addr; HEAP32[$7>>2] = $6; $8 = $mode$addr; $overlap = ((($8)) + 4|0); $9 = HEAP32[$overlap>>2]|0; $10 = $st$addr; $overlap6 = ((($10)) + 4|0); HEAP32[$overlap6>>2] = $9; $11 = $channels$addr; $12 = $st$addr; $channels7 = ((($12)) + 8|0); HEAP32[$channels7>>2] = $11; $13 = $st$addr; $stream_channels = ((($13)) + 12|0); HEAP32[$stream_channels>>2] = $11; $14 = $st$addr; $downsample = ((($14)) + 16|0); HEAP32[$downsample>>2] = 1; $15 = $st$addr; $start = ((($15)) + 20|0); HEAP32[$start>>2] = 0; $16 = $st$addr; $17 = HEAP32[$16>>2]|0; $effEBands = ((($17)) + 12|0); $18 = HEAP32[$effEBands>>2]|0; $19 = $st$addr; $end = ((($19)) + 24|0); HEAP32[$end>>2] = $18; $20 = $st$addr; $signalling = ((($20)) + 28|0); HEAP32[$signalling>>2] = 1; $21 = $channels$addr; $cmp9 = ($21|0)==(1); $conv = $cmp9&1; $22 = $st$addr; $disable_inv = ((($22)) + 32|0); HEAP32[$disable_inv>>2] = $conv; $call10 = (_opus_select_arch()|0); $23 = $st$addr; $arch = ((($23)) + 36|0); HEAP32[$arch>>2] = $call10; $24 = $st$addr; (_opus_custom_decoder_ctl($24,4028,$vararg_buffer)|0); $retval = 0; $25 = $retval; STACKTOP = sp;return ($25|0); } return (0)|0; } function _opus_custom_decoder_ctl($st,$request,$varargs) { $st = $st|0; $request = $request|0; $varargs = $varargs|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0; var $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0; var $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0; var $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0; var $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $_decode_mem = 0, $add = 0, $add$ptr = 0, $add$ptr44 = 0, $add$ptr48 = 0, $add$ptr52 = 0; var $ap = 0, $arglist_current = 0, $arglist_current12 = 0, $arglist_current15 = 0, $arglist_current18 = 0, $arglist_current21 = 0, $arglist_current24 = 0, $arglist_current27 = 0, $arglist_current3 = 0, $arglist_current30 = 0, $arglist_current6 = 0, $arglist_current9 = 0, $arglist_next = 0, $arglist_next10 = 0, $arglist_next13 = 0, $arglist_next16 = 0, $arglist_next19 = 0, $arglist_next22 = 0, $arglist_next25 = 0, $arglist_next28 = 0; var $arglist_next31 = 0, $arglist_next4 = 0, $arglist_next7 = 0, $arrayidx = 0, $arrayidx61 = 0, $call = 0, $channels = 0, $channels42 = 0, $channels54 = 0, $cmp = 0, $cmp12 = 0, $cmp19 = 0, $cmp21 = 0, $cmp28 = 0, $cmp3 = 0, $cmp36 = 0, $cmp60 = 0, $cmp66 = 0, $cmp73 = 0, $cmp8 = 0; var $cmp85 = 0, $cmp93 = 0, $cmp95 = 0, $disable_inv = 0, $disable_inv104 = 0, $div = 0, $downsample = 0, $end = 0, $error = 0, $error31 = 0, $expanded = 0, $expanded11 = 0, $expanded12 = 0, $expanded13 = 0, $expanded15 = 0, $expanded16 = 0, $expanded18 = 0, $expanded19 = 0, $expanded2 = 0, $expanded20 = 0; var $expanded22 = 0, $expanded23 = 0, $expanded25 = 0, $expanded26 = 0, $expanded27 = 0, $expanded29 = 0, $expanded30 = 0, $expanded32 = 0, $expanded33 = 0, $expanded34 = 0, $expanded36 = 0, $expanded37 = 0, $expanded39 = 0, $expanded4 = 0, $expanded40 = 0, $expanded41 = 0, $expanded43 = 0, $expanded44 = 0, $expanded46 = 0, $expanded47 = 0; var $expanded48 = 0, $expanded5 = 0, $expanded50 = 0, $expanded51 = 0, $expanded53 = 0, $expanded54 = 0, $expanded55 = 0, $expanded57 = 0, $expanded58 = 0, $expanded6 = 0, $expanded60 = 0, $expanded61 = 0, $expanded62 = 0, $expanded64 = 0, $expanded65 = 0, $expanded67 = 0, $expanded68 = 0, $expanded69 = 0, $expanded71 = 0, $expanded72 = 0; var $expanded74 = 0, $expanded75 = 0, $expanded76 = 0, $expanded8 = 0, $expanded9 = 0, $i = 0, $inc = 0, $lpc = 0, $mul = 0, $mul43 = 0, $mul47 = 0, $mul51 = 0, $mul56 = 0, $mul59 = 0, $nbEBands = 0, $nbEBands11 = 0, $nbEBands46 = 0, $nbEBands50 = 0, $nbEBands58 = 0, $oldBandE = 0; var $oldLogE = 0, $oldLogE2 = 0, $or$cond = 0, $or$cond1 = 0, $overlap = 0, $overlap41 = 0, $postfilter_period = 0, $request$addr = 0, $retval = 0, $rng = 0, $rng55 = 0, $rng88 = 0, $signalling = 0, $skip_plc = 0, $st$addr = 0, $start = 0, $stream_channels = 0, $sub = 0, $sub$ptr$lhs$cast = 0, $sub$ptr$rhs$cast = 0; var $sub$ptr$sub = 0, $tobool = 0, $value = 0, $value16 = 0, $value25 = 0, $value33 = 0, $value5 = 0, $value63 = 0, $value70 = 0, $value78 = 0, $value82 = 0, $value90 = 0, $value99 = 0, $varet = 0, $varet101 = 0, $varet18 = 0, $varet27 = 0, $varet35 = 0, $varet65 = 0, $varet7 = 0; var $varet72 = 0, $varet80 = 0, $varet84 = 0, $varet92 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 144|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(144|0); $ap = sp + 112|0; $st$addr = $st; $request$addr = $request; HEAP32[$ap>>2] = $varargs; $0 = $request$addr; do { switch ($0|0) { case 10010: { $arglist_current = HEAP32[$ap>>2]|0; $1 = $arglist_current; $2 = ((0) + 4|0); $expanded2 = $2; $expanded = (($expanded2) - 1)|0; $3 = (($1) + ($expanded))|0; $4 = ((0) + 4|0); $expanded6 = $4; $expanded5 = (($expanded6) - 1)|0; $expanded4 = $expanded5 ^ -1; $5 = $3 & $expanded4; $6 = $5; $7 = HEAP32[$6>>2]|0; $arglist_next = ((($6)) + 4|0); HEAP32[$ap>>2] = $arglist_next; $varet = $7; $8 = $varet; $value = $8; $9 = $value; $cmp = ($9|0)<(0); if ($cmp) { label = 30; } else { $10 = $value; $11 = $st$addr; $12 = HEAP32[$11>>2]|0; $nbEBands = ((($12)) + 8|0); $13 = HEAP32[$nbEBands>>2]|0; $cmp3 = ($10|0)>=($13|0); if ($cmp3) { label = 30; } else { $14 = $value; $15 = $st$addr; $start = ((($15)) + 20|0); HEAP32[$start>>2] = $14; label = 29; } } break; } case 10012: { $arglist_current3 = HEAP32[$ap>>2]|0; $16 = $arglist_current3; $17 = ((0) + 4|0); $expanded9 = $17; $expanded8 = (($expanded9) - 1)|0; $18 = (($16) + ($expanded8))|0; $19 = ((0) + 4|0); $expanded13 = $19; $expanded12 = (($expanded13) - 1)|0; $expanded11 = $expanded12 ^ -1; $20 = $18 & $expanded11; $21 = $20; $22 = HEAP32[$21>>2]|0; $arglist_next4 = ((($21)) + 4|0); HEAP32[$ap>>2] = $arglist_next4; $varet7 = $22; $23 = $varet7; $value5 = $23; $24 = $value5; $cmp8 = ($24|0)<(1); if ($cmp8) { label = 30; } else { $25 = $value5; $26 = $st$addr; $27 = HEAP32[$26>>2]|0; $nbEBands11 = ((($27)) + 8|0); $28 = HEAP32[$nbEBands11>>2]|0; $cmp12 = ($25|0)>($28|0); if ($cmp12) { label = 30; } else { $29 = $value5; $30 = $st$addr; $end = ((($30)) + 24|0); HEAP32[$end>>2] = $29; label = 29; } } break; } case 10008: { $arglist_current6 = HEAP32[$ap>>2]|0; $31 = $arglist_current6; $32 = ((0) + 4|0); $expanded16 = $32; $expanded15 = (($expanded16) - 1)|0; $33 = (($31) + ($expanded15))|0; $34 = ((0) + 4|0); $expanded20 = $34; $expanded19 = (($expanded20) - 1)|0; $expanded18 = $expanded19 ^ -1; $35 = $33 & $expanded18; $36 = $35; $37 = HEAP32[$36>>2]|0; $arglist_next7 = ((($36)) + 4|0); HEAP32[$ap>>2] = $arglist_next7; $varet18 = $37; $38 = $varet18; $value16 = $38; $39 = $value16; $cmp19 = ($39|0)<(1); $40 = $value16; $cmp21 = ($40|0)>(2); $or$cond = $cmp19 | $cmp21; if ($or$cond) { label = 30; } else { $41 = $value16; $42 = $st$addr; $stream_channels = ((($42)) + 12|0); HEAP32[$stream_channels>>2] = $41; label = 29; } break; } case 10007: { $arglist_current9 = HEAP32[$ap>>2]|0; $43 = $arglist_current9; $44 = ((0) + 4|0); $expanded23 = $44; $expanded22 = (($expanded23) - 1)|0; $45 = (($43) + ($expanded22))|0; $46 = ((0) + 4|0); $expanded27 = $46; $expanded26 = (($expanded27) - 1)|0; $expanded25 = $expanded26 ^ -1; $47 = $45 & $expanded25; $48 = $47; $49 = HEAP32[$48>>2]|0; $arglist_next10 = ((($48)) + 4|0); HEAP32[$ap>>2] = $arglist_next10; $varet27 = $49; $50 = $varet27; $value25 = $50; $51 = $value25; $cmp28 = ($51|0)==(0|0); if ($cmp28) { label = 30; } else { $52 = $st$addr; $error = ((($52)) + 44|0); $53 = HEAP32[$error>>2]|0; $54 = $value25; HEAP32[$54>>2] = $53; $55 = $st$addr; $error31 = ((($55)) + 44|0); HEAP32[$error31>>2] = 0; label = 29; } break; } case 4027: { $arglist_current12 = HEAP32[$ap>>2]|0; $56 = $arglist_current12; $57 = ((0) + 4|0); $expanded30 = $57; $expanded29 = (($expanded30) - 1)|0; $58 = (($56) + ($expanded29))|0; $59 = ((0) + 4|0); $expanded34 = $59; $expanded33 = (($expanded34) - 1)|0; $expanded32 = $expanded33 ^ -1; $60 = $58 & $expanded32; $61 = $60; $62 = HEAP32[$61>>2]|0; $arglist_next13 = ((($61)) + 4|0); HEAP32[$ap>>2] = $arglist_next13; $varet35 = $62; $63 = $varet35; $value33 = $63; $64 = $value33; $cmp36 = ($64|0)==(0|0); if ($cmp36) { label = 30; } else { $65 = $st$addr; $overlap = ((($65)) + 4|0); $66 = HEAP32[$overlap>>2]|0; $67 = $st$addr; $downsample = ((($67)) + 16|0); $68 = HEAP32[$downsample>>2]|0; $div = (($66|0) / ($68|0))&-1; $69 = $value33; HEAP32[$69>>2] = $div; label = 29; } break; } case 4028: { $70 = $st$addr; $_decode_mem = ((($70)) + 92|0); $71 = $st$addr; $overlap41 = ((($71)) + 4|0); $72 = HEAP32[$overlap41>>2]|0; $add = (2048 + ($72))|0; $73 = $st$addr; $channels = ((($73)) + 8|0); $74 = HEAP32[$channels>>2]|0; $mul = Math_imul($add, $74)|0; $add$ptr = (($_decode_mem) + ($mul<<2)|0); $lpc = $add$ptr; $75 = $lpc; $76 = $st$addr; $channels42 = ((($76)) + 8|0); $77 = HEAP32[$channels42>>2]|0; $mul43 = ($77*24)|0; $add$ptr44 = (($75) + ($mul43<<2)|0); $oldBandE = $add$ptr44; $78 = $oldBandE; $79 = $st$addr; $80 = HEAP32[$79>>2]|0; $nbEBands46 = ((($80)) + 8|0); $81 = HEAP32[$nbEBands46>>2]|0; $mul47 = $81<<1; $add$ptr48 = (($78) + ($mul47<<2)|0); $oldLogE = $add$ptr48; $82 = $oldLogE; $83 = $st$addr; $84 = HEAP32[$83>>2]|0; $nbEBands50 = ((($84)) + 8|0); $85 = HEAP32[$nbEBands50>>2]|0; $mul51 = $85<<1; $add$ptr52 = (($82) + ($mul51<<2)|0); $oldLogE2 = $add$ptr52; $86 = $st$addr; $rng = ((($86)) + 40|0); $87 = $st$addr; $88 = HEAP32[$87>>2]|0; $89 = $st$addr; $channels54 = ((($89)) + 8|0); $90 = HEAP32[$channels54>>2]|0; $call = (_opus_custom_decoder_get_size($88,$90)|0); $91 = $st$addr; $rng55 = ((($91)) + 40|0); $92 = $st$addr; $sub$ptr$lhs$cast = $rng55; $sub$ptr$rhs$cast = $92; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $sub = (($call) - ($sub$ptr$sub))|0; $mul56 = $sub; _memset(($rng|0),0,($mul56|0))|0; $i = 0; while(1) { $93 = $i; $94 = $st$addr; $95 = HEAP32[$94>>2]|0; $nbEBands58 = ((($95)) + 8|0); $96 = HEAP32[$nbEBands58>>2]|0; $mul59 = $96<<1; $cmp60 = ($93|0)<($mul59|0); if (!($cmp60)) { break; } $97 = $oldLogE2; $98 = $i; $arrayidx = (($97) + ($98<<2)|0); HEAPF32[$arrayidx>>2] = -28.0; $99 = $oldLogE; $100 = $i; $arrayidx61 = (($99) + ($100<<2)|0); HEAPF32[$arrayidx61>>2] = -28.0; $101 = $i; $inc = (($101) + 1)|0; $i = $inc; } $102 = $st$addr; $skip_plc = ((($102)) + 56|0); HEAP32[$skip_plc>>2] = 1; label = 29; break; } case 4033: { $arglist_current15 = HEAP32[$ap>>2]|0; $103 = $arglist_current15; $104 = ((0) + 4|0); $expanded37 = $104; $expanded36 = (($expanded37) - 1)|0; $105 = (($103) + ($expanded36))|0; $106 = ((0) + 4|0); $expanded41 = $106; $expanded40 = (($expanded41) - 1)|0; $expanded39 = $expanded40 ^ -1; $107 = $105 & $expanded39; $108 = $107; $109 = HEAP32[$108>>2]|0; $arglist_next16 = ((($108)) + 4|0); HEAP32[$ap>>2] = $arglist_next16; $varet65 = $109; $110 = $varet65; $value63 = $110; $111 = $value63; $cmp66 = ($111|0)==(0|0); if ($cmp66) { label = 30; } else { $112 = $st$addr; $postfilter_period = ((($112)) + 60|0); $113 = HEAP32[$postfilter_period>>2]|0; $114 = $value63; HEAP32[$114>>2] = $113; label = 29; } break; } case 10015: { $arglist_current18 = HEAP32[$ap>>2]|0; $115 = $arglist_current18; $116 = ((0) + 4|0); $expanded44 = $116; $expanded43 = (($expanded44) - 1)|0; $117 = (($115) + ($expanded43))|0; $118 = ((0) + 4|0); $expanded48 = $118; $expanded47 = (($expanded48) - 1)|0; $expanded46 = $expanded47 ^ -1; $119 = $117 & $expanded46; $120 = $119; $121 = HEAP32[$120>>2]|0; $arglist_next19 = ((($120)) + 4|0); HEAP32[$ap>>2] = $arglist_next19; $varet72 = $121; $122 = $varet72; $value70 = $122; $123 = $value70; $cmp73 = ($123|0)==(0|0); if ($cmp73) { label = 30; } else { $124 = $st$addr; $125 = HEAP32[$124>>2]|0; $126 = $value70; HEAP32[$126>>2] = $125; label = 29; } break; } case 10016: { $arglist_current21 = HEAP32[$ap>>2]|0; $127 = $arglist_current21; $128 = ((0) + 4|0); $expanded51 = $128; $expanded50 = (($expanded51) - 1)|0; $129 = (($127) + ($expanded50))|0; $130 = ((0) + 4|0); $expanded55 = $130; $expanded54 = (($expanded55) - 1)|0; $expanded53 = $expanded54 ^ -1; $131 = $129 & $expanded53; $132 = $131; $133 = HEAP32[$132>>2]|0; $arglist_next22 = ((($132)) + 4|0); HEAP32[$ap>>2] = $arglist_next22; $varet80 = $133; $134 = $varet80; $value78 = $134; $135 = $value78; $136 = $st$addr; $signalling = ((($136)) + 28|0); HEAP32[$signalling>>2] = $135; label = 29; break; } case 4031: { $arglist_current24 = HEAP32[$ap>>2]|0; $137 = $arglist_current24; $138 = ((0) + 4|0); $expanded58 = $138; $expanded57 = (($expanded58) - 1)|0; $139 = (($137) + ($expanded57))|0; $140 = ((0) + 4|0); $expanded62 = $140; $expanded61 = (($expanded62) - 1)|0; $expanded60 = $expanded61 ^ -1; $141 = $139 & $expanded60; $142 = $141; $143 = HEAP32[$142>>2]|0; $arglist_next25 = ((($142)) + 4|0); HEAP32[$ap>>2] = $arglist_next25; $varet84 = $143; $144 = $varet84; $value82 = $144; $145 = $value82; $cmp85 = ($145|0)==(0|0); if ($cmp85) { label = 30; } else { $146 = $st$addr; $rng88 = ((($146)) + 40|0); $147 = HEAP32[$rng88>>2]|0; $148 = $value82; HEAP32[$148>>2] = $147; label = 29; } break; } case 4046: { $arglist_current27 = HEAP32[$ap>>2]|0; $149 = $arglist_current27; $150 = ((0) + 4|0); $expanded65 = $150; $expanded64 = (($expanded65) - 1)|0; $151 = (($149) + ($expanded64))|0; $152 = ((0) + 4|0); $expanded69 = $152; $expanded68 = (($expanded69) - 1)|0; $expanded67 = $expanded68 ^ -1; $153 = $151 & $expanded67; $154 = $153; $155 = HEAP32[$154>>2]|0; $arglist_next28 = ((($154)) + 4|0); HEAP32[$ap>>2] = $arglist_next28; $varet92 = $155; $156 = $varet92; $value90 = $156; $157 = $value90; $cmp93 = ($157|0)<(0); $158 = $value90; $cmp95 = ($158|0)>(1); $or$cond1 = $cmp93 | $cmp95; if ($or$cond1) { label = 30; } else { $159 = $value90; $160 = $st$addr; $disable_inv = ((($160)) + 32|0); HEAP32[$disable_inv>>2] = $159; label = 29; } break; } case 4047: { $arglist_current30 = HEAP32[$ap>>2]|0; $161 = $arglist_current30; $162 = ((0) + 4|0); $expanded72 = $162; $expanded71 = (($expanded72) - 1)|0; $163 = (($161) + ($expanded71))|0; $164 = ((0) + 4|0); $expanded76 = $164; $expanded75 = (($expanded76) - 1)|0; $expanded74 = $expanded75 ^ -1; $165 = $163 & $expanded74; $166 = $165; $167 = HEAP32[$166>>2]|0; $arglist_next31 = ((($166)) + 4|0); HEAP32[$ap>>2] = $arglist_next31; $varet101 = $167; $168 = $varet101; $value99 = $168; $169 = $value99; $tobool = ($169|0)!=(0|0); if ($tobool) { $170 = $st$addr; $disable_inv104 = ((($170)) + 32|0); $171 = HEAP32[$disable_inv104>>2]|0; $172 = $value99; HEAP32[$172>>2] = $171; label = 29; } else { label = 30; } break; } default: { $retval = -5; $173 = $retval; STACKTOP = sp;return ($173|0); } } } while(0); if ((label|0) == 29) { $retval = 0; $173 = $retval; STACKTOP = sp;return ($173|0); } else if ((label|0) == 30) { $retval = -1; $173 = $retval; STACKTOP = sp;return ($173|0); } return (0)|0; } function _celt_decode_with_ec($st,$data,$len,$pcm,$frame_size,$dec,$accum) { $st = $st|0; $data = $data|0; $len = $len|0; $pcm = $pcm|0; $frame_size = $frame_size|0; $dec = $dec|0; $accum = $accum|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; var $332 = 0, $333 = 0, $334 = 0.0, $335 = 0, $336 = 0.0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0.0, $363 = 0.0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0.0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0.0, $386 = 0; var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0.0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; var $422 = 0, $423 = 0, $424 = 0, $425 = 0.0, $426 = 0.0, $427 = 0, $428 = 0, $429 = 0.0, $43 = 0, $430 = 0, $431 = 0, $432 = 0.0, $433 = 0.0, $434 = 0, $435 = 0, $436 = 0.0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0.0, $445 = 0, $446 = 0, $447 = 0.0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0.0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0; var $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0; var $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0.0; var $91 = 0, $92 = 0, $93 = 0, $94 = 0.0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0.0, $C = 0, $CC = 0, $LM = 0, $M = 0, $N = 0, $_dec = 0, $_decode_mem = 0, $_decode_mem30 = 0, $accum$addr = 0, $add = 0, $add$ptr = 0; var $add$ptr11 = 0, $add$ptr13 = 0, $add$ptr15 = 0, $add$ptr253 = 0, $add$ptr260 = 0, $add$ptr275 = 0, $add$ptr339 = 0, $add$ptr34 = 0, $add$ptr342 = 0, $add$ptr36 = 0, $add$ptr37 = 0, $add$ptr9 = 0, $add107 = 0, $add109 = 0, $add113 = 0, $add119 = 0, $add128 = 0, $add140 = 0, $add149 = 0, $add163 = 0; var $add192 = 0, $add203 = 0, $add222 = 0, $add240 = 0, $add256 = 0, $add262 = 0, $add32 = 0, $add386 = 0, $add397 = 0, $add405 = 0, $add420 = 0.0, $add426 = 0.0, $add462 = 0, $add465 = 0, $add468 = 0, $add478 = 0, $add481 = 0, $add484 = 0, $add68 = 0, $add73 = 0; var $add73$sink = 0, $add94 = 0, $add98 = 0, $alloc_trim = 0, $anti_collapse_on = 0, $anti_collapse_rsv = 0, $arch = 0, $arch292 = 0, $arch308 = 0, $arch333 = 0, $arch349 = 0, $arrayidx = 0, $arrayidx164 = 0, $arrayidx166 = 0, $arrayidx195 = 0, $arrayidx205 = 0, $arrayidx251 = 0, $arrayidx252 = 0, $arrayidx258 = 0, $arrayidx259 = 0; var $arrayidx301 = 0, $arrayidx326 = 0, $arrayidx327 = 0, $arrayidx337 = 0, $arrayidx340 = 0, $arrayidx35 = 0, $arrayidx378 = 0, $arrayidx38 = 0, $arrayidx380 = 0, $arrayidx419 = 0, $arrayidx421 = 0, $arrayidx425 = 0, $arrayidx428 = 0, $arrayidx431 = 0, $arrayidx441 = 0, $arrayidx442 = 0, $arrayidx446 = 0, $arrayidx448 = 0, $arrayidx448$sink = 0, $arrayidx451 = 0; var $arrayidx463 = 0, $arrayidx466 = 0, $arrayidx469 = 0, $arrayidx479 = 0, $arrayidx482 = 0, $arrayidx485 = 0, $arrayidx67 = 0, $arrayidx69 = 0, $arrayidx74 = 0, $arrayidx75 = 0, $backgroundLogE = 0, $balance = 0, $bits = 0, $boost = 0, $c = 0, $call = 0, $call102 = 0, $call105 = 0, $call108 = 0, $call111 = 0; var $call112 = 0, $call117 = 0, $call123 = 0, $call132 = 0, $call133 = 0, $call144 = 0, $call148 = 0, $call153 = 0, $call158 = 0, $call198 = 0, $call199 = 0, $call226 = 0, $call232 = 0, $call249 = 0, $call284 = 0, $call287 = 0, $call503 = 0, $call509 = 0, $call87 = 0, $call93 = 0; var $channels = 0, $cleanup$dest$slot = 0, $cmp = 0, $cmp114 = 0, $cmp125 = 0, $cmp129 = 0, $cmp141 = 0, $cmp150 = 0, $cmp16 = 0, $cmp160 = 0, $cmp172 = 0, $cmp178 = 0, $cmp18 = 0, $cmp183 = 0, $cmp193 = 0, $cmp196 = 0, $cmp206 = 0, $cmp210 = 0, $cmp22 = 0, $cmp223 = 0; var $cmp23 = 0, $cmp237 = 0, $cmp242 = 0, $cmp25 = 0, $cmp265 = 0, $cmp272 = 0, $cmp281 = 0, $cmp298 = 0, $cmp310 = 0, $cmp318 = 0, $cmp334 = 0, $cmp353 = 0, $cmp365 = 0, $cmp375 = 0, $cmp40 = 0, $cmp407 = 0, $cmp41 = 0, $cmp416 = 0, $cmp422 = 0, $cmp438 = 0; var $cmp443 = 0, $cmp45 = 0, $cmp458 = 0, $cmp47 = 0, $cmp474 = 0, $cmp491 = 0, $cmp505 = 0, $cmp55 = 0, $cmp56 = 0, $cmp60 = 0, $cmp64 = 0, $cmp70 = 0, $cmp81 = 0, $cmp84 = 0, $cmp96 = 0, $cmp99 = 0, $codedBands = 0, $cond147 = 0, $cond177 = 0, $cond188 = 0; var $cond190 = 0, $cond216 = 0, $cond229 = 0, $cond245 = 0, $cond278 = 0, $cond316 = 0, $cond324 = 0, $cond430 = 0.0, $conv = 0, $conv120 = 0.0, $conv165 = 0, $conv167 = 0, $conv410 = 0.0, $data$addr = 0, $dec$addr = 0, $decode_mem = 0, $disable_inv = 0, $div = 0, $div255 = 0, $div514 = 0; var $downsample = 0, $downsample307 = 0, $downsample497 = 0, $downsample50 = 0, $downsample513 = 0, $downsample53 = 0, $dual_stereo = 0, $dynalloc_logp = 0, $dynalloc_loop_logp = 0, $eBands = 0, $eBands4 = 0, $effEBands = 0, $effEBands43 = 0, $effEnd = 0, $end = 0, $end6 = 0, $error = 0, $flag = 0, $frame_size$addr = 0, $i = 0; var $idx$neg = 0, $inc = 0, $inc219 = 0, $inc264 = 0, $inc303 = 0, $inc352 = 0, $inc39 = 0, $inc433 = 0, $inc453 = 0, $inc471 = 0, $inc487 = 0, $inc490 = 0, $inc77 = 0, $intensity = 0, $intra_ener = 0, $isTransient = 0, $len$addr = 0, $loss_count = 0, $loss_count406 = 0, $loss_count502 = 0; var $lpc = 0, $maxLM = 0, $maxLM17 = 0, $max_background_increase = 0.0, $mode = 0, $mul = 0, $mul10 = 0, $mul12 = 0, $mul121 = 0.0, $mul14 = 0, $mul169 = 0, $mul230 = 0, $mul257 = 0, $mul261 = 0, $mul268 = 0, $mul270 = 0, $mul279 = 0, $mul286 = 0, $mul29 = 0, $mul297 = 0; var $mul33 = 0, $mul379 = 0, $mul385 = 0, $mul390 = 0, $mul391 = 0, $mul396 = 0, $mul398 = 0, $mul399 = 0, $mul404 = 0, $mul411 = 0.0, $mul415 = 0, $mul437 = 0, $mul461 = 0, $mul464 = 0, $mul467 = 0, $mul477 = 0, $mul480 = 0, $mul483 = 0, $mul504 = 0, $mul7 = 0; var $mul8 = 0, $mul80 = 0, $mul92 = 0, $nbEBands = 0, $nbEBands2 = 0, $nbits_total = 0, $octave = 0, $oldBandE = 0, $oldLogE = 0, $oldLogE2 = 0, $or$cond = 0, $or$cond1 = 0, $or$cond2 = 0, $or$cond3 = 0, $out_syn = 0, $overlap = 0, $overlap3 = 0, $pcm$addr = 0, $postfilter_gain = 0.0, $postfilter_gain331 = 0; var $postfilter_gain346 = 0, $postfilter_gain358 = 0, $postfilter_gain363 = 0, $postfilter_gain370 = 0, $postfilter_gain_old = 0, $postfilter_gain_old359 = 0, $postfilter_gain_old371 = 0, $postfilter_period = 0, $postfilter_period313 = 0, $postfilter_period317 = 0, $postfilter_period329 = 0, $postfilter_period343 = 0, $postfilter_period356 = 0, $postfilter_period362 = 0, $postfilter_period368 = 0, $postfilter_period_old = 0, $postfilter_period_old321 = 0, $postfilter_period_old325 = 0, $postfilter_period_old328 = 0, $postfilter_period_old357 = 0; var $postfilter_period_old369 = 0, $postfilter_pitch = 0, $postfilter_tapset = 0, $postfilter_tapset332 = 0, $postfilter_tapset347 = 0, $postfilter_tapset360 = 0, $postfilter_tapset364 = 0, $postfilter_tapset372 = 0, $postfilter_tapset_old = 0, $postfilter_tapset_old361 = 0, $postfilter_tapset_old373 = 0, $preemph = 0, $preemph498 = 0, $preemph_memD = 0, $preemph_memD500 = 0, $qg = 0, $quanta = 0, $retval = 0, $rng = 0, $rng291 = 0; var $rng494 = 0, $rng495 = 0, $saved_stack = 0, $shl = 0, $shl106 = 0, $shl157 = 0, $shl170 = 0, $shl171 = 0, $shl181 = 0, $shl191 = 0, $shl21 = 0, $shl231 = 0, $shl241 = 0, $shortBlocks = 0, $shortMdctSize = 0, $shortMdctSize28 = 0, $shortMdctSize330 = 0, $shortMdctSize338 = 0, $shortMdctSize341 = 0, $shortMdctSize344 = 0; var $silence = 0, $skip_plc = 0, $spread_decision = 0, $st$addr = 0, $start = 0, $start5 = 0, $stream_channels = 0, $sub = 0, $sub$ptr$div = 0, $sub$ptr$div384 = 0, $sub$ptr$div395 = 0, $sub$ptr$div403 = 0, $sub$ptr$lhs$cast = 0, $sub$ptr$lhs$cast381 = 0, $sub$ptr$lhs$cast392 = 0, $sub$ptr$lhs$cast400 = 0, $sub$ptr$rhs$cast = 0, $sub$ptr$rhs$cast382 = 0, $sub$ptr$rhs$cast393 = 0, $sub$ptr$rhs$cast401 = 0; var $sub$ptr$sub = 0, $sub$ptr$sub383 = 0, $sub$ptr$sub394 = 0, $sub$ptr$sub402 = 0, $sub110 = 0, $sub168 = 0, $sub204 = 0, $sub209 = 0, $sub214 = 0, $sub233 = 0, $sub234 = 0, $sub246 = 0, $sub254 = 0, $sub280 = 0, $sub288 = 0, $sub345 = 0, $tell = 0, $tobool = 0, $tobool103 = 0, $tobool136 = 0; var $tobool200 = 0, $tobool235 = 0, $tobool289 = 0, $tobool294 = 0, $tobool388 = 0, $tobool510 = 0, $total_bits = 0, $vla = 0, $vla$alloca_mul = 0, $vla155 = 0, $vla155$alloca_mul = 0, $vla156 = 0, $vla156$alloca_mul = 0, $vla221 = 0, $vla221$alloca_mul = 0, $vla247 = 0, $vla247$alloca_mul = 0, $vla248 = 0, $vla248$alloca_mul = 0, $vla269 = 0; var $vla269$alloca_mul = 0, $vla271 = 0, $vla271$alloca_mul = 0, $width = 0, $window = 0, $window348 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 304|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(304|0); $_dec = sp + 192|0; $decode_mem = sp + 184|0; $out_syn = sp + 176|0; $intensity = sp + 96|0; $dual_stereo = sp + 92|0; $balance = sp + 84|0; $st$addr = $st; $data$addr = $data; $len$addr = $len; $pcm$addr = $pcm; $frame_size$addr = $frame_size; $dec$addr = $dec; $accum$addr = $accum; $0 = $st$addr; $channels = ((($0)) + 8|0); $1 = HEAP32[$channels>>2]|0; $CC = $1; HEAP32[$intensity>>2] = 0; HEAP32[$dual_stereo>>2] = 0; $anti_collapse_on = 0; $2 = $st$addr; $stream_channels = ((($2)) + 12|0); $3 = HEAP32[$stream_channels>>2]|0; $C = $3; $4 = $st$addr; $5 = HEAP32[$4>>2]|0; $mode = $5; $6 = $mode; $nbEBands2 = ((($6)) + 8|0); $7 = HEAP32[$nbEBands2>>2]|0; $nbEBands = $7; $8 = $mode; $overlap3 = ((($8)) + 4|0); $9 = HEAP32[$overlap3>>2]|0; $overlap = $9; $10 = $mode; $eBands4 = ((($10)) + 32|0); $11 = HEAP32[$eBands4>>2]|0; $eBands = $11; $12 = $st$addr; $start5 = ((($12)) + 20|0); $13 = HEAP32[$start5>>2]|0; $start = $13; $14 = $st$addr; $end6 = ((($14)) + 24|0); $15 = HEAP32[$end6>>2]|0; $end = $15; $16 = $st$addr; $downsample = ((($16)) + 16|0); $17 = HEAP32[$downsample>>2]|0; $18 = $frame_size$addr; $mul = Math_imul($18, $17)|0; $frame_size$addr = $mul; $19 = $st$addr; $_decode_mem = ((($19)) + 92|0); $20 = $overlap; $add = (2048 + ($20))|0; $21 = $CC; $mul7 = Math_imul($add, $21)|0; $add$ptr = (($_decode_mem) + ($mul7<<2)|0); $lpc = $add$ptr; $22 = $lpc; $23 = $CC; $mul8 = ($23*24)|0; $add$ptr9 = (($22) + ($mul8<<2)|0); $oldBandE = $add$ptr9; $24 = $oldBandE; $25 = $nbEBands; $mul10 = $25<<1; $add$ptr11 = (($24) + ($mul10<<2)|0); $oldLogE = $add$ptr11; $26 = $oldLogE; $27 = $nbEBands; $mul12 = $27<<1; $add$ptr13 = (($26) + ($mul12<<2)|0); $oldLogE2 = $add$ptr13; $28 = $oldLogE2; $29 = $nbEBands; $mul14 = $29<<1; $add$ptr15 = (($28) + ($mul14<<2)|0); $backgroundLogE = $add$ptr15; $LM = 0; while(1) { $30 = $LM; $31 = $mode; $maxLM = ((($31)) + 36|0); $32 = HEAP32[$maxLM>>2]|0; $cmp = ($30|0)<=($32|0); if (!($cmp)) { break; } $33 = $mode; $shortMdctSize = ((($33)) + 44|0); $34 = HEAP32[$shortMdctSize>>2]|0; $35 = $LM; $shl = $34 << $35; $36 = $frame_size$addr; $cmp16 = ($shl|0)==($36|0); if ($cmp16) { break; } $37 = $LM; $inc = (($37) + 1)|0; $LM = $inc; } $38 = $LM; $39 = $mode; $maxLM17 = ((($39)) + 36|0); $40 = HEAP32[$maxLM17>>2]|0; $cmp18 = ($38|0)>($40|0); if ($cmp18) { $retval = -1; $508 = $retval; STACKTOP = sp;return ($508|0); } $41 = $LM; $shl21 = 1 << $41; $M = $shl21; $42 = $len$addr; $cmp22 = ($42|0)<(0); $43 = $len$addr; $cmp23 = ($43|0)>(1275); $or$cond = $cmp22 | $cmp23; $44 = $pcm$addr; $cmp25 = ($44|0)==(0|0); $or$cond1 = $or$cond | $cmp25; if ($or$cond1) { $retval = -1; $508 = $retval; STACKTOP = sp;return ($508|0); } $45 = $M; $46 = $mode; $shortMdctSize28 = ((($46)) + 44|0); $47 = HEAP32[$shortMdctSize28>>2]|0; $mul29 = Math_imul($45, $47)|0; $N = $mul29; $c = 0; while(1) { $48 = $st$addr; $_decode_mem30 = ((($48)) + 92|0); $49 = $c; $50 = $overlap; $add32 = (2048 + ($50))|0; $mul33 = Math_imul($49, $add32)|0; $add$ptr34 = (($_decode_mem30) + ($mul33<<2)|0); $51 = $c; $arrayidx = (($decode_mem) + ($51<<2)|0); HEAP32[$arrayidx>>2] = $add$ptr34; $52 = $c; $arrayidx35 = (($decode_mem) + ($52<<2)|0); $53 = HEAP32[$arrayidx35>>2]|0; $add$ptr36 = ((($53)) + 8192|0); $54 = $N; $idx$neg = (0 - ($54))|0; $add$ptr37 = (($add$ptr36) + ($idx$neg<<2)|0); $55 = $c; $arrayidx38 = (($out_syn) + ($55<<2)|0); HEAP32[$arrayidx38>>2] = $add$ptr37; $56 = $c; $inc39 = (($56) + 1)|0; $c = $inc39; $57 = $CC; $cmp40 = ($inc39|0)<($57|0); if (!($cmp40)) { break; } } $58 = $end; $effEnd = $58; $59 = $effEnd; $60 = $mode; $effEBands = ((($60)) + 12|0); $61 = HEAP32[$effEBands>>2]|0; $cmp41 = ($59|0)>($61|0); if ($cmp41) { $62 = $mode; $effEBands43 = ((($62)) + 12|0); $63 = HEAP32[$effEBands43>>2]|0; $effEnd = $63; } $64 = $data$addr; $cmp45 = ($64|0)==(0|0); $65 = $len$addr; $cmp47 = ($65|0)<=(1); $or$cond2 = $cmp45 | $cmp47; $66 = $st$addr; if ($or$cond2) { $67 = $N; $68 = $LM; _celt_decode_lost($66,$67,$68); $69 = $pcm$addr; $70 = $N; $71 = $CC; $72 = $st$addr; $downsample50 = ((($72)) + 16|0); $73 = HEAP32[$downsample50>>2]|0; $74 = $mode; $preemph = ((($74)) + 16|0); $75 = $st$addr; $preemph_memD = ((($75)) + 84|0); $76 = $accum$addr; _deemphasis($out_syn,$69,$70,$71,$73,$preemph,$preemph_memD,$76); $77 = $frame_size$addr; $78 = $st$addr; $downsample53 = ((($78)) + 16|0); $79 = HEAP32[$downsample53>>2]|0; $div = (($77|0) / ($79|0))&-1; $retval = $div; $508 = $retval; STACKTOP = sp;return ($508|0); } $loss_count = ((($66)) + 52|0); $80 = HEAP32[$loss_count>>2]|0; $cmp55 = ($80|0)!=(0); $conv = $cmp55&1; $81 = $st$addr; $skip_plc = ((($81)) + 56|0); HEAP32[$skip_plc>>2] = $conv; $82 = $dec$addr; $cmp56 = ($82|0)==(0|0); if ($cmp56) { $83 = $data$addr; $84 = $len$addr; _ec_dec_init($_dec,$83,$84); $dec$addr = $_dec; } $85 = $C; $cmp60 = ($85|0)==(1); L27: do { if ($cmp60) { $i = 0; while(1) { $86 = $i; $87 = $nbEBands; $cmp64 = ($86|0)<($87|0); if (!($cmp64)) { break L27; } $88 = $oldBandE; $89 = $i; $arrayidx67 = (($88) + ($89<<2)|0); $90 = +HEAPF32[$arrayidx67>>2]; $91 = $oldBandE; $92 = $nbEBands; $93 = $i; $add68 = (($92) + ($93))|0; $arrayidx69 = (($91) + ($add68<<2)|0); $94 = +HEAPF32[$arrayidx69>>2]; $cmp70 = $90 > $94; $95 = $oldBandE; if ($cmp70) { $96 = $i; $add73$sink = $96; } else { $97 = $nbEBands; $98 = $i; $add73 = (($97) + ($98))|0; $add73$sink = $add73; } $arrayidx74 = (($95) + ($add73$sink<<2)|0); $99 = +HEAPF32[$arrayidx74>>2]; $100 = $oldBandE; $101 = $i; $arrayidx75 = (($100) + ($101<<2)|0); HEAPF32[$arrayidx75>>2] = $99; $102 = $i; $inc77 = (($102) + 1)|0; $i = $inc77; } } } while(0); $103 = $len$addr; $mul80 = $103<<3; $total_bits = $mul80; $104 = $dec$addr; $call = (_ec_tell_64($104)|0); $tell = $call; $105 = $tell; $106 = $total_bits; $cmp81 = ($105|0)>=($106|0); do { if ($cmp81) { $silence = 1; } else { $107 = $tell; $cmp84 = ($107|0)==(1); if ($cmp84) { $108 = $dec$addr; $call87 = (_ec_dec_bit_logp($108,15)|0); $silence = $call87; break; } else { $silence = 0; break; } } } while(0); $109 = $silence; $tobool = ($109|0)!=(0); if ($tobool) { $110 = $len$addr; $mul92 = $110<<3; $tell = $mul92; $111 = $tell; $112 = $dec$addr; $call93 = (_ec_tell_64($112)|0); $sub = (($111) - ($call93))|0; $113 = $dec$addr; $nbits_total = ((($113)) + 20|0); $114 = HEAP32[$nbits_total>>2]|0; $add94 = (($114) + ($sub))|0; HEAP32[$nbits_total>>2] = $add94; } $postfilter_gain = 0.0; $postfilter_pitch = 0; $postfilter_tapset = 0; $115 = $start; $cmp96 = ($115|0)==(0); if ($cmp96) { $116 = $tell; $add98 = (($116) + 16)|0; $117 = $total_bits; $cmp99 = ($add98|0)<=($117|0); if ($cmp99) { $118 = $dec$addr; $call102 = (_ec_dec_bit_logp($118,1)|0); $tobool103 = ($call102|0)!=(0); if ($tobool103) { $119 = $dec$addr; $call105 = (_ec_dec_uint($119,6)|0); $octave = $call105; $120 = $octave; $shl106 = 16 << $120; $121 = $dec$addr; $122 = $octave; $add107 = (4 + ($122))|0; $call108 = (_ec_dec_bits($121,$add107)|0); $add109 = (($shl106) + ($call108))|0; $sub110 = (($add109) - 1)|0; $postfilter_pitch = $sub110; $123 = $dec$addr; $call111 = (_ec_dec_bits($123,3)|0); $qg = $call111; $124 = $dec$addr; $call112 = (_ec_tell_64($124)|0); $add113 = (($call112) + 2)|0; $125 = $total_bits; $cmp114 = ($add113|0)<=($125|0); if ($cmp114) { $126 = $dec$addr; $call117 = (_ec_dec_icdf($126,31085,2)|0); $postfilter_tapset = $call117; } $127 = $qg; $add119 = (($127) + 1)|0; $conv120 = (+($add119|0)); $mul121 = 0.09375 * $conv120; $postfilter_gain = $mul121; } $128 = $dec$addr; $call123 = (_ec_tell_64($128)|0); $tell = $call123; } } $129 = $LM; $cmp125 = ($129|0)>(0); if ($cmp125) { $130 = $tell; $add128 = (($130) + 3)|0; $131 = $total_bits; $cmp129 = ($add128|0)<=($131|0); if ($cmp129) { $132 = $dec$addr; $call132 = (_ec_dec_bit_logp($132,3)|0); $isTransient = $call132; $133 = $dec$addr; $call133 = (_ec_tell_64($133)|0); $tell = $call133; } else { label = 41; } } else { label = 41; } if ((label|0) == 41) { $isTransient = 0; } $134 = $isTransient; $tobool136 = ($134|0)!=(0); if ($tobool136) { $135 = $M; $shortBlocks = $135; } else { $shortBlocks = 0; } $136 = $tell; $add140 = (($136) + 3)|0; $137 = $total_bits; $cmp141 = ($add140|0)<=($137|0); if ($cmp141) { $138 = $dec$addr; $call144 = (_ec_dec_bit_logp($138,3)|0); $cond147 = $call144; } else { $cond147 = 0; } $intra_ener = $cond147; $139 = $mode; $140 = $start; $141 = $end; $142 = $oldBandE; $143 = $intra_ener; $144 = $dec$addr; $145 = $C; $146 = $LM; _unquant_coarse_energy($139,$140,$141,$142,$143,$144,$145,$146); $147 = $nbEBands; $148 = (_llvm_stacksave()|0); $saved_stack = $148; $vla$alloca_mul = $147<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $149 = $start; $150 = $end; $151 = $isTransient; $152 = $LM; $153 = $dec$addr; _tf_decode($149,$150,$151,$vla,$152,$153); $154 = $dec$addr; $call148 = (_ec_tell_64($154)|0); $tell = $call148; $spread_decision = 2; $155 = $tell; $add149 = (($155) + 4)|0; $156 = $total_bits; $cmp150 = ($add149|0)<=($156|0); if ($cmp150) { $157 = $dec$addr; $call153 = (_ec_dec_icdf($157,31088,5)|0); $spread_decision = $call153; } $158 = $nbEBands; $vla155$alloca_mul = $158<<2; $vla155 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla155$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla155$alloca_mul)|0)+15)&-16)|0);; $159 = $mode; $160 = $LM; $161 = $C; _init_caps($159,$vla155,$160,$161); $162 = $nbEBands; $vla156$alloca_mul = $162<<2; $vla156 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla156$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla156$alloca_mul)|0)+15)&-16)|0);; $dynalloc_logp = 6; $163 = $total_bits; $shl157 = $163 << 3; $total_bits = $shl157; $164 = $dec$addr; $call158 = (_ec_tell_frac($164)|0); $tell = $call158; $165 = $start; $i = $165; while(1) { $166 = $i; $167 = $end; $cmp160 = ($166|0)<($167|0); if (!($cmp160)) { break; } $168 = $C; $169 = $eBands; $170 = $i; $add163 = (($170) + 1)|0; $arrayidx164 = (($169) + ($add163<<1)|0); $171 = HEAP16[$arrayidx164>>1]|0; $conv165 = $171 << 16 >> 16; $172 = $eBands; $173 = $i; $arrayidx166 = (($172) + ($173<<1)|0); $174 = HEAP16[$arrayidx166>>1]|0; $conv167 = $174 << 16 >> 16; $sub168 = (($conv165) - ($conv167))|0; $mul169 = Math_imul($168, $sub168)|0; $175 = $LM; $shl170 = $mul169 << $175; $width = $shl170; $176 = $width; $shl171 = $176 << 3; $177 = $width; $cmp172 = (48)>($177|0); $178 = $width; $cond177 = $cmp172 ? 48 : $178; $cmp178 = ($shl171|0)<($cond177|0); $179 = $width; if ($cmp178) { $shl181 = $179 << 3; $cond190 = $shl181; } else { $cmp183 = (48)>($179|0); $180 = $width; $cond188 = $cmp183 ? 48 : $180; $cond190 = $cond188; } $quanta = $cond190; $181 = $dynalloc_logp; $dynalloc_loop_logp = $181; $boost = 0; while(1) { $182 = $tell; $183 = $dynalloc_loop_logp; $shl191 = $183 << 3; $add192 = (($182) + ($shl191))|0; $184 = $total_bits; $cmp193 = ($add192|0)<($184|0); if (!($cmp193)) { break; } $185 = $boost; $186 = $i; $arrayidx195 = (($vla155) + ($186<<2)|0); $187 = HEAP32[$arrayidx195>>2]|0; $cmp196 = ($185|0)<($187|0); if (!($cmp196)) { break; } $188 = $dec$addr; $189 = $dynalloc_loop_logp; $call198 = (_ec_dec_bit_logp($188,$189)|0); $flag = $call198; $190 = $dec$addr; $call199 = (_ec_tell_frac($190)|0); $tell = $call199; $191 = $flag; $tobool200 = ($191|0)!=(0); if (!($tobool200)) { break; } $192 = $quanta; $193 = $boost; $add203 = (($193) + ($192))|0; $boost = $add203; $194 = $quanta; $195 = $total_bits; $sub204 = (($195) - ($194))|0; $total_bits = $sub204; $dynalloc_loop_logp = 1; } $196 = $boost; $197 = $i; $arrayidx205 = (($vla156) + ($197<<2)|0); HEAP32[$arrayidx205>>2] = $196; $198 = $boost; $cmp206 = ($198|0)>(0); if ($cmp206) { $199 = $dynalloc_logp; $sub209 = (($199) - 1)|0; $cmp210 = (2)>($sub209|0); $200 = $dynalloc_logp; $sub214 = (($200) - 1)|0; $cond216 = $cmp210 ? 2 : $sub214; $dynalloc_logp = $cond216; } $201 = $i; $inc219 = (($201) + 1)|0; $i = $inc219; } $202 = $nbEBands; $vla221$alloca_mul = $202<<2; $vla221 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla221$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla221$alloca_mul)|0)+15)&-16)|0);; $203 = $tell; $add222 = (($203) + 48)|0; $204 = $total_bits; $cmp223 = ($add222|0)<=($204|0); if ($cmp223) { $205 = $dec$addr; $call226 = (_ec_dec_icdf($205,31092,7)|0); $cond229 = $call226; } else { $cond229 = 5; } $alloc_trim = $cond229; $206 = $len$addr; $mul230 = $206<<3; $shl231 = $mul230 << 3; $207 = $dec$addr; $call232 = (_ec_tell_frac($207)|0); $sub233 = (($shl231) - ($call232))|0; $sub234 = (($sub233) - 1)|0; $bits = $sub234; $208 = $isTransient; $tobool235 = ($208|0)!=(0); $209 = $LM; $cmp237 = ($209|0)>=(2); $or$cond3 = $tobool235 & $cmp237; if ($or$cond3) { $210 = $bits; $211 = $LM; $add240 = (($211) + 2)|0; $shl241 = $add240 << 3; $cmp242 = ($210|0)>=($shl241|0); $212 = $cmp242; } else { $212 = 0; } $cond245 = $212 ? 8 : 0; $anti_collapse_rsv = $cond245; $213 = $anti_collapse_rsv; $214 = $bits; $sub246 = (($214) - ($213))|0; $bits = $sub246; $215 = $nbEBands; $vla247$alloca_mul = $215<<2; $vla247 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla247$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla247$alloca_mul)|0)+15)&-16)|0);; $216 = $nbEBands; $vla248$alloca_mul = $216<<2; $vla248 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla248$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla248$alloca_mul)|0)+15)&-16)|0);; $217 = $mode; $218 = $start; $219 = $end; $220 = $alloc_trim; $221 = $bits; $222 = $C; $223 = $LM; $224 = $dec$addr; $call249 = (_compute_allocation($217,$218,$219,$vla156,$vla155,$220,$intensity,$dual_stereo,$221,$balance,$vla247,$vla221,$vla248,$222,$223,$224,0,0,0)|0); $codedBands = $call249; $225 = $mode; $226 = $start; $227 = $end; $228 = $oldBandE; $229 = $dec$addr; $230 = $C; _unquant_fine_energy($225,$226,$227,$228,$vla221,$229,$230); $c = 0; while(1) { $231 = $c; $arrayidx251 = (($decode_mem) + ($231<<2)|0); $232 = HEAP32[$arrayidx251>>2]|0; $233 = $c; $arrayidx252 = (($decode_mem) + ($233<<2)|0); $234 = HEAP32[$arrayidx252>>2]|0; $235 = $N; $add$ptr253 = (($234) + ($235<<2)|0); $236 = $N; $sub254 = (2048 - ($236))|0; $237 = $overlap; $div255 = (($237|0) / 2)&-1; $add256 = (($sub254) + ($div255))|0; $mul257 = $add256<<2; $238 = $c; $arrayidx258 = (($decode_mem) + ($238<<2)|0); $239 = HEAP32[$arrayidx258>>2]|0; $240 = $c; $arrayidx259 = (($decode_mem) + ($240<<2)|0); $241 = HEAP32[$arrayidx259>>2]|0; $242 = $N; $add$ptr260 = (($241) + ($242<<2)|0); $sub$ptr$lhs$cast = $239; $sub$ptr$rhs$cast = $add$ptr260; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $sub$ptr$div = (($sub$ptr$sub|0) / 4)&-1; $mul261 = 0; $add262 = (($mul257) + ($mul261))|0; _memmove(($232|0),($add$ptr253|0),($add262|0))|0; $243 = $c; $inc264 = (($243) + 1)|0; $c = $inc264; $244 = $CC; $cmp265 = ($inc264|0)<($244|0); if (!($cmp265)) { break; } } $245 = $C; $246 = $nbEBands; $mul268 = Math_imul($245, $246)|0; $vla269$alloca_mul = $mul268; $vla269 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla269$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla269$alloca_mul)|0)+15)&-16)|0);; $247 = $C; $248 = $N; $mul270 = Math_imul($247, $248)|0; $vla271$alloca_mul = $mul270<<2; $vla271 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla271$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla271$alloca_mul)|0)+15)&-16)|0);; $249 = $mode; $250 = $start; $251 = $end; $252 = $C; $cmp272 = ($252|0)==(2); $253 = $N; $add$ptr275 = (($vla271) + ($253<<2)|0); $cond278 = $cmp272 ? $add$ptr275 : 0; $254 = $shortBlocks; $255 = $spread_decision; $256 = HEAP32[$dual_stereo>>2]|0; $257 = HEAP32[$intensity>>2]|0; $258 = $len$addr; $mul279 = $258<<6; $259 = $anti_collapse_rsv; $sub280 = (($mul279) - ($259))|0; $260 = HEAP32[$balance>>2]|0; $261 = $dec$addr; $262 = $LM; $263 = $codedBands; $264 = $st$addr; $rng = ((($264)) + 40|0); $265 = $st$addr; $arch = ((($265)) + 36|0); $266 = HEAP32[$arch>>2]|0; $267 = $st$addr; $disable_inv = ((($267)) + 32|0); $268 = HEAP32[$disable_inv>>2]|0; _quant_all_bands(0,$249,$250,$251,$vla271,$cond278,$vla269,0,$vla247,$254,$255,$256,$257,$vla,$sub280,$260,$261,$262,$263,$rng,0,$266,$268); $269 = $anti_collapse_rsv; $cmp281 = ($269|0)>(0); if ($cmp281) { $270 = $dec$addr; $call284 = (_ec_dec_bits($270,1)|0); $anti_collapse_on = $call284; } $271 = $mode; $272 = $start; $273 = $end; $274 = $oldBandE; $275 = $len$addr; $mul286 = $275<<3; $276 = $dec$addr; $call287 = (_ec_tell_64($276)|0); $sub288 = (($mul286) - ($call287))|0; $277 = $dec$addr; $278 = $C; _unquant_energy_finalise($271,$272,$273,$274,$vla221,$vla248,$sub288,$277,$278); $279 = $anti_collapse_on; $tobool289 = ($279|0)!=(0); if ($tobool289) { $280 = $mode; $281 = $LM; $282 = $C; $283 = $N; $284 = $start; $285 = $end; $286 = $oldBandE; $287 = $oldLogE; $288 = $oldLogE2; $289 = $st$addr; $rng291 = ((($289)) + 40|0); $290 = HEAP32[$rng291>>2]|0; $291 = $st$addr; $arch292 = ((($291)) + 36|0); $292 = HEAP32[$arch292>>2]|0; _anti_collapse($280,$vla271,$vla269,$281,$282,$283,$284,$285,$286,$287,$288,$vla247,$290,$292); } $293 = $silence; $tobool294 = ($293|0)!=(0); L105: do { if ($tobool294) { $i = 0; while(1) { $294 = $i; $295 = $C; $296 = $nbEBands; $mul297 = Math_imul($295, $296)|0; $cmp298 = ($294|0)<($mul297|0); if (!($cmp298)) { break L105; } $297 = $oldBandE; $298 = $i; $arrayidx301 = (($297) + ($298<<2)|0); HEAPF32[$arrayidx301>>2] = -28.0; $299 = $i; $inc303 = (($299) + 1)|0; $i = $inc303; } } } while(0); $300 = $mode; $301 = $oldBandE; $302 = $start; $303 = $effEnd; $304 = $C; $305 = $CC; $306 = $isTransient; $307 = $LM; $308 = $st$addr; $downsample307 = ((($308)) + 16|0); $309 = HEAP32[$downsample307>>2]|0; $310 = $silence; $311 = $st$addr; $arch308 = ((($311)) + 36|0); $312 = HEAP32[$arch308>>2]|0; _celt_synthesis($300,$vla271,$out_syn,$301,$302,$303,$304,$305,$306,$307,$309,$310,$312); $c = 0; while(1) { $313 = $st$addr; $postfilter_period = ((($313)) + 60|0); $314 = HEAP32[$postfilter_period>>2]|0; $cmp310 = ($314|0)>(15); if ($cmp310) { $315 = $st$addr; $postfilter_period313 = ((($315)) + 60|0); $316 = HEAP32[$postfilter_period313>>2]|0; $cond316 = $316; } else { $cond316 = 15; } $317 = $st$addr; $postfilter_period317 = ((($317)) + 60|0); HEAP32[$postfilter_period317>>2] = $cond316; $318 = $st$addr; $postfilter_period_old = ((($318)) + 64|0); $319 = HEAP32[$postfilter_period_old>>2]|0; $cmp318 = ($319|0)>(15); if ($cmp318) { $320 = $st$addr; $postfilter_period_old321 = ((($320)) + 64|0); $321 = HEAP32[$postfilter_period_old321>>2]|0; $cond324 = $321; } else { $cond324 = 15; } $322 = $st$addr; $postfilter_period_old325 = ((($322)) + 64|0); HEAP32[$postfilter_period_old325>>2] = $cond324; $323 = $c; $arrayidx326 = (($out_syn) + ($323<<2)|0); $324 = HEAP32[$arrayidx326>>2]|0; $325 = $c; $arrayidx327 = (($out_syn) + ($325<<2)|0); $326 = HEAP32[$arrayidx327>>2]|0; $327 = $st$addr; $postfilter_period_old328 = ((($327)) + 64|0); $328 = HEAP32[$postfilter_period_old328>>2]|0; $329 = $st$addr; $postfilter_period329 = ((($329)) + 60|0); $330 = HEAP32[$postfilter_period329>>2]|0; $331 = $mode; $shortMdctSize330 = ((($331)) + 44|0); $332 = HEAP32[$shortMdctSize330>>2]|0; $333 = $st$addr; $postfilter_gain_old = ((($333)) + 72|0); $334 = +HEAPF32[$postfilter_gain_old>>2]; $335 = $st$addr; $postfilter_gain331 = ((($335)) + 68|0); $336 = +HEAPF32[$postfilter_gain331>>2]; $337 = $st$addr; $postfilter_tapset_old = ((($337)) + 80|0); $338 = HEAP32[$postfilter_tapset_old>>2]|0; $339 = $st$addr; $postfilter_tapset332 = ((($339)) + 76|0); $340 = HEAP32[$postfilter_tapset332>>2]|0; $341 = $mode; $window = ((($341)) + 60|0); $342 = HEAP32[$window>>2]|0; $343 = $overlap; $344 = $st$addr; $arch333 = ((($344)) + 36|0); $345 = HEAP32[$arch333>>2]|0; _comb_filter($324,$326,$328,$330,$332,$334,$336,$338,$340,$342,$343,$345); $346 = $LM; $cmp334 = ($346|0)!=(0); if ($cmp334) { $347 = $c; $arrayidx337 = (($out_syn) + ($347<<2)|0); $348 = HEAP32[$arrayidx337>>2]|0; $349 = $mode; $shortMdctSize338 = ((($349)) + 44|0); $350 = HEAP32[$shortMdctSize338>>2]|0; $add$ptr339 = (($348) + ($350<<2)|0); $351 = $c; $arrayidx340 = (($out_syn) + ($351<<2)|0); $352 = HEAP32[$arrayidx340>>2]|0; $353 = $mode; $shortMdctSize341 = ((($353)) + 44|0); $354 = HEAP32[$shortMdctSize341>>2]|0; $add$ptr342 = (($352) + ($354<<2)|0); $355 = $st$addr; $postfilter_period343 = ((($355)) + 60|0); $356 = HEAP32[$postfilter_period343>>2]|0; $357 = $postfilter_pitch; $358 = $N; $359 = $mode; $shortMdctSize344 = ((($359)) + 44|0); $360 = HEAP32[$shortMdctSize344>>2]|0; $sub345 = (($358) - ($360))|0; $361 = $st$addr; $postfilter_gain346 = ((($361)) + 68|0); $362 = +HEAPF32[$postfilter_gain346>>2]; $363 = $postfilter_gain; $364 = $st$addr; $postfilter_tapset347 = ((($364)) + 76|0); $365 = HEAP32[$postfilter_tapset347>>2]|0; $366 = $postfilter_tapset; $367 = $mode; $window348 = ((($367)) + 60|0); $368 = HEAP32[$window348>>2]|0; $369 = $overlap; $370 = $st$addr; $arch349 = ((($370)) + 36|0); $371 = HEAP32[$arch349>>2]|0; _comb_filter($add$ptr339,$add$ptr342,$356,$357,$sub345,$362,$363,$365,$366,$368,$369,$371); } $372 = $c; $inc352 = (($372) + 1)|0; $c = $inc352; $373 = $CC; $cmp353 = ($inc352|0)<($373|0); if (!($cmp353)) { break; } } $374 = $st$addr; $postfilter_period356 = ((($374)) + 60|0); $375 = HEAP32[$postfilter_period356>>2]|0; $376 = $st$addr; $postfilter_period_old357 = ((($376)) + 64|0); HEAP32[$postfilter_period_old357>>2] = $375; $377 = $st$addr; $postfilter_gain358 = ((($377)) + 68|0); $378 = +HEAPF32[$postfilter_gain358>>2]; $379 = $st$addr; $postfilter_gain_old359 = ((($379)) + 72|0); HEAPF32[$postfilter_gain_old359>>2] = $378; $380 = $st$addr; $postfilter_tapset360 = ((($380)) + 76|0); $381 = HEAP32[$postfilter_tapset360>>2]|0; $382 = $st$addr; $postfilter_tapset_old361 = ((($382)) + 80|0); HEAP32[$postfilter_tapset_old361>>2] = $381; $383 = $postfilter_pitch; $384 = $st$addr; $postfilter_period362 = ((($384)) + 60|0); HEAP32[$postfilter_period362>>2] = $383; $385 = $postfilter_gain; $386 = $st$addr; $postfilter_gain363 = ((($386)) + 68|0); HEAPF32[$postfilter_gain363>>2] = $385; $387 = $postfilter_tapset; $388 = $st$addr; $postfilter_tapset364 = ((($388)) + 76|0); HEAP32[$postfilter_tapset364>>2] = $387; $389 = $LM; $cmp365 = ($389|0)!=(0); if ($cmp365) { $390 = $st$addr; $postfilter_period368 = ((($390)) + 60|0); $391 = HEAP32[$postfilter_period368>>2]|0; $392 = $st$addr; $postfilter_period_old369 = ((($392)) + 64|0); HEAP32[$postfilter_period_old369>>2] = $391; $393 = $st$addr; $postfilter_gain370 = ((($393)) + 68|0); $394 = +HEAPF32[$postfilter_gain370>>2]; $395 = $st$addr; $postfilter_gain_old371 = ((($395)) + 72|0); HEAPF32[$postfilter_gain_old371>>2] = $394; $396 = $st$addr; $postfilter_tapset372 = ((($396)) + 76|0); $397 = HEAP32[$postfilter_tapset372>>2]|0; $398 = $st$addr; $postfilter_tapset_old373 = ((($398)) + 80|0); HEAP32[$postfilter_tapset_old373>>2] = $397; } $399 = $C; $cmp375 = ($399|0)==(1); if ($cmp375) { $400 = $oldBandE; $401 = $nbEBands; $arrayidx378 = (($400) + ($401<<2)|0); $402 = $oldBandE; $403 = $nbEBands; $mul379 = $403<<2; $404 = $oldBandE; $405 = $nbEBands; $arrayidx380 = (($404) + ($405<<2)|0); $406 = $oldBandE; $sub$ptr$lhs$cast381 = $arrayidx380; $sub$ptr$rhs$cast382 = $406; $sub$ptr$sub383 = (($sub$ptr$lhs$cast381) - ($sub$ptr$rhs$cast382))|0; $sub$ptr$div384 = (($sub$ptr$sub383|0) / 4)&-1; $mul385 = 0; $add386 = (($mul379) + ($mul385))|0; _memcpy(($arrayidx378|0),($402|0),($add386|0))|0; } $407 = $isTransient; $tobool388 = ($407|0)!=(0); L129: do { if ($tobool388) { $i = 0; while(1) { $440 = $i; $441 = $nbEBands; $mul437 = $441<<1; $cmp438 = ($440|0)<($mul437|0); if (!($cmp438)) { break L129; } $442 = $oldLogE; $443 = $i; $arrayidx441 = (($442) + ($443<<2)|0); $444 = +HEAPF32[$arrayidx441>>2]; $445 = $oldBandE; $446 = $i; $arrayidx442 = (($445) + ($446<<2)|0); $447 = +HEAPF32[$arrayidx442>>2]; $cmp443 = $444 < $447; if ($cmp443) { $448 = $oldLogE; $449 = $i; $arrayidx446 = (($448) + ($449<<2)|0); $arrayidx448$sink = $arrayidx446; } else { $450 = $oldBandE; $451 = $i; $arrayidx448 = (($450) + ($451<<2)|0); $arrayidx448$sink = $arrayidx448; } $452 = +HEAPF32[$arrayidx448$sink>>2]; $453 = $oldLogE; $454 = $i; $arrayidx451 = (($453) + ($454<<2)|0); HEAPF32[$arrayidx451>>2] = $452; $455 = $i; $inc453 = (($455) + 1)|0; $i = $inc453; } } else { $408 = $oldLogE2; $409 = $oldLogE; $410 = $nbEBands; $mul390 = $410<<1; $mul391 = $mul390<<2; $411 = $oldLogE2; $412 = $oldLogE; $sub$ptr$lhs$cast392 = $411; $sub$ptr$rhs$cast393 = $412; $sub$ptr$sub394 = (($sub$ptr$lhs$cast392) - ($sub$ptr$rhs$cast393))|0; $sub$ptr$div395 = (($sub$ptr$sub394|0) / 4)&-1; $mul396 = 0; $add397 = (($mul391) + ($mul396))|0; _memcpy(($408|0),($409|0),($add397|0))|0; $413 = $oldLogE; $414 = $oldBandE; $415 = $nbEBands; $mul398 = $415<<1; $mul399 = $mul398<<2; $416 = $oldLogE; $417 = $oldBandE; $sub$ptr$lhs$cast400 = $416; $sub$ptr$rhs$cast401 = $417; $sub$ptr$sub402 = (($sub$ptr$lhs$cast400) - ($sub$ptr$rhs$cast401))|0; $sub$ptr$div403 = (($sub$ptr$sub402|0) / 4)&-1; $mul404 = 0; $add405 = (($mul399) + ($mul404))|0; _memcpy(($413|0),($414|0),($add405|0))|0; $418 = $st$addr; $loss_count406 = ((($418)) + 52|0); $419 = HEAP32[$loss_count406>>2]|0; $cmp407 = ($419|0)<(10); if ($cmp407) { $420 = $M; $conv410 = (+($420|0)); $mul411 = $conv410 * 0.0010000000474974513; $max_background_increase = $mul411; } else { $max_background_increase = 1.0; } $i = 0; while(1) { $421 = $i; $422 = $nbEBands; $mul415 = $422<<1; $cmp416 = ($421|0)<($mul415|0); if (!($cmp416)) { break L129; } $423 = $backgroundLogE; $424 = $i; $arrayidx419 = (($423) + ($424<<2)|0); $425 = +HEAPF32[$arrayidx419>>2]; $426 = $max_background_increase; $add420 = $425 + $426; $427 = $oldBandE; $428 = $i; $arrayidx421 = (($427) + ($428<<2)|0); $429 = +HEAPF32[$arrayidx421>>2]; $cmp422 = $add420 < $429; if ($cmp422) { $430 = $backgroundLogE; $431 = $i; $arrayidx425 = (($430) + ($431<<2)|0); $432 = +HEAPF32[$arrayidx425>>2]; $433 = $max_background_increase; $add426 = $432 + $433; $cond430 = $add426; } else { $434 = $oldBandE; $435 = $i; $arrayidx428 = (($434) + ($435<<2)|0); $436 = +HEAPF32[$arrayidx428>>2]; $cond430 = $436; } $437 = $backgroundLogE; $438 = $i; $arrayidx431 = (($437) + ($438<<2)|0); HEAPF32[$arrayidx431>>2] = $cond430; $439 = $i; $inc433 = (($439) + 1)|0; $i = $inc433; } } } while(0); $c = 0; while(1) { $i = 0; while(1) { $456 = $i; $457 = $start; $cmp458 = ($456|0)<($457|0); if (!($cmp458)) { break; } $458 = $oldBandE; $459 = $c; $460 = $nbEBands; $mul461 = Math_imul($459, $460)|0; $461 = $i; $add462 = (($mul461) + ($461))|0; $arrayidx463 = (($458) + ($add462<<2)|0); HEAPF32[$arrayidx463>>2] = 0.0; $462 = $oldLogE2; $463 = $c; $464 = $nbEBands; $mul464 = Math_imul($463, $464)|0; $465 = $i; $add465 = (($mul464) + ($465))|0; $arrayidx466 = (($462) + ($add465<<2)|0); HEAPF32[$arrayidx466>>2] = -28.0; $466 = $oldLogE; $467 = $c; $468 = $nbEBands; $mul467 = Math_imul($467, $468)|0; $469 = $i; $add468 = (($mul467) + ($469))|0; $arrayidx469 = (($466) + ($add468<<2)|0); HEAPF32[$arrayidx469>>2] = -28.0; $470 = $i; $inc471 = (($470) + 1)|0; $i = $inc471; } $471 = $end; $i = $471; while(1) { $472 = $i; $473 = $nbEBands; $cmp474 = ($472|0)<($473|0); if (!($cmp474)) { break; } $474 = $oldBandE; $475 = $c; $476 = $nbEBands; $mul477 = Math_imul($475, $476)|0; $477 = $i; $add478 = (($mul477) + ($477))|0; $arrayidx479 = (($474) + ($add478<<2)|0); HEAPF32[$arrayidx479>>2] = 0.0; $478 = $oldLogE2; $479 = $c; $480 = $nbEBands; $mul480 = Math_imul($479, $480)|0; $481 = $i; $add481 = (($mul480) + ($481))|0; $arrayidx482 = (($478) + ($add481<<2)|0); HEAPF32[$arrayidx482>>2] = -28.0; $482 = $oldLogE; $483 = $c; $484 = $nbEBands; $mul483 = Math_imul($483, $484)|0; $485 = $i; $add484 = (($mul483) + ($485))|0; $arrayidx485 = (($482) + ($add484<<2)|0); HEAPF32[$arrayidx485>>2] = -28.0; $486 = $i; $inc487 = (($486) + 1)|0; $i = $inc487; } $487 = $c; $inc490 = (($487) + 1)|0; $c = $inc490; $cmp491 = ($inc490|0)<(2); if (!($cmp491)) { break; } } $488 = $dec$addr; $rng494 = ((($488)) + 28|0); $489 = HEAP32[$rng494>>2]|0; $490 = $st$addr; $rng495 = ((($490)) + 40|0); HEAP32[$rng495>>2] = $489; $491 = $pcm$addr; $492 = $N; $493 = $CC; $494 = $st$addr; $downsample497 = ((($494)) + 16|0); $495 = HEAP32[$downsample497>>2]|0; $496 = $mode; $preemph498 = ((($496)) + 16|0); $497 = $st$addr; $preemph_memD500 = ((($497)) + 84|0); $498 = $accum$addr; _deemphasis($out_syn,$491,$492,$493,$495,$preemph498,$preemph_memD500,$498); $499 = $st$addr; $loss_count502 = ((($499)) + 52|0); HEAP32[$loss_count502>>2] = 0; $500 = $dec$addr; $call503 = (_ec_tell_64($500)|0); $501 = $len$addr; $mul504 = $501<<3; $cmp505 = ($call503|0)>($mul504|0); if ($cmp505) { $retval = -3; $cleanup$dest$slot = 1; } else { $502 = $dec$addr; $call509 = (_ec_get_error_68($502)|0); $tobool510 = ($call509|0)!=(0); if ($tobool510) { $503 = $st$addr; $error = ((($503)) + 44|0); HEAP32[$error>>2] = 1; } $504 = $frame_size$addr; $505 = $st$addr; $downsample513 = ((($505)) + 16|0); $506 = HEAP32[$downsample513>>2]|0; $div514 = (($504|0) / ($506|0))&-1; $retval = $div514; $cleanup$dest$slot = 1; } $507 = $saved_stack; _llvm_stackrestore(($507|0)); $508 = $retval; STACKTOP = sp;return ($508|0); } function _celt_decode_lost($st,$N,$LM) { $st = $st|0; $N = $N|0; $LM = $LM|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; var $170 = 0, $171 = 0, $172 = 0, $173 = 0.0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0.0, $184 = 0, $185 = 0, $186 = 0.0, $187 = 0, $188 = 0; var $189 = 0, $19 = 0, $190 = 0.0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0.0, $213 = 0.0, $214 = 0.0, $215 = 0.0, $216 = 0, $217 = 0, $218 = 0, $219 = 0.0, $22 = 0, $220 = 0.0, $221 = 0.0, $222 = 0.0, $223 = 0; var $224 = 0.0, $225 = 0.0, $226 = 0.0, $227 = 0.0, $228 = 0.0, $229 = 0.0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0.0, $241 = 0.0; var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0.0, $249 = 0.0, $25 = 0, $250 = 0.0, $251 = 0, $252 = 0, $253 = 0, $254 = 0.0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; var $260 = 0, $261 = 0, $262 = 0.0, $263 = 0.0, $264 = 0.0, $265 = 0.0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0.0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0.0, $289 = 0.0, $29 = 0, $290 = 0.0, $291 = 0.0, $292 = 0, $293 = 0.0, $294 = 0.0, $295 = 0, $296 = 0; var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0.0, $302 = 0.0, $303 = 0.0, $304 = 0.0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0.0, $31 = 0, $310 = 0.0, $311 = 0.0, $312 = 0, $313 = 0; var $314 = 0, $315 = 0.0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0.0, $324 = 0, $325 = 0, $326 = 0, $327 = 0.0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0.0, $34 = 0, $340 = 0, $341 = 0.0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; var $350 = 0, $351 = 0, $352 = 0.0, $353 = 0, $354 = 0, $355 = 0.0, $356 = 0, $357 = 0, $358 = 0, $359 = 0.0, $36 = 0, $360 = 0, $361 = 0.0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; var $369 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0; var $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0.0, $69 = 0, $7 = 0, $70 = 0, $71 = 0; var $72 = 0, $73 = 0.0, $74 = 0.0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0.0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0.0, $85 = 0.0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0; var $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $C = 0, $E1 = 0.0, $E2 = 0.0, $LM$addr = 0, $N$addr = 0, $S1 = 0.0, $S2 = 0.0, $_decode_mem = 0, $_decode_mem9 = 0, $_exc = 0; var $ac = 0, $add = 0, $add$ptr = 0, $add$ptr110 = 0, $add$ptr117 = 0, $add$ptr13 = 0, $add$ptr147 = 0, $add$ptr15 = 0, $add$ptr17 = 0, $add$ptr188 = 0, $add$ptr19 = 0, $add$ptr191 = 0, $add$ptr193 = 0, $add$ptr195 = 0, $add$ptr197 = 0, $add$ptr199 = 0, $add$ptr201 = 0, $add$ptr203 = 0, $add$ptr21 = 0, $add$ptr238 = 0; var $add$ptr241 = 0, $add$ptr289 = 0, $add$ptr291 = 0, $add$ptr293 = 0, $add$ptr294 = 0, $add$ptr296 = 0, $add$ptr370 = 0, $add$ptr6 = 0, $add$ptr7 = 0, $add$ptr99 = 0, $add11 = 0, $add113 = 0, $add119 = 0, $add157 = 0, $add209 = 0, $add216 = 0, $add219 = 0.0, $add222 = 0, $add225 = 0.0, $add247 = 0; var $add249 = 0, $add261 = 0, $add265 = 0, $add268 = 0, $add269 = 0, $add272 = 0.0, $add305 = 0, $add308 = 0.0, $add321 = 0, $add330 = 0.0, $add331 = 0.0, $add345 = 0, $add349 = 0, $add359 = 0, $add363 = 0, $add392 = 0.0, $add393 = 0, $add404 = 0, $add48 = 0, $add51 = 0; var $add56 = 0, $add60 = 0, $add66 = 0, $add81 = 0, $add82 = 0, $add94 = 0, $arch = 0, $arch126 = 0, $arch131 = 0, $arch168 = 0, $arch196 = 0, $arch298 = 0, $arch376 = 0, $arrayidx = 0, $arrayidx108 = 0, $arrayidx109 = 0, $arrayidx115 = 0, $arrayidx116 = 0, $arrayidx152 = 0, $arrayidx158 = 0; var $arrayidx160 = 0, $arrayidx176 = 0, $arrayidx182 = 0, $arrayidx217 = 0, $arrayidx223 = 0, $arrayidx262 = 0, $arrayidx266 = 0, $arrayidx270 = 0, $arrayidx284 = 0, $arrayidx285 = 0, $arrayidx306 = 0, $arrayidx322 = 0, $arrayidx340 = 0, $arrayidx346 = 0, $arrayidx350 = 0, $arrayidx360 = 0, $arrayidx364 = 0, $arrayidx382 = 0, $arrayidx385 = 0, $arrayidx389 = 0; var $arrayidx390 = 0, $arrayidx394 = 0, $arrayidx49 = 0, $arrayidx5 = 0, $arrayidx52 = 0, $arrayidx57 = 0, $arrayidx61 = 0, $arrayidx67 = 0, $arrayidx8 = 0, $arrayidx80 = 0, $arrayidx83 = 0, $arrayidx85 = 0, $arrayidx95 = 0, $attenuation = 0.0, $backgroundLogE = 0, $blen = 0, $boffs = 0, $buf = 0, $c = 0, $call = 0; var $call132 = 0, $call236 = 0.0, $call334 = 0.0, $channels = 0, $cmp = 0, $cmp122 = 0, $cmp127 = 0, $cmp136 = 0, $cmp154 = 0, $cmp164 = 0, $cmp173 = 0, $cmp212 = 0, $cmp229 = 0, $cmp24 = 0, $cmp25 = 0, $cmp252 = 0, $cmp255 = 0, $cmp278 = 0, $cmp28 = 0, $cmp30 = 0; var $cmp300 = 0, $cmp313 = 0, $cmp317 = 0, $cmp327 = 0, $cmp337 = 0, $cmp34 = 0, $cmp355 = 0, $cmp379 = 0, $cmp400 = 0, $cmp43 = 0, $cmp46 = 0, $cmp53 = 0, $cmp71 = 0, $cmp74 = 0, $cmp77 = 0, $cmp90 = 0, $cond = 0, $cond142 = 0, $cond234 = 0.0, $cond41 = 0; var $cond44 = 0.0, $cond64 = 0.0, $conv = 0, $conv178 = 0.0, $conv180 = 0.0, $conv235 = 0.0, $conv237 = 0.0, $conv333 = 0.0, $conv335 = 0.0, $conv84 = 0, $conv86 = 0, $conv93 = 0.0, $decay = 0.0, $decay150 = 0.0, $decay_length = 0, $decode_mem = 0, $div = 0.0, $div332 = 0.0, $div378 = 0, $downsample = 0; var $e = 0.0, $eBands = 0, $eBands4 = 0, $effEBands = 0, $effEBands29 = 0, $effEBands33 = 0, $effEBands37 = 0, $effEnd = 0, $end = 0, $end27 = 0, $exc = 0, $exc_length = 0, $extrapolation_len = 0, $extrapolation_offset = 0, $fade = 0.0, $i = 0, $idx$neg = 0, $idx$neg192 = 0, $idx$neg198 = 0, $idx$neg202 = 0; var $idx$neg290 = 0, $idx$neg295 = 0, $inc = 0, $inc101 = 0, $inc104 = 0, $inc121 = 0, $inc162 = 0, $inc185 = 0, $inc227 = 0, $inc274 = 0, $inc275 = 0, $inc287 = 0, $inc310 = 0, $inc324 = 0, $inc352 = 0, $inc366 = 0, $inc396 = 0, $inc399 = 0, $inc68 = 0, $inc70 = 0; var $inc97 = 0, $j = 0, $j151 = 0, $last_pitch_index = 0, $last_pitch_index134 = 0, $lor$ext = 0, $loss_count = 0, $loss_count22 = 0, $loss_count405 = 0, $lpc = 0, $lpc_mem = 0, $mode = 0, $mul = 0, $mul114 = 0, $mul118 = 0, $mul12 = 0, $mul135 = 0, $mul139 = 0, $mul14 = 0, $mul16 = 0; var $mul171 = 0.0, $mul177 = 0.0, $mul179 = 0.0, $mul18 = 0, $mul181 = 0.0, $mul187 = 0, $mul194 = 0, $mul20 = 0, $mul200 = 0, $mul208 = 0, $mul218 = 0.0, $mul220 = 0, $mul224 = 0.0, $mul240 = 0, $mul246 = 0, $mul250 = 0.0, $mul259 = 0.0, $mul263 = 0.0, $mul271 = 0.0, $mul292 = 0; var $mul307 = 0.0, $mul312 = 0.0, $mul342 = 0.0, $mul347 = 0.0, $mul361 = 0.0, $mul386 = 0.0, $mul391 = 0.0, $mul42 = 0, $mul47 = 0, $mul50 = 0, $mul55 = 0, $mul59 = 0, $mul65 = 0, $mul79 = 0, $nbEBands = 0, $nbEBands2 = 0, $noise_based = 0, $oldBandE = 0, $oldLogE = 0, $oldLogE2 = 0; var $or$cond = 0, $out_syn = 0, $overlap = 0, $overlap3 = 0, $pitch_index = 0, $postfilter_gain = 0, $postfilter_gain373 = 0, $postfilter_period = 0, $postfilter_period371 = 0, $postfilter_tapset = 0, $postfilter_tapset375 = 0, $ratio = 0.0, $rng = 0, $rng106 = 0, $saved_stack = 0, $saved_stack143 = 0, $seed = 0, $shl = 0, $shl88 = 0, $shr = 0; var $shr112 = 0, $shr210 = 0, $skip_plc = 0, $st$addr = 0, $start = 0, $start23 = 0, $sub = 0.0, $sub$ptr$div = 0, $sub$ptr$div207 = 0, $sub$ptr$div245 = 0, $sub$ptr$lhs$cast = 0, $sub$ptr$lhs$cast204 = 0, $sub$ptr$lhs$cast242 = 0, $sub$ptr$rhs$cast = 0, $sub$ptr$rhs$cast205 = 0, $sub$ptr$rhs$cast243 = 0, $sub$ptr$sub = 0, $sub$ptr$sub206 = 0, $sub$ptr$sub244 = 0, $sub111 = 0; var $sub159 = 0, $sub183 = 0.0, $sub215 = 0, $sub221 = 0, $sub239 = 0, $sub248 = 0, $sub258 = 0, $sub264 = 0, $sub267 = 0, $sub281 = 0, $sub282 = 0, $sub283 = 0, $sub304 = 0, $sub320 = 0, $sub341 = 0.0, $sub343 = 0.0, $sub344 = 0, $sub348 = 0, $sub358 = 0, $sub362 = 0; var $sub372 = 0.0, $sub374 = 0.0, $sub383 = 0, $sub384 = 0, $sub387 = 0, $sub388 = 0, $sub62 = 0.0, $sub87 = 0, $tmp = 0.0, $tmp303 = 0.0, $tmp_g = 0.0, $tobool = 0, $tobool26 = 0, $vla = 0, $vla$alloca_mul = 0, $vla144 = 0, $vla144$alloca_mul = 0, $vla145 = 0, $vla145$alloca_mul = 0, $window = 0; var $window148 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 4608|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(4608|0); $decode_mem = sp + 4568|0; $out_syn = sp + 4560|0; $_exc = sp + 264|0; $ac = sp + 132|0; $lpc_mem = sp + 16|0; $st$addr = $st; $N$addr = $N; $LM$addr = $LM; $0 = $st$addr; $channels = ((($0)) + 8|0); $1 = HEAP32[$channels>>2]|0; $C = $1; $2 = $st$addr; $3 = HEAP32[$2>>2]|0; $mode = $3; $4 = $mode; $nbEBands2 = ((($4)) + 8|0); $5 = HEAP32[$nbEBands2>>2]|0; $nbEBands = $5; $6 = $mode; $overlap3 = ((($6)) + 4|0); $7 = HEAP32[$overlap3>>2]|0; $overlap = $7; $8 = $mode; $eBands4 = ((($8)) + 32|0); $9 = HEAP32[$eBands4>>2]|0; $eBands = $9; $c = 0; while(1) { $10 = $st$addr; $_decode_mem = ((($10)) + 92|0); $11 = $c; $12 = $overlap; $add = (2048 + ($12))|0; $mul = Math_imul($11, $add)|0; $add$ptr = (($_decode_mem) + ($mul<<2)|0); $13 = $c; $arrayidx = (($decode_mem) + ($13<<2)|0); HEAP32[$arrayidx>>2] = $add$ptr; $14 = $c; $arrayidx5 = (($decode_mem) + ($14<<2)|0); $15 = HEAP32[$arrayidx5>>2]|0; $add$ptr6 = ((($15)) + 8192|0); $16 = $N$addr; $idx$neg = (0 - ($16))|0; $add$ptr7 = (($add$ptr6) + ($idx$neg<<2)|0); $17 = $c; $arrayidx8 = (($out_syn) + ($17<<2)|0); HEAP32[$arrayidx8>>2] = $add$ptr7; $18 = $c; $inc = (($18) + 1)|0; $c = $inc; $19 = $C; $cmp = ($inc|0)<($19|0); if (!($cmp)) { break; } } $20 = $st$addr; $_decode_mem9 = ((($20)) + 92|0); $21 = $overlap; $add11 = (2048 + ($21))|0; $22 = $C; $mul12 = Math_imul($add11, $22)|0; $add$ptr13 = (($_decode_mem9) + ($mul12<<2)|0); $lpc = $add$ptr13; $23 = $lpc; $24 = $C; $mul14 = ($24*24)|0; $add$ptr15 = (($23) + ($mul14<<2)|0); $oldBandE = $add$ptr15; $25 = $oldBandE; $26 = $nbEBands; $mul16 = $26<<1; $add$ptr17 = (($25) + ($mul16<<2)|0); $oldLogE = $add$ptr17; $27 = $oldLogE; $28 = $nbEBands; $mul18 = $28<<1; $add$ptr19 = (($27) + ($mul18<<2)|0); $oldLogE2 = $add$ptr19; $29 = $oldLogE2; $30 = $nbEBands; $mul20 = $30<<1; $add$ptr21 = (($29) + ($mul20<<2)|0); $backgroundLogE = $add$ptr21; $31 = $st$addr; $loss_count22 = ((($31)) + 52|0); $32 = HEAP32[$loss_count22>>2]|0; $loss_count = $32; $33 = $st$addr; $start23 = ((($33)) + 20|0); $34 = HEAP32[$start23>>2]|0; $start = $34; $35 = $loss_count; $cmp24 = ($35|0)>=(5); $36 = $start; $cmp25 = ($36|0)!=(0); $or$cond = $cmp24 | $cmp25; if ($or$cond) { $39 = 1; } else { $37 = $st$addr; $skip_plc = ((($37)) + 56|0); $38 = HEAP32[$skip_plc>>2]|0; $tobool = ($38|0)!=(0); $39 = $tobool; } $lor$ext = $39&1; $noise_based = $lor$ext; $40 = $noise_based; $tobool26 = ($40|0)!=(0); if ($tobool26) { $41 = $st$addr; $end27 = ((($41)) + 24|0); $42 = HEAP32[$end27>>2]|0; $end = $42; $43 = $start; $44 = $end; $45 = $mode; $effEBands = ((($45)) + 12|0); $46 = HEAP32[$effEBands>>2]|0; $cmp28 = ($44|0)<($46|0); if ($cmp28) { $47 = $end; $cond = $47; } else { $48 = $mode; $effEBands29 = ((($48)) + 12|0); $49 = HEAP32[$effEBands29>>2]|0; $cond = $49; } $cmp30 = ($43|0)>($cond|0); do { if ($cmp30) { $50 = $start; $cond41 = $50; } else { $51 = $end; $52 = $mode; $effEBands33 = ((($52)) + 12|0); $53 = HEAP32[$effEBands33>>2]|0; $cmp34 = ($51|0)<($53|0); if ($cmp34) { $54 = $end; $cond41 = $54; break; } else { $55 = $mode; $effEBands37 = ((($55)) + 12|0); $56 = HEAP32[$effEBands37>>2]|0; $cond41 = $56; break; } } } while(0); $effEnd = $cond41; $57 = $C; $58 = $N$addr; $mul42 = Math_imul($57, $58)|0; $59 = (_llvm_stacksave()|0); $saved_stack = $59; $vla$alloca_mul = $mul42<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $60 = $loss_count; $cmp43 = ($60|0)==(0); $cond44 = $cmp43 ? 1.5 : 0.5; $decay = $cond44; $c = 0; while(1) { $61 = $start; $i = $61; while(1) { $62 = $i; $63 = $end; $cmp46 = ($62|0)<($63|0); if (!($cmp46)) { break; } $64 = $backgroundLogE; $65 = $c; $66 = $nbEBands; $mul47 = Math_imul($65, $66)|0; $67 = $i; $add48 = (($mul47) + ($67))|0; $arrayidx49 = (($64) + ($add48<<2)|0); $68 = +HEAPF32[$arrayidx49>>2]; $69 = $oldBandE; $70 = $c; $71 = $nbEBands; $mul50 = Math_imul($70, $71)|0; $72 = $i; $add51 = (($mul50) + ($72))|0; $arrayidx52 = (($69) + ($add51<<2)|0); $73 = +HEAPF32[$arrayidx52>>2]; $74 = $decay; $sub = $73 - $74; $cmp53 = $68 > $sub; if ($cmp53) { $75 = $backgroundLogE; $76 = $c; $77 = $nbEBands; $mul55 = Math_imul($76, $77)|0; $78 = $i; $add56 = (($mul55) + ($78))|0; $arrayidx57 = (($75) + ($add56<<2)|0); $79 = +HEAPF32[$arrayidx57>>2]; $cond64 = $79; } else { $80 = $oldBandE; $81 = $c; $82 = $nbEBands; $mul59 = Math_imul($81, $82)|0; $83 = $i; $add60 = (($mul59) + ($83))|0; $arrayidx61 = (($80) + ($add60<<2)|0); $84 = +HEAPF32[$arrayidx61>>2]; $85 = $decay; $sub62 = $84 - $85; $cond64 = $sub62; } $86 = $oldBandE; $87 = $c; $88 = $nbEBands; $mul65 = Math_imul($87, $88)|0; $89 = $i; $add66 = (($mul65) + ($89))|0; $arrayidx67 = (($86) + ($add66<<2)|0); HEAPF32[$arrayidx67>>2] = $cond64; $90 = $i; $inc68 = (($90) + 1)|0; $i = $inc68; } $91 = $c; $inc70 = (($91) + 1)|0; $c = $inc70; $92 = $C; $cmp71 = ($inc70|0)<($92|0); if (!($cmp71)) { break; } } $93 = $st$addr; $rng = ((($93)) + 40|0); $94 = HEAP32[$rng>>2]|0; $seed = $94; $c = 0; while(1) { $95 = $c; $96 = $C; $cmp74 = ($95|0)<($96|0); if (!($cmp74)) { break; } $97 = $start; $i = $97; while(1) { $98 = $i; $99 = $effEnd; $cmp77 = ($98|0)<($99|0); if (!($cmp77)) { break; } $100 = $N$addr; $101 = $c; $mul79 = Math_imul($100, $101)|0; $102 = $eBands; $103 = $i; $arrayidx80 = (($102) + ($103<<1)|0); $104 = HEAP16[$arrayidx80>>1]|0; $conv = $104 << 16 >> 16; $105 = $LM$addr; $shl = $conv << $105; $add81 = (($mul79) + ($shl))|0; $boffs = $add81; $106 = $eBands; $107 = $i; $add82 = (($107) + 1)|0; $arrayidx83 = (($106) + ($add82<<1)|0); $108 = HEAP16[$arrayidx83>>1]|0; $conv84 = $108 << 16 >> 16; $109 = $eBands; $110 = $i; $arrayidx85 = (($109) + ($110<<1)|0); $111 = HEAP16[$arrayidx85>>1]|0; $conv86 = $111 << 16 >> 16; $sub87 = (($conv84) - ($conv86))|0; $112 = $LM$addr; $shl88 = $sub87 << $112; $blen = $shl88; $j = 0; while(1) { $113 = $j; $114 = $blen; $cmp90 = ($113|0)<($114|0); if (!($cmp90)) { break; } $115 = $seed; $call = (_celt_lcg_rand($115)|0); $seed = $call; $116 = $seed; $shr = $116 >> 20; $conv93 = (+($shr|0)); $117 = $boffs; $118 = $j; $add94 = (($117) + ($118))|0; $arrayidx95 = (($vla) + ($add94<<2)|0); HEAPF32[$arrayidx95>>2] = $conv93; $119 = $j; $inc97 = (($119) + 1)|0; $j = $inc97; } $120 = $boffs; $add$ptr99 = (($vla) + ($120<<2)|0); $121 = $blen; $122 = $st$addr; $arch = ((($122)) + 36|0); $123 = HEAP32[$arch>>2]|0; _renormalise_vector($add$ptr99,$121,1.0,$123); $124 = $i; $inc101 = (($124) + 1)|0; $i = $inc101; } $125 = $c; $inc104 = (($125) + 1)|0; $c = $inc104; } $126 = $seed; $127 = $st$addr; $rng106 = ((($127)) + 40|0); HEAP32[$rng106>>2] = $126; $c = 0; while(1) { $128 = $c; $arrayidx108 = (($decode_mem) + ($128<<2)|0); $129 = HEAP32[$arrayidx108>>2]|0; $130 = $c; $arrayidx109 = (($decode_mem) + ($130<<2)|0); $131 = HEAP32[$arrayidx109>>2]|0; $132 = $N$addr; $add$ptr110 = (($131) + ($132<<2)|0); $133 = $N$addr; $sub111 = (2048 - ($133))|0; $134 = $overlap; $shr112 = $134 >> 1; $add113 = (($sub111) + ($shr112))|0; $mul114 = $add113<<2; $135 = $c; $arrayidx115 = (($decode_mem) + ($135<<2)|0); $136 = HEAP32[$arrayidx115>>2]|0; $137 = $c; $arrayidx116 = (($decode_mem) + ($137<<2)|0); $138 = HEAP32[$arrayidx116>>2]|0; $139 = $N$addr; $add$ptr117 = (($138) + ($139<<2)|0); $sub$ptr$lhs$cast = $136; $sub$ptr$rhs$cast = $add$ptr117; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $sub$ptr$div = (($sub$ptr$sub|0) / 4)&-1; $mul118 = 0; $add119 = (($mul114) + ($mul118))|0; _memmove(($129|0),($add$ptr110|0),($add119|0))|0; $140 = $c; $inc121 = (($140) + 1)|0; $c = $inc121; $141 = $C; $cmp122 = ($inc121|0)<($141|0); if (!($cmp122)) { break; } } $142 = $mode; $143 = $oldBandE; $144 = $start; $145 = $effEnd; $146 = $C; $147 = $C; $148 = $LM$addr; $149 = $st$addr; $downsample = ((($149)) + 16|0); $150 = HEAP32[$downsample>>2]|0; $151 = $st$addr; $arch126 = ((($151)) + 36|0); $152 = HEAP32[$arch126>>2]|0; _celt_synthesis($142,$vla,$out_syn,$143,$144,$145,$146,$147,0,$148,$150,0,$152); $153 = $saved_stack; _llvm_stackrestore(($153|0)); $368 = $loss_count; $add404 = (($368) + 1)|0; $369 = $st$addr; $loss_count405 = ((($369)) + 52|0); HEAP32[$loss_count405>>2] = $add404; STACKTOP = sp;return; } $fade = 1.0; $154 = $loss_count; $cmp127 = ($154|0)==(0); if ($cmp127) { $155 = $C; $156 = $st$addr; $arch131 = ((($156)) + 36|0); $157 = HEAP32[$arch131>>2]|0; $call132 = (_celt_plc_pitch_search($decode_mem,$155,$157)|0); $pitch_index = $call132; $158 = $st$addr; $last_pitch_index = ((($158)) + 48|0); HEAP32[$last_pitch_index>>2] = $call132; } else { $159 = $st$addr; $last_pitch_index134 = ((($159)) + 48|0); $160 = HEAP32[$last_pitch_index134>>2]|0; $pitch_index = $160; $fade = 0.80000001192092896; } $161 = $pitch_index; $mul135 = $161<<1; $cmp136 = ($mul135|0)<(1024); $162 = $pitch_index; $mul139 = $162<<1; $cond142 = $cmp136 ? $mul139 : 1024; $exc_length = $cond142; $163 = $overlap; $164 = (_llvm_stacksave()|0); $saved_stack143 = $164; $vla144$alloca_mul = $163<<2; $vla144 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla144$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla144$alloca_mul)|0)+15)&-16)|0);; $165 = $exc_length; $vla145$alloca_mul = $165<<2; $vla145 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla145$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla145$alloca_mul)|0)+15)&-16)|0);; $add$ptr147 = ((($_exc)) + 96|0); $exc = $add$ptr147; $166 = $mode; $window148 = ((($166)) + 60|0); $167 = HEAP32[$window148>>2]|0; $window = $167; $c = 0; while(1) { $S1 = 0.0; $168 = $c; $arrayidx152 = (($decode_mem) + ($168<<2)|0); $169 = HEAP32[$arrayidx152>>2]|0; $buf = $169; $i = 0; while(1) { $170 = $i; $cmp154 = ($170|0)<(1048); if (!($cmp154)) { break; } $171 = $buf; $172 = $i; $add157 = (1000 + ($172))|0; $arrayidx158 = (($171) + ($add157<<2)|0); $173 = +HEAPF32[$arrayidx158>>2]; $174 = $exc; $175 = $i; $sub159 = (($175) - 24)|0; $arrayidx160 = (($174) + ($sub159<<2)|0); HEAPF32[$arrayidx160>>2] = $173; $176 = $i; $inc162 = (($176) + 1)|0; $i = $inc162; } $177 = $loss_count; $cmp164 = ($177|0)==(0); if ($cmp164) { $178 = $exc; $179 = $window; $180 = $overlap; $181 = $st$addr; $arch168 = ((($181)) + 36|0); $182 = HEAP32[$arch168>>2]|0; (__celt_autocorr($178,$ac,$179,$180,24,1024,$182)|0); $183 = +HEAPF32[$ac>>2]; $mul171 = $183 * 1.0001000165939331; HEAPF32[$ac>>2] = $mul171; $i = 1; while(1) { $184 = $i; $cmp173 = ($184|0)<=(24); if (!($cmp173)) { break; } $185 = $i; $arrayidx176 = (($ac) + ($185<<2)|0); $186 = +HEAPF32[$arrayidx176>>2]; $mul177 = $186 * 6.4000007114373147E-5; $187 = $i; $conv178 = (+($187|0)); $mul179 = $mul177 * $conv178; $188 = $i; $conv180 = (+($188|0)); $mul181 = $mul179 * $conv180; $189 = $i; $arrayidx182 = (($ac) + ($189<<2)|0); $190 = +HEAPF32[$arrayidx182>>2]; $sub183 = $190 - $mul181; HEAPF32[$arrayidx182>>2] = $sub183; $191 = $i; $inc185 = (($191) + 1)|0; $i = $inc185; } $192 = $lpc; $193 = $c; $mul187 = ($193*24)|0; $add$ptr188 = (($192) + ($mul187<<2)|0); __celt_lpc($add$ptr188,$ac,24); } $194 = $exc; $add$ptr191 = ((($194)) + 4096|0); $195 = $exc_length; $idx$neg192 = (0 - ($195))|0; $add$ptr193 = (($add$ptr191) + ($idx$neg192<<2)|0); $196 = $lpc; $197 = $c; $mul194 = ($197*24)|0; $add$ptr195 = (($196) + ($mul194<<2)|0); $198 = $exc_length; $199 = $st$addr; $arch196 = ((($199)) + 36|0); $200 = HEAP32[$arch196>>2]|0; _celt_fir_c($add$ptr193,$add$ptr195,$vla145,$198,24,$200); $201 = $exc; $add$ptr197 = ((($201)) + 4096|0); $202 = $exc_length; $idx$neg198 = (0 - ($202))|0; $add$ptr199 = (($add$ptr197) + ($idx$neg198<<2)|0); $203 = $exc_length; $mul200 = $203<<2; $204 = $exc; $add$ptr201 = ((($204)) + 4096|0); $205 = $exc_length; $idx$neg202 = (0 - ($205))|0; $add$ptr203 = (($add$ptr201) + ($idx$neg202<<2)|0); $sub$ptr$lhs$cast204 = $add$ptr203; $sub$ptr$rhs$cast205 = $vla145; $sub$ptr$sub206 = (($sub$ptr$lhs$cast204) - ($sub$ptr$rhs$cast205))|0; $sub$ptr$div207 = (($sub$ptr$sub206|0) / 4)&-1; $mul208 = 0; $add209 = (($mul200) + ($mul208))|0; _memcpy(($add$ptr199|0),($vla145|0),($add209|0))|0; $E1 = 1.0; $E2 = 1.0; $206 = $exc_length; $shr210 = $206 >> 1; $decay_length = $shr210; $i = 0; while(1) { $207 = $i; $208 = $decay_length; $cmp212 = ($207|0)<($208|0); if (!($cmp212)) { break; } $209 = $exc; $210 = $decay_length; $sub215 = (1024 - ($210))|0; $211 = $i; $add216 = (($sub215) + ($211))|0; $arrayidx217 = (($209) + ($add216<<2)|0); $212 = +HEAPF32[$arrayidx217>>2]; $e = $212; $213 = $e; $214 = $e; $mul218 = $213 * $214; $215 = $E1; $add219 = $215 + $mul218; $E1 = $add219; $216 = $exc; $217 = $decay_length; $mul220 = $217<<1; $sub221 = (1024 - ($mul220))|0; $218 = $i; $add222 = (($sub221) + ($218))|0; $arrayidx223 = (($216) + ($add222<<2)|0); $219 = +HEAPF32[$arrayidx223>>2]; $e = $219; $220 = $e; $221 = $e; $mul224 = $220 * $221; $222 = $E2; $add225 = $222 + $mul224; $E2 = $add225; $223 = $i; $inc227 = (($223) + 1)|0; $i = $inc227; } $224 = $E1; $225 = $E2; $cmp229 = $224 < $225; $226 = $E1; $227 = $E2; $cond234 = $cmp229 ? $226 : $227; $E1 = $cond234; $228 = $E1; $229 = $E2; $div = $228 / $229; $conv235 = $div; $call236 = (+Math_sqrt((+$conv235))); $conv237 = $call236; $decay150 = $conv237; $230 = $buf; $231 = $buf; $232 = $N$addr; $add$ptr238 = (($231) + ($232<<2)|0); $233 = $N$addr; $sub239 = (2048 - ($233))|0; $mul240 = $sub239<<2; $234 = $buf; $235 = $buf; $236 = $N$addr; $add$ptr241 = (($235) + ($236<<2)|0); $sub$ptr$lhs$cast242 = $234; $sub$ptr$rhs$cast243 = $add$ptr241; $sub$ptr$sub244 = (($sub$ptr$lhs$cast242) - ($sub$ptr$rhs$cast243))|0; $sub$ptr$div245 = (($sub$ptr$sub244|0) / 4)&-1; $mul246 = 0; $add247 = (($mul240) + ($mul246))|0; _memmove(($230|0),($add$ptr238|0),($add247|0))|0; $237 = $pitch_index; $sub248 = (1024 - ($237))|0; $extrapolation_offset = $sub248; $238 = $N$addr; $239 = $overlap; $add249 = (($238) + ($239))|0; $extrapolation_len = $add249; $240 = $fade; $241 = $decay150; $mul250 = $240 * $241; $attenuation = $mul250; $j151 = 0; $i = 0; while(1) { $242 = $i; $243 = $extrapolation_len; $cmp252 = ($242|0)<($243|0); if (!($cmp252)) { break; } $244 = $j151; $245 = $pitch_index; $cmp255 = ($244|0)>=($245|0); if ($cmp255) { $246 = $pitch_index; $247 = $j151; $sub258 = (($247) - ($246))|0; $j151 = $sub258; $248 = $attenuation; $249 = $decay150; $mul259 = $248 * $249; $attenuation = $mul259; } $250 = $attenuation; $251 = $exc; $252 = $extrapolation_offset; $253 = $j151; $add261 = (($252) + ($253))|0; $arrayidx262 = (($251) + ($add261<<2)|0); $254 = +HEAPF32[$arrayidx262>>2]; $mul263 = $250 * $254; $255 = $buf; $256 = $N$addr; $sub264 = (2048 - ($256))|0; $257 = $i; $add265 = (($sub264) + ($257))|0; $arrayidx266 = (($255) + ($add265<<2)|0); HEAPF32[$arrayidx266>>2] = $mul263; $258 = $buf; $259 = $N$addr; $sub267 = (1024 - ($259))|0; $260 = $extrapolation_offset; $add268 = (($sub267) + ($260))|0; $261 = $j151; $add269 = (($add268) + ($261))|0; $arrayidx270 = (($258) + ($add269<<2)|0); $262 = +HEAPF32[$arrayidx270>>2]; $tmp = $262; $263 = $tmp; $264 = $tmp; $mul271 = $263 * $264; $265 = $S1; $add272 = $265 + $mul271; $S1 = $add272; $266 = $i; $inc274 = (($266) + 1)|0; $i = $inc274; $267 = $j151; $inc275 = (($267) + 1)|0; $j151 = $inc275; } $i = 0; while(1) { $268 = $i; $cmp278 = ($268|0)<(24); $269 = $buf; if (!($cmp278)) { break; } $270 = $N$addr; $sub281 = (2048 - ($270))|0; $sub282 = (($sub281) - 1)|0; $271 = $i; $sub283 = (($sub282) - ($271))|0; $arrayidx284 = (($269) + ($sub283<<2)|0); $272 = +HEAPF32[$arrayidx284>>2]; $273 = $i; $arrayidx285 = (($lpc_mem) + ($273<<2)|0); HEAPF32[$arrayidx285>>2] = $272; $274 = $i; $inc287 = (($274) + 1)|0; $i = $inc287; } $add$ptr289 = ((($269)) + 8192|0); $275 = $N$addr; $idx$neg290 = (0 - ($275))|0; $add$ptr291 = (($add$ptr289) + ($idx$neg290<<2)|0); $276 = $lpc; $277 = $c; $mul292 = ($277*24)|0; $add$ptr293 = (($276) + ($mul292<<2)|0); $278 = $buf; $add$ptr294 = ((($278)) + 8192|0); $279 = $N$addr; $idx$neg295 = (0 - ($279))|0; $add$ptr296 = (($add$ptr294) + ($idx$neg295<<2)|0); $280 = $extrapolation_len; $281 = $st$addr; $arch298 = ((($281)) + 36|0); $282 = HEAP32[$arch298>>2]|0; _celt_iir($add$ptr291,$add$ptr293,$add$ptr296,$280,24,$lpc_mem,$282); $S2 = 0.0; $i = 0; while(1) { $283 = $i; $284 = $extrapolation_len; $cmp300 = ($283|0)<($284|0); if (!($cmp300)) { break; } $285 = $buf; $286 = $N$addr; $sub304 = (2048 - ($286))|0; $287 = $i; $add305 = (($sub304) + ($287))|0; $arrayidx306 = (($285) + ($add305<<2)|0); $288 = +HEAPF32[$arrayidx306>>2]; $tmp303 = $288; $289 = $tmp303; $290 = $tmp303; $mul307 = $289 * $290; $291 = $S2; $add308 = $291 + $mul307; $S2 = $add308; $292 = $i; $inc310 = (($292) + 1)|0; $i = $inc310; } $293 = $S1; $294 = $S2; $mul312 = 0.20000000298023224 * $294; $cmp313 = $293 > $mul312; L84: do { if ($cmp313) { $301 = $S1; $302 = $S2; $cmp327 = $301 < $302; if ($cmp327) { $303 = $S1; $add330 = $303 + 1.0; $304 = $S2; $add331 = $304 + 1.0; $div332 = $add330 / $add331; $conv333 = $div332; $call334 = (+Math_sqrt((+$conv333))); $conv335 = $call334; $ratio = $conv335; $i = 0; while(1) { $305 = $i; $306 = $overlap; $cmp337 = ($305|0)<($306|0); if (!($cmp337)) { break; } $307 = $window; $308 = $i; $arrayidx340 = (($307) + ($308<<2)|0); $309 = +HEAPF32[$arrayidx340>>2]; $310 = $ratio; $sub341 = 1.0 - $310; $mul342 = $309 * $sub341; $sub343 = 1.0 - $mul342; $tmp_g = $sub343; $311 = $tmp_g; $312 = $buf; $313 = $N$addr; $sub344 = (2048 - ($313))|0; $314 = $i; $add345 = (($sub344) + ($314))|0; $arrayidx346 = (($312) + ($add345<<2)|0); $315 = +HEAPF32[$arrayidx346>>2]; $mul347 = $311 * $315; $316 = $buf; $317 = $N$addr; $sub348 = (2048 - ($317))|0; $318 = $i; $add349 = (($sub348) + ($318))|0; $arrayidx350 = (($316) + ($add349<<2)|0); HEAPF32[$arrayidx350>>2] = $mul347; $319 = $i; $inc352 = (($319) + 1)|0; $i = $inc352; } $320 = $overlap; $i = $320; while(1) { $321 = $i; $322 = $extrapolation_len; $cmp355 = ($321|0)<($322|0); if (!($cmp355)) { break L84; } $323 = $ratio; $324 = $buf; $325 = $N$addr; $sub358 = (2048 - ($325))|0; $326 = $i; $add359 = (($sub358) + ($326))|0; $arrayidx360 = (($324) + ($add359<<2)|0); $327 = +HEAPF32[$arrayidx360>>2]; $mul361 = $323 * $327; $328 = $buf; $329 = $N$addr; $sub362 = (2048 - ($329))|0; $330 = $i; $add363 = (($sub362) + ($330))|0; $arrayidx364 = (($328) + ($add363<<2)|0); HEAPF32[$arrayidx364>>2] = $mul361; $331 = $i; $inc366 = (($331) + 1)|0; $i = $inc366; } } } else { $i = 0; while(1) { $295 = $i; $296 = $extrapolation_len; $cmp317 = ($295|0)<($296|0); if (!($cmp317)) { break L84; } $297 = $buf; $298 = $N$addr; $sub320 = (2048 - ($298))|0; $299 = $i; $add321 = (($sub320) + ($299))|0; $arrayidx322 = (($297) + ($add321<<2)|0); HEAPF32[$arrayidx322>>2] = 0.0; $300 = $i; $inc324 = (($300) + 1)|0; $i = $inc324; } } } while(0); $332 = $buf; $add$ptr370 = ((($332)) + 8192|0); $333 = $st$addr; $postfilter_period = ((($333)) + 60|0); $334 = HEAP32[$postfilter_period>>2]|0; $335 = $st$addr; $postfilter_period371 = ((($335)) + 60|0); $336 = HEAP32[$postfilter_period371>>2]|0; $337 = $overlap; $338 = $st$addr; $postfilter_gain = ((($338)) + 68|0); $339 = +HEAPF32[$postfilter_gain>>2]; $sub372 = - $339; $340 = $st$addr; $postfilter_gain373 = ((($340)) + 68|0); $341 = +HEAPF32[$postfilter_gain373>>2]; $sub374 = - $341; $342 = $st$addr; $postfilter_tapset = ((($342)) + 76|0); $343 = HEAP32[$postfilter_tapset>>2]|0; $344 = $st$addr; $postfilter_tapset375 = ((($344)) + 76|0); $345 = HEAP32[$postfilter_tapset375>>2]|0; $346 = $st$addr; $arch376 = ((($346)) + 36|0); $347 = HEAP32[$arch376>>2]|0; _comb_filter($vla144,$add$ptr370,$334,$336,$337,$sub372,$sub374,$343,$345,0,0,$347); $i = 0; while(1) { $348 = $i; $349 = $overlap; $div378 = (($349|0) / 2)&-1; $cmp379 = ($348|0)<($div378|0); if (!($cmp379)) { break; } $350 = $window; $351 = $i; $arrayidx382 = (($350) + ($351<<2)|0); $352 = +HEAPF32[$arrayidx382>>2]; $353 = $overlap; $sub383 = (($353) - 1)|0; $354 = $i; $sub384 = (($sub383) - ($354))|0; $arrayidx385 = (($vla144) + ($sub384<<2)|0); $355 = +HEAPF32[$arrayidx385>>2]; $mul386 = $352 * $355; $356 = $window; $357 = $overlap; $358 = $i; $sub387 = (($357) - ($358))|0; $sub388 = (($sub387) - 1)|0; $arrayidx389 = (($356) + ($sub388<<2)|0); $359 = +HEAPF32[$arrayidx389>>2]; $360 = $i; $arrayidx390 = (($vla144) + ($360<<2)|0); $361 = +HEAPF32[$arrayidx390>>2]; $mul391 = $359 * $361; $add392 = $mul386 + $mul391; $362 = $buf; $363 = $i; $add393 = (2048 + ($363))|0; $arrayidx394 = (($362) + ($add393<<2)|0); HEAPF32[$arrayidx394>>2] = $add392; $364 = $i; $inc396 = (($364) + 1)|0; $i = $inc396; } $365 = $c; $inc399 = (($365) + 1)|0; $c = $inc399; $366 = $C; $cmp400 = ($inc399|0)<($366|0); if (!($cmp400)) { break; } } $367 = $saved_stack143; _llvm_stackrestore(($367|0)); $368 = $loss_count; $add404 = (($368) + 1)|0; $369 = $st$addr; $loss_count405 = ((($369)) + 52|0); HEAP32[$loss_count405>>2] = $add404; STACKTOP = sp;return; } function _deemphasis($in,$pcm,$N,$C,$downsample,$coef,$mem,$accum) { $in = $in|0; $pcm = $pcm|0; $N = $N|0; $C = $C|0; $downsample = $downsample|0; $coef = $coef|0; $mem = $mem|0; $accum = $accum|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0.0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0.0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0.0, $29 = 0.0, $3 = 0, $30 = 0.0, $31 = 0.0, $32 = 0.0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0.0, $4 = 0, $40 = 0.0, $41 = 0.0, $42 = 0.0, $43 = 0.0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0.0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0.0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; var $63 = 0, $7 = 0.0, $8 = 0, $9 = 0, $C$addr = 0, $N$addr = 0, $Nd = 0, $accum$addr = 0, $add = 0.0, $add$ptr = 0, $add10 = 0.0, $add17 = 0.0, $add18 = 0.0, $apply_downsampling = 0, $arrayidx11 = 0, $arrayidx16 = 0, $arrayidx22 = 0, $arrayidx27 = 0, $arrayidx34 = 0, $arrayidx37 = 0; var $arrayidx4 = 0, $arrayidx5 = 0, $arrayidx9 = 0, $c = 0, $cmp = 0, $cmp1 = 0, $cmp13 = 0, $cmp31 = 0, $cmp43 = 0, $cmp6 = 0, $cmp8 = 0, $coef$addr = 0, $coef0 = 0.0, $div = 0, $downsample$addr = 0, $in$addr = 0, $inc = 0, $inc24 = 0, $inc39 = 0, $inc42 = 0; var $j = 0, $m = 0.0, $mem$addr = 0, $mul = 0.0, $mul19 = 0.0, $mul20 = 0.0, $mul21 = 0, $mul33 = 0, $mul35 = 0.0, $mul36 = 0, $or$cond = 0, $or$cond$not = 0, $or$cond1 = 0, $pcm$addr = 0, $saved_stack = 0, $tmp = 0.0, $tmp15 = 0.0, $tobool = 0, $tobool28 = 0, $vla = 0; var $vla$alloca_mul = 0, $x = 0, $y = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(80|0); $in$addr = $in; $pcm$addr = $pcm; $N$addr = $N; $C$addr = $C; $downsample$addr = $downsample; $coef$addr = $coef; $mem$addr = $mem; $accum$addr = $accum; $apply_downsampling = 0; $0 = $downsample$addr; $cmp = ($0|0)==(1); $1 = $C$addr; $cmp1 = ($1|0)==(2); $or$cond = $cmp & $cmp1; $or$cond$not = $or$cond ^ 1; $2 = $accum$addr; $tobool = ($2|0)!=(0); $or$cond1 = $or$cond$not | $tobool; if (!($or$cond1)) { $3 = $in$addr; $4 = $pcm$addr; $5 = $N$addr; $6 = $coef$addr; $7 = +HEAPF32[$6>>2]; $8 = $mem$addr; _deemphasis_stereo_simple($3,$4,$5,$7,$8); STACKTOP = sp;return; } $9 = $N$addr; $10 = (_llvm_stacksave()|0); $saved_stack = $10; $vla$alloca_mul = $9<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $11 = $coef$addr; $12 = +HEAPF32[$11>>2]; $coef0 = $12; $13 = $N$addr; $14 = $downsample$addr; $div = (($13|0) / ($14|0))&-1; $Nd = $div; $c = 0; while(1) { $15 = $mem$addr; $16 = $c; $arrayidx4 = (($15) + ($16<<2)|0); $17 = +HEAPF32[$arrayidx4>>2]; $m = $17; $18 = $in$addr; $19 = $c; $arrayidx5 = (($18) + ($19<<2)|0); $20 = HEAP32[$arrayidx5>>2]|0; $x = $20; $21 = $pcm$addr; $22 = $c; $add$ptr = (($21) + ($22<<2)|0); $y = $add$ptr; $23 = $downsample$addr; $cmp6 = ($23|0)>(1); $j = 0; L7: do { if ($cmp6) { while(1) { $24 = $j; $25 = $N$addr; $cmp8 = ($24|0)<($25|0); if (!($cmp8)) { break; } $26 = $x; $27 = $j; $arrayidx9 = (($26) + ($27<<2)|0); $28 = +HEAPF32[$arrayidx9>>2]; $add = $28 + 1.0000000031710769E-30; $29 = $m; $add10 = $add + $29; $tmp = $add10; $30 = $coef0; $31 = $tmp; $mul = $30 * $31; $m = $mul; $32 = $tmp; $33 = $j; $arrayidx11 = (($vla) + ($33<<2)|0); HEAPF32[$arrayidx11>>2] = $32; $34 = $j; $inc = (($34) + 1)|0; $j = $inc; } $apply_downsampling = 1; } else { while(1) { $35 = $j; $36 = $N$addr; $cmp13 = ($35|0)<($36|0); if (!($cmp13)) { break L7; } $37 = $x; $38 = $j; $arrayidx16 = (($37) + ($38<<2)|0); $39 = +HEAPF32[$arrayidx16>>2]; $add17 = $39 + 1.0000000031710769E-30; $40 = $m; $add18 = $add17 + $40; $tmp15 = $add18; $41 = $coef0; $42 = $tmp15; $mul19 = $41 * $42; $m = $mul19; $43 = $tmp15; $mul20 = $43 * 3.0517578125E-5; $44 = $y; $45 = $j; $46 = $C$addr; $mul21 = Math_imul($45, $46)|0; $arrayidx22 = (($44) + ($mul21<<2)|0); HEAPF32[$arrayidx22>>2] = $mul20; $47 = $j; $inc24 = (($47) + 1)|0; $j = $inc24; } } } while(0); $48 = $m; $49 = $mem$addr; $50 = $c; $arrayidx27 = (($49) + ($50<<2)|0); HEAPF32[$arrayidx27>>2] = $48; $51 = $apply_downsampling; $tobool28 = ($51|0)!=(0); L16: do { if ($tobool28) { $j = 0; while(1) { $52 = $j; $53 = $Nd; $cmp31 = ($52|0)<($53|0); if (!($cmp31)) { break L16; } $54 = $j; $55 = $downsample$addr; $mul33 = Math_imul($54, $55)|0; $arrayidx34 = (($vla) + ($mul33<<2)|0); $56 = +HEAPF32[$arrayidx34>>2]; $mul35 = $56 * 3.0517578125E-5; $57 = $y; $58 = $j; $59 = $C$addr; $mul36 = Math_imul($58, $59)|0; $arrayidx37 = (($57) + ($mul36<<2)|0); HEAPF32[$arrayidx37>>2] = $mul35; $60 = $j; $inc39 = (($60) + 1)|0; $j = $inc39; } } } while(0); $61 = $c; $inc42 = (($61) + 1)|0; $c = $inc42; $62 = $C$addr; $cmp43 = ($inc42|0)<($62|0); if (!($cmp43)) { break; } } $63 = $saved_stack; _llvm_stackrestore(($63|0)); STACKTOP = sp;return; } function _ec_tell_64($_this) { $_this = $_this|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $_this$addr = 0, $nbits_total = 0, $rng = 0, $sub = 0, $sub1 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $_this$addr = $_this; $0 = $_this$addr; $nbits_total = ((($0)) + 20|0); $1 = HEAP32[$nbits_total>>2]|0; $2 = $_this$addr; $rng = ((($2)) + 28|0); $3 = HEAP32[$rng>>2]|0; $4 = (Math_clz32(($3|0))|0); $sub = (32 - ($4))|0; $sub1 = (($1) - ($sub))|0; STACKTOP = sp;return ($sub1|0); } function _tf_decode($start,$end,$isTransient,$tf_res,$LM,$dec) { $start = $start|0; $end = $end|0; $isTransient = $isTransient|0; $tf_res = $tf_res|0; $LM = $LM|0; $dec = $dec|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $LM$addr = 0, $add = 0, $add1 = 0, $add13 = 0, $add14 = 0, $add18 = 0, $add19 = 0, $add34 = 0, $add36 = 0; var $add4 = 0, $arrayidx = 0, $arrayidx11 = 0, $arrayidx15 = 0, $arrayidx16 = 0, $arrayidx20 = 0, $arrayidx31 = 0, $arrayidx35 = 0, $arrayidx37 = 0, $arrayidx39 = 0, $budget = 0, $call = 0, $call25 = 0, $call6 = 0, $call7 = 0, $cmp = 0, $cmp2 = 0, $cmp22 = 0, $cmp28 = 0, $cmp3 = 0; var $cmp5 = 0, $cond = 0, $cond9 = 0, $conv = 0, $conv21 = 0, $conv38 = 0, $curr = 0, $dec$addr = 0, $end$addr = 0, $i = 0, $inc = 0, $inc41 = 0, $isTransient$addr = 0, $land$ext = 0, $logp = 0, $mul = 0, $mul12 = 0, $mul17 = 0, $mul32 = 0, $mul33 = 0; var $or = 0, $start$addr = 0, $storage = 0, $sub = 0, $tell = 0, $tf_changed = 0, $tf_res$addr = 0, $tf_select = 0, $tf_select_rsv = 0, $tobool = 0, $tobool10 = 0, $tobool8 = 0, $xor = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $start$addr = $start; $end$addr = $end; $isTransient$addr = $isTransient; $tf_res$addr = $tf_res; $LM$addr = $LM; $dec$addr = $dec; $0 = $dec$addr; $storage = ((($0)) + 4|0); $1 = HEAP32[$storage>>2]|0; $mul = $1<<3; $budget = $mul; $2 = $dec$addr; $call = (_ec_tell_64($2)|0); $tell = $call; $3 = $isTransient$addr; $tobool = ($3|0)!=(0); $cond = $tobool ? 2 : 4; $logp = $cond; $4 = $LM$addr; $cmp = ($4|0)>(0); if ($cmp) { $5 = $tell; $6 = $logp; $add = (($5) + ($6))|0; $add1 = (($add) + 1)|0; $7 = $budget; $cmp2 = ($add1>>>0)<=($7>>>0); $8 = $cmp2; } else { $8 = 0; } $land$ext = $8&1; $tf_select_rsv = $land$ext; $9 = $tf_select_rsv; $10 = $budget; $sub = (($10) - ($9))|0; $budget = $sub; $curr = 0; $tf_changed = 0; $11 = $start$addr; $i = $11; while(1) { $12 = $i; $13 = $end$addr; $cmp3 = ($12|0)<($13|0); if (!($cmp3)) { break; } $14 = $tell; $15 = $logp; $add4 = (($14) + ($15))|0; $16 = $budget; $cmp5 = ($add4>>>0)<=($16>>>0); if ($cmp5) { $17 = $dec$addr; $18 = $logp; $call6 = (_ec_dec_bit_logp($17,$18)|0); $19 = $curr; $xor = $19 ^ $call6; $curr = $xor; $20 = $dec$addr; $call7 = (_ec_tell_64($20)|0); $tell = $call7; $21 = $curr; $22 = $tf_changed; $or = $22 | $21; $tf_changed = $or; } $23 = $curr; $24 = $tf_res$addr; $25 = $i; $arrayidx = (($24) + ($25<<2)|0); HEAP32[$arrayidx>>2] = $23; $26 = $isTransient$addr; $tobool8 = ($26|0)!=(0); $cond9 = $tobool8 ? 4 : 5; $logp = $cond9; $27 = $i; $inc = (($27) + 1)|0; $i = $inc; } $tf_select = 0; $28 = $tf_select_rsv; $tobool10 = ($28|0)!=(0); if ($tobool10) { $29 = $LM$addr; $arrayidx11 = (34086 + ($29<<3)|0); $30 = $isTransient$addr; $mul12 = $30<<2; $add13 = (($mul12) + 0)|0; $31 = $tf_changed; $add14 = (($add13) + ($31))|0; $arrayidx15 = (($arrayidx11) + ($add14)|0); $32 = HEAP8[$arrayidx15>>0]|0; $conv = $32 << 24 >> 24; $33 = $LM$addr; $arrayidx16 = (34086 + ($33<<3)|0); $34 = $isTransient$addr; $mul17 = $34<<2; $add18 = (($mul17) + 2)|0; $35 = $tf_changed; $add19 = (($add18) + ($35))|0; $arrayidx20 = (($arrayidx16) + ($add19)|0); $36 = HEAP8[$arrayidx20>>0]|0; $conv21 = $36 << 24 >> 24; $cmp22 = ($conv|0)!=($conv21|0); if ($cmp22) { $37 = $dec$addr; $call25 = (_ec_dec_bit_logp($37,1)|0); $tf_select = $call25; } } $38 = $start$addr; $i = $38; while(1) { $39 = $i; $40 = $end$addr; $cmp28 = ($39|0)<($40|0); if (!($cmp28)) { break; } $41 = $LM$addr; $arrayidx31 = (34086 + ($41<<3)|0); $42 = $isTransient$addr; $mul32 = $42<<2; $43 = $tf_select; $mul33 = $43<<1; $add34 = (($mul32) + ($mul33))|0; $44 = $tf_res$addr; $45 = $i; $arrayidx35 = (($44) + ($45<<2)|0); $46 = HEAP32[$arrayidx35>>2]|0; $add36 = (($add34) + ($46))|0; $arrayidx37 = (($arrayidx31) + ($add36)|0); $47 = HEAP8[$arrayidx37>>0]|0; $conv38 = $47 << 24 >> 24; $48 = $tf_res$addr; $49 = $i; $arrayidx39 = (($48) + ($49<<2)|0); HEAP32[$arrayidx39>>2] = $conv38; $50 = $i; $inc41 = (($50) + 1)|0; $i = $inc41; } STACKTOP = sp;return; } function _celt_synthesis($mode,$X,$out_syn,$oldBandE,$start,$effEnd,$C,$CC,$isTransient,$LM,$downsample,$silence,$arch) { $mode = $mode|0; $X = $X|0; $out_syn = $out_syn|0; $oldBandE = $oldBandE|0; $start = $start|0; $effEnd = $effEnd|0; $C = $C|0; $CC = $CC|0; $isTransient = $isTransient|0; $LM = $LM|0; $downsample = $downsample|0; $silence = $silence|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; var $152 = 0, $153 = 0.0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0; var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0; var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0; var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0; var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0.0, $97 = 0; var $98 = 0, $99 = 0.0, $B = 0, $C$addr = 0, $CC$addr = 0, $LM$addr = 0, $M = 0, $N = 0, $NB = 0, $X$addr = 0, $add = 0, $add$ptr = 0, $add$ptr15 = 0, $add$ptr23 = 0, $add$ptr36 = 0, $add$ptr37 = 0, $add$ptr38 = 0, $add$ptr58 = 0, $add$ptr65 = 0, $add$ptr67 = 0; var $add$ptr75 = 0, $add46 = 0.0, $arch$addr = 0, $arrayidx = 0, $arrayidx12 = 0, $arrayidx20 = 0, $arrayidx21 = 0, $arrayidx42 = 0, $arrayidx44 = 0, $arrayidx47 = 0, $arrayidx55 = 0, $arrayidx72 = 0, $arrayidx73 = 0, $arrayidx88 = 0, $arrayidx89 = 0, $arrayidx90 = 0, $arrayidx91 = 0, $b = 0, $c = 0, $cmp = 0; var $cmp11 = 0, $cmp17 = 0, $cmp29 = 0, $cmp31 = 0, $cmp40 = 0, $cmp52 = 0, $cmp69 = 0, $cmp8 = 0, $cmp81 = 0, $cmp86 = 0, $cmp97 = 0, $div = 0, $div35 = 0, $downsample$addr = 0, $effEnd$addr = 0, $freq2 = 0, $freq233 = 0, $i = 0, $inc = 0, $inc26 = 0; var $inc49 = 0, $inc61 = 0, $inc78 = 0, $inc80 = 0, $inc93 = 0, $inc96 = 0, $isTransient$addr = 0, $maxLM = 0, $maxLM7 = 0, $mdct = 0, $mdct19 = 0, $mdct54 = 0, $mdct71 = 0, $mode$addr = 0, $mul = 0, $mul10 = 0, $mul14 = 0, $mul22 = 0, $mul43 = 0.0, $mul45 = 0.0; var $mul57 = 0, $mul64 = 0, $mul66 = 0, $mul74 = 0, $nbEBands = 0, $nbEBands2 = 0, $oldBandE$addr = 0, $or$cond = 0, $or$cond1 = 0, $out_syn$addr = 0, $overlap = 0, $overlap1 = 0, $saved_stack = 0, $shift = 0, $shl = 0, $shl3 = 0, $shl6 = 0, $shortMdctSize = 0, $shortMdctSize4 = 0, $shortMdctSize5 = 0; var $silence$addr = 0, $start$addr = 0, $sub = 0, $sub$ptr$div = 0, $sub$ptr$lhs$cast = 0, $sub$ptr$rhs$cast = 0, $sub$ptr$sub = 0, $tobool = 0, $vla = 0, $vla$alloca_mul = 0, $window = 0, $window24 = 0, $window59 = 0, $window76 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 112|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(112|0); $mode$addr = $mode; $X$addr = $X; $out_syn$addr = $out_syn; $oldBandE$addr = $oldBandE; $start$addr = $start; $effEnd$addr = $effEnd; $C$addr = $C; $CC$addr = $CC; $isTransient$addr = $isTransient; $LM$addr = $LM; $downsample$addr = $downsample; $silence$addr = $silence; $arch$addr = $arch; $0 = $mode$addr; $overlap1 = ((($0)) + 4|0); $1 = HEAP32[$overlap1>>2]|0; $overlap = $1; $2 = $mode$addr; $nbEBands2 = ((($2)) + 8|0); $3 = HEAP32[$nbEBands2>>2]|0; $nbEBands = $3; $4 = $mode$addr; $shortMdctSize = ((($4)) + 44|0); $5 = HEAP32[$shortMdctSize>>2]|0; $6 = $LM$addr; $shl = $5 << $6; $N = $shl; $7 = $N; $8 = (_llvm_stacksave()|0); $saved_stack = $8; $vla$alloca_mul = $7<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $9 = $LM$addr; $shl3 = 1 << $9; $M = $shl3; $10 = $isTransient$addr; $tobool = ($10|0)!=(0); if ($tobool) { $11 = $M; $B = $11; $12 = $mode$addr; $shortMdctSize4 = ((($12)) + 44|0); $13 = HEAP32[$shortMdctSize4>>2]|0; $NB = $13; $14 = $mode$addr; $maxLM = ((($14)) + 36|0); $15 = HEAP32[$maxLM>>2]|0; $shift = $15; } else { $B = 1; $16 = $mode$addr; $shortMdctSize5 = ((($16)) + 44|0); $17 = HEAP32[$shortMdctSize5>>2]|0; $18 = $LM$addr; $shl6 = $17 << $18; $NB = $shl6; $19 = $mode$addr; $maxLM7 = ((($19)) + 36|0); $20 = HEAP32[$maxLM7>>2]|0; $21 = $LM$addr; $sub = (($20) - ($21))|0; $shift = $sub; } $22 = $CC$addr; $cmp = ($22|0)==(2); $23 = $C$addr; $cmp8 = ($23|0)==(1); $or$cond = $cmp & $cmp8; L5: do { if ($or$cond) { $24 = $mode$addr; $25 = $X$addr; $26 = $oldBandE$addr; $27 = $start$addr; $28 = $effEnd$addr; $29 = $M; $30 = $downsample$addr; $31 = $silence$addr; _denormalise_bands($24,$25,$vla,$26,$27,$28,$29,$30,$31); $32 = $out_syn$addr; $arrayidx = ((($32)) + 4|0); $33 = HEAP32[$arrayidx>>2]|0; $34 = $overlap; $div = (($34|0) / 2)&-1; $add$ptr = (($33) + ($div<<2)|0); $freq2 = $add$ptr; $35 = $freq2; $36 = $N; $mul = $36<<2; $37 = $freq2; $sub$ptr$lhs$cast = $37; $sub$ptr$rhs$cast = $vla; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $sub$ptr$div = (($sub$ptr$sub|0) / 4)&-1; $mul10 = 0; $add = (($mul) + ($mul10))|0; _memcpy(($35|0),($vla|0),($add|0))|0; $b = 0; while(1) { $38 = $b; $39 = $B; $cmp11 = ($38|0)<($39|0); if (!($cmp11)) { break; } $40 = $mode$addr; $mdct = ((($40)) + 64|0); $41 = $freq2; $42 = $b; $arrayidx12 = (($41) + ($42<<2)|0); $43 = $out_syn$addr; $44 = HEAP32[$43>>2]|0; $45 = $NB; $46 = $b; $mul14 = Math_imul($45, $46)|0; $add$ptr15 = (($44) + ($mul14<<2)|0); $47 = $mode$addr; $window = ((($47)) + 60|0); $48 = HEAP32[$window>>2]|0; $49 = $overlap; $50 = $shift; $51 = $B; $52 = $arch$addr; _clt_mdct_backward_c($mdct,$arrayidx12,$add$ptr15,$48,$49,$50,$51,$52); $53 = $b; $inc = (($53) + 1)|0; $b = $inc; } $b = 0; while(1) { $54 = $b; $55 = $B; $cmp17 = ($54|0)<($55|0); if (!($cmp17)) { break L5; } $56 = $mode$addr; $mdct19 = ((($56)) + 64|0); $57 = $b; $arrayidx20 = (($vla) + ($57<<2)|0); $58 = $out_syn$addr; $arrayidx21 = ((($58)) + 4|0); $59 = HEAP32[$arrayidx21>>2]|0; $60 = $NB; $61 = $b; $mul22 = Math_imul($60, $61)|0; $add$ptr23 = (($59) + ($mul22<<2)|0); $62 = $mode$addr; $window24 = ((($62)) + 60|0); $63 = HEAP32[$window24>>2]|0; $64 = $overlap; $65 = $shift; $66 = $B; $67 = $arch$addr; _clt_mdct_backward_c($mdct19,$arrayidx20,$add$ptr23,$63,$64,$65,$66,$67); $68 = $b; $inc26 = (($68) + 1)|0; $b = $inc26; } } else { $69 = $CC$addr; $cmp29 = ($69|0)==(1); $70 = $C$addr; $cmp31 = ($70|0)==(2); $or$cond1 = $cmp29 & $cmp31; if (!($or$cond1)) { $c = 0; while(1) { $117 = $mode$addr; $118 = $X$addr; $119 = $c; $120 = $N; $mul64 = Math_imul($119, $120)|0; $add$ptr65 = (($118) + ($mul64<<2)|0); $121 = $oldBandE$addr; $122 = $c; $123 = $nbEBands; $mul66 = Math_imul($122, $123)|0; $add$ptr67 = (($121) + ($mul66<<2)|0); $124 = $start$addr; $125 = $effEnd$addr; $126 = $M; $127 = $downsample$addr; $128 = $silence$addr; _denormalise_bands($117,$add$ptr65,$vla,$add$ptr67,$124,$125,$126,$127,$128); $b = 0; while(1) { $129 = $b; $130 = $B; $cmp69 = ($129|0)<($130|0); if (!($cmp69)) { break; } $131 = $mode$addr; $mdct71 = ((($131)) + 64|0); $132 = $b; $arrayidx72 = (($vla) + ($132<<2)|0); $133 = $out_syn$addr; $134 = $c; $arrayidx73 = (($133) + ($134<<2)|0); $135 = HEAP32[$arrayidx73>>2]|0; $136 = $NB; $137 = $b; $mul74 = Math_imul($136, $137)|0; $add$ptr75 = (($135) + ($mul74<<2)|0); $138 = $mode$addr; $window76 = ((($138)) + 60|0); $139 = HEAP32[$window76>>2]|0; $140 = $overlap; $141 = $shift; $142 = $B; $143 = $arch$addr; _clt_mdct_backward_c($mdct71,$arrayidx72,$add$ptr75,$139,$140,$141,$142,$143); $144 = $b; $inc78 = (($144) + 1)|0; $b = $inc78; } $145 = $c; $inc80 = (($145) + 1)|0; $c = $inc80; $146 = $CC$addr; $cmp81 = ($inc80|0)<($146|0); if (!($cmp81)) { break L5; } } } $71 = $out_syn$addr; $72 = HEAP32[$71>>2]|0; $73 = $overlap; $div35 = (($73|0) / 2)&-1; $add$ptr36 = (($72) + ($div35<<2)|0); $freq233 = $add$ptr36; $74 = $mode$addr; $75 = $X$addr; $76 = $oldBandE$addr; $77 = $start$addr; $78 = $effEnd$addr; $79 = $M; $80 = $downsample$addr; $81 = $silence$addr; _denormalise_bands($74,$75,$vla,$76,$77,$78,$79,$80,$81); $82 = $mode$addr; $83 = $X$addr; $84 = $N; $add$ptr37 = (($83) + ($84<<2)|0); $85 = $freq233; $86 = $oldBandE$addr; $87 = $nbEBands; $add$ptr38 = (($86) + ($87<<2)|0); $88 = $start$addr; $89 = $effEnd$addr; $90 = $M; $91 = $downsample$addr; $92 = $silence$addr; _denormalise_bands($82,$add$ptr37,$85,$add$ptr38,$88,$89,$90,$91,$92); $i = 0; while(1) { $93 = $i; $94 = $N; $cmp40 = ($93|0)<($94|0); if (!($cmp40)) { break; } $95 = $i; $arrayidx42 = (($vla) + ($95<<2)|0); $96 = +HEAPF32[$arrayidx42>>2]; $mul43 = 0.5 * $96; $97 = $freq233; $98 = $i; $arrayidx44 = (($97) + ($98<<2)|0); $99 = +HEAPF32[$arrayidx44>>2]; $mul45 = 0.5 * $99; $add46 = $mul43 + $mul45; $100 = $i; $arrayidx47 = (($vla) + ($100<<2)|0); HEAPF32[$arrayidx47>>2] = $add46; $101 = $i; $inc49 = (($101) + 1)|0; $i = $inc49; } $b = 0; while(1) { $102 = $b; $103 = $B; $cmp52 = ($102|0)<($103|0); if (!($cmp52)) { break L5; } $104 = $mode$addr; $mdct54 = ((($104)) + 64|0); $105 = $b; $arrayidx55 = (($vla) + ($105<<2)|0); $106 = $out_syn$addr; $107 = HEAP32[$106>>2]|0; $108 = $NB; $109 = $b; $mul57 = Math_imul($108, $109)|0; $add$ptr58 = (($107) + ($mul57<<2)|0); $110 = $mode$addr; $window59 = ((($110)) + 60|0); $111 = HEAP32[$window59>>2]|0; $112 = $overlap; $113 = $shift; $114 = $B; $115 = $arch$addr; _clt_mdct_backward_c($mdct54,$arrayidx55,$add$ptr58,$111,$112,$113,$114,$115); $116 = $b; $inc61 = (($116) + 1)|0; $b = $inc61; } } } while(0); $c = 0; while(1) { $i = 0; while(1) { $147 = $i; $148 = $N; $cmp86 = ($147|0)<($148|0); if (!($cmp86)) { break; } $149 = $out_syn$addr; $150 = $c; $arrayidx88 = (($149) + ($150<<2)|0); $151 = HEAP32[$arrayidx88>>2]|0; $152 = $i; $arrayidx89 = (($151) + ($152<<2)|0); $153 = +HEAPF32[$arrayidx89>>2]; $154 = $out_syn$addr; $155 = $c; $arrayidx90 = (($154) + ($155<<2)|0); $156 = HEAP32[$arrayidx90>>2]|0; $157 = $i; $arrayidx91 = (($156) + ($157<<2)|0); HEAPF32[$arrayidx91>>2] = $153; $158 = $i; $inc93 = (($158) + 1)|0; $i = $inc93; } $159 = $c; $inc96 = (($159) + 1)|0; $c = $inc96; $160 = $CC$addr; $cmp97 = ($inc96|0)<($160|0); if (!($cmp97)) { break; } } $161 = $saved_stack; _llvm_stackrestore(($161|0)); STACKTOP = sp;return; } function _ec_get_error_68($_this) { $_this = $_this|0; var $0 = 0, $1 = 0, $_this$addr = 0, $error = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $_this$addr = $_this; $0 = $_this$addr; $error = ((($0)) + 44|0); $1 = HEAP32[$error>>2]|0; STACKTOP = sp;return ($1|0); } function _deemphasis_stereo_simple($in,$pcm,$N,$coef0,$mem) { $in = $in|0; $pcm = $pcm|0; $N = $N|0; $coef0 = +$coef0; $mem = $mem|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0.0, $13 = 0.0, $14 = 0, $15 = 0, $16 = 0.0, $17 = 0.0, $18 = 0.0, $19 = 0.0, $2 = 0, $20 = 0.0, $21 = 0.0, $22 = 0.0, $23 = 0, $24 = 0, $25 = 0.0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0.0, $3 = 0, $30 = 0, $31 = 0.0, $32 = 0, $4 = 0, $5 = 0.0, $6 = 0, $7 = 0.0, $8 = 0, $9 = 0, $N$addr = 0, $add = 0.0, $add15 = 0, $add5 = 0.0, $add7 = 0.0, $add8 = 0.0, $arrayidx1 = 0; var $arrayidx12 = 0, $arrayidx16 = 0, $arrayidx18 = 0, $arrayidx3 = 0, $arrayidx4 = 0, $arrayidx6 = 0, $cmp = 0, $coef0$addr = 0.0, $in$addr = 0, $inc = 0, $j = 0, $m0 = 0.0, $m1 = 0.0, $mem$addr = 0, $mul = 0.0, $mul10 = 0.0, $mul11 = 0, $mul13 = 0.0, $mul14 = 0, $mul9 = 0.0; var $pcm$addr = 0, $tmp0 = 0.0, $tmp1 = 0.0, $x0 = 0, $x1 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $in$addr = $in; $pcm$addr = $pcm; $N$addr = $N; $coef0$addr = $coef0; $mem$addr = $mem; $0 = $in$addr; $1 = HEAP32[$0>>2]|0; $x0 = $1; $2 = $in$addr; $arrayidx1 = ((($2)) + 4|0); $3 = HEAP32[$arrayidx1>>2]|0; $x1 = $3; $4 = $mem$addr; $5 = +HEAPF32[$4>>2]; $m0 = $5; $6 = $mem$addr; $arrayidx3 = ((($6)) + 4|0); $7 = +HEAPF32[$arrayidx3>>2]; $m1 = $7; $j = 0; while(1) { $8 = $j; $9 = $N$addr; $cmp = ($8|0)<($9|0); if (!($cmp)) { break; } $10 = $x0; $11 = $j; $arrayidx4 = (($10) + ($11<<2)|0); $12 = +HEAPF32[$arrayidx4>>2]; $add = $12 + 1.0000000031710769E-30; $13 = $m0; $add5 = $add + $13; $tmp0 = $add5; $14 = $x1; $15 = $j; $arrayidx6 = (($14) + ($15<<2)|0); $16 = +HEAPF32[$arrayidx6>>2]; $add7 = $16 + 1.0000000031710769E-30; $17 = $m1; $add8 = $add7 + $17; $tmp1 = $add8; $18 = $coef0$addr; $19 = $tmp0; $mul = $18 * $19; $m0 = $mul; $20 = $coef0$addr; $21 = $tmp1; $mul9 = $20 * $21; $m1 = $mul9; $22 = $tmp0; $mul10 = $22 * 3.0517578125E-5; $23 = $pcm$addr; $24 = $j; $mul11 = $24<<1; $arrayidx12 = (($23) + ($mul11<<2)|0); HEAPF32[$arrayidx12>>2] = $mul10; $25 = $tmp1; $mul13 = $25 * 3.0517578125E-5; $26 = $pcm$addr; $27 = $j; $mul14 = $27<<1; $add15 = (($mul14) + 1)|0; $arrayidx16 = (($26) + ($add15<<2)|0); HEAPF32[$arrayidx16>>2] = $mul13; $28 = $j; $inc = (($28) + 1)|0; $j = $inc; } $29 = $m0; $30 = $mem$addr; HEAPF32[$30>>2] = $29; $31 = $m1; $32 = $mem$addr; $arrayidx18 = ((($32)) + 4|0); HEAPF32[$arrayidx18>>2] = $31; STACKTOP = sp;return; } function _celt_plc_pitch_search($decode_mem,$C,$arch) { $decode_mem = $decode_mem|0; $C = $C|0; $arch = $arch|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $C$addr = 0, $add$ptr = 0, $arch$addr = 0, $decode_mem$addr = 0, $lp_pitch_buf = 0, $pitch_index = 0, $sub = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 4112|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(4112|0); $pitch_index = sp + 4096|0; $lp_pitch_buf = sp; $decode_mem$addr = $decode_mem; $C$addr = $C; $arch$addr = $arch; $0 = $decode_mem$addr; $1 = $C$addr; $2 = $arch$addr; _pitch_downsample($0,$lp_pitch_buf,2048,$1,$2); $add$ptr = ((($lp_pitch_buf)) + 1440|0); $3 = $arch$addr; _pitch_search($add$ptr,$lp_pitch_buf,1328,620,$pitch_index,$3); $4 = HEAP32[$pitch_index>>2]|0; $sub = (720 - ($4))|0; HEAP32[$pitch_index>>2] = $sub; $5 = HEAP32[$pitch_index>>2]|0; STACKTOP = sp;return ($5|0); } function _ec_tell_frac($_this) { $_this = $_this|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $_this$addr = 0, $add = 0, $add6 = 0; var $arrayidx = 0, $b = 0, $cmp = 0, $conv = 0, $l = 0, $nbits = 0, $nbits_total = 0, $r = 0, $rng = 0, $rng1 = 0, $shl = 0, $shl5 = 0, $shr = 0, $shr3 = 0, $sub = 0, $sub2 = 0, $sub4 = 0, $sub7 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $_this$addr = $_this; $0 = $_this$addr; $nbits_total = ((($0)) + 20|0); $1 = HEAP32[$nbits_total>>2]|0; $shl = $1 << 3; $nbits = $shl; $2 = $_this$addr; $rng = ((($2)) + 28|0); $3 = HEAP32[$rng>>2]|0; $4 = (Math_clz32(($3|0))|0); $sub = (32 - ($4))|0; $l = $sub; $5 = $_this$addr; $rng1 = ((($5)) + 28|0); $6 = HEAP32[$rng1>>2]|0; $7 = $l; $sub2 = (($7) - 16)|0; $shr = $6 >>> $sub2; $r = $shr; $8 = $r; $shr3 = $8 >>> 12; $sub4 = (($shr3) - 8)|0; $b = $sub4; $9 = $r; $10 = $b; $arrayidx = (3028 + ($10<<2)|0); $11 = HEAP32[$arrayidx>>2]|0; $cmp = ($9>>>0)>($11>>>0); $conv = $cmp&1; $12 = $b; $add = (($12) + ($conv))|0; $b = $add; $13 = $l; $shl5 = $13 << 3; $14 = $b; $add6 = (($shl5) + ($14))|0; $l = $add6; $15 = $nbits; $16 = $l; $sub7 = (($15) - ($16))|0; STACKTOP = sp;return ($sub7|0); } function _ec_dec_init($_this,$_buf,$_storage) { $_this = $_this|0; $_buf = $_buf|0; $_storage = $_storage|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $_buf$addr = 0; var $_storage$addr = 0, $_this$addr = 0, $call = 0, $end_offs = 0, $end_window = 0, $error = 0, $nbits_total = 0, $nend_bits = 0, $offs = 0, $rem = 0, $rem2 = 0, $rng = 0, $rng1 = 0, $shr = 0, $storage = 0, $sub = 0, $sub3 = 0, $val = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $_this$addr = $_this; $_buf$addr = $_buf; $_storage$addr = $_storage; $0 = $_buf$addr; $1 = $_this$addr; HEAP32[$1>>2] = $0; $2 = $_storage$addr; $3 = $_this$addr; $storage = ((($3)) + 4|0); HEAP32[$storage>>2] = $2; $4 = $_this$addr; $end_offs = ((($4)) + 8|0); HEAP32[$end_offs>>2] = 0; $5 = $_this$addr; $end_window = ((($5)) + 12|0); HEAP32[$end_window>>2] = 0; $6 = $_this$addr; $nend_bits = ((($6)) + 16|0); HEAP32[$nend_bits>>2] = 0; $7 = $_this$addr; $nbits_total = ((($7)) + 20|0); HEAP32[$nbits_total>>2] = 9; $8 = $_this$addr; $offs = ((($8)) + 24|0); HEAP32[$offs>>2] = 0; $9 = $_this$addr; $rng = ((($9)) + 28|0); HEAP32[$rng>>2] = 128; $10 = $_this$addr; $call = (_ec_read_byte($10)|0); $11 = $_this$addr; $rem = ((($11)) + 40|0); HEAP32[$rem>>2] = $call; $12 = $_this$addr; $rng1 = ((($12)) + 28|0); $13 = HEAP32[$rng1>>2]|0; $sub = (($13) - 1)|0; $14 = $_this$addr; $rem2 = ((($14)) + 40|0); $15 = HEAP32[$rem2>>2]|0; $shr = $15 >> 1; $sub3 = (($sub) - ($shr))|0; $16 = $_this$addr; $val = ((($16)) + 32|0); HEAP32[$val>>2] = $sub3; $17 = $_this$addr; $error = ((($17)) + 44|0); HEAP32[$error>>2] = 0; $18 = $_this$addr; _ec_dec_normalize($18); STACKTOP = sp;return; } function _ec_read_byte($_this) { $_this = $_this|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $_this$addr = 0, $arrayidx = 0, $cmp = 0, $cond = 0, $conv = 0, $inc = 0, $offs = 0, $offs1 = 0, $storage = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $_this$addr = $_this; $0 = $_this$addr; $offs = ((($0)) + 24|0); $1 = HEAP32[$offs>>2]|0; $2 = $_this$addr; $storage = ((($2)) + 4|0); $3 = HEAP32[$storage>>2]|0; $cmp = ($1>>>0)<($3>>>0); if (!($cmp)) { $cond = 0; STACKTOP = sp;return ($cond|0); } $4 = $_this$addr; $5 = HEAP32[$4>>2]|0; $6 = $_this$addr; $offs1 = ((($6)) + 24|0); $7 = HEAP32[$offs1>>2]|0; $inc = (($7) + 1)|0; HEAP32[$offs1>>2] = $inc; $arrayidx = (($5) + ($7)|0); $8 = HEAP8[$arrayidx>>0]|0; $conv = $8&255; $cond = $conv; STACKTOP = sp;return ($cond|0); } function _ec_dec_normalize($_this) { $_this = $_this|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $_this$addr = 0, $add = 0, $add6 = 0; var $and = 0, $and7 = 0, $call = 0, $cmp = 0, $nbits_total = 0, $neg = 0, $or = 0, $rem = 0, $rem2 = 0, $rem4 = 0, $rng = 0, $rng1 = 0, $shl = 0, $shl3 = 0, $shl5 = 0, $shr = 0, $sym = 0, $val = 0, $val8 = 0, label = 0; var sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $_this$addr = $_this; while(1) { $0 = $_this$addr; $rng = ((($0)) + 28|0); $1 = HEAP32[$rng>>2]|0; $cmp = ($1>>>0)<=(8388608); if (!($cmp)) { break; } $2 = $_this$addr; $nbits_total = ((($2)) + 20|0); $3 = HEAP32[$nbits_total>>2]|0; $add = (($3) + 8)|0; HEAP32[$nbits_total>>2] = $add; $4 = $_this$addr; $rng1 = ((($4)) + 28|0); $5 = HEAP32[$rng1>>2]|0; $shl = $5 << 8; HEAP32[$rng1>>2] = $shl; $6 = $_this$addr; $rem = ((($6)) + 40|0); $7 = HEAP32[$rem>>2]|0; $sym = $7; $8 = $_this$addr; $call = (_ec_read_byte($8)|0); $9 = $_this$addr; $rem2 = ((($9)) + 40|0); HEAP32[$rem2>>2] = $call; $10 = $sym; $shl3 = $10 << 8; $11 = $_this$addr; $rem4 = ((($11)) + 40|0); $12 = HEAP32[$rem4>>2]|0; $or = $shl3 | $12; $shr = $or >> 1; $sym = $shr; $13 = $_this$addr; $val = ((($13)) + 32|0); $14 = HEAP32[$val>>2]|0; $shl5 = $14 << 8; $15 = $sym; $neg = $15 ^ -1; $and = 255 & $neg; $add6 = (($shl5) + ($and))|0; $and7 = $add6 & 2147483647; $16 = $_this$addr; $val8 = ((($16)) + 32|0); HEAP32[$val8>>2] = $and7; } STACKTOP = sp;return; } function _ec_decode($_this,$_ft) { $_this = $_this|0; $_ft = $_ft|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $_ft$addr = 0, $_this$addr = 0, $add = 0, $add2 = 0, $add3 = 0, $add5 = 0; var $and = 0, $call = 0, $cmp = 0, $conv = 0, $div = 0, $ext = 0, $ext1 = 0, $rng = 0, $s = 0, $sub = 0, $sub4 = 0, $sub6 = 0, $val = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $_this$addr = $_this; $_ft$addr = $_ft; $0 = $_this$addr; $rng = ((($0)) + 28|0); $1 = HEAP32[$rng>>2]|0; $2 = $_ft$addr; $call = (_celt_udiv($1,$2)|0); $3 = $_this$addr; $ext = ((($3)) + 36|0); HEAP32[$ext>>2] = $call; $4 = $_this$addr; $val = ((($4)) + 32|0); $5 = HEAP32[$val>>2]|0; $6 = $_this$addr; $ext1 = ((($6)) + 36|0); $7 = HEAP32[$ext1>>2]|0; $div = (($5>>>0) / ($7>>>0))&-1; $s = $div; $8 = $_ft$addr; $9 = $s; $add = (($9) + 1)|0; $10 = $_ft$addr; $11 = $s; $add2 = (($11) + 1)|0; $sub = (($10) - ($add2))|0; $12 = $_ft$addr; $13 = $s; $add3 = (($13) + 1)|0; $cmp = ($12>>>0)<($add3>>>0); $conv = $cmp&1; $sub4 = (0 - ($conv))|0; $and = $sub & $sub4; $add5 = (($add) + ($and))|0; $sub6 = (($8) - ($add5))|0; STACKTOP = sp;return ($sub6|0); } function _celt_udiv($n,$d) { $n = $n|0; $d = $d|0; var $0 = 0, $1 = 0, $d$addr = 0, $div = 0, $n$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $n$addr = $n; $d$addr = $d; $0 = $n$addr; $1 = $d$addr; $div = (($0>>>0) / ($1>>>0))&-1; STACKTOP = sp;return ($div|0); } function _ec_decode_bin($_this,$_bits) { $_this = $_this|0; $_bits = $_bits|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $_bits$addr = 0, $_this$addr = 0, $add = 0, $add3 = 0, $add5 = 0, $add7 = 0; var $and = 0, $cmp = 0, $conv = 0, $div = 0, $ext = 0, $ext1 = 0, $rng = 0, $s = 0, $shl = 0, $shl2 = 0, $shl4 = 0, $shr = 0, $sub = 0, $sub6 = 0, $sub8 = 0, $val = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $_this$addr = $_this; $_bits$addr = $_bits; $0 = $_this$addr; $rng = ((($0)) + 28|0); $1 = HEAP32[$rng>>2]|0; $2 = $_bits$addr; $shr = $1 >>> $2; $3 = $_this$addr; $ext = ((($3)) + 36|0); HEAP32[$ext>>2] = $shr; $4 = $_this$addr; $val = ((($4)) + 32|0); $5 = HEAP32[$val>>2]|0; $6 = $_this$addr; $ext1 = ((($6)) + 36|0); $7 = HEAP32[$ext1>>2]|0; $div = (($5>>>0) / ($7>>>0))&-1; $s = $div; $8 = $_bits$addr; $shl = 1 << $8; $9 = $s; $add = (($9) + 1)|0; $10 = $_bits$addr; $shl2 = 1 << $10; $11 = $s; $add3 = (($11) + 1)|0; $sub = (($shl2) - ($add3))|0; $12 = $_bits$addr; $shl4 = 1 << $12; $13 = $s; $add5 = (($13) + 1)|0; $cmp = ($shl4>>>0)<($add5>>>0); $conv = $cmp&1; $sub6 = (0 - ($conv))|0; $and = $sub & $sub6; $add7 = (($add) + ($and))|0; $sub8 = (($shl) - ($add7))|0; STACKTOP = sp;return ($sub8|0); } function _ec_dec_update($_this,$_fl,$_fh,$_ft) { $_this = $_this|0; $_fl = $_fl|0; $_fh = $_fh|0; $_ft = $_ft|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $_fh$addr = 0, $_fl$addr = 0, $_ft$addr = 0, $_this$addr = 0; var $cmp = 0, $cond = 0, $ext = 0, $ext2 = 0, $mul = 0, $mul4 = 0, $rng = 0, $rng6 = 0, $s = 0, $sub = 0, $sub1 = 0, $sub3 = 0, $sub5 = 0, $val = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $_this$addr = $_this; $_fl$addr = $_fl; $_fh$addr = $_fh; $_ft$addr = $_ft; $0 = $_this$addr; $ext = ((($0)) + 36|0); $1 = HEAP32[$ext>>2]|0; $2 = $_ft$addr; $3 = $_fh$addr; $sub = (($2) - ($3))|0; $mul = Math_imul($1, $sub)|0; $s = $mul; $4 = $s; $5 = $_this$addr; $val = ((($5)) + 32|0); $6 = HEAP32[$val>>2]|0; $sub1 = (($6) - ($4))|0; HEAP32[$val>>2] = $sub1; $7 = $_fl$addr; $cmp = ($7>>>0)>(0); $8 = $_this$addr; if ($cmp) { $ext2 = ((($8)) + 36|0); $9 = HEAP32[$ext2>>2]|0; $10 = $_fh$addr; $11 = $_fl$addr; $sub3 = (($10) - ($11))|0; $mul4 = Math_imul($9, $sub3)|0; $cond = $mul4; $14 = $_this$addr; $rng6 = ((($14)) + 28|0); HEAP32[$rng6>>2] = $cond; $15 = $_this$addr; _ec_dec_normalize($15); STACKTOP = sp;return; } else { $rng = ((($8)) + 28|0); $12 = HEAP32[$rng>>2]|0; $13 = $s; $sub5 = (($12) - ($13))|0; $cond = $sub5; $14 = $_this$addr; $rng6 = ((($14)) + 28|0); HEAP32[$rng6>>2] = $cond; $15 = $_this$addr; _ec_dec_normalize($15); STACKTOP = sp;return; } } function _ec_dec_bit_logp($_this,$_logp) { $_this = $_this|0; $_logp = $_logp|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $_logp$addr = 0; var $_this$addr = 0, $cmp = 0, $cond = 0, $conv = 0, $d = 0, $r = 0, $ret = 0, $rng = 0, $rng4 = 0, $s = 0, $shr = 0, $sub = 0, $sub3 = 0, $tobool = 0, $tobool2 = 0, $val = 0, $val1 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $_this$addr = $_this; $_logp$addr = $_logp; $0 = $_this$addr; $rng = ((($0)) + 28|0); $1 = HEAP32[$rng>>2]|0; $r = $1; $2 = $_this$addr; $val = ((($2)) + 32|0); $3 = HEAP32[$val>>2]|0; $d = $3; $4 = $r; $5 = $_logp$addr; $shr = $4 >>> $5; $s = $shr; $6 = $d; $7 = $s; $cmp = ($6>>>0)<($7>>>0); $conv = $cmp&1; $ret = $conv; $8 = $ret; $tobool = ($8|0)!=(0); if (!($tobool)) { $9 = $d; $10 = $s; $sub = (($9) - ($10))|0; $11 = $_this$addr; $val1 = ((($11)) + 32|0); HEAP32[$val1>>2] = $sub; } $12 = $ret; $tobool2 = ($12|0)!=(0); if ($tobool2) { $13 = $s; $cond = $13; } else { $14 = $r; $15 = $s; $sub3 = (($14) - ($15))|0; $cond = $sub3; } $16 = $_this$addr; $rng4 = ((($16)) + 28|0); HEAP32[$rng4>>2] = $cond; $17 = $_this$addr; _ec_dec_normalize($17); $18 = $ret; STACKTOP = sp;return ($18|0); } function _ec_dec_icdf($_this,$_icdf,$_ftb) { $_this = $_this|0; $_icdf = $_icdf|0; $_ftb = $_ftb|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; var $9 = 0, $_ftb$addr = 0, $_icdf$addr = 0, $_this$addr = 0, $arrayidx = 0, $cmp = 0, $conv = 0, $d = 0, $inc = 0, $mul = 0, $r = 0, $ret = 0, $rng = 0, $rng4 = 0, $s = 0, $shr = 0, $sub = 0, $sub3 = 0, $t = 0, $val = 0; var $val2 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $_this$addr = $_this; $_icdf$addr = $_icdf; $_ftb$addr = $_ftb; $0 = $_this$addr; $rng = ((($0)) + 28|0); $1 = HEAP32[$rng>>2]|0; $s = $1; $2 = $_this$addr; $val = ((($2)) + 32|0); $3 = HEAP32[$val>>2]|0; $d = $3; $4 = $s; $5 = $_ftb$addr; $shr = $4 >>> $5; $r = $shr; $ret = -1; while(1) { $6 = $s; $t = $6; $7 = $r; $8 = $_icdf$addr; $9 = $ret; $inc = (($9) + 1)|0; $ret = $inc; $arrayidx = (($8) + ($inc)|0); $10 = HEAP8[$arrayidx>>0]|0; $conv = $10&255; $mul = Math_imul($7, $conv)|0; $s = $mul; $11 = $d; $12 = $s; $cmp = ($11>>>0)<($12>>>0); if (!($cmp)) { break; } } $13 = $d; $14 = $s; $sub = (($13) - ($14))|0; $15 = $_this$addr; $val2 = ((($15)) + 32|0); HEAP32[$val2>>2] = $sub; $16 = $t; $17 = $s; $sub3 = (($16) - ($17))|0; $18 = $_this$addr; $rng4 = ((($18)) + 28|0); HEAP32[$rng4>>2] = $sub3; $19 = $_this$addr; _ec_dec_normalize($19); $20 = $ret; STACKTOP = sp;return ($20|0); } function _ec_dec_uint($_this,$_ft) { $_this = $_this|0; $_ft = $_ft|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $_ft$addr = 0, $_this$addr = 0, $add = 0, $add2 = 0, $add7 = 0, $call = 0, $call3 = 0, $call6 = 0, $cmp = 0; var $cmp4 = 0, $dec = 0, $error = 0, $ft = 0, $ftb = 0, $inc = 0, $or = 0, $retval = 0, $s = 0, $shl = 0, $shr = 0, $sub = 0, $sub1 = 0, $t = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $_this$addr = $_this; $_ft$addr = $_ft; $0 = $_ft$addr; $dec = (($0) + -1)|0; $_ft$addr = $dec; $1 = $_ft$addr; $2 = (Math_clz32(($1|0))|0); $sub = (32 - ($2))|0; $ftb = $sub; $3 = $ftb; $cmp = ($3|0)>(8); if (!($cmp)) { $22 = $_ft$addr; $inc = (($22) + 1)|0; $_ft$addr = $inc; $23 = $_this$addr; $24 = $_ft$addr; $call6 = (_ec_decode($23,$24)|0); $s = $call6; $25 = $_this$addr; $26 = $s; $27 = $s; $add7 = (($27) + 1)|0; $28 = $_ft$addr; _ec_dec_update($25,$26,$add7,$28); $29 = $s; $retval = $29; $30 = $retval; STACKTOP = sp;return ($30|0); } $4 = $ftb; $sub1 = (($4) - 8)|0; $ftb = $sub1; $5 = $_ft$addr; $6 = $ftb; $shr = $5 >>> $6; $add = (($shr) + 1)|0; $ft = $add; $7 = $_this$addr; $8 = $ft; $call = (_ec_decode($7,$8)|0); $s = $call; $9 = $_this$addr; $10 = $s; $11 = $s; $add2 = (($11) + 1)|0; $12 = $ft; _ec_dec_update($9,$10,$add2,$12); $13 = $s; $14 = $ftb; $shl = $13 << $14; $15 = $_this$addr; $16 = $ftb; $call3 = (_ec_dec_bits($15,$16)|0); $or = $shl | $call3; $t = $or; $17 = $t; $18 = $_ft$addr; $cmp4 = ($17>>>0)<=($18>>>0); if ($cmp4) { $19 = $t; $retval = $19; $30 = $retval; STACKTOP = sp;return ($30|0); } else { $20 = $_this$addr; $error = ((($20)) + 44|0); HEAP32[$error>>2] = 1; $21 = $_ft$addr; $retval = $21; $30 = $retval; STACKTOP = sp;return ($30|0); } return (0)|0; } function _ec_dec_bits($_this,$_bits) { $_this = $_this|0; $_bits = $_bits|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $_bits$addr = 0, $_this$addr = 0, $add = 0, $add6 = 0, $and = 0, $available = 0, $call = 0, $cmp = 0, $cmp1 = 0, $end_window = 0, $end_window4 = 0, $nbits_total = 0, $nend_bits = 0, $nend_bits5 = 0, $or = 0; var $ret = 0, $shl = 0, $shl2 = 0, $shr = 0, $sub = 0, $sub3 = 0, $window = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $_this$addr = $_this; $_bits$addr = $_bits; $0 = $_this$addr; $end_window = ((($0)) + 12|0); $1 = HEAP32[$end_window>>2]|0; $window = $1; $2 = $_this$addr; $nend_bits = ((($2)) + 16|0); $3 = HEAP32[$nend_bits>>2]|0; $available = $3; $4 = $available; $5 = $_bits$addr; $cmp = ($4>>>0)<($5>>>0); if ($cmp) { while(1) { $6 = $_this$addr; $call = (_ec_read_byte_from_end($6)|0); $7 = $available; $shl = $call << $7; $8 = $window; $or = $8 | $shl; $window = $or; $9 = $available; $add = (($9) + 8)|0; $available = $add; $10 = $available; $cmp1 = ($10|0)<=(24); if (!($cmp1)) { break; } } } $11 = $window; $12 = $_bits$addr; $shl2 = 1 << $12; $sub = (($shl2) - 1)|0; $and = $11 & $sub; $ret = $and; $13 = $_bits$addr; $14 = $window; $shr = $14 >>> $13; $window = $shr; $15 = $_bits$addr; $16 = $available; $sub3 = (($16) - ($15))|0; $available = $sub3; $17 = $window; $18 = $_this$addr; $end_window4 = ((($18)) + 12|0); HEAP32[$end_window4>>2] = $17; $19 = $available; $20 = $_this$addr; $nend_bits5 = ((($20)) + 16|0); HEAP32[$nend_bits5>>2] = $19; $21 = $_bits$addr; $22 = $_this$addr; $nbits_total = ((($22)) + 20|0); $23 = HEAP32[$nbits_total>>2]|0; $add6 = (($23) + ($21))|0; HEAP32[$nbits_total>>2] = $add6; $24 = $ret; STACKTOP = sp;return ($24|0); } function _ec_read_byte_from_end($_this) { $_this = $_this|0; var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $_this$addr = 0, $arrayidx = 0, $cmp = 0, $cond = 0, $conv = 0, $end_offs = 0, $end_offs2 = 0, $inc = 0, $storage = 0; var $storage1 = 0, $sub = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $_this$addr = $_this; $0 = $_this$addr; $end_offs = ((($0)) + 8|0); $1 = HEAP32[$end_offs>>2]|0; $2 = $_this$addr; $storage = ((($2)) + 4|0); $3 = HEAP32[$storage>>2]|0; $cmp = ($1>>>0)<($3>>>0); if (!($cmp)) { $cond = 0; STACKTOP = sp;return ($cond|0); } $4 = $_this$addr; $5 = HEAP32[$4>>2]|0; $6 = $_this$addr; $storage1 = ((($6)) + 4|0); $7 = HEAP32[$storage1>>2]|0; $8 = $_this$addr; $end_offs2 = ((($8)) + 8|0); $9 = HEAP32[$end_offs2>>2]|0; $inc = (($9) + 1)|0; HEAP32[$end_offs2>>2] = $inc; $sub = (($7) - ($inc))|0; $arrayidx = (($5) + ($sub)|0); $10 = HEAP8[$arrayidx>>0]|0; $conv = $10&255; $cond = $conv; STACKTOP = sp;return ($cond|0); } function _ec_enc_init($_this,$_buf,$_size) { $_this = $_this|0; $_buf = $_buf|0; $_size = $_size|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $_buf$addr = 0, $_size$addr = 0, $_this$addr = 0, $end_offs = 0, $end_window = 0, $error = 0; var $ext = 0, $nbits_total = 0, $nend_bits = 0, $offs = 0, $rem = 0, $rng = 0, $storage = 0, $val = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $_this$addr = $_this; $_buf$addr = $_buf; $_size$addr = $_size; $0 = $_buf$addr; $1 = $_this$addr; HEAP32[$1>>2] = $0; $2 = $_this$addr; $end_offs = ((($2)) + 8|0); HEAP32[$end_offs>>2] = 0; $3 = $_this$addr; $end_window = ((($3)) + 12|0); HEAP32[$end_window>>2] = 0; $4 = $_this$addr; $nend_bits = ((($4)) + 16|0); HEAP32[$nend_bits>>2] = 0; $5 = $_this$addr; $nbits_total = ((($5)) + 20|0); HEAP32[$nbits_total>>2] = 33; $6 = $_this$addr; $offs = ((($6)) + 24|0); HEAP32[$offs>>2] = 0; $7 = $_this$addr; $rng = ((($7)) + 28|0); HEAP32[$rng>>2] = -2147483648; $8 = $_this$addr; $rem = ((($8)) + 40|0); HEAP32[$rem>>2] = -1; $9 = $_this$addr; $val = ((($9)) + 32|0); HEAP32[$val>>2] = 0; $10 = $_this$addr; $ext = ((($10)) + 36|0); HEAP32[$ext>>2] = 0; $11 = $_size$addr; $12 = $_this$addr; $storage = ((($12)) + 4|0); HEAP32[$storage>>2] = $11; $13 = $_this$addr; $error = ((($13)) + 44|0); HEAP32[$error>>2] = 0; STACKTOP = sp;return; } function _ec_encode($_this,$_fl,$_fh,$_ft) { $_this = $_this|0; $_fl = $_fl|0; $_fh = $_fh|0; $_ft = $_ft|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; var $9 = 0, $_fh$addr = 0, $_fl$addr = 0, $_ft$addr = 0, $_this$addr = 0, $add = 0, $call = 0, $cmp = 0, $mul = 0, $mul4 = 0, $mul7 = 0, $r = 0, $rng = 0, $rng1 = 0, $rng5 = 0, $rng8 = 0, $sub = 0, $sub2 = 0, $sub3 = 0, $sub6 = 0; var $sub9 = 0, $val = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $_this$addr = $_this; $_fl$addr = $_fl; $_fh$addr = $_fh; $_ft$addr = $_ft; $0 = $_this$addr; $rng = ((($0)) + 28|0); $1 = HEAP32[$rng>>2]|0; $2 = $_ft$addr; $call = (_celt_udiv_83($1,$2)|0); $r = $call; $3 = $_fl$addr; $cmp = ($3>>>0)>(0); if ($cmp) { $4 = $_this$addr; $rng1 = ((($4)) + 28|0); $5 = HEAP32[$rng1>>2]|0; $6 = $r; $7 = $_ft$addr; $8 = $_fl$addr; $sub = (($7) - ($8))|0; $mul = Math_imul($6, $sub)|0; $sub2 = (($5) - ($mul))|0; $9 = $_this$addr; $val = ((($9)) + 32|0); $10 = HEAP32[$val>>2]|0; $add = (($10) + ($sub2))|0; HEAP32[$val>>2] = $add; $11 = $r; $12 = $_fh$addr; $13 = $_fl$addr; $sub3 = (($12) - ($13))|0; $mul4 = Math_imul($11, $sub3)|0; $14 = $_this$addr; $rng5 = ((($14)) + 28|0); HEAP32[$rng5>>2] = $mul4; $20 = $_this$addr; _ec_enc_normalize($20); STACKTOP = sp;return; } else { $15 = $r; $16 = $_ft$addr; $17 = $_fh$addr; $sub6 = (($16) - ($17))|0; $mul7 = Math_imul($15, $sub6)|0; $18 = $_this$addr; $rng8 = ((($18)) + 28|0); $19 = HEAP32[$rng8>>2]|0; $sub9 = (($19) - ($mul7))|0; HEAP32[$rng8>>2] = $sub9; $20 = $_this$addr; _ec_enc_normalize($20); STACKTOP = sp;return; } } function _celt_udiv_83($n,$d) { $n = $n|0; $d = $d|0; var $0 = 0, $1 = 0, $d$addr = 0, $div = 0, $n$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $n$addr = $n; $d$addr = $d; $0 = $n$addr; $1 = $d$addr; $div = (($0>>>0) / ($1>>>0))&-1; STACKTOP = sp;return ($div|0); } function _ec_enc_normalize($_this) { $_this = $_this|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $_this$addr = 0, $add = 0, $and = 0, $cmp = 0, $nbits_total = 0, $rng = 0, $rng3 = 0, $shl = 0; var $shl4 = 0, $shr = 0, $val = 0, $val1 = 0, $val2 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $_this$addr = $_this; while(1) { $0 = $_this$addr; $rng = ((($0)) + 28|0); $1 = HEAP32[$rng>>2]|0; $cmp = ($1>>>0)<=(8388608); if (!($cmp)) { break; } $2 = $_this$addr; $3 = $_this$addr; $val = ((($3)) + 32|0); $4 = HEAP32[$val>>2]|0; $shr = $4 >>> 23; _ec_enc_carry_out($2,$shr); $5 = $_this$addr; $val1 = ((($5)) + 32|0); $6 = HEAP32[$val1>>2]|0; $shl = $6 << 8; $and = $shl & 2147483647; $7 = $_this$addr; $val2 = ((($7)) + 32|0); HEAP32[$val2>>2] = $and; $8 = $_this$addr; $rng3 = ((($8)) + 28|0); $9 = HEAP32[$rng3>>2]|0; $shl4 = $9 << 8; HEAP32[$rng3>>2] = $shl4; $10 = $_this$addr; $nbits_total = ((($10)) + 20|0); $11 = HEAP32[$nbits_total>>2]|0; $add = (($11) + 8)|0; HEAP32[$nbits_total>>2] = $add; } STACKTOP = sp;return; } function _ec_enc_carry_out($_this,$_c) { $_this = $_this|0; $_c = $_c|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; var $7 = 0, $8 = 0, $9 = 0, $_c$addr = 0, $_this$addr = 0, $add = 0, $add6 = 0, $and = 0, $and13 = 0, $call = 0, $call7 = 0, $carry = 0, $cmp = 0, $cmp1 = 0, $cmp11 = 0, $cmp4 = 0, $dec = 0, $error = 0, $error8 = 0, $ext = 0; var $ext10 = 0, $ext15 = 0, $inc = 0, $or = 0, $or9 = 0, $rem = 0, $rem14 = 0, $rem3 = 0, $shr = 0, $sym = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $_this$addr = $_this; $_c$addr = $_c; $0 = $_c$addr; $cmp = ($0|0)!=(255); if (!($cmp)) { $21 = $_this$addr; $ext15 = ((($21)) + 36|0); $22 = HEAP32[$ext15>>2]|0; $inc = (($22) + 1)|0; HEAP32[$ext15>>2] = $inc; STACKTOP = sp;return; } $1 = $_c$addr; $shr = $1 >> 8; $carry = $shr; $2 = $_this$addr; $rem = ((($2)) + 40|0); $3 = HEAP32[$rem>>2]|0; $cmp1 = ($3|0)>=(0); if ($cmp1) { $4 = $_this$addr; $5 = $_this$addr; $rem3 = ((($5)) + 40|0); $6 = HEAP32[$rem3>>2]|0; $7 = $carry; $add = (($6) + ($7))|0; $call = (_ec_write_byte($4,$add)|0); $8 = $_this$addr; $error = ((($8)) + 44|0); $9 = HEAP32[$error>>2]|0; $or = $9 | $call; HEAP32[$error>>2] = $or; } $10 = $_this$addr; $ext = ((($10)) + 36|0); $11 = HEAP32[$ext>>2]|0; $cmp4 = ($11>>>0)>(0); if ($cmp4) { $12 = $carry; $add6 = (255 + ($12))|0; $and = $add6 & 255; $sym = $and; while(1) { $13 = $_this$addr; $14 = $sym; $call7 = (_ec_write_byte($13,$14)|0); $15 = $_this$addr; $error8 = ((($15)) + 44|0); $16 = HEAP32[$error8>>2]|0; $or9 = $16 | $call7; HEAP32[$error8>>2] = $or9; $17 = $_this$addr; $ext10 = ((($17)) + 36|0); $18 = HEAP32[$ext10>>2]|0; $dec = (($18) + -1)|0; HEAP32[$ext10>>2] = $dec; $cmp11 = ($dec>>>0)>(0); if (!($cmp11)) { break; } } } $19 = $_c$addr; $and13 = $19 & 255; $20 = $_this$addr; $rem14 = ((($20)) + 40|0); HEAP32[$rem14>>2] = $and13; STACKTOP = sp;return; } function _ec_write_byte($_this,$_value) { $_this = $_this|0; $_value = $_value|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $_this$addr = 0, $_value$addr = 0, $add = 0, $arrayidx = 0, $cmp = 0, $conv = 0, $end_offs = 0, $inc = 0; var $offs = 0, $offs1 = 0, $retval = 0, $storage = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $_this$addr = $_this; $_value$addr = $_value; $0 = $_this$addr; $offs = ((($0)) + 24|0); $1 = HEAP32[$offs>>2]|0; $2 = $_this$addr; $end_offs = ((($2)) + 8|0); $3 = HEAP32[$end_offs>>2]|0; $add = (($1) + ($3))|0; $4 = $_this$addr; $storage = ((($4)) + 4|0); $5 = HEAP32[$storage>>2]|0; $cmp = ($add>>>0)>=($5>>>0); if ($cmp) { $retval = -1; $11 = $retval; STACKTOP = sp;return ($11|0); } else { $6 = $_value$addr; $conv = $6&255; $7 = $_this$addr; $8 = HEAP32[$7>>2]|0; $9 = $_this$addr; $offs1 = ((($9)) + 24|0); $10 = HEAP32[$offs1>>2]|0; $inc = (($10) + 1)|0; HEAP32[$offs1>>2] = $inc; $arrayidx = (($8) + ($10)|0); HEAP8[$arrayidx>>0] = $conv; $retval = 0; $11 = $retval; STACKTOP = sp;return ($11|0); } return (0)|0; } function _ec_encode_bin($_this,$_fl,$_fh,$_bits) { $_this = $_this|0; $_fl = $_fl|0; $_fh = $_fh|0; $_bits = $_bits|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; var $9 = 0, $_bits$addr = 0, $_fh$addr = 0, $_fl$addr = 0, $_this$addr = 0, $add = 0, $cmp = 0, $mul = 0, $mul4 = 0, $mul8 = 0, $r = 0, $rng = 0, $rng1 = 0, $rng5 = 0, $rng9 = 0, $shl = 0, $shl6 = 0, $shr = 0, $sub = 0, $sub10 = 0; var $sub2 = 0, $sub3 = 0, $sub7 = 0, $val = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $_this$addr = $_this; $_fl$addr = $_fl; $_fh$addr = $_fh; $_bits$addr = $_bits; $0 = $_this$addr; $rng = ((($0)) + 28|0); $1 = HEAP32[$rng>>2]|0; $2 = $_bits$addr; $shr = $1 >>> $2; $r = $shr; $3 = $_fl$addr; $cmp = ($3>>>0)>(0); if ($cmp) { $4 = $_this$addr; $rng1 = ((($4)) + 28|0); $5 = HEAP32[$rng1>>2]|0; $6 = $r; $7 = $_bits$addr; $shl = 1 << $7; $8 = $_fl$addr; $sub = (($shl) - ($8))|0; $mul = Math_imul($6, $sub)|0; $sub2 = (($5) - ($mul))|0; $9 = $_this$addr; $val = ((($9)) + 32|0); $10 = HEAP32[$val>>2]|0; $add = (($10) + ($sub2))|0; HEAP32[$val>>2] = $add; $11 = $r; $12 = $_fh$addr; $13 = $_fl$addr; $sub3 = (($12) - ($13))|0; $mul4 = Math_imul($11, $sub3)|0; $14 = $_this$addr; $rng5 = ((($14)) + 28|0); HEAP32[$rng5>>2] = $mul4; $20 = $_this$addr; _ec_enc_normalize($20); STACKTOP = sp;return; } else { $15 = $r; $16 = $_bits$addr; $shl6 = 1 << $16; $17 = $_fh$addr; $sub7 = (($shl6) - ($17))|0; $mul8 = Math_imul($15, $sub7)|0; $18 = $_this$addr; $rng9 = ((($18)) + 28|0); $19 = HEAP32[$rng9>>2]|0; $sub10 = (($19) - ($mul8))|0; HEAP32[$rng9>>2] = $sub10; $20 = $_this$addr; _ec_enc_normalize($20); STACKTOP = sp;return; } } function _ec_enc_bit_logp($_this,$_val,$_logp) { $_this = $_this|0; $_val = $_val|0; $_logp = $_logp|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $_logp$addr = 0, $_this$addr = 0, $_val$addr = 0; var $add = 0, $cond = 0, $l = 0, $r = 0, $rng = 0, $rng3 = 0, $s = 0, $shr = 0, $sub = 0, $tobool = 0, $tobool2 = 0, $val = 0, $val1 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $_this$addr = $_this; $_val$addr = $_val; $_logp$addr = $_logp; $0 = $_this$addr; $rng = ((($0)) + 28|0); $1 = HEAP32[$rng>>2]|0; $r = $1; $2 = $_this$addr; $val = ((($2)) + 32|0); $3 = HEAP32[$val>>2]|0; $l = $3; $4 = $r; $5 = $_logp$addr; $shr = $4 >>> $5; $s = $shr; $6 = $s; $7 = $r; $sub = (($7) - ($6))|0; $r = $sub; $8 = $_val$addr; $tobool = ($8|0)!=(0); if ($tobool) { $9 = $l; $10 = $r; $add = (($9) + ($10))|0; $11 = $_this$addr; $val1 = ((($11)) + 32|0); HEAP32[$val1>>2] = $add; } $12 = $_val$addr; $tobool2 = ($12|0)!=(0); $13 = $s; $14 = $r; $cond = $tobool2 ? $13 : $14; $15 = $_this$addr; $rng3 = ((($15)) + 28|0); HEAP32[$rng3>>2] = $cond; $16 = $_this$addr; _ec_enc_normalize($16); STACKTOP = sp;return; } function _ec_enc_icdf($_this,$_s,$_icdf,$_ftb) { $_this = $_this|0; $_s = $_s|0; $_icdf = $_icdf|0; $_ftb = $_ftb|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $_ftb$addr = 0, $_icdf$addr = 0, $_s$addr = 0, $_this$addr = 0, $add = 0, $arrayidx = 0, $arrayidx11 = 0, $arrayidx4 = 0, $arrayidx6 = 0, $cmp = 0, $conv = 0, $conv12 = 0, $conv5 = 0; var $conv7 = 0, $mul = 0, $mul13 = 0, $mul9 = 0, $r = 0, $rng = 0, $rng1 = 0, $rng10 = 0, $rng14 = 0, $shr = 0, $sub = 0, $sub15 = 0, $sub2 = 0, $sub3 = 0, $sub8 = 0, $val = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $_this$addr = $_this; $_s$addr = $_s; $_icdf$addr = $_icdf; $_ftb$addr = $_ftb; $0 = $_this$addr; $rng = ((($0)) + 28|0); $1 = HEAP32[$rng>>2]|0; $2 = $_ftb$addr; $shr = $1 >>> $2; $r = $shr; $3 = $_s$addr; $cmp = ($3|0)>(0); if ($cmp) { $4 = $_this$addr; $rng1 = ((($4)) + 28|0); $5 = HEAP32[$rng1>>2]|0; $6 = $r; $7 = $_icdf$addr; $8 = $_s$addr; $sub = (($8) - 1)|0; $arrayidx = (($7) + ($sub)|0); $9 = HEAP8[$arrayidx>>0]|0; $conv = $9&255; $mul = Math_imul($6, $conv)|0; $sub2 = (($5) - ($mul))|0; $10 = $_this$addr; $val = ((($10)) + 32|0); $11 = HEAP32[$val>>2]|0; $add = (($11) + ($sub2))|0; HEAP32[$val>>2] = $add; $12 = $r; $13 = $_icdf$addr; $14 = $_s$addr; $sub3 = (($14) - 1)|0; $arrayidx4 = (($13) + ($sub3)|0); $15 = HEAP8[$arrayidx4>>0]|0; $conv5 = $15&255; $16 = $_icdf$addr; $17 = $_s$addr; $arrayidx6 = (($16) + ($17)|0); $18 = HEAP8[$arrayidx6>>0]|0; $conv7 = $18&255; $sub8 = (($conv5) - ($conv7))|0; $mul9 = Math_imul($12, $sub8)|0; $19 = $_this$addr; $rng10 = ((($19)) + 28|0); HEAP32[$rng10>>2] = $mul9; $26 = $_this$addr; _ec_enc_normalize($26); STACKTOP = sp;return; } else { $20 = $r; $21 = $_icdf$addr; $22 = $_s$addr; $arrayidx11 = (($21) + ($22)|0); $23 = HEAP8[$arrayidx11>>0]|0; $conv12 = $23&255; $mul13 = Math_imul($20, $conv12)|0; $24 = $_this$addr; $rng14 = ((($24)) + 28|0); $25 = HEAP32[$rng14>>2]|0; $sub15 = (($25) - ($mul13))|0; HEAP32[$rng14>>2] = $sub15; $26 = $_this$addr; _ec_enc_normalize($26); STACKTOP = sp;return; } } function _ec_enc_uint($_this,$_fl,$_ft) { $_this = $_this|0; $_fl = $_fl|0; $_ft = $_ft|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; var $9 = 0, $_fl$addr = 0, $_ft$addr = 0, $_this$addr = 0, $add = 0, $add3 = 0, $add5 = 0, $add6 = 0, $and = 0, $cmp = 0, $dec = 0, $fl = 0, $ft = 0, $ftb = 0, $shl = 0, $shr = 0, $shr2 = 0, $sub = 0, $sub1 = 0, $sub4 = 0; var label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $_this$addr = $_this; $_fl$addr = $_fl; $_ft$addr = $_ft; $0 = $_ft$addr; $dec = (($0) + -1)|0; $_ft$addr = $dec; $1 = $_ft$addr; $2 = (Math_clz32(($1|0))|0); $sub = (32 - ($2))|0; $ftb = $sub; $3 = $ftb; $cmp = ($3|0)>(8); if ($cmp) { $4 = $ftb; $sub1 = (($4) - 8)|0; $ftb = $sub1; $5 = $_ft$addr; $6 = $ftb; $shr = $5 >>> $6; $add = (($shr) + 1)|0; $ft = $add; $7 = $_fl$addr; $8 = $ftb; $shr2 = $7 >>> $8; $fl = $shr2; $9 = $_this$addr; $10 = $fl; $11 = $fl; $add3 = (($11) + 1)|0; $12 = $ft; _ec_encode($9,$10,$add3,$12); $13 = $_this$addr; $14 = $_fl$addr; $15 = $ftb; $shl = 1 << $15; $sub4 = (($shl) - 1)|0; $and = $14 & $sub4; $16 = $ftb; _ec_enc_bits($13,$and,$16); STACKTOP = sp;return; } else { $17 = $_this$addr; $18 = $_fl$addr; $19 = $_fl$addr; $add5 = (($19) + 1)|0; $20 = $_ft$addr; $add6 = (($20) + 1)|0; _ec_encode($17,$18,$add5,$add6); STACKTOP = sp;return; } } function _ec_enc_bits($_this,$_fl,$_bits) { $_this = $_this|0; $_fl = $_fl|0; $_bits = $_bits|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $_bits$addr = 0, $_fl$addr = 0, $_this$addr = 0, $add = 0, $add3 = 0, $add6 = 0, $and = 0, $call = 0, $cmp = 0, $cmp1 = 0, $end_window = 0, $end_window4 = 0, $error = 0, $nbits_total = 0, $nend_bits = 0; var $nend_bits5 = 0, $or = 0, $or2 = 0, $shl = 0, $shr = 0, $sub = 0, $used = 0, $window = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $_this$addr = $_this; $_fl$addr = $_fl; $_bits$addr = $_bits; $0 = $_this$addr; $end_window = ((($0)) + 12|0); $1 = HEAP32[$end_window>>2]|0; $window = $1; $2 = $_this$addr; $nend_bits = ((($2)) + 16|0); $3 = HEAP32[$nend_bits>>2]|0; $used = $3; $4 = $used; $5 = $_bits$addr; $add = (($4) + ($5))|0; $cmp = ($add>>>0)>(32); if ($cmp) { while(1) { $6 = $_this$addr; $7 = $window; $and = $7 & 255; $call = (_ec_write_byte_at_end($6,$and)|0); $8 = $_this$addr; $error = ((($8)) + 44|0); $9 = HEAP32[$error>>2]|0; $or = $9 | $call; HEAP32[$error>>2] = $or; $10 = $window; $shr = $10 >>> 8; $window = $shr; $11 = $used; $sub = (($11) - 8)|0; $used = $sub; $12 = $used; $cmp1 = ($12|0)>=(8); if (!($cmp1)) { break; } } } $13 = $_fl$addr; $14 = $used; $shl = $13 << $14; $15 = $window; $or2 = $15 | $shl; $window = $or2; $16 = $_bits$addr; $17 = $used; $add3 = (($17) + ($16))|0; $used = $add3; $18 = $window; $19 = $_this$addr; $end_window4 = ((($19)) + 12|0); HEAP32[$end_window4>>2] = $18; $20 = $used; $21 = $_this$addr; $nend_bits5 = ((($21)) + 16|0); HEAP32[$nend_bits5>>2] = $20; $22 = $_bits$addr; $23 = $_this$addr; $nbits_total = ((($23)) + 20|0); $24 = HEAP32[$nbits_total>>2]|0; $add6 = (($24) + ($22))|0; HEAP32[$nbits_total>>2] = $add6; STACKTOP = sp;return; } function _ec_write_byte_at_end($_this,$_value) { $_this = $_this|0; $_value = $_value|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $_this$addr = 0, $_value$addr = 0, $add = 0, $arrayidx = 0, $cmp = 0, $conv = 0; var $end_offs = 0, $end_offs2 = 0, $inc = 0, $offs = 0, $retval = 0, $storage = 0, $storage1 = 0, $sub = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $_this$addr = $_this; $_value$addr = $_value; $0 = $_this$addr; $offs = ((($0)) + 24|0); $1 = HEAP32[$offs>>2]|0; $2 = $_this$addr; $end_offs = ((($2)) + 8|0); $3 = HEAP32[$end_offs>>2]|0; $add = (($1) + ($3))|0; $4 = $_this$addr; $storage = ((($4)) + 4|0); $5 = HEAP32[$storage>>2]|0; $cmp = ($add>>>0)>=($5>>>0); if ($cmp) { $retval = -1; $13 = $retval; STACKTOP = sp;return ($13|0); } else { $6 = $_value$addr; $conv = $6&255; $7 = $_this$addr; $8 = HEAP32[$7>>2]|0; $9 = $_this$addr; $storage1 = ((($9)) + 4|0); $10 = HEAP32[$storage1>>2]|0; $11 = $_this$addr; $end_offs2 = ((($11)) + 8|0); $12 = HEAP32[$end_offs2>>2]|0; $inc = (($12) + 1)|0; HEAP32[$end_offs2>>2] = $inc; $sub = (($10) - ($inc))|0; $arrayidx = (($8) + ($sub)|0); HEAP8[$arrayidx>>0] = $conv; $retval = 0; $13 = $retval; STACKTOP = sp;return ($13|0); } return (0)|0; } function _ec_enc_patch_initial_bits($_this,$_val,$_nbits) { $_this = $_this|0; $_val = $_val|0; $_nbits = $_nbits|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $_nbits$addr = 0, $_this$addr = 0, $_val$addr = 0, $add = 0, $and = 0, $and12 = 0, $and22 = 0, $cmp = 0, $cmp17 = 0, $cmp7 = 0, $conv = 0, $conv4 = 0; var $error = 0, $mask = 0, $neg = 0, $neg11 = 0, $neg21 = 0, $offs = 0, $or = 0, $or14 = 0, $or24 = 0, $rem = 0, $rem10 = 0, $rem15 = 0, $rng = 0, $shift = 0, $shl = 0, $shl13 = 0, $shl2 = 0, $shl20 = 0, $shl23 = 0, $shl3 = 0; var $shr = 0, $sub = 0, $sub1 = 0, $val = 0, $val25 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $_this$addr = $_this; $_val$addr = $_val; $_nbits$addr = $_nbits; $0 = $_nbits$addr; $sub = (8 - ($0))|0; $shift = $sub; $1 = $_nbits$addr; $shl = 1 << $1; $sub1 = (($shl) - 1)|0; $2 = $shift; $shl2 = $sub1 << $2; $mask = $shl2; $3 = $_this$addr; $offs = ((($3)) + 24|0); $4 = HEAP32[$offs>>2]|0; $cmp = ($4>>>0)>(0); $5 = $_this$addr; if ($cmp) { $6 = HEAP32[$5>>2]|0; $7 = HEAP8[$6>>0]|0; $conv = $7&255; $8 = $mask; $neg = $8 ^ -1; $and = $conv & $neg; $9 = $_val$addr; $10 = $shift; $shl3 = $9 << $10; $or = $and | $shl3; $conv4 = $or&255; $11 = $_this$addr; $12 = HEAP32[$11>>2]|0; HEAP8[$12>>0] = $conv4; STACKTOP = sp;return; } $rem = ((($5)) + 40|0); $13 = HEAP32[$rem>>2]|0; $cmp7 = ($13|0)>=(0); $14 = $_this$addr; if ($cmp7) { $rem10 = ((($14)) + 40|0); $15 = HEAP32[$rem10>>2]|0; $16 = $mask; $neg11 = $16 ^ -1; $and12 = $15 & $neg11; $17 = $_val$addr; $18 = $shift; $shl13 = $17 << $18; $or14 = $and12 | $shl13; $19 = $_this$addr; $rem15 = ((($19)) + 40|0); HEAP32[$rem15>>2] = $or14; STACKTOP = sp;return; } $rng = ((($14)) + 28|0); $20 = HEAP32[$rng>>2]|0; $21 = $_nbits$addr; $shr = -2147483648 >>> $21; $cmp17 = ($20>>>0)<=($shr>>>0); $22 = $_this$addr; if ($cmp17) { $val = ((($22)) + 32|0); $23 = HEAP32[$val>>2]|0; $24 = $mask; $shl20 = $24 << 23; $neg21 = $shl20 ^ -1; $and22 = $23 & $neg21; $25 = $_val$addr; $26 = $shift; $add = (23 + ($26))|0; $shl23 = $25 << $add; $or24 = $and22 | $shl23; $27 = $_this$addr; $val25 = ((($27)) + 32|0); HEAP32[$val25>>2] = $or24; STACKTOP = sp;return; } else { $error = ((($22)) + 44|0); HEAP32[$error>>2] = -1; STACKTOP = sp;return; } } function _ec_enc_shrink($_this,$_size) { $_this = $_this|0; $_size = $_size|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $_size$addr = 0, $_this$addr = 0, $add = 0, $add$ptr = 0, $add$ptr1 = 0, $add$ptr12 = 0, $add$ptr15 = 0, $add$ptr18 = 0, $add$ptr3 = 0, $add$ptr6 = 0, $add$ptr9 = 0, $end_offs = 0, $end_offs10 = 0, $end_offs16 = 0; var $end_offs4 = 0, $end_offs7 = 0, $idx$neg = 0, $idx$neg11 = 0, $idx$neg17 = 0, $idx$neg5 = 0, $mul = 0, $mul19 = 0, $storage = 0, $storage14 = 0, $storage20 = 0, $sub$ptr$lhs$cast = 0, $sub$ptr$rhs$cast = 0, $sub$ptr$sub = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $_this$addr = $_this; $_size$addr = $_size; $0 = $_this$addr; $1 = HEAP32[$0>>2]|0; $2 = $_size$addr; $add$ptr = (($1) + ($2)|0); $3 = $_this$addr; $end_offs = ((($3)) + 8|0); $4 = HEAP32[$end_offs>>2]|0; $idx$neg = (0 - ($4))|0; $add$ptr1 = (($add$ptr) + ($idx$neg)|0); $5 = $_this$addr; $6 = HEAP32[$5>>2]|0; $7 = $_this$addr; $storage = ((($7)) + 4|0); $8 = HEAP32[$storage>>2]|0; $add$ptr3 = (($6) + ($8)|0); $9 = $_this$addr; $end_offs4 = ((($9)) + 8|0); $10 = HEAP32[$end_offs4>>2]|0; $idx$neg5 = (0 - ($10))|0; $add$ptr6 = (($add$ptr3) + ($idx$neg5)|0); $11 = $_this$addr; $end_offs7 = ((($11)) + 8|0); $12 = HEAP32[$end_offs7>>2]|0; $mul = $12; $13 = $_this$addr; $14 = HEAP32[$13>>2]|0; $15 = $_size$addr; $add$ptr9 = (($14) + ($15)|0); $16 = $_this$addr; $end_offs10 = ((($16)) + 8|0); $17 = HEAP32[$end_offs10>>2]|0; $idx$neg11 = (0 - ($17))|0; $add$ptr12 = (($add$ptr9) + ($idx$neg11)|0); $18 = $_this$addr; $19 = HEAP32[$18>>2]|0; $20 = $_this$addr; $storage14 = ((($20)) + 4|0); $21 = HEAP32[$storage14>>2]|0; $add$ptr15 = (($19) + ($21)|0); $22 = $_this$addr; $end_offs16 = ((($22)) + 8|0); $23 = HEAP32[$end_offs16>>2]|0; $idx$neg17 = (0 - ($23))|0; $add$ptr18 = (($add$ptr15) + ($idx$neg17)|0); $sub$ptr$lhs$cast = $add$ptr12; $sub$ptr$rhs$cast = $add$ptr18; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $mul19 = 0; $add = (($mul) + ($mul19))|0; _memmove(($add$ptr1|0),($add$ptr6|0),($add|0))|0; $24 = $_size$addr; $25 = $_this$addr; $storage20 = ((($25)) + 4|0); HEAP32[$storage20>>2] = $24; STACKTOP = sp;return; } function _ec_enc_done($_this) { $_this = $_this|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $8 = 0, $9 = 0, $_this$addr = 0, $add = 0, $add$ptr = 0; var $add4 = 0, $add41 = 0, $add7 = 0, $and = 0, $and12 = 0, $and21 = 0, $and48 = 0, $and9 = 0, $arrayidx = 0, $call = 0, $cmp = 0, $cmp10 = 0, $cmp14 = 0, $cmp15 = 0, $cmp19 = 0, $cmp31 = 0, $cmp35 = 0, $cmp43 = 0, $cmp44 = 0, $conv = 0; var $conv51 = 0, $conv57 = 0, $conv59 = 0, $end = 0, $end_offs = 0, $end_offs33 = 0, $end_offs40 = 0, $end_offs54 = 0, $end_window = 0, $error = 0, $error26 = 0, $error37 = 0, $error49 = 0, $ext = 0, $inc = 0, $l = 0, $msk = 0, $mul = 0, $neg = 0, $neg8 = 0; var $nend_bits = 0, $offs = 0, $offs28 = 0, $offs39 = 0, $or = 0, $or22 = 0, $or58 = 0, $rem = 0, $rng = 0, $rng3 = 0, $shl = 0, $shl46 = 0, $shr = 0, $shr11 = 0, $shr23 = 0, $shr5 = 0, $storage = 0, $storage34 = 0, $storage42 = 0, $storage53 = 0; var $sub = 0, $sub1 = 0, $sub13 = 0, $sub24 = 0, $sub29 = 0, $sub30 = 0, $sub38 = 0, $sub47 = 0, $sub55 = 0, $sub56 = 0, $tobool = 0, $used = 0, $val = 0, $val2 = 0, $val6 = 0, $window = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $_this$addr = $_this; $0 = $_this$addr; $rng = ((($0)) + 28|0); $1 = HEAP32[$rng>>2]|0; $2 = (Math_clz32(($1|0))|0); $sub = (32 - ($2))|0; $sub1 = (32 - ($sub))|0; $l = $sub1; $3 = $l; $shr = 2147483647 >>> $3; $msk = $shr; $4 = $_this$addr; $val = ((($4)) + 32|0); $5 = HEAP32[$val>>2]|0; $6 = $msk; $add = (($5) + ($6))|0; $7 = $msk; $neg = $7 ^ -1; $and = $add & $neg; $end = $and; $8 = $end; $9 = $msk; $or = $8 | $9; $10 = $_this$addr; $val2 = ((($10)) + 32|0); $11 = HEAP32[$val2>>2]|0; $12 = $_this$addr; $rng3 = ((($12)) + 28|0); $13 = HEAP32[$rng3>>2]|0; $add4 = (($11) + ($13))|0; $cmp = ($or>>>0)>=($add4>>>0); if ($cmp) { $14 = $l; $inc = (($14) + 1)|0; $l = $inc; $15 = $msk; $shr5 = $15 >>> 1; $msk = $shr5; $16 = $_this$addr; $val6 = ((($16)) + 32|0); $17 = HEAP32[$val6>>2]|0; $18 = $msk; $add7 = (($17) + ($18))|0; $19 = $msk; $neg8 = $19 ^ -1; $and9 = $add7 & $neg8; $end = $and9; } while(1) { $20 = $l; $cmp10 = ($20|0)>(0); $21 = $_this$addr; if (!($cmp10)) { break; } $22 = $end; $shr11 = $22 >>> 23; _ec_enc_carry_out($21,$shr11); $23 = $end; $shl = $23 << 8; $and12 = $shl & 2147483647; $end = $and12; $24 = $l; $sub13 = (($24) - 8)|0; $l = $sub13; } $rem = ((($21)) + 40|0); $25 = HEAP32[$rem>>2]|0; $cmp14 = ($25|0)>=(0); if ($cmp14) { label = 7; } else { $26 = $_this$addr; $ext = ((($26)) + 36|0); $27 = HEAP32[$ext>>2]|0; $cmp15 = ($27>>>0)>(0); if ($cmp15) { label = 7; } } if ((label|0) == 7) { $28 = $_this$addr; _ec_enc_carry_out($28,0); } $29 = $_this$addr; $end_window = ((($29)) + 12|0); $30 = HEAP32[$end_window>>2]|0; $window = $30; $31 = $_this$addr; $nend_bits = ((($31)) + 16|0); $32 = HEAP32[$nend_bits>>2]|0; $used = $32; while(1) { $33 = $used; $cmp19 = ($33|0)>=(8); $34 = $_this$addr; if (!($cmp19)) { break; } $35 = $window; $and21 = $35 & 255; $call = (_ec_write_byte_at_end($34,$and21)|0); $36 = $_this$addr; $error = ((($36)) + 44|0); $37 = HEAP32[$error>>2]|0; $or22 = $37 | $call; HEAP32[$error>>2] = $or22; $38 = $window; $shr23 = $38 >>> 8; $window = $shr23; $39 = $used; $sub24 = (($39) - 8)|0; $used = $sub24; } $error26 = ((($34)) + 44|0); $40 = HEAP32[$error26>>2]|0; $tobool = ($40|0)!=(0); if ($tobool) { STACKTOP = sp;return; } $41 = $_this$addr; $42 = HEAP32[$41>>2]|0; $43 = $_this$addr; $offs = ((($43)) + 24|0); $44 = HEAP32[$offs>>2]|0; $add$ptr = (($42) + ($44)|0); $45 = $_this$addr; $storage = ((($45)) + 4|0); $46 = HEAP32[$storage>>2]|0; $47 = $_this$addr; $offs28 = ((($47)) + 24|0); $48 = HEAP32[$offs28>>2]|0; $sub29 = (($46) - ($48))|0; $49 = $_this$addr; $end_offs = ((($49)) + 8|0); $50 = HEAP32[$end_offs>>2]|0; $sub30 = (($sub29) - ($50))|0; $mul = $sub30; _memset(($add$ptr|0),0,($mul|0))|0; $51 = $used; $cmp31 = ($51|0)>(0); if (!($cmp31)) { STACKTOP = sp;return; } $52 = $_this$addr; $end_offs33 = ((($52)) + 8|0); $53 = HEAP32[$end_offs33>>2]|0; $54 = $_this$addr; $storage34 = ((($54)) + 4|0); $55 = HEAP32[$storage34>>2]|0; $cmp35 = ($53>>>0)>=($55>>>0); if ($cmp35) { $56 = $_this$addr; $error37 = ((($56)) + 44|0); HEAP32[$error37>>2] = -1; STACKTOP = sp;return; } $57 = $l; $sub38 = (0 - ($57))|0; $l = $sub38; $58 = $_this$addr; $offs39 = ((($58)) + 24|0); $59 = HEAP32[$offs39>>2]|0; $60 = $_this$addr; $end_offs40 = ((($60)) + 8|0); $61 = HEAP32[$end_offs40>>2]|0; $add41 = (($59) + ($61))|0; $62 = $_this$addr; $storage42 = ((($62)) + 4|0); $63 = HEAP32[$storage42>>2]|0; $cmp43 = ($add41>>>0)>=($63>>>0); if ($cmp43) { $64 = $l; $65 = $used; $cmp44 = ($64|0)<($65|0); if ($cmp44) { $66 = $l; $shl46 = 1 << $66; $sub47 = (($shl46) - 1)|0; $67 = $window; $and48 = $67 & $sub47; $window = $and48; $68 = $_this$addr; $error49 = ((($68)) + 44|0); HEAP32[$error49>>2] = -1; } } $69 = $window; $conv = $69&255; $conv51 = $conv&255; $70 = $_this$addr; $71 = HEAP32[$70>>2]|0; $72 = $_this$addr; $storage53 = ((($72)) + 4|0); $73 = HEAP32[$storage53>>2]|0; $74 = $_this$addr; $end_offs54 = ((($74)) + 8|0); $75 = HEAP32[$end_offs54>>2]|0; $sub55 = (($73) - ($75))|0; $sub56 = (($sub55) - 1)|0; $arrayidx = (($71) + ($sub56)|0); $76 = HEAP8[$arrayidx>>0]|0; $conv57 = $76&255; $or58 = $conv57 | $conv51; $conv59 = $or58&255; HEAP8[$arrayidx>>0] = $conv59; STACKTOP = sp;return; } function _opus_fft_impl($st,$fout) { $st = $st|0; $fout = $fout|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $7 = 0, $8 = 0; var $9 = 0, $L = 0, $add = 0, $add10 = 0, $arrayidx11 = 0, $arrayidx16 = 0, $arrayidx26 = 0, $arrayidx3 = 0, $arrayidx30 = 0, $arrayidx32 = 0, $arrayidx34 = 0, $arrayidx35 = 0, $arrayidx37 = 0, $arrayidx39 = 0, $arrayidx41 = 0, $arrayidx43 = 0, $arrayidx6 = 0, $arrayidx8 = 0, $cmp = 0, $cmp12 = 0; var $cmp19 = 0, $cmp21 = 0, $cond = 0, $conv = 0, $conv17 = 0, $conv27 = 0, $conv31 = 0, $conv7 = 0, $dec = 0, $factors = 0, $factors14 = 0, $factors23 = 0, $factors28 = 0, $factors4 = 0, $fout$addr = 0, $fstride = 0, $i = 0, $inc = 0, $m = 0, $m2 = 0; var $mul = 0, $mul15 = 0, $mul24 = 0, $mul29 = 0, $mul5 = 0, $mul9 = 0, $p = 0, $shift = 0, $shift1 = 0, $shift2 = 0, $shl = 0, $shl38 = 0, $shl42 = 0, $st$addr = 0, $sub = 0, $sub18 = 0, $sub25 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $fstride = sp + 8|0; $st$addr = $st; $fout$addr = $fout; $0 = $st$addr; $shift1 = ((($0)) + 8|0); $1 = HEAP32[$shift1>>2]|0; $cmp = ($1|0)>(0); if ($cmp) { $2 = $st$addr; $shift2 = ((($2)) + 8|0); $3 = HEAP32[$shift2>>2]|0; $cond = $3; } else { $cond = 0; } $shift = $cond; HEAP32[$fstride>>2] = 1; $L = 0; while(1) { $4 = $st$addr; $factors = ((($4)) + 12|0); $5 = $L; $mul = $5<<1; $arrayidx3 = (($factors) + ($mul<<1)|0); $6 = HEAP16[$arrayidx3>>1]|0; $conv = $6 << 16 >> 16; $p = $conv; $7 = $st$addr; $factors4 = ((($7)) + 12|0); $8 = $L; $mul5 = $8<<1; $add = (($mul5) + 1)|0; $arrayidx6 = (($factors4) + ($add<<1)|0); $9 = HEAP16[$arrayidx6>>1]|0; $conv7 = $9 << 16 >> 16; $m = $conv7; $10 = $L; $arrayidx8 = (($fstride) + ($10<<2)|0); $11 = HEAP32[$arrayidx8>>2]|0; $12 = $p; $mul9 = Math_imul($11, $12)|0; $13 = $L; $add10 = (($13) + 1)|0; $arrayidx11 = (($fstride) + ($add10<<2)|0); HEAP32[$arrayidx11>>2] = $mul9; $14 = $L; $inc = (($14) + 1)|0; $L = $inc; $15 = $m; $cmp12 = ($15|0)!=(1); if (!($cmp12)) { break; } } $16 = $st$addr; $factors14 = ((($16)) + 12|0); $17 = $L; $mul15 = $17<<1; $sub = (($mul15) - 1)|0; $arrayidx16 = (($factors14) + ($sub<<1)|0); $18 = HEAP16[$arrayidx16>>1]|0; $conv17 = $18 << 16 >> 16; $m = $conv17; $19 = $L; $sub18 = (($19) - 1)|0; $i = $sub18; while(1) { $20 = $i; $cmp19 = ($20|0)>=(0); if (!($cmp19)) { break; } $21 = $i; $cmp21 = ($21|0)!=(0); if ($cmp21) { $22 = $st$addr; $factors23 = ((($22)) + 12|0); $23 = $i; $mul24 = $23<<1; $sub25 = (($mul24) - 1)|0; $arrayidx26 = (($factors23) + ($sub25<<1)|0); $24 = HEAP16[$arrayidx26>>1]|0; $conv27 = $24 << 16 >> 16; $m2 = $conv27; } else { $m2 = 1; } $25 = $st$addr; $factors28 = ((($25)) + 12|0); $26 = $i; $mul29 = $26<<1; $arrayidx30 = (($factors28) + ($mul29<<1)|0); $27 = HEAP16[$arrayidx30>>1]|0; $conv31 = $27 << 16 >> 16; switch ($conv31|0) { case 2: { $28 = $fout$addr; $29 = $m; $30 = $i; $arrayidx32 = (($fstride) + ($30<<2)|0); $31 = HEAP32[$arrayidx32>>2]|0; _kf_bfly2($28,$29,$31); break; } case 4: { $32 = $fout$addr; $33 = $i; $arrayidx34 = (($fstride) + ($33<<2)|0); $34 = HEAP32[$arrayidx34>>2]|0; $35 = $shift; $shl = $34 << $35; $36 = $st$addr; $37 = $m; $38 = $i; $arrayidx35 = (($fstride) + ($38<<2)|0); $39 = HEAP32[$arrayidx35>>2]|0; $40 = $m2; _kf_bfly4($32,$shl,$36,$37,$39,$40); break; } case 3: { $41 = $fout$addr; $42 = $i; $arrayidx37 = (($fstride) + ($42<<2)|0); $43 = HEAP32[$arrayidx37>>2]|0; $44 = $shift; $shl38 = $43 << $44; $45 = $st$addr; $46 = $m; $47 = $i; $arrayidx39 = (($fstride) + ($47<<2)|0); $48 = HEAP32[$arrayidx39>>2]|0; $49 = $m2; _kf_bfly3($41,$shl38,$45,$46,$48,$49); break; } case 5: { $50 = $fout$addr; $51 = $i; $arrayidx41 = (($fstride) + ($51<<2)|0); $52 = HEAP32[$arrayidx41>>2]|0; $53 = $shift; $shl42 = $52 << $53; $54 = $st$addr; $55 = $m; $56 = $i; $arrayidx43 = (($fstride) + ($56<<2)|0); $57 = HEAP32[$arrayidx43>>2]|0; $58 = $m2; _kf_bfly5($50,$shl42,$54,$55,$57,$58); break; } default: { } } $59 = $m2; $m = $59; $60 = $i; $dec = (($60) + -1)|0; $i = $dec; } STACKTOP = sp;return; } function _kf_bfly2($Fout,$m,$N) { $Fout = $Fout|0; $m = $m|0; $N = $N|0; var $0 = 0, $1 = 0, $10 = 0.0, $11 = 0, $12 = 0.0, $13 = 0, $14 = 0.0, $15 = 0.0, $16 = 0, $17 = 0.0, $18 = 0, $19 = 0.0, $2 = 0, $20 = 0, $21 = 0.0, $22 = 0.0, $23 = 0, $24 = 0.0, $25 = 0, $26 = 0.0; var $27 = 0.0, $28 = 0, $29 = 0.0, $3 = 0, $30 = 0.0, $31 = 0, $32 = 0, $33 = 0.0, $34 = 0.0, $35 = 0, $36 = 0.0, $37 = 0, $38 = 0.0, $39 = 0.0, $4 = 0, $40 = 0, $41 = 0.0, $42 = 0, $43 = 0.0, $44 = 0; var $45 = 0.0, $46 = 0, $47 = 0.0, $48 = 0.0, $49 = 0, $5 = 0.0, $50 = 0, $51 = 0.0, $52 = 0.0, $53 = 0, $54 = 0.0, $55 = 0, $56 = 0.0, $57 = 0.0, $58 = 0, $59 = 0.0, $6 = 0.0, $60 = 0, $61 = 0.0, $62 = 0; var $63 = 0.0, $64 = 0.0, $65 = 0, $66 = 0.0, $67 = 0, $68 = 0.0, $69 = 0.0, $7 = 0, $70 = 0, $71 = 0.0, $72 = 0.0, $73 = 0, $74 = 0, $75 = 0.0, $76 = 0.0, $77 = 0, $78 = 0.0, $79 = 0, $8 = 0, $80 = 0.0; var $81 = 0.0, $82 = 0, $83 = 0.0, $84 = 0, $85 = 0, $9 = 0.0, $Fout$addr = 0, $Fout2 = 0, $N$addr = 0, $add = 0.0, $add$ptr = 0, $add$ptr127 = 0, $add121 = 0.0, $add125 = 0.0, $add18 = 0.0, $add24 = 0.0, $add51 = 0.0, $add55 = 0.0, $add82 = 0.0, $add86 = 0.0; var $add99 = 0.0, $arrayidx104 = 0, $arrayidx108 = 0, $arrayidx110 = 0, $arrayidx114 = 0, $arrayidx119 = 0, $arrayidx123 = 0, $arrayidx20 = 0, $arrayidx22 = 0, $arrayidx26 = 0, $arrayidx28 = 0, $arrayidx34 = 0, $arrayidx38 = 0, $arrayidx40 = 0, $arrayidx44 = 0, $arrayidx49 = 0, $arrayidx53 = 0, $arrayidx57 = 0, $arrayidx60 = 0, $arrayidx65 = 0; var $arrayidx69 = 0, $arrayidx71 = 0, $arrayidx75 = 0, $arrayidx80 = 0, $arrayidx84 = 0, $arrayidx88 = 0, $arrayidx90 = 0, $arrayidx95 = 0, $arrayidx97 = 0, $cmp = 0, $i = 0, $i10 = 0, $i102 = 0, $i111 = 0, $i112 = 0, $i115 = 0, $i122 = 0, $i124 = 0, $i15 = 0, $i17 = 0; var $i23 = 0, $i27 = 0, $i32 = 0, $i41 = 0, $i42 = 0, $i45 = 0, $i52 = 0, $i54 = 0, $i58 = 0, $i6 = 0, $i63 = 0, $i7 = 0, $i72 = 0, $i73 = 0, $i76 = 0, $i83 = 0, $i85 = 0, $i89 = 0, $i96 = 0, $inc = 0; var $m$addr = 0, $mul = 0.0, $mul101 = 0.0, $mul31 = 0.0, $mul93 = 0.0, $sub = 0.0, $sub100 = 0.0, $sub107 = 0.0, $sub113 = 0.0, $sub30 = 0.0, $sub37 = 0.0, $sub43 = 0.0, $sub62 = 0.0, $sub68 = 0.0, $sub74 = 0.0, $sub8 = 0.0, $sub92 = 0.0, $t = 0, $tw = 0.0, label = 0; var sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $t = sp; $Fout$addr = $Fout; $m$addr = $m; $N$addr = $N; $tw = 0.70710676908493042; $i = 0; while(1) { $0 = $i; $1 = $N$addr; $cmp = ($0|0)<($1|0); if (!($cmp)) { break; } $2 = $Fout$addr; $add$ptr = ((($2)) + 32|0); $Fout2 = $add$ptr; $3 = $Fout2; ;HEAP32[$t>>2]=HEAP32[$3>>2]|0;HEAP32[$t+4>>2]=HEAP32[$3+4>>2]|0; $4 = $Fout$addr; $5 = +HEAPF32[$4>>2]; $6 = +HEAPF32[$t>>2]; $sub = $5 - $6; $7 = $Fout2; HEAPF32[$7>>2] = $sub; $8 = $Fout$addr; $i6 = ((($8)) + 4|0); $9 = +HEAPF32[$i6>>2]; $i7 = ((($t)) + 4|0); $10 = +HEAPF32[$i7>>2]; $sub8 = $9 - $10; $11 = $Fout2; $i10 = ((($11)) + 4|0); HEAPF32[$i10>>2] = $sub8; $12 = +HEAPF32[$t>>2]; $13 = $Fout$addr; $14 = +HEAPF32[$13>>2]; $add = $14 + $12; HEAPF32[$13>>2] = $add; $i15 = ((($t)) + 4|0); $15 = +HEAPF32[$i15>>2]; $16 = $Fout$addr; $i17 = ((($16)) + 4|0); $17 = +HEAPF32[$i17>>2]; $add18 = $17 + $15; HEAPF32[$i17>>2] = $add18; $18 = $Fout2; $arrayidx20 = ((($18)) + 8|0); $19 = +HEAPF32[$arrayidx20>>2]; $20 = $Fout2; $arrayidx22 = ((($20)) + 8|0); $i23 = ((($arrayidx22)) + 4|0); $21 = +HEAPF32[$i23>>2]; $add24 = $19 + $21; $22 = $tw; $mul = $add24 * $22; HEAPF32[$t>>2] = $mul; $23 = $Fout2; $arrayidx26 = ((($23)) + 8|0); $i27 = ((($arrayidx26)) + 4|0); $24 = +HEAPF32[$i27>>2]; $25 = $Fout2; $arrayidx28 = ((($25)) + 8|0); $26 = +HEAPF32[$arrayidx28>>2]; $sub30 = $24 - $26; $27 = $tw; $mul31 = $sub30 * $27; $i32 = ((($t)) + 4|0); HEAPF32[$i32>>2] = $mul31; $28 = $Fout$addr; $arrayidx34 = ((($28)) + 8|0); $29 = +HEAPF32[$arrayidx34>>2]; $30 = +HEAPF32[$t>>2]; $sub37 = $29 - $30; $31 = $Fout2; $arrayidx38 = ((($31)) + 8|0); HEAPF32[$arrayidx38>>2] = $sub37; $32 = $Fout$addr; $arrayidx40 = ((($32)) + 8|0); $i41 = ((($arrayidx40)) + 4|0); $33 = +HEAPF32[$i41>>2]; $i42 = ((($t)) + 4|0); $34 = +HEAPF32[$i42>>2]; $sub43 = $33 - $34; $35 = $Fout2; $arrayidx44 = ((($35)) + 8|0); $i45 = ((($arrayidx44)) + 4|0); HEAPF32[$i45>>2] = $sub43; $36 = +HEAPF32[$t>>2]; $37 = $Fout$addr; $arrayidx49 = ((($37)) + 8|0); $38 = +HEAPF32[$arrayidx49>>2]; $add51 = $38 + $36; HEAPF32[$arrayidx49>>2] = $add51; $i52 = ((($t)) + 4|0); $39 = +HEAPF32[$i52>>2]; $40 = $Fout$addr; $arrayidx53 = ((($40)) + 8|0); $i54 = ((($arrayidx53)) + 4|0); $41 = +HEAPF32[$i54>>2]; $add55 = $41 + $39; HEAPF32[$i54>>2] = $add55; $42 = $Fout2; $arrayidx57 = ((($42)) + 16|0); $i58 = ((($arrayidx57)) + 4|0); $43 = +HEAPF32[$i58>>2]; HEAPF32[$t>>2] = $43; $44 = $Fout2; $arrayidx60 = ((($44)) + 16|0); $45 = +HEAPF32[$arrayidx60>>2]; $sub62 = - $45; $i63 = ((($t)) + 4|0); HEAPF32[$i63>>2] = $sub62; $46 = $Fout$addr; $arrayidx65 = ((($46)) + 16|0); $47 = +HEAPF32[$arrayidx65>>2]; $48 = +HEAPF32[$t>>2]; $sub68 = $47 - $48; $49 = $Fout2; $arrayidx69 = ((($49)) + 16|0); HEAPF32[$arrayidx69>>2] = $sub68; $50 = $Fout$addr; $arrayidx71 = ((($50)) + 16|0); $i72 = ((($arrayidx71)) + 4|0); $51 = +HEAPF32[$i72>>2]; $i73 = ((($t)) + 4|0); $52 = +HEAPF32[$i73>>2]; $sub74 = $51 - $52; $53 = $Fout2; $arrayidx75 = ((($53)) + 16|0); $i76 = ((($arrayidx75)) + 4|0); HEAPF32[$i76>>2] = $sub74; $54 = +HEAPF32[$t>>2]; $55 = $Fout$addr; $arrayidx80 = ((($55)) + 16|0); $56 = +HEAPF32[$arrayidx80>>2]; $add82 = $56 + $54; HEAPF32[$arrayidx80>>2] = $add82; $i83 = ((($t)) + 4|0); $57 = +HEAPF32[$i83>>2]; $58 = $Fout$addr; $arrayidx84 = ((($58)) + 16|0); $i85 = ((($arrayidx84)) + 4|0); $59 = +HEAPF32[$i85>>2]; $add86 = $59 + $57; HEAPF32[$i85>>2] = $add86; $60 = $Fout2; $arrayidx88 = ((($60)) + 24|0); $i89 = ((($arrayidx88)) + 4|0); $61 = +HEAPF32[$i89>>2]; $62 = $Fout2; $arrayidx90 = ((($62)) + 24|0); $63 = +HEAPF32[$arrayidx90>>2]; $sub92 = $61 - $63; $64 = $tw; $mul93 = $sub92 * $64; HEAPF32[$t>>2] = $mul93; $65 = $Fout2; $arrayidx95 = ((($65)) + 24|0); $i96 = ((($arrayidx95)) + 4|0); $66 = +HEAPF32[$i96>>2]; $67 = $Fout2; $arrayidx97 = ((($67)) + 24|0); $68 = +HEAPF32[$arrayidx97>>2]; $add99 = $66 + $68; $sub100 = - $add99; $69 = $tw; $mul101 = $sub100 * $69; $i102 = ((($t)) + 4|0); HEAPF32[$i102>>2] = $mul101; $70 = $Fout$addr; $arrayidx104 = ((($70)) + 24|0); $71 = +HEAPF32[$arrayidx104>>2]; $72 = +HEAPF32[$t>>2]; $sub107 = $71 - $72; $73 = $Fout2; $arrayidx108 = ((($73)) + 24|0); HEAPF32[$arrayidx108>>2] = $sub107; $74 = $Fout$addr; $arrayidx110 = ((($74)) + 24|0); $i111 = ((($arrayidx110)) + 4|0); $75 = +HEAPF32[$i111>>2]; $i112 = ((($t)) + 4|0); $76 = +HEAPF32[$i112>>2]; $sub113 = $75 - $76; $77 = $Fout2; $arrayidx114 = ((($77)) + 24|0); $i115 = ((($arrayidx114)) + 4|0); HEAPF32[$i115>>2] = $sub113; $78 = +HEAPF32[$t>>2]; $79 = $Fout$addr; $arrayidx119 = ((($79)) + 24|0); $80 = +HEAPF32[$arrayidx119>>2]; $add121 = $80 + $78; HEAPF32[$arrayidx119>>2] = $add121; $i122 = ((($t)) + 4|0); $81 = +HEAPF32[$i122>>2]; $82 = $Fout$addr; $arrayidx123 = ((($82)) + 24|0); $i124 = ((($arrayidx123)) + 4|0); $83 = +HEAPF32[$i124>>2]; $add125 = $83 + $81; HEAPF32[$i124>>2] = $add125; $84 = $Fout$addr; $add$ptr127 = ((($84)) + 64|0); $Fout$addr = $add$ptr127; $85 = $i; $inc = (($85) + 1)|0; $i = $inc; } STACKTOP = sp;return; } function _kf_bfly4($Fout,$fstride,$st,$m,$N,$mm) { $Fout = $Fout|0; $fstride = $fstride|0; $st = $st|0; $m = $m|0; $N = $N|0; $mm = $mm|0; var $0 = 0, $1 = 0, $10 = 0.0, $100 = 0, $101 = 0, $102 = 0.0, $103 = 0, $104 = 0.0, $105 = 0, $106 = 0, $107 = 0.0, $108 = 0, $109 = 0.0, $11 = 0, $110 = 0, $111 = 0, $112 = 0.0, $113 = 0, $114 = 0.0, $115 = 0; var $116 = 0, $117 = 0.0, $118 = 0, $119 = 0.0, $12 = 0.0, $120 = 0, $121 = 0, $122 = 0.0, $123 = 0, $124 = 0.0, $125 = 0, $126 = 0, $127 = 0.0, $128 = 0, $129 = 0.0, $13 = 0, $130 = 0, $131 = 0, $132 = 0.0, $133 = 0; var $134 = 0.0, $135 = 0, $136 = 0.0, $137 = 0.0, $138 = 0, $139 = 0.0, $14 = 0.0, $140 = 0.0, $141 = 0.0, $142 = 0, $143 = 0.0, $144 = 0.0, $145 = 0, $146 = 0.0, $147 = 0.0, $148 = 0.0, $149 = 0.0, $15 = 0, $150 = 0.0, $151 = 0.0; var $152 = 0.0, $153 = 0.0, $154 = 0.0, $155 = 0, $156 = 0.0, $157 = 0.0, $158 = 0, $159 = 0, $16 = 0.0, $160 = 0, $161 = 0.0, $162 = 0.0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; var $170 = 0, $171 = 0.0, $172 = 0, $173 = 0.0, $174 = 0.0, $175 = 0, $176 = 0.0, $177 = 0.0, $178 = 0.0, $179 = 0, $18 = 0.0, $180 = 0, $181 = 0.0, $182 = 0.0, $183 = 0, $184 = 0, $185 = 0.0, $186 = 0.0, $187 = 0, $188 = 0; var $189 = 0.0, $19 = 0, $190 = 0.0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $2 = 0, $20 = 0.0, $21 = 0, $22 = 0.0, $23 = 0, $24 = 0.0, $25 = 0, $26 = 0.0, $27 = 0, $28 = 0.0, $29 = 0.0, $3 = 0; var $30 = 0, $31 = 0, $32 = 0.0, $33 = 0.0, $34 = 0, $35 = 0.0, $36 = 0, $37 = 0.0, $38 = 0.0, $39 = 0, $4 = 0.0, $40 = 0.0, $41 = 0, $42 = 0.0, $43 = 0, $44 = 0.0, $45 = 0, $46 = 0.0, $47 = 0, $48 = 0.0; var $49 = 0.0, $5 = 0, $50 = 0.0, $51 = 0, $52 = 0.0, $53 = 0.0, $54 = 0, $55 = 0.0, $56 = 0.0, $57 = 0, $58 = 0.0, $59 = 0.0, $6 = 0.0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0; var $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0.0, $78 = 0, $79 = 0.0, $8 = 0.0, $80 = 0, $81 = 0, $82 = 0.0, $83 = 0, $84 = 0.0; var $85 = 0, $86 = 0, $87 = 0.0, $88 = 0, $89 = 0.0, $9 = 0, $90 = 0, $91 = 0, $92 = 0.0, $93 = 0, $94 = 0.0, $95 = 0, $96 = 0, $97 = 0.0, $98 = 0, $99 = 0.0, $Fout$addr = 0, $Fout_beg = 0, $N$addr = 0, $add = 0.0; var $add$ptr = 0, $add$ptr237 = 0, $add$ptr239 = 0, $add$ptr241 = 0, $add$ptr91 = 0, $add115 = 0.0, $add139 = 0.0, $add16 = 0.0, $add163 = 0.0, $add185 = 0.0, $add189 = 0.0, $add196 = 0.0, $add203 = 0.0, $add23 = 0.0, $add246 = 0.0, $add250 = 0.0, $add256 = 0.0, $add277 = 0.0, $add29 = 0.0, $add47 = 0.0; var $add50 = 0.0, $add68 = 0.0, $add83 = 0.0, $arrayidx = 0, $arrayidx10 = 0, $arrayidx100 = 0, $arrayidx107 = 0, $arrayidx111 = 0, $arrayidx120 = 0, $arrayidx124 = 0, $arrayidx129 = 0, $arrayidx13 = 0, $arrayidx131 = 0, $arrayidx135 = 0, $arrayidx140 = 0, $arrayidx144 = 0, $arrayidx148 = 0, $arrayidx153 = 0, $arrayidx155 = 0, $arrayidx159 = 0; var $arrayidx164 = 0, $arrayidx169 = 0, $arrayidx172 = 0, $arrayidx175 = 0, $arrayidx178 = 0, $arrayidx182 = 0, $arrayidx186 = 0, $arrayidx19 = 0, $arrayidx194 = 0, $arrayidx197 = 0, $arrayidx201 = 0, $arrayidx204 = 0, $arrayidx21 = 0, $arrayidx210 = 0, $arrayidx213 = 0, $arrayidx217 = 0, $arrayidx220 = 0, $arrayidx225 = 0, $arrayidx228 = 0, $arrayidx231 = 0; var $arrayidx234 = 0, $arrayidx243 = 0, $arrayidx247 = 0, $arrayidx25 = 0, $arrayidx252 = 0, $arrayidx254 = 0, $arrayidx257 = 0, $arrayidx259 = 0, $arrayidx261 = 0, $arrayidx264 = 0, $arrayidx266 = 0, $arrayidx268 = 0, $arrayidx27 = 0, $arrayidx271 = 0, $arrayidx273 = 0, $arrayidx275 = 0, $arrayidx278 = 0, $arrayidx36 = 0, $arrayidx41 = 0, $arrayidx5 = 0; var $arrayidx53 = 0, $arrayidx55 = 0, $arrayidx59 = 0, $arrayidx61 = 0, $arrayidx69 = 0, $arrayidx74 = 0, $arrayidx79 = 0, $arrayidx84 = 0, $arrayidx96 = 0, $cmp = 0, $cmp1 = 0, $cmp88 = 0, $cmp93 = 0, $fstride$addr = 0, $i = 0, $i101 = 0, $i102 = 0, $i109 = 0, $i112 = 0, $i117 = 0; var $i125 = 0, $i126 = 0, $i133 = 0, $i136 = 0, $i14 = 0, $i141 = 0, $i149 = 0, $i15 = 0, $i150 = 0, $i157 = 0, $i160 = 0, $i165 = 0, $i174 = 0, $i176 = 0, $i179 = 0, $i187 = 0, $i188 = 0, $i200 = 0, $i202 = 0, $i205 = 0; var $i216 = 0, $i218 = 0, $i221 = 0, $i230 = 0, $i232 = 0, $i235 = 0, $i248 = 0, $i249 = 0, $i255 = 0, $i26 = 0, $i260 = 0, $i265 = 0, $i269 = 0, $i274 = 0, $i279 = 0, $i28 = 0, $i30 = 0, $i38 = 0, $i39 = 0, $i4 = 0; var $i42 = 0, $i48 = 0, $i49 = 0, $i6 = 0, $i60 = 0, $i62 = 0, $i64 = 0, $i67 = 0, $i71 = 0, $i75 = 0, $i77 = 0, $i8 = 0, $i81 = 0, $i85 = 0, $inc = 0, $inc281 = 0, $inc284 = 0, $incdec$ptr = 0, $j = 0, $m$addr = 0; var $m2 = 0, $m3 = 0, $mm$addr = 0, $mul = 0, $mul103 = 0.0, $mul110 = 0.0, $mul114 = 0.0, $mul123 = 0.0, $mul127 = 0.0, $mul134 = 0.0, $mul138 = 0.0, $mul147 = 0.0, $mul151 = 0.0, $mul158 = 0.0, $mul162 = 0.0, $mul238 = 0, $mul240 = 0, $mul86 = 0, $mul90 = 0, $mul99 = 0.0; var $scratch = 0, $scratch0 = 0, $scratch1 = 0, $st$addr = 0, $sub = 0.0, $sub104 = 0.0, $sub128 = 0.0, $sub152 = 0.0, $sub171 = 0.0, $sub177 = 0.0, $sub212 = 0.0, $sub219 = 0.0, $sub227 = 0.0, $sub233 = 0.0, $sub263 = 0.0, $sub270 = 0.0, $sub35 = 0.0, $sub40 = 0.0, $sub57 = 0.0, $sub63 = 0.0; var $sub7 = 0.0, $sub73 = 0.0, $sub78 = 0.0, $tw1 = 0, $tw2 = 0, $tw3 = 0, $twiddles = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 128|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(128|0); $scratch0 = sp + 88|0; $scratch1 = sp + 80|0; $scratch = sp + 24|0; $Fout$addr = $Fout; $fstride$addr = $fstride; $st$addr = $st; $m$addr = $m; $N$addr = $N; $mm$addr = $mm; $0 = $m$addr; $cmp = ($0|0)==(1); if ($cmp) { $i = 0; while(1) { $1 = $i; $2 = $N$addr; $cmp1 = ($1|0)<($2|0); if (!($cmp1)) { break; } $3 = $Fout$addr; $4 = +HEAPF32[$3>>2]; $5 = $Fout$addr; $arrayidx = ((($5)) + 16|0); $6 = +HEAPF32[$arrayidx>>2]; $sub = $4 - $6; HEAPF32[$scratch0>>2] = $sub; $7 = $Fout$addr; $i4 = ((($7)) + 4|0); $8 = +HEAPF32[$i4>>2]; $9 = $Fout$addr; $arrayidx5 = ((($9)) + 16|0); $i6 = ((($arrayidx5)) + 4|0); $10 = +HEAPF32[$i6>>2]; $sub7 = $8 - $10; $i8 = ((($scratch0)) + 4|0); HEAPF32[$i8>>2] = $sub7; $11 = $Fout$addr; $arrayidx10 = ((($11)) + 16|0); $12 = +HEAPF32[$arrayidx10>>2]; $13 = $Fout$addr; $14 = +HEAPF32[$13>>2]; $add = $14 + $12; HEAPF32[$13>>2] = $add; $15 = $Fout$addr; $arrayidx13 = ((($15)) + 16|0); $i14 = ((($arrayidx13)) + 4|0); $16 = +HEAPF32[$i14>>2]; $17 = $Fout$addr; $i15 = ((($17)) + 4|0); $18 = +HEAPF32[$i15>>2]; $add16 = $18 + $16; HEAPF32[$i15>>2] = $add16; $19 = $Fout$addr; $arrayidx19 = ((($19)) + 8|0); $20 = +HEAPF32[$arrayidx19>>2]; $21 = $Fout$addr; $arrayidx21 = ((($21)) + 24|0); $22 = +HEAPF32[$arrayidx21>>2]; $add23 = $20 + $22; HEAPF32[$scratch1>>2] = $add23; $23 = $Fout$addr; $arrayidx25 = ((($23)) + 8|0); $i26 = ((($arrayidx25)) + 4|0); $24 = +HEAPF32[$i26>>2]; $25 = $Fout$addr; $arrayidx27 = ((($25)) + 24|0); $i28 = ((($arrayidx27)) + 4|0); $26 = +HEAPF32[$i28>>2]; $add29 = $24 + $26; $i30 = ((($scratch1)) + 4|0); HEAPF32[$i30>>2] = $add29; $27 = $Fout$addr; $28 = +HEAPF32[$27>>2]; $29 = +HEAPF32[$scratch1>>2]; $sub35 = $28 - $29; $30 = $Fout$addr; $arrayidx36 = ((($30)) + 16|0); HEAPF32[$arrayidx36>>2] = $sub35; $31 = $Fout$addr; $i38 = ((($31)) + 4|0); $32 = +HEAPF32[$i38>>2]; $i39 = ((($scratch1)) + 4|0); $33 = +HEAPF32[$i39>>2]; $sub40 = $32 - $33; $34 = $Fout$addr; $arrayidx41 = ((($34)) + 16|0); $i42 = ((($arrayidx41)) + 4|0); HEAPF32[$i42>>2] = $sub40; $35 = +HEAPF32[$scratch1>>2]; $36 = $Fout$addr; $37 = +HEAPF32[$36>>2]; $add47 = $37 + $35; HEAPF32[$36>>2] = $add47; $i48 = ((($scratch1)) + 4|0); $38 = +HEAPF32[$i48>>2]; $39 = $Fout$addr; $i49 = ((($39)) + 4|0); $40 = +HEAPF32[$i49>>2]; $add50 = $40 + $38; HEAPF32[$i49>>2] = $add50; $41 = $Fout$addr; $arrayidx53 = ((($41)) + 8|0); $42 = +HEAPF32[$arrayidx53>>2]; $43 = $Fout$addr; $arrayidx55 = ((($43)) + 24|0); $44 = +HEAPF32[$arrayidx55>>2]; $sub57 = $42 - $44; HEAPF32[$scratch1>>2] = $sub57; $45 = $Fout$addr; $arrayidx59 = ((($45)) + 8|0); $i60 = ((($arrayidx59)) + 4|0); $46 = +HEAPF32[$i60>>2]; $47 = $Fout$addr; $arrayidx61 = ((($47)) + 24|0); $i62 = ((($arrayidx61)) + 4|0); $48 = +HEAPF32[$i62>>2]; $sub63 = $46 - $48; $i64 = ((($scratch1)) + 4|0); HEAPF32[$i64>>2] = $sub63; $49 = +HEAPF32[$scratch0>>2]; $i67 = ((($scratch1)) + 4|0); $50 = +HEAPF32[$i67>>2]; $add68 = $49 + $50; $51 = $Fout$addr; $arrayidx69 = ((($51)) + 8|0); HEAPF32[$arrayidx69>>2] = $add68; $i71 = ((($scratch0)) + 4|0); $52 = +HEAPF32[$i71>>2]; $53 = +HEAPF32[$scratch1>>2]; $sub73 = $52 - $53; $54 = $Fout$addr; $arrayidx74 = ((($54)) + 8|0); $i75 = ((($arrayidx74)) + 4|0); HEAPF32[$i75>>2] = $sub73; $55 = +HEAPF32[$scratch0>>2]; $i77 = ((($scratch1)) + 4|0); $56 = +HEAPF32[$i77>>2]; $sub78 = $55 - $56; $57 = $Fout$addr; $arrayidx79 = ((($57)) + 24|0); HEAPF32[$arrayidx79>>2] = $sub78; $i81 = ((($scratch0)) + 4|0); $58 = +HEAPF32[$i81>>2]; $59 = +HEAPF32[$scratch1>>2]; $add83 = $58 + $59; $60 = $Fout$addr; $arrayidx84 = ((($60)) + 24|0); $i85 = ((($arrayidx84)) + 4|0); HEAPF32[$i85>>2] = $add83; $61 = $Fout$addr; $add$ptr = ((($61)) + 32|0); $Fout$addr = $add$ptr; $62 = $i; $inc = (($62) + 1)|0; $i = $inc; } STACKTOP = sp;return; } $63 = $m$addr; $mul = $63<<1; $m2 = $mul; $64 = $m$addr; $mul86 = ($64*3)|0; $m3 = $mul86; $65 = $Fout$addr; $Fout_beg = $65; $i = 0; while(1) { $66 = $i; $67 = $N$addr; $cmp88 = ($66|0)<($67|0); if (!($cmp88)) { break; } $68 = $Fout_beg; $69 = $i; $70 = $mm$addr; $mul90 = Math_imul($69, $70)|0; $add$ptr91 = (($68) + ($mul90<<3)|0); $Fout$addr = $add$ptr91; $71 = $st$addr; $twiddles = ((($71)) + 48|0); $72 = HEAP32[$twiddles>>2]|0; $tw1 = $72; $tw2 = $72; $tw3 = $72; $j = 0; while(1) { $73 = $j; $74 = $m$addr; $cmp93 = ($73|0)<($74|0); if (!($cmp93)) { break; } $75 = $Fout$addr; $76 = $m$addr; $arrayidx96 = (($75) + ($76<<3)|0); $77 = +HEAPF32[$arrayidx96>>2]; $78 = $tw1; $79 = +HEAPF32[$78>>2]; $mul99 = $77 * $79; $80 = $Fout$addr; $81 = $m$addr; $arrayidx100 = (($80) + ($81<<3)|0); $i101 = ((($arrayidx100)) + 4|0); $82 = +HEAPF32[$i101>>2]; $83 = $tw1; $i102 = ((($83)) + 4|0); $84 = +HEAPF32[$i102>>2]; $mul103 = $82 * $84; $sub104 = $mul99 - $mul103; HEAPF32[$scratch>>2] = $sub104; $85 = $Fout$addr; $86 = $m$addr; $arrayidx107 = (($85) + ($86<<3)|0); $87 = +HEAPF32[$arrayidx107>>2]; $88 = $tw1; $i109 = ((($88)) + 4|0); $89 = +HEAPF32[$i109>>2]; $mul110 = $87 * $89; $90 = $Fout$addr; $91 = $m$addr; $arrayidx111 = (($90) + ($91<<3)|0); $i112 = ((($arrayidx111)) + 4|0); $92 = +HEAPF32[$i112>>2]; $93 = $tw1; $94 = +HEAPF32[$93>>2]; $mul114 = $92 * $94; $add115 = $mul110 + $mul114; $i117 = ((($scratch)) + 4|0); HEAPF32[$i117>>2] = $add115; $95 = $Fout$addr; $96 = $m2; $arrayidx120 = (($95) + ($96<<3)|0); $97 = +HEAPF32[$arrayidx120>>2]; $98 = $tw2; $99 = +HEAPF32[$98>>2]; $mul123 = $97 * $99; $100 = $Fout$addr; $101 = $m2; $arrayidx124 = (($100) + ($101<<3)|0); $i125 = ((($arrayidx124)) + 4|0); $102 = +HEAPF32[$i125>>2]; $103 = $tw2; $i126 = ((($103)) + 4|0); $104 = +HEAPF32[$i126>>2]; $mul127 = $102 * $104; $sub128 = $mul123 - $mul127; $arrayidx129 = ((($scratch)) + 8|0); HEAPF32[$arrayidx129>>2] = $sub128; $105 = $Fout$addr; $106 = $m2; $arrayidx131 = (($105) + ($106<<3)|0); $107 = +HEAPF32[$arrayidx131>>2]; $108 = $tw2; $i133 = ((($108)) + 4|0); $109 = +HEAPF32[$i133>>2]; $mul134 = $107 * $109; $110 = $Fout$addr; $111 = $m2; $arrayidx135 = (($110) + ($111<<3)|0); $i136 = ((($arrayidx135)) + 4|0); $112 = +HEAPF32[$i136>>2]; $113 = $tw2; $114 = +HEAPF32[$113>>2]; $mul138 = $112 * $114; $add139 = $mul134 + $mul138; $arrayidx140 = ((($scratch)) + 8|0); $i141 = ((($arrayidx140)) + 4|0); HEAPF32[$i141>>2] = $add139; $115 = $Fout$addr; $116 = $m3; $arrayidx144 = (($115) + ($116<<3)|0); $117 = +HEAPF32[$arrayidx144>>2]; $118 = $tw3; $119 = +HEAPF32[$118>>2]; $mul147 = $117 * $119; $120 = $Fout$addr; $121 = $m3; $arrayidx148 = (($120) + ($121<<3)|0); $i149 = ((($arrayidx148)) + 4|0); $122 = +HEAPF32[$i149>>2]; $123 = $tw3; $i150 = ((($123)) + 4|0); $124 = +HEAPF32[$i150>>2]; $mul151 = $122 * $124; $sub152 = $mul147 - $mul151; $arrayidx153 = ((($scratch)) + 16|0); HEAPF32[$arrayidx153>>2] = $sub152; $125 = $Fout$addr; $126 = $m3; $arrayidx155 = (($125) + ($126<<3)|0); $127 = +HEAPF32[$arrayidx155>>2]; $128 = $tw3; $i157 = ((($128)) + 4|0); $129 = +HEAPF32[$i157>>2]; $mul158 = $127 * $129; $130 = $Fout$addr; $131 = $m3; $arrayidx159 = (($130) + ($131<<3)|0); $i160 = ((($arrayidx159)) + 4|0); $132 = +HEAPF32[$i160>>2]; $133 = $tw3; $134 = +HEAPF32[$133>>2]; $mul162 = $132 * $134; $add163 = $mul158 + $mul162; $arrayidx164 = ((($scratch)) + 16|0); $i165 = ((($arrayidx164)) + 4|0); HEAPF32[$i165>>2] = $add163; $135 = $Fout$addr; $136 = +HEAPF32[$135>>2]; $arrayidx169 = ((($scratch)) + 8|0); $137 = +HEAPF32[$arrayidx169>>2]; $sub171 = $136 - $137; $arrayidx172 = ((($scratch)) + 40|0); HEAPF32[$arrayidx172>>2] = $sub171; $138 = $Fout$addr; $i174 = ((($138)) + 4|0); $139 = +HEAPF32[$i174>>2]; $arrayidx175 = ((($scratch)) + 8|0); $i176 = ((($arrayidx175)) + 4|0); $140 = +HEAPF32[$i176>>2]; $sub177 = $139 - $140; $arrayidx178 = ((($scratch)) + 40|0); $i179 = ((($arrayidx178)) + 4|0); HEAPF32[$i179>>2] = $sub177; $arrayidx182 = ((($scratch)) + 8|0); $141 = +HEAPF32[$arrayidx182>>2]; $142 = $Fout$addr; $143 = +HEAPF32[$142>>2]; $add185 = $143 + $141; HEAPF32[$142>>2] = $add185; $arrayidx186 = ((($scratch)) + 8|0); $i187 = ((($arrayidx186)) + 4|0); $144 = +HEAPF32[$i187>>2]; $145 = $Fout$addr; $i188 = ((($145)) + 4|0); $146 = +HEAPF32[$i188>>2]; $add189 = $146 + $144; HEAPF32[$i188>>2] = $add189; $147 = +HEAPF32[$scratch>>2]; $arrayidx194 = ((($scratch)) + 16|0); $148 = +HEAPF32[$arrayidx194>>2]; $add196 = $147 + $148; $arrayidx197 = ((($scratch)) + 24|0); HEAPF32[$arrayidx197>>2] = $add196; $i200 = ((($scratch)) + 4|0); $149 = +HEAPF32[$i200>>2]; $arrayidx201 = ((($scratch)) + 16|0); $i202 = ((($arrayidx201)) + 4|0); $150 = +HEAPF32[$i202>>2]; $add203 = $149 + $150; $arrayidx204 = ((($scratch)) + 24|0); $i205 = ((($arrayidx204)) + 4|0); HEAPF32[$i205>>2] = $add203; $151 = +HEAPF32[$scratch>>2]; $arrayidx210 = ((($scratch)) + 16|0); $152 = +HEAPF32[$arrayidx210>>2]; $sub212 = $151 - $152; $arrayidx213 = ((($scratch)) + 32|0); HEAPF32[$arrayidx213>>2] = $sub212; $i216 = ((($scratch)) + 4|0); $153 = +HEAPF32[$i216>>2]; $arrayidx217 = ((($scratch)) + 16|0); $i218 = ((($arrayidx217)) + 4|0); $154 = +HEAPF32[$i218>>2]; $sub219 = $153 - $154; $arrayidx220 = ((($scratch)) + 32|0); $i221 = ((($arrayidx220)) + 4|0); HEAPF32[$i221>>2] = $sub219; $155 = $Fout$addr; $156 = +HEAPF32[$155>>2]; $arrayidx225 = ((($scratch)) + 24|0); $157 = +HEAPF32[$arrayidx225>>2]; $sub227 = $156 - $157; $158 = $Fout$addr; $159 = $m2; $arrayidx228 = (($158) + ($159<<3)|0); HEAPF32[$arrayidx228>>2] = $sub227; $160 = $Fout$addr; $i230 = ((($160)) + 4|0); $161 = +HEAPF32[$i230>>2]; $arrayidx231 = ((($scratch)) + 24|0); $i232 = ((($arrayidx231)) + 4|0); $162 = +HEAPF32[$i232>>2]; $sub233 = $161 - $162; $163 = $Fout$addr; $164 = $m2; $arrayidx234 = (($163) + ($164<<3)|0); $i235 = ((($arrayidx234)) + 4|0); HEAPF32[$i235>>2] = $sub233; $165 = $fstride$addr; $166 = $tw1; $add$ptr237 = (($166) + ($165<<3)|0); $tw1 = $add$ptr237; $167 = $fstride$addr; $mul238 = $167<<1; $168 = $tw2; $add$ptr239 = (($168) + ($mul238<<3)|0); $tw2 = $add$ptr239; $169 = $fstride$addr; $mul240 = ($169*3)|0; $170 = $tw3; $add$ptr241 = (($170) + ($mul240<<3)|0); $tw3 = $add$ptr241; $arrayidx243 = ((($scratch)) + 24|0); $171 = +HEAPF32[$arrayidx243>>2]; $172 = $Fout$addr; $173 = +HEAPF32[$172>>2]; $add246 = $173 + $171; HEAPF32[$172>>2] = $add246; $arrayidx247 = ((($scratch)) + 24|0); $i248 = ((($arrayidx247)) + 4|0); $174 = +HEAPF32[$i248>>2]; $175 = $Fout$addr; $i249 = ((($175)) + 4|0); $176 = +HEAPF32[$i249>>2]; $add250 = $176 + $174; HEAPF32[$i249>>2] = $add250; $arrayidx252 = ((($scratch)) + 40|0); $177 = +HEAPF32[$arrayidx252>>2]; $arrayidx254 = ((($scratch)) + 32|0); $i255 = ((($arrayidx254)) + 4|0); $178 = +HEAPF32[$i255>>2]; $add256 = $177 + $178; $179 = $Fout$addr; $180 = $m$addr; $arrayidx257 = (($179) + ($180<<3)|0); HEAPF32[$arrayidx257>>2] = $add256; $arrayidx259 = ((($scratch)) + 40|0); $i260 = ((($arrayidx259)) + 4|0); $181 = +HEAPF32[$i260>>2]; $arrayidx261 = ((($scratch)) + 32|0); $182 = +HEAPF32[$arrayidx261>>2]; $sub263 = $181 - $182; $183 = $Fout$addr; $184 = $m$addr; $arrayidx264 = (($183) + ($184<<3)|0); $i265 = ((($arrayidx264)) + 4|0); HEAPF32[$i265>>2] = $sub263; $arrayidx266 = ((($scratch)) + 40|0); $185 = +HEAPF32[$arrayidx266>>2]; $arrayidx268 = ((($scratch)) + 32|0); $i269 = ((($arrayidx268)) + 4|0); $186 = +HEAPF32[$i269>>2]; $sub270 = $185 - $186; $187 = $Fout$addr; $188 = $m3; $arrayidx271 = (($187) + ($188<<3)|0); HEAPF32[$arrayidx271>>2] = $sub270; $arrayidx273 = ((($scratch)) + 40|0); $i274 = ((($arrayidx273)) + 4|0); $189 = +HEAPF32[$i274>>2]; $arrayidx275 = ((($scratch)) + 32|0); $190 = +HEAPF32[$arrayidx275>>2]; $add277 = $189 + $190; $191 = $Fout$addr; $192 = $m3; $arrayidx278 = (($191) + ($192<<3)|0); $i279 = ((($arrayidx278)) + 4|0); HEAPF32[$i279>>2] = $add277; $193 = $Fout$addr; $incdec$ptr = ((($193)) + 8|0); $Fout$addr = $incdec$ptr; $194 = $j; $inc281 = (($194) + 1)|0; $j = $inc281; } $195 = $i; $inc284 = (($195) + 1)|0; $i = $inc284; } STACKTOP = sp;return; } function _kf_bfly3($Fout,$fstride,$st,$m,$N,$mm) { $Fout = $Fout|0; $fstride = $fstride|0; $st = $st|0; $m = $m|0; $N = $N|0; $mm = $mm|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0.0, $101 = 0.0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0.0, $107 = 0.0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $12 = 0, $13 = 0, $14 = 0; var $15 = 0, $16 = 0.0, $17 = 0, $18 = 0.0, $19 = 0, $2 = 0, $20 = 0, $21 = 0.0, $22 = 0, $23 = 0.0, $24 = 0, $25 = 0, $26 = 0.0, $27 = 0, $28 = 0.0, $29 = 0, $3 = 0, $30 = 0, $31 = 0.0, $32 = 0; var $33 = 0.0, $34 = 0, $35 = 0, $36 = 0.0, $37 = 0, $38 = 0.0, $39 = 0, $4 = 0, $40 = 0, $41 = 0.0, $42 = 0, $43 = 0.0, $44 = 0, $45 = 0, $46 = 0.0, $47 = 0, $48 = 0.0, $49 = 0, $5 = 0, $50 = 0; var $51 = 0.0, $52 = 0, $53 = 0.0, $54 = 0.0, $55 = 0.0, $56 = 0.0, $57 = 0.0, $58 = 0.0, $59 = 0.0, $6 = 0, $60 = 0.0, $61 = 0.0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0.0, $68 = 0.0, $69 = 0; var $7 = 0, $70 = 0, $71 = 0, $72 = 0.0, $73 = 0.0, $74 = 0, $75 = 0, $76 = 0.0, $77 = 0.0, $78 = 0.0, $79 = 0.0, $8 = 0, $80 = 0.0, $81 = 0, $82 = 0.0, $83 = 0.0, $84 = 0, $85 = 0.0, $86 = 0, $87 = 0; var $88 = 0.0, $89 = 0.0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0.0, $95 = 0.0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $Fout$addr = 0, $Fout_beg = 0, $N$addr = 0, $add = 0.0, $add$ptr = 0, $add$ptr80 = 0, $add$ptr82 = 0; var $add111 = 0.0, $add115 = 0.0, $add121 = 0.0, $add142 = 0.0, $add44 = 0.0, $add53 = 0.0, $add60 = 0.0, $arrayidx = 0, $arrayidx108 = 0, $arrayidx112 = 0, $arrayidx117 = 0, $arrayidx12 = 0, $arrayidx122 = 0, $arrayidx124 = 0, $arrayidx129 = 0, $arrayidx131 = 0, $arrayidx136 = 0, $arrayidx138 = 0, $arrayidx14 = 0, $arrayidx143 = 0; var $arrayidx18 = 0, $arrayidx22 = 0, $arrayidx25 = 0, $arrayidx29 = 0, $arrayidx34 = 0, $arrayidx36 = 0, $arrayidx40 = 0, $arrayidx45 = 0, $arrayidx49 = 0, $arrayidx5 = 0, $arrayidx51 = 0, $arrayidx54 = 0, $arrayidx56 = 0, $arrayidx58 = 0, $arrayidx61 = 0, $arrayidx65 = 0, $arrayidx67 = 0, $arrayidx72 = 0, $arrayidx74 = 0, $arrayidx8 = 0; var $arrayidx84 = 0, $arrayidx88 = 0, $arrayidx91 = 0, $arrayidx95 = 0, $cmp = 0, $dec = 0, $epi3 = 0, $fstride$addr = 0, $i = 0, $i10 = 0, $i102 = 0, $i104 = 0, $i113 = 0, $i114 = 0, $i120 = 0, $i125 = 0, $i130 = 0, $i134 = 0, $i139 = 0, $i144 = 0; var $i16 = 0, $i19 = 0, $i23 = 0, $i30 = 0, $i31 = 0, $i38 = 0, $i41 = 0, $i46 = 0, $i57 = 0, $i59 = 0, $i62 = 0, $i73 = 0, $i75 = 0, $i78 = 0, $i9 = 0, $i90 = 0, $i92 = 0, $i96 = 0, $i98 = 0, $inc = 0; var $incdec$ptr = 0, $k = 0, $m$addr = 0, $m2 = 0, $mm$addr = 0, $mul = 0, $mul1 = 0, $mul101 = 0.0, $mul105 = 0.0, $mul11 = 0.0, $mul17 = 0.0, $mul2 = 0, $mul21 = 0.0, $mul28 = 0.0, $mul32 = 0.0, $mul39 = 0.0, $mul43 = 0.0, $mul7 = 0.0, $mul81 = 0, $mul86 = 0.0; var $mul93 = 0.0, $scratch = 0, $st$addr = 0, $sub = 0.0, $sub128 = 0.0, $sub135 = 0.0, $sub33 = 0.0, $sub69 = 0.0, $sub76 = 0.0, $sub87 = 0.0, $sub94 = 0.0, $tobool = 0, $tw1 = 0, $tw2 = 0, $twiddles = 0, $twiddles3 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 112|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(112|0); $scratch = sp + 16|0; $epi3 = sp + 8|0; $Fout$addr = $Fout; $fstride$addr = $fstride; $st$addr = $st; $m$addr = $m; $N$addr = $N; $mm$addr = $mm; $0 = $m$addr; $mul = $0<<1; $m2 = $mul; $1 = $Fout$addr; $Fout_beg = $1; $2 = $st$addr; $twiddles = ((($2)) + 48|0); $3 = HEAP32[$twiddles>>2]|0; $4 = $fstride$addr; $5 = $m$addr; $mul1 = Math_imul($4, $5)|0; $arrayidx = (($3) + ($mul1<<3)|0); ;HEAP32[$epi3>>2]=HEAP32[$arrayidx>>2]|0;HEAP32[$epi3+4>>2]=HEAP32[$arrayidx+4>>2]|0; $i = 0; while(1) { $6 = $i; $7 = $N$addr; $cmp = ($6|0)<($7|0); if (!($cmp)) { break; } $8 = $Fout_beg; $9 = $i; $10 = $mm$addr; $mul2 = Math_imul($9, $10)|0; $add$ptr = (($8) + ($mul2<<3)|0); $Fout$addr = $add$ptr; $11 = $st$addr; $twiddles3 = ((($11)) + 48|0); $12 = HEAP32[$twiddles3>>2]|0; $tw2 = $12; $tw1 = $12; $13 = $m$addr; $k = $13; while(1) { $14 = $Fout$addr; $15 = $m$addr; $arrayidx5 = (($14) + ($15<<3)|0); $16 = +HEAPF32[$arrayidx5>>2]; $17 = $tw1; $18 = +HEAPF32[$17>>2]; $mul7 = $16 * $18; $19 = $Fout$addr; $20 = $m$addr; $arrayidx8 = (($19) + ($20<<3)|0); $i9 = ((($arrayidx8)) + 4|0); $21 = +HEAPF32[$i9>>2]; $22 = $tw1; $i10 = ((($22)) + 4|0); $23 = +HEAPF32[$i10>>2]; $mul11 = $21 * $23; $sub = $mul7 - $mul11; $arrayidx12 = ((($scratch)) + 8|0); HEAPF32[$arrayidx12>>2] = $sub; $24 = $Fout$addr; $25 = $m$addr; $arrayidx14 = (($24) + ($25<<3)|0); $26 = +HEAPF32[$arrayidx14>>2]; $27 = $tw1; $i16 = ((($27)) + 4|0); $28 = +HEAPF32[$i16>>2]; $mul17 = $26 * $28; $29 = $Fout$addr; $30 = $m$addr; $arrayidx18 = (($29) + ($30<<3)|0); $i19 = ((($arrayidx18)) + 4|0); $31 = +HEAPF32[$i19>>2]; $32 = $tw1; $33 = +HEAPF32[$32>>2]; $mul21 = $31 * $33; $add = $mul17 + $mul21; $arrayidx22 = ((($scratch)) + 8|0); $i23 = ((($arrayidx22)) + 4|0); HEAPF32[$i23>>2] = $add; $34 = $Fout$addr; $35 = $m2; $arrayidx25 = (($34) + ($35<<3)|0); $36 = +HEAPF32[$arrayidx25>>2]; $37 = $tw2; $38 = +HEAPF32[$37>>2]; $mul28 = $36 * $38; $39 = $Fout$addr; $40 = $m2; $arrayidx29 = (($39) + ($40<<3)|0); $i30 = ((($arrayidx29)) + 4|0); $41 = +HEAPF32[$i30>>2]; $42 = $tw2; $i31 = ((($42)) + 4|0); $43 = +HEAPF32[$i31>>2]; $mul32 = $41 * $43; $sub33 = $mul28 - $mul32; $arrayidx34 = ((($scratch)) + 16|0); HEAPF32[$arrayidx34>>2] = $sub33; $44 = $Fout$addr; $45 = $m2; $arrayidx36 = (($44) + ($45<<3)|0); $46 = +HEAPF32[$arrayidx36>>2]; $47 = $tw2; $i38 = ((($47)) + 4|0); $48 = +HEAPF32[$i38>>2]; $mul39 = $46 * $48; $49 = $Fout$addr; $50 = $m2; $arrayidx40 = (($49) + ($50<<3)|0); $i41 = ((($arrayidx40)) + 4|0); $51 = +HEAPF32[$i41>>2]; $52 = $tw2; $53 = +HEAPF32[$52>>2]; $mul43 = $51 * $53; $add44 = $mul39 + $mul43; $arrayidx45 = ((($scratch)) + 16|0); $i46 = ((($arrayidx45)) + 4|0); HEAPF32[$i46>>2] = $add44; $arrayidx49 = ((($scratch)) + 8|0); $54 = +HEAPF32[$arrayidx49>>2]; $arrayidx51 = ((($scratch)) + 16|0); $55 = +HEAPF32[$arrayidx51>>2]; $add53 = $54 + $55; $arrayidx54 = ((($scratch)) + 24|0); HEAPF32[$arrayidx54>>2] = $add53; $arrayidx56 = ((($scratch)) + 8|0); $i57 = ((($arrayidx56)) + 4|0); $56 = +HEAPF32[$i57>>2]; $arrayidx58 = ((($scratch)) + 16|0); $i59 = ((($arrayidx58)) + 4|0); $57 = +HEAPF32[$i59>>2]; $add60 = $56 + $57; $arrayidx61 = ((($scratch)) + 24|0); $i62 = ((($arrayidx61)) + 4|0); HEAPF32[$i62>>2] = $add60; $arrayidx65 = ((($scratch)) + 8|0); $58 = +HEAPF32[$arrayidx65>>2]; $arrayidx67 = ((($scratch)) + 16|0); $59 = +HEAPF32[$arrayidx67>>2]; $sub69 = $58 - $59; HEAPF32[$scratch>>2] = $sub69; $arrayidx72 = ((($scratch)) + 8|0); $i73 = ((($arrayidx72)) + 4|0); $60 = +HEAPF32[$i73>>2]; $arrayidx74 = ((($scratch)) + 16|0); $i75 = ((($arrayidx74)) + 4|0); $61 = +HEAPF32[$i75>>2]; $sub76 = $60 - $61; $i78 = ((($scratch)) + 4|0); HEAPF32[$i78>>2] = $sub76; $62 = $fstride$addr; $63 = $tw1; $add$ptr80 = (($63) + ($62<<3)|0); $tw1 = $add$ptr80; $64 = $fstride$addr; $mul81 = $64<<1; $65 = $tw2; $add$ptr82 = (($65) + ($mul81<<3)|0); $tw2 = $add$ptr82; $66 = $Fout$addr; $67 = +HEAPF32[$66>>2]; $arrayidx84 = ((($scratch)) + 24|0); $68 = +HEAPF32[$arrayidx84>>2]; $mul86 = $68 * 0.5; $sub87 = $67 - $mul86; $69 = $Fout$addr; $70 = $m$addr; $arrayidx88 = (($69) + ($70<<3)|0); HEAPF32[$arrayidx88>>2] = $sub87; $71 = $Fout$addr; $i90 = ((($71)) + 4|0); $72 = +HEAPF32[$i90>>2]; $arrayidx91 = ((($scratch)) + 24|0); $i92 = ((($arrayidx91)) + 4|0); $73 = +HEAPF32[$i92>>2]; $mul93 = $73 * 0.5; $sub94 = $72 - $mul93; $74 = $Fout$addr; $75 = $m$addr; $arrayidx95 = (($74) + ($75<<3)|0); $i96 = ((($arrayidx95)) + 4|0); HEAPF32[$i96>>2] = $sub94; $i98 = ((($epi3)) + 4|0); $76 = +HEAPF32[$i98>>2]; $77 = +HEAPF32[$scratch>>2]; $mul101 = $77 * $76; HEAPF32[$scratch>>2] = $mul101; $i102 = ((($epi3)) + 4|0); $78 = +HEAPF32[$i102>>2]; $i104 = ((($scratch)) + 4|0); $79 = +HEAPF32[$i104>>2]; $mul105 = $79 * $78; HEAPF32[$i104>>2] = $mul105; $arrayidx108 = ((($scratch)) + 24|0); $80 = +HEAPF32[$arrayidx108>>2]; $81 = $Fout$addr; $82 = +HEAPF32[$81>>2]; $add111 = $82 + $80; HEAPF32[$81>>2] = $add111; $arrayidx112 = ((($scratch)) + 24|0); $i113 = ((($arrayidx112)) + 4|0); $83 = +HEAPF32[$i113>>2]; $84 = $Fout$addr; $i114 = ((($84)) + 4|0); $85 = +HEAPF32[$i114>>2]; $add115 = $85 + $83; HEAPF32[$i114>>2] = $add115; $86 = $Fout$addr; $87 = $m$addr; $arrayidx117 = (($86) + ($87<<3)|0); $88 = +HEAPF32[$arrayidx117>>2]; $i120 = ((($scratch)) + 4|0); $89 = +HEAPF32[$i120>>2]; $add121 = $88 + $89; $90 = $Fout$addr; $91 = $m2; $arrayidx122 = (($90) + ($91<<3)|0); HEAPF32[$arrayidx122>>2] = $add121; $92 = $Fout$addr; $93 = $m$addr; $arrayidx124 = (($92) + ($93<<3)|0); $i125 = ((($arrayidx124)) + 4|0); $94 = +HEAPF32[$i125>>2]; $95 = +HEAPF32[$scratch>>2]; $sub128 = $94 - $95; $96 = $Fout$addr; $97 = $m2; $arrayidx129 = (($96) + ($97<<3)|0); $i130 = ((($arrayidx129)) + 4|0); HEAPF32[$i130>>2] = $sub128; $98 = $Fout$addr; $99 = $m$addr; $arrayidx131 = (($98) + ($99<<3)|0); $100 = +HEAPF32[$arrayidx131>>2]; $i134 = ((($scratch)) + 4|0); $101 = +HEAPF32[$i134>>2]; $sub135 = $100 - $101; $102 = $Fout$addr; $103 = $m$addr; $arrayidx136 = (($102) + ($103<<3)|0); HEAPF32[$arrayidx136>>2] = $sub135; $104 = $Fout$addr; $105 = $m$addr; $arrayidx138 = (($104) + ($105<<3)|0); $i139 = ((($arrayidx138)) + 4|0); $106 = +HEAPF32[$i139>>2]; $107 = +HEAPF32[$scratch>>2]; $add142 = $106 + $107; $108 = $Fout$addr; $109 = $m$addr; $arrayidx143 = (($108) + ($109<<3)|0); $i144 = ((($arrayidx143)) + 4|0); HEAPF32[$i144>>2] = $add142; $110 = $Fout$addr; $incdec$ptr = ((($110)) + 8|0); $Fout$addr = $incdec$ptr; $111 = $k; $dec = (($111) + -1)|0; $k = $dec; $tobool = ($dec|0)!=(0); if (!($tobool)) { break; } } $112 = $i; $inc = (($112) + 1)|0; $i = $inc; } STACKTOP = sp;return; } function _kf_bfly5($Fout,$fstride,$st,$m,$N,$mm) { $Fout = $Fout|0; $fstride = $fstride|0; $st = $st|0; $m = $m|0; $N = $N|0; $mm = $mm|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0.0, $102 = 0, $103 = 0, $104 = 0, $105 = 0.0, $106 = 0, $107 = 0.0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0.0, $112 = 0, $113 = 0.0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0.0, $118 = 0, $119 = 0.0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0.0, $124 = 0.0, $125 = 0.0, $126 = 0.0, $127 = 0.0, $128 = 0.0, $129 = 0.0, $13 = 0, $130 = 0.0, $131 = 0.0, $132 = 0.0, $133 = 0.0; var $134 = 0.0, $135 = 0.0, $136 = 0.0, $137 = 0.0, $138 = 0.0, $139 = 0.0, $14 = 0, $140 = 0, $141 = 0.0, $142 = 0.0, $143 = 0.0, $144 = 0, $145 = 0, $146 = 0.0, $147 = 0.0, $148 = 0.0, $149 = 0, $15 = 0, $150 = 0.0, $151 = 0.0; var $152 = 0.0, $153 = 0.0, $154 = 0.0, $155 = 0.0, $156 = 0.0, $157 = 0.0, $158 = 0.0, $159 = 0.0, $16 = 0, $160 = 0.0, $161 = 0.0, $162 = 0.0, $163 = 0.0, $164 = 0.0, $165 = 0.0, $166 = 0.0, $167 = 0.0, $168 = 0.0, $169 = 0.0, $17 = 0; var $170 = 0, $171 = 0.0, $172 = 0.0, $173 = 0, $174 = 0.0, $175 = 0.0, $176 = 0, $177 = 0.0, $178 = 0.0, $179 = 0, $18 = 0, $180 = 0.0, $181 = 0.0, $182 = 0.0, $183 = 0.0, $184 = 0.0, $185 = 0.0, $186 = 0.0, $187 = 0.0, $188 = 0.0; var $189 = 0.0, $19 = 0, $190 = 0.0, $191 = 0.0, $192 = 0.0, $193 = 0.0, $194 = 0.0, $195 = 0.0, $196 = 0.0, $197 = 0.0, $198 = 0.0, $199 = 0.0, $2 = 0, $20 = 0, $200 = 0, $201 = 0.0, $202 = 0.0, $203 = 0, $204 = 0.0, $205 = 0.0; var $206 = 0, $207 = 0.0, $208 = 0.0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0.0; var $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0.0, $34 = 0, $35 = 0.0, $36 = 0, $37 = 0, $38 = 0, $39 = 0.0, $4 = 0, $40 = 0, $41 = 0.0, $42 = 0, $43 = 0, $44 = 0, $45 = 0.0, $46 = 0, $47 = 0.0; var $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0.0, $52 = 0, $53 = 0.0, $54 = 0, $55 = 0, $56 = 0, $57 = 0.0, $58 = 0, $59 = 0.0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0.0, $64 = 0, $65 = 0.0; var $66 = 0, $67 = 0, $68 = 0, $69 = 0.0, $7 = 0, $70 = 0, $71 = 0.0, $72 = 0, $73 = 0, $74 = 0, $75 = 0.0, $76 = 0, $77 = 0.0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0.0, $82 = 0, $83 = 0.0; var $84 = 0, $85 = 0, $86 = 0, $87 = 0.0, $88 = 0, $89 = 0.0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0.0, $94 = 0, $95 = 0.0, $96 = 0, $97 = 0, $98 = 0, $99 = 0.0, $Fout$addr = 0, $Fout0 = 0, $Fout1 = 0; var $Fout2 = 0, $Fout3 = 0, $Fout4 = 0, $Fout_beg = 0, $N$addr = 0, $add = 0.0, $add$ptr = 0, $add$ptr11 = 0, $add$ptr13 = 0, $add$ptr7 = 0, $add$ptr9 = 0, $add101 = 0.0, $add133 = 0.0, $add142 = 0.0, $add149 = 0.0, $add174 = 0.0, $add181 = 0.0, $add206 = 0.0, $add207 = 0.0, $add214 = 0.0; var $add215 = 0.0, $add227 = 0.0, $add228 = 0.0, $add241 = 0.0, $add242 = 0.0, $add253 = 0.0, $add264 = 0.0, $add287 = 0.0, $add293 = 0.0, $add306 = 0.0, $add307 = 0.0, $add320 = 0.0, $add321 = 0.0, $add351 = 0.0, $add357 = 0.0, $add69 = 0.0, $arrayidx = 0, $arrayidx102 = 0, $arrayidx109 = 0, $arrayidx115 = 0; var $arrayidx119 = 0, $arrayidx124 = 0, $arrayidx130 = 0, $arrayidx134 = 0, $arrayidx138 = 0, $arrayidx140 = 0, $arrayidx143 = 0, $arrayidx145 = 0, $arrayidx147 = 0, $arrayidx150 = 0, $arrayidx154 = 0, $arrayidx156 = 0, $arrayidx159 = 0, $arrayidx161 = 0, $arrayidx163 = 0, $arrayidx166 = 0, $arrayidx170 = 0, $arrayidx172 = 0, $arrayidx175 = 0, $arrayidx177 = 0; var $arrayidx179 = 0, $arrayidx182 = 0, $arrayidx186 = 0, $arrayidx188 = 0, $arrayidx19 = 0, $arrayidx191 = 0, $arrayidx193 = 0, $arrayidx195 = 0, $arrayidx198 = 0, $arrayidx202 = 0, $arrayidx204 = 0, $arrayidx210 = 0, $arrayidx212 = 0, $arrayidx219 = 0, $arrayidx223 = 0, $arrayidx229 = 0, $arrayidx233 = 0, $arrayidx237 = 0, $arrayidx24 = 0, $arrayidx243 = 0; var $arrayidx245 = 0, $arrayidx249 = 0, $arrayidx254 = 0, $arrayidx256 = 0, $arrayidx260 = 0, $arrayidx266 = 0, $arrayidx269 = 0, $arrayidx27 = 0, $arrayidx271 = 0, $arrayidx275 = 0, $arrayidx277 = 0, $arrayidx283 = 0, $arrayidx285 = 0, $arrayidx289 = 0, $arrayidx291 = 0, $arrayidx298 = 0, $arrayidx302 = 0, $arrayidx308 = 0, $arrayidx31 = 0, $arrayidx312 = 0; var $arrayidx316 = 0, $arrayidx322 = 0, $arrayidx324 = 0, $arrayidx328 = 0, $arrayidx333 = 0, $arrayidx335 = 0, $arrayidx339 = 0, $arrayidx344 = 0, $arrayidx347 = 0, $arrayidx349 = 0, $arrayidx353 = 0, $arrayidx355 = 0, $arrayidx36 = 0, $arrayidx361 = 0, $arrayidx363 = 0, $arrayidx367 = 0, $arrayidx369 = 0, $arrayidx39 = 0, $arrayidx4 = 0, $arrayidx45 = 0; var $arrayidx51 = 0, $arrayidx55 = 0, $arrayidx60 = 0, $arrayidx66 = 0, $arrayidx70 = 0, $arrayidx77 = 0, $arrayidx83 = 0, $arrayidx87 = 0, $arrayidx92 = 0, $arrayidx98 = 0, $cmp = 0, $cmp15 = 0, $fstride$addr = 0, $i = 0, $i103 = 0, $i112 = 0, $i116 = 0, $i125 = 0, $i127 = 0, $i135 = 0; var $i146 = 0, $i148 = 0, $i151 = 0, $i162 = 0, $i164 = 0, $i167 = 0, $i178 = 0, $i180 = 0, $i183 = 0, $i194 = 0, $i196 = 0, $i199 = 0, $i209 = 0, $i211 = 0, $i213 = 0, $i216 = 0, $i22 = 0, $i232 = 0, $i234 = 0, $i238 = 0; var $i244 = 0, $i246 = 0, $i247 = 0, $i25 = 0, $i250 = 0, $i251 = 0, $i258 = 0, $i262 = 0, $i267 = 0, $i276 = 0, $i278 = 0, $i280 = 0, $i290 = 0, $i292 = 0, $i294 = 0, $i311 = 0, $i313 = 0, $i317 = 0, $i32 = 0, $i323 = 0; var $i325 = 0, $i326 = 0, $i329 = 0, $i330 = 0, $i337 = 0, $i34 = 0, $i341 = 0, $i345 = 0, $i354 = 0, $i356 = 0, $i358 = 0, $i368 = 0, $i370 = 0, $i372 = 0, $i40 = 0, $i48 = 0, $i52 = 0, $i61 = 0, $i63 = 0, $i71 = 0; var $i80 = 0, $i84 = 0, $i93 = 0, $i95 = 0, $inc = 0, $inc379 = 0, $incdec$ptr = 0, $incdec$ptr374 = 0, $incdec$ptr375 = 0, $incdec$ptr376 = 0, $incdec$ptr377 = 0, $m$addr = 0, $mm$addr = 0, $mul = 0, $mul10 = 0, $mul100 = 0.0, $mul107 = 0, $mul108 = 0, $mul111 = 0.0, $mul113 = 0; var $mul114 = 0, $mul117 = 0.0, $mul12 = 0, $mul122 = 0, $mul123 = 0, $mul126 = 0.0, $mul128 = 0, $mul129 = 0, $mul132 = 0.0, $mul18 = 0, $mul2 = 0, $mul21 = 0.0, $mul222 = 0.0, $mul226 = 0.0, $mul23 = 0, $mul236 = 0.0, $mul240 = 0.0, $mul248 = 0.0, $mul252 = 0.0, $mul259 = 0.0; var $mul26 = 0.0, $mul263 = 0.0, $mul3 = 0, $mul30 = 0, $mul301 = 0.0, $mul305 = 0.0, $mul315 = 0.0, $mul319 = 0.0, $mul327 = 0.0, $mul33 = 0.0, $mul331 = 0.0, $mul338 = 0.0, $mul342 = 0.0, $mul35 = 0, $mul38 = 0.0, $mul43 = 0, $mul44 = 0, $mul47 = 0.0, $mul49 = 0, $mul50 = 0; var $mul53 = 0.0, $mul58 = 0, $mul59 = 0, $mul6 = 0, $mul62 = 0.0, $mul64 = 0, $mul65 = 0, $mul68 = 0.0, $mul75 = 0, $mul76 = 0, $mul79 = 0.0, $mul8 = 0, $mul81 = 0, $mul82 = 0, $mul85 = 0.0, $mul90 = 0, $mul91 = 0, $mul94 = 0.0, $mul96 = 0, $mul97 = 0; var $scratch = 0, $st$addr = 0, $sub = 0.0, $sub118 = 0.0, $sub158 = 0.0, $sub165 = 0.0, $sub190 = 0.0, $sub197 = 0.0, $sub265 = 0.0, $sub273 = 0.0, $sub279 = 0.0, $sub332 = 0.0, $sub343 = 0.0, $sub365 = 0.0, $sub371 = 0.0, $sub54 = 0.0, $sub86 = 0.0, $tw = 0, $twiddles = 0, $twiddles1 = 0; var $twiddles5 = 0, $u = 0, $ya = 0, $yb = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 192|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(192|0); $scratch = sp + 32|0; $ya = sp + 16|0; $yb = sp + 8|0; $Fout$addr = $Fout; $fstride$addr = $fstride; $st$addr = $st; $m$addr = $m; $N$addr = $N; $mm$addr = $mm; $0 = $Fout$addr; $Fout_beg = $0; $1 = $st$addr; $twiddles = ((($1)) + 48|0); $2 = HEAP32[$twiddles>>2]|0; $3 = $fstride$addr; $4 = $m$addr; $mul = Math_imul($3, $4)|0; $arrayidx = (($2) + ($mul<<3)|0); ;HEAP32[$ya>>2]=HEAP32[$arrayidx>>2]|0;HEAP32[$ya+4>>2]=HEAP32[$arrayidx+4>>2]|0; $5 = $st$addr; $twiddles1 = ((($5)) + 48|0); $6 = HEAP32[$twiddles1>>2]|0; $7 = $fstride$addr; $mul2 = $7<<1; $8 = $m$addr; $mul3 = Math_imul($mul2, $8)|0; $arrayidx4 = (($6) + ($mul3<<3)|0); ;HEAP32[$yb>>2]=HEAP32[$arrayidx4>>2]|0;HEAP32[$yb+4>>2]=HEAP32[$arrayidx4+4>>2]|0; $9 = $st$addr; $twiddles5 = ((($9)) + 48|0); $10 = HEAP32[$twiddles5>>2]|0; $tw = $10; $i = 0; while(1) { $11 = $i; $12 = $N$addr; $cmp = ($11|0)<($12|0); if (!($cmp)) { break; } $13 = $Fout_beg; $14 = $i; $15 = $mm$addr; $mul6 = Math_imul($14, $15)|0; $add$ptr = (($13) + ($mul6<<3)|0); $Fout$addr = $add$ptr; $16 = $Fout$addr; $Fout0 = $16; $17 = $Fout0; $18 = $m$addr; $add$ptr7 = (($17) + ($18<<3)|0); $Fout1 = $add$ptr7; $19 = $Fout0; $20 = $m$addr; $mul8 = $20<<1; $add$ptr9 = (($19) + ($mul8<<3)|0); $Fout2 = $add$ptr9; $21 = $Fout0; $22 = $m$addr; $mul10 = ($22*3)|0; $add$ptr11 = (($21) + ($mul10<<3)|0); $Fout3 = $add$ptr11; $23 = $Fout0; $24 = $m$addr; $mul12 = $24<<2; $add$ptr13 = (($23) + ($mul12<<3)|0); $Fout4 = $add$ptr13; $u = 0; while(1) { $25 = $u; $26 = $m$addr; $cmp15 = ($25|0)<($26|0); if (!($cmp15)) { break; } $27 = $Fout0; ;HEAP32[$scratch>>2]=HEAP32[$27>>2]|0;HEAP32[$scratch+4>>2]=HEAP32[$27+4>>2]|0; $28 = $Fout1; $29 = +HEAPF32[$28>>2]; $30 = $tw; $31 = $u; $32 = $fstride$addr; $mul18 = Math_imul($31, $32)|0; $arrayidx19 = (($30) + ($mul18<<3)|0); $33 = +HEAPF32[$arrayidx19>>2]; $mul21 = $29 * $33; $34 = $Fout1; $i22 = ((($34)) + 4|0); $35 = +HEAPF32[$i22>>2]; $36 = $tw; $37 = $u; $38 = $fstride$addr; $mul23 = Math_imul($37, $38)|0; $arrayidx24 = (($36) + ($mul23<<3)|0); $i25 = ((($arrayidx24)) + 4|0); $39 = +HEAPF32[$i25>>2]; $mul26 = $35 * $39; $sub = $mul21 - $mul26; $arrayidx27 = ((($scratch)) + 8|0); HEAPF32[$arrayidx27>>2] = $sub; $40 = $Fout1; $41 = +HEAPF32[$40>>2]; $42 = $tw; $43 = $u; $44 = $fstride$addr; $mul30 = Math_imul($43, $44)|0; $arrayidx31 = (($42) + ($mul30<<3)|0); $i32 = ((($arrayidx31)) + 4|0); $45 = +HEAPF32[$i32>>2]; $mul33 = $41 * $45; $46 = $Fout1; $i34 = ((($46)) + 4|0); $47 = +HEAPF32[$i34>>2]; $48 = $tw; $49 = $u; $50 = $fstride$addr; $mul35 = Math_imul($49, $50)|0; $arrayidx36 = (($48) + ($mul35<<3)|0); $51 = +HEAPF32[$arrayidx36>>2]; $mul38 = $47 * $51; $add = $mul33 + $mul38; $arrayidx39 = ((($scratch)) + 8|0); $i40 = ((($arrayidx39)) + 4|0); HEAPF32[$i40>>2] = $add; $52 = $Fout2; $53 = +HEAPF32[$52>>2]; $54 = $tw; $55 = $u; $mul43 = $55<<1; $56 = $fstride$addr; $mul44 = Math_imul($mul43, $56)|0; $arrayidx45 = (($54) + ($mul44<<3)|0); $57 = +HEAPF32[$arrayidx45>>2]; $mul47 = $53 * $57; $58 = $Fout2; $i48 = ((($58)) + 4|0); $59 = +HEAPF32[$i48>>2]; $60 = $tw; $61 = $u; $mul49 = $61<<1; $62 = $fstride$addr; $mul50 = Math_imul($mul49, $62)|0; $arrayidx51 = (($60) + ($mul50<<3)|0); $i52 = ((($arrayidx51)) + 4|0); $63 = +HEAPF32[$i52>>2]; $mul53 = $59 * $63; $sub54 = $mul47 - $mul53; $arrayidx55 = ((($scratch)) + 16|0); HEAPF32[$arrayidx55>>2] = $sub54; $64 = $Fout2; $65 = +HEAPF32[$64>>2]; $66 = $tw; $67 = $u; $mul58 = $67<<1; $68 = $fstride$addr; $mul59 = Math_imul($mul58, $68)|0; $arrayidx60 = (($66) + ($mul59<<3)|0); $i61 = ((($arrayidx60)) + 4|0); $69 = +HEAPF32[$i61>>2]; $mul62 = $65 * $69; $70 = $Fout2; $i63 = ((($70)) + 4|0); $71 = +HEAPF32[$i63>>2]; $72 = $tw; $73 = $u; $mul64 = $73<<1; $74 = $fstride$addr; $mul65 = Math_imul($mul64, $74)|0; $arrayidx66 = (($72) + ($mul65<<3)|0); $75 = +HEAPF32[$arrayidx66>>2]; $mul68 = $71 * $75; $add69 = $mul62 + $mul68; $arrayidx70 = ((($scratch)) + 16|0); $i71 = ((($arrayidx70)) + 4|0); HEAPF32[$i71>>2] = $add69; $76 = $Fout3; $77 = +HEAPF32[$76>>2]; $78 = $tw; $79 = $u; $mul75 = ($79*3)|0; $80 = $fstride$addr; $mul76 = Math_imul($mul75, $80)|0; $arrayidx77 = (($78) + ($mul76<<3)|0); $81 = +HEAPF32[$arrayidx77>>2]; $mul79 = $77 * $81; $82 = $Fout3; $i80 = ((($82)) + 4|0); $83 = +HEAPF32[$i80>>2]; $84 = $tw; $85 = $u; $mul81 = ($85*3)|0; $86 = $fstride$addr; $mul82 = Math_imul($mul81, $86)|0; $arrayidx83 = (($84) + ($mul82<<3)|0); $i84 = ((($arrayidx83)) + 4|0); $87 = +HEAPF32[$i84>>2]; $mul85 = $83 * $87; $sub86 = $mul79 - $mul85; $arrayidx87 = ((($scratch)) + 24|0); HEAPF32[$arrayidx87>>2] = $sub86; $88 = $Fout3; $89 = +HEAPF32[$88>>2]; $90 = $tw; $91 = $u; $mul90 = ($91*3)|0; $92 = $fstride$addr; $mul91 = Math_imul($mul90, $92)|0; $arrayidx92 = (($90) + ($mul91<<3)|0); $i93 = ((($arrayidx92)) + 4|0); $93 = +HEAPF32[$i93>>2]; $mul94 = $89 * $93; $94 = $Fout3; $i95 = ((($94)) + 4|0); $95 = +HEAPF32[$i95>>2]; $96 = $tw; $97 = $u; $mul96 = ($97*3)|0; $98 = $fstride$addr; $mul97 = Math_imul($mul96, $98)|0; $arrayidx98 = (($96) + ($mul97<<3)|0); $99 = +HEAPF32[$arrayidx98>>2]; $mul100 = $95 * $99; $add101 = $mul94 + $mul100; $arrayidx102 = ((($scratch)) + 24|0); $i103 = ((($arrayidx102)) + 4|0); HEAPF32[$i103>>2] = $add101; $100 = $Fout4; $101 = +HEAPF32[$100>>2]; $102 = $tw; $103 = $u; $mul107 = $103<<2; $104 = $fstride$addr; $mul108 = Math_imul($mul107, $104)|0; $arrayidx109 = (($102) + ($mul108<<3)|0); $105 = +HEAPF32[$arrayidx109>>2]; $mul111 = $101 * $105; $106 = $Fout4; $i112 = ((($106)) + 4|0); $107 = +HEAPF32[$i112>>2]; $108 = $tw; $109 = $u; $mul113 = $109<<2; $110 = $fstride$addr; $mul114 = Math_imul($mul113, $110)|0; $arrayidx115 = (($108) + ($mul114<<3)|0); $i116 = ((($arrayidx115)) + 4|0); $111 = +HEAPF32[$i116>>2]; $mul117 = $107 * $111; $sub118 = $mul111 - $mul117; $arrayidx119 = ((($scratch)) + 32|0); HEAPF32[$arrayidx119>>2] = $sub118; $112 = $Fout4; $113 = +HEAPF32[$112>>2]; $114 = $tw; $115 = $u; $mul122 = $115<<2; $116 = $fstride$addr; $mul123 = Math_imul($mul122, $116)|0; $arrayidx124 = (($114) + ($mul123<<3)|0); $i125 = ((($arrayidx124)) + 4|0); $117 = +HEAPF32[$i125>>2]; $mul126 = $113 * $117; $118 = $Fout4; $i127 = ((($118)) + 4|0); $119 = +HEAPF32[$i127>>2]; $120 = $tw; $121 = $u; $mul128 = $121<<2; $122 = $fstride$addr; $mul129 = Math_imul($mul128, $122)|0; $arrayidx130 = (($120) + ($mul129<<3)|0); $123 = +HEAPF32[$arrayidx130>>2]; $mul132 = $119 * $123; $add133 = $mul126 + $mul132; $arrayidx134 = ((($scratch)) + 32|0); $i135 = ((($arrayidx134)) + 4|0); HEAPF32[$i135>>2] = $add133; $arrayidx138 = ((($scratch)) + 8|0); $124 = +HEAPF32[$arrayidx138>>2]; $arrayidx140 = ((($scratch)) + 32|0); $125 = +HEAPF32[$arrayidx140>>2]; $add142 = $124 + $125; $arrayidx143 = ((($scratch)) + 56|0); HEAPF32[$arrayidx143>>2] = $add142; $arrayidx145 = ((($scratch)) + 8|0); $i146 = ((($arrayidx145)) + 4|0); $126 = +HEAPF32[$i146>>2]; $arrayidx147 = ((($scratch)) + 32|0); $i148 = ((($arrayidx147)) + 4|0); $127 = +HEAPF32[$i148>>2]; $add149 = $126 + $127; $arrayidx150 = ((($scratch)) + 56|0); $i151 = ((($arrayidx150)) + 4|0); HEAPF32[$i151>>2] = $add149; $arrayidx154 = ((($scratch)) + 8|0); $128 = +HEAPF32[$arrayidx154>>2]; $arrayidx156 = ((($scratch)) + 32|0); $129 = +HEAPF32[$arrayidx156>>2]; $sub158 = $128 - $129; $arrayidx159 = ((($scratch)) + 80|0); HEAPF32[$arrayidx159>>2] = $sub158; $arrayidx161 = ((($scratch)) + 8|0); $i162 = ((($arrayidx161)) + 4|0); $130 = +HEAPF32[$i162>>2]; $arrayidx163 = ((($scratch)) + 32|0); $i164 = ((($arrayidx163)) + 4|0); $131 = +HEAPF32[$i164>>2]; $sub165 = $130 - $131; $arrayidx166 = ((($scratch)) + 80|0); $i167 = ((($arrayidx166)) + 4|0); HEAPF32[$i167>>2] = $sub165; $arrayidx170 = ((($scratch)) + 16|0); $132 = +HEAPF32[$arrayidx170>>2]; $arrayidx172 = ((($scratch)) + 24|0); $133 = +HEAPF32[$arrayidx172>>2]; $add174 = $132 + $133; $arrayidx175 = ((($scratch)) + 64|0); HEAPF32[$arrayidx175>>2] = $add174; $arrayidx177 = ((($scratch)) + 16|0); $i178 = ((($arrayidx177)) + 4|0); $134 = +HEAPF32[$i178>>2]; $arrayidx179 = ((($scratch)) + 24|0); $i180 = ((($arrayidx179)) + 4|0); $135 = +HEAPF32[$i180>>2]; $add181 = $134 + $135; $arrayidx182 = ((($scratch)) + 64|0); $i183 = ((($arrayidx182)) + 4|0); HEAPF32[$i183>>2] = $add181; $arrayidx186 = ((($scratch)) + 16|0); $136 = +HEAPF32[$arrayidx186>>2]; $arrayidx188 = ((($scratch)) + 24|0); $137 = +HEAPF32[$arrayidx188>>2]; $sub190 = $136 - $137; $arrayidx191 = ((($scratch)) + 72|0); HEAPF32[$arrayidx191>>2] = $sub190; $arrayidx193 = ((($scratch)) + 16|0); $i194 = ((($arrayidx193)) + 4|0); $138 = +HEAPF32[$i194>>2]; $arrayidx195 = ((($scratch)) + 24|0); $i196 = ((($arrayidx195)) + 4|0); $139 = +HEAPF32[$i196>>2]; $sub197 = $138 - $139; $arrayidx198 = ((($scratch)) + 72|0); $i199 = ((($arrayidx198)) + 4|0); HEAPF32[$i199>>2] = $sub197; $140 = $Fout0; $141 = +HEAPF32[$140>>2]; $arrayidx202 = ((($scratch)) + 56|0); $142 = +HEAPF32[$arrayidx202>>2]; $arrayidx204 = ((($scratch)) + 64|0); $143 = +HEAPF32[$arrayidx204>>2]; $add206 = $142 + $143; $add207 = $141 + $add206; $144 = $Fout0; HEAPF32[$144>>2] = $add207; $145 = $Fout0; $i209 = ((($145)) + 4|0); $146 = +HEAPF32[$i209>>2]; $arrayidx210 = ((($scratch)) + 56|0); $i211 = ((($arrayidx210)) + 4|0); $147 = +HEAPF32[$i211>>2]; $arrayidx212 = ((($scratch)) + 64|0); $i213 = ((($arrayidx212)) + 4|0); $148 = +HEAPF32[$i213>>2]; $add214 = $147 + $148; $add215 = $146 + $add214; $149 = $Fout0; $i216 = ((($149)) + 4|0); HEAPF32[$i216>>2] = $add215; $150 = +HEAPF32[$scratch>>2]; $arrayidx219 = ((($scratch)) + 56|0); $151 = +HEAPF32[$arrayidx219>>2]; $152 = +HEAPF32[$ya>>2]; $mul222 = $151 * $152; $arrayidx223 = ((($scratch)) + 64|0); $153 = +HEAPF32[$arrayidx223>>2]; $154 = +HEAPF32[$yb>>2]; $mul226 = $153 * $154; $add227 = $mul222 + $mul226; $add228 = $150 + $add227; $arrayidx229 = ((($scratch)) + 40|0); HEAPF32[$arrayidx229>>2] = $add228; $i232 = ((($scratch)) + 4|0); $155 = +HEAPF32[$i232>>2]; $arrayidx233 = ((($scratch)) + 56|0); $i234 = ((($arrayidx233)) + 4|0); $156 = +HEAPF32[$i234>>2]; $157 = +HEAPF32[$ya>>2]; $mul236 = $156 * $157; $arrayidx237 = ((($scratch)) + 64|0); $i238 = ((($arrayidx237)) + 4|0); $158 = +HEAPF32[$i238>>2]; $159 = +HEAPF32[$yb>>2]; $mul240 = $158 * $159; $add241 = $mul236 + $mul240; $add242 = $155 + $add241; $arrayidx243 = ((($scratch)) + 40|0); $i244 = ((($arrayidx243)) + 4|0); HEAPF32[$i244>>2] = $add242; $arrayidx245 = ((($scratch)) + 80|0); $i246 = ((($arrayidx245)) + 4|0); $160 = +HEAPF32[$i246>>2]; $i247 = ((($ya)) + 4|0); $161 = +HEAPF32[$i247>>2]; $mul248 = $160 * $161; $arrayidx249 = ((($scratch)) + 72|0); $i250 = ((($arrayidx249)) + 4|0); $162 = +HEAPF32[$i250>>2]; $i251 = ((($yb)) + 4|0); $163 = +HEAPF32[$i251>>2]; $mul252 = $162 * $163; $add253 = $mul248 + $mul252; $arrayidx254 = ((($scratch)) + 48|0); HEAPF32[$arrayidx254>>2] = $add253; $arrayidx256 = ((($scratch)) + 80|0); $164 = +HEAPF32[$arrayidx256>>2]; $i258 = ((($ya)) + 4|0); $165 = +HEAPF32[$i258>>2]; $mul259 = $164 * $165; $arrayidx260 = ((($scratch)) + 72|0); $166 = +HEAPF32[$arrayidx260>>2]; $i262 = ((($yb)) + 4|0); $167 = +HEAPF32[$i262>>2]; $mul263 = $166 * $167; $add264 = $mul259 + $mul263; $sub265 = - $add264; $arrayidx266 = ((($scratch)) + 48|0); $i267 = ((($arrayidx266)) + 4|0); HEAPF32[$i267>>2] = $sub265; $arrayidx269 = ((($scratch)) + 40|0); $168 = +HEAPF32[$arrayidx269>>2]; $arrayidx271 = ((($scratch)) + 48|0); $169 = +HEAPF32[$arrayidx271>>2]; $sub273 = $168 - $169; $170 = $Fout1; HEAPF32[$170>>2] = $sub273; $arrayidx275 = ((($scratch)) + 40|0); $i276 = ((($arrayidx275)) + 4|0); $171 = +HEAPF32[$i276>>2]; $arrayidx277 = ((($scratch)) + 48|0); $i278 = ((($arrayidx277)) + 4|0); $172 = +HEAPF32[$i278>>2]; $sub279 = $171 - $172; $173 = $Fout1; $i280 = ((($173)) + 4|0); HEAPF32[$i280>>2] = $sub279; $arrayidx283 = ((($scratch)) + 40|0); $174 = +HEAPF32[$arrayidx283>>2]; $arrayidx285 = ((($scratch)) + 48|0); $175 = +HEAPF32[$arrayidx285>>2]; $add287 = $174 + $175; $176 = $Fout4; HEAPF32[$176>>2] = $add287; $arrayidx289 = ((($scratch)) + 40|0); $i290 = ((($arrayidx289)) + 4|0); $177 = +HEAPF32[$i290>>2]; $arrayidx291 = ((($scratch)) + 48|0); $i292 = ((($arrayidx291)) + 4|0); $178 = +HEAPF32[$i292>>2]; $add293 = $177 + $178; $179 = $Fout4; $i294 = ((($179)) + 4|0); HEAPF32[$i294>>2] = $add293; $180 = +HEAPF32[$scratch>>2]; $arrayidx298 = ((($scratch)) + 56|0); $181 = +HEAPF32[$arrayidx298>>2]; $182 = +HEAPF32[$yb>>2]; $mul301 = $181 * $182; $arrayidx302 = ((($scratch)) + 64|0); $183 = +HEAPF32[$arrayidx302>>2]; $184 = +HEAPF32[$ya>>2]; $mul305 = $183 * $184; $add306 = $mul301 + $mul305; $add307 = $180 + $add306; $arrayidx308 = ((($scratch)) + 88|0); HEAPF32[$arrayidx308>>2] = $add307; $i311 = ((($scratch)) + 4|0); $185 = +HEAPF32[$i311>>2]; $arrayidx312 = ((($scratch)) + 56|0); $i313 = ((($arrayidx312)) + 4|0); $186 = +HEAPF32[$i313>>2]; $187 = +HEAPF32[$yb>>2]; $mul315 = $186 * $187; $arrayidx316 = ((($scratch)) + 64|0); $i317 = ((($arrayidx316)) + 4|0); $188 = +HEAPF32[$i317>>2]; $189 = +HEAPF32[$ya>>2]; $mul319 = $188 * $189; $add320 = $mul315 + $mul319; $add321 = $185 + $add320; $arrayidx322 = ((($scratch)) + 88|0); $i323 = ((($arrayidx322)) + 4|0); HEAPF32[$i323>>2] = $add321; $arrayidx324 = ((($scratch)) + 72|0); $i325 = ((($arrayidx324)) + 4|0); $190 = +HEAPF32[$i325>>2]; $i326 = ((($ya)) + 4|0); $191 = +HEAPF32[$i326>>2]; $mul327 = $190 * $191; $arrayidx328 = ((($scratch)) + 80|0); $i329 = ((($arrayidx328)) + 4|0); $192 = +HEAPF32[$i329>>2]; $i330 = ((($yb)) + 4|0); $193 = +HEAPF32[$i330>>2]; $mul331 = $192 * $193; $sub332 = $mul327 - $mul331; $arrayidx333 = ((($scratch)) + 96|0); HEAPF32[$arrayidx333>>2] = $sub332; $arrayidx335 = ((($scratch)) + 80|0); $194 = +HEAPF32[$arrayidx335>>2]; $i337 = ((($yb)) + 4|0); $195 = +HEAPF32[$i337>>2]; $mul338 = $194 * $195; $arrayidx339 = ((($scratch)) + 72|0); $196 = +HEAPF32[$arrayidx339>>2]; $i341 = ((($ya)) + 4|0); $197 = +HEAPF32[$i341>>2]; $mul342 = $196 * $197; $sub343 = $mul338 - $mul342; $arrayidx344 = ((($scratch)) + 96|0); $i345 = ((($arrayidx344)) + 4|0); HEAPF32[$i345>>2] = $sub343; $arrayidx347 = ((($scratch)) + 88|0); $198 = +HEAPF32[$arrayidx347>>2]; $arrayidx349 = ((($scratch)) + 96|0); $199 = +HEAPF32[$arrayidx349>>2]; $add351 = $198 + $199; $200 = $Fout2; HEAPF32[$200>>2] = $add351; $arrayidx353 = ((($scratch)) + 88|0); $i354 = ((($arrayidx353)) + 4|0); $201 = +HEAPF32[$i354>>2]; $arrayidx355 = ((($scratch)) + 96|0); $i356 = ((($arrayidx355)) + 4|0); $202 = +HEAPF32[$i356>>2]; $add357 = $201 + $202; $203 = $Fout2; $i358 = ((($203)) + 4|0); HEAPF32[$i358>>2] = $add357; $arrayidx361 = ((($scratch)) + 88|0); $204 = +HEAPF32[$arrayidx361>>2]; $arrayidx363 = ((($scratch)) + 96|0); $205 = +HEAPF32[$arrayidx363>>2]; $sub365 = $204 - $205; $206 = $Fout3; HEAPF32[$206>>2] = $sub365; $arrayidx367 = ((($scratch)) + 88|0); $i368 = ((($arrayidx367)) + 4|0); $207 = +HEAPF32[$i368>>2]; $arrayidx369 = ((($scratch)) + 96|0); $i370 = ((($arrayidx369)) + 4|0); $208 = +HEAPF32[$i370>>2]; $sub371 = $207 - $208; $209 = $Fout3; $i372 = ((($209)) + 4|0); HEAPF32[$i372>>2] = $sub371; $210 = $Fout0; $incdec$ptr = ((($210)) + 8|0); $Fout0 = $incdec$ptr; $211 = $Fout1; $incdec$ptr374 = ((($211)) + 8|0); $Fout1 = $incdec$ptr374; $212 = $Fout2; $incdec$ptr375 = ((($212)) + 8|0); $Fout2 = $incdec$ptr375; $213 = $Fout3; $incdec$ptr376 = ((($213)) + 8|0); $Fout3 = $incdec$ptr376; $214 = $Fout4; $incdec$ptr377 = ((($214)) + 8|0); $Fout4 = $incdec$ptr377; $215 = $u; $inc = (($215) + 1)|0; $u = $inc; } $216 = $i; $inc379 = (($216) + 1)|0; $i = $inc379; } STACKTOP = sp;return; } function _opus_fft_c($st,$fin,$fout) { $st = $st|0; $fin = $fin|0; $fout = $fout|0; var $0 = 0, $1 = 0.0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0.0, $15 = 0.0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; var $6 = 0, $7 = 0.0, $8 = 0.0, $9 = 0, $arrayidx = 0, $arrayidx10 = 0, $arrayidx2 = 0, $arrayidx3 = 0, $arrayidx8 = 0, $bitrev = 0, $bitrev7 = 0, $cmp = 0, $fin$addr = 0, $fout$addr = 0, $i = 0, $i11 = 0, $i5 = 0, $idxprom = 0, $idxprom9 = 0, $inc = 0; var $mul = 0.0, $mul6 = 0.0, $scale = 0.0, $scale1 = 0, $st$addr = 0, $x = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $x = sp; $st$addr = $st; $fin$addr = $fin; $fout$addr = $fout; $0 = $st$addr; $scale1 = ((($0)) + 4|0); $1 = +HEAPF32[$scale1>>2]; $scale = $1; $i = 0; while(1) { $2 = $i; $3 = $st$addr; $4 = HEAP32[$3>>2]|0; $cmp = ($2|0)<($4|0); if (!($cmp)) { break; } $5 = $fin$addr; $6 = $i; $arrayidx = (($5) + ($6<<3)|0); ;HEAP32[$x>>2]=HEAP32[$arrayidx>>2]|0;HEAP32[$x+4>>2]=HEAP32[$arrayidx+4>>2]|0; $7 = $scale; $8 = +HEAPF32[$x>>2]; $mul = $7 * $8; $9 = $fout$addr; $10 = $st$addr; $bitrev = ((($10)) + 44|0); $11 = HEAP32[$bitrev>>2]|0; $12 = $i; $arrayidx2 = (($11) + ($12<<1)|0); $13 = HEAP16[$arrayidx2>>1]|0; $idxprom = $13 << 16 >> 16; $arrayidx3 = (($9) + ($idxprom<<3)|0); HEAPF32[$arrayidx3>>2] = $mul; $14 = $scale; $i5 = ((($x)) + 4|0); $15 = +HEAPF32[$i5>>2]; $mul6 = $14 * $15; $16 = $fout$addr; $17 = $st$addr; $bitrev7 = ((($17)) + 44|0); $18 = HEAP32[$bitrev7>>2]|0; $19 = $i; $arrayidx8 = (($18) + ($19<<1)|0); $20 = HEAP16[$arrayidx8>>1]|0; $idxprom9 = $20 << 16 >> 16; $arrayidx10 = (($16) + ($idxprom9<<3)|0); $i11 = ((($arrayidx10)) + 4|0); HEAPF32[$i11>>2] = $mul6; $21 = $i; $inc = (($21) + 1)|0; $i = $inc; } $22 = $st$addr; $23 = $fout$addr; _opus_fft_impl($22,$23); STACKTOP = sp;return; } function _clt_mdct_forward_c($l,$in,$out,$window,$overlap,$shift,$stride,$arch) { $l = $l|0; $in = $in|0; $out = $out|0; $window = $window|0; $overlap = $overlap|0; $shift = $shift|0; $stride = $stride|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0.0, $103 = 0, $104 = 0, $105 = 0, $106 = 0.0, $107 = 0, $108 = 0.0, $109 = 0, $11 = 0, $110 = 0.0, $111 = 0.0, $112 = 0.0, $113 = 0.0, $114 = 0.0, $115 = 0.0; var $116 = 0.0, $117 = 0.0, $118 = 0.0, $119 = 0.0, $12 = 0, $120 = 0.0, $121 = 0.0, $122 = 0.0, $123 = 0.0, $124 = 0.0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0.0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0.0, $144 = 0, $145 = 0.0, $146 = 0, $147 = 0, $148 = 0.0, $149 = 0, $15 = 0, $150 = 0.0, $151 = 0; var $152 = 0, $153 = 0, $154 = 0.0, $155 = 0, $156 = 0.0, $157 = 0, $158 = 0, $159 = 0.0, $16 = 0, $160 = 0.0, $161 = 0, $162 = 0.0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; var $170 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0.0, $32 = 0, $33 = 0, $34 = 0.0; var $35 = 0, $36 = 0.0, $37 = 0, $38 = 0.0, $39 = 0, $4 = 0.0, $40 = 0, $41 = 0.0, $42 = 0, $43 = 0.0, $44 = 0, $45 = 0.0, $46 = 0, $47 = 0, $48 = 0.0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0; var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0.0, $63 = 0, $64 = 0, $65 = 0.0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0; var $71 = 0, $72 = 0, $73 = 0.0, $74 = 0, $75 = 0, $76 = 0.0, $77 = 0, $78 = 0.0, $79 = 0, $8 = 0, $80 = 0.0, $81 = 0, $82 = 0, $83 = 0.0, $84 = 0, $85 = 0.0, $86 = 0, $87 = 0.0, $88 = 0, $89 = 0; var $9 = 0, $90 = 0.0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $N = 0, $N2 = 0, $N4 = 0, $add = 0, $add$ptr = 0, $add$ptr103 = 0, $add$ptr11 = 0, $add$ptr129 = 0, $add$ptr13 = 0; var $add$ptr131 = 0, $add$ptr15 = 0, $add$ptr16 = 0, $add$ptr29 = 0, $add$ptr30 = 0, $add$ptr31 = 0, $add$ptr32 = 0, $add$ptr36 = 0, $add$ptr37 = 0, $add$ptr46 = 0, $add$ptr47 = 0, $add$ptr66 = 0, $add$ptr67 = 0, $add$ptr68 = 0, $add$ptr69 = 0, $add$ptr7 = 0, $add$ptr8 = 0, $add$ptr9 = 0, $add112 = 0, $add120 = 0; var $add126 = 0.0, $add23 = 0.0, $add39 = 0, $add59 = 0.0, $add64 = 0.0, $add79 = 0, $add88 = 0.0, $arch$addr = 0, $arrayidx = 0, $arrayidx113 = 0, $arrayidx116 = 0, $arrayidx121 = 0, $arrayidx124 = 0, $arrayidx21 = 0, $arrayidx25 = 0, $arrayidx55 = 0, $arrayidx62 = 0, $arrayidx78 = 0, $arrayidx80 = 0, $arrayidx96 = 0; var $arrayidx97 = 0, $bitrev = 0, $cmp = 0, $cmp107 = 0, $cmp19 = 0, $cmp42 = 0, $cmp52 = 0, $cmp76 = 0, $fp = 0, $i = 0, $i111 = 0, $i123 = 0, $i89 = 0, $i93 = 0, $i95 = 0, $idx$neg = 0, $idxprom = 0, $im = 0.0, $in$addr = 0, $inc = 0; var $inc133 = 0, $inc34 = 0, $inc49 = 0, $inc71 = 0, $inc99 = 0, $incdec$ptr = 0, $incdec$ptr127 = 0, $incdec$ptr28 = 0, $incdec$ptr44 = 0, $incdec$ptr45 = 0, $incdec$ptr60 = 0, $incdec$ptr65 = 0, $incdec$ptr81 = 0, $incdec$ptr82 = 0, $kfft = 0, $l$addr = 0, $mul = 0.0, $mul102 = 0, $mul114 = 0.0, $mul117 = 0.0; var $mul122 = 0.0, $mul125 = 0.0, $mul128 = 0, $mul130 = 0, $mul22 = 0.0, $mul24 = 0.0, $mul26 = 0.0, $mul56 = 0.0, $mul58 = 0.0, $mul61 = 0.0, $mul63 = 0.0, $mul83 = 0.0, $mul84 = 0.0, $mul86 = 0.0, $mul87 = 0.0, $mul91 = 0.0, $mul94 = 0.0, $out$addr = 0, $overlap$addr = 0, $re = 0.0; var $saved_stack = 0, $scale = 0.0, $scale1 = 0, $shift$addr = 0, $shr = 0, $shr10 = 0, $shr12 = 0, $shr14 = 0, $shr18 = 0, $shr4 = 0, $shr40 = 0, $shr6 = 0, $st = 0, $stride$addr = 0, $sub = 0, $sub101 = 0, $sub118 = 0.0, $sub27 = 0.0, $sub41 = 0, $sub54 = 0; var $sub57 = 0.0, $sub85 = 0.0, $t = 0, $t0 = 0.0, $t1 = 0.0, $t104 = 0, $trig = 0, $trig2 = 0, $vla = 0, $vla$alloca_mul = 0, $vla5 = 0, $vla5$alloca_mul = 0, $window$addr = 0, $wp1 = 0, $wp2 = 0, $xp1 = 0, $xp2 = 0, $yc = 0, $yi = 0.0, $yi110 = 0.0; var $yp = 0, $yp1 = 0, $yp2 = 0, $yp73 = 0, $yr = 0.0, $yr109 = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 160|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(160|0); $yc = sp + 48|0; $l$addr = $l; $in$addr = $in; $out$addr = $out; $window$addr = $window; $overlap$addr = $overlap; $shift$addr = $shift; $stride$addr = $stride; $arch$addr = $arch; $0 = $l$addr; $kfft = ((($0)) + 8|0); $1 = $shift$addr; $arrayidx = (($kfft) + ($1<<2)|0); $2 = HEAP32[$arrayidx>>2]|0; $st = $2; $3 = $st; $scale1 = ((($3)) + 4|0); $4 = +HEAPF32[$scale1>>2]; $scale = $4; $5 = $l$addr; $6 = HEAP32[$5>>2]|0; $N = $6; $7 = $l$addr; $trig2 = ((($7)) + 24|0); $8 = HEAP32[$trig2>>2]|0; $trig = $8; $i = 0; while(1) { $9 = $i; $10 = $shift$addr; $cmp = ($9|0)<($10|0); $11 = $N; $shr = $11 >> 1; if (!($cmp)) { break; } $N = $shr; $12 = $N; $13 = $trig; $add$ptr = (($13) + ($12<<2)|0); $trig = $add$ptr; $14 = $i; $inc = (($14) + 1)|0; $i = $inc; } $N2 = $shr; $15 = $N; $shr4 = $15 >> 2; $N4 = $shr4; $16 = $N2; $17 = (_llvm_stacksave()|0); $saved_stack = $17; $vla$alloca_mul = $16<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $18 = $N4; $vla5$alloca_mul = $18<<3; $vla5 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla5$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla5$alloca_mul)|0)+15)&-16)|0);; $19 = $in$addr; $20 = $overlap$addr; $shr6 = $20 >> 1; $add$ptr7 = (($19) + ($shr6<<2)|0); $xp1 = $add$ptr7; $21 = $in$addr; $22 = $N2; $add$ptr8 = (($21) + ($22<<2)|0); $add$ptr9 = ((($add$ptr8)) + -4|0); $23 = $overlap$addr; $shr10 = $23 >> 1; $add$ptr11 = (($add$ptr9) + ($shr10<<2)|0); $xp2 = $add$ptr11; $yp = $vla; $24 = $window$addr; $25 = $overlap$addr; $shr12 = $25 >> 1; $add$ptr13 = (($24) + ($shr12<<2)|0); $wp1 = $add$ptr13; $26 = $window$addr; $27 = $overlap$addr; $shr14 = $27 >> 1; $add$ptr15 = (($26) + ($shr14<<2)|0); $add$ptr16 = ((($add$ptr15)) + -4|0); $wp2 = $add$ptr16; $i = 0; while(1) { $28 = $i; $29 = $overlap$addr; $add = (($29) + 3)|0; $shr18 = $add >> 2; $cmp19 = ($28|0)<($shr18|0); if (!($cmp19)) { break; } $30 = $wp2; $31 = +HEAPF32[$30>>2]; $32 = $xp1; $33 = $N2; $arrayidx21 = (($32) + ($33<<2)|0); $34 = +HEAPF32[$arrayidx21>>2]; $mul = $31 * $34; $35 = $wp1; $36 = +HEAPF32[$35>>2]; $37 = $xp2; $38 = +HEAPF32[$37>>2]; $mul22 = $36 * $38; $add23 = $mul + $mul22; $39 = $yp; $incdec$ptr = ((($39)) + 4|0); $yp = $incdec$ptr; HEAPF32[$39>>2] = $add23; $40 = $wp1; $41 = +HEAPF32[$40>>2]; $42 = $xp1; $43 = +HEAPF32[$42>>2]; $mul24 = $41 * $43; $44 = $wp2; $45 = +HEAPF32[$44>>2]; $46 = $xp2; $47 = $N2; $sub = (0 - ($47))|0; $arrayidx25 = (($46) + ($sub<<2)|0); $48 = +HEAPF32[$arrayidx25>>2]; $mul26 = $45 * $48; $sub27 = $mul24 - $mul26; $49 = $yp; $incdec$ptr28 = ((($49)) + 4|0); $yp = $incdec$ptr28; HEAPF32[$49>>2] = $sub27; $50 = $xp1; $add$ptr29 = ((($50)) + 8|0); $xp1 = $add$ptr29; $51 = $xp2; $add$ptr30 = ((($51)) + -8|0); $xp2 = $add$ptr30; $52 = $wp1; $add$ptr31 = ((($52)) + 8|0); $wp1 = $add$ptr31; $53 = $wp2; $add$ptr32 = ((($53)) + -8|0); $wp2 = $add$ptr32; $54 = $i; $inc34 = (($54) + 1)|0; $i = $inc34; } $55 = $window$addr; $wp1 = $55; $56 = $window$addr; $57 = $overlap$addr; $add$ptr36 = (($56) + ($57<<2)|0); $add$ptr37 = ((($add$ptr36)) + -4|0); $wp2 = $add$ptr37; while(1) { $58 = $i; $59 = $N4; $60 = $overlap$addr; $add39 = (($60) + 3)|0; $shr40 = $add39 >> 2; $sub41 = (($59) - ($shr40))|0; $cmp42 = ($58|0)<($sub41|0); if (!($cmp42)) { break; } $61 = $xp2; $62 = +HEAPF32[$61>>2]; $63 = $yp; $incdec$ptr44 = ((($63)) + 4|0); $yp = $incdec$ptr44; HEAPF32[$63>>2] = $62; $64 = $xp1; $65 = +HEAPF32[$64>>2]; $66 = $yp; $incdec$ptr45 = ((($66)) + 4|0); $yp = $incdec$ptr45; HEAPF32[$66>>2] = $65; $67 = $xp1; $add$ptr46 = ((($67)) + 8|0); $xp1 = $add$ptr46; $68 = $xp2; $add$ptr47 = ((($68)) + -8|0); $xp2 = $add$ptr47; $69 = $i; $inc49 = (($69) + 1)|0; $i = $inc49; } while(1) { $70 = $i; $71 = $N4; $cmp52 = ($70|0)<($71|0); if (!($cmp52)) { break; } $72 = $wp1; $73 = +HEAPF32[$72>>2]; $74 = $xp1; $75 = $N2; $sub54 = (0 - ($75))|0; $arrayidx55 = (($74) + ($sub54<<2)|0); $76 = +HEAPF32[$arrayidx55>>2]; $mul56 = $73 * $76; $sub57 = - $mul56; $77 = $wp2; $78 = +HEAPF32[$77>>2]; $79 = $xp2; $80 = +HEAPF32[$79>>2]; $mul58 = $78 * $80; $add59 = $sub57 + $mul58; $81 = $yp; $incdec$ptr60 = ((($81)) + 4|0); $yp = $incdec$ptr60; HEAPF32[$81>>2] = $add59; $82 = $wp2; $83 = +HEAPF32[$82>>2]; $84 = $xp1; $85 = +HEAPF32[$84>>2]; $mul61 = $83 * $85; $86 = $wp1; $87 = +HEAPF32[$86>>2]; $88 = $xp2; $89 = $N2; $arrayidx62 = (($88) + ($89<<2)|0); $90 = +HEAPF32[$arrayidx62>>2]; $mul63 = $87 * $90; $add64 = $mul61 + $mul63; $91 = $yp; $incdec$ptr65 = ((($91)) + 4|0); $yp = $incdec$ptr65; HEAPF32[$91>>2] = $add64; $92 = $xp1; $add$ptr66 = ((($92)) + 8|0); $xp1 = $add$ptr66; $93 = $xp2; $add$ptr67 = ((($93)) + -8|0); $xp2 = $add$ptr67; $94 = $wp1; $add$ptr68 = ((($94)) + 8|0); $wp1 = $add$ptr68; $95 = $wp2; $add$ptr69 = ((($95)) + -8|0); $wp2 = $add$ptr69; $96 = $i; $inc71 = (($96) + 1)|0; $i = $inc71; } $yp73 = $vla; $97 = $trig; $t = $97; $i = 0; while(1) { $98 = $i; $99 = $N4; $cmp76 = ($98|0)<($99|0); if (!($cmp76)) { break; } $100 = $t; $101 = $i; $arrayidx78 = (($100) + ($101<<2)|0); $102 = +HEAPF32[$arrayidx78>>2]; $t0 = $102; $103 = $t; $104 = $N4; $105 = $i; $add79 = (($104) + ($105))|0; $arrayidx80 = (($103) + ($add79<<2)|0); $106 = +HEAPF32[$arrayidx80>>2]; $t1 = $106; $107 = $yp73; $incdec$ptr81 = ((($107)) + 4|0); $yp73 = $incdec$ptr81; $108 = +HEAPF32[$107>>2]; $re = $108; $109 = $yp73; $incdec$ptr82 = ((($109)) + 4|0); $yp73 = $incdec$ptr82; $110 = +HEAPF32[$109>>2]; $im = $110; $111 = $re; $112 = $t0; $mul83 = $111 * $112; $113 = $im; $114 = $t1; $mul84 = $113 * $114; $sub85 = $mul83 - $mul84; $yr = $sub85; $115 = $im; $116 = $t0; $mul86 = $115 * $116; $117 = $re; $118 = $t1; $mul87 = $117 * $118; $add88 = $mul86 + $mul87; $yi = $add88; $119 = $yr; HEAPF32[$yc>>2] = $119; $120 = $yi; $i89 = ((($yc)) + 4|0); HEAPF32[$i89>>2] = $120; $121 = $scale; $122 = +HEAPF32[$yc>>2]; $mul91 = $121 * $122; HEAPF32[$yc>>2] = $mul91; $123 = $scale; $i93 = ((($yc)) + 4|0); $124 = +HEAPF32[$i93>>2]; $mul94 = $123 * $124; $i95 = ((($yc)) + 4|0); HEAPF32[$i95>>2] = $mul94; $125 = $st; $bitrev = ((($125)) + 44|0); $126 = HEAP32[$bitrev>>2]|0; $127 = $i; $arrayidx96 = (($126) + ($127<<1)|0); $128 = HEAP16[$arrayidx96>>1]|0; $idxprom = $128 << 16 >> 16; $arrayidx97 = (($vla5) + ($idxprom<<3)|0); ;HEAP32[$arrayidx97>>2]=HEAP32[$yc>>2]|0;HEAP32[$arrayidx97+4>>2]=HEAP32[$yc+4>>2]|0; $129 = $i; $inc99 = (($129) + 1)|0; $i = $inc99; } $130 = $st; _opus_fft_impl($130,$vla5); $fp = $vla5; $131 = $out$addr; $yp1 = $131; $132 = $out$addr; $133 = $stride$addr; $134 = $N2; $sub101 = (($134) - 1)|0; $mul102 = Math_imul($133, $sub101)|0; $add$ptr103 = (($132) + ($mul102<<2)|0); $yp2 = $add$ptr103; $135 = $trig; $t104 = $135; $i = 0; while(1) { $136 = $i; $137 = $N4; $cmp107 = ($136|0)<($137|0); if (!($cmp107)) { break; } $138 = $fp; $i111 = ((($138)) + 4|0); $139 = +HEAPF32[$i111>>2]; $140 = $t104; $141 = $N4; $142 = $i; $add112 = (($141) + ($142))|0; $arrayidx113 = (($140) + ($add112<<2)|0); $143 = +HEAPF32[$arrayidx113>>2]; $mul114 = $139 * $143; $144 = $fp; $145 = +HEAPF32[$144>>2]; $146 = $t104; $147 = $i; $arrayidx116 = (($146) + ($147<<2)|0); $148 = +HEAPF32[$arrayidx116>>2]; $mul117 = $145 * $148; $sub118 = $mul114 - $mul117; $yr109 = $sub118; $149 = $fp; $150 = +HEAPF32[$149>>2]; $151 = $t104; $152 = $N4; $153 = $i; $add120 = (($152) + ($153))|0; $arrayidx121 = (($151) + ($add120<<2)|0); $154 = +HEAPF32[$arrayidx121>>2]; $mul122 = $150 * $154; $155 = $fp; $i123 = ((($155)) + 4|0); $156 = +HEAPF32[$i123>>2]; $157 = $t104; $158 = $i; $arrayidx124 = (($157) + ($158<<2)|0); $159 = +HEAPF32[$arrayidx124>>2]; $mul125 = $156 * $159; $add126 = $mul122 + $mul125; $yi110 = $add126; $160 = $yr109; $161 = $yp1; HEAPF32[$161>>2] = $160; $162 = $yi110; $163 = $yp2; HEAPF32[$163>>2] = $162; $164 = $fp; $incdec$ptr127 = ((($164)) + 8|0); $fp = $incdec$ptr127; $165 = $stride$addr; $mul128 = $165<<1; $166 = $yp1; $add$ptr129 = (($166) + ($mul128<<2)|0); $yp1 = $add$ptr129; $167 = $stride$addr; $mul130 = $167<<1; $168 = $yp2; $idx$neg = (0 - ($mul130))|0; $add$ptr131 = (($168) + ($idx$neg<<2)|0); $yp2 = $add$ptr131; $169 = $i; $inc133 = (($169) + 1)|0; $i = $inc133; } $170 = $saved_stack; _llvm_stackrestore(($170|0)); STACKTOP = sp;return; } function _clt_mdct_backward_c($l,$in,$out,$window,$overlap,$shift,$stride,$arch) { $l = $l|0; $in = $in|0; $out = $out|0; $window = $window|0; $overlap = $overlap|0; $shift = $shift|0; $stride = $stride|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0.0, $103 = 0, $104 = 0, $105 = 0, $106 = 0.0, $107 = 0.0, $108 = 0.0, $109 = 0.0, $11 = 0, $110 = 0.0, $111 = 0.0, $112 = 0.0, $113 = 0.0, $114 = 0.0, $115 = 0.0; var $116 = 0, $117 = 0.0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0.0, $132 = 0, $133 = 0.0; var $134 = 0, $135 = 0.0, $136 = 0.0, $137 = 0, $138 = 0.0, $139 = 0.0, $14 = 0, $140 = 0, $141 = 0, $142 = 0.0, $143 = 0.0, $144 = 0, $145 = 0.0, $146 = 0.0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $16 = 0; var $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0.0, $28 = 0, $29 = 0, $3 = 0, $30 = 0.0, $31 = 0, $32 = 0.0, $33 = 0, $34 = 0; var $35 = 0, $36 = 0.0, $37 = 0, $38 = 0.0, $39 = 0, $4 = 0, $40 = 0, $41 = 0.0, $42 = 0, $43 = 0.0, $44 = 0, $45 = 0, $46 = 0, $47 = 0.0, $48 = 0.0, $49 = 0, $5 = 0, $50 = 0, $51 = 0.0, $52 = 0; var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0; var $71 = 0, $72 = 0, $73 = 0.0, $74 = 0, $75 = 0.0, $76 = 0, $77 = 0, $78 = 0.0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0.0, $83 = 0.0, $84 = 0.0, $85 = 0.0, $86 = 0.0, $87 = 0.0, $88 = 0.0, $89 = 0.0; var $9 = 0, $90 = 0.0, $91 = 0, $92 = 0.0, $93 = 0, $94 = 0.0, $95 = 0.0, $96 = 0, $97 = 0.0, $98 = 0, $99 = 0, $N = 0, $N2 = 0, $N4 = 0, $add = 0, $add$ptr = 0, $add$ptr29 = 0, $add$ptr31 = 0, $add$ptr38 = 0, $add$ptr4 = 0; var $add$ptr40 = 0, $add$ptr42 = 0, $add$ptr43 = 0, $add$ptr44 = 0, $add$ptr6 = 0, $add$ptr84 = 0, $add$ptr85 = 0, $add$ptr90 = 0, $add$ptr91 = 0, $add$ptr93 = 0, $add$ptr94 = 0, $add105 = 0.0, $add16 = 0.0, $add19 = 0, $add24 = 0, $add48 = 0, $add58 = 0, $add62 = 0.0, $add78 = 0.0, $arch$addr = 0; var $arrayidx12 = 0, $arrayidx14 = 0, $arrayidx17 = 0, $arrayidx20 = 0, $arrayidx25 = 0, $arrayidx27 = 0, $arrayidx36 = 0, $arrayidx55 = 0, $arrayidx57 = 0, $arrayidx59 = 0, $arrayidx66 = 0, $arrayidx69 = 0, $arrayidx7 = 0, $arrayidx72 = 0, $arrayidx75 = 0, $arrayidx83 = 0, $bitrev = 0, $bitrev8 = 0, $cmp = 0, $cmp10 = 0; var $cmp50 = 0, $cmp96 = 0, $conv = 0, $div = 0, $i = 0, $idx$neg = 0, $im = 0.0, $in$addr = 0, $inc = 0, $inc110 = 0, $inc33 = 0, $inc87 = 0, $incdec$ptr = 0, $incdec$ptr102 = 0, $incdec$ptr106 = 0, $incdec$ptr107 = 0, $incdec$ptr108 = 0, $kfft = 0, $kfft35 = 0, $l$addr = 0; var $mul = 0, $mul100 = 0.0, $mul103 = 0.0, $mul104 = 0.0, $mul13 = 0.0, $mul15 = 0.0, $mul18 = 0.0, $mul21 = 0.0, $mul23 = 0, $mul26 = 0, $mul28 = 0, $mul30 = 0, $mul60 = 0.0, $mul61 = 0.0, $mul63 = 0.0, $mul64 = 0.0, $mul76 = 0.0, $mul77 = 0.0, $mul79 = 0.0, $mul80 = 0.0; var $mul99 = 0.0, $out$addr = 0, $overlap$addr = 0, $re = 0.0, $rev = 0, $shift$addr = 0, $shr = 0, $shr3 = 0, $shr37 = 0, $shr39 = 0, $shr41 = 0, $shr49 = 0, $shr5 = 0, $stride$addr = 0, $sub = 0, $sub101 = 0.0, $sub22 = 0.0, $sub65 = 0.0, $sub70 = 0, $sub71 = 0; var $sub73 = 0, $sub74 = 0, $sub81 = 0.0, $t = 0, $t0 = 0.0, $t1 = 0.0, $t45 = 0, $trig = 0, $trig1 = 0, $window$addr = 0, $wp1 = 0, $wp2 = 0, $x1 = 0.0, $x2 = 0.0, $xp1 = 0, $xp189 = 0, $xp2 = 0, $yi = 0.0, $yi54 = 0.0, $yp = 0; var $yp0 = 0, $yp1 = 0, $yp192 = 0, $yr = 0.0, $yr53 = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 144|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(144|0); $l$addr = $l; $in$addr = $in; $out$addr = $out; $window$addr = $window; $overlap$addr = $overlap; $shift$addr = $shift; $stride$addr = $stride; $arch$addr = $arch; $0 = $l$addr; $1 = HEAP32[$0>>2]|0; $N = $1; $2 = $l$addr; $trig1 = ((($2)) + 24|0); $3 = HEAP32[$trig1>>2]|0; $trig = $3; $i = 0; while(1) { $4 = $i; $5 = $shift$addr; $cmp = ($4|0)<($5|0); $6 = $N; $shr = $6 >> 1; if (!($cmp)) { break; } $N = $shr; $7 = $N; $8 = $trig; $add$ptr = (($8) + ($7<<2)|0); $trig = $add$ptr; $9 = $i; $inc = (($9) + 1)|0; $i = $inc; } $N2 = $shr; $10 = $N; $shr3 = $10 >> 2; $N4 = $shr3; $11 = $in$addr; $xp1 = $11; $12 = $in$addr; $13 = $stride$addr; $14 = $N2; $sub = (($14) - 1)|0; $mul = Math_imul($13, $sub)|0; $add$ptr4 = (($12) + ($mul<<2)|0); $xp2 = $add$ptr4; $15 = $out$addr; $16 = $overlap$addr; $shr5 = $16 >> 1; $add$ptr6 = (($15) + ($shr5<<2)|0); $yp = $add$ptr6; $17 = $trig; $t = $17; $18 = $l$addr; $kfft = ((($18)) + 8|0); $19 = $shift$addr; $arrayidx7 = (($kfft) + ($19<<2)|0); $20 = HEAP32[$arrayidx7>>2]|0; $bitrev8 = ((($20)) + 44|0); $21 = HEAP32[$bitrev8>>2]|0; $bitrev = $21; $i = 0; while(1) { $22 = $i; $23 = $N4; $cmp10 = ($22|0)<($23|0); if (!($cmp10)) { break; } $24 = $bitrev; $incdec$ptr = ((($24)) + 2|0); $bitrev = $incdec$ptr; $25 = HEAP16[$24>>1]|0; $conv = $25 << 16 >> 16; $rev = $conv; $26 = $xp2; $27 = +HEAPF32[$26>>2]; $28 = $t; $29 = $i; $arrayidx12 = (($28) + ($29<<2)|0); $30 = +HEAPF32[$arrayidx12>>2]; $mul13 = $27 * $30; $31 = $xp1; $32 = +HEAPF32[$31>>2]; $33 = $t; $34 = $N4; $35 = $i; $add = (($34) + ($35))|0; $arrayidx14 = (($33) + ($add<<2)|0); $36 = +HEAPF32[$arrayidx14>>2]; $mul15 = $32 * $36; $add16 = $mul13 + $mul15; $yr = $add16; $37 = $xp1; $38 = +HEAPF32[$37>>2]; $39 = $t; $40 = $i; $arrayidx17 = (($39) + ($40<<2)|0); $41 = +HEAPF32[$arrayidx17>>2]; $mul18 = $38 * $41; $42 = $xp2; $43 = +HEAPF32[$42>>2]; $44 = $t; $45 = $N4; $46 = $i; $add19 = (($45) + ($46))|0; $arrayidx20 = (($44) + ($add19<<2)|0); $47 = +HEAPF32[$arrayidx20>>2]; $mul21 = $43 * $47; $sub22 = $mul18 - $mul21; $yi = $sub22; $48 = $yr; $49 = $yp; $50 = $rev; $mul23 = $50<<1; $add24 = (($mul23) + 1)|0; $arrayidx25 = (($49) + ($add24<<2)|0); HEAPF32[$arrayidx25>>2] = $48; $51 = $yi; $52 = $yp; $53 = $rev; $mul26 = $53<<1; $arrayidx27 = (($52) + ($mul26<<2)|0); HEAPF32[$arrayidx27>>2] = $51; $54 = $stride$addr; $mul28 = $54<<1; $55 = $xp1; $add$ptr29 = (($55) + ($mul28<<2)|0); $xp1 = $add$ptr29; $56 = $stride$addr; $mul30 = $56<<1; $57 = $xp2; $idx$neg = (0 - ($mul30))|0; $add$ptr31 = (($57) + ($idx$neg<<2)|0); $xp2 = $add$ptr31; $58 = $i; $inc33 = (($58) + 1)|0; $i = $inc33; } $59 = $l$addr; $kfft35 = ((($59)) + 8|0); $60 = $shift$addr; $arrayidx36 = (($kfft35) + ($60<<2)|0); $61 = HEAP32[$arrayidx36>>2]|0; $62 = $out$addr; $63 = $overlap$addr; $shr37 = $63 >> 1; $add$ptr38 = (($62) + ($shr37<<2)|0); _opus_fft_impl($61,$add$ptr38); $64 = $out$addr; $65 = $overlap$addr; $shr39 = $65 >> 1; $add$ptr40 = (($64) + ($shr39<<2)|0); $yp0 = $add$ptr40; $66 = $out$addr; $67 = $overlap$addr; $shr41 = $67 >> 1; $add$ptr42 = (($66) + ($shr41<<2)|0); $68 = $N2; $add$ptr43 = (($add$ptr42) + ($68<<2)|0); $add$ptr44 = ((($add$ptr43)) + -8|0); $yp1 = $add$ptr44; $69 = $trig; $t45 = $69; $i = 0; while(1) { $70 = $i; $71 = $N4; $add48 = (($71) + 1)|0; $shr49 = $add48 >> 1; $cmp50 = ($70|0)<($shr49|0); if (!($cmp50)) { break; } $72 = $yp0; $arrayidx55 = ((($72)) + 4|0); $73 = +HEAPF32[$arrayidx55>>2]; $re = $73; $74 = $yp0; $75 = +HEAPF32[$74>>2]; $im = $75; $76 = $t45; $77 = $i; $arrayidx57 = (($76) + ($77<<2)|0); $78 = +HEAPF32[$arrayidx57>>2]; $t0 = $78; $79 = $t45; $80 = $N4; $81 = $i; $add58 = (($80) + ($81))|0; $arrayidx59 = (($79) + ($add58<<2)|0); $82 = +HEAPF32[$arrayidx59>>2]; $t1 = $82; $83 = $re; $84 = $t0; $mul60 = $83 * $84; $85 = $im; $86 = $t1; $mul61 = $85 * $86; $add62 = $mul60 + $mul61; $yr53 = $add62; $87 = $re; $88 = $t1; $mul63 = $87 * $88; $89 = $im; $90 = $t0; $mul64 = $89 * $90; $sub65 = $mul63 - $mul64; $yi54 = $sub65; $91 = $yp1; $arrayidx66 = ((($91)) + 4|0); $92 = +HEAPF32[$arrayidx66>>2]; $re = $92; $93 = $yp1; $94 = +HEAPF32[$93>>2]; $im = $94; $95 = $yr53; $96 = $yp0; HEAPF32[$96>>2] = $95; $97 = $yi54; $98 = $yp1; $arrayidx69 = ((($98)) + 4|0); HEAPF32[$arrayidx69>>2] = $97; $99 = $t45; $100 = $N4; $101 = $i; $sub70 = (($100) - ($101))|0; $sub71 = (($sub70) - 1)|0; $arrayidx72 = (($99) + ($sub71<<2)|0); $102 = +HEAPF32[$arrayidx72>>2]; $t0 = $102; $103 = $t45; $104 = $N2; $105 = $i; $sub73 = (($104) - ($105))|0; $sub74 = (($sub73) - 1)|0; $arrayidx75 = (($103) + ($sub74<<2)|0); $106 = +HEAPF32[$arrayidx75>>2]; $t1 = $106; $107 = $re; $108 = $t0; $mul76 = $107 * $108; $109 = $im; $110 = $t1; $mul77 = $109 * $110; $add78 = $mul76 + $mul77; $yr53 = $add78; $111 = $re; $112 = $t1; $mul79 = $111 * $112; $113 = $im; $114 = $t0; $mul80 = $113 * $114; $sub81 = $mul79 - $mul80; $yi54 = $sub81; $115 = $yr53; $116 = $yp1; HEAPF32[$116>>2] = $115; $117 = $yi54; $118 = $yp0; $arrayidx83 = ((($118)) + 4|0); HEAPF32[$arrayidx83>>2] = $117; $119 = $yp0; $add$ptr84 = ((($119)) + 8|0); $yp0 = $add$ptr84; $120 = $yp1; $add$ptr85 = ((($120)) + -8|0); $yp1 = $add$ptr85; $121 = $i; $inc87 = (($121) + 1)|0; $i = $inc87; } $122 = $out$addr; $123 = $overlap$addr; $add$ptr90 = (($122) + ($123<<2)|0); $add$ptr91 = ((($add$ptr90)) + -4|0); $xp189 = $add$ptr91; $124 = $out$addr; $yp192 = $124; $125 = $window$addr; $wp1 = $125; $126 = $window$addr; $127 = $overlap$addr; $add$ptr93 = (($126) + ($127<<2)|0); $add$ptr94 = ((($add$ptr93)) + -4|0); $wp2 = $add$ptr94; $i = 0; while(1) { $128 = $i; $129 = $overlap$addr; $div = (($129|0) / 2)&-1; $cmp96 = ($128|0)<($div|0); if (!($cmp96)) { break; } $130 = $xp189; $131 = +HEAPF32[$130>>2]; $x1 = $131; $132 = $yp192; $133 = +HEAPF32[$132>>2]; $x2 = $133; $134 = $wp2; $135 = +HEAPF32[$134>>2]; $136 = $x2; $mul99 = $135 * $136; $137 = $wp1; $138 = +HEAPF32[$137>>2]; $139 = $x1; $mul100 = $138 * $139; $sub101 = $mul99 - $mul100; $140 = $yp192; $incdec$ptr102 = ((($140)) + 4|0); $yp192 = $incdec$ptr102; HEAPF32[$140>>2] = $sub101; $141 = $wp1; $142 = +HEAPF32[$141>>2]; $143 = $x2; $mul103 = $142 * $143; $144 = $wp2; $145 = +HEAPF32[$144>>2]; $146 = $x1; $mul104 = $145 * $146; $add105 = $mul103 + $mul104; $147 = $xp189; $incdec$ptr106 = ((($147)) + -4|0); $xp189 = $incdec$ptr106; HEAPF32[$147>>2] = $add105; $148 = $wp1; $incdec$ptr107 = ((($148)) + 4|0); $wp1 = $incdec$ptr107; $149 = $wp2; $incdec$ptr108 = ((($149)) + -4|0); $wp2 = $incdec$ptr108; $150 = $i; $inc110 = (($150) + 1)|0; $i = $inc110; } STACKTOP = sp;return; } function _opus_custom_mode_create($Fs,$frame_size,$error) { $Fs = $Fs|0; $frame_size = $frame_size|0; $error = $error|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; var $7 = 0, $8 = 0, $9 = 0, $Fs$addr = 0, $arrayidx = 0, $arrayidx10 = 0, $arrayidx6 = 0, $arrayidx7 = 0, $cmp = 0, $cmp2 = 0, $cmp5 = 0, $cmp8 = 0, $error$addr = 0, $frame_size$addr = 0, $i = 0, $inc = 0, $inc13 = 0, $j = 0, $mul = 0, $nbShortMdcts = 0; var $retval = 0, $shl = 0, $shortMdctSize = 0, $tobool = 0, $tobool15 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $Fs$addr = $Fs; $frame_size$addr = $frame_size; $error$addr = $error; $i = 0; L1: while(1) { $0 = $i; $cmp = ($0|0)<(1); if (!($cmp)) { label = 12; break; } $j = 0; while(1) { $1 = $j; $cmp2 = ($1|0)<(4); if (!($cmp2)) { break; } $2 = $Fs$addr; $3 = $i; $arrayidx = (3060 + ($3<<2)|0); $4 = HEAP32[$arrayidx>>2]|0; $5 = HEAP32[$4>>2]|0; $cmp5 = ($2|0)==($5|0); if ($cmp5) { $6 = $frame_size$addr; $7 = $j; $shl = $6 << $7; $8 = $i; $arrayidx6 = (3060 + ($8<<2)|0); $9 = HEAP32[$arrayidx6>>2]|0; $shortMdctSize = ((($9)) + 44|0); $10 = HEAP32[$shortMdctSize>>2]|0; $11 = $i; $arrayidx7 = (3060 + ($11<<2)|0); $12 = HEAP32[$arrayidx7>>2]|0; $nbShortMdcts = ((($12)) + 40|0); $13 = HEAP32[$nbShortMdcts>>2]|0; $mul = Math_imul($10, $13)|0; $cmp8 = ($shl|0)==($mul|0); if ($cmp8) { label = 7; break L1; } } $18 = $j; $inc = (($18) + 1)|0; $j = $inc; } $19 = $i; $inc13 = (($19) + 1)|0; $i = $inc13; } if ((label|0) == 7) { $14 = $error$addr; $tobool = ($14|0)!=(0|0); if ($tobool) { $15 = $error$addr; HEAP32[$15>>2] = 0; } $16 = $i; $arrayidx10 = (3060 + ($16<<2)|0); $17 = HEAP32[$arrayidx10>>2]|0; $retval = $17; $22 = $retval; STACKTOP = sp;return ($22|0); } else if ((label|0) == 12) { $20 = $error$addr; $tobool15 = ($20|0)!=(0|0); if ($tobool15) { $21 = $error$addr; HEAP32[$21>>2] = -1; } $retval = 0; $22 = $retval; STACKTOP = sp;return ($22|0); } return (0)|0; } function _pitch_downsample($x,$x_lp,$len,$C,$arch) { $x = $x|0; $x_lp = $x_lp|0; $len = $len|0; $C = $C|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0.0, $14 = 0, $15 = 0, $16 = 0, $17 = 0.0, $18 = 0, $19 = 0, $2 = 0, $20 = 0.0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0.0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0.0, $33 = 0, $34 = 0, $35 = 0, $36 = 0.0, $37 = 0, $38 = 0, $39 = 0.0, $4 = 0, $40 = 0, $41 = 0.0, $42 = 0, $43 = 0, $44 = 0.0; var $45 = 0, $46 = 0.0, $47 = 0, $48 = 0, $49 = 0, $5 = 0.0, $50 = 0.0, $51 = 0, $52 = 0, $53 = 0.0, $54 = 0, $55 = 0, $56 = 0, $57 = 0.0, $58 = 0, $59 = 0, $6 = 0, $60 = 0.0, $61 = 0, $62 = 0.0; var $63 = 0.0, $64 = 0, $65 = 0, $66 = 0.0, $67 = 0.0, $68 = 0.0, $69 = 0.0, $7 = 0, $70 = 0.0, $71 = 0.0, $72 = 0.0, $73 = 0.0, $74 = 0.0, $75 = 0.0, $76 = 0.0, $77 = 0.0, $78 = 0, $79 = 0, $8 = 0, $9 = 0.0; var $C$addr = 0, $ac = 0, $add = 0, $add10 = 0.0, $add101 = 0.0, $add18 = 0.0, $add32 = 0, $add34 = 0.0, $add39 = 0.0, $add42 = 0.0, $add5 = 0.0, $add51 = 0.0, $add54 = 0.0, $add86 = 0.0, $add91 = 0.0, $add96 = 0.0, $arch$addr = 0, $arrayidx1 = 0, $arrayidx102 = 0, $arrayidx103 = 0; var $arrayidx105 = 0, $arrayidx12 = 0, $arrayidx14 = 0, $arrayidx26 = 0, $arrayidx29 = 0, $arrayidx30 = 0, $arrayidx33 = 0, $arrayidx36 = 0, $arrayidx38 = 0, $arrayidx4 = 0, $arrayidx41 = 0, $arrayidx47 = 0, $arrayidx49 = 0, $arrayidx61 = 0, $arrayidx67 = 0, $arrayidx79 = 0, $arrayidx81 = 0, $arrayidx88 = 0, $arrayidx9 = 0, $arrayidx92 = 0; var $arrayidx93 = 0, $arrayidx94 = 0, $arrayidx97 = 0, $arrayidx98 = 0, $arrayidx99 = 0, $c1 = 0.0, $cmp = 0, $cmp21 = 0, $cmp24 = 0, $cmp59 = 0, $cmp75 = 0, $conv = 0.0, $conv64 = 0.0, $i = 0, $inc = 0, $inc44 = 0, $inc70 = 0, $inc83 = 0, $len$addr = 0, $lpc = 0; var $lpc2 = 0, $mul = 0, $mul100 = 0.0, $mul104 = 0.0, $mul11 = 0.0, $mul15 = 0.0, $mul19 = 0.0, $mul27 = 0, $mul3 = 0, $mul31 = 0, $mul35 = 0.0, $mul37 = 0, $mul40 = 0.0, $mul48 = 0.0, $mul52 = 0.0, $mul57 = 0.0, $mul6 = 0.0, $mul62 = 0.0, $mul63 = 0.0, $mul65 = 0.0; var $mul66 = 0.0, $mul78 = 0.0, $mul8 = 0, $mul80 = 0.0, $mul90 = 0.0, $mul95 = 0.0, $shr = 0, $shr107 = 0, $shr23 = 0, $shr55 = 0, $sub = 0, $sub28 = 0, $sub68 = 0.0, $tmp = 0.0, $x$addr = 0, $x_lp$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 96|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(96|0); $ac = sp + 44|0; $lpc = sp + 24|0; $lpc2 = sp + 4|0; $x$addr = $x; $x_lp$addr = $x_lp; $len$addr = $len; $C$addr = $C; $arch$addr = $arch; $tmp = 1.0; $c1 = 0.80000001192092896; $i = 1; while(1) { $0 = $i; $1 = $len$addr; $shr = $1 >> 1; $cmp = ($0|0)<($shr|0); $2 = $x$addr; $3 = HEAP32[$2>>2]|0; if (!($cmp)) { break; } $4 = $i; $mul = $4<<1; $sub = (($mul) - 1)|0; $arrayidx1 = (($3) + ($sub<<2)|0); $5 = +HEAPF32[$arrayidx1>>2]; $6 = $x$addr; $7 = HEAP32[$6>>2]|0; $8 = $i; $mul3 = $8<<1; $add = (($mul3) + 1)|0; $arrayidx4 = (($7) + ($add<<2)|0); $9 = +HEAPF32[$arrayidx4>>2]; $add5 = $5 + $9; $mul6 = 0.5 * $add5; $10 = $x$addr; $11 = HEAP32[$10>>2]|0; $12 = $i; $mul8 = $12<<1; $arrayidx9 = (($11) + ($mul8<<2)|0); $13 = +HEAPF32[$arrayidx9>>2]; $add10 = $mul6 + $13; $mul11 = 0.5 * $add10; $14 = $x_lp$addr; $15 = $i; $arrayidx12 = (($14) + ($15<<2)|0); HEAPF32[$arrayidx12>>2] = $mul11; $16 = $i; $inc = (($16) + 1)|0; $i = $inc; } $arrayidx14 = ((($3)) + 4|0); $17 = +HEAPF32[$arrayidx14>>2]; $mul15 = 0.5 * $17; $18 = $x$addr; $19 = HEAP32[$18>>2]|0; $20 = +HEAPF32[$19>>2]; $add18 = $mul15 + $20; $mul19 = 0.5 * $add18; $21 = $x_lp$addr; HEAPF32[$21>>2] = $mul19; $22 = $C$addr; $cmp21 = ($22|0)==(2); if ($cmp21) { $i = 1; while(1) { $23 = $i; $24 = $len$addr; $shr23 = $24 >> 1; $cmp24 = ($23|0)<($shr23|0); $25 = $x$addr; $arrayidx26 = ((($25)) + 4|0); $26 = HEAP32[$arrayidx26>>2]|0; if (!($cmp24)) { break; } $27 = $i; $mul27 = $27<<1; $sub28 = (($mul27) - 1)|0; $arrayidx29 = (($26) + ($sub28<<2)|0); $28 = +HEAPF32[$arrayidx29>>2]; $29 = $x$addr; $arrayidx30 = ((($29)) + 4|0); $30 = HEAP32[$arrayidx30>>2]|0; $31 = $i; $mul31 = $31<<1; $add32 = (($mul31) + 1)|0; $arrayidx33 = (($30) + ($add32<<2)|0); $32 = +HEAPF32[$arrayidx33>>2]; $add34 = $28 + $32; $mul35 = 0.5 * $add34; $33 = $x$addr; $arrayidx36 = ((($33)) + 4|0); $34 = HEAP32[$arrayidx36>>2]|0; $35 = $i; $mul37 = $35<<1; $arrayidx38 = (($34) + ($mul37<<2)|0); $36 = +HEAPF32[$arrayidx38>>2]; $add39 = $mul35 + $36; $mul40 = 0.5 * $add39; $37 = $x_lp$addr; $38 = $i; $arrayidx41 = (($37) + ($38<<2)|0); $39 = +HEAPF32[$arrayidx41>>2]; $add42 = $39 + $mul40; HEAPF32[$arrayidx41>>2] = $add42; $40 = $i; $inc44 = (($40) + 1)|0; $i = $inc44; } $arrayidx47 = ((($26)) + 4|0); $41 = +HEAPF32[$arrayidx47>>2]; $mul48 = 0.5 * $41; $42 = $x$addr; $arrayidx49 = ((($42)) + 4|0); $43 = HEAP32[$arrayidx49>>2]|0; $44 = +HEAPF32[$43>>2]; $add51 = $mul48 + $44; $mul52 = 0.5 * $add51; $45 = $x_lp$addr; $46 = +HEAPF32[$45>>2]; $add54 = $46 + $mul52; HEAPF32[$45>>2] = $add54; } $47 = $x_lp$addr; $48 = $len$addr; $shr55 = $48 >> 1; $49 = $arch$addr; (__celt_autocorr($47,$ac,0,0,4,$shr55,$49)|0); $50 = +HEAPF32[$ac>>2]; $mul57 = $50 * 1.0001000165939331; HEAPF32[$ac>>2] = $mul57; $i = 1; while(1) { $51 = $i; $cmp59 = ($51|0)<=(4); if (!($cmp59)) { break; } $52 = $i; $arrayidx61 = (($ac) + ($52<<2)|0); $53 = +HEAPF32[$arrayidx61>>2]; $54 = $i; $conv = (+($54|0)); $mul62 = 0.0080000003799796104 * $conv; $mul63 = $53 * $mul62; $55 = $i; $conv64 = (+($55|0)); $mul65 = 0.0080000003799796104 * $conv64; $mul66 = $mul63 * $mul65; $56 = $i; $arrayidx67 = (($ac) + ($56<<2)|0); $57 = +HEAPF32[$arrayidx67>>2]; $sub68 = $57 - $mul66; HEAPF32[$arrayidx67>>2] = $sub68; $58 = $i; $inc70 = (($58) + 1)|0; $i = $inc70; } __celt_lpc($lpc,$ac,4); $i = 0; while(1) { $59 = $i; $cmp75 = ($59|0)<(4); if (!($cmp75)) { break; } $60 = $tmp; $mul78 = 0.89999997615814208 * $60; $tmp = $mul78; $61 = $i; $arrayidx79 = (($lpc) + ($61<<2)|0); $62 = +HEAPF32[$arrayidx79>>2]; $63 = $tmp; $mul80 = $62 * $63; $64 = $i; $arrayidx81 = (($lpc) + ($64<<2)|0); HEAPF32[$arrayidx81>>2] = $mul80; $65 = $i; $inc83 = (($65) + 1)|0; $i = $inc83; } $66 = +HEAPF32[$lpc>>2]; $add86 = $66 + 0.80000001192092896; HEAPF32[$lpc2>>2] = $add86; $arrayidx88 = ((($lpc)) + 4|0); $67 = +HEAPF32[$arrayidx88>>2]; $68 = $c1; $69 = +HEAPF32[$lpc>>2]; $mul90 = $68 * $69; $add91 = $67 + $mul90; $arrayidx92 = ((($lpc2)) + 4|0); HEAPF32[$arrayidx92>>2] = $add91; $arrayidx93 = ((($lpc)) + 8|0); $70 = +HEAPF32[$arrayidx93>>2]; $71 = $c1; $arrayidx94 = ((($lpc)) + 4|0); $72 = +HEAPF32[$arrayidx94>>2]; $mul95 = $71 * $72; $add96 = $70 + $mul95; $arrayidx97 = ((($lpc2)) + 8|0); HEAPF32[$arrayidx97>>2] = $add96; $arrayidx98 = ((($lpc)) + 12|0); $73 = +HEAPF32[$arrayidx98>>2]; $74 = $c1; $arrayidx99 = ((($lpc)) + 8|0); $75 = +HEAPF32[$arrayidx99>>2]; $mul100 = $74 * $75; $add101 = $73 + $mul100; $arrayidx102 = ((($lpc2)) + 12|0); HEAPF32[$arrayidx102>>2] = $add101; $76 = $c1; $arrayidx103 = ((($lpc)) + 12|0); $77 = +HEAPF32[$arrayidx103>>2]; $mul104 = $76 * $77; $arrayidx105 = ((($lpc2)) + 16|0); HEAPF32[$arrayidx105>>2] = $mul104; $78 = $x_lp$addr; $79 = $len$addr; $shr107 = $79 >> 1; _celt_fir5($78,$lpc2,$shr107); STACKTOP = sp;return; } function _celt_fir5($x,$num,$N) { $x = $x|0; $num = $num|0; $N = $N|0; var $0 = 0, $1 = 0.0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0.0, $15 = 0.0, $16 = 0.0, $17 = 0.0, $18 = 0.0, $19 = 0.0, $2 = 0, $20 = 0.0, $21 = 0.0, $22 = 0.0, $23 = 0.0, $24 = 0.0, $25 = 0.0, $26 = 0.0; var $27 = 0.0, $28 = 0.0, $29 = 0.0, $3 = 0.0, $30 = 0.0, $31 = 0.0, $32 = 0.0, $33 = 0.0, $34 = 0, $35 = 0, $36 = 0.0, $37 = 0.0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $5 = 0.0, $6 = 0, $7 = 0.0, $8 = 0; var $9 = 0.0, $N$addr = 0, $add = 0.0, $add11 = 0.0, $add13 = 0.0, $add7 = 0.0, $add9 = 0.0, $arrayidx1 = 0, $arrayidx14 = 0, $arrayidx15 = 0, $arrayidx2 = 0, $arrayidx3 = 0, $arrayidx4 = 0, $arrayidx5 = 0, $cmp = 0, $i = 0, $inc = 0, $mem0 = 0.0, $mem1 = 0.0, $mem2 = 0.0; var $mem3 = 0.0, $mem4 = 0.0, $mul = 0.0, $mul10 = 0.0, $mul12 = 0.0, $mul6 = 0.0, $mul8 = 0.0, $num$addr = 0, $num0 = 0.0, $num1 = 0.0, $num2 = 0.0, $num3 = 0.0, $num4 = 0.0, $sum = 0.0, $x$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $x$addr = $x; $num$addr = $num; $N$addr = $N; $0 = $num$addr; $1 = +HEAPF32[$0>>2]; $num0 = $1; $2 = $num$addr; $arrayidx1 = ((($2)) + 4|0); $3 = +HEAPF32[$arrayidx1>>2]; $num1 = $3; $4 = $num$addr; $arrayidx2 = ((($4)) + 8|0); $5 = +HEAPF32[$arrayidx2>>2]; $num2 = $5; $6 = $num$addr; $arrayidx3 = ((($6)) + 12|0); $7 = +HEAPF32[$arrayidx3>>2]; $num3 = $7; $8 = $num$addr; $arrayidx4 = ((($8)) + 16|0); $9 = +HEAPF32[$arrayidx4>>2]; $num4 = $9; $mem0 = 0.0; $mem1 = 0.0; $mem2 = 0.0; $mem3 = 0.0; $mem4 = 0.0; $i = 0; while(1) { $10 = $i; $11 = $N$addr; $cmp = ($10|0)<($11|0); if (!($cmp)) { break; } $12 = $x$addr; $13 = $i; $arrayidx5 = (($12) + ($13<<2)|0); $14 = +HEAPF32[$arrayidx5>>2]; $sum = $14; $15 = $sum; $16 = $num0; $17 = $mem0; $mul = $16 * $17; $add = $15 + $mul; $sum = $add; $18 = $sum; $19 = $num1; $20 = $mem1; $mul6 = $19 * $20; $add7 = $18 + $mul6; $sum = $add7; $21 = $sum; $22 = $num2; $23 = $mem2; $mul8 = $22 * $23; $add9 = $21 + $mul8; $sum = $add9; $24 = $sum; $25 = $num3; $26 = $mem3; $mul10 = $25 * $26; $add11 = $24 + $mul10; $sum = $add11; $27 = $sum; $28 = $num4; $29 = $mem4; $mul12 = $28 * $29; $add13 = $27 + $mul12; $sum = $add13; $30 = $mem3; $mem4 = $30; $31 = $mem2; $mem3 = $31; $32 = $mem1; $mem2 = $32; $33 = $mem0; $mem1 = $33; $34 = $x$addr; $35 = $i; $arrayidx14 = (($34) + ($35<<2)|0); $36 = +HEAPF32[$arrayidx14>>2]; $mem0 = $36; $37 = $sum; $38 = $x$addr; $39 = $i; $arrayidx15 = (($38) + ($39<<2)|0); HEAPF32[$arrayidx15>>2] = $37; $40 = $i; $inc = (($40) + 1)|0; $i = $inc; } STACKTOP = sp;return; } function _celt_pitch_xcorr_c($_x,$_y,$xcorr,$len,$max_pitch,$arch) { $_x = $_x|0; $_y = $_y|0; $xcorr = $xcorr|0; $len = $len|0; $max_pitch = $max_pitch|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0.0, $12 = 0, $13 = 0, $14 = 0.0, $15 = 0, $16 = 0, $17 = 0.0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0.0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0.0, $9 = 0, $_x$addr = 0, $_y$addr = 0, $add = 0, $add$ptr = 0, $add$ptr18 = 0, $add11 = 0, $add6 = 0; var $add9 = 0, $and = 0, $and16 = 0, $arch$addr = 0, $arrayidx = 0, $arrayidx10 = 0, $arrayidx17 = 0, $arrayidx19 = 0, $arrayidx2 = 0, $arrayidx3 = 0, $arrayidx4 = 0, $arrayidx5 = 0, $arrayidx7 = 0, $arrayidx8 = 0, $call = 0.0, $cmp = 0, $cmp13 = 0, $i = 0, $inc = 0, $len$addr = 0; var $max_pitch$addr = 0, $sub = 0, $sum = 0, $sum15 = 0.0, $xcorr$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $sum = sp + 8|0; $_x$addr = $_x; $_y$addr = $_y; $xcorr$addr = $xcorr; $len$addr = $len; $max_pitch$addr = $max_pitch; $arch$addr = $arch; $i = 0; while(1) { $0 = $i; $1 = $max_pitch$addr; $sub = (($1) - 3)|0; $cmp = ($0|0)<($sub|0); if (!($cmp)) { break; } ;HEAP32[$sum>>2]=0|0;HEAP32[$sum+4>>2]=0|0;HEAP32[$sum+8>>2]=0|0;HEAP32[$sum+12>>2]=0|0; $2 = $arch$addr; $and = $2 & 7; $arrayidx = (_XCORR_KERNEL_IMPL + ($and<<2)|0); $3 = HEAP32[$arrayidx>>2]|0; $4 = $_x$addr; $5 = $_y$addr; $6 = $i; $add$ptr = (($5) + ($6<<2)|0); $7 = $len$addr; FUNCTION_TABLE_viiii[$3 & 31]($4,$add$ptr,$sum,$7); $8 = +HEAPF32[$sum>>2]; $9 = $xcorr$addr; $10 = $i; $arrayidx2 = (($9) + ($10<<2)|0); HEAPF32[$arrayidx2>>2] = $8; $arrayidx3 = ((($sum)) + 4|0); $11 = +HEAPF32[$arrayidx3>>2]; $12 = $xcorr$addr; $13 = $i; $add = (($13) + 1)|0; $arrayidx4 = (($12) + ($add<<2)|0); HEAPF32[$arrayidx4>>2] = $11; $arrayidx5 = ((($sum)) + 8|0); $14 = +HEAPF32[$arrayidx5>>2]; $15 = $xcorr$addr; $16 = $i; $add6 = (($16) + 2)|0; $arrayidx7 = (($15) + ($add6<<2)|0); HEAPF32[$arrayidx7>>2] = $14; $arrayidx8 = ((($sum)) + 12|0); $17 = +HEAPF32[$arrayidx8>>2]; $18 = $xcorr$addr; $19 = $i; $add9 = (($19) + 3)|0; $arrayidx10 = (($18) + ($add9<<2)|0); HEAPF32[$arrayidx10>>2] = $17; $20 = $i; $add11 = (($20) + 4)|0; $i = $add11; } while(1) { $21 = $i; $22 = $max_pitch$addr; $cmp13 = ($21|0)<($22|0); if (!($cmp13)) { break; } $23 = $arch$addr; $and16 = $23 & 7; $arrayidx17 = (_CELT_INNER_PROD_IMPL + ($and16<<2)|0); $24 = HEAP32[$arrayidx17>>2]|0; $25 = $_x$addr; $26 = $_y$addr; $27 = $i; $add$ptr18 = (($26) + ($27<<2)|0); $28 = $len$addr; $call = (+FUNCTION_TABLE_diii[$24 & 0]($25,$add$ptr18,$28)); $sum15 = $call; $29 = $sum15; $30 = $xcorr$addr; $31 = $i; $arrayidx19 = (($30) + ($31<<2)|0); HEAPF32[$arrayidx19>>2] = $29; $32 = $i; $inc = (($32) + 1)|0; $i = $inc; } STACKTOP = sp;return; } function _pitch_search($x_lp,$y,$len,$max_pitch,$pitch,$arch) { $x_lp = $x_lp|0; $y = $y|0; $len = $len|0; $max_pitch = $max_pitch|0; $pitch = $pitch|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0.0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0.0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0.0, $39 = 0.0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0.0, $5 = 0, $50 = 0, $51 = 0.0, $52 = 0, $53 = 0.0, $54 = 0.0, $55 = 0.0, $56 = 0.0, $57 = 0.0, $58 = 0.0, $59 = 0.0, $6 = 0, $60 = 0.0, $61 = 0.0, $62 = 0; var $63 = 0, $64 = 0, $65 = 0, $7 = 0, $8 = 0, $9 = 0, $a = 0.0, $add = 0, $add$ptr = 0, $add59 = 0, $and = 0, $arch$addr = 0, $arrayidx = 0, $arrayidx12 = 0, $arrayidx13 = 0, $arrayidx25 = 0, $arrayidx29 = 0, $arrayidx34 = 0, $arrayidx38 = 0, $arrayidx55 = 0; var $arrayidx57 = 0, $arrayidx6 = 0, $arrayidx60 = 0, $b = 0.0, $best_pitch = 0, $c = 0.0, $call = 0, $call32 = 0, $call36 = 0.0, $cmp = 0, $cmp23 = 0, $cmp28 = 0, $cmp33 = 0, $cmp37 = 0, $cmp46 = 0, $cmp51 = 0, $cmp64 = 0, $cmp69 = 0, $cmp9 = 0, $cond = 0.0; var $i = 0, $inc = 0, $inc15 = 0, $inc40 = 0, $j = 0, $lag = 0, $len$addr = 0, $max_pitch$addr = 0, $mul = 0, $mul11 = 0, $mul27 = 0, $mul30 = 0, $mul63 = 0.0, $mul68 = 0.0, $mul77 = 0, $offset = 0, $pitch$addr = 0, $saved_stack = 0, $shr = 0, $shr1 = 0; var $shr17 = 0, $shr18 = 0, $shr19 = 0, $shr20 = 0, $shr22 = 0, $shr3 = 0, $shr35 = 0, $shr42 = 0, $shr43 = 0, $shr49 = 0, $shr5 = 0, $shr8 = 0, $sub = 0, $sub31 = 0, $sub50 = 0, $sub54 = 0, $sub61 = 0.0, $sub62 = 0.0, $sub66 = 0.0, $sub67 = 0.0; var $sub78 = 0, $sum = 0.0, $vla = 0, $vla$alloca_mul = 0, $vla2 = 0, $vla2$alloca_mul = 0, $vla4 = 0, $vla4$alloca_mul = 0, $x_lp$addr = 0, $y$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(80|0); $best_pitch = sp + 24|0; $x_lp$addr = $x_lp; $y$addr = $y; $len$addr = $len; $max_pitch$addr = $max_pitch; $pitch$addr = $pitch; $arch$addr = $arch; ;HEAP32[$best_pitch>>2]=0|0;HEAP32[$best_pitch+4>>2]=0|0; $0 = $len$addr; $1 = $max_pitch$addr; $add = (($0) + ($1))|0; $lag = $add; $2 = $len$addr; $shr = $2 >> 2; $3 = (_llvm_stacksave()|0); $saved_stack = $3; $vla$alloca_mul = $shr<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $4 = $lag; $shr1 = $4 >> 2; $vla2$alloca_mul = $shr1<<2; $vla2 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla2$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla2$alloca_mul)|0)+15)&-16)|0);; $5 = $max_pitch$addr; $shr3 = $5 >> 1; $vla4$alloca_mul = $shr3<<2; $vla4 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla4$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla4$alloca_mul)|0)+15)&-16)|0);; $j = 0; while(1) { $6 = $j; $7 = $len$addr; $shr5 = $7 >> 2; $cmp = ($6|0)<($shr5|0); if (!($cmp)) { break; } $8 = $x_lp$addr; $9 = $j; $mul = $9<<1; $arrayidx = (($8) + ($mul<<2)|0); $10 = +HEAPF32[$arrayidx>>2]; $11 = $j; $arrayidx6 = (($vla) + ($11<<2)|0); HEAPF32[$arrayidx6>>2] = $10; $12 = $j; $inc = (($12) + 1)|0; $j = $inc; } $j = 0; while(1) { $13 = $j; $14 = $lag; $shr8 = $14 >> 2; $cmp9 = ($13|0)<($shr8|0); if (!($cmp9)) { break; } $15 = $y$addr; $16 = $j; $mul11 = $16<<1; $arrayidx12 = (($15) + ($mul11<<2)|0); $17 = +HEAPF32[$arrayidx12>>2]; $18 = $j; $arrayidx13 = (($vla2) + ($18<<2)|0); HEAPF32[$arrayidx13>>2] = $17; $19 = $j; $inc15 = (($19) + 1)|0; $j = $inc15; } $20 = $len$addr; $shr17 = $20 >> 2; $21 = $max_pitch$addr; $shr18 = $21 >> 2; $22 = $arch$addr; _celt_pitch_xcorr_c($vla,$vla2,$vla4,$shr17,$shr18,$22); $23 = $len$addr; $shr19 = $23 >> 2; $24 = $max_pitch$addr; $shr20 = $24 >> 2; _find_best_pitch($vla4,$vla2,$shr19,$shr20,$best_pitch); $i = 0; while(1) { $25 = $i; $26 = $max_pitch$addr; $shr22 = $26 >> 1; $cmp23 = ($25|0)<($shr22|0); if (!($cmp23)) { break; } $27 = $i; $arrayidx25 = (($vla4) + ($27<<2)|0); HEAPF32[$arrayidx25>>2] = 0.0; $28 = $i; $29 = HEAP32[$best_pitch>>2]|0; $mul27 = $29<<1; $sub = (($28) - ($mul27))|0; $call = (Math_abs(($sub|0))|0); $cmp28 = ($call|0)>(2); if ($cmp28) { $30 = $i; $arrayidx29 = ((($best_pitch)) + 4|0); $31 = HEAP32[$arrayidx29>>2]|0; $mul30 = $31<<1; $sub31 = (($30) - ($mul30))|0; $call32 = (Math_abs(($sub31|0))|0); $cmp33 = ($call32|0)>(2); if (!($cmp33)) { label = 11; } } else { label = 11; } if ((label|0) == 11) { label = 0; $32 = $arch$addr; $and = $32 & 7; $arrayidx34 = (_CELT_INNER_PROD_IMPL + ($and<<2)|0); $33 = HEAP32[$arrayidx34>>2]|0; $34 = $x_lp$addr; $35 = $y$addr; $36 = $i; $add$ptr = (($35) + ($36<<2)|0); $37 = $len$addr; $shr35 = $37 >> 1; $call36 = (+FUNCTION_TABLE_diii[$33 & 0]($34,$add$ptr,$shr35)); $sum = $call36; $38 = $sum; $cmp37 = -1.0 > $38; $39 = $sum; $cond = $cmp37 ? -1.0 : $39; $40 = $i; $arrayidx38 = (($vla4) + ($40<<2)|0); HEAPF32[$arrayidx38>>2] = $cond; } $41 = $i; $inc40 = (($41) + 1)|0; $i = $inc40; } $42 = $y$addr; $43 = $len$addr; $shr42 = $43 >> 1; $44 = $max_pitch$addr; $shr43 = $44 >> 1; _find_best_pitch($vla4,$42,$shr42,$shr43,$best_pitch); $45 = HEAP32[$best_pitch>>2]|0; $cmp46 = ($45|0)>(0); if ($cmp46) { $46 = HEAP32[$best_pitch>>2]|0; $47 = $max_pitch$addr; $shr49 = $47 >> 1; $sub50 = (($shr49) - 1)|0; $cmp51 = ($46|0)<($sub50|0); if ($cmp51) { $48 = HEAP32[$best_pitch>>2]|0; $sub54 = (($48) - 1)|0; $arrayidx55 = (($vla4) + ($sub54<<2)|0); $49 = +HEAPF32[$arrayidx55>>2]; $a = $49; $50 = HEAP32[$best_pitch>>2]|0; $arrayidx57 = (($vla4) + ($50<<2)|0); $51 = +HEAPF32[$arrayidx57>>2]; $b = $51; $52 = HEAP32[$best_pitch>>2]|0; $add59 = (($52) + 1)|0; $arrayidx60 = (($vla4) + ($add59<<2)|0); $53 = +HEAPF32[$arrayidx60>>2]; $c = $53; $54 = $c; $55 = $a; $sub61 = $54 - $55; $56 = $b; $57 = $a; $sub62 = $56 - $57; $mul63 = 0.69999998807907104 * $sub62; $cmp64 = $sub61 > $mul63; if ($cmp64) { $offset = 1; $62 = HEAP32[$best_pitch>>2]|0; $mul77 = $62<<1; $63 = $offset; $sub78 = (($mul77) - ($63))|0; $64 = $pitch$addr; HEAP32[$64>>2] = $sub78; $65 = $saved_stack; _llvm_stackrestore(($65|0)); STACKTOP = sp;return; } $58 = $a; $59 = $c; $sub66 = $58 - $59; $60 = $b; $61 = $c; $sub67 = $60 - $61; $mul68 = 0.69999998807907104 * $sub67; $cmp69 = $sub66 > $mul68; if ($cmp69) { $offset = -1; $62 = HEAP32[$best_pitch>>2]|0; $mul77 = $62<<1; $63 = $offset; $sub78 = (($mul77) - ($63))|0; $64 = $pitch$addr; HEAP32[$64>>2] = $sub78; $65 = $saved_stack; _llvm_stackrestore(($65|0)); STACKTOP = sp;return; } else { $offset = 0; $62 = HEAP32[$best_pitch>>2]|0; $mul77 = $62<<1; $63 = $offset; $sub78 = (($mul77) - ($63))|0; $64 = $pitch$addr; HEAP32[$64>>2] = $sub78; $65 = $saved_stack; _llvm_stackrestore(($65|0)); STACKTOP = sp;return; } } } $offset = 0; $62 = HEAP32[$best_pitch>>2]|0; $mul77 = $62<<1; $63 = $offset; $sub78 = (($mul77) - ($63))|0; $64 = $pitch$addr; HEAP32[$64>>2] = $sub78; $65 = $saved_stack; _llvm_stackrestore(($65|0)); STACKTOP = sp;return; } function _find_best_pitch($xcorr,$y,$len,$max_pitch,$best_pitch) { $xcorr = $xcorr|0; $y = $y|0; $len = $len|0; $max_pitch = $max_pitch|0; $best_pitch = $best_pitch|0; var $$sink = 0, $0 = 0, $1 = 0, $10 = 0.0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0.0, $17 = 0, $18 = 0, $19 = 0.0, $2 = 0, $20 = 0.0, $21 = 0.0, $22 = 0.0, $23 = 0.0, $24 = 0.0, $25 = 0.0; var $26 = 0.0, $27 = 0.0, $28 = 0.0, $29 = 0.0, $3 = 0, $30 = 0.0, $31 = 0.0, $32 = 0.0, $33 = 0, $34 = 0, $35 = 0, $36 = 0.0, $37 = 0.0, $38 = 0, $39 = 0, $4 = 0.0, $40 = 0.0, $41 = 0.0, $42 = 0, $43 = 0; var $44 = 0, $45 = 0, $46 = 0, $47 = 0.0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0.0, $52 = 0, $53 = 0, $54 = 0.0, $55 = 0, $56 = 0, $57 = 0.0, $58 = 0.0, $59 = 0.0, $6 = 0, $60 = 0.0, $61 = 0; var $7 = 0.0, $8 = 0, $9 = 0, $Syy = 0.0, $add = 0.0, $add42 = 0, $add44 = 0, $add50 = 0.0, $arrayidx1 = 0, $arrayidx11 = 0, $arrayidx13 = 0, $arrayidx16 = 0, $arrayidx18 = 0, $arrayidx29 = 0, $arrayidx3 = 0, $arrayidx31 = 0, $arrayidx33 = 0, $arrayidx37 = 0, $arrayidx38 = 0, $arrayidx39 = 0; var $arrayidx39$sink = 0, $arrayidx43 = 0, $arrayidx45 = 0, $arrayidx47 = 0, $arrayidx48 = 0, $arrayidx5 = 0, $arrayidx6 = 0, $arrayidx7 = 0, $best_den = 0, $best_num = 0, $best_pitch$addr = 0, $cmp = 0, $cmp12 = 0, $cmp20 = 0, $cmp26 = 0, $cmp51 = 0, $cmp9 = 0, $cond = 0.0, $i = 0, $inc = 0; var $inc53 = 0, $j = 0, $len$addr = 0, $max_pitch$addr = 0, $mul = 0.0, $mul14 = 0.0, $mul15 = 0.0, $mul17 = 0.0, $mul19 = 0.0, $mul23 = 0.0, $mul25 = 0.0, $mul46 = 0.0, $mul49 = 0.0, $num = 0.0, $sub = 0.0, $xcorr$addr = 0, $xcorr16 = 0.0, $y$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $best_num = sp + 16|0; $best_den = sp + 8|0; $xcorr$addr = $xcorr; $y$addr = $y; $len$addr = $len; $max_pitch$addr = $max_pitch; $best_pitch$addr = $best_pitch; $Syy = 1.0; HEAPF32[$best_num>>2] = -1.0; $arrayidx1 = ((($best_num)) + 4|0); HEAPF32[$arrayidx1>>2] = -1.0; HEAPF32[$best_den>>2] = 0.0; $arrayidx3 = ((($best_den)) + 4|0); HEAPF32[$arrayidx3>>2] = 0.0; $0 = $best_pitch$addr; HEAP32[$0>>2] = 0; $1 = $best_pitch$addr; $arrayidx5 = ((($1)) + 4|0); HEAP32[$arrayidx5>>2] = 1; $j = 0; while(1) { $2 = $j; $3 = $len$addr; $cmp = ($2|0)<($3|0); if (!($cmp)) { break; } $4 = $Syy; $5 = $y$addr; $6 = $j; $arrayidx6 = (($5) + ($6<<2)|0); $7 = +HEAPF32[$arrayidx6>>2]; $8 = $y$addr; $9 = $j; $arrayidx7 = (($8) + ($9<<2)|0); $10 = +HEAPF32[$arrayidx7>>2]; $mul = $7 * $10; $add = $4 + $mul; $Syy = $add; $11 = $j; $inc = (($11) + 1)|0; $j = $inc; } $i = 0; while(1) { $12 = $i; $13 = $max_pitch$addr; $cmp9 = ($12|0)<($13|0); if (!($cmp9)) { break; } $14 = $xcorr$addr; $15 = $i; $arrayidx11 = (($14) + ($15<<2)|0); $16 = +HEAPF32[$arrayidx11>>2]; $cmp12 = $16 > 0.0; if ($cmp12) { $17 = $xcorr$addr; $18 = $i; $arrayidx13 = (($17) + ($18<<2)|0); $19 = +HEAPF32[$arrayidx13>>2]; $xcorr16 = $19; $20 = $xcorr16; $mul14 = $20 * 9.999999960041972E-13; $xcorr16 = $mul14; $21 = $xcorr16; $22 = $xcorr16; $mul15 = $21 * $22; $num = $mul15; $23 = $num; $arrayidx16 = ((($best_den)) + 4|0); $24 = +HEAPF32[$arrayidx16>>2]; $mul17 = $23 * $24; $arrayidx18 = ((($best_num)) + 4|0); $25 = +HEAPF32[$arrayidx18>>2]; $26 = $Syy; $mul19 = $25 * $26; $cmp20 = $mul17 > $mul19; if ($cmp20) { $27 = $num; $28 = +HEAPF32[$best_den>>2]; $mul23 = $27 * $28; $29 = +HEAPF32[$best_num>>2]; $30 = $Syy; $mul25 = $29 * $30; $cmp26 = $mul23 > $mul25; if ($cmp26) { $31 = +HEAPF32[$best_num>>2]; $arrayidx29 = ((($best_num)) + 4|0); HEAPF32[$arrayidx29>>2] = $31; $32 = +HEAPF32[$best_den>>2]; $arrayidx31 = ((($best_den)) + 4|0); HEAPF32[$arrayidx31>>2] = $32; $33 = $best_pitch$addr; $34 = HEAP32[$33>>2]|0; $35 = $best_pitch$addr; $arrayidx33 = ((($35)) + 4|0); HEAP32[$arrayidx33>>2] = $34; $36 = $num; HEAPF32[$best_num>>2] = $36; $37 = $Syy; HEAPF32[$best_den>>2] = $37; $38 = $i; $39 = $best_pitch$addr; $$sink = $38;$arrayidx39$sink = $39; } else { $40 = $num; $arrayidx37 = ((($best_num)) + 4|0); HEAPF32[$arrayidx37>>2] = $40; $41 = $Syy; $arrayidx38 = ((($best_den)) + 4|0); HEAPF32[$arrayidx38>>2] = $41; $42 = $i; $43 = $best_pitch$addr; $arrayidx39 = ((($43)) + 4|0); $$sink = $42;$arrayidx39$sink = $arrayidx39; } HEAP32[$arrayidx39$sink>>2] = $$sink; } } $44 = $y$addr; $45 = $i; $46 = $len$addr; $add42 = (($45) + ($46))|0; $arrayidx43 = (($44) + ($add42<<2)|0); $47 = +HEAPF32[$arrayidx43>>2]; $48 = $y$addr; $49 = $i; $50 = $len$addr; $add44 = (($49) + ($50))|0; $arrayidx45 = (($48) + ($add44<<2)|0); $51 = +HEAPF32[$arrayidx45>>2]; $mul46 = $47 * $51; $52 = $y$addr; $53 = $i; $arrayidx47 = (($52) + ($53<<2)|0); $54 = +HEAPF32[$arrayidx47>>2]; $55 = $y$addr; $56 = $i; $arrayidx48 = (($55) + ($56<<2)|0); $57 = +HEAPF32[$arrayidx48>>2]; $mul49 = $54 * $57; $sub = $mul46 - $mul49; $58 = $Syy; $add50 = $58 + $sub; $Syy = $add50; $59 = $Syy; $cmp51 = 1.0 > $59; $60 = $Syy; $cond = $cmp51 ? 1.0 : $60; $Syy = $cond; $61 = $i; $inc53 = (($61) + 1)|0; $i = $inc53; } STACKTOP = sp;return; } function _remove_doubling($x,$maxperiod,$minperiod,$N,$T0_,$prev_period,$prev_gain,$arch) { $x = $x|0; $maxperiod = $maxperiod|0; $minperiod = $minperiod|0; $N = $N|0; $T0_ = $T0_|0; $prev_period = $prev_period|0; $prev_gain = +$prev_gain; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0.0, $101 = 0.0, $102 = 0, $103 = 0, $104 = 0.0, $105 = 0.0, $106 = 0.0, $107 = 0.0, $108 = 0, $109 = 0, $11 = 0, $110 = 0.0, $111 = 0.0, $112 = 0.0, $113 = 0.0, $114 = 0.0, $115 = 0.0; var $116 = 0.0, $117 = 0.0, $118 = 0, $119 = 0.0, $12 = 0, $120 = 0, $121 = 0.0, $122 = 0.0, $123 = 0.0, $124 = 0.0, $125 = 0.0, $126 = 0.0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0, $135 = 0, $136 = 0, $137 = 0.0, $138 = 0.0, $139 = 0.0, $14 = 0, $140 = 0.0, $141 = 0.0, $142 = 0.0, $143 = 0.0, $144 = 0.0, $145 = 0.0, $146 = 0.0, $147 = 0.0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0.0, $157 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0.0, $26 = 0.0, $27 = 0, $28 = 0; var $29 = 0.0, $3 = 0, $30 = 0, $31 = 0, $32 = 0.0, $33 = 0, $34 = 0, $35 = 0.0, $36 = 0, $37 = 0, $38 = 0, $39 = 0.0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0.0, $44 = 0.0, $45 = 0.0, $46 = 0; var $47 = 0, $48 = 0, $49 = 0.0, $5 = 0, $50 = 0.0, $51 = 0.0, $52 = 0.0, $53 = 0.0, $54 = 0.0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0.0, $81 = 0.0, $82 = 0; var $83 = 0.0, $84 = 0, $85 = 0.0, $86 = 0.0, $87 = 0.0, $88 = 0.0, $89 = 0, $9 = 0, $90 = 0, $91 = 0.0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0.0, $98 = 0.0, $99 = 0.0, $N$addr = 0, $T = 0; var $T0 = 0, $T0_$addr = 0, $T1 = 0, $T1b = 0, $add = 0, $add$ptr = 0, $add$ptr137 = 0, $add$ptr5 = 0, $add12 = 0.0, $add126 = 0.0, $add134 = 0, $add169 = 0, $add26 = 0, $add34 = 0, $add37 = 0, $add43 = 0, $add53 = 0.0, $add57 = 0.0, $and = 0, $and132 = 0; var $and47 = 0, $arch$addr = 0, $arrayidx = 0, $arrayidx11 = 0, $arrayidx133 = 0, $arrayidx139 = 0, $arrayidx14 = 0, $arrayidx143 = 0, $arrayidx146 = 0, $arrayidx154 = 0, $arrayidx156 = 0, $arrayidx157 = 0, $arrayidx16 = 0, $arrayidx20 = 0, $arrayidx21 = 0, $arrayidx40 = 0, $arrayidx48 = 0, $arrayidx50 = 0, $arrayidx52 = 0, $arrayidx55 = 0; var $arrayidx56 = 0, $arrayidx9 = 0, $best_xy = 0.0, $best_yy = 0.0, $call = 0.0, $call138 = 0.0, $call28 = 0, $call45 = 0, $call59 = 0.0, $call61 = 0, $call66 = 0, $cmp = 0, $cmp103 = 0, $cmp112 = 0, $cmp118 = 0, $cmp123 = 0, $cmp130 = 0, $cmp150 = 0, $cmp160 = 0, $cmp165 = 0; var $cmp170 = 0, $cmp19 = 0, $cmp23 = 0, $cmp29 = 0, $cmp32 = 0, $cmp35 = 0, $cmp62 = 0, $cmp67 = 0, $cmp7 = 0, $cmp70 = 0, $cmp78 = 0, $cmp86 = 0, $cmp90 = 0, $cmp99 = 0, $cond = 0.0, $cond109 = 0.0, $cond122 = 0.0, $cond84 = 0.0, $cond96 = 0.0, $cont = 0.0; var $div = 0, $div1 = 0, $div127 = 0.0, $div2 = 0, $div3 = 0, $div4 = 0, $g = 0.0, $g0 = 0.0, $g1 = 0.0, $i = 0, $idx$neg = 0, $idx$neg136 = 0, $inc = 0, $inc116 = 0, $inc141 = 0, $k = 0, $maxperiod$addr = 0, $minperiod$addr = 0, $minperiod0 = 0, $mul = 0.0; var $mul101 = 0.0, $mul106 = 0.0, $mul149 = 0.0, $mul159 = 0.0, $mul168 = 0, $mul17 = 0.0, $mul25 = 0, $mul27 = 0, $mul41 = 0, $mul42 = 0, $mul44 = 0, $mul54 = 0.0, $mul58 = 0.0, $mul68 = 0, $mul69 = 0, $mul72 = 0.0, $mul76 = 0.0, $mul81 = 0.0, $mul85 = 0, $mul88 = 0.0; var $mul93 = 0.0, $mul98 = 0, $offset = 0, $pg = 0.0, $prev_gain$addr = 0.0, $prev_period$addr = 0, $saved_stack = 0, $sub = 0, $sub10 = 0, $sub102 = 0.0, $sub107 = 0.0, $sub13 = 0, $sub135 = 0, $sub145 = 0.0, $sub148 = 0.0, $sub15 = 0, $sub155 = 0.0, $sub158 = 0.0, $sub18 = 0.0, $sub49 = 0; var $sub51 = 0, $sub60 = 0, $sub65 = 0, $sub77 = 0.0, $sub8 = 0, $sub82 = 0.0, $sub89 = 0.0, $sub94 = 0.0, $thresh = 0.0, $vla = 0, $vla$alloca_mul = 0, $x$addr = 0, $xcorr = 0, $xx = 0, $xy = 0, $xy2 = 0, $yy = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 128|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(128|0); $xy = sp + 64|0; $xx = sp + 60|0; $xy2 = sp + 52|0; $xcorr = sp + 40|0; $x$addr = $x; $maxperiod$addr = $maxperiod; $minperiod$addr = $minperiod; $N$addr = $N; $T0_$addr = $T0_; $prev_period$addr = $prev_period; $prev_gain$addr = $prev_gain; $arch$addr = $arch; $0 = $minperiod$addr; $minperiod0 = $0; $1 = $maxperiod$addr; $div = (($1|0) / 2)&-1; $maxperiod$addr = $div; $2 = $minperiod$addr; $div1 = (($2|0) / 2)&-1; $minperiod$addr = $div1; $3 = $T0_$addr; $4 = HEAP32[$3>>2]|0; $div2 = (($4|0) / 2)&-1; HEAP32[$3>>2] = $div2; $5 = $prev_period$addr; $div3 = (($5|0) / 2)&-1; $prev_period$addr = $div3; $6 = $N$addr; $div4 = (($6|0) / 2)&-1; $N$addr = $div4; $7 = $maxperiod$addr; $8 = $x$addr; $add$ptr = (($8) + ($7<<2)|0); $x$addr = $add$ptr; $9 = $T0_$addr; $10 = HEAP32[$9>>2]|0; $11 = $maxperiod$addr; $cmp = ($10|0)>=($11|0); if ($cmp) { $12 = $maxperiod$addr; $sub = (($12) - 1)|0; $13 = $T0_$addr; HEAP32[$13>>2] = $sub; } $14 = $T0_$addr; $15 = HEAP32[$14>>2]|0; $T0 = $15; $T = $15; $16 = $maxperiod$addr; $add = (($16) + 1)|0; $17 = (_llvm_stacksave()|0); $saved_stack = $17; $vla$alloca_mul = $add<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $18 = $arch$addr; $and = $18 & 7; $arrayidx = (_DUAL_INNER_PROD_IMPL + ($and<<2)|0); $19 = HEAP32[$arrayidx>>2]|0; $20 = $x$addr; $21 = $x$addr; $22 = $x$addr; $23 = $T0; $idx$neg = (0 - ($23))|0; $add$ptr5 = (($22) + ($idx$neg<<2)|0); $24 = $N$addr; FUNCTION_TABLE_viiiiii[$19 & 15]($20,$21,$add$ptr5,$24,$xx,$xy); $25 = +HEAPF32[$xx>>2]; HEAPF32[$vla>>2] = $25; $26 = +HEAPF32[$xx>>2]; $yy = $26; $i = 1; while(1) { $27 = $i; $28 = $maxperiod$addr; $cmp7 = ($27|0)<=($28|0); if (!($cmp7)) { break; } $29 = $yy; $30 = $x$addr; $31 = $i; $sub8 = (0 - ($31))|0; $arrayidx9 = (($30) + ($sub8<<2)|0); $32 = +HEAPF32[$arrayidx9>>2]; $33 = $x$addr; $34 = $i; $sub10 = (0 - ($34))|0; $arrayidx11 = (($33) + ($sub10<<2)|0); $35 = +HEAPF32[$arrayidx11>>2]; $mul = $32 * $35; $add12 = $29 + $mul; $36 = $x$addr; $37 = $N$addr; $38 = $i; $sub13 = (($37) - ($38))|0; $arrayidx14 = (($36) + ($sub13<<2)|0); $39 = +HEAPF32[$arrayidx14>>2]; $40 = $x$addr; $41 = $N$addr; $42 = $i; $sub15 = (($41) - ($42))|0; $arrayidx16 = (($40) + ($sub15<<2)|0); $43 = +HEAPF32[$arrayidx16>>2]; $mul17 = $39 * $43; $sub18 = $add12 - $mul17; $yy = $sub18; $44 = $yy; $cmp19 = 0.0 > $44; $45 = $yy; $cond = $cmp19 ? 0.0 : $45; $46 = $i; $arrayidx20 = (($vla) + ($46<<2)|0); HEAPF32[$arrayidx20>>2] = $cond; $47 = $i; $inc = (($47) + 1)|0; $i = $inc; } $48 = $T0; $arrayidx21 = (($vla) + ($48<<2)|0); $49 = +HEAPF32[$arrayidx21>>2]; $yy = $49; $50 = +HEAPF32[$xy>>2]; $best_xy = $50; $51 = $yy; $best_yy = $51; $52 = +HEAPF32[$xy>>2]; $53 = +HEAPF32[$xx>>2]; $54 = $yy; $call = (+_compute_pitch_gain($52,$53,$54)); $g0 = $call; $g = $call; $k = 2; while(1) { $55 = $k; $cmp23 = ($55|0)<=(15); if (!($cmp23)) { break; } $cont = 0.0; $56 = $T0; $mul25 = $56<<1; $57 = $k; $add26 = (($mul25) + ($57))|0; $58 = $k; $mul27 = $58<<1; $call28 = (_celt_udiv_110($add26,$mul27)|0); $T1 = $call28; $59 = $T1; $60 = $minperiod$addr; $cmp29 = ($59|0)<($60|0); if ($cmp29) { break; } $61 = $k; $cmp32 = ($61|0)==(2); do { if ($cmp32) { $62 = $T1; $63 = $T0; $add34 = (($62) + ($63))|0; $64 = $maxperiod$addr; $cmp35 = ($add34|0)>($64|0); $65 = $T0; if ($cmp35) { $T1b = $65; break; } else { $66 = $T1; $add37 = (($65) + ($66))|0; $T1b = $add37; break; } } else { $67 = $k; $arrayidx40 = (14916 + ($67<<2)|0); $68 = HEAP32[$arrayidx40>>2]|0; $mul41 = $68<<1; $69 = $T0; $mul42 = Math_imul($mul41, $69)|0; $70 = $k; $add43 = (($mul42) + ($70))|0; $71 = $k; $mul44 = $71<<1; $call45 = (_celt_udiv_110($add43,$mul44)|0); $T1b = $call45; } } while(0); $72 = $arch$addr; $and47 = $72 & 7; $arrayidx48 = (_DUAL_INNER_PROD_IMPL + ($and47<<2)|0); $73 = HEAP32[$arrayidx48>>2]|0; $74 = $x$addr; $75 = $x$addr; $76 = $T1; $sub49 = (0 - ($76))|0; $arrayidx50 = (($75) + ($sub49<<2)|0); $77 = $x$addr; $78 = $T1b; $sub51 = (0 - ($78))|0; $arrayidx52 = (($77) + ($sub51<<2)|0); $79 = $N$addr; FUNCTION_TABLE_viiiiii[$73 & 15]($74,$arrayidx50,$arrayidx52,$79,$xy,$xy2); $80 = +HEAPF32[$xy>>2]; $81 = +HEAPF32[$xy2>>2]; $add53 = $80 + $81; $mul54 = 0.5 * $add53; HEAPF32[$xy>>2] = $mul54; $82 = $T1; $arrayidx55 = (($vla) + ($82<<2)|0); $83 = +HEAPF32[$arrayidx55>>2]; $84 = $T1b; $arrayidx56 = (($vla) + ($84<<2)|0); $85 = +HEAPF32[$arrayidx56>>2]; $add57 = $83 + $85; $mul58 = 0.5 * $add57; $yy = $mul58; $86 = +HEAPF32[$xy>>2]; $87 = +HEAPF32[$xx>>2]; $88 = $yy; $call59 = (+_compute_pitch_gain($86,$87,$88)); $g1 = $call59; $89 = $T1; $90 = $prev_period$addr; $sub60 = (($89) - ($90))|0; $call61 = (Math_abs(($sub60|0))|0); $cmp62 = ($call61|0)<=(1); do { if ($cmp62) { $91 = $prev_gain$addr; $cont = $91; } else { $92 = $T1; $93 = $prev_period$addr; $sub65 = (($92) - ($93))|0; $call66 = (Math_abs(($sub65|0))|0); $cmp67 = ($call66|0)<=(2); if ($cmp67) { $94 = $k; $mul68 = ($94*5)|0; $95 = $k; $mul69 = Math_imul($mul68, $95)|0; $96 = $T0; $cmp70 = ($mul69|0)<($96|0); if ($cmp70) { $97 = $prev_gain$addr; $mul72 = 0.5 * $97; $cont = $mul72; break; } } $cont = 0.0; } } while(0); $98 = $g0; $mul76 = 0.69999998807907104 * $98; $99 = $cont; $sub77 = $mul76 - $99; $cmp78 = 0.30000001192092896 > $sub77; if ($cmp78) { $cond84 = 0.30000001192092896; } else { $100 = $g0; $mul81 = 0.69999998807907104 * $100; $101 = $cont; $sub82 = $mul81 - $101; $cond84 = $sub82; } $thresh = $cond84; $102 = $T1; $103 = $minperiod$addr; $mul85 = ($103*3)|0; $cmp86 = ($102|0)<($mul85|0); if ($cmp86) { $104 = $g0; $mul88 = 0.85000002384185791 * $104; $105 = $cont; $sub89 = $mul88 - $105; $cmp90 = 0.40000000596046448 > $sub89; if ($cmp90) { $cond96 = 0.40000000596046448; } else { $106 = $g0; $mul93 = 0.85000002384185791 * $106; $107 = $cont; $sub94 = $mul93 - $107; $cond96 = $sub94; } $thresh = $cond96; } else { $108 = $T1; $109 = $minperiod$addr; $mul98 = $109<<1; $cmp99 = ($108|0)<($mul98|0); if ($cmp99) { $110 = $g0; $mul101 = 0.89999997615814208 * $110; $111 = $cont; $sub102 = $mul101 - $111; $cmp103 = 0.5 > $sub102; if ($cmp103) { $cond109 = 0.5; } else { $112 = $g0; $mul106 = 0.89999997615814208 * $112; $113 = $cont; $sub107 = $mul106 - $113; $cond109 = $sub107; } $thresh = $cond109; } } $114 = $g1; $115 = $thresh; $cmp112 = $114 > $115; if ($cmp112) { $116 = +HEAPF32[$xy>>2]; $best_xy = $116; $117 = $yy; $best_yy = $117; $118 = $T1; $T = $118; $119 = $g1; $g = $119; } $120 = $k; $inc116 = (($120) + 1)|0; $k = $inc116; } $121 = $best_xy; $cmp118 = 0.0 > $121; $122 = $best_xy; $cond122 = $cmp118 ? 0.0 : $122; $best_xy = $cond122; $123 = $best_yy; $124 = $best_xy; $cmp123 = $123 <= $124; if ($cmp123) { $pg = 1.0; } else { $125 = $best_xy; $126 = $best_yy; $add126 = $126 + 1.0; $div127 = $125 / $add126; $pg = $div127; } $k = 0; while(1) { $127 = $k; $cmp130 = ($127|0)<(3); if (!($cmp130)) { break; } $128 = $arch$addr; $and132 = $128 & 7; $arrayidx133 = (_CELT_INNER_PROD_IMPL + ($and132<<2)|0); $129 = HEAP32[$arrayidx133>>2]|0; $130 = $x$addr; $131 = $x$addr; $132 = $T; $133 = $k; $add134 = (($132) + ($133))|0; $sub135 = (($add134) - 1)|0; $idx$neg136 = (0 - ($sub135))|0; $add$ptr137 = (($131) + ($idx$neg136<<2)|0); $134 = $N$addr; $call138 = (+FUNCTION_TABLE_diii[$129 & 0]($130,$add$ptr137,$134)); $135 = $k; $arrayidx139 = (($xcorr) + ($135<<2)|0); HEAPF32[$arrayidx139>>2] = $call138; $136 = $k; $inc141 = (($136) + 1)|0; $k = $inc141; } $arrayidx143 = ((($xcorr)) + 8|0); $137 = +HEAPF32[$arrayidx143>>2]; $138 = +HEAPF32[$xcorr>>2]; $sub145 = $137 - $138; $arrayidx146 = ((($xcorr)) + 4|0); $139 = +HEAPF32[$arrayidx146>>2]; $140 = +HEAPF32[$xcorr>>2]; $sub148 = $139 - $140; $mul149 = 0.69999998807907104 * $sub148; $cmp150 = $sub145 > $mul149; do { if ($cmp150) { $offset = 1; } else { $141 = +HEAPF32[$xcorr>>2]; $arrayidx154 = ((($xcorr)) + 8|0); $142 = +HEAPF32[$arrayidx154>>2]; $sub155 = $141 - $142; $arrayidx156 = ((($xcorr)) + 4|0); $143 = +HEAPF32[$arrayidx156>>2]; $arrayidx157 = ((($xcorr)) + 8|0); $144 = +HEAPF32[$arrayidx157>>2]; $sub158 = $143 - $144; $mul159 = 0.69999998807907104 * $sub158; $cmp160 = $sub155 > $mul159; if ($cmp160) { $offset = -1; break; } else { $offset = 0; break; } } } while(0); $145 = $pg; $146 = $g; $cmp165 = $145 > $146; if ($cmp165) { $147 = $g; $pg = $147; } $148 = $T; $mul168 = $148<<1; $149 = $offset; $add169 = (($mul168) + ($149))|0; $150 = $T0_$addr; HEAP32[$150>>2] = $add169; $151 = $T0_$addr; $152 = HEAP32[$151>>2]|0; $153 = $minperiod0; $cmp170 = ($152|0)<($153|0); if (!($cmp170)) { $156 = $pg; $157 = $saved_stack; _llvm_stackrestore(($157|0)); STACKTOP = sp;return (+$156); } $154 = $minperiod0; $155 = $T0_$addr; HEAP32[$155>>2] = $154; $156 = $pg; $157 = $saved_stack; _llvm_stackrestore(($157|0)); STACKTOP = sp;return (+$156); } function _compute_pitch_gain($xy,$xx,$yy) { $xy = +$xy; $xx = +$xx; $yy = +$yy; var $0 = 0.0, $1 = 0.0, $2 = 0.0, $add = 0.0, $call = 0.0, $conv = 0.0, $conv1 = 0.0, $div = 0.0, $mul = 0.0, $xx$addr = 0.0, $xy$addr = 0.0, $yy$addr = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $xy$addr = $xy; $xx$addr = $xx; $yy$addr = $yy; $0 = $xy$addr; $1 = $xx$addr; $2 = $yy$addr; $mul = $1 * $2; $add = 1.0 + $mul; $conv = $add; $call = (+Math_sqrt((+$conv))); $conv1 = $call; $div = $0 / $conv1; STACKTOP = sp;return (+$div); } function _celt_udiv_110($n,$d) { $n = $n|0; $d = $d|0; var $0 = 0, $1 = 0, $d$addr = 0, $div = 0, $n$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $n$addr = $n; $d$addr = $d; $0 = $n$addr; $1 = $d$addr; $div = (($0>>>0) / ($1>>>0))&-1; STACKTOP = sp;return ($div|0); } function __celt_lpc($_lpc,$ac,$p) { $_lpc = $_lpc|0; $ac = $ac|0; $p = $p|0; var $0 = 0, $1 = 0.0, $10 = 0, $11 = 0, $12 = 0, $13 = 0.0, $14 = 0, $15 = 0, $16 = 0, $17 = 0.0, $18 = 0.0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0.0, $23 = 0.0, $24 = 0.0, $25 = 0.0, $26 = 0.0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0.0, $34 = 0, $35 = 0, $36 = 0, $37 = 0.0, $38 = 0.0, $39 = 0.0, $4 = 0, $40 = 0.0, $41 = 0, $42 = 0, $43 = 0.0, $44 = 0.0; var $45 = 0.0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0.0, $51 = 0.0, $52 = 0.0, $53 = 0.0, $54 = 0.0, $55 = 0, $56 = 0.0, $57 = 0, $6 = 0.0, $7 = 0, $8 = 0, $9 = 0, $_lpc$addr = 0, $ac$addr = 0; var $add = 0.0, $add11 = 0.0, $add15 = 0, $add23 = 0.0, $add26 = 0.0, $add9 = 0, $arrayidx10 = 0, $arrayidx13 = 0, $arrayidx18 = 0, $arrayidx21 = 0, $arrayidx24 = 0, $arrayidx29 = 0, $arrayidx6 = 0, $arrayidx7 = 0, $cmp = 0, $cmp16 = 0, $cmp2 = 0, $cmp38 = 0, $cmp4 = 0, $div = 0.0; var $error = 0.0, $i = 0, $inc = 0, $inc31 = 0, $inc41 = 0, $j = 0, $lpc = 0, $mul = 0, $mul22 = 0.0, $mul25 = 0.0, $mul33 = 0.0, $mul34 = 0.0, $mul37 = 0.0, $mul8 = 0.0, $p$addr = 0, $r = 0.0, $rr = 0.0, $shr = 0, $sub = 0, $sub12 = 0.0; var $sub19 = 0, $sub20 = 0, $sub27 = 0, $sub28 = 0, $sub35 = 0.0, $tmp1 = 0.0, $tmp2 = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $_lpc$addr = $_lpc; $ac$addr = $ac; $p$addr = $p; $0 = $ac$addr; $1 = +HEAPF32[$0>>2]; $error = $1; $2 = $_lpc$addr; $lpc = $2; $3 = $lpc; $4 = $p$addr; $mul = $4<<2; _memset(($3|0),0,($mul|0))|0; $5 = $ac$addr; $6 = +HEAPF32[$5>>2]; $cmp = $6 != 0.0; if (!($cmp)) { STACKTOP = sp;return; } $i = 0; while(1) { $7 = $i; $8 = $p$addr; $cmp2 = ($7|0)<($8|0); if (!($cmp2)) { label = 12; break; } $rr = 0.0; $j = 0; while(1) { $9 = $j; $10 = $i; $cmp4 = ($9|0)<($10|0); if (!($cmp4)) { break; } $11 = $lpc; $12 = $j; $arrayidx6 = (($11) + ($12<<2)|0); $13 = +HEAPF32[$arrayidx6>>2]; $14 = $ac$addr; $15 = $i; $16 = $j; $sub = (($15) - ($16))|0; $arrayidx7 = (($14) + ($sub<<2)|0); $17 = +HEAPF32[$arrayidx7>>2]; $mul8 = $13 * $17; $18 = $rr; $add = $18 + $mul8; $rr = $add; $19 = $j; $inc = (($19) + 1)|0; $j = $inc; } $20 = $ac$addr; $21 = $i; $add9 = (($21) + 1)|0; $arrayidx10 = (($20) + ($add9<<2)|0); $22 = +HEAPF32[$arrayidx10>>2]; $23 = $rr; $add11 = $23 + $22; $rr = $add11; $24 = $rr; $25 = $error; $div = $24 / $25; $sub12 = - $div; $r = $sub12; $26 = $r; $27 = $lpc; $28 = $i; $arrayidx13 = (($27) + ($28<<2)|0); HEAPF32[$arrayidx13>>2] = $26; $j = 0; while(1) { $29 = $j; $30 = $i; $add15 = (($30) + 1)|0; $shr = $add15 >> 1; $cmp16 = ($29|0)<($shr|0); if (!($cmp16)) { break; } $31 = $lpc; $32 = $j; $arrayidx18 = (($31) + ($32<<2)|0); $33 = +HEAPF32[$arrayidx18>>2]; $tmp1 = $33; $34 = $lpc; $35 = $i; $sub19 = (($35) - 1)|0; $36 = $j; $sub20 = (($sub19) - ($36))|0; $arrayidx21 = (($34) + ($sub20<<2)|0); $37 = +HEAPF32[$arrayidx21>>2]; $tmp2 = $37; $38 = $tmp1; $39 = $r; $40 = $tmp2; $mul22 = $39 * $40; $add23 = $38 + $mul22; $41 = $lpc; $42 = $j; $arrayidx24 = (($41) + ($42<<2)|0); HEAPF32[$arrayidx24>>2] = $add23; $43 = $tmp2; $44 = $r; $45 = $tmp1; $mul25 = $44 * $45; $add26 = $43 + $mul25; $46 = $lpc; $47 = $i; $sub27 = (($47) - 1)|0; $48 = $j; $sub28 = (($sub27) - ($48))|0; $arrayidx29 = (($46) + ($sub28<<2)|0); HEAPF32[$arrayidx29>>2] = $add26; $49 = $j; $inc31 = (($49) + 1)|0; $j = $inc31; } $50 = $error; $51 = $r; $52 = $r; $mul33 = $51 * $52; $53 = $error; $mul34 = $mul33 * $53; $sub35 = $50 - $mul34; $error = $sub35; $54 = $error; $55 = $ac$addr; $56 = +HEAPF32[$55>>2]; $mul37 = 0.0010000000474974513 * $56; $cmp38 = $54 < $mul37; if ($cmp38) { label = 12; break; } $57 = $i; $inc41 = (($57) + 1)|0; $i = $inc41; } if ((label|0) == 12) { STACKTOP = sp;return; } } function _celt_fir_c($x,$num,$y,$N,$ord,$arch) { $x = $x|0; $num = $num|0; $y = $y|0; $N = $N|0; $ord = $ord|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0.0, $15 = 0, $16 = 0, $17 = 0.0, $18 = 0, $19 = 0, $2 = 0, $20 = 0.0, $21 = 0, $22 = 0, $23 = 0.0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0.0, $31 = 0, $32 = 0, $33 = 0.0, $34 = 0, $35 = 0, $36 = 0.0, $37 = 0, $38 = 0, $39 = 0.0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0.0, $48 = 0, $49 = 0, $5 = 0, $50 = 0.0, $51 = 0, $52 = 0.0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0.0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; var $7 = 0.0, $8 = 0, $9 = 0, $N$addr = 0, $add = 0, $add$ptr = 0, $add$ptr18 = 0, $add11 = 0, $add14 = 0, $add22 = 0, $add25 = 0, $add28 = 0, $add31 = 0, $add42 = 0, $add45 = 0.0, $and = 0, $arch$addr = 0, $arrayidx = 0, $arrayidx10 = 0, $arrayidx12 = 0; var $arrayidx13 = 0, $arrayidx15 = 0, $arrayidx16 = 0, $arrayidx17 = 0, $arrayidx2 = 0, $arrayidx20 = 0, $arrayidx21 = 0, $arrayidx23 = 0, $arrayidx24 = 0, $arrayidx26 = 0, $arrayidx27 = 0, $arrayidx29 = 0, $arrayidx37 = 0, $arrayidx41 = 0, $arrayidx44 = 0, $arrayidx49 = 0, $arrayidx7 = 0, $arrayidx9 = 0, $cmp = 0, $cmp34 = 0; var $cmp39 = 0, $cmp5 = 0, $i = 0, $idx$neg = 0, $inc = 0, $inc47 = 0, $inc51 = 0, $j = 0, $mul = 0.0, $num$addr = 0, $ord$addr = 0, $saved_stack = 0, $sub = 0, $sub1 = 0, $sub4 = 0, $sub43 = 0, $sum = 0, $sum36 = 0.0, $vla = 0, $vla$alloca_mul = 0; var $x$addr = 0, $y$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $sum = sp + 8|0; $x$addr = $x; $num$addr = $num; $y$addr = $y; $N$addr = $N; $ord$addr = $ord; $arch$addr = $arch; $0 = $ord$addr; $1 = (_llvm_stacksave()|0); $saved_stack = $1; $vla$alloca_mul = $0<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $i = 0; while(1) { $2 = $i; $3 = $ord$addr; $cmp = ($2|0)<($3|0); if (!($cmp)) { break; } $4 = $num$addr; $5 = $ord$addr; $6 = $i; $sub = (($5) - ($6))|0; $sub1 = (($sub) - 1)|0; $arrayidx = (($4) + ($sub1<<2)|0); $7 = +HEAPF32[$arrayidx>>2]; $8 = $i; $arrayidx2 = (($vla) + ($8<<2)|0); HEAPF32[$arrayidx2>>2] = $7; $9 = $i; $inc = (($9) + 1)|0; $i = $inc; } $i = 0; while(1) { $10 = $i; $11 = $N$addr; $sub4 = (($11) - 3)|0; $cmp5 = ($10|0)<($sub4|0); if (!($cmp5)) { break; } $12 = $x$addr; $13 = $i; $arrayidx7 = (($12) + ($13<<2)|0); $14 = +HEAPF32[$arrayidx7>>2]; HEAPF32[$sum>>2] = $14; $15 = $x$addr; $16 = $i; $add = (($16) + 1)|0; $arrayidx9 = (($15) + ($add<<2)|0); $17 = +HEAPF32[$arrayidx9>>2]; $arrayidx10 = ((($sum)) + 4|0); HEAPF32[$arrayidx10>>2] = $17; $18 = $x$addr; $19 = $i; $add11 = (($19) + 2)|0; $arrayidx12 = (($18) + ($add11<<2)|0); $20 = +HEAPF32[$arrayidx12>>2]; $arrayidx13 = ((($sum)) + 8|0); HEAPF32[$arrayidx13>>2] = $20; $21 = $x$addr; $22 = $i; $add14 = (($22) + 3)|0; $arrayidx15 = (($21) + ($add14<<2)|0); $23 = +HEAPF32[$arrayidx15>>2]; $arrayidx16 = ((($sum)) + 12|0); HEAPF32[$arrayidx16>>2] = $23; $24 = $arch$addr; $and = $24 & 7; $arrayidx17 = (_XCORR_KERNEL_IMPL + ($and<<2)|0); $25 = HEAP32[$arrayidx17>>2]|0; $26 = $x$addr; $27 = $i; $add$ptr = (($26) + ($27<<2)|0); $28 = $ord$addr; $idx$neg = (0 - ($28))|0; $add$ptr18 = (($add$ptr) + ($idx$neg<<2)|0); $29 = $ord$addr; FUNCTION_TABLE_viiii[$25 & 31]($vla,$add$ptr18,$sum,$29); $30 = +HEAPF32[$sum>>2]; $31 = $y$addr; $32 = $i; $arrayidx20 = (($31) + ($32<<2)|0); HEAPF32[$arrayidx20>>2] = $30; $arrayidx21 = ((($sum)) + 4|0); $33 = +HEAPF32[$arrayidx21>>2]; $34 = $y$addr; $35 = $i; $add22 = (($35) + 1)|0; $arrayidx23 = (($34) + ($add22<<2)|0); HEAPF32[$arrayidx23>>2] = $33; $arrayidx24 = ((($sum)) + 8|0); $36 = +HEAPF32[$arrayidx24>>2]; $37 = $y$addr; $38 = $i; $add25 = (($38) + 2)|0; $arrayidx26 = (($37) + ($add25<<2)|0); HEAPF32[$arrayidx26>>2] = $36; $arrayidx27 = ((($sum)) + 12|0); $39 = +HEAPF32[$arrayidx27>>2]; $40 = $y$addr; $41 = $i; $add28 = (($41) + 3)|0; $arrayidx29 = (($40) + ($add28<<2)|0); HEAPF32[$arrayidx29>>2] = $39; $42 = $i; $add31 = (($42) + 4)|0; $i = $add31; } while(1) { $43 = $i; $44 = $N$addr; $cmp34 = ($43|0)<($44|0); if (!($cmp34)) { break; } $45 = $x$addr; $46 = $i; $arrayidx37 = (($45) + ($46<<2)|0); $47 = +HEAPF32[$arrayidx37>>2]; $sum36 = $47; $j = 0; while(1) { $48 = $j; $49 = $ord$addr; $cmp39 = ($48|0)<($49|0); $50 = $sum36; if (!($cmp39)) { break; } $51 = $j; $arrayidx41 = (($vla) + ($51<<2)|0); $52 = +HEAPF32[$arrayidx41>>2]; $53 = $x$addr; $54 = $i; $55 = $j; $add42 = (($54) + ($55))|0; $56 = $ord$addr; $sub43 = (($add42) - ($56))|0; $arrayidx44 = (($53) + ($sub43<<2)|0); $57 = +HEAPF32[$arrayidx44>>2]; $mul = $52 * $57; $add45 = $50 + $mul; $sum36 = $add45; $58 = $j; $inc47 = (($58) + 1)|0; $j = $inc47; } $59 = $y$addr; $60 = $i; $arrayidx49 = (($59) + ($60<<2)|0); HEAPF32[$arrayidx49>>2] = $50; $61 = $i; $inc51 = (($61) + 1)|0; $i = $inc51; } $62 = $saved_stack; _llvm_stackrestore(($62|0)); STACKTOP = sp;return; } function _celt_iir($_x,$den,$_y,$N,$ord,$mem,$arch) { $_x = $_x|0; $den = $den|0; $_y = $_y|0; $N = $N|0; $ord = $ord|0; $mem = $mem|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0.0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0.0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0.0, $113 = 0, $114 = 0, $115 = 0.0; var $116 = 0.0, $117 = 0, $118 = 0.0, $119 = 0, $12 = 0, $120 = 0, $121 = 0.0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0.0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0.0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0.0, $3 = 0, $30 = 0; var $31 = 0, $32 = 0.0, $33 = 0, $34 = 0, $35 = 0.0, $36 = 0, $37 = 0, $38 = 0.0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0.0, $44 = 0, $45 = 0, $46 = 0.0, $47 = 0, $48 = 0, $49 = 0.0; var $5 = 0, $50 = 0, $51 = 0, $52 = 0.0, $53 = 0, $54 = 0.0, $55 = 0.0, $56 = 0, $57 = 0, $58 = 0.0, $59 = 0, $6 = 0, $60 = 0, $61 = 0.0, $62 = 0, $63 = 0, $64 = 0.0, $65 = 0, $66 = 0.0, $67 = 0.0; var $68 = 0, $69 = 0, $7 = 0, $70 = 0.0, $71 = 0, $72 = 0.0, $73 = 0.0, $74 = 0, $75 = 0, $76 = 0.0, $77 = 0, $78 = 0, $79 = 0.0, $8 = 0, $80 = 0, $81 = 0, $82 = 0.0, $83 = 0, $84 = 0.0, $85 = 0.0; var $86 = 0, $87 = 0, $88 = 0.0, $89 = 0, $9 = 0.0, $90 = 0.0, $91 = 0.0, $92 = 0, $93 = 0, $94 = 0.0, $95 = 0, $96 = 0.0, $97 = 0.0, $98 = 0, $99 = 0, $N$addr = 0, $_x$addr = 0, $_y$addr = 0, $add = 0, $add$ptr = 0; var $add103 = 0.0, $add107 = 0, $add108 = 0, $add111 = 0, $add114 = 0, $add125 = 0, $add132 = 0, $add16 = 0, $add29 = 0, $add32 = 0, $add35 = 0, $add41 = 0, $add46 = 0, $add49 = 0.0, $add53 = 0, $add54 = 0, $add57 = 0, $add60 = 0, $add61 = 0, $add65 = 0.0; var $add68 = 0, $add72 = 0.0, $add76 = 0, $add77 = 0, $add80 = 0, $add83 = 0, $add84 = 0, $add88 = 0.0, $add91 = 0, $add92 = 0, $add96 = 0.0, $add99 = 0, $and = 0, $arch$addr = 0, $arrayidx = 0, $arrayidx100 = 0, $arrayidx101 = 0, $arrayidx104 = 0, $arrayidx105 = 0, $arrayidx109 = 0; var $arrayidx11 = 0, $arrayidx110 = 0, $arrayidx112 = 0, $arrayidx120 = 0, $arrayidx124 = 0, $arrayidx126 = 0, $arrayidx133 = 0, $arrayidx134 = 0, $arrayidx143 = 0, $arrayidx144 = 0, $arrayidx19 = 0, $arrayidx27 = 0, $arrayidx3 = 0, $arrayidx30 = 0, $arrayidx31 = 0, $arrayidx33 = 0, $arrayidx34 = 0, $arrayidx36 = 0, $arrayidx37 = 0, $arrayidx38 = 0; var $arrayidx42 = 0, $arrayidx44 = 0, $arrayidx45 = 0, $arrayidx47 = 0, $arrayidx50 = 0, $arrayidx51 = 0, $arrayidx55 = 0, $arrayidx56 = 0, $arrayidx58 = 0, $arrayidx59 = 0, $arrayidx62 = 0, $arrayidx66 = 0, $arrayidx67 = 0, $arrayidx69 = 0, $arrayidx70 = 0, $arrayidx73 = 0, $arrayidx74 = 0, $arrayidx78 = 0, $arrayidx79 = 0, $arrayidx81 = 0; var $arrayidx82 = 0, $arrayidx85 = 0, $arrayidx89 = 0, $arrayidx9 = 0, $arrayidx90 = 0, $arrayidx93 = 0, $arrayidx94 = 0, $arrayidx97 = 0, $arrayidx98 = 0, $cmp = 0, $cmp117 = 0, $cmp122 = 0, $cmp139 = 0, $cmp17 = 0, $cmp25 = 0, $cmp5 = 0, $den$addr = 0, $i = 0, $inc = 0, $inc13 = 0; var $inc130 = 0, $inc136 = 0, $inc146 = 0, $inc21 = 0, $j = 0, $mem$addr = 0, $mul = 0.0, $mul102 = 0.0, $mul127 = 0.0, $mul64 = 0.0, $mul71 = 0.0, $mul87 = 0.0, $mul95 = 0.0, $ord$addr = 0, $saved_stack = 0, $sub = 0, $sub10 = 0.0, $sub106 = 0.0, $sub128 = 0.0, $sub141 = 0; var $sub142 = 0, $sub2 = 0, $sub24 = 0, $sub40 = 0.0, $sub52 = 0.0, $sub7 = 0, $sub75 = 0.0, $sub8 = 0, $sum = 0, $sum119 = 0.0, $vla = 0, $vla$alloca_mul = 0, $vla1 = 0, $vla1$alloca_mul = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $sum = sp + 8|0; $_x$addr = $_x; $den$addr = $den; $_y$addr = $_y; $N$addr = $N; $ord$addr = $ord; $mem$addr = $mem; $arch$addr = $arch; $0 = $ord$addr; $1 = (_llvm_stacksave()|0); $saved_stack = $1; $vla$alloca_mul = $0<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $2 = $N$addr; $3 = $ord$addr; $add = (($2) + ($3))|0; $vla1$alloca_mul = $add<<2; $vla1 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla1$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla1$alloca_mul)|0)+15)&-16)|0);; $i = 0; while(1) { $4 = $i; $5 = $ord$addr; $cmp = ($4|0)<($5|0); if (!($cmp)) { break; } $6 = $den$addr; $7 = $ord$addr; $8 = $i; $sub = (($7) - ($8))|0; $sub2 = (($sub) - 1)|0; $arrayidx = (($6) + ($sub2<<2)|0); $9 = +HEAPF32[$arrayidx>>2]; $10 = $i; $arrayidx3 = (($vla) + ($10<<2)|0); HEAPF32[$arrayidx3>>2] = $9; $11 = $i; $inc = (($11) + 1)|0; $i = $inc; } $i = 0; while(1) { $12 = $i; $13 = $ord$addr; $cmp5 = ($12|0)<($13|0); if (!($cmp5)) { break; } $14 = $mem$addr; $15 = $ord$addr; $16 = $i; $sub7 = (($15) - ($16))|0; $sub8 = (($sub7) - 1)|0; $arrayidx9 = (($14) + ($sub8<<2)|0); $17 = +HEAPF32[$arrayidx9>>2]; $sub10 = - $17; $18 = $i; $arrayidx11 = (($vla1) + ($18<<2)|0); HEAPF32[$arrayidx11>>2] = $sub10; $19 = $i; $inc13 = (($19) + 1)|0; $i = $inc13; } while(1) { $20 = $i; $21 = $N$addr; $22 = $ord$addr; $add16 = (($21) + ($22))|0; $cmp17 = ($20|0)<($add16|0); if (!($cmp17)) { break; } $23 = $i; $arrayidx19 = (($vla1) + ($23<<2)|0); HEAPF32[$arrayidx19>>2] = 0.0; $24 = $i; $inc21 = (($24) + 1)|0; $i = $inc21; } $i = 0; while(1) { $25 = $i; $26 = $N$addr; $sub24 = (($26) - 3)|0; $cmp25 = ($25|0)<($sub24|0); if (!($cmp25)) { break; } $27 = $_x$addr; $28 = $i; $arrayidx27 = (($27) + ($28<<2)|0); $29 = +HEAPF32[$arrayidx27>>2]; HEAPF32[$sum>>2] = $29; $30 = $_x$addr; $31 = $i; $add29 = (($31) + 1)|0; $arrayidx30 = (($30) + ($add29<<2)|0); $32 = +HEAPF32[$arrayidx30>>2]; $arrayidx31 = ((($sum)) + 4|0); HEAPF32[$arrayidx31>>2] = $32; $33 = $_x$addr; $34 = $i; $add32 = (($34) + 2)|0; $arrayidx33 = (($33) + ($add32<<2)|0); $35 = +HEAPF32[$arrayidx33>>2]; $arrayidx34 = ((($sum)) + 8|0); HEAPF32[$arrayidx34>>2] = $35; $36 = $_x$addr; $37 = $i; $add35 = (($37) + 3)|0; $arrayidx36 = (($36) + ($add35<<2)|0); $38 = +HEAPF32[$arrayidx36>>2]; $arrayidx37 = ((($sum)) + 12|0); HEAPF32[$arrayidx37>>2] = $38; $39 = $arch$addr; $and = $39 & 7; $arrayidx38 = (_XCORR_KERNEL_IMPL + ($and<<2)|0); $40 = HEAP32[$arrayidx38>>2]|0; $41 = $i; $add$ptr = (($vla1) + ($41<<2)|0); $42 = $ord$addr; FUNCTION_TABLE_viiii[$40 & 31]($vla,$add$ptr,$sum,$42); $43 = +HEAPF32[$sum>>2]; $sub40 = - $43; $44 = $i; $45 = $ord$addr; $add41 = (($44) + ($45))|0; $arrayidx42 = (($vla1) + ($add41<<2)|0); HEAPF32[$arrayidx42>>2] = $sub40; $46 = +HEAPF32[$sum>>2]; $47 = $_y$addr; $48 = $i; $arrayidx44 = (($47) + ($48<<2)|0); HEAPF32[$arrayidx44>>2] = $46; $arrayidx45 = ((($sum)) + 4|0); $49 = +HEAPF32[$arrayidx45>>2]; $50 = $i; $51 = $ord$addr; $add46 = (($50) + ($51))|0; $arrayidx47 = (($vla1) + ($add46<<2)|0); $52 = +HEAPF32[$arrayidx47>>2]; $53 = $den$addr; $54 = +HEAPF32[$53>>2]; $mul = $52 * $54; $add49 = $49 + $mul; $arrayidx50 = ((($sum)) + 4|0); HEAPF32[$arrayidx50>>2] = $add49; $arrayidx51 = ((($sum)) + 4|0); $55 = +HEAPF32[$arrayidx51>>2]; $sub52 = - $55; $56 = $i; $57 = $ord$addr; $add53 = (($56) + ($57))|0; $add54 = (($add53) + 1)|0; $arrayidx55 = (($vla1) + ($add54<<2)|0); HEAPF32[$arrayidx55>>2] = $sub52; $arrayidx56 = ((($sum)) + 4|0); $58 = +HEAPF32[$arrayidx56>>2]; $59 = $_y$addr; $60 = $i; $add57 = (($60) + 1)|0; $arrayidx58 = (($59) + ($add57<<2)|0); HEAPF32[$arrayidx58>>2] = $58; $arrayidx59 = ((($sum)) + 8|0); $61 = +HEAPF32[$arrayidx59>>2]; $62 = $i; $63 = $ord$addr; $add60 = (($62) + ($63))|0; $add61 = (($add60) + 1)|0; $arrayidx62 = (($vla1) + ($add61<<2)|0); $64 = +HEAPF32[$arrayidx62>>2]; $65 = $den$addr; $66 = +HEAPF32[$65>>2]; $mul64 = $64 * $66; $add65 = $61 + $mul64; $arrayidx66 = ((($sum)) + 8|0); HEAPF32[$arrayidx66>>2] = $add65; $arrayidx67 = ((($sum)) + 8|0); $67 = +HEAPF32[$arrayidx67>>2]; $68 = $i; $69 = $ord$addr; $add68 = (($68) + ($69))|0; $arrayidx69 = (($vla1) + ($add68<<2)|0); $70 = +HEAPF32[$arrayidx69>>2]; $71 = $den$addr; $arrayidx70 = ((($71)) + 4|0); $72 = +HEAPF32[$arrayidx70>>2]; $mul71 = $70 * $72; $add72 = $67 + $mul71; $arrayidx73 = ((($sum)) + 8|0); HEAPF32[$arrayidx73>>2] = $add72; $arrayidx74 = ((($sum)) + 8|0); $73 = +HEAPF32[$arrayidx74>>2]; $sub75 = - $73; $74 = $i; $75 = $ord$addr; $add76 = (($74) + ($75))|0; $add77 = (($add76) + 2)|0; $arrayidx78 = (($vla1) + ($add77<<2)|0); HEAPF32[$arrayidx78>>2] = $sub75; $arrayidx79 = ((($sum)) + 8|0); $76 = +HEAPF32[$arrayidx79>>2]; $77 = $_y$addr; $78 = $i; $add80 = (($78) + 2)|0; $arrayidx81 = (($77) + ($add80<<2)|0); HEAPF32[$arrayidx81>>2] = $76; $arrayidx82 = ((($sum)) + 12|0); $79 = +HEAPF32[$arrayidx82>>2]; $80 = $i; $81 = $ord$addr; $add83 = (($80) + ($81))|0; $add84 = (($add83) + 2)|0; $arrayidx85 = (($vla1) + ($add84<<2)|0); $82 = +HEAPF32[$arrayidx85>>2]; $83 = $den$addr; $84 = +HEAPF32[$83>>2]; $mul87 = $82 * $84; $add88 = $79 + $mul87; $arrayidx89 = ((($sum)) + 12|0); HEAPF32[$arrayidx89>>2] = $add88; $arrayidx90 = ((($sum)) + 12|0); $85 = +HEAPF32[$arrayidx90>>2]; $86 = $i; $87 = $ord$addr; $add91 = (($86) + ($87))|0; $add92 = (($add91) + 1)|0; $arrayidx93 = (($vla1) + ($add92<<2)|0); $88 = +HEAPF32[$arrayidx93>>2]; $89 = $den$addr; $arrayidx94 = ((($89)) + 4|0); $90 = +HEAPF32[$arrayidx94>>2]; $mul95 = $88 * $90; $add96 = $85 + $mul95; $arrayidx97 = ((($sum)) + 12|0); HEAPF32[$arrayidx97>>2] = $add96; $arrayidx98 = ((($sum)) + 12|0); $91 = +HEAPF32[$arrayidx98>>2]; $92 = $i; $93 = $ord$addr; $add99 = (($92) + ($93))|0; $arrayidx100 = (($vla1) + ($add99<<2)|0); $94 = +HEAPF32[$arrayidx100>>2]; $95 = $den$addr; $arrayidx101 = ((($95)) + 8|0); $96 = +HEAPF32[$arrayidx101>>2]; $mul102 = $94 * $96; $add103 = $91 + $mul102; $arrayidx104 = ((($sum)) + 12|0); HEAPF32[$arrayidx104>>2] = $add103; $arrayidx105 = ((($sum)) + 12|0); $97 = +HEAPF32[$arrayidx105>>2]; $sub106 = - $97; $98 = $i; $99 = $ord$addr; $add107 = (($98) + ($99))|0; $add108 = (($add107) + 3)|0; $arrayidx109 = (($vla1) + ($add108<<2)|0); HEAPF32[$arrayidx109>>2] = $sub106; $arrayidx110 = ((($sum)) + 12|0); $100 = +HEAPF32[$arrayidx110>>2]; $101 = $_y$addr; $102 = $i; $add111 = (($102) + 3)|0; $arrayidx112 = (($101) + ($add111<<2)|0); HEAPF32[$arrayidx112>>2] = $100; $103 = $i; $add114 = (($103) + 4)|0; $i = $add114; } while(1) { $104 = $i; $105 = $N$addr; $cmp117 = ($104|0)<($105|0); if (!($cmp117)) { break; } $106 = $_x$addr; $107 = $i; $arrayidx120 = (($106) + ($107<<2)|0); $108 = +HEAPF32[$arrayidx120>>2]; $sum119 = $108; $j = 0; while(1) { $109 = $j; $110 = $ord$addr; $cmp122 = ($109|0)<($110|0); if (!($cmp122)) { break; } $111 = $j; $arrayidx124 = (($vla) + ($111<<2)|0); $112 = +HEAPF32[$arrayidx124>>2]; $113 = $i; $114 = $j; $add125 = (($113) + ($114))|0; $arrayidx126 = (($vla1) + ($add125<<2)|0); $115 = +HEAPF32[$arrayidx126>>2]; $mul127 = $112 * $115; $116 = $sum119; $sub128 = $116 - $mul127; $sum119 = $sub128; $117 = $j; $inc130 = (($117) + 1)|0; $j = $inc130; } $118 = $sum119; $119 = $i; $120 = $ord$addr; $add132 = (($119) + ($120))|0; $arrayidx133 = (($vla1) + ($add132<<2)|0); HEAPF32[$arrayidx133>>2] = $118; $121 = $sum119; $122 = $_y$addr; $123 = $i; $arrayidx134 = (($122) + ($123<<2)|0); HEAPF32[$arrayidx134>>2] = $121; $124 = $i; $inc136 = (($124) + 1)|0; $i = $inc136; } $i = 0; while(1) { $125 = $i; $126 = $ord$addr; $cmp139 = ($125|0)<($126|0); if (!($cmp139)) { break; } $127 = $_y$addr; $128 = $N$addr; $129 = $i; $sub141 = (($128) - ($129))|0; $sub142 = (($sub141) - 1)|0; $arrayidx143 = (($127) + ($sub142<<2)|0); $130 = +HEAPF32[$arrayidx143>>2]; $131 = $mem$addr; $132 = $i; $arrayidx144 = (($131) + ($132<<2)|0); HEAPF32[$arrayidx144>>2] = $130; $133 = $i; $inc146 = (($133) + 1)|0; $i = $inc146; } $134 = $saved_stack; _llvm_stackrestore(($134|0)); STACKTOP = sp;return; } function __celt_autocorr($x,$ac,$window,$overlap,$lag,$n,$arch) { $x = $x|0; $ac = $ac|0; $window = $window|0; $overlap = $overlap|0; $lag = $lag|0; $n = $n|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0.0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0.0, $18 = 0, $19 = 0, $2 = 0, $20 = 0.0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0.0, $26 = 0; var $27 = 0, $28 = 0.0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0.0; var $45 = 0, $46 = 0, $47 = 0.0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0.0, $52 = 0, $53 = 0, $54 = 0, $55 = 0.0, $56 = 0, $57 = 0, $58 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ac$addr = 0; var $add = 0, $add23 = 0, $add31 = 0.0, $add36 = 0.0, $arch$addr = 0, $arrayidx = 0, $arrayidx11 = 0, $arrayidx12 = 0, $arrayidx16 = 0, $arrayidx2 = 0, $arrayidx27 = 0, $arrayidx29 = 0, $arrayidx35 = 0, $arrayidx6 = 0, $arrayidx7 = 0, $arrayidx8 = 0, $cmp = 0, $cmp1 = 0, $cmp21 = 0, $cmp25 = 0; var $cmp4 = 0, $d = 0.0, $fastN = 0, $i = 0, $inc = 0, $inc18 = 0, $inc33 = 0, $inc38 = 0, $k = 0, $lag$addr = 0, $mul = 0.0, $mul13 = 0.0, $mul30 = 0.0, $n$addr = 0, $overlap$addr = 0, $saved_stack = 0, $shift = 0, $sub = 0, $sub10 = 0, $sub14 = 0; var $sub15 = 0, $sub28 = 0, $sub9 = 0, $vla = 0, $vla$alloca_mul = 0, $window$addr = 0, $x$addr = 0, $xptr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $x$addr = $x; $ac$addr = $ac; $window$addr = $window; $overlap$addr = $overlap; $lag$addr = $lag; $n$addr = $n; $arch$addr = $arch; $0 = $n$addr; $1 = $lag$addr; $sub = (($0) - ($1))|0; $fastN = $sub; $2 = $n$addr; $3 = (_llvm_stacksave()|0); $saved_stack = $3; $vla$alloca_mul = $2<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $4 = $overlap$addr; $cmp = ($4|0)==(0); if ($cmp) { $5 = $x$addr; $xptr = $5; } else { $i = 0; while(1) { $6 = $i; $7 = $n$addr; $cmp1 = ($6|0)<($7|0); if (!($cmp1)) { break; } $8 = $x$addr; $9 = $i; $arrayidx = (($8) + ($9<<2)|0); $10 = +HEAPF32[$arrayidx>>2]; $11 = $i; $arrayidx2 = (($vla) + ($11<<2)|0); HEAPF32[$arrayidx2>>2] = $10; $12 = $i; $inc = (($12) + 1)|0; $i = $inc; } $i = 0; while(1) { $13 = $i; $14 = $overlap$addr; $cmp4 = ($13|0)<($14|0); if (!($cmp4)) { break; } $15 = $x$addr; $16 = $i; $arrayidx6 = (($15) + ($16<<2)|0); $17 = +HEAPF32[$arrayidx6>>2]; $18 = $window$addr; $19 = $i; $arrayidx7 = (($18) + ($19<<2)|0); $20 = +HEAPF32[$arrayidx7>>2]; $mul = $17 * $20; $21 = $i; $arrayidx8 = (($vla) + ($21<<2)|0); HEAPF32[$arrayidx8>>2] = $mul; $22 = $x$addr; $23 = $n$addr; $24 = $i; $sub9 = (($23) - ($24))|0; $sub10 = (($sub9) - 1)|0; $arrayidx11 = (($22) + ($sub10<<2)|0); $25 = +HEAPF32[$arrayidx11>>2]; $26 = $window$addr; $27 = $i; $arrayidx12 = (($26) + ($27<<2)|0); $28 = +HEAPF32[$arrayidx12>>2]; $mul13 = $25 * $28; $29 = $n$addr; $30 = $i; $sub14 = (($29) - ($30))|0; $sub15 = (($sub14) - 1)|0; $arrayidx16 = (($vla) + ($sub15<<2)|0); HEAPF32[$arrayidx16>>2] = $mul13; $31 = $i; $inc18 = (($31) + 1)|0; $i = $inc18; } $xptr = $vla; } $shift = 0; $32 = $xptr; $33 = $xptr; $34 = $ac$addr; $35 = $fastN; $36 = $lag$addr; $add = (($36) + 1)|0; $37 = $arch$addr; _celt_pitch_xcorr_c($32,$33,$34,$35,$add,$37); $k = 0; while(1) { $38 = $k; $39 = $lag$addr; $cmp21 = ($38|0)<=($39|0); if (!($cmp21)) { break; } $40 = $k; $41 = $fastN; $add23 = (($40) + ($41))|0; $i = $add23; $d = 0.0; while(1) { $42 = $i; $43 = $n$addr; $cmp25 = ($42|0)<($43|0); $44 = $d; if (!($cmp25)) { break; } $45 = $xptr; $46 = $i; $arrayidx27 = (($45) + ($46<<2)|0); $47 = +HEAPF32[$arrayidx27>>2]; $48 = $xptr; $49 = $i; $50 = $k; $sub28 = (($49) - ($50))|0; $arrayidx29 = (($48) + ($sub28<<2)|0); $51 = +HEAPF32[$arrayidx29>>2]; $mul30 = $47 * $51; $add31 = $44 + $mul30; $d = $add31; $52 = $i; $inc33 = (($52) + 1)|0; $i = $inc33; } $53 = $ac$addr; $54 = $k; $arrayidx35 = (($53) + ($54<<2)|0); $55 = +HEAPF32[$arrayidx35>>2]; $add36 = $55 + $44; HEAPF32[$arrayidx35>>2] = $add36; $56 = $k; $inc38 = (($56) + 1)|0; $k = $inc38; } $57 = $shift; $58 = $saved_stack; _llvm_stackrestore(($58|0)); STACKTOP = sp;return ($57|0); } function _quant_coarse_energy($m,$start,$end,$effEnd,$eBands,$oldEBands,$budget,$error,$enc,$C,$LM,$nbAvailableBytes,$force_intra,$delayedIntra,$two_pass,$loss_rate,$lfe) { $m = $m|0; $start = $start|0; $end = $end|0; $effEnd = $effEnd|0; $eBands = $eBands|0; $oldEBands = $oldEBands|0; $budget = $budget|0; $error = $error|0; $enc = $enc|0; $C = $C|0; $LM = $LM|0; $nbAvailableBytes = $nbAvailableBytes|0; $force_intra = $force_intra|0; $delayedIntra = $delayedIntra|0; $two_pass = $two_pass|0; $loss_rate = $loss_rate|0; $lfe = $lfe|0; var $$sub54 = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0; var $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0.0, $126 = 0, $127 = 0, $128 = 0.0, $129 = 0, $13 = 0, $130 = 0.0, $131 = 0, $132 = 0.0; var $133 = 0.0, $134 = 0, $135 = 0, $14 = 0.0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0.0; var $3 = 0.0, $30 = 0, $31 = 0.0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0; var $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0.0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0; var $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0; var $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0.0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $C$addr = 0, $LM$addr = 0, $add = 0; var $add$ptr = 0, $add100 = 0, $add109 = 0, $add119 = 0, $add128 = 0, $add137 = 0.0, $add41 = 0, $add67 = 0, $add81 = 0, $add91 = 0, $arrayidx = 0, $arrayidx133 = 0, $arrayidx134 = 0, $arrayidx45 = 0, $arrayidx68 = 0, $arrayidx69 = 0, $badness1 = 0, $badness2 = 0, $budget$addr = 0, $call = 0.0; var $call15 = 0, $call46 = 0, $call50 = 0, $call51 = 0, $call52 = 0, $call53 = 0, $call71 = 0, $call80 = 0, $cmp = 0, $cmp16 = 0, $cmp19 = 0, $cmp24 = 0, $cmp55 = 0, $cmp6 = 0, $cmp74 = 0, $cmp77 = 0, $cmp82 = 0, $cond = 0.0, $conv = 0.0, $conv10 = 0.0; var $conv13 = 0.0, $conv14 = 0, $conv22 = 0.0, $conv26 = 0.0, $conv8 = 0.0, $delayedIntra$addr = 0, $div = 0.0, $eBands$addr = 0, $effEnd$addr = 0, $enc$addr = 0, $enc_intra_state = 0, $enc_start_state = 0, $end$addr = 0, $error$addr = 0, $force_intra$addr = 0, $intra = 0, $intra_bias = 0, $intra_buf = 0, $lfe$addr = 0, $lor$ext = 0; var $loss_rate$addr = 0, $m$addr = 0, $max_decay = 0.0, $mul = 0, $mul102 = 0, $mul103 = 0, $mul108 = 0, $mul11 = 0.0, $mul112 = 0, $mul113 = 0, $mul118 = 0, $mul12 = 0, $mul121 = 0, $mul122 = 0, $mul127 = 0, $mul135 = 0.0, $mul136 = 0.0, $mul2 = 0, $mul23 = 0.0, $mul27 = 0.0; var $mul33 = 0, $mul35 = 0, $mul38 = 0, $mul39 = 0, $mul40 = 0, $mul5 = 0, $mul62 = 0, $mul66 = 0, $mul86 = 0, $mul9 = 0.0, $mul90 = 0, $mul93 = 0, $mul94 = 0, $mul99 = 0, $nbAvailableBytes$addr = 0, $nbEBands = 0, $nbEBands101 = 0, $nbEBands111 = 0, $nbEBands120 = 0, $nbEBands32 = 0; var $nbEBands34 = 0, $nbEBands37 = 0, $nbEBands92 = 0, $new_distortion = 0.0, $nintra_bytes = 0, $nstart_bytes = 0, $oldEBands$addr = 0, $or$cond = 0, $save_bytes = 0, $saved_stack = 0, $saved_stack59 = 0, $start$addr = 0, $sub = 0, $sub$ptr$div = 0, $sub$ptr$div107 = 0, $sub$ptr$div117 = 0, $sub$ptr$div126 = 0, $sub$ptr$div98 = 0, $sub$ptr$lhs$cast = 0, $sub$ptr$lhs$cast104 = 0; var $sub$ptr$lhs$cast114 = 0, $sub$ptr$lhs$cast123 = 0, $sub$ptr$lhs$cast63 = 0, $sub$ptr$lhs$cast87 = 0, $sub$ptr$lhs$cast95 = 0, $sub$ptr$rhs$cast = 0, $sub$ptr$rhs$cast105 = 0, $sub$ptr$rhs$cast115 = 0, $sub$ptr$rhs$cast124 = 0, $sub$ptr$rhs$cast64 = 0, $sub$ptr$rhs$cast88 = 0, $sub$ptr$rhs$cast96 = 0, $sub$ptr$sub = 0, $sub$ptr$sub106 = 0, $sub$ptr$sub116 = 0, $sub$ptr$sub125 = 0, $sub$ptr$sub65 = 0, $sub$ptr$sub89 = 0, $sub$ptr$sub97 = 0, $sub18 = 0; var $sub4 = 0, $sub54 = 0, $sub61 = 0, $sub85 = 0, $tell = 0, $tell_intra = 0, $tobool = 0, $tobool1 = 0, $tobool130 = 0, $tobool29 = 0, $tobool42 = 0, $tobool43 = 0, $tobool48 = 0, $tobool72 = 0, $two_pass$addr = 0, $vla = 0, $vla$alloca_mul = 0, $vla36 = 0, $vla36$alloca_mul = 0, $vla60 = 0; var $vla60$alloca_mul = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; sp = STACKTOP; STACKTOP = STACKTOP + 224|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(224|0); $enc_start_state = sp + 96|0; $enc_intra_state = sp + 24|0; $m$addr = $m; $start$addr = $start; $end$addr = $end; $effEnd$addr = $effEnd; $eBands$addr = $eBands; $oldEBands$addr = $oldEBands; $budget$addr = $budget; $error$addr = $error; $enc$addr = $enc; $C$addr = $C; $LM$addr = $LM; $nbAvailableBytes$addr = $nbAvailableBytes; $force_intra$addr = $force_intra; $delayedIntra$addr = $delayedIntra; $two_pass$addr = $two_pass; $loss_rate$addr = $loss_rate; $lfe$addr = $lfe; $badness1 = 0; $0 = $force_intra$addr; $tobool = ($0|0)!=(0); if ($tobool) { $11 = 1; } else { $1 = $two_pass$addr; $tobool1 = ($1|0)!=(0); if ($tobool1) { $11 = 0; } else { $2 = $delayedIntra$addr; $3 = +HEAPF32[$2>>2]; $4 = $C$addr; $mul = $4<<1; $5 = $end$addr; $6 = $start$addr; $sub = (($5) - ($6))|0; $mul2 = Math_imul($mul, $sub)|0; $conv = (+($mul2|0)); $cmp = $3 > $conv; if ($cmp) { $7 = $nbAvailableBytes$addr; $8 = $end$addr; $9 = $start$addr; $sub4 = (($8) - ($9))|0; $10 = $C$addr; $mul5 = Math_imul($sub4, $10)|0; $cmp6 = ($7|0)>($mul5|0); $11 = $cmp6; } else { $11 = 0; } } } $lor$ext = $11&1; $intra = $lor$ext; $12 = $budget$addr; $conv8 = (+($12>>>0)); $13 = $delayedIntra$addr; $14 = +HEAPF32[$13>>2]; $mul9 = $conv8 * $14; $15 = $loss_rate$addr; $conv10 = (+($15|0)); $mul11 = $mul9 * $conv10; $16 = $C$addr; $mul12 = $16<<9; $conv13 = (+($mul12|0)); $div = $mul11 / $conv13; $conv14 = (~~(($div))); $intra_bias = $conv14; $17 = $eBands$addr; $18 = $oldEBands$addr; $19 = $start$addr; $20 = $effEnd$addr; $21 = $m$addr; $nbEBands = ((($21)) + 8|0); $22 = HEAP32[$nbEBands>>2]|0; $23 = $C$addr; $call = (+_loss_distortion($17,$18,$19,$20,$22,$23)); $new_distortion = $call; $24 = $enc$addr; $call15 = (_ec_tell_123($24)|0); $tell = $call15; $25 = $tell; $add = (($25) + 3)|0; $26 = $budget$addr; $cmp16 = ($add>>>0)>($26>>>0); if ($cmp16) { $intra = 0; $two_pass$addr = 0; } $max_decay = 16.0; $27 = $end$addr; $28 = $start$addr; $sub18 = (($27) - ($28))|0; $cmp19 = ($sub18|0)>(10); if ($cmp19) { $29 = $max_decay; $30 = $nbAvailableBytes$addr; $conv22 = (+($30|0)); $mul23 = 0.125 * $conv22; $cmp24 = $29 < $mul23; if ($cmp24) { $31 = $max_decay; $cond = $31; } else { $32 = $nbAvailableBytes$addr; $conv26 = (+($32|0)); $mul27 = 0.125 * $conv26; $cond = $mul27; } $max_decay = $cond; } $33 = $lfe$addr; $tobool29 = ($33|0)!=(0); if ($tobool29) { $max_decay = 3.0; } $34 = $enc$addr; dest=$enc_start_state; src=$34; stop=dest+48|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); $35 = $C$addr; $36 = $m$addr; $nbEBands32 = ((($36)) + 8|0); $37 = HEAP32[$nbEBands32>>2]|0; $mul33 = Math_imul($35, $37)|0; $38 = (_llvm_stacksave()|0); $saved_stack = $38; $vla$alloca_mul = $mul33<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $39 = $C$addr; $40 = $m$addr; $nbEBands34 = ((($40)) + 8|0); $41 = HEAP32[$nbEBands34>>2]|0; $mul35 = Math_imul($39, $41)|0; $vla36$alloca_mul = $mul35<<2; $vla36 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla36$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla36$alloca_mul)|0)+15)&-16)|0);; $42 = $oldEBands$addr; $43 = $C$addr; $44 = $m$addr; $nbEBands37 = ((($44)) + 8|0); $45 = HEAP32[$nbEBands37>>2]|0; $mul38 = Math_imul($43, $45)|0; $mul39 = $mul38<<2; $46 = $oldEBands$addr; $sub$ptr$lhs$cast = $vla; $sub$ptr$rhs$cast = $46; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $sub$ptr$div = (($sub$ptr$sub|0) / 4)&-1; $mul40 = 0; $add41 = (($mul39) + ($mul40))|0; _memcpy(($vla|0),($42|0),($add41|0))|0; $47 = $two_pass$addr; $tobool42 = ($47|0)!=(0); $48 = $intra; $tobool43 = ($48|0)!=(0); $or$cond = $tobool42 | $tobool43; if ($or$cond) { $49 = $m$addr; $50 = $start$addr; $51 = $end$addr; $52 = $eBands$addr; $53 = $budget$addr; $54 = $tell; $55 = $LM$addr; $arrayidx = (31894 + (($55*84)|0)|0); $arrayidx45 = ((($arrayidx)) + 42|0); $56 = $enc$addr; $57 = $C$addr; $58 = $LM$addr; $59 = $max_decay; $60 = $lfe$addr; $call46 = (_quant_coarse_energy_impl($49,$50,$51,$52,$vla,$53,$54,$arrayidx45,$vla36,$56,$57,$58,1,$59,$60)|0); $badness1 = $call46; } $61 = $intra; $tobool48 = ($61|0)!=(0); if ($tobool48) { $114 = $oldEBands$addr; $115 = $C$addr; $116 = $m$addr; $nbEBands111 = ((($116)) + 8|0); $117 = HEAP32[$nbEBands111>>2]|0; $mul112 = Math_imul($115, $117)|0; $mul113 = $mul112<<2; $118 = $oldEBands$addr; $sub$ptr$lhs$cast114 = $118; $sub$ptr$rhs$cast115 = $vla; $sub$ptr$sub116 = (($sub$ptr$lhs$cast114) - ($sub$ptr$rhs$cast115))|0; $sub$ptr$div117 = (($sub$ptr$sub116|0) / 4)&-1; $mul118 = 0; $add119 = (($mul113) + ($mul118))|0; _memcpy(($114|0),($vla|0),($add119|0))|0; $119 = $error$addr; $120 = $C$addr; $121 = $m$addr; $nbEBands120 = ((($121)) + 8|0); $122 = HEAP32[$nbEBands120>>2]|0; $mul121 = Math_imul($120, $122)|0; $mul122 = $mul121<<2; $123 = $error$addr; $sub$ptr$lhs$cast123 = $123; $sub$ptr$rhs$cast124 = $vla36; $sub$ptr$sub125 = (($sub$ptr$lhs$cast123) - ($sub$ptr$rhs$cast124))|0; $sub$ptr$div126 = (($sub$ptr$sub125|0) / 4)&-1; $mul127 = 0; $add128 = (($mul122) + ($mul127))|0; _memcpy(($119|0),($vla36|0),($add128|0))|0; } else { $62 = $enc$addr; $call50 = (_ec_tell_frac($62)|0); $tell_intra = $call50; $63 = $enc$addr; dest=$enc_intra_state; src=$63; stop=dest+48|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); $call51 = (_ec_range_bytes($enc_start_state)|0); $nstart_bytes = $call51; $call52 = (_ec_range_bytes($enc_intra_state)|0); $nintra_bytes = $call52; $call53 = (_ec_get_buffer($enc_intra_state)|0); $64 = $nstart_bytes; $add$ptr = (($call53) + ($64)|0); $intra_buf = $add$ptr; $65 = $nintra_bytes; $66 = $nstart_bytes; $sub54 = (($65) - ($66))|0; $save_bytes = $sub54; $67 = $save_bytes; $cmp55 = ($67|0)==(0); $$sub54 = $cmp55 ? 1 : $sub54; $save_bytes = $$sub54; $68 = $save_bytes; $69 = (_llvm_stacksave()|0); $saved_stack59 = $69; $vla60$alloca_mul = $68; $vla60 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla60$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla60$alloca_mul)|0)+15)&-16)|0);; $70 = $intra_buf; $71 = $nintra_bytes; $72 = $nstart_bytes; $sub61 = (($71) - ($72))|0; $mul62 = $sub61; $73 = $intra_buf; $sub$ptr$lhs$cast63 = $vla60; $sub$ptr$rhs$cast64 = $73; $sub$ptr$sub65 = (($sub$ptr$lhs$cast63) - ($sub$ptr$rhs$cast64))|0; $mul66 = 0; $add67 = (($mul62) + ($mul66))|0; _memcpy(($vla60|0),($70|0),($add67|0))|0; $74 = $enc$addr; dest=$74; src=$enc_start_state; stop=dest+48|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); $75 = $m$addr; $76 = $start$addr; $77 = $end$addr; $78 = $eBands$addr; $79 = $oldEBands$addr; $80 = $budget$addr; $81 = $tell; $82 = $LM$addr; $arrayidx68 = (31894 + (($82*84)|0)|0); $83 = $intra; $arrayidx69 = (($arrayidx68) + (($83*42)|0)|0); $84 = $error$addr; $85 = $enc$addr; $86 = $C$addr; $87 = $LM$addr; $88 = $max_decay; $89 = $lfe$addr; $call71 = (_quant_coarse_energy_impl($75,$76,$77,$78,$79,$80,$81,$arrayidx69,$84,$85,$86,$87,0,$88,$89)|0); $badness2 = $call71; $90 = $two_pass$addr; $tobool72 = ($90|0)!=(0); do { if ($tobool72) { $91 = $badness1; $92 = $badness2; $cmp74 = ($91|0)<($92|0); if (!($cmp74)) { $93 = $badness1; $94 = $badness2; $cmp77 = ($93|0)==($94|0); if (!($cmp77)) { break; } $95 = $enc$addr; $call80 = (_ec_tell_frac($95)|0); $96 = $intra_bias; $add81 = (($call80) + ($96))|0; $97 = $tell_intra; $cmp82 = ($add81|0)>($97|0); if (!($cmp82)) { break; } } $98 = $enc$addr; dest=$98; src=$enc_intra_state; stop=dest+48|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); $99 = $intra_buf; $100 = $nintra_bytes; $101 = $nstart_bytes; $sub85 = (($100) - ($101))|0; $mul86 = $sub85; $102 = $intra_buf; $sub$ptr$lhs$cast87 = $102; $sub$ptr$rhs$cast88 = $vla60; $sub$ptr$sub89 = (($sub$ptr$lhs$cast87) - ($sub$ptr$rhs$cast88))|0; $mul90 = 0; $add91 = (($mul86) + ($mul90))|0; _memcpy(($99|0),($vla60|0),($add91|0))|0; $103 = $oldEBands$addr; $104 = $C$addr; $105 = $m$addr; $nbEBands92 = ((($105)) + 8|0); $106 = HEAP32[$nbEBands92>>2]|0; $mul93 = Math_imul($104, $106)|0; $mul94 = $mul93<<2; $107 = $oldEBands$addr; $sub$ptr$lhs$cast95 = $107; $sub$ptr$rhs$cast96 = $vla; $sub$ptr$sub97 = (($sub$ptr$lhs$cast95) - ($sub$ptr$rhs$cast96))|0; $sub$ptr$div98 = (($sub$ptr$sub97|0) / 4)&-1; $mul99 = 0; $add100 = (($mul94) + ($mul99))|0; _memcpy(($103|0),($vla|0),($add100|0))|0; $108 = $error$addr; $109 = $C$addr; $110 = $m$addr; $nbEBands101 = ((($110)) + 8|0); $111 = HEAP32[$nbEBands101>>2]|0; $mul102 = Math_imul($109, $111)|0; $mul103 = $mul102<<2; $112 = $error$addr; $sub$ptr$lhs$cast104 = $112; $sub$ptr$rhs$cast105 = $vla36; $sub$ptr$sub106 = (($sub$ptr$lhs$cast104) - ($sub$ptr$rhs$cast105))|0; $sub$ptr$div107 = (($sub$ptr$sub106|0) / 4)&-1; $mul108 = 0; $add109 = (($mul103) + ($mul108))|0; _memcpy(($108|0),($vla36|0),($add109|0))|0; $intra = 1; } } while(0); $113 = $saved_stack59; _llvm_stackrestore(($113|0)); } $124 = $intra; $tobool130 = ($124|0)!=(0); if ($tobool130) { $125 = $new_distortion; $126 = $delayedIntra$addr; HEAPF32[$126>>2] = $125; $135 = $saved_stack; _llvm_stackrestore(($135|0)); STACKTOP = sp;return; } else { $127 = $LM$addr; $arrayidx133 = (15080 + ($127<<2)|0); $128 = +HEAPF32[$arrayidx133>>2]; $129 = $LM$addr; $arrayidx134 = (15080 + ($129<<2)|0); $130 = +HEAPF32[$arrayidx134>>2]; $mul135 = $128 * $130; $131 = $delayedIntra$addr; $132 = +HEAPF32[$131>>2]; $mul136 = $mul135 * $132; $133 = $new_distortion; $add137 = $mul136 + $133; $134 = $delayedIntra$addr; HEAPF32[$134>>2] = $add137; $135 = $saved_stack; _llvm_stackrestore(($135|0)); STACKTOP = sp;return; } } function _loss_distortion($eBands,$oldEBands,$start,$end,$len,$C) { $eBands = $eBands|0; $oldEBands = $oldEBands|0; $start = $start|0; $end = $end|0; $len = $len|0; $C = $C|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0.0, $13 = 0.0, $14 = 0.0, $15 = 0.0, $16 = 0, $17 = 0, $18 = 0, $19 = 0.0, $2 = 0, $20 = 0.0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0.0, $8 = 0; var $9 = 0, $C$addr = 0, $add = 0, $add2 = 0, $add5 = 0.0, $arrayidx = 0, $arrayidx3 = 0, $c = 0, $cmp = 0, $cmp7 = 0, $cmp8 = 0, $cond = 0.0, $d = 0.0, $dist = 0.0, $eBands$addr = 0, $end$addr = 0, $i = 0, $inc = 0, $inc6 = 0, $len$addr = 0; var $mul = 0, $mul1 = 0, $mul4 = 0.0, $oldEBands$addr = 0, $start$addr = 0, $sub = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $eBands$addr = $eBands; $oldEBands$addr = $oldEBands; $start$addr = $start; $end$addr = $end; $len$addr = $len; $C$addr = $C; $dist = 0.0; $c = 0; while(1) { $0 = $start$addr; $i = $0; while(1) { $1 = $i; $2 = $end$addr; $cmp = ($1|0)<($2|0); if (!($cmp)) { break; } $3 = $eBands$addr; $4 = $i; $5 = $c; $6 = $len$addr; $mul = Math_imul($5, $6)|0; $add = (($4) + ($mul))|0; $arrayidx = (($3) + ($add<<2)|0); $7 = +HEAPF32[$arrayidx>>2]; $8 = $oldEBands$addr; $9 = $i; $10 = $c; $11 = $len$addr; $mul1 = Math_imul($10, $11)|0; $add2 = (($9) + ($mul1))|0; $arrayidx3 = (($8) + ($add2<<2)|0); $12 = +HEAPF32[$arrayidx3>>2]; $sub = $7 - $12; $d = $sub; $13 = $dist; $14 = $d; $15 = $d; $mul4 = $14 * $15; $add5 = $13 + $mul4; $dist = $add5; $16 = $i; $inc = (($16) + 1)|0; $i = $inc; } $17 = $c; $inc6 = (($17) + 1)|0; $c = $inc6; $18 = $C$addr; $cmp7 = ($inc6|0)<($18|0); if (!($cmp7)) { break; } } $19 = $dist; $cmp8 = 200.0 < $19; $20 = $dist; $cond = $cmp8 ? 200.0 : $20; STACKTOP = sp;return (+$cond); } function _ec_tell_123($_this) { $_this = $_this|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $_this$addr = 0, $nbits_total = 0, $rng = 0, $sub = 0, $sub1 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $_this$addr = $_this; $0 = $_this$addr; $nbits_total = ((($0)) + 20|0); $1 = HEAP32[$nbits_total>>2]|0; $2 = $_this$addr; $rng = ((($2)) + 28|0); $3 = HEAP32[$rng>>2]|0; $4 = (Math_clz32(($3|0))|0); $sub = (32 - ($4))|0; $sub1 = (($1) - ($sub))|0; STACKTOP = sp;return ($sub1|0); } function _quant_coarse_energy_impl($m,$start,$end,$eBands,$oldEBands,$budget,$tell,$prob_model,$error,$enc,$C,$LM,$intra,$max_decay,$lfe) { $m = $m|0; $start = $start|0; $end = $end|0; $eBands = $eBands|0; $oldEBands = $oldEBands|0; $budget = $budget|0; $tell = $tell|0; $prob_model = $prob_model|0; $error = $error|0; $enc = $enc|0; $C = $C|0; $LM = $LM|0; $intra = $intra|0; $max_decay = +$max_decay; $lfe = $lfe|0; var $$add43 = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0.0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0.0, $114 = 0.0; var $115 = 0, $116 = 0.0, $117 = 0.0, $118 = 0.0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0.0, $126 = 0.0, $127 = 0.0, $128 = 0.0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0; var $133 = 0, $134 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0.0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0.0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0.0, $3 = 0; var $30 = 0.0, $31 = 0.0, $32 = 0.0, $33 = 0, $34 = 0.0, $35 = 0.0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0.0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0.0, $48 = 0.0; var $49 = 0, $5 = 0, $50 = 0.0, $51 = 0.0, $52 = 0.0, $53 = 0.0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0.0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0; var $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0.0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0; var $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $C$addr = 0, $LM$addr = 0, $add = 0, $add107 = 0; var $add14 = 0, $add158 = 0, $add162 = 0, $add166 = 0.0, $add167 = 0.0, $add170 = 0, $add173 = 0.0, $add19 = 0.0, $add23 = 0, $add31 = 0, $add43 = 0, $add5 = 0, $add9 = 0, $arrayidx = 0, $arrayidx10 = 0, $arrayidx105 = 0, $arrayidx108 = 0, $arrayidx15 = 0, $arrayidx159 = 0, $arrayidx165 = 0; var $arrayidx17 = 0, $arrayidx171 = 0, $arrayidx172 = 0, $arrayidx176 = 0, $arrayidx2 = 0, $arrayidx24 = 0, $arrayidx32 = 0, $arrayidx6 = 0, $badness = 0, $beta = 0.0, $bits_left = 0, $budget$addr = 0, $c = 0, $call = 0.0, $call161 = 0, $call49 = 0, $cmp = 0, $cmp11 = 0, $cmp113 = 0, $cmp116 = 0; var $cmp122 = 0, $cmp126 = 0, $cmp135 = 0, $cmp140 = 0, $cmp143 = 0, $cmp177 = 0, $cmp25 = 0, $cmp36 = 0, $cmp38 = 0, $cmp4 = 0, $cmp44 = 0, $cmp55 = 0, $cmp58 = 0, $cmp61 = 0, $cmp64 = 0, $cmp71 = 0, $cmp74 = 0, $cmp84 = 0, $cmp87 = 0, $cmp95 = 0; var $cmp98 = 0, $coef = 0.0, $cond = 0.0, $cond103 = 0, $cond121 = 0, $cond131 = 0, $cond133 = 0, $cond148 = 0, $cond184 = 0, $cond34 = 0.0, $cond69 = 0, $cond79 = 0, $cond92 = 0, $conv = 0.0, $conv106 = 0, $conv109 = 0, $conv136 = 0, $conv154 = 0.0, $conv163 = 0.0, $conv20 = 0; var $conv42 = 0, $decay_bound = 0.0, $eBands$addr = 0, $enc$addr = 0, $end$addr = 0, $error$addr = 0, $f = 0.0, $i = 0, $inc = 0, $inc179 = 0, $intra$addr = 0, $lfe$addr = 0, $m$addr = 0, $max_decay$addr = 0.0, $mul = 0, $mul104 = 0, $mul13 = 0, $mul134 = 0, $mul157 = 0, $mul16 = 0.0; var $mul164 = 0.0, $mul169 = 0, $mul174 = 0.0, $mul22 = 0, $mul30 = 0, $mul51 = 0, $mul53 = 0, $mul8 = 0, $nbEBands = 0, $nbEBands12 = 0, $nbEBands156 = 0, $nbEBands168 = 0, $nbEBands21 = 0, $nbEBands29 = 0, $nbEBands7 = 0, $oldE = 0.0, $oldEBands$addr = 0, $or$cond = 0, $or$cond1 = 0, $pi = 0; var $prev = 0, $prob_model$addr = 0, $q = 0.0, $qi = 0, $qi0 = 0, $shl = 0, $shl110 = 0, $start$addr = 0, $sub = 0.0, $sub112 = 0, $sub137 = 0, $sub139 = 0, $sub149 = 0, $sub155 = 0.0, $sub160 = 0, $sub175 = 0.0, $sub18 = 0.0, $sub35 = 0.0, $sub41 = 0.0, $sub50 = 0; var $sub52 = 0, $sub54 = 0, $sub94 = 0, $tell$addr = 0, $tmp = 0.0, $tobool = 0, $tobool180 = 0, $tobool82 = 0, $x = 0.0, $xor = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 128|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(128|0); $prev = sp + 48|0; $qi = sp + 32|0; $m$addr = $m; $start$addr = $start; $end$addr = $end; $eBands$addr = $eBands; $oldEBands$addr = $oldEBands; $budget$addr = $budget; $tell$addr = $tell; $prob_model$addr = $prob_model; $error$addr = $error; $enc$addr = $enc; $C$addr = $C; $LM$addr = $LM; $intra$addr = $intra; $max_decay$addr = $max_decay; $lfe$addr = $lfe; $badness = 0; ;HEAP32[$prev>>2]=0|0;HEAP32[$prev+4>>2]=0|0; $0 = $tell$addr; $add = (($0) + 3)|0; $1 = $budget$addr; $cmp = ($add|0)<=($1|0); if ($cmp) { $2 = $enc$addr; $3 = $intra$addr; _ec_enc_bit_logp($2,$3,3); } $4 = $intra$addr; $tobool = ($4|0)!=(0); if ($tobool) { $coef = 0.0; $beta = 0.149993896484375; } else { $5 = $LM$addr; $arrayidx = (15096 + ($5<<2)|0); $6 = +HEAPF32[$arrayidx>>2]; $beta = $6; $7 = $LM$addr; $arrayidx2 = (15080 + ($7<<2)|0); $8 = +HEAPF32[$arrayidx2>>2]; $coef = $8; } $9 = $start$addr; $i = $9; while(1) { $10 = $i; $11 = $end$addr; $cmp4 = ($10|0)<($11|0); if (!($cmp4)) { break; } $c = 0; while(1) { $12 = $eBands$addr; $13 = $i; $14 = $c; $15 = $m$addr; $nbEBands = ((($15)) + 8|0); $16 = HEAP32[$nbEBands>>2]|0; $mul = Math_imul($14, $16)|0; $add5 = (($13) + ($mul))|0; $arrayidx6 = (($12) + ($add5<<2)|0); $17 = +HEAPF32[$arrayidx6>>2]; $x = $17; $18 = $oldEBands$addr; $19 = $i; $20 = $c; $21 = $m$addr; $nbEBands7 = ((($21)) + 8|0); $22 = HEAP32[$nbEBands7>>2]|0; $mul8 = Math_imul($20, $22)|0; $add9 = (($19) + ($mul8))|0; $arrayidx10 = (($18) + ($add9<<2)|0); $23 = +HEAPF32[$arrayidx10>>2]; $cmp11 = -9.0 > $23; if ($cmp11) { $cond = -9.0; } else { $24 = $oldEBands$addr; $25 = $i; $26 = $c; $27 = $m$addr; $nbEBands12 = ((($27)) + 8|0); $28 = HEAP32[$nbEBands12>>2]|0; $mul13 = Math_imul($26, $28)|0; $add14 = (($25) + ($mul13))|0; $arrayidx15 = (($24) + ($add14<<2)|0); $29 = +HEAPF32[$arrayidx15>>2]; $cond = $29; } $oldE = $cond; $30 = $x; $31 = $coef; $32 = $oldE; $mul16 = $31 * $32; $sub = $30 - $mul16; $33 = $c; $arrayidx17 = (($prev) + ($33<<2)|0); $34 = +HEAPF32[$arrayidx17>>2]; $sub18 = $sub - $34; $f = $sub18; $35 = $f; $add19 = 0.5 + $35; $conv = $add19; $call = (+Math_floor((+$conv))); $conv20 = (~~(($call))); HEAP32[$qi>>2] = $conv20; $36 = $oldEBands$addr; $37 = $i; $38 = $c; $39 = $m$addr; $nbEBands21 = ((($39)) + 8|0); $40 = HEAP32[$nbEBands21>>2]|0; $mul22 = Math_imul($38, $40)|0; $add23 = (($37) + ($mul22))|0; $arrayidx24 = (($36) + ($add23<<2)|0); $41 = +HEAPF32[$arrayidx24>>2]; $cmp25 = -28.0 > $41; if ($cmp25) { $cond34 = -28.0; } else { $42 = $oldEBands$addr; $43 = $i; $44 = $c; $45 = $m$addr; $nbEBands29 = ((($45)) + 8|0); $46 = HEAP32[$nbEBands29>>2]|0; $mul30 = Math_imul($44, $46)|0; $add31 = (($43) + ($mul30))|0; $arrayidx32 = (($42) + ($add31<<2)|0); $47 = +HEAPF32[$arrayidx32>>2]; $cond34 = $47; } $48 = $max_decay$addr; $sub35 = $cond34 - $48; $decay_bound = $sub35; $49 = HEAP32[$qi>>2]|0; $cmp36 = ($49|0)<(0); if ($cmp36) { $50 = $x; $51 = $decay_bound; $cmp38 = $50 < $51; if ($cmp38) { $52 = $decay_bound; $53 = $x; $sub41 = $52 - $53; $conv42 = (~~(($sub41))); $54 = HEAP32[$qi>>2]|0; $add43 = (($54) + ($conv42))|0; HEAP32[$qi>>2] = $add43; $55 = HEAP32[$qi>>2]|0; $cmp44 = ($55|0)>(0); $$add43 = $cmp44 ? 0 : $add43; HEAP32[$qi>>2] = $$add43; } } $56 = HEAP32[$qi>>2]|0; $qi0 = $56; $57 = $enc$addr; $call49 = (_ec_tell_123($57)|0); $tell$addr = $call49; $58 = $budget$addr; $59 = $tell$addr; $sub50 = (($58) - ($59))|0; $60 = $C$addr; $mul51 = ($60*3)|0; $61 = $end$addr; $62 = $i; $sub52 = (($61) - ($62))|0; $mul53 = Math_imul($mul51, $sub52)|0; $sub54 = (($sub50) - ($mul53))|0; $bits_left = $sub54; $63 = $i; $64 = $start$addr; $cmp55 = ($63|0)!=($64|0); $65 = $bits_left; $cmp58 = ($65|0)<(30); $or$cond = $cmp55 & $cmp58; if ($or$cond) { $66 = $bits_left; $cmp61 = ($66|0)<(24); if ($cmp61) { $67 = HEAP32[$qi>>2]|0; $cmp64 = (1)<($67|0); $68 = HEAP32[$qi>>2]|0; $cond69 = $cmp64 ? 1 : $68; HEAP32[$qi>>2] = $cond69; } $69 = $bits_left; $cmp71 = ($69|0)<(16); if ($cmp71) { $70 = HEAP32[$qi>>2]|0; $cmp74 = (-1)>($70|0); $71 = HEAP32[$qi>>2]|0; $cond79 = $cmp74 ? -1 : $71; HEAP32[$qi>>2] = $cond79; } } $72 = $lfe$addr; $tobool82 = ($72|0)!=(0); $73 = $i; $cmp84 = ($73|0)>=(2); $or$cond1 = $tobool82 & $cmp84; if ($or$cond1) { $74 = HEAP32[$qi>>2]|0; $cmp87 = ($74|0)<(0); $75 = HEAP32[$qi>>2]|0; $cond92 = $cmp87 ? $75 : 0; HEAP32[$qi>>2] = $cond92; } $76 = $budget$addr; $77 = $tell$addr; $sub94 = (($76) - ($77))|0; $cmp95 = ($sub94|0)>=(15); do { if ($cmp95) { $78 = $i; $cmp98 = ($78|0)<(20); $79 = $i; $cond103 = $cmp98 ? $79 : 20; $mul104 = $cond103<<1; $pi = $mul104; $80 = $enc$addr; $81 = $prob_model$addr; $82 = $pi; $arrayidx105 = (($81) + ($82)|0); $83 = HEAP8[$arrayidx105>>0]|0; $conv106 = $83&255; $shl = $conv106 << 7; $84 = $prob_model$addr; $85 = $pi; $add107 = (($85) + 1)|0; $arrayidx108 = (($84) + ($add107)|0); $86 = HEAP8[$arrayidx108>>0]|0; $conv109 = $86&255; $shl110 = $conv109 << 6; _ec_laplace_encode($80,$qi,$shl,$shl110); } else { $87 = $budget$addr; $88 = $tell$addr; $sub112 = (($87) - ($88))|0; $cmp113 = ($sub112|0)>=(2); if ($cmp113) { $89 = HEAP32[$qi>>2]|0; $cmp116 = ($89|0)<(1); $90 = HEAP32[$qi>>2]|0; $cond121 = $cmp116 ? $90 : 1; $cmp122 = (-1)>($cond121|0); if ($cmp122) { $cond133 = -1; } else { $91 = HEAP32[$qi>>2]|0; $cmp126 = ($91|0)<(1); $92 = HEAP32[$qi>>2]|0; $cond131 = $cmp126 ? $92 : 1; $cond133 = $cond131; } HEAP32[$qi>>2] = $cond133; $93 = $enc$addr; $94 = HEAP32[$qi>>2]|0; $mul134 = $94<<1; $95 = HEAP32[$qi>>2]|0; $cmp135 = ($95|0)<(0); $conv136 = $cmp135&1; $sub137 = (0 - ($conv136))|0; $xor = $mul134 ^ $sub137; _ec_enc_icdf($93,$xor,32230,2); break; } else { $96 = $budget$addr; $97 = $tell$addr; $sub139 = (($96) - ($97))|0; $cmp140 = ($sub139|0)>=(1); if ($cmp140) { $98 = HEAP32[$qi>>2]|0; $cmp143 = (0)<($98|0); $99 = HEAP32[$qi>>2]|0; $cond148 = $cmp143 ? 0 : $99; HEAP32[$qi>>2] = $cond148; $100 = $enc$addr; $101 = HEAP32[$qi>>2]|0; $sub149 = (0 - ($101))|0; _ec_enc_bit_logp($100,$sub149,1); break; } else { HEAP32[$qi>>2] = -1; break; } } } } while(0); $102 = $f; $103 = HEAP32[$qi>>2]|0; $conv154 = (+($103|0)); $sub155 = $102 - $conv154; $104 = $error$addr; $105 = $i; $106 = $c; $107 = $m$addr; $nbEBands156 = ((($107)) + 8|0); $108 = HEAP32[$nbEBands156>>2]|0; $mul157 = Math_imul($106, $108)|0; $add158 = (($105) + ($mul157))|0; $arrayidx159 = (($104) + ($add158<<2)|0); HEAPF32[$arrayidx159>>2] = $sub155; $109 = $qi0; $110 = HEAP32[$qi>>2]|0; $sub160 = (($109) - ($110))|0; $call161 = (Math_abs(($sub160|0))|0); $111 = $badness; $add162 = (($111) + ($call161))|0; $badness = $add162; $112 = HEAP32[$qi>>2]|0; $conv163 = (+($112|0)); $q = $conv163; $113 = $coef; $114 = $oldE; $mul164 = $113 * $114; $115 = $c; $arrayidx165 = (($prev) + ($115<<2)|0); $116 = +HEAPF32[$arrayidx165>>2]; $add166 = $mul164 + $116; $117 = $q; $add167 = $add166 + $117; $tmp = $add167; $118 = $tmp; $119 = $oldEBands$addr; $120 = $i; $121 = $c; $122 = $m$addr; $nbEBands168 = ((($122)) + 8|0); $123 = HEAP32[$nbEBands168>>2]|0; $mul169 = Math_imul($121, $123)|0; $add170 = (($120) + ($mul169))|0; $arrayidx171 = (($119) + ($add170<<2)|0); HEAPF32[$arrayidx171>>2] = $118; $124 = $c; $arrayidx172 = (($prev) + ($124<<2)|0); $125 = +HEAPF32[$arrayidx172>>2]; $126 = $q; $add173 = $125 + $126; $127 = $beta; $128 = $q; $mul174 = $127 * $128; $sub175 = $add173 - $mul174; $129 = $c; $arrayidx176 = (($prev) + ($129<<2)|0); HEAPF32[$arrayidx176>>2] = $sub175; $130 = $c; $inc = (($130) + 1)|0; $c = $inc; $131 = $C$addr; $cmp177 = ($inc|0)<($131|0); if (!($cmp177)) { break; } } $132 = $i; $inc179 = (($132) + 1)|0; $i = $inc179; } $133 = $lfe$addr; $tobool180 = ($133|0)!=(0); $134 = $badness; $cond184 = $tobool180 ? 0 : $134; STACKTOP = sp;return ($cond184|0); } function _ec_range_bytes($_this) { $_this = $_this|0; var $0 = 0, $1 = 0, $_this$addr = 0, $offs = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $_this$addr = $_this; $0 = $_this$addr; $offs = ((($0)) + 24|0); $1 = HEAP32[$offs>>2]|0; STACKTOP = sp;return ($1|0); } function _ec_get_buffer($_this) { $_this = $_this|0; var $0 = 0, $1 = 0, $_this$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $_this$addr = $_this; $0 = $_this$addr; $1 = HEAP32[$0>>2]|0; STACKTOP = sp;return ($1|0); } function _quant_fine_energy($m,$start,$end,$oldEBands,$error,$fine_quant,$enc,$C) { $m = $m|0; $start = $start|0; $end = $end|0; $oldEBands = $oldEBands|0; $error = $error|0; $fine_quant = $fine_quant|0; $enc = $enc|0; $C = $C|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0.0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0.0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0.0, $36 = 0.0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0.0, $43 = 0, $44 = 0; var $45 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $C$addr = 0, $add = 0, $add24 = 0.0, $add34 = 0, $add36 = 0.0, $add39 = 0, $add5 = 0.0, $arrayidx = 0, $arrayidx1 = 0, $arrayidx22 = 0, $arrayidx25 = 0, $arrayidx35 = 0, $arrayidx4 = 0, $arrayidx40 = 0; var $c = 0, $call = 0.0, $cmp = 0, $cmp12 = 0, $cmp18 = 0, $cmp2 = 0, $cmp42 = 0, $conv = 0, $conv10 = 0, $conv11 = 0, $conv15 = 0, $conv23 = 0.0, $conv28 = 0.0, $conv6 = 0, $conv7 = 0.0, $conv9 = 0.0, $enc$addr = 0, $end$addr = 0, $error$addr = 0, $fine_quant$addr = 0; var $frac = 0, $i = 0, $inc = 0, $inc44 = 0, $m$addr = 0, $mul = 0, $mul29 = 0.0, $mul30 = 0.0, $mul33 = 0, $mul38 = 0, $mul8 = 0.0, $nbEBands = 0, $nbEBands32 = 0, $nbEBands37 = 0, $offset = 0.0, $oldEBands$addr = 0, $q2 = 0, $shl = 0, $shl27 = 0, $start$addr = 0; var $sub = 0, $sub16 = 0, $sub26 = 0, $sub31 = 0.0, $sub41 = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $m$addr = $m; $start$addr = $start; $end$addr = $end; $oldEBands$addr = $oldEBands; $error$addr = $error; $fine_quant$addr = $fine_quant; $enc$addr = $enc; $C$addr = $C; $0 = $start$addr; $i = $0; while(1) { $1 = $i; $2 = $end$addr; $cmp = ($1|0)<($2|0); if (!($cmp)) { break; } $3 = $fine_quant$addr; $4 = $i; $arrayidx = (($3) + ($4<<2)|0); $5 = HEAP32[$arrayidx>>2]|0; $shl = 1 << $5; $conv = $shl&65535; $frac = $conv; $6 = $fine_quant$addr; $7 = $i; $arrayidx1 = (($6) + ($7<<2)|0); $8 = HEAP32[$arrayidx1>>2]|0; $cmp2 = ($8|0)<=(0); if (!($cmp2)) { $c = 0; while(1) { $9 = $error$addr; $10 = $i; $11 = $c; $12 = $m$addr; $nbEBands = ((($12)) + 8|0); $13 = HEAP32[$nbEBands>>2]|0; $mul = Math_imul($11, $13)|0; $add = (($10) + ($mul))|0; $arrayidx4 = (($9) + ($add<<2)|0); $14 = +HEAPF32[$arrayidx4>>2]; $add5 = $14 + 0.5; $15 = $frac; $conv6 = $15 << 16 >> 16; $conv7 = (+($conv6|0)); $mul8 = $add5 * $conv7; $conv9 = $mul8; $call = (+Math_floor((+$conv9))); $conv10 = (~~(($call))); $q2 = $conv10; $16 = $q2; $17 = $frac; $conv11 = $17 << 16 >> 16; $sub = (($conv11) - 1)|0; $cmp12 = ($16|0)>($sub|0); if ($cmp12) { $18 = $frac; $conv15 = $18 << 16 >> 16; $sub16 = (($conv15) - 1)|0; $q2 = $sub16; } $19 = $q2; $cmp18 = ($19|0)<(0); if ($cmp18) { $q2 = 0; } $20 = $enc$addr; $21 = $q2; $22 = $fine_quant$addr; $23 = $i; $arrayidx22 = (($22) + ($23<<2)|0); $24 = HEAP32[$arrayidx22>>2]|0; _ec_enc_bits($20,$21,$24); $25 = $q2; $conv23 = (+($25|0)); $add24 = $conv23 + 0.5; $26 = $fine_quant$addr; $27 = $i; $arrayidx25 = (($26) + ($27<<2)|0); $28 = HEAP32[$arrayidx25>>2]|0; $sub26 = (14 - ($28))|0; $shl27 = 1 << $sub26; $conv28 = (+($shl27|0)); $mul29 = $add24 * $conv28; $mul30 = $mul29 * 6.103515625E-5; $sub31 = $mul30 - 0.5; $offset = $sub31; $29 = $offset; $30 = $oldEBands$addr; $31 = $i; $32 = $c; $33 = $m$addr; $nbEBands32 = ((($33)) + 8|0); $34 = HEAP32[$nbEBands32>>2]|0; $mul33 = Math_imul($32, $34)|0; $add34 = (($31) + ($mul33))|0; $arrayidx35 = (($30) + ($add34<<2)|0); $35 = +HEAPF32[$arrayidx35>>2]; $add36 = $35 + $29; HEAPF32[$arrayidx35>>2] = $add36; $36 = $offset; $37 = $error$addr; $38 = $i; $39 = $c; $40 = $m$addr; $nbEBands37 = ((($40)) + 8|0); $41 = HEAP32[$nbEBands37>>2]|0; $mul38 = Math_imul($39, $41)|0; $add39 = (($38) + ($mul38))|0; $arrayidx40 = (($37) + ($add39<<2)|0); $42 = +HEAPF32[$arrayidx40>>2]; $sub41 = $42 - $36; HEAPF32[$arrayidx40>>2] = $sub41; $43 = $c; $inc = (($43) + 1)|0; $c = $inc; $44 = $C$addr; $cmp42 = ($inc|0)<($44|0); if (!($cmp42)) { break; } } } $45 = $i; $inc44 = (($45) + 1)|0; $i = $inc44; } STACKTOP = sp;return; } function _quant_energy_finalise($m,$start,$end,$oldEBands,$error,$fine_quant,$fine_priority,$bits_left,$enc,$C) { $m = $m|0; $start = $start|0; $end = $end|0; $oldEBands = $oldEBands|0; $error = $error|0; $fine_quant = $fine_quant|0; $fine_priority = $fine_priority|0; $bits_left = $bits_left|0; $enc = $enc|0; $C = $C|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0.0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0.0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0.0, $32 = 0.0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0.0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $5 = 0; var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $C$addr = 0, $add = 0, $add18 = 0, $add20 = 0.0, $add23 = 0, $arrayidx = 0, $arrayidx10 = 0, $arrayidx19 = 0, $arrayidx24 = 0, $arrayidx6 = 0, $arrayidx8 = 0, $bits_left$addr = 0, $c = 0, $cmp = 0, $cmp2 = 0, $cmp26 = 0; var $cmp3 = 0, $cmp5 = 0, $cmp7 = 0, $cmp9 = 0, $cond = 0, $conv = 0.0, $conv13 = 0.0, $dec = 0, $enc$addr = 0, $end$addr = 0, $error$addr = 0, $fine_priority$addr = 0, $fine_quant$addr = 0, $i = 0, $inc = 0, $inc28 = 0, $inc30 = 0, $m$addr = 0, $mul = 0, $mul14 = 0.0; var $mul15 = 0.0, $mul17 = 0, $mul22 = 0, $nbEBands = 0, $nbEBands16 = 0, $nbEBands21 = 0, $offset = 0.0, $oldEBands$addr = 0, $prio = 0, $q2 = 0, $shl = 0, $start$addr = 0, $sub = 0.0, $sub11 = 0, $sub12 = 0, $sub25 = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $m$addr = $m; $start$addr = $start; $end$addr = $end; $oldEBands$addr = $oldEBands; $error$addr = $error; $fine_quant$addr = $fine_quant; $fine_priority$addr = $fine_priority; $bits_left$addr = $bits_left; $enc$addr = $enc; $C$addr = $C; $prio = 0; while(1) { $0 = $prio; $cmp = ($0|0)<(2); if (!($cmp)) { break; } $1 = $start$addr; $i = $1; while(1) { $2 = $i; $3 = $end$addr; $cmp2 = ($2|0)<($3|0); if (!($cmp2)) { break; } $4 = $bits_left$addr; $5 = $C$addr; $cmp3 = ($4|0)>=($5|0); if (!($cmp3)) { break; } $6 = $fine_quant$addr; $7 = $i; $arrayidx = (($6) + ($7<<2)|0); $8 = HEAP32[$arrayidx>>2]|0; $cmp5 = ($8|0)>=(8); if (!($cmp5)) { $9 = $fine_priority$addr; $10 = $i; $arrayidx6 = (($9) + ($10<<2)|0); $11 = HEAP32[$arrayidx6>>2]|0; $12 = $prio; $cmp7 = ($11|0)!=($12|0); if (!($cmp7)) { $c = 0; while(1) { $13 = $error$addr; $14 = $i; $15 = $c; $16 = $m$addr; $nbEBands = ((($16)) + 8|0); $17 = HEAP32[$nbEBands>>2]|0; $mul = Math_imul($15, $17)|0; $add = (($14) + ($mul))|0; $arrayidx8 = (($13) + ($add<<2)|0); $18 = +HEAPF32[$arrayidx8>>2]; $cmp9 = $18 < 0.0; $cond = $cmp9 ? 0 : 1; $q2 = $cond; $19 = $enc$addr; $20 = $q2; _ec_enc_bits($19,$20,1); $21 = $q2; $conv = (+($21|0)); $sub = $conv - 0.5; $22 = $fine_quant$addr; $23 = $i; $arrayidx10 = (($22) + ($23<<2)|0); $24 = HEAP32[$arrayidx10>>2]|0; $sub11 = (14 - ($24))|0; $sub12 = (($sub11) - 1)|0; $shl = 1 << $sub12; $conv13 = (+($shl|0)); $mul14 = $sub * $conv13; $mul15 = $mul14 * 6.103515625E-5; $offset = $mul15; $25 = $offset; $26 = $oldEBands$addr; $27 = $i; $28 = $c; $29 = $m$addr; $nbEBands16 = ((($29)) + 8|0); $30 = HEAP32[$nbEBands16>>2]|0; $mul17 = Math_imul($28, $30)|0; $add18 = (($27) + ($mul17))|0; $arrayidx19 = (($26) + ($add18<<2)|0); $31 = +HEAPF32[$arrayidx19>>2]; $add20 = $31 + $25; HEAPF32[$arrayidx19>>2] = $add20; $32 = $offset; $33 = $error$addr; $34 = $i; $35 = $c; $36 = $m$addr; $nbEBands21 = ((($36)) + 8|0); $37 = HEAP32[$nbEBands21>>2]|0; $mul22 = Math_imul($35, $37)|0; $add23 = (($34) + ($mul22))|0; $arrayidx24 = (($33) + ($add23<<2)|0); $38 = +HEAPF32[$arrayidx24>>2]; $sub25 = $38 - $32; HEAPF32[$arrayidx24>>2] = $sub25; $39 = $bits_left$addr; $dec = (($39) + -1)|0; $bits_left$addr = $dec; $40 = $c; $inc = (($40) + 1)|0; $c = $inc; $41 = $C$addr; $cmp26 = ($inc|0)<($41|0); if (!($cmp26)) { break; } } } } $42 = $i; $inc28 = (($42) + 1)|0; $i = $inc28; } $43 = $prio; $inc30 = (($43) + 1)|0; $prio = $inc30; } STACKTOP = sp;return; } function _unquant_coarse_energy($m,$start,$end,$oldEBands,$intra,$dec,$C,$LM) { $m = $m|0; $start = $start|0; $end = $end|0; $oldEBands = $oldEBands|0; $intra = $intra|0; $dec = $dec|0; $C = $C|0; $LM = $LM|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0.0, $39 = 0, $4 = 0.0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0.0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0.0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0.0, $57 = 0, $58 = 0.0, $59 = 0.0, $6 = 0.0, $60 = 0.0, $61 = 0, $62 = 0; var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0.0, $68 = 0.0, $69 = 0.0, $7 = 0, $70 = 0.0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $8 = 0, $9 = 0, $C$addr = 0, $LM$addr = 0, $add = 0, $add33 = 0, $add41 = 0; var $add47 = 0, $add51 = 0, $add55 = 0.0, $add56 = 0.0, $add59 = 0, $add62 = 0.0, $and = 0, $arrayidx = 0, $arrayidx1 = 0, $arrayidx2 = 0, $arrayidx3 = 0, $arrayidx34 = 0, $arrayidx42 = 0, $arrayidx48 = 0, $arrayidx52 = 0, $arrayidx54 = 0, $arrayidx60 = 0, $arrayidx61 = 0, $arrayidx65 = 0, $arrayidx8 = 0; var $arrayidx9 = 0, $beta = 0.0, $budget = 0, $c = 0, $call = 0, $call12 = 0, $call18 = 0, $call25 = 0, $cmp = 0, $cmp15 = 0, $cmp22 = 0, $cmp35 = 0, $cmp4 = 0, $cmp6 = 0, $cmp66 = 0, $coef = 0.0, $cond = 0, $cond44 = 0.0, $conv = 0, $conv10 = 0; var $conv31 = 0.0, $dec$addr = 0, $end$addr = 0, $i = 0, $inc = 0, $inc68 = 0, $intra$addr = 0, $m$addr = 0, $mul = 0, $mul32 = 0, $mul40 = 0, $mul46 = 0, $mul50 = 0, $mul53 = 0.0, $mul58 = 0, $mul63 = 0.0, $mul7 = 0, $nbEBands = 0, $nbEBands39 = 0, $nbEBands45 = 0; var $nbEBands49 = 0, $nbEBands57 = 0, $oldEBands$addr = 0, $pi = 0, $prev = 0, $prob_model = 0, $q = 0.0, $qi = 0, $shl = 0, $shl11 = 0, $shr = 0, $start$addr = 0, $storage = 0, $sub = 0, $sub14 = 0, $sub19 = 0, $sub21 = 0, $sub26 = 0, $sub64 = 0.0, $tell = 0; var $tmp = 0.0, $tobool = 0, $xor = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 96|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(96|0); $prev = sp + 32|0; $m$addr = $m; $start$addr = $start; $end$addr = $end; $oldEBands$addr = $oldEBands; $intra$addr = $intra; $dec$addr = $dec; $C$addr = $C; $LM$addr = $LM; $0 = $LM$addr; $arrayidx = (31894 + (($0*84)|0)|0); $1 = $intra$addr; $arrayidx1 = (($arrayidx) + (($1*42)|0)|0); $prob_model = $arrayidx1; ;HEAP32[$prev>>2]=0|0;HEAP32[$prev+4>>2]=0|0; $2 = $intra$addr; $tobool = ($2|0)!=(0); if ($tobool) { $coef = 0.0; $beta = 0.149993896484375; } else { $3 = $LM$addr; $arrayidx2 = (15096 + ($3<<2)|0); $4 = +HEAPF32[$arrayidx2>>2]; $beta = $4; $5 = $LM$addr; $arrayidx3 = (15080 + ($5<<2)|0); $6 = +HEAPF32[$arrayidx3>>2]; $coef = $6; } $7 = $dec$addr; $storage = ((($7)) + 4|0); $8 = HEAP32[$storage>>2]|0; $mul = $8<<3; $budget = $mul; $9 = $start$addr; $i = $9; while(1) { $10 = $i; $11 = $end$addr; $cmp = ($10|0)<($11|0); if (!($cmp)) { break; } $c = 0; while(1) { $12 = $dec$addr; $call = (_ec_tell_123($12)|0); $tell = $call; $13 = $budget; $14 = $tell; $sub = (($13) - ($14))|0; $cmp4 = ($sub|0)>=(15); do { if ($cmp4) { $15 = $i; $cmp6 = ($15|0)<(20); $16 = $i; $cond = $cmp6 ? $16 : 20; $mul7 = $cond<<1; $pi = $mul7; $17 = $dec$addr; $18 = $prob_model; $19 = $pi; $arrayidx8 = (($18) + ($19)|0); $20 = HEAP8[$arrayidx8>>0]|0; $conv = $20&255; $shl = $conv << 7; $21 = $prob_model; $22 = $pi; $add = (($22) + 1)|0; $arrayidx9 = (($21) + ($add)|0); $23 = HEAP8[$arrayidx9>>0]|0; $conv10 = $23&255; $shl11 = $conv10 << 6; $call12 = (_ec_laplace_decode($17,$shl,$shl11)|0); $qi = $call12; } else { $24 = $budget; $25 = $tell; $sub14 = (($24) - ($25))|0; $cmp15 = ($sub14|0)>=(2); if ($cmp15) { $26 = $dec$addr; $call18 = (_ec_dec_icdf($26,32230,2)|0); $qi = $call18; $27 = $qi; $shr = $27 >> 1; $28 = $qi; $and = $28 & 1; $sub19 = (0 - ($and))|0; $xor = $shr ^ $sub19; $qi = $xor; break; } $29 = $budget; $30 = $tell; $sub21 = (($29) - ($30))|0; $cmp22 = ($sub21|0)>=(1); if ($cmp22) { $31 = $dec$addr; $call25 = (_ec_dec_bit_logp($31,1)|0); $sub26 = (0 - ($call25))|0; $qi = $sub26; break; } else { $qi = -1; break; } } } while(0); $32 = $qi; $conv31 = (+($32|0)); $q = $conv31; $33 = $oldEBands$addr; $34 = $i; $35 = $c; $36 = $m$addr; $nbEBands = ((($36)) + 8|0); $37 = HEAP32[$nbEBands>>2]|0; $mul32 = Math_imul($35, $37)|0; $add33 = (($34) + ($mul32))|0; $arrayidx34 = (($33) + ($add33<<2)|0); $38 = +HEAPF32[$arrayidx34>>2]; $cmp35 = -9.0 > $38; if ($cmp35) { $cond44 = -9.0; } else { $39 = $oldEBands$addr; $40 = $i; $41 = $c; $42 = $m$addr; $nbEBands39 = ((($42)) + 8|0); $43 = HEAP32[$nbEBands39>>2]|0; $mul40 = Math_imul($41, $43)|0; $add41 = (($40) + ($mul40))|0; $arrayidx42 = (($39) + ($add41<<2)|0); $44 = +HEAPF32[$arrayidx42>>2]; $cond44 = $44; } $45 = $oldEBands$addr; $46 = $i; $47 = $c; $48 = $m$addr; $nbEBands45 = ((($48)) + 8|0); $49 = HEAP32[$nbEBands45>>2]|0; $mul46 = Math_imul($47, $49)|0; $add47 = (($46) + ($mul46))|0; $arrayidx48 = (($45) + ($add47<<2)|0); HEAPF32[$arrayidx48>>2] = $cond44; $50 = $coef; $51 = $oldEBands$addr; $52 = $i; $53 = $c; $54 = $m$addr; $nbEBands49 = ((($54)) + 8|0); $55 = HEAP32[$nbEBands49>>2]|0; $mul50 = Math_imul($53, $55)|0; $add51 = (($52) + ($mul50))|0; $arrayidx52 = (($51) + ($add51<<2)|0); $56 = +HEAPF32[$arrayidx52>>2]; $mul53 = $50 * $56; $57 = $c; $arrayidx54 = (($prev) + ($57<<2)|0); $58 = +HEAPF32[$arrayidx54>>2]; $add55 = $mul53 + $58; $59 = $q; $add56 = $add55 + $59; $tmp = $add56; $60 = $tmp; $61 = $oldEBands$addr; $62 = $i; $63 = $c; $64 = $m$addr; $nbEBands57 = ((($64)) + 8|0); $65 = HEAP32[$nbEBands57>>2]|0; $mul58 = Math_imul($63, $65)|0; $add59 = (($62) + ($mul58))|0; $arrayidx60 = (($61) + ($add59<<2)|0); HEAPF32[$arrayidx60>>2] = $60; $66 = $c; $arrayidx61 = (($prev) + ($66<<2)|0); $67 = +HEAPF32[$arrayidx61>>2]; $68 = $q; $add62 = $67 + $68; $69 = $beta; $70 = $q; $mul63 = $69 * $70; $sub64 = $add62 - $mul63; $71 = $c; $arrayidx65 = (($prev) + ($71<<2)|0); HEAPF32[$arrayidx65>>2] = $sub64; $72 = $c; $inc = (($72) + 1)|0; $c = $inc; $73 = $C$addr; $cmp66 = ($inc|0)<($73|0); if (!($cmp66)) { break; } } $74 = $i; $inc68 = (($74) + 1)|0; $i = $inc68; } STACKTOP = sp;return; } function _unquant_fine_energy($m,$start,$end,$oldEBands,$fine_quant,$dec,$C) { $m = $m|0; $start = $start|0; $end = $end|0; $oldEBands = $oldEBands|0; $fine_quant = $fine_quant|0; $dec = $dec|0; $C = $C|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0.0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0.0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $C$addr = 0, $add = 0.0, $add10 = 0.0, $add8 = 0, $arrayidx = 0, $arrayidx2 = 0, $arrayidx3 = 0, $arrayidx9 = 0, $c = 0, $call = 0, $cmp = 0, $cmp1 = 0, $cmp11 = 0, $conv = 0.0, $conv4 = 0.0, $dec$addr = 0; var $end$addr = 0, $fine_quant$addr = 0, $i = 0, $inc = 0, $inc13 = 0, $m$addr = 0, $mul = 0.0, $mul5 = 0.0, $mul7 = 0, $nbEBands = 0, $offset = 0.0, $oldEBands$addr = 0, $q2 = 0, $shl = 0, $start$addr = 0, $sub = 0, $sub6 = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $m$addr = $m; $start$addr = $start; $end$addr = $end; $oldEBands$addr = $oldEBands; $fine_quant$addr = $fine_quant; $dec$addr = $dec; $C$addr = $C; $0 = $start$addr; $i = $0; while(1) { $1 = $i; $2 = $end$addr; $cmp = ($1|0)<($2|0); if (!($cmp)) { break; } $3 = $fine_quant$addr; $4 = $i; $arrayidx = (($3) + ($4<<2)|0); $5 = HEAP32[$arrayidx>>2]|0; $cmp1 = ($5|0)<=(0); if (!($cmp1)) { $c = 0; while(1) { $6 = $dec$addr; $7 = $fine_quant$addr; $8 = $i; $arrayidx2 = (($7) + ($8<<2)|0); $9 = HEAP32[$arrayidx2>>2]|0; $call = (_ec_dec_bits($6,$9)|0); $q2 = $call; $10 = $q2; $conv = (+($10|0)); $add = $conv + 0.5; $11 = $fine_quant$addr; $12 = $i; $arrayidx3 = (($11) + ($12<<2)|0); $13 = HEAP32[$arrayidx3>>2]|0; $sub = (14 - ($13))|0; $shl = 1 << $sub; $conv4 = (+($shl|0)); $mul = $add * $conv4; $mul5 = $mul * 6.103515625E-5; $sub6 = $mul5 - 0.5; $offset = $sub6; $14 = $offset; $15 = $oldEBands$addr; $16 = $i; $17 = $c; $18 = $m$addr; $nbEBands = ((($18)) + 8|0); $19 = HEAP32[$nbEBands>>2]|0; $mul7 = Math_imul($17, $19)|0; $add8 = (($16) + ($mul7))|0; $arrayidx9 = (($15) + ($add8<<2)|0); $20 = +HEAPF32[$arrayidx9>>2]; $add10 = $20 + $14; HEAPF32[$arrayidx9>>2] = $add10; $21 = $c; $inc = (($21) + 1)|0; $c = $inc; $22 = $C$addr; $cmp11 = ($inc|0)<($22|0); if (!($cmp11)) { break; } } } $23 = $i; $inc13 = (($23) + 1)|0; $i = $inc13; } STACKTOP = sp;return; } function _unquant_energy_finalise($m,$start,$end,$oldEBands,$fine_quant,$fine_priority,$bits_left,$dec,$C) { $m = $m|0; $start = $start|0; $end = $end|0; $oldEBands = $oldEBands|0; $fine_quant = $fine_quant|0; $fine_priority = $fine_priority|0; $bits_left = $bits_left|0; $dec = $dec|0; $C = $C|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0.0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0.0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $C$addr = 0, $add = 0, $add15 = 0.0, $arrayidx = 0, $arrayidx14 = 0, $arrayidx6 = 0, $arrayidx8 = 0, $bits_left$addr = 0, $c = 0, $call = 0; var $cmp = 0, $cmp17 = 0, $cmp2 = 0, $cmp3 = 0, $cmp5 = 0, $cmp7 = 0, $conv = 0.0, $conv11 = 0.0, $dec$addr = 0, $dec16 = 0, $end$addr = 0, $fine_priority$addr = 0, $fine_quant$addr = 0, $i = 0, $inc = 0, $inc19 = 0, $inc21 = 0, $m$addr = 0, $mul = 0.0, $mul12 = 0.0; var $mul13 = 0, $nbEBands = 0, $offset = 0.0, $oldEBands$addr = 0, $prio = 0, $q2 = 0, $shl = 0, $start$addr = 0, $sub = 0.0, $sub10 = 0, $sub9 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $m$addr = $m; $start$addr = $start; $end$addr = $end; $oldEBands$addr = $oldEBands; $fine_quant$addr = $fine_quant; $fine_priority$addr = $fine_priority; $bits_left$addr = $bits_left; $dec$addr = $dec; $C$addr = $C; $prio = 0; while(1) { $0 = $prio; $cmp = ($0|0)<(2); if (!($cmp)) { break; } $1 = $start$addr; $i = $1; while(1) { $2 = $i; $3 = $end$addr; $cmp2 = ($2|0)<($3|0); if (!($cmp2)) { break; } $4 = $bits_left$addr; $5 = $C$addr; $cmp3 = ($4|0)>=($5|0); if (!($cmp3)) { break; } $6 = $fine_quant$addr; $7 = $i; $arrayidx = (($6) + ($7<<2)|0); $8 = HEAP32[$arrayidx>>2]|0; $cmp5 = ($8|0)>=(8); if (!($cmp5)) { $9 = $fine_priority$addr; $10 = $i; $arrayidx6 = (($9) + ($10<<2)|0); $11 = HEAP32[$arrayidx6>>2]|0; $12 = $prio; $cmp7 = ($11|0)!=($12|0); if (!($cmp7)) { $c = 0; while(1) { $13 = $dec$addr; $call = (_ec_dec_bits($13,1)|0); $q2 = $call; $14 = $q2; $conv = (+($14|0)); $sub = $conv - 0.5; $15 = $fine_quant$addr; $16 = $i; $arrayidx8 = (($15) + ($16<<2)|0); $17 = HEAP32[$arrayidx8>>2]|0; $sub9 = (14 - ($17))|0; $sub10 = (($sub9) - 1)|0; $shl = 1 << $sub10; $conv11 = (+($shl|0)); $mul = $sub * $conv11; $mul12 = $mul * 6.103515625E-5; $offset = $mul12; $18 = $offset; $19 = $oldEBands$addr; $20 = $i; $21 = $c; $22 = $m$addr; $nbEBands = ((($22)) + 8|0); $23 = HEAP32[$nbEBands>>2]|0; $mul13 = Math_imul($21, $23)|0; $add = (($20) + ($mul13))|0; $arrayidx14 = (($19) + ($add<<2)|0); $24 = +HEAPF32[$arrayidx14>>2]; $add15 = $24 + $18; HEAPF32[$arrayidx14>>2] = $add15; $25 = $bits_left$addr; $dec16 = (($25) + -1)|0; $bits_left$addr = $dec16; $26 = $c; $inc = (($26) + 1)|0; $c = $inc; $27 = $C$addr; $cmp17 = ($inc|0)<($27|0); if (!($cmp17)) { break; } } } } $28 = $i; $inc19 = (($28) + 1)|0; $i = $inc19; } $29 = $prio; $inc21 = (($29) + 1)|0; $prio = $inc21; } STACKTOP = sp;return; } function _amp2Log2($m,$effEnd,$end,$bandE,$bandLogE,$C) { $m = $m|0; $effEnd = $effEnd|0; $end = $end|0; $bandE = $bandE|0; $bandLogE = $bandLogE|0; $C = $C|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0.0, $8 = 0, $9 = 0.0, $C$addr = 0, $add = 0, $add14 = 0, $add6 = 0, $arrayidx = 0, $arrayidx15 = 0, $arrayidx3 = 0, $arrayidx7 = 0, $bandE$addr = 0, $bandLogE$addr = 0, $c = 0, $call = 0.0, $cmp = 0; var $cmp20 = 0, $cmp9 = 0, $conv = 0.0, $conv2 = 0.0, $effEnd$addr = 0, $end$addr = 0, $i = 0, $inc = 0, $inc17 = 0, $inc19 = 0, $m$addr = 0, $mul = 0, $mul1 = 0.0, $mul13 = 0, $mul5 = 0, $nbEBands = 0, $nbEBands12 = 0, $nbEBands4 = 0, $sub = 0.0, label = 0; var sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $m$addr = $m; $effEnd$addr = $effEnd; $end$addr = $end; $bandE$addr = $bandE; $bandLogE$addr = $bandLogE; $C$addr = $C; $c = 0; while(1) { $i = 0; while(1) { $0 = $i; $1 = $effEnd$addr; $cmp = ($0|0)<($1|0); if (!($cmp)) { break; } $2 = $bandE$addr; $3 = $i; $4 = $c; $5 = $m$addr; $nbEBands = ((($5)) + 8|0); $6 = HEAP32[$nbEBands>>2]|0; $mul = Math_imul($4, $6)|0; $add = (($3) + ($mul))|0; $arrayidx = (($2) + ($add<<2)|0); $7 = +HEAPF32[$arrayidx>>2]; $conv = $7; $call = (+Math_log((+$conv))); $mul1 = 1.4426950408889634 * $call; $conv2 = $mul1; $8 = $i; $arrayidx3 = (14980 + ($8<<2)|0); $9 = +HEAPF32[$arrayidx3>>2]; $sub = $conv2 - $9; $10 = $bandLogE$addr; $11 = $i; $12 = $c; $13 = $m$addr; $nbEBands4 = ((($13)) + 8|0); $14 = HEAP32[$nbEBands4>>2]|0; $mul5 = Math_imul($12, $14)|0; $add6 = (($11) + ($mul5))|0; $arrayidx7 = (($10) + ($add6<<2)|0); HEAPF32[$arrayidx7>>2] = $sub; $15 = $i; $inc = (($15) + 1)|0; $i = $inc; } $16 = $effEnd$addr; $i = $16; while(1) { $17 = $i; $18 = $end$addr; $cmp9 = ($17|0)<($18|0); if (!($cmp9)) { break; } $19 = $bandLogE$addr; $20 = $c; $21 = $m$addr; $nbEBands12 = ((($21)) + 8|0); $22 = HEAP32[$nbEBands12>>2]|0; $mul13 = Math_imul($20, $22)|0; $23 = $i; $add14 = (($mul13) + ($23))|0; $arrayidx15 = (($19) + ($add14<<2)|0); HEAPF32[$arrayidx15>>2] = -14.0; $24 = $i; $inc17 = (($24) + 1)|0; $i = $inc17; } $25 = $c; $inc19 = (($25) + 1)|0; $c = $inc19; $26 = $C$addr; $cmp20 = ($inc19|0)<($26|0); if (!($cmp20)) { break; } } STACKTOP = sp;return; } function _compute_allocation($m,$start,$end,$offsets,$cap,$alloc_trim,$intensity,$dual_stereo,$total,$balance,$pulses,$ebits,$fine_priority,$C,$LM,$ec,$encode,$prev,$signalBandwidth) { $m = $m|0; $start = $start|0; $end = $end|0; $offsets = $offsets|0; $cap = $cap|0; $alloc_trim = $alloc_trim|0; $intensity = $intensity|0; $dual_stereo = $dual_stereo|0; $total = $total|0; $balance = $balance|0; $pulses = $pulses|0; $ebits = $ebits|0; $fine_priority = $fine_priority|0; $C = $C|0; $LM = $LM|0; $ec = $ec|0; $encode = $encode|0; $prev = $prev|0; $signalBandwidth = $signalBandwidth|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; var $224 = 0, $225 = 0, $226 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0; var $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0; var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0; var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0; var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $C$addr = 0, $LM$addr = 0, $N = 0, $N159 = 0, $add = 0, $add100 = 0, $add110 = 0, $add116 = 0, $add121 = 0, $add134 = 0, $add141 = 0, $add150 = 0, $add161 = 0; var $add171 = 0, $add186 = 0, $add198 = 0, $add204 = 0, $add212 = 0, $add218 = 0, $add226 = 0, $add229 = 0, $add33 = 0, $add48 = 0, $add62 = 0, $add68 = 0, $add84 = 0, $add91 = 0, $allocVectors = 0, $allocVectors169 = 0, $allocVectors184 = 0, $alloc_trim$addr = 0, $arrayidx = 0, $arrayidx101 = 0; var $arrayidx109 = 0, $arrayidx115 = 0, $arrayidx120 = 0, $arrayidx122 = 0, $arrayidx126 = 0, $arrayidx131 = 0, $arrayidx162 = 0, $arrayidx165 = 0, $arrayidx172 = 0, $arrayidx181 = 0, $arrayidx187 = 0, $arrayidx19 = 0, $arrayidx197 = 0, $arrayidx203 = 0, $arrayidx211 = 0, $arrayidx217 = 0, $arrayidx22 = 0, $arrayidx225 = 0, $arrayidx228 = 0, $arrayidx230 = 0; var $arrayidx243 = 0, $arrayidx244 = 0, $arrayidx34 = 0, $arrayidx37 = 0, $arrayidx46 = 0, $arrayidx49 = 0, $arrayidx52 = 0, $arrayidx66 = 0, $arrayidx69 = 0, $arrayidx72 = 0, $arrayidx80 = 0, $arrayidx92 = 0, $arrayidx95 = 0, $balance$addr = 0, $bits1j = 0, $bits2j = 0, $bitsj = 0, $call = 0, $cap$addr = 0, $cmp = 0; var $cmp1 = 0, $cmp106 = 0, $cmp111 = 0, $cmp123 = 0, $cmp127 = 0, $cmp137 = 0, $cmp145 = 0, $cmp152 = 0, $cmp156 = 0, $cmp17 = 0, $cmp178 = 0, $cmp194 = 0, $cmp199 = 0, $cmp208 = 0, $cmp213 = 0, $cmp222 = 0, $cmp231 = 0, $cmp236 = 0, $cmp27 = 0, $cmp3 = 0; var $cmp5 = 0, $cmp76 = 0, $cmp87 = 0, $cmp9 = 0, $codedBands = 0, $cond = 0, $cond11 = 0, $cond118 = 0, $cond133 = 0, $cond193 = 0, $cond2 = 0, $cond206 = 0, $cond220 = 0, $cond242 = 0, $cond45 = 0, $conv = 0, $conv102 = 0, $conv163 = 0, $conv166 = 0, $conv173 = 0; var $conv188 = 0, $conv20 = 0, $conv23 = 0, $conv35 = 0, $conv38 = 0, $conv50 = 0, $conv53 = 0, $conv70 = 0, $conv73 = 0, $conv93 = 0, $conv96 = 0, $dec = 0, $dec154 = 0, $done = 0, $dual_stereo$addr = 0, $dual_stereo_rsv = 0, $eBands = 0, $eBands160 = 0, $eBands164 = 0, $eBands21 = 0; var $eBands32 = 0, $eBands36 = 0, $eBands47 = 0, $eBands51 = 0, $eBands67 = 0, $eBands71 = 0, $eBands90 = 0, $eBands94 = 0, $ebits$addr = 0, $ec$addr = 0, $encode$addr = 0, $end$addr = 0, $fine_priority$addr = 0, $hi = 0, $inc = 0, $inc246 = 0, $intensity$addr = 0, $intensity_rsv = 0, $j = 0, $len = 0; var $lo = 0, $m$addr = 0, $mid = 0, $mul = 0, $mul103 = 0, $mul168 = 0, $mul170 = 0, $mul174 = 0, $mul183 = 0, $mul185 = 0, $mul189 = 0, $mul40 = 0, $mul55 = 0, $mul58 = 0, $mul61 = 0, $mul64 = 0, $mul98 = 0, $mul99 = 0, $nbAllocVectors = 0, $nbAllocVectors177 = 0; var $nbEBands = 0, $offsets$addr = 0, $or$cond = 0, $prev$addr = 0, $psum = 0, $pulses$addr = 0, $saved_stack = 0, $shl = 0, $shl104 = 0, $shl136 = 0, $shl140 = 0, $shl175 = 0, $shl190 = 0, $shl25 = 0, $shl26 = 0, $shl30 = 0, $shl41 = 0, $shl42 = 0, $shl63 = 0, $shl75 = 0; var $shl79 = 0, $shr = 0, $shr105 = 0, $shr176 = 0, $shr191 = 0, $shr43 = 0, $shr65 = 0, $shr85 = 0, $signalBandwidth$addr = 0, $skip_rsv = 0, $skip_start = 0, $start$addr = 0, $sub = 0, $sub12 = 0, $sub148 = 0, $sub167 = 0, $sub235 = 0, $sub24 = 0, $sub240 = 0, $sub39 = 0; var $sub4 = 0, $sub54 = 0, $sub56 = 0, $sub57 = 0, $sub59 = 0, $sub60 = 0, $sub74 = 0, $sub8 = 0, $sub81 = 0, $sub83 = 0, $sub97 = 0, $tobool = 0, $total$addr = 0, $vla = 0, $vla$alloca_mul = 0, $vla14 = 0, $vla14$alloca_mul = 0, $vla15 = 0, $vla15$alloca_mul = 0, $vla16 = 0; var $vla16$alloca_mul = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 160|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(160|0); $m$addr = $m; $start$addr = $start; $end$addr = $end; $offsets$addr = $offsets; $cap$addr = $cap; $alloc_trim$addr = $alloc_trim; $intensity$addr = $intensity; $dual_stereo$addr = $dual_stereo; $total$addr = $total; $balance$addr = $balance; $pulses$addr = $pulses; $ebits$addr = $ebits; $fine_priority$addr = $fine_priority; $C$addr = $C; $LM$addr = $LM; $ec$addr = $ec; $encode$addr = $encode; $prev$addr = $prev; $signalBandwidth$addr = $signalBandwidth; $0 = $total$addr; $cmp = ($0|0)>(0); $1 = $total$addr; $cond = $cmp ? $1 : 0; $total$addr = $cond; $2 = $m$addr; $nbEBands = ((($2)) + 8|0); $3 = HEAP32[$nbEBands>>2]|0; $len = $3; $4 = $start$addr; $skip_start = $4; $5 = $total$addr; $cmp1 = ($5|0)>=(8); $cond2 = $cmp1 ? 8 : 0; $skip_rsv = $cond2; $6 = $skip_rsv; $7 = $total$addr; $sub = (($7) - ($6))|0; $total$addr = $sub; $dual_stereo_rsv = 0; $intensity_rsv = 0; $8 = $C$addr; $cmp3 = ($8|0)==(2); do { if ($cmp3) { $9 = $end$addr; $10 = $start$addr; $sub4 = (($9) - ($10))|0; $arrayidx = (32233 + ($sub4)|0); $11 = HEAP8[$arrayidx>>0]|0; $conv = $11&255; $intensity_rsv = $conv; $12 = $intensity_rsv; $13 = $total$addr; $cmp5 = ($12|0)>($13|0); if ($cmp5) { $intensity_rsv = 0; break; } else { $14 = $intensity_rsv; $15 = $total$addr; $sub8 = (($15) - ($14))|0; $total$addr = $sub8; $16 = $total$addr; $cmp9 = ($16|0)>=(8); $cond11 = $cmp9 ? 8 : 0; $dual_stereo_rsv = $cond11; $17 = $dual_stereo_rsv; $18 = $total$addr; $sub12 = (($18) - ($17))|0; $total$addr = $sub12; break; } } } while(0); $19 = $len; $20 = (_llvm_stacksave()|0); $saved_stack = $20; $vla$alloca_mul = $19<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $21 = $len; $vla14$alloca_mul = $21<<2; $vla14 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla14$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla14$alloca_mul)|0)+15)&-16)|0);; $22 = $len; $vla15$alloca_mul = $22<<2; $vla15 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla15$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla15$alloca_mul)|0)+15)&-16)|0);; $23 = $len; $vla16$alloca_mul = $23<<2; $vla16 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla16$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla16$alloca_mul)|0)+15)&-16)|0);; $24 = $start$addr; $j = $24; while(1) { $25 = $j; $26 = $end$addr; $cmp17 = ($25|0)<($26|0); if (!($cmp17)) { break; } $27 = $C$addr; $shl = $27 << 3; $28 = $m$addr; $eBands = ((($28)) + 32|0); $29 = HEAP32[$eBands>>2]|0; $30 = $j; $add = (($30) + 1)|0; $arrayidx19 = (($29) + ($add<<1)|0); $31 = HEAP16[$arrayidx19>>1]|0; $conv20 = $31 << 16 >> 16; $32 = $m$addr; $eBands21 = ((($32)) + 32|0); $33 = HEAP32[$eBands21>>2]|0; $34 = $j; $arrayidx22 = (($33) + ($34<<1)|0); $35 = HEAP16[$arrayidx22>>1]|0; $conv23 = $35 << 16 >> 16; $sub24 = (($conv20) - ($conv23))|0; $mul = ($sub24*3)|0; $36 = $LM$addr; $shl25 = $mul << $36; $shl26 = $shl25 << 3; $shr = $shl26 >> 4; $cmp27 = ($shl|0)>($shr|0); if ($cmp27) { $37 = $C$addr; $shl30 = $37 << 3; $cond45 = $shl30; } else { $38 = $m$addr; $eBands32 = ((($38)) + 32|0); $39 = HEAP32[$eBands32>>2]|0; $40 = $j; $add33 = (($40) + 1)|0; $arrayidx34 = (($39) + ($add33<<1)|0); $41 = HEAP16[$arrayidx34>>1]|0; $conv35 = $41 << 16 >> 16; $42 = $m$addr; $eBands36 = ((($42)) + 32|0); $43 = HEAP32[$eBands36>>2]|0; $44 = $j; $arrayidx37 = (($43) + ($44<<1)|0); $45 = HEAP16[$arrayidx37>>1]|0; $conv38 = $45 << 16 >> 16; $sub39 = (($conv35) - ($conv38))|0; $mul40 = ($sub39*3)|0; $46 = $LM$addr; $shl41 = $mul40 << $46; $shl42 = $shl41 << 3; $shr43 = $shl42 >> 4; $cond45 = $shr43; } $47 = $j; $arrayidx46 = (($vla15) + ($47<<2)|0); HEAP32[$arrayidx46>>2] = $cond45; $48 = $C$addr; $49 = $m$addr; $eBands47 = ((($49)) + 32|0); $50 = HEAP32[$eBands47>>2]|0; $51 = $j; $add48 = (($51) + 1)|0; $arrayidx49 = (($50) + ($add48<<1)|0); $52 = HEAP16[$arrayidx49>>1]|0; $conv50 = $52 << 16 >> 16; $53 = $m$addr; $eBands51 = ((($53)) + 32|0); $54 = HEAP32[$eBands51>>2]|0; $55 = $j; $arrayidx52 = (($54) + ($55<<1)|0); $56 = HEAP16[$arrayidx52>>1]|0; $conv53 = $56 << 16 >> 16; $sub54 = (($conv50) - ($conv53))|0; $mul55 = Math_imul($48, $sub54)|0; $57 = $alloc_trim$addr; $sub56 = (($57) - 5)|0; $58 = $LM$addr; $sub57 = (($sub56) - ($58))|0; $mul58 = Math_imul($mul55, $sub57)|0; $59 = $end$addr; $60 = $j; $sub59 = (($59) - ($60))|0; $sub60 = (($sub59) - 1)|0; $mul61 = Math_imul($mul58, $sub60)|0; $61 = $LM$addr; $add62 = (($61) + 3)|0; $shl63 = 1 << $add62; $mul64 = Math_imul($mul61, $shl63)|0; $shr65 = $mul64 >> 6; $62 = $j; $arrayidx66 = (($vla16) + ($62<<2)|0); HEAP32[$arrayidx66>>2] = $shr65; $63 = $m$addr; $eBands67 = ((($63)) + 32|0); $64 = HEAP32[$eBands67>>2]|0; $65 = $j; $add68 = (($65) + 1)|0; $arrayidx69 = (($64) + ($add68<<1)|0); $66 = HEAP16[$arrayidx69>>1]|0; $conv70 = $66 << 16 >> 16; $67 = $m$addr; $eBands71 = ((($67)) + 32|0); $68 = HEAP32[$eBands71>>2]|0; $69 = $j; $arrayidx72 = (($68) + ($69<<1)|0); $70 = HEAP16[$arrayidx72>>1]|0; $conv73 = $70 << 16 >> 16; $sub74 = (($conv70) - ($conv73))|0; $71 = $LM$addr; $shl75 = $sub74 << $71; $cmp76 = ($shl75|0)==(1); if ($cmp76) { $72 = $C$addr; $shl79 = $72 << 3; $73 = $j; $arrayidx80 = (($vla16) + ($73<<2)|0); $74 = HEAP32[$arrayidx80>>2]|0; $sub81 = (($74) - ($shl79))|0; HEAP32[$arrayidx80>>2] = $sub81; } $75 = $j; $inc = (($75) + 1)|0; $j = $inc; } $lo = 1; $76 = $m$addr; $nbAllocVectors = ((($76)) + 48|0); $77 = HEAP32[$nbAllocVectors>>2]|0; $sub83 = (($77) - 1)|0; $hi = $sub83; while(1) { $done = 0; $psum = 0; $78 = $lo; $79 = $hi; $add84 = (($78) + ($79))|0; $shr85 = $add84 >> 1; $mid = $shr85; $80 = $end$addr; $j = $80; while(1) { $81 = $j; $dec = (($81) + -1)|0; $j = $dec; $82 = $start$addr; $cmp87 = ($81|0)>($82|0); if (!($cmp87)) { break; } $83 = $m$addr; $eBands90 = ((($83)) + 32|0); $84 = HEAP32[$eBands90>>2]|0; $85 = $j; $add91 = (($85) + 1)|0; $arrayidx92 = (($84) + ($add91<<1)|0); $86 = HEAP16[$arrayidx92>>1]|0; $conv93 = $86 << 16 >> 16; $87 = $m$addr; $eBands94 = ((($87)) + 32|0); $88 = HEAP32[$eBands94>>2]|0; $89 = $j; $arrayidx95 = (($88) + ($89<<1)|0); $90 = HEAP16[$arrayidx95>>1]|0; $conv96 = $90 << 16 >> 16; $sub97 = (($conv93) - ($conv96))|0; $N = $sub97; $91 = $C$addr; $92 = $N; $mul98 = Math_imul($91, $92)|0; $93 = $m$addr; $allocVectors = ((($93)) + 52|0); $94 = HEAP32[$allocVectors>>2]|0; $95 = $mid; $96 = $len; $mul99 = Math_imul($95, $96)|0; $97 = $j; $add100 = (($mul99) + ($97))|0; $arrayidx101 = (($94) + ($add100)|0); $98 = HEAP8[$arrayidx101>>0]|0; $conv102 = $98&255; $mul103 = Math_imul($mul98, $conv102)|0; $99 = $LM$addr; $shl104 = $mul103 << $99; $shr105 = $shl104 >> 2; $bitsj = $shr105; $100 = $bitsj; $cmp106 = ($100|0)>(0); if ($cmp106) { $101 = $bitsj; $102 = $j; $arrayidx109 = (($vla16) + ($102<<2)|0); $103 = HEAP32[$arrayidx109>>2]|0; $add110 = (($101) + ($103))|0; $cmp111 = (0)>($add110|0); if ($cmp111) { $cond118 = 0; } else { $104 = $bitsj; $105 = $j; $arrayidx115 = (($vla16) + ($105<<2)|0); $106 = HEAP32[$arrayidx115>>2]|0; $add116 = (($104) + ($106))|0; $cond118 = $add116; } $bitsj = $cond118; } $107 = $offsets$addr; $108 = $j; $arrayidx120 = (($107) + ($108<<2)|0); $109 = HEAP32[$arrayidx120>>2]|0; $110 = $bitsj; $add121 = (($110) + ($109))|0; $bitsj = $add121; $111 = $bitsj; $112 = $j; $arrayidx122 = (($vla15) + ($112<<2)|0); $113 = HEAP32[$arrayidx122>>2]|0; $cmp123 = ($111|0)>=($113|0); $114 = $done; $tobool = ($114|0)!=(0); $or$cond = $cmp123 | $tobool; if (!($or$cond)) { $124 = $bitsj; $125 = $C$addr; $shl136 = $125 << 3; $cmp137 = ($124|0)>=($shl136|0); if (!($cmp137)) { continue; } $126 = $C$addr; $shl140 = $126 << 3; $127 = $psum; $add141 = (($127) + ($shl140))|0; $psum = $add141; continue; } $done = 1; $115 = $bitsj; $116 = $cap$addr; $117 = $j; $arrayidx126 = (($116) + ($117<<2)|0); $118 = HEAP32[$arrayidx126>>2]|0; $cmp127 = ($115|0)<($118|0); if ($cmp127) { $119 = $bitsj; $cond133 = $119; } else { $120 = $cap$addr; $121 = $j; $arrayidx131 = (($120) + ($121<<2)|0); $122 = HEAP32[$arrayidx131>>2]|0; $cond133 = $122; } $123 = $psum; $add134 = (($123) + ($cond133))|0; $psum = $add134; } $128 = $psum; $129 = $total$addr; $cmp145 = ($128|0)>($129|0); $130 = $mid; if ($cmp145) { $sub148 = (($130) - 1)|0; $hi = $sub148; } else { $add150 = (($130) + 1)|0; $lo = $add150; } $131 = $lo; $132 = $hi; $cmp152 = ($131|0)<=($132|0); if (!($cmp152)) { break; } } $133 = $lo; $dec154 = (($133) + -1)|0; $lo = $dec154; $hi = $133; $134 = $start$addr; $j = $134; while(1) { $135 = $j; $136 = $end$addr; $cmp156 = ($135|0)<($136|0); $137 = $m$addr; if (!($cmp156)) { break; } $eBands160 = ((($137)) + 32|0); $138 = HEAP32[$eBands160>>2]|0; $139 = $j; $add161 = (($139) + 1)|0; $arrayidx162 = (($138) + ($add161<<1)|0); $140 = HEAP16[$arrayidx162>>1]|0; $conv163 = $140 << 16 >> 16; $141 = $m$addr; $eBands164 = ((($141)) + 32|0); $142 = HEAP32[$eBands164>>2]|0; $143 = $j; $arrayidx165 = (($142) + ($143<<1)|0); $144 = HEAP16[$arrayidx165>>1]|0; $conv166 = $144 << 16 >> 16; $sub167 = (($conv163) - ($conv166))|0; $N159 = $sub167; $145 = $C$addr; $146 = $N159; $mul168 = Math_imul($145, $146)|0; $147 = $m$addr; $allocVectors169 = ((($147)) + 52|0); $148 = HEAP32[$allocVectors169>>2]|0; $149 = $lo; $150 = $len; $mul170 = Math_imul($149, $150)|0; $151 = $j; $add171 = (($mul170) + ($151))|0; $arrayidx172 = (($148) + ($add171)|0); $152 = HEAP8[$arrayidx172>>0]|0; $conv173 = $152&255; $mul174 = Math_imul($mul168, $conv173)|0; $153 = $LM$addr; $shl175 = $mul174 << $153; $shr176 = $shl175 >> 2; $bits1j = $shr176; $154 = $hi; $155 = $m$addr; $nbAllocVectors177 = ((($155)) + 48|0); $156 = HEAP32[$nbAllocVectors177>>2]|0; $cmp178 = ($154|0)>=($156|0); if ($cmp178) { $157 = $cap$addr; $158 = $j; $arrayidx181 = (($157) + ($158<<2)|0); $159 = HEAP32[$arrayidx181>>2]|0; $cond193 = $159; } else { $160 = $C$addr; $161 = $N159; $mul183 = Math_imul($160, $161)|0; $162 = $m$addr; $allocVectors184 = ((($162)) + 52|0); $163 = HEAP32[$allocVectors184>>2]|0; $164 = $hi; $165 = $len; $mul185 = Math_imul($164, $165)|0; $166 = $j; $add186 = (($mul185) + ($166))|0; $arrayidx187 = (($163) + ($add186)|0); $167 = HEAP8[$arrayidx187>>0]|0; $conv188 = $167&255; $mul189 = Math_imul($mul183, $conv188)|0; $168 = $LM$addr; $shl190 = $mul189 << $168; $shr191 = $shl190 >> 2; $cond193 = $shr191; } $bits2j = $cond193; $169 = $bits1j; $cmp194 = ($169|0)>(0); if ($cmp194) { $170 = $bits1j; $171 = $j; $arrayidx197 = (($vla16) + ($171<<2)|0); $172 = HEAP32[$arrayidx197>>2]|0; $add198 = (($170) + ($172))|0; $cmp199 = (0)>($add198|0); if ($cmp199) { $cond206 = 0; } else { $173 = $bits1j; $174 = $j; $arrayidx203 = (($vla16) + ($174<<2)|0); $175 = HEAP32[$arrayidx203>>2]|0; $add204 = (($173) + ($175))|0; $cond206 = $add204; } $bits1j = $cond206; } $176 = $bits2j; $cmp208 = ($176|0)>(0); if ($cmp208) { $177 = $bits2j; $178 = $j; $arrayidx211 = (($vla16) + ($178<<2)|0); $179 = HEAP32[$arrayidx211>>2]|0; $add212 = (($177) + ($179))|0; $cmp213 = (0)>($add212|0); if ($cmp213) { $cond220 = 0; } else { $180 = $bits2j; $181 = $j; $arrayidx217 = (($vla16) + ($181<<2)|0); $182 = HEAP32[$arrayidx217>>2]|0; $add218 = (($180) + ($182))|0; $cond220 = $add218; } $bits2j = $cond220; } $183 = $lo; $cmp222 = ($183|0)>(0); if ($cmp222) { $184 = $offsets$addr; $185 = $j; $arrayidx225 = (($184) + ($185<<2)|0); $186 = HEAP32[$arrayidx225>>2]|0; $187 = $bits1j; $add226 = (($187) + ($186))|0; $bits1j = $add226; } $188 = $offsets$addr; $189 = $j; $arrayidx228 = (($188) + ($189<<2)|0); $190 = HEAP32[$arrayidx228>>2]|0; $191 = $bits2j; $add229 = (($191) + ($190))|0; $bits2j = $add229; $192 = $offsets$addr; $193 = $j; $arrayidx230 = (($192) + ($193<<2)|0); $194 = HEAP32[$arrayidx230>>2]|0; $cmp231 = ($194|0)>(0); if ($cmp231) { $195 = $j; $skip_start = $195; } $196 = $bits2j; $197 = $bits1j; $sub235 = (($196) - ($197))|0; $cmp236 = (0)>($sub235|0); if ($cmp236) { $cond242 = 0; } else { $198 = $bits2j; $199 = $bits1j; $sub240 = (($198) - ($199))|0; $cond242 = $sub240; } $bits2j = $cond242; $200 = $bits1j; $201 = $j; $arrayidx243 = (($vla) + ($201<<2)|0); HEAP32[$arrayidx243>>2] = $200; $202 = $bits2j; $203 = $j; $arrayidx244 = (($vla14) + ($203<<2)|0); HEAP32[$arrayidx244>>2] = $202; $204 = $j; $inc246 = (($204) + 1)|0; $j = $inc246; } $205 = $start$addr; $206 = $end$addr; $207 = $skip_start; $208 = $cap$addr; $209 = $total$addr; $210 = $balance$addr; $211 = $skip_rsv; $212 = $intensity$addr; $213 = $intensity_rsv; $214 = $dual_stereo$addr; $215 = $dual_stereo_rsv; $216 = $pulses$addr; $217 = $ebits$addr; $218 = $fine_priority$addr; $219 = $C$addr; $220 = $LM$addr; $221 = $ec$addr; $222 = $encode$addr; $223 = $prev$addr; $224 = $signalBandwidth$addr; $call = (_interp_bits2pulses($137,$205,$206,$207,$vla,$vla14,$vla15,$208,$209,$210,$211,$212,$213,$214,$215,$216,$217,$218,$219,$220,$221,$222,$223,$224)|0); $codedBands = $call; $225 = $codedBands; $226 = $saved_stack; _llvm_stackrestore(($226|0)); STACKTOP = sp;return ($225|0); } function _interp_bits2pulses($m,$start,$end,$skip_start,$bits1,$bits2,$thresh,$cap,$total,$_balance,$skip_rsv,$intensity,$intensity_rsv,$dual_stereo,$dual_stereo_rsv,$bits,$ebits,$fine_priority,$C,$LM,$ec,$encode,$prev,$signalBandwidth) { $m = $m|0; $start = $start|0; $end = $end|0; $skip_start = $skip_start|0; $bits1 = $bits1|0; $bits2 = $bits2|0; $thresh = $thresh|0; $cap = $cap|0; $total = $total|0; $_balance = $_balance|0; $skip_rsv = $skip_rsv|0; $intensity = $intensity|0; $intensity_rsv = $intensity_rsv|0; $dual_stereo = $dual_stereo|0; $dual_stereo_rsv = $dual_stereo_rsv|0; $bits = $bits|0; $ebits = $ebits|0; $fine_priority = $fine_priority|0; $C = $C|0; $LM = $LM|0; $ec = $ec|0; $encode = $encode|0; $prev = $prev|0; $signalBandwidth = $signalBandwidth|0; var $$sink = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0; var $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0; var $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0; var $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0; var $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0; var $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0; var $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0; var $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0; var $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0; var $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0; var $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0; var $296 = 0, $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0; var $313 = 0, $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0; var $331 = 0, $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0; var $35 = 0, $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0; var $368 = 0, $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0; var $386 = 0, $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0; var $403 = 0, $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0; var $421 = 0, $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0; var $44 = 0, $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0; var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0; var $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0; var $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $C$addr = 0, $LM$addr = 0, $N = 0, $N0 = 0, $NClogN = 0, $_balance$addr = 0, $add = 0, $add10 = 0, $add117 = 0; var $add118 = 0, $add120 = 0, $add126 = 0, $add142 = 0, $add163 = 0, $add167 = 0, $add176 = 0, $add18 = 0, $add180 = 0, $add200 = 0, $add203 = 0, $add206 = 0, $add213 = 0, $add22 = 0, $add248 = 0, $add257 = 0, $add267 = 0, $add279 = 0, $add289 = 0, $add299 = 0; var $add308 = 0, $add335 = 0, $add338 = 0, $add348 = 0, $add351 = 0, $add358 = 0, $add361 = 0, $add368 = 0, $add372 = 0, $add374 = 0, $add380 = 0, $add382 = 0, $add40 = 0, $add415 = 0, $add443 = 0, $add450 = 0, $add458 = 0, $add62 = 0, $add68 = 0, $alloc_floor = 0; var $arrayidx = 0, $arrayidx101 = 0, $arrayidx109 = 0, $arrayidx11 = 0, $arrayidx112 = 0, $arrayidx115 = 0, $arrayidx119 = 0, $arrayidx124 = 0, $arrayidx14 = 0, $arrayidx166 = 0, $arrayidx17 = 0, $arrayidx173 = 0, $arrayidx181 = 0, $arrayidx183 = 0, $arrayidx183$sink = 0, $arrayidx227 = 0, $arrayidx230 = 0, $arrayidx235 = 0, $arrayidx238 = 0, $arrayidx249 = 0; var $arrayidx252 = 0, $arrayidx256 = 0, $arrayidx268 = 0, $arrayidx271 = 0, $arrayidx280 = 0, $arrayidx283 = 0, $arrayidx288 = 0, $arrayidx300 = 0, $arrayidx303 = 0, $arrayidx307 = 0, $arrayidx312 = 0, $arrayidx317 = 0, $arrayidx323 = 0, $arrayidx336 = 0, $arrayidx350 = 0, $arrayidx36 = 0, $arrayidx360 = 0, $arrayidx37 = 0, $arrayidx371 = 0, $arrayidx379 = 0; var $arrayidx385 = 0, $arrayidx386 = 0, $arrayidx389 = 0, $arrayidx390 = 0, $arrayidx392 = 0, $arrayidx397 = 0, $arrayidx400 = 0, $arrayidx402 = 0, $arrayidx406 = 0, $arrayidx41 = 0, $arrayidx410 = 0, $arrayidx411 = 0, $arrayidx414 = 0, $arrayidx418 = 0, $arrayidx419 = 0, $arrayidx422 = 0, $arrayidx436 = 0, $arrayidx437 = 0, $arrayidx438 = 0, $arrayidx445 = 0; var $arrayidx453 = 0, $arrayidx457 = 0, $arrayidx464 = 0, $arrayidx474 = 0, $arrayidx477 = 0, $arrayidx478 = 0, $arrayidx479 = 0, $arrayidx482 = 0, $arrayidx53 = 0, $arrayidx58 = 0, $arrayidx61 = 0, $arrayidx71 = 0, $arrayidx74 = 0, $arrayidx78 = 0, $arrayidx8 = 0, $arrayidx81 = 0, $arrayidx87 = 0, $arrayidx90 = 0, $arrayidx98 = 0, $balance = 0; var $band_bits = 0, $band_width = 0, $bit = 0, $bits$addr = 0, $bits1$addr = 0, $bits2$addr = 0, $call = 0, $call158 = 0, $call205 = 0, $call221 = 0, $call233 = 0, $call387 = 0, $cap$addr = 0, $cmp = 0, $cmp12 = 0, $cmp121 = 0, $cmp129 = 0, $cmp134 = 0, $cmp137 = 0, $cmp143 = 0; var $cmp15 = 0, $cmp150 = 0, $cmp153 = 0, $cmp169 = 0, $cmp177 = 0, $cmp188 = 0, $cmp19 = 0, $cmp193 = 0, $cmp2 = 0, $cmp210 = 0, $cmp215 = 0, $cmp24 = 0, $cmp244 = 0, $cmp262 = 0, $cmp274 = 0, $cmp295 = 0, $cmp309 = 0, $cmp314 = 0, $cmp32 = 0, $cmp325 = 0; var $cmp328 = 0, $cmp332 = 0, $cmp343 = 0, $cmp354 = 0, $cmp364 = 0, $cmp375 = 0, $cmp394 = 0, $cmp403 = 0, $cmp416 = 0, $cmp42 = 0, $cmp427 = 0, $cmp440 = 0, $cmp447 = 0, $cmp46 = 0, $cmp462 = 0, $cmp471 = 0, $cmp480 = 0, $cmp5 = 0, $cmp54 = 0, $cmp65 = 0; var $cmp94 = 0, $codedBands = 0, $cond = 0, $cond107 = 0, $cond128 = 0, $cond139 = 0, $cond198 = 0, $cond287 = 0, $cond321 = 0, $cond334 = 0, $cond384 = 0, $cond409 = 0, $cond434 = 0, $cond456 = 0, $cond60 = 0, $conv = 0, $conv102 = 0, $conv110 = 0, $conv113 = 0, $conv174 = 0; var $conv228 = 0, $conv231 = 0, $conv236 = 0, $conv239 = 0, $conv250 = 0, $conv253 = 0, $conv269 = 0, $conv272 = 0, $conv281 = 0, $conv284 = 0, $conv301 = 0, $conv304 = 0, $conv337 = 0, $conv417 = 0, $conv463 = 0, $conv481 = 0, $conv72 = 0, $conv75 = 0, $conv79 = 0, $conv82 = 0; var $conv88 = 0, $conv91 = 0, $conv99 = 0, $dec = 0, $dec186 = 0, $dec31 = 0, $den = 0, $depth_threshold = 0, $done = 0, $dual_stereo$addr = 0, $dual_stereo_rsv$addr = 0, $eBands = 0, $eBands100 = 0, $eBands108 = 0, $eBands111 = 0, $eBands226 = 0, $eBands229 = 0, $eBands234 = 0, $eBands237 = 0, $eBands247 = 0; var $eBands251 = 0, $eBands266 = 0, $eBands270 = 0, $eBands278 = 0, $eBands282 = 0, $eBands298 = 0, $eBands302 = 0, $eBands73 = 0, $eBands77 = 0, $eBands80 = 0, $eBands86 = 0, $eBands89 = 0, $eBands97 = 0, $ebits$addr = 0, $ec$addr = 0, $encode$addr = 0, $end$addr = 0, $excess = 0, $extra_bits = 0, $extra_fine = 0; var $fine_priority$addr = 0, $hi = 0, $i = 0, $inc = 0, $inc259 = 0, $inc292 = 0, $inc468 = 0, $inc484 = 0, $intensity$addr = 0, $intensity_rsv$addr = 0, $j = 0, $left = 0, $lo = 0, $logM = 0, $logN = 0, $m$addr = 0, $mid = 0, $mul = 0, $mul116 = 0, $mul146 = 0; var $mul241 = 0, $mul255 = 0, $mul324 = 0, $mul339 = 0, $mul341 = 0, $mul352 = 0, $mul362 = 0, $mul38 = 0, $mul391 = 0, $mul413 = 0, $mul420 = 0, $mul459 = 0, $mul84 = 0, $offset = 0, $or$cond = 0, $or$cond1 = 0, $or$cond2 = 0, $percoeff = 0, $prev$addr = 0, $psum = 0; var $rem = 0, $shl = 0, $shl1 = 0, $shl147 = 0, $shl148 = 0, $shl306 = 0, $shl346 = 0, $shl353 = 0, $shl363 = 0, $shl373 = 0, $shl381 = 0, $shl412 = 0, $shl421 = 0, $shl425 = 0, $shl431 = 0, $shl460 = 0, $shr = 0, $shr149 = 0, $shr340 = 0, $shr347 = 0; var $shr357 = 0, $shr367 = 0, $shr388 = 0, $shr39 = 0, $shr393 = 0, $shr398 = 0, $shr399 = 0, $shr444 = 0, $shr451 = 0, $shr475 = 0, $shr476 = 0, $shr9 = 0, $signalBandwidth$addr = 0, $skip_rsv$addr = 0, $skip_start$addr = 0, $start$addr = 0, $stereo = 0, $sub = 0, $sub103 = 0, $sub104 = 0; var $sub114 = 0, $sub164 = 0, $sub168 = 0, $sub172 = 0, $sub199 = 0, $sub201 = 0, $sub204 = 0, $sub225 = 0, $sub232 = 0, $sub240 = 0, $sub242 = 0, $sub254 = 0, $sub273 = 0, $sub285 = 0, $sub290 = 0, $sub305 = 0, $sub313 = 0, $sub318 = 0, $sub322 = 0, $sub342 = 0; var $sub423 = 0, $sub426 = 0, $sub432 = 0, $sub435 = 0, $sub446 = 0, $sub454 = 0, $sub461 = 0, $sub465 = 0, $sub70 = 0, $sub76 = 0, $sub83 = 0, $sub85 = 0, $sub92 = 0, $sub93 = 0, $thresh$addr = 0, $tmp = 0, $tmp265 = 0, $tmp35 = 0, $tobool = 0, $tobool132 = 0; var $tobool159 = 0, $tobool191 = 0, $tobool218 = 0, $tobool331 = 0, $tobool44 = 0, $total$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 224|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(224|0); $m$addr = $m; $start$addr = $start; $end$addr = $end; $skip_start$addr = $skip_start; $bits1$addr = $bits1; $bits2$addr = $bits2; $thresh$addr = $thresh; $cap$addr = $cap; $total$addr = $total; $_balance$addr = $_balance; $skip_rsv$addr = $skip_rsv; $intensity$addr = $intensity; $intensity_rsv$addr = $intensity_rsv; $dual_stereo$addr = $dual_stereo; $dual_stereo_rsv$addr = $dual_stereo_rsv; $bits$addr = $bits; $ebits$addr = $ebits; $fine_priority$addr = $fine_priority; $C$addr = $C; $LM$addr = $LM; $ec$addr = $ec; $encode$addr = $encode; $prev$addr = $prev; $signalBandwidth$addr = $signalBandwidth; $codedBands = -1; $0 = $C$addr; $shl = $0 << 3; $alloc_floor = $shl; $1 = $C$addr; $cmp = ($1|0)>(1); $conv = $cmp&1; $stereo = $conv; $2 = $LM$addr; $shl1 = $2 << 3; $logM = $shl1; $lo = 0; $hi = 64; $i = 0; while(1) { $3 = $i; $cmp2 = ($3|0)<(6); if (!($cmp2)) { break; } $4 = $lo; $5 = $hi; $add = (($4) + ($5))|0; $shr = $add >> 1; $mid = $shr; $psum = 0; $done = 0; $6 = $end$addr; $j = $6; while(1) { $7 = $j; $dec = (($7) + -1)|0; $j = $dec; $8 = $start$addr; $cmp5 = ($7|0)>($8|0); if (!($cmp5)) { break; } $9 = $bits1$addr; $10 = $j; $arrayidx = (($9) + ($10<<2)|0); $11 = HEAP32[$arrayidx>>2]|0; $12 = $mid; $13 = $bits2$addr; $14 = $j; $arrayidx8 = (($13) + ($14<<2)|0); $15 = HEAP32[$arrayidx8>>2]|0; $mul = Math_imul($12, $15)|0; $shr9 = $mul >> 6; $add10 = (($11) + ($shr9))|0; $tmp = $add10; $16 = $tmp; $17 = $thresh$addr; $18 = $j; $arrayidx11 = (($17) + ($18<<2)|0); $19 = HEAP32[$arrayidx11>>2]|0; $cmp12 = ($16|0)>=($19|0); $20 = $done; $tobool = ($20|0)!=(0); $or$cond = $cmp12 | $tobool; if (!($or$cond)) { $30 = $tmp; $31 = $alloc_floor; $cmp19 = ($30|0)>=($31|0); if (!($cmp19)) { continue; } $32 = $alloc_floor; $33 = $psum; $add22 = (($33) + ($32))|0; $psum = $add22; continue; } $done = 1; $21 = $tmp; $22 = $cap$addr; $23 = $j; $arrayidx14 = (($22) + ($23<<2)|0); $24 = HEAP32[$arrayidx14>>2]|0; $cmp15 = ($21|0)<($24|0); if ($cmp15) { $25 = $tmp; $cond = $25; } else { $26 = $cap$addr; $27 = $j; $arrayidx17 = (($26) + ($27<<2)|0); $28 = HEAP32[$arrayidx17>>2]|0; $cond = $28; } $29 = $psum; $add18 = (($29) + ($cond))|0; $psum = $add18; } $34 = $psum; $35 = $total$addr; $cmp24 = ($34|0)>($35|0); $36 = $mid; if ($cmp24) { $hi = $36; } else { $lo = $36; } $37 = $i; $inc = (($37) + 1)|0; $i = $inc; } $psum = 0; $done = 0; $38 = $end$addr; $j = $38; while(1) { $39 = $j; $dec31 = (($39) + -1)|0; $j = $dec31; $40 = $start$addr; $cmp32 = ($39|0)>($40|0); if (!($cmp32)) { break; } $41 = $bits1$addr; $42 = $j; $arrayidx36 = (($41) + ($42<<2)|0); $43 = HEAP32[$arrayidx36>>2]|0; $44 = $lo; $45 = $bits2$addr; $46 = $j; $arrayidx37 = (($45) + ($46<<2)|0); $47 = HEAP32[$arrayidx37>>2]|0; $mul38 = Math_imul($44, $47)|0; $shr39 = $mul38 >> 6; $add40 = (($43) + ($shr39))|0; $tmp35 = $add40; $48 = $tmp35; $49 = $thresh$addr; $50 = $j; $arrayidx41 = (($49) + ($50<<2)|0); $51 = HEAP32[$arrayidx41>>2]|0; $cmp42 = ($48|0)>=($51|0); $52 = $done; $tobool44 = ($52|0)!=(0); $or$cond1 = $cmp42 | $tobool44; do { if ($or$cond1) { $done = 1; } else { $53 = $tmp35; $54 = $alloc_floor; $cmp46 = ($53|0)>=($54|0); if ($cmp46) { $55 = $alloc_floor; $tmp35 = $55; break; } else { $tmp35 = 0; break; } } } while(0); $56 = $tmp35; $57 = $cap$addr; $58 = $j; $arrayidx53 = (($57) + ($58<<2)|0); $59 = HEAP32[$arrayidx53>>2]|0; $cmp54 = ($56|0)<($59|0); if ($cmp54) { $60 = $tmp35; $cond60 = $60; } else { $61 = $cap$addr; $62 = $j; $arrayidx58 = (($61) + ($62<<2)|0); $63 = HEAP32[$arrayidx58>>2]|0; $cond60 = $63; } $tmp35 = $cond60; $64 = $tmp35; $65 = $bits$addr; $66 = $j; $arrayidx61 = (($65) + ($66<<2)|0); HEAP32[$arrayidx61>>2] = $64; $67 = $tmp35; $68 = $psum; $add62 = (($68) + ($67))|0; $psum = $add62; } $69 = $end$addr; $codedBands = $69; while(1) { $70 = $codedBands; $sub = (($70) - 1)|0; $j = $sub; $71 = $j; $72 = $skip_start$addr; $cmp65 = ($71|0)<=($72|0); if ($cmp65) { label = 29; break; } $75 = $total$addr; $76 = $psum; $sub70 = (($75) - ($76))|0; $left = $sub70; $77 = $left; $78 = $m$addr; $eBands = ((($78)) + 32|0); $79 = HEAP32[$eBands>>2]|0; $80 = $codedBands; $arrayidx71 = (($79) + ($80<<1)|0); $81 = HEAP16[$arrayidx71>>1]|0; $conv72 = $81 << 16 >> 16; $82 = $m$addr; $eBands73 = ((($82)) + 32|0); $83 = HEAP32[$eBands73>>2]|0; $84 = $start$addr; $arrayidx74 = (($83) + ($84<<1)|0); $85 = HEAP16[$arrayidx74>>1]|0; $conv75 = $85 << 16 >> 16; $sub76 = (($conv72) - ($conv75))|0; $call = (_celt_udiv_138($77,$sub76)|0); $percoeff = $call; $86 = $m$addr; $eBands77 = ((($86)) + 32|0); $87 = HEAP32[$eBands77>>2]|0; $88 = $codedBands; $arrayidx78 = (($87) + ($88<<1)|0); $89 = HEAP16[$arrayidx78>>1]|0; $conv79 = $89 << 16 >> 16; $90 = $m$addr; $eBands80 = ((($90)) + 32|0); $91 = HEAP32[$eBands80>>2]|0; $92 = $start$addr; $arrayidx81 = (($91) + ($92<<1)|0); $93 = HEAP16[$arrayidx81>>1]|0; $conv82 = $93 << 16 >> 16; $sub83 = (($conv79) - ($conv82))|0; $94 = $percoeff; $mul84 = Math_imul($sub83, $94)|0; $95 = $left; $sub85 = (($95) - ($mul84))|0; $left = $sub85; $96 = $left; $97 = $m$addr; $eBands86 = ((($97)) + 32|0); $98 = HEAP32[$eBands86>>2]|0; $99 = $j; $arrayidx87 = (($98) + ($99<<1)|0); $100 = HEAP16[$arrayidx87>>1]|0; $conv88 = $100 << 16 >> 16; $101 = $m$addr; $eBands89 = ((($101)) + 32|0); $102 = HEAP32[$eBands89>>2]|0; $103 = $start$addr; $arrayidx90 = (($102) + ($103<<1)|0); $104 = HEAP16[$arrayidx90>>1]|0; $conv91 = $104 << 16 >> 16; $sub92 = (($conv88) - ($conv91))|0; $sub93 = (($96) - ($sub92))|0; $cmp94 = ($sub93|0)>(0); if ($cmp94) { $105 = $left; $106 = $m$addr; $eBands97 = ((($106)) + 32|0); $107 = HEAP32[$eBands97>>2]|0; $108 = $j; $arrayidx98 = (($107) + ($108<<1)|0); $109 = HEAP16[$arrayidx98>>1]|0; $conv99 = $109 << 16 >> 16; $110 = $m$addr; $eBands100 = ((($110)) + 32|0); $111 = HEAP32[$eBands100>>2]|0; $112 = $start$addr; $arrayidx101 = (($111) + ($112<<1)|0); $113 = HEAP16[$arrayidx101>>1]|0; $conv102 = $113 << 16 >> 16; $sub103 = (($conv99) - ($conv102))|0; $sub104 = (($105) - ($sub103))|0; $cond107 = $sub104; } else { $cond107 = 0; } $rem = $cond107; $114 = $m$addr; $eBands108 = ((($114)) + 32|0); $115 = HEAP32[$eBands108>>2]|0; $116 = $codedBands; $arrayidx109 = (($115) + ($116<<1)|0); $117 = HEAP16[$arrayidx109>>1]|0; $conv110 = $117 << 16 >> 16; $118 = $m$addr; $eBands111 = ((($118)) + 32|0); $119 = HEAP32[$eBands111>>2]|0; $120 = $j; $arrayidx112 = (($119) + ($120<<1)|0); $121 = HEAP16[$arrayidx112>>1]|0; $conv113 = $121 << 16 >> 16; $sub114 = (($conv110) - ($conv113))|0; $band_width = $sub114; $122 = $bits$addr; $123 = $j; $arrayidx115 = (($122) + ($123<<2)|0); $124 = HEAP32[$arrayidx115>>2]|0; $125 = $percoeff; $126 = $band_width; $mul116 = Math_imul($125, $126)|0; $add117 = (($124) + ($mul116))|0; $127 = $rem; $add118 = (($add117) + ($127))|0; $band_bits = $add118; $128 = $band_bits; $129 = $thresh$addr; $130 = $j; $arrayidx119 = (($129) + ($130<<2)|0); $131 = HEAP32[$arrayidx119>>2]|0; $132 = $alloc_floor; $add120 = (($132) + 8)|0; $cmp121 = ($131|0)>($add120|0); if ($cmp121) { $133 = $thresh$addr; $134 = $j; $arrayidx124 = (($133) + ($134<<2)|0); $135 = HEAP32[$arrayidx124>>2]|0; $cond128 = $135; } else { $136 = $alloc_floor; $add126 = (($136) + 8)|0; $cond128 = $add126; } $cmp129 = ($128|0)>=($cond128|0); if ($cmp129) { $137 = $encode$addr; $tobool132 = ($137|0)!=(0); if ($tobool132) { $138 = $codedBands; $cmp134 = ($138|0)>(17); if ($cmp134) { $139 = $j; $140 = $prev$addr; $cmp137 = ($139|0)<($140|0); $cond139 = $cmp137 ? 7 : 9; $depth_threshold = $cond139; } else { $depth_threshold = 0; } $141 = $codedBands; $142 = $start$addr; $add142 = (($142) + 2)|0; $cmp143 = ($141|0)<=($add142|0); if ($cmp143) { label = 43; break; } $143 = $band_bits; $144 = $depth_threshold; $145 = $band_width; $mul146 = Math_imul($144, $145)|0; $146 = $LM$addr; $shl147 = $mul146 << $146; $shl148 = $shl147 << 3; $shr149 = $shl148 >> 4; $cmp150 = ($143|0)>($shr149|0); if ($cmp150) { $147 = $j; $148 = $signalBandwidth$addr; $cmp153 = ($147|0)<=($148|0); if ($cmp153) { label = 43; break; } } $150 = $ec$addr; _ec_enc_bit_logp($150,0,1); } else { $151 = $ec$addr; $call158 = (_ec_dec_bit_logp($151,1)|0); $tobool159 = ($call158|0)!=(0); if ($tobool159) { break; } } $152 = $psum; $add163 = (($152) + 8)|0; $psum = $add163; $153 = $band_bits; $sub164 = (($153) - 8)|0; $band_bits = $sub164; } $154 = $bits$addr; $155 = $j; $arrayidx166 = (($154) + ($155<<2)|0); $156 = HEAP32[$arrayidx166>>2]|0; $157 = $intensity_rsv$addr; $add167 = (($156) + ($157))|0; $158 = $psum; $sub168 = (($158) - ($add167))|0; $psum = $sub168; $159 = $intensity_rsv$addr; $cmp169 = ($159|0)>(0); if ($cmp169) { $160 = $j; $161 = $start$addr; $sub172 = (($160) - ($161))|0; $arrayidx173 = (32233 + ($sub172)|0); $162 = HEAP8[$arrayidx173>>0]|0; $conv174 = $162&255; $intensity_rsv$addr = $conv174; } $163 = $intensity_rsv$addr; $164 = $psum; $add176 = (($164) + ($163))|0; $psum = $add176; $165 = $band_bits; $166 = $alloc_floor; $cmp177 = ($165|0)>=($166|0); if ($cmp177) { $167 = $alloc_floor; $168 = $psum; $add180 = (($168) + ($167))|0; $psum = $add180; $169 = $alloc_floor; $170 = $bits$addr; $171 = $j; $arrayidx181 = (($170) + ($171<<2)|0); $$sink = $169;$arrayidx183$sink = $arrayidx181; } else { $172 = $bits$addr; $173 = $j; $arrayidx183 = (($172) + ($173<<2)|0); $$sink = 0;$arrayidx183$sink = $arrayidx183; } HEAP32[$arrayidx183$sink>>2] = $$sink; $174 = $codedBands; $dec186 = (($174) + -1)|0; $codedBands = $dec186; } if ((label|0) == 29) { $73 = $skip_rsv$addr; $74 = $total$addr; $add68 = (($74) + ($73))|0; $total$addr = $add68; } else if ((label|0) == 43) { $149 = $ec$addr; _ec_enc_bit_logp($149,1,1); } $175 = $intensity_rsv$addr; $cmp188 = ($175|0)>(0); do { if ($cmp188) { $176 = $encode$addr; $tobool191 = ($176|0)!=(0); if (!($tobool191)) { $190 = $start$addr; $191 = $ec$addr; $192 = $codedBands; $add203 = (($192) + 1)|0; $193 = $start$addr; $sub204 = (($add203) - ($193))|0; $call205 = (_ec_dec_uint($191,$sub204)|0); $add206 = (($190) + ($call205))|0; $194 = $intensity$addr; HEAP32[$194>>2] = $add206; break; } $177 = $intensity$addr; $178 = HEAP32[$177>>2]|0; $179 = $codedBands; $cmp193 = ($178|0)<($179|0); if ($cmp193) { $180 = $intensity$addr; $181 = HEAP32[$180>>2]|0; $cond198 = $181; } else { $182 = $codedBands; $cond198 = $182; } $183 = $intensity$addr; HEAP32[$183>>2] = $cond198; $184 = $ec$addr; $185 = $intensity$addr; $186 = HEAP32[$185>>2]|0; $187 = $start$addr; $sub199 = (($186) - ($187))|0; $188 = $codedBands; $add200 = (($188) + 1)|0; $189 = $start$addr; $sub201 = (($add200) - ($189))|0; _ec_enc_uint($184,$sub199,$sub201); } else { $195 = $intensity$addr; HEAP32[$195>>2] = 0; } } while(0); $196 = $intensity$addr; $197 = HEAP32[$196>>2]|0; $198 = $start$addr; $cmp210 = ($197|0)<=($198|0); if ($cmp210) { $199 = $dual_stereo_rsv$addr; $200 = $total$addr; $add213 = (($200) + ($199))|0; $total$addr = $add213; $dual_stereo_rsv$addr = 0; } $201 = $dual_stereo_rsv$addr; $cmp215 = ($201|0)>(0); do { if ($cmp215) { $202 = $encode$addr; $tobool218 = ($202|0)!=(0); $203 = $ec$addr; if ($tobool218) { $204 = $dual_stereo$addr; $205 = HEAP32[$204>>2]|0; _ec_enc_bit_logp($203,$205,1); break; } else { $call221 = (_ec_dec_bit_logp($203,1)|0); $206 = $dual_stereo$addr; HEAP32[$206>>2] = $call221; break; } } else { $207 = $dual_stereo$addr; HEAP32[$207>>2] = 0; } } while(0); $208 = $total$addr; $209 = $psum; $sub225 = (($208) - ($209))|0; $left = $sub225; $210 = $left; $211 = $m$addr; $eBands226 = ((($211)) + 32|0); $212 = HEAP32[$eBands226>>2]|0; $213 = $codedBands; $arrayidx227 = (($212) + ($213<<1)|0); $214 = HEAP16[$arrayidx227>>1]|0; $conv228 = $214 << 16 >> 16; $215 = $m$addr; $eBands229 = ((($215)) + 32|0); $216 = HEAP32[$eBands229>>2]|0; $217 = $start$addr; $arrayidx230 = (($216) + ($217<<1)|0); $218 = HEAP16[$arrayidx230>>1]|0; $conv231 = $218 << 16 >> 16; $sub232 = (($conv228) - ($conv231))|0; $call233 = (_celt_udiv_138($210,$sub232)|0); $percoeff = $call233; $219 = $m$addr; $eBands234 = ((($219)) + 32|0); $220 = HEAP32[$eBands234>>2]|0; $221 = $codedBands; $arrayidx235 = (($220) + ($221<<1)|0); $222 = HEAP16[$arrayidx235>>1]|0; $conv236 = $222 << 16 >> 16; $223 = $m$addr; $eBands237 = ((($223)) + 32|0); $224 = HEAP32[$eBands237>>2]|0; $225 = $start$addr; $arrayidx238 = (($224) + ($225<<1)|0); $226 = HEAP16[$arrayidx238>>1]|0; $conv239 = $226 << 16 >> 16; $sub240 = (($conv236) - ($conv239))|0; $227 = $percoeff; $mul241 = Math_imul($sub240, $227)|0; $228 = $left; $sub242 = (($228) - ($mul241))|0; $left = $sub242; $229 = $start$addr; $j = $229; while(1) { $230 = $j; $231 = $codedBands; $cmp244 = ($230|0)<($231|0); if (!($cmp244)) { break; } $232 = $percoeff; $233 = $m$addr; $eBands247 = ((($233)) + 32|0); $234 = HEAP32[$eBands247>>2]|0; $235 = $j; $add248 = (($235) + 1)|0; $arrayidx249 = (($234) + ($add248<<1)|0); $236 = HEAP16[$arrayidx249>>1]|0; $conv250 = $236 << 16 >> 16; $237 = $m$addr; $eBands251 = ((($237)) + 32|0); $238 = HEAP32[$eBands251>>2]|0; $239 = $j; $arrayidx252 = (($238) + ($239<<1)|0); $240 = HEAP16[$arrayidx252>>1]|0; $conv253 = $240 << 16 >> 16; $sub254 = (($conv250) - ($conv253))|0; $mul255 = Math_imul($232, $sub254)|0; $241 = $bits$addr; $242 = $j; $arrayidx256 = (($241) + ($242<<2)|0); $243 = HEAP32[$arrayidx256>>2]|0; $add257 = (($243) + ($mul255))|0; HEAP32[$arrayidx256>>2] = $add257; $244 = $j; $inc259 = (($244) + 1)|0; $j = $inc259; } $245 = $start$addr; $j = $245; while(1) { $246 = $j; $247 = $codedBands; $cmp262 = ($246|0)<($247|0); if (!($cmp262)) { break; } $248 = $left; $249 = $m$addr; $eBands266 = ((($249)) + 32|0); $250 = HEAP32[$eBands266>>2]|0; $251 = $j; $add267 = (($251) + 1)|0; $arrayidx268 = (($250) + ($add267<<1)|0); $252 = HEAP16[$arrayidx268>>1]|0; $conv269 = $252 << 16 >> 16; $253 = $m$addr; $eBands270 = ((($253)) + 32|0); $254 = HEAP32[$eBands270>>2]|0; $255 = $j; $arrayidx271 = (($254) + ($255<<1)|0); $256 = HEAP16[$arrayidx271>>1]|0; $conv272 = $256 << 16 >> 16; $sub273 = (($conv269) - ($conv272))|0; $cmp274 = ($248|0)<($sub273|0); if ($cmp274) { $257 = $left; $cond287 = $257; } else { $258 = $m$addr; $eBands278 = ((($258)) + 32|0); $259 = HEAP32[$eBands278>>2]|0; $260 = $j; $add279 = (($260) + 1)|0; $arrayidx280 = (($259) + ($add279<<1)|0); $261 = HEAP16[$arrayidx280>>1]|0; $conv281 = $261 << 16 >> 16; $262 = $m$addr; $eBands282 = ((($262)) + 32|0); $263 = HEAP32[$eBands282>>2]|0; $264 = $j; $arrayidx283 = (($263) + ($264<<1)|0); $265 = HEAP16[$arrayidx283>>1]|0; $conv284 = $265 << 16 >> 16; $sub285 = (($conv281) - ($conv284))|0; $cond287 = $sub285; } $tmp265 = $cond287; $266 = $tmp265; $267 = $bits$addr; $268 = $j; $arrayidx288 = (($267) + ($268<<2)|0); $269 = HEAP32[$arrayidx288>>2]|0; $add289 = (($269) + ($266))|0; HEAP32[$arrayidx288>>2] = $add289; $270 = $tmp265; $271 = $left; $sub290 = (($271) - ($270))|0; $left = $sub290; $272 = $j; $inc292 = (($272) + 1)|0; $j = $inc292; } $balance = 0; $273 = $start$addr; $j = $273; while(1) { $274 = $j; $275 = $codedBands; $cmp295 = ($274|0)<($275|0); if (!($cmp295)) { break; } $276 = $m$addr; $eBands298 = ((($276)) + 32|0); $277 = HEAP32[$eBands298>>2]|0; $278 = $j; $add299 = (($278) + 1)|0; $arrayidx300 = (($277) + ($add299<<1)|0); $279 = HEAP16[$arrayidx300>>1]|0; $conv301 = $279 << 16 >> 16; $280 = $m$addr; $eBands302 = ((($280)) + 32|0); $281 = HEAP32[$eBands302>>2]|0; $282 = $j; $arrayidx303 = (($281) + ($282<<1)|0); $283 = HEAP16[$arrayidx303>>1]|0; $conv304 = $283 << 16 >> 16; $sub305 = (($conv301) - ($conv304))|0; $N0 = $sub305; $284 = $N0; $285 = $LM$addr; $shl306 = $284 << $285; $N = $shl306; $286 = $bits$addr; $287 = $j; $arrayidx307 = (($286) + ($287<<2)|0); $288 = HEAP32[$arrayidx307>>2]|0; $289 = $balance; $add308 = (($288) + ($289))|0; $bit = $add308; $290 = $N; $cmp309 = ($290|0)>(1); $291 = $bit; if ($cmp309) { $292 = $cap$addr; $293 = $j; $arrayidx312 = (($292) + ($293<<2)|0); $294 = HEAP32[$arrayidx312>>2]|0; $sub313 = (($291) - ($294))|0; $cmp314 = ($sub313|0)>(0); if ($cmp314) { $295 = $bit; $296 = $cap$addr; $297 = $j; $arrayidx317 = (($296) + ($297<<2)|0); $298 = HEAP32[$arrayidx317>>2]|0; $sub318 = (($295) - ($298))|0; $cond321 = $sub318; } else { $cond321 = 0; } $excess = $cond321; $299 = $bit; $300 = $excess; $sub322 = (($299) - ($300))|0; $301 = $bits$addr; $302 = $j; $arrayidx323 = (($301) + ($302<<2)|0); HEAP32[$arrayidx323>>2] = $sub322; $303 = $C$addr; $304 = $N; $mul324 = Math_imul($303, $304)|0; $305 = $C$addr; $cmp325 = ($305|0)==(2); $306 = $N; $cmp328 = ($306|0)>(2); $or$cond2 = $cmp325 & $cmp328; if ($or$cond2) { $307 = $dual_stereo$addr; $308 = HEAP32[$307>>2]|0; $tobool331 = ($308|0)!=(0); if ($tobool331) { $312 = 0; } else { $309 = $j; $310 = $intensity$addr; $311 = HEAP32[$310>>2]|0; $cmp332 = ($309|0)<($311|0); $312 = $cmp332; } } else { $312 = 0; } $cond334 = $312 ? 1 : 0; $add335 = (($mul324) + ($cond334))|0; $den = $add335; $313 = $den; $314 = $m$addr; $logN = ((($314)) + 56|0); $315 = HEAP32[$logN>>2]|0; $316 = $j; $arrayidx336 = (($315) + ($316<<1)|0); $317 = HEAP16[$arrayidx336>>1]|0; $conv337 = $317 << 16 >> 16; $318 = $logM; $add338 = (($conv337) + ($318))|0; $mul339 = Math_imul($313, $add338)|0; $NClogN = $mul339; $319 = $NClogN; $shr340 = $319 >> 1; $320 = $den; $mul341 = ($320*21)|0; $sub342 = (($shr340) - ($mul341))|0; $offset = $sub342; $321 = $N; $cmp343 = ($321|0)==(2); if ($cmp343) { $322 = $den; $shl346 = $322 << 3; $shr347 = $shl346 >> 2; $323 = $offset; $add348 = (($323) + ($shr347))|0; $offset = $add348; } $324 = $bits$addr; $325 = $j; $arrayidx350 = (($324) + ($325<<2)|0); $326 = HEAP32[$arrayidx350>>2]|0; $327 = $offset; $add351 = (($326) + ($327))|0; $328 = $den; $mul352 = $328<<1; $shl353 = $mul352 << 3; $cmp354 = ($add351|0)<($shl353|0); if ($cmp354) { $329 = $NClogN; $shr357 = $329 >> 2; $330 = $offset; $add358 = (($330) + ($shr357))|0; $offset = $add358; } else { $331 = $bits$addr; $332 = $j; $arrayidx360 = (($331) + ($332<<2)|0); $333 = HEAP32[$arrayidx360>>2]|0; $334 = $offset; $add361 = (($333) + ($334))|0; $335 = $den; $mul362 = ($335*3)|0; $shl363 = $mul362 << 3; $cmp364 = ($add361|0)<($shl363|0); if ($cmp364) { $336 = $NClogN; $shr367 = $336 >> 3; $337 = $offset; $add368 = (($337) + ($shr367))|0; $offset = $add368; } } $338 = $bits$addr; $339 = $j; $arrayidx371 = (($338) + ($339<<2)|0); $340 = HEAP32[$arrayidx371>>2]|0; $341 = $offset; $add372 = (($340) + ($341))|0; $342 = $den; $shl373 = $342 << 2; $add374 = (($add372) + ($shl373))|0; $cmp375 = (0)>($add374|0); if ($cmp375) { $cond384 = 0; } else { $343 = $bits$addr; $344 = $j; $arrayidx379 = (($343) + ($344<<2)|0); $345 = HEAP32[$arrayidx379>>2]|0; $346 = $offset; $add380 = (($345) + ($346))|0; $347 = $den; $shl381 = $347 << 2; $add382 = (($add380) + ($shl381))|0; $cond384 = $add382; } $348 = $ebits$addr; $349 = $j; $arrayidx385 = (($348) + ($349<<2)|0); HEAP32[$arrayidx385>>2] = $cond384; $350 = $ebits$addr; $351 = $j; $arrayidx386 = (($350) + ($351<<2)|0); $352 = HEAP32[$arrayidx386>>2]|0; $353 = $den; $call387 = (_celt_udiv_138($352,$353)|0); $shr388 = $call387 >>> 3; $354 = $ebits$addr; $355 = $j; $arrayidx389 = (($354) + ($355<<2)|0); HEAP32[$arrayidx389>>2] = $shr388; $356 = $C$addr; $357 = $ebits$addr; $358 = $j; $arrayidx390 = (($357) + ($358<<2)|0); $359 = HEAP32[$arrayidx390>>2]|0; $mul391 = Math_imul($356, $359)|0; $360 = $bits$addr; $361 = $j; $arrayidx392 = (($360) + ($361<<2)|0); $362 = HEAP32[$arrayidx392>>2]|0; $shr393 = $362 >> 3; $cmp394 = ($mul391|0)>($shr393|0); if ($cmp394) { $363 = $bits$addr; $364 = $j; $arrayidx397 = (($363) + ($364<<2)|0); $365 = HEAP32[$arrayidx397>>2]|0; $366 = $stereo; $shr398 = $365 >> $366; $shr399 = $shr398 >> 3; $367 = $ebits$addr; $368 = $j; $arrayidx400 = (($367) + ($368<<2)|0); HEAP32[$arrayidx400>>2] = $shr399; } $369 = $ebits$addr; $370 = $j; $arrayidx402 = (($369) + ($370<<2)|0); $371 = HEAP32[$arrayidx402>>2]|0; $cmp403 = ($371|0)<(8); if ($cmp403) { $372 = $ebits$addr; $373 = $j; $arrayidx406 = (($372) + ($373<<2)|0); $374 = HEAP32[$arrayidx406>>2]|0; $cond409 = $374; } else { $cond409 = 8; } $375 = $ebits$addr; $376 = $j; $arrayidx410 = (($375) + ($376<<2)|0); HEAP32[$arrayidx410>>2] = $cond409; $377 = $ebits$addr; $378 = $j; $arrayidx411 = (($377) + ($378<<2)|0); $379 = HEAP32[$arrayidx411>>2]|0; $380 = $den; $shl412 = $380 << 3; $mul413 = Math_imul($379, $shl412)|0; $381 = $bits$addr; $382 = $j; $arrayidx414 = (($381) + ($382<<2)|0); $383 = HEAP32[$arrayidx414>>2]|0; $384 = $offset; $add415 = (($383) + ($384))|0; $cmp416 = ($mul413|0)>=($add415|0); $conv417 = $cmp416&1; $385 = $fine_priority$addr; $386 = $j; $arrayidx418 = (($385) + ($386<<2)|0); HEAP32[$arrayidx418>>2] = $conv417; $387 = $C$addr; $388 = $ebits$addr; $389 = $j; $arrayidx419 = (($388) + ($389<<2)|0); $390 = HEAP32[$arrayidx419>>2]|0; $mul420 = Math_imul($387, $390)|0; $shl421 = $mul420 << 3; $391 = $bits$addr; $392 = $j; $arrayidx422 = (($391) + ($392<<2)|0); $393 = HEAP32[$arrayidx422>>2]|0; $sub423 = (($393) - ($shl421))|0; HEAP32[$arrayidx422>>2] = $sub423; } else { $394 = $C$addr; $shl425 = $394 << 3; $sub426 = (($291) - ($shl425))|0; $cmp427 = (0)>($sub426|0); if ($cmp427) { $cond434 = 0; } else { $395 = $bit; $396 = $C$addr; $shl431 = $396 << 3; $sub432 = (($395) - ($shl431))|0; $cond434 = $sub432; } $excess = $cond434; $397 = $bit; $398 = $excess; $sub435 = (($397) - ($398))|0; $399 = $bits$addr; $400 = $j; $arrayidx436 = (($399) + ($400<<2)|0); HEAP32[$arrayidx436>>2] = $sub435; $401 = $ebits$addr; $402 = $j; $arrayidx437 = (($401) + ($402<<2)|0); HEAP32[$arrayidx437>>2] = 0; $403 = $fine_priority$addr; $404 = $j; $arrayidx438 = (($403) + ($404<<2)|0); HEAP32[$arrayidx438>>2] = 1; } $405 = $excess; $cmp440 = ($405|0)>(0); if ($cmp440) { $406 = $excess; $407 = $stereo; $add443 = (($407) + 3)|0; $shr444 = $406 >> $add443; $408 = $ebits$addr; $409 = $j; $arrayidx445 = (($408) + ($409<<2)|0); $410 = HEAP32[$arrayidx445>>2]|0; $sub446 = (8 - ($410))|0; $cmp447 = ($shr444|0)<($sub446|0); if ($cmp447) { $411 = $excess; $412 = $stereo; $add450 = (($412) + 3)|0; $shr451 = $411 >> $add450; $cond456 = $shr451; } else { $413 = $ebits$addr; $414 = $j; $arrayidx453 = (($413) + ($414<<2)|0); $415 = HEAP32[$arrayidx453>>2]|0; $sub454 = (8 - ($415))|0; $cond456 = $sub454; } $extra_fine = $cond456; $416 = $extra_fine; $417 = $ebits$addr; $418 = $j; $arrayidx457 = (($417) + ($418<<2)|0); $419 = HEAP32[$arrayidx457>>2]|0; $add458 = (($419) + ($416))|0; HEAP32[$arrayidx457>>2] = $add458; $420 = $extra_fine; $421 = $C$addr; $mul459 = Math_imul($420, $421)|0; $shl460 = $mul459 << 3; $extra_bits = $shl460; $422 = $extra_bits; $423 = $excess; $424 = $balance; $sub461 = (($423) - ($424))|0; $cmp462 = ($422|0)>=($sub461|0); $conv463 = $cmp462&1; $425 = $fine_priority$addr; $426 = $j; $arrayidx464 = (($425) + ($426<<2)|0); HEAP32[$arrayidx464>>2] = $conv463; $427 = $extra_bits; $428 = $excess; $sub465 = (($428) - ($427))|0; $excess = $sub465; } $429 = $excess; $balance = $429; $430 = $j; $inc468 = (($430) + 1)|0; $j = $inc468; } $431 = $balance; $432 = $_balance$addr; HEAP32[$432>>2] = $431; while(1) { $433 = $j; $434 = $end$addr; $cmp471 = ($433|0)<($434|0); if (!($cmp471)) { break; } $435 = $bits$addr; $436 = $j; $arrayidx474 = (($435) + ($436<<2)|0); $437 = HEAP32[$arrayidx474>>2]|0; $438 = $stereo; $shr475 = $437 >> $438; $shr476 = $shr475 >> 3; $439 = $ebits$addr; $440 = $j; $arrayidx477 = (($439) + ($440<<2)|0); HEAP32[$arrayidx477>>2] = $shr476; $441 = $bits$addr; $442 = $j; $arrayidx478 = (($441) + ($442<<2)|0); HEAP32[$arrayidx478>>2] = 0; $443 = $ebits$addr; $444 = $j; $arrayidx479 = (($443) + ($444<<2)|0); $445 = HEAP32[$arrayidx479>>2]|0; $cmp480 = ($445|0)<(1); $conv481 = $cmp480&1; $446 = $fine_priority$addr; $447 = $j; $arrayidx482 = (($446) + ($447<<2)|0); HEAP32[$arrayidx482>>2] = $conv481; $448 = $j; $inc484 = (($448) + 1)|0; $j = $inc484; } $449 = $codedBands; STACKTOP = sp;return ($449|0); } function _celt_udiv_138($n,$d) { $n = $n|0; $d = $d|0; var $0 = 0, $1 = 0, $d$addr = 0, $div = 0, $n$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $n$addr = $n; $d$addr = $d; $0 = $n$addr; $1 = $d$addr; $div = (($0>>>0) / ($1>>>0))&-1; STACKTOP = sp;return ($div|0); } function _exp_rotation($X,$len,$dir,$stride,$K,$spread) { $X = $X|0; $len = $len|0; $dir = $dir|0; $stride = $stride|0; $K = $K|0; $spread = $spread|0; var $0 = 0, $1 = 0, $10 = 0.0, $11 = 0.0, $12 = 0.0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0.0, $34 = 0.0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0.0, $4 = 0, $40 = 0.0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0.0, $46 = 0.0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0.0, $54 = 0.0, $55 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0.0, $K$addr = 0, $X$addr = 0, $add = 0, $add$ptr = 0; var $add$ptr36 = 0, $add$ptr38 = 0, $add$ptr43 = 0, $add20 = 0, $add22 = 0, $arrayidx = 0, $c = 0.0, $call = 0.0, $call13 = 0.0, $call26 = 0, $cmp = 0, $cmp1 = 0, $cmp16 = 0, $cmp23 = 0, $cmp27 = 0, $cmp29 = 0, $conv = 0.0, $conv12 = 0.0, $conv14 = 0.0, $conv4 = 0.0; var $conv8 = 0.0, $conv9 = 0.0, $dir$addr = 0, $div = 0.0, $factor = 0, $gain = 0.0, $i = 0, $inc = 0, $inc47 = 0, $len$addr = 0, $mul = 0, $mul11 = 0.0, $mul15 = 0, $mul19 = 0, $mul2 = 0.0, $mul21 = 0, $mul3 = 0, $mul33 = 0, $mul35 = 0, $mul37 = 0; var $mul42 = 0, $mul5 = 0.0, $mul6 = 0.0, $mul7 = 0.0, $or$cond = 0, $s = 0.0, $shr = 0, $spread$addr = 0, $stride$addr = 0, $stride2 = 0, $sub = 0, $sub10 = 0.0, $sub39 = 0.0, $sub44 = 0.0, $theta = 0.0, $tobool = 0, $tobool40 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $X$addr = $X; $len$addr = $len; $dir$addr = $dir; $stride$addr = $stride; $K$addr = $K; $spread$addr = $spread; $stride2 = 0; $0 = $K$addr; $mul = $0<<1; $1 = $len$addr; $cmp = ($mul|0)>=($1|0); $2 = $spread$addr; $cmp1 = ($2|0)==(0); $or$cond = $cmp | $cmp1; if ($or$cond) { STACKTOP = sp;return; } $3 = $spread$addr; $sub = (($3) - 1)|0; $arrayidx = (15112 + ($sub<<2)|0); $4 = HEAP32[$arrayidx>>2]|0; $factor = $4; $5 = $len$addr; $conv = (+($5|0)); $mul2 = 1.0 * $conv; $6 = $len$addr; $7 = $factor; $8 = $K$addr; $mul3 = Math_imul($7, $8)|0; $add = (($6) + ($mul3))|0; $conv4 = (+($add|0)); $div = $mul2 / $conv4; $gain = $div; $9 = $gain; $10 = $gain; $mul5 = $9 * $10; $mul6 = 0.5 * $mul5; $theta = $mul6; $11 = $theta; $mul7 = 1.5707963705062866 * $11; $conv8 = $mul7; $call = (+Math_cos((+$conv8))); $conv9 = $call; $c = $conv9; $12 = $theta; $sub10 = 1.0 - $12; $mul11 = 1.5707963705062866 * $sub10; $conv12 = $mul11; $call13 = (+Math_cos((+$conv12))); $conv14 = $call13; $s = $conv14; $13 = $len$addr; $14 = $stride$addr; $mul15 = $14<<3; $cmp16 = ($13|0)>=($mul15|0); L4: do { if ($cmp16) { $stride2 = 1; while(1) { $15 = $stride2; $16 = $stride2; $mul19 = Math_imul($15, $16)|0; $17 = $stride2; $add20 = (($mul19) + ($17))|0; $18 = $stride$addr; $mul21 = Math_imul($add20, $18)|0; $19 = $stride$addr; $shr = $19 >> 2; $add22 = (($mul21) + ($shr))|0; $20 = $len$addr; $cmp23 = ($add22|0)<($20|0); if (!($cmp23)) { break L4; } $21 = $stride2; $inc = (($21) + 1)|0; $stride2 = $inc; } } } while(0); $22 = $len$addr; $23 = $stride$addr; $call26 = (_celt_udiv_139($22,$23)|0); $len$addr = $call26; $i = 0; while(1) { $24 = $i; $25 = $stride$addr; $cmp27 = ($24|0)<($25|0); if (!($cmp27)) { break; } $26 = $dir$addr; $cmp29 = ($26|0)<(0); if ($cmp29) { $27 = $stride2; $tobool = ($27|0)!=(0); if ($tobool) { $28 = $X$addr; $29 = $i; $30 = $len$addr; $mul33 = Math_imul($29, $30)|0; $add$ptr = (($28) + ($mul33<<2)|0); $31 = $len$addr; $32 = $stride2; $33 = $s; $34 = $c; _exp_rotation1($add$ptr,$31,$32,$33,$34); } $35 = $X$addr; $36 = $i; $37 = $len$addr; $mul35 = Math_imul($36, $37)|0; $add$ptr36 = (($35) + ($mul35<<2)|0); $38 = $len$addr; $39 = $c; $40 = $s; _exp_rotation1($add$ptr36,$38,1,$39,$40); } else { $41 = $X$addr; $42 = $i; $43 = $len$addr; $mul37 = Math_imul($42, $43)|0; $add$ptr38 = (($41) + ($mul37<<2)|0); $44 = $len$addr; $45 = $c; $46 = $s; $sub39 = - $46; _exp_rotation1($add$ptr38,$44,1,$45,$sub39); $47 = $stride2; $tobool40 = ($47|0)!=(0); if ($tobool40) { $48 = $X$addr; $49 = $i; $50 = $len$addr; $mul42 = Math_imul($49, $50)|0; $add$ptr43 = (($48) + ($mul42<<2)|0); $51 = $len$addr; $52 = $stride2; $53 = $s; $54 = $c; $sub44 = - $54; _exp_rotation1($add$ptr43,$51,$52,$53,$sub44); } } $55 = $i; $inc47 = (($55) + 1)|0; $i = $inc47; } STACKTOP = sp;return; } function _celt_udiv_139($n,$d) { $n = $n|0; $d = $d|0; var $0 = 0, $1 = 0, $d$addr = 0, $div = 0, $n$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $n$addr = $n; $d$addr = $d; $0 = $n$addr; $1 = $d$addr; $div = (($0>>>0) / ($1>>>0))&-1; STACKTOP = sp;return ($div|0); } function _exp_rotation1($X,$len,$stride,$c,$s) { $X = $X|0; $len = $len|0; $stride = $stride|0; $c = +$c; $s = +$s; var $0 = 0, $1 = 0.0, $10 = 0.0, $11 = 0.0, $12 = 0.0, $13 = 0.0, $14 = 0, $15 = 0, $16 = 0.0, $17 = 0.0, $18 = 0.0, $19 = 0.0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0.0, $3 = 0, $30 = 0, $31 = 0, $32 = 0.0, $33 = 0.0, $34 = 0.0, $35 = 0.0, $36 = 0.0, $37 = 0, $38 = 0, $39 = 0.0, $4 = 0, $40 = 0.0, $41 = 0.0, $42 = 0.0, $43 = 0, $44 = 0; var $5 = 0, $6 = 0.0, $7 = 0, $8 = 0, $9 = 0.0, $X$addr = 0, $Xptr = 0, $add = 0.0, $add24 = 0.0, $add28 = 0.0, $add7 = 0.0, $arrayidx11 = 0, $arrayidx2 = 0, $arrayidx21 = 0, $arrayidx25 = 0, $arrayidx4 = 0, $c$addr = 0.0, $cmp = 0, $cmp16 = 0, $dec = 0; var $i = 0, $inc = 0, $incdec$ptr = 0, $incdec$ptr29 = 0, $len$addr = 0, $ms = 0.0, $mul = 0.0, $mul12 = 0, $mul22 = 0.0, $mul23 = 0.0, $mul26 = 0.0, $mul27 = 0.0, $mul3 = 0.0, $mul5 = 0.0, $mul6 = 0.0, $mul8 = 0, $s$addr = 0.0, $stride$addr = 0, $sub = 0.0, $sub1 = 0; var $sub10 = 0, $sub13 = 0, $sub14 = 0, $sub9 = 0, $x1 = 0.0, $x118 = 0.0, $x2 = 0.0, $x219 = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $X$addr = $X; $len$addr = $len; $stride$addr = $stride; $c$addr = $c; $s$addr = $s; $0 = $X$addr; $Xptr = $0; $1 = $s$addr; $sub = - $1; $ms = $sub; $i = 0; while(1) { $2 = $i; $3 = $len$addr; $4 = $stride$addr; $sub1 = (($3) - ($4))|0; $cmp = ($2|0)<($sub1|0); if (!($cmp)) { break; } $5 = $Xptr; $6 = +HEAPF32[$5>>2]; $x1 = $6; $7 = $Xptr; $8 = $stride$addr; $arrayidx2 = (($7) + ($8<<2)|0); $9 = +HEAPF32[$arrayidx2>>2]; $x2 = $9; $10 = $c$addr; $11 = $x2; $mul = $10 * $11; $12 = $s$addr; $13 = $x1; $mul3 = $12 * $13; $add = $mul + $mul3; $14 = $Xptr; $15 = $stride$addr; $arrayidx4 = (($14) + ($15<<2)|0); HEAPF32[$arrayidx4>>2] = $add; $16 = $c$addr; $17 = $x1; $mul5 = $16 * $17; $18 = $ms; $19 = $x2; $mul6 = $18 * $19; $add7 = $mul5 + $mul6; $20 = $Xptr; $incdec$ptr = ((($20)) + 4|0); $Xptr = $incdec$ptr; HEAPF32[$20>>2] = $add7; $21 = $i; $inc = (($21) + 1)|0; $i = $inc; } $22 = $X$addr; $23 = $len$addr; $24 = $stride$addr; $mul8 = $24<<1; $sub9 = (($23) - ($mul8))|0; $sub10 = (($sub9) - 1)|0; $arrayidx11 = (($22) + ($sub10<<2)|0); $Xptr = $arrayidx11; $25 = $len$addr; $26 = $stride$addr; $mul12 = $26<<1; $sub13 = (($25) - ($mul12))|0; $sub14 = (($sub13) - 1)|0; $i = $sub14; while(1) { $27 = $i; $cmp16 = ($27|0)>=(0); if (!($cmp16)) { break; } $28 = $Xptr; $29 = +HEAPF32[$28>>2]; $x118 = $29; $30 = $Xptr; $31 = $stride$addr; $arrayidx21 = (($30) + ($31<<2)|0); $32 = +HEAPF32[$arrayidx21>>2]; $x219 = $32; $33 = $c$addr; $34 = $x219; $mul22 = $33 * $34; $35 = $s$addr; $36 = $x118; $mul23 = $35 * $36; $add24 = $mul22 + $mul23; $37 = $Xptr; $38 = $stride$addr; $arrayidx25 = (($37) + ($38<<2)|0); HEAPF32[$arrayidx25>>2] = $add24; $39 = $c$addr; $40 = $x118; $mul26 = $39 * $40; $41 = $ms; $42 = $x219; $mul27 = $41 * $42; $add28 = $mul26 + $mul27; $43 = $Xptr; $incdec$ptr29 = ((($43)) + -4|0); $Xptr = $incdec$ptr29; HEAPF32[$43>>2] = $add28; $44 = $i; $dec = (($44) + -1)|0; $i = $dec; } STACKTOP = sp;return; } function _alg_quant($X,$N,$K,$spread,$B,$enc,$gain,$resynth,$arch) { $X = $X|0; $N = $N|0; $K = $K|0; $spread = $spread|0; $B = $B|0; $enc = $enc|0; $gain = +$gain; $resynth = $resynth|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0.0, $2 = 0, $20 = 0.0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $B$addr = 0, $K$addr = 0, $N$addr = 0, $X$addr = 0, $add = 0, $and = 0, $arch$addr = 0, $arrayidx = 0, $call = 0.0, $call1 = 0; var $collapse_mask = 0, $enc$addr = 0, $gain$addr = 0.0, $resynth$addr = 0, $saved_stack = 0, $spread$addr = 0, $tobool = 0, $vla = 0, $vla$alloca_mul = 0, $yy = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $X$addr = $X; $N$addr = $N; $K$addr = $K; $spread$addr = $spread; $B$addr = $B; $enc$addr = $enc; $gain$addr = $gain; $resynth$addr = $resynth; $arch$addr = $arch; $0 = $N$addr; $add = (($0) + 3)|0; $1 = (_llvm_stacksave()|0); $saved_stack = $1; $vla$alloca_mul = $add<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $2 = $X$addr; $3 = $N$addr; $4 = $B$addr; $5 = $K$addr; $6 = $spread$addr; _exp_rotation($2,$3,1,$4,$5,$6); $7 = $arch$addr; $and = $7 & 7; $arrayidx = (_OP_PVQ_SEARCH_IMPL + ($and<<2)|0); $8 = HEAP32[$arrayidx>>2]|0; $9 = $X$addr; $10 = $K$addr; $11 = $N$addr; $12 = $arch$addr; $call = (+FUNCTION_TABLE_diiiii[$8 & 0]($9,$vla,$10,$11,$12)); $yy = $call; $13 = $N$addr; $14 = $K$addr; $15 = $enc$addr; _encode_pulses($vla,$13,$14,$15); $16 = $resynth$addr; $tobool = ($16|0)!=(0); if (!($tobool)) { $26 = $N$addr; $27 = $B$addr; $call1 = (_extract_collapse_mask($vla,$26,$27)|0); $collapse_mask = $call1; $28 = $collapse_mask; $29 = $saved_stack; _llvm_stackrestore(($29|0)); STACKTOP = sp;return ($28|0); } $17 = $X$addr; $18 = $N$addr; $19 = $yy; $20 = $gain$addr; _normalise_residual($vla,$17,$18,$19,$20); $21 = $X$addr; $22 = $N$addr; $23 = $B$addr; $24 = $K$addr; $25 = $spread$addr; _exp_rotation($21,$22,-1,$23,$24,$25); $26 = $N$addr; $27 = $B$addr; $call1 = (_extract_collapse_mask($vla,$26,$27)|0); $collapse_mask = $call1; $28 = $collapse_mask; $29 = $saved_stack; _llvm_stackrestore(($29|0)); STACKTOP = sp;return ($28|0); } function _normalise_residual($iy,$X,$N,$Ryy,$gain) { $iy = $iy|0; $X = $X|0; $N = $N|0; $Ryy = +$Ryy; $gain = +$gain; var $0 = 0.0, $1 = 0.0, $10 = 0, $2 = 0.0, $3 = 0.0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $N$addr = 0, $Ryy$addr = 0.0, $X$addr = 0, $arrayidx = 0, $arrayidx4 = 0, $call = 0.0, $cmp = 0, $conv = 0.0, $conv1 = 0.0; var $conv2 = 0.0, $div = 0.0, $g = 0.0, $gain$addr = 0.0, $i = 0, $inc = 0, $iy$addr = 0, $mul = 0.0, $mul3 = 0.0, $t = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $iy$addr = $iy; $X$addr = $X; $N$addr = $N; $Ryy$addr = $Ryy; $gain$addr = $gain; $0 = $Ryy$addr; $t = $0; $1 = $t; $conv = $1; $call = (+Math_sqrt((+$conv))); $conv1 = $call; $div = 1.0 / $conv1; $2 = $gain$addr; $mul = $div * $2; $g = $mul; $i = 0; while(1) { $3 = $g; $4 = $iy$addr; $5 = $i; $arrayidx = (($4) + ($5<<2)|0); $6 = HEAP32[$arrayidx>>2]|0; $conv2 = (+($6|0)); $mul3 = $3 * $conv2; $7 = $X$addr; $8 = $i; $arrayidx4 = (($7) + ($8<<2)|0); HEAPF32[$arrayidx4>>2] = $mul3; $9 = $i; $inc = (($9) + 1)|0; $i = $inc; $10 = $N$addr; $cmp = ($inc|0)<($10|0); if (!($cmp)) { break; } } STACKTOP = sp;return; } function _extract_collapse_mask($iy,$N,$B) { $iy = $iy|0; $N = $N|0; $B = $B|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $B$addr = 0, $N$addr = 0; var $N0 = 0, $add = 0, $arrayidx = 0, $call = 0, $cmp = 0, $cmp2 = 0, $cmp3 = 0, $cmp7 = 0, $collapse_mask = 0, $conv = 0, $i = 0, $inc = 0, $inc6 = 0, $iy$addr = 0, $j = 0, $mul = 0, $or = 0, $or4 = 0, $retval = 0, $shl = 0; var $tmp = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $iy$addr = $iy; $N$addr = $N; $B$addr = $B; $0 = $B$addr; $cmp = ($0|0)<=(1); if ($cmp) { $retval = 1; $17 = $retval; STACKTOP = sp;return ($17|0); } $1 = $N$addr; $2 = $B$addr; $call = (_celt_udiv_139($1,$2)|0); $N0 = $call; $collapse_mask = 0; $i = 0; while(1) { $tmp = 0; $j = 0; while(1) { $3 = $iy$addr; $4 = $i; $5 = $N0; $mul = Math_imul($4, $5)|0; $6 = $j; $add = (($mul) + ($6))|0; $arrayidx = (($3) + ($add<<2)|0); $7 = HEAP32[$arrayidx>>2]|0; $8 = $tmp; $or = $8 | $7; $tmp = $or; $9 = $j; $inc = (($9) + 1)|0; $j = $inc; $10 = $N0; $cmp2 = ($inc|0)<($10|0); if (!($cmp2)) { break; } } $11 = $tmp; $cmp3 = ($11|0)!=(0); $conv = $cmp3&1; $12 = $i; $shl = $conv << $12; $13 = $collapse_mask; $or4 = $13 | $shl; $collapse_mask = $or4; $14 = $i; $inc6 = (($14) + 1)|0; $i = $inc6; $15 = $B$addr; $cmp7 = ($inc6|0)<($15|0); if (!($cmp7)) { break; } } $16 = $collapse_mask; $retval = $16; $17 = $retval; STACKTOP = sp;return ($17|0); } function _alg_unquant($X,$N,$K,$spread,$B,$dec,$gain) { $X = $X|0; $N = $N|0; $K = $K|0; $spread = $spread|0; $B = $B|0; $dec = $dec|0; $gain = +$gain; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0.0, $8 = 0.0, $9 = 0, $B$addr = 0, $K$addr = 0; var $N$addr = 0, $Ryy = 0.0, $X$addr = 0, $call = 0.0, $call1 = 0, $collapse_mask = 0, $dec$addr = 0, $gain$addr = 0.0, $saved_stack = 0, $spread$addr = 0, $vla = 0, $vla$alloca_mul = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $X$addr = $X; $N$addr = $N; $K$addr = $K; $spread$addr = $spread; $B$addr = $B; $dec$addr = $dec; $gain$addr = $gain; $0 = $N$addr; $1 = (_llvm_stacksave()|0); $saved_stack = $1; $vla$alloca_mul = $0<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $2 = $N$addr; $3 = $K$addr; $4 = $dec$addr; $call = (+_decode_pulses($vla,$2,$3,$4)); $Ryy = $call; $5 = $X$addr; $6 = $N$addr; $7 = $Ryy; $8 = $gain$addr; _normalise_residual($vla,$5,$6,$7,$8); $9 = $X$addr; $10 = $N$addr; $11 = $B$addr; $12 = $K$addr; $13 = $spread$addr; _exp_rotation($9,$10,-1,$11,$12,$13); $14 = $N$addr; $15 = $B$addr; $call1 = (_extract_collapse_mask($vla,$14,$15)|0); $collapse_mask = $call1; $16 = $collapse_mask; $17 = $saved_stack; _llvm_stackrestore(($17|0)); STACKTOP = sp;return ($16|0); } function _renormalise_vector($X,$N,$gain,$arch) { $X = $X|0; $N = $N|0; $gain = +$gain; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0.0, $12 = 0, $13 = 0.0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0.0, $6 = 0.0, $7 = 0.0, $8 = 0, $9 = 0, $E = 0.0, $N$addr = 0, $X$addr = 0; var $add = 0.0, $and = 0, $arch$addr = 0, $arrayidx = 0, $call = 0.0, $call1 = 0.0, $cmp = 0, $conv = 0.0, $conv2 = 0.0, $div = 0.0, $g = 0.0, $gain$addr = 0.0, $i = 0, $inc = 0, $incdec$ptr = 0, $mul = 0.0, $mul4 = 0.0, $t = 0.0, $xptr = 0, label = 0; var sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $X$addr = $X; $N$addr = $N; $gain$addr = $gain; $arch$addr = $arch; $0 = $arch$addr; $and = $0 & 7; $arrayidx = (_CELT_INNER_PROD_IMPL + ($and<<2)|0); $1 = HEAP32[$arrayidx>>2]|0; $2 = $X$addr; $3 = $X$addr; $4 = $N$addr; $call = (+FUNCTION_TABLE_diii[$1 & 0]($2,$3,$4)); $add = 1.0000000036274937E-15 + $call; $E = $add; $5 = $E; $t = $5; $6 = $t; $conv = $6; $call1 = (+Math_sqrt((+$conv))); $conv2 = $call1; $div = 1.0 / $conv2; $7 = $gain$addr; $mul = $div * $7; $g = $mul; $8 = $X$addr; $xptr = $8; $i = 0; while(1) { $9 = $i; $10 = $N$addr; $cmp = ($9|0)<($10|0); if (!($cmp)) { break; } $11 = $g; $12 = $xptr; $13 = +HEAPF32[$12>>2]; $mul4 = $11 * $13; $14 = $xptr; HEAPF32[$14>>2] = $mul4; $15 = $xptr; $incdec$ptr = ((($15)) + 4|0); $xptr = $incdec$ptr; $16 = $i; $inc = (($16) + 1)|0; $i = $inc; } STACKTOP = sp;return; } function _stereo_itheta($X,$Y,$stereo,$N,$arch) { $X = $X|0; $Y = $Y|0; $stereo = $stereo|0; $N = $N|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0.0, $12 = 0, $13 = 0, $14 = 0.0, $15 = 0.0, $16 = 0.0, $17 = 0.0, $18 = 0.0, $19 = 0.0, $2 = 0, $20 = 0.0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0.0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0.0, $34 = 0.0, $35 = 0.0, $36 = 0.0, $37 = 0.0, $38 = 0, $4 = 0, $5 = 0.0, $6 = 0, $7 = 0, $8 = 0.0, $9 = 0, $Emid = 0.0; var $Eside = 0.0, $N$addr = 0, $X$addr = 0, $Y$addr = 0, $add = 0.0, $add12 = 0.0, $add20 = 0.0, $add4 = 0.0, $add6 = 0.0, $add8 = 0.0, $and = 0, $and9 = 0, $arch$addr = 0, $arrayidx = 0, $arrayidx1 = 0, $arrayidx10 = 0, $arrayidx2 = 0, $arrayidx3 = 0, $arrayidx7 = 0, $call = 0.0; var $call11 = 0.0, $call13 = 0.0, $call16 = 0.0, $call18 = 0.0, $call22 = 0.0, $cmp = 0, $conv = 0.0, $conv14 = 0.0, $conv15 = 0.0, $conv17 = 0.0, $conv21 = 0.0, $conv23 = 0, $i = 0, $inc = 0, $itheta = 0, $m = 0.0, $mid = 0.0, $mul = 0.0, $mul19 = 0.0, $mul5 = 0.0; var $s = 0.0, $side = 0.0, $stereo$addr = 0, $sub = 0.0, $tobool = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $X$addr = $X; $Y$addr = $Y; $stereo$addr = $stereo; $N$addr = $N; $arch$addr = $arch; $Eside = 1.0000000036274937E-15; $Emid = 1.0000000036274937E-15; $0 = $stereo$addr; $tobool = ($0|0)!=(0); L1: do { if ($tobool) { $i = 0; while(1) { $1 = $i; $2 = $N$addr; $cmp = ($1|0)<($2|0); if (!($cmp)) { break L1; } $3 = $X$addr; $4 = $i; $arrayidx = (($3) + ($4<<2)|0); $5 = +HEAPF32[$arrayidx>>2]; $6 = $Y$addr; $7 = $i; $arrayidx1 = (($6) + ($7<<2)|0); $8 = +HEAPF32[$arrayidx1>>2]; $add = $5 + $8; $m = $add; $9 = $X$addr; $10 = $i; $arrayidx2 = (($9) + ($10<<2)|0); $11 = +HEAPF32[$arrayidx2>>2]; $12 = $Y$addr; $13 = $i; $arrayidx3 = (($12) + ($13<<2)|0); $14 = +HEAPF32[$arrayidx3>>2]; $sub = $11 - $14; $s = $sub; $15 = $Emid; $16 = $m; $17 = $m; $mul = $16 * $17; $add4 = $15 + $mul; $Emid = $add4; $18 = $Eside; $19 = $s; $20 = $s; $mul5 = $19 * $20; $add6 = $18 + $mul5; $Eside = $add6; $21 = $i; $inc = (($21) + 1)|0; $i = $inc; } } else { $22 = $arch$addr; $and = $22 & 7; $arrayidx7 = (_CELT_INNER_PROD_IMPL + ($and<<2)|0); $23 = HEAP32[$arrayidx7>>2]|0; $24 = $X$addr; $25 = $X$addr; $26 = $N$addr; $call = (+FUNCTION_TABLE_diii[$23 & 0]($24,$25,$26)); $27 = $Emid; $add8 = $27 + $call; $Emid = $add8; $28 = $arch$addr; $and9 = $28 & 7; $arrayidx10 = (_CELT_INNER_PROD_IMPL + ($and9<<2)|0); $29 = HEAP32[$arrayidx10>>2]|0; $30 = $Y$addr; $31 = $Y$addr; $32 = $N$addr; $call11 = (+FUNCTION_TABLE_diii[$29 & 0]($30,$31,$32)); $33 = $Eside; $add12 = $33 + $call11; $Eside = $add12; } } while(0); $34 = $Emid; $conv = $34; $call13 = (+Math_sqrt((+$conv))); $conv14 = $call13; $mid = $conv14; $35 = $Eside; $conv15 = $35; $call16 = (+Math_sqrt((+$conv15))); $conv17 = $call16; $side = $conv17; $36 = $side; $37 = $mid; $call18 = (+_fast_atan2f_142($36,$37)); $mul19 = 10430.3818359375 * $call18; $add20 = 0.5 + $mul19; $conv21 = $add20; $call22 = (+Math_floor((+$conv21))); $conv23 = (~~(($call22))); $itheta = $conv23; $38 = $itheta; STACKTOP = sp;return ($38|0); } function _fast_atan2f_142($y,$x) { $y = +$y; $x = +$x; var $0 = 0.0, $1 = 0.0, $10 = 0.0, $11 = 0.0, $12 = 0.0, $13 = 0.0, $14 = 0.0, $15 = 0.0, $16 = 0.0, $17 = 0.0, $18 = 0.0, $19 = 0.0, $2 = 0.0, $20 = 0.0, $21 = 0.0, $22 = 0.0, $23 = 0.0, $24 = 0.0, $25 = 0.0, $26 = 0.0; var $27 = 0.0, $28 = 0.0, $29 = 0.0, $3 = 0.0, $30 = 0.0, $4 = 0.0, $5 = 0.0, $6 = 0.0, $7 = 0.0, $8 = 0.0, $9 = 0.0, $add = 0.0, $add11 = 0.0, $add14 = 0.0, $add17 = 0.0, $add19 = 0.0, $add23 = 0.0, $add28 = 0.0, $add5 = 0.0, $add7 = 0.0; var $cmp = 0, $cmp13 = 0, $cmp2 = 0, $cmp26 = 0, $cmp30 = 0, $cond = 0.0, $cond27 = 0.0, $cond31 = 0.0, $den = 0.0, $den15 = 0.0, $div = 0.0, $div25 = 0.0, $mul = 0.0, $mul1 = 0.0, $mul10 = 0.0, $mul12 = 0.0, $mul16 = 0.0, $mul18 = 0.0, $mul20 = 0.0, $mul21 = 0.0; var $mul22 = 0.0, $mul24 = 0.0, $mul29 = 0.0, $mul4 = 0.0, $mul6 = 0.0, $mul8 = 0.0, $mul9 = 0.0, $retval = 0.0, $sub = 0.0, $sub32 = 0.0, $x$addr = 0.0, $x2 = 0.0, $y$addr = 0.0, $y2 = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $y$addr = $y; $x$addr = $x; $0 = $x$addr; $1 = $x$addr; $mul = $0 * $1; $x2 = $mul; $2 = $y$addr; $3 = $y$addr; $mul1 = $2 * $3; $y2 = $mul1; $4 = $x2; $5 = $y2; $add = $4 + $5; $cmp = $add < 1.000000045813705E-18; if ($cmp) { $retval = 0.0; $30 = $retval; STACKTOP = sp;return (+$30); } $6 = $x2; $7 = $y2; $cmp2 = $6 < $7; if ($cmp2) { $8 = $y2; $9 = $x2; $mul4 = 0.67848402261734009 * $9; $add5 = $8 + $mul4; $10 = $y2; $11 = $x2; $mul6 = 0.085955418646335601 * $11; $add7 = $10 + $mul6; $mul8 = $add5 * $add7; $den = $mul8; $12 = $x$addr; $sub = - $12; $13 = $y$addr; $mul9 = $sub * $13; $14 = $y2; $15 = $x2; $mul10 = 0.43157973885536194 * $15; $add11 = $14 + $mul10; $mul12 = $mul9 * $add11; $16 = $den; $div = $mul12 / $16; $17 = $y$addr; $cmp13 = $17 < 0.0; $cond = $cmp13 ? -1.5707963705062866 : 1.5707963705062866; $add14 = $div + $cond; $retval = $add14; $30 = $retval; STACKTOP = sp;return (+$30); } else { $18 = $x2; $19 = $y2; $mul16 = 0.67848402261734009 * $19; $add17 = $18 + $mul16; $20 = $x2; $21 = $y2; $mul18 = 0.085955418646335601 * $21; $add19 = $20 + $mul18; $mul20 = $add17 * $add19; $den15 = $mul20; $22 = $x$addr; $23 = $y$addr; $mul21 = $22 * $23; $24 = $x2; $25 = $y2; $mul22 = 0.43157973885536194 * $25; $add23 = $24 + $mul22; $mul24 = $mul21 * $add23; $26 = $den15; $div25 = $mul24 / $26; $27 = $y$addr; $cmp26 = $27 < 0.0; $cond27 = $cmp26 ? -1.5707963705062866 : 1.5707963705062866; $add28 = $div25 + $cond27; $28 = $x$addr; $29 = $y$addr; $mul29 = $28 * $29; $cmp30 = $mul29 < 0.0; $cond31 = $cmp30 ? -1.5707963705062866 : 1.5707963705062866; $sub32 = $add28 - $cond31; $retval = $sub32; $30 = $retval; STACKTOP = sp;return (+$30); } return +(0.0); } function _opus_select_arch() { var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $HW_AVX = 0, $HW_SSE2 = 0, $HW_SSE41 = 0, $arch = 0, $cpu_feature = 0, $inc = 0, $inc12 = 0, $inc4 = 0, $inc8 = 0, $retval = 0; var $tobool = 0, $tobool1 = 0, $tobool5 = 0, $tobool9 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $cpu_feature = sp + 8|0; _opus_cpu_feature_check($cpu_feature); $arch = 0; $0 = HEAP32[$cpu_feature>>2]|0; $tobool = ($0|0)!=(0); $1 = $arch; do { if ($tobool) { $inc = (($1) + 1)|0; $arch = $inc; $HW_SSE2 = ((($cpu_feature)) + 4|0); $2 = HEAP32[$HW_SSE2>>2]|0; $tobool1 = ($2|0)!=(0); $3 = $arch; if (!($tobool1)) { $retval = $3; break; } $inc4 = (($3) + 1)|0; $arch = $inc4; $HW_SSE41 = ((($cpu_feature)) + 8|0); $4 = HEAP32[$HW_SSE41>>2]|0; $tobool5 = ($4|0)!=(0); $5 = $arch; if (!($tobool5)) { $retval = $5; break; } $inc8 = (($5) + 1)|0; $arch = $inc8; $HW_AVX = ((($cpu_feature)) + 12|0); $6 = HEAP32[$HW_AVX>>2]|0; $tobool9 = ($6|0)!=(0); $7 = $arch; if ($tobool9) { $inc12 = (($7) + 1)|0; $arch = $inc12; $8 = $arch; $retval = $8; break; } else { $retval = $7; break; } } else { $retval = $1; } } while(0); $9 = $retval; STACKTOP = sp;return ($9|0); } function _opus_cpu_feature_check($cpu_feature) { $cpu_feature = $cpu_feature|0; var $$sink = 0, $$sink1 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $HW_AVX19 = 0, $HW_SSE2 = 0, $HW_SSE217 = 0, $HW_SSE41 = 0; var $HW_SSE4118 = 0, $and = 0, $and13 = 0, $and5 = 0, $and9 = 0, $arrayidx12 = 0, $arrayidx2 = 0, $arrayidx4 = 0, $arrayidx8 = 0, $cmp = 0, $cmp10 = 0, $cmp14 = 0, $cmp3 = 0, $cmp6 = 0, $conv = 0, $conv11 = 0, $conv15 = 0, $conv7 = 0, $cpu_feature$addr = 0, $info = 0; var $nIds = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $info = sp + 8|0; $cpu_feature$addr = $cpu_feature; ;HEAP32[$info>>2]=0|0;HEAP32[$info+4>>2]=0|0;HEAP32[$info+8>>2]=0|0;HEAP32[$info+12>>2]=0|0; $nIds = 0; _cpuid($info,0); $0 = HEAP32[$info>>2]|0; $nIds = $0; $1 = $nIds; $cmp = ($1>>>0)>=(1); if ($cmp) { _cpuid($info,1); $arrayidx2 = ((($info)) + 12|0); $2 = HEAP32[$arrayidx2>>2]|0; $and = $2 & 33554432; $cmp3 = ($and|0)!=(0); $conv = $cmp3&1; $3 = $cpu_feature$addr; HEAP32[$3>>2] = $conv; $arrayidx4 = ((($info)) + 12|0); $4 = HEAP32[$arrayidx4>>2]|0; $and5 = $4 & 67108864; $cmp6 = ($and5|0)!=(0); $conv7 = $cmp6&1; $5 = $cpu_feature$addr; $HW_SSE2 = ((($5)) + 4|0); HEAP32[$HW_SSE2>>2] = $conv7; $arrayidx8 = ((($info)) + 8|0); $6 = HEAP32[$arrayidx8>>2]|0; $and9 = $6 & 524288; $cmp10 = ($and9|0)!=(0); $conv11 = $cmp10&1; $7 = $cpu_feature$addr; $HW_SSE41 = ((($7)) + 8|0); HEAP32[$HW_SSE41>>2] = $conv11; $arrayidx12 = ((($info)) + 8|0); $8 = HEAP32[$arrayidx12>>2]|0; $and13 = $8 & 268435456; $cmp14 = ($and13|0)!=(0); $conv15 = $cmp14&1; $9 = $cpu_feature$addr; $$sink = $conv15;$$sink1 = $9; $HW_AVX19 = ((($$sink1)) + 12|0); HEAP32[$HW_AVX19>>2] = $$sink; STACKTOP = sp;return; } else { $10 = $cpu_feature$addr; HEAP32[$10>>2] = 0; $11 = $cpu_feature$addr; $HW_SSE217 = ((($11)) + 4|0); HEAP32[$HW_SSE217>>2] = 0; $12 = $cpu_feature$addr; $HW_SSE4118 = ((($12)) + 8|0); HEAP32[$HW_SSE4118>>2] = 0; $13 = $cpu_feature$addr; $$sink = 0;$$sink1 = $13; $HW_AVX19 = ((($$sink1)) + 12|0); HEAP32[$HW_AVX19>>2] = $$sink; STACKTOP = sp;return; } } function _cpuid($CPUInfo,$InfoType) { $CPUInfo = $CPUInfo|0; $InfoType = $InfoType|0; var $CPUInfo$addr = 0, $InfoType$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $CPUInfo$addr = $CPUInfo; $InfoType$addr = $InfoType; STACKTOP = sp;return; } function _silk_Get_Decoder_Size($decSizeBytes) { $decSizeBytes = $decSizeBytes|0; var $0 = 0, $1 = 0, $decSizeBytes$addr = 0, $ret = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $decSizeBytes$addr = $decSizeBytes; $ret = 0; $0 = $decSizeBytes$addr; HEAP32[$0>>2] = 8552; $1 = $ret; STACKTOP = sp;return ($1|0); } function _silk_InitDecoder($decState) { $decState = $decState|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $arrayidx = 0, $call = 0, $channel_state = 0, $cmp = 0, $decState$addr = 0, $inc = 0, $n = 0, $prev_decode_only_middle = 0, $ret = 0, $sStereo = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $decState$addr = $decState; $ret = 0; $0 = $decState$addr; $channel_state = $0; $n = 0; while(1) { $1 = $n; $cmp = ($1|0)<(2); if (!($cmp)) { break; } $2 = $channel_state; $3 = $n; $arrayidx = (($2) + (($3*4264)|0)|0); $call = (_silk_init_decoder($arrayidx)|0); $ret = $call; $4 = $n; $inc = (($4) + 1)|0; $n = $inc; } $5 = $decState$addr; $sStereo = ((($5)) + 8528|0); ;HEAP32[$sStereo>>2]=0|0;HEAP32[$sStereo+4>>2]=0|0;HEAP32[$sStereo+8>>2]=0|0; $6 = $decState$addr; $prev_decode_only_middle = ((($6)) + 8548|0); HEAP32[$prev_decode_only_middle>>2] = 0; $7 = $ret; STACKTOP = sp;return ($7|0); } function _silk_Decode($decState,$decControl,$lostFlag,$newPacketFlag,$psRangeDec,$samplesOut,$nSamplesOut,$arch) { $decState = $decState|0; $decControl = $decControl|0; $lostFlag = $lostFlag|0; $newPacketFlag = $newPacketFlag|0; $psRangeDec = $psRangeDec|0; $samplesOut = $samplesOut|0; $nSamplesOut = $nSamplesOut|0; $arch = $arch|0; var $$sink = 0, $$sink6 = 0, $$sink7 = 0, $$sink8 = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0; var $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0; var $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0; var $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0; var $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0; var $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0; var $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0; var $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0; var $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0; var $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0; var $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0; var $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0; var $310 = 0, $311 = 0, $312 = 0, $313 = 0, $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0; var $329 = 0, $33 = 0, $330 = 0, $331 = 0, $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0; var $347 = 0, $348 = 0, $349 = 0, $35 = 0, $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0; var $365 = 0, $366 = 0, $367 = 0, $368 = 0, $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0; var $383 = 0, $384 = 0, $385 = 0, $386 = 0, $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0; var $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0; var $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0; var $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0; var $96 = 0, $97 = 0, $98 = 0, $99 = 0, $API_sampleRate = 0, $API_sampleRate100 = 0, $API_sampleRate103 = 0, $API_sampleRate314 = 0, $API_sampleRate442 = 0, $FrameIndex = 0, $LBRR_flag = 0, $LBRR_flag140 = 0, $LBRR_flags = 0, $LBRR_flags148 = 0, $LBRR_flags163 = 0, $LBRR_flags185 = 0, $LBRR_flags196 = 0, $LBRR_flags205 = 0, $LBRR_flags239 = 0, $LBRR_flags262 = 0; var $LBRR_flags355 = 0, $LBRR_flags386 = 0, $LBRR_symbol = 0, $LastGainIndex = 0, $LastGainIndex599 = 0, $MS_pred_Q13 = 0, $VAD_flags = 0, $VAD_flags251 = 0, $add = 0, $add$ptr336 = 0, $add$ptr337 = 0, $add$ptr487 = 0, $add$ptr488 = 0, $add155 = 0, $add323 = 0, $add406 = 0, $add468 = 0, $add479 = 0, $add483 = 0, $add510 = 0; var $add521 = 0, $add545 = 0, $add552 = 0, $add563 = 0, $add566 = 0, $add64 = 0, $add74 = 0, $and = 0, $arch$addr = 0, $arrayidx = 0, $arrayidx118 = 0, $arrayidx123 = 0, $arrayidx124 = 0, $arrayidx137 = 0, $arrayidx139 = 0, $arrayidx143 = 0, $arrayidx147 = 0, $arrayidx151 = 0, $arrayidx153 = 0, $arrayidx157 = 0; var $arrayidx162 = 0, $arrayidx164 = 0, $arrayidx184 = 0, $arrayidx186 = 0, $arrayidx195 = 0, $arrayidx197 = 0, $arrayidx204 = 0, $arrayidx207 = 0, $arrayidx212 = 0, $arrayidx214 = 0, $arrayidx215 = 0, $arrayidx218 = 0, $arrayidx24 = 0, $arrayidx242 = 0, $arrayidx25 = 0, $arrayidx250 = 0, $arrayidx254 = 0, $arrayidx261 = 0, $arrayidx265 = 0, $arrayidx278 = 0; var $arrayidx280 = 0, $arrayidx29 = 0, $arrayidx297 = 0, $arrayidx300 = 0, $arrayidx303 = 0, $arrayidx305 = 0, $arrayidx307 = 0, $arrayidx309 = 0, $arrayidx31 = 0, $arrayidx31$sink = 0, $arrayidx338 = 0, $arrayidx354 = 0, $arrayidx356 = 0, $arrayidx358 = 0, $arrayidx37 = 0, $arrayidx385 = 0, $arrayidx388 = 0, $arrayidx39 = 0, $arrayidx402 = 0, $arrayidx403 = 0; var $arrayidx404 = 0, $arrayidx408 = 0, $arrayidx409 = 0, $arrayidx412 = 0, $arrayidx428 = 0, $arrayidx440 = 0, $arrayidx45 = 0, $arrayidx47 = 0, $arrayidx489 = 0, $arrayidx505 = 0, $arrayidx507 = 0, $arrayidx508 = 0, $arrayidx519 = 0, $arrayidx522 = 0, $arrayidx53 = 0, $arrayidx540 = 0, $arrayidx543 = 0, $arrayidx55 = 0, $arrayidx550 = 0, $arrayidx553 = 0; var $arrayidx564 = 0, $arrayidx567 = 0, $arrayidx584 = 0, $arrayidx598 = 0, $arrayidx6 = 0, $arrayidx72 = 0, $arrayidx92 = 0, $call = 0, $call122 = 0, $call154 = 0, $call405 = 0, $call509 = 0, $call544 = 0, $call73 = 0, $channel_state = 0, $cmp = 0, $cmp101 = 0, $cmp104 = 0, $cmp107 = 0, $cmp11 = 0; var $cmp111 = 0, $cmp115 = 0, $cmp120 = 0, $cmp13 = 0, $cmp135 = 0, $cmp145 = 0, $cmp159 = 0, $cmp16 = 0, $cmp173 = 0, $cmp178 = 0, $cmp182 = 0, $cmp190 = 0, $cmp192 = 0, $cmp198 = 0, $cmp20 = 0, $cmp202 = 0, $cmp22 = 0, $cmp229 = 0, $cmp232 = 0, $cmp235 = 0; var $cmp243 = 0, $cmp247 = 0, $cmp255 = 0, $cmp258 = 0, $cmp266 = 0, $cmp27 = 0, $cmp273 = 0, $cmp287 = 0, $cmp290 = 0, $cmp293 = 0, $cmp317 = 0, $cmp340 = 0, $cmp348 = 0, $cmp35 = 0, $cmp351 = 0, $cmp359 = 0, $cmp366 = 0, $cmp369 = 0, $cmp378 = 0, $cmp382 = 0; var $cmp392 = 0, $cmp4 = 0, $cmp419 = 0, $cmp423 = 0, $cmp43 = 0, $cmp450 = 0, $cmp458 = 0, $cmp494 = 0, $cmp502 = 0, $cmp51 = 0, $cmp512 = 0, $cmp516 = 0, $cmp531 = 0, $cmp535 = 0, $cmp547 = 0, $cmp559 = 0, $cmp575 = 0, $cmp589 = 0, $cmp594 = 0, $cmp65 = 0; var $cmp67 = 0, $cmp69 = 0, $cmp79 = 0, $cmp82 = 0, $cmp85 = 0, $cmp87 = 0, $cmp9 = 0, $cond = 0, $cond390 = 0, $cond455 = 0, $cond472 = 0, $condCoding = 0, $condCoding374 = 0, $conv = 0, $conv217 = 0, $conv279 = 0, $conv318 = 0, $conv446 = 0, $conv447 = 0, $decControl$addr = 0; var $decState$addr = 0, $decode_only_middle = 0, $delay_stack_alloc = 0, $div = 0, $first_frame_after_reset = 0, $frame_length = 0, $frame_length322 = 0, $frame_length335 = 0, $frame_length467 = 0, $frame_length478 = 0, $frame_length486 = 0, $fs_kHz = 0, $fs_kHz431 = 0, $fs_kHz445 = 0, $fs_kHz581 = 0, $fs_kHz_dec = 0, $has_side = 0, $i = 0, $inc = 0, $inc126 = 0; var $inc131 = 0, $inc166 = 0, $inc171 = 0, $inc221 = 0, $inc224 = 0, $inc282 = 0, $inc414 = 0, $inc416 = 0, $inc524 = 0, $inc528 = 0, $inc555 = 0, $inc569 = 0, $inc601 = 0, $inc76 = 0, $indices = 0, $indices216 = 0, $internalSampleRate = 0, $internalSampleRate311 = 0, $internalSampleRate63 = 0, $lagPrev = 0; var $lagPrev579 = 0, $land$ext = 0, $lnot = 0, $lnot$ext = 0, $lor$ext = 0, $lostFlag$addr = 0, $mul = 0, $mul313 = 0, $mul316 = 0, $mul324 = 0, $mul410 = 0, $mul443 = 0, $mul448 = 0, $mul469 = 0, $mul480 = 0, $mul481 = 0, $mul482 = 0, $mul520 = 0, $mul551 = 0, $mul562 = 0; var $mul565 = 0, $mul585 = 0, $mult_tab = 0, $n = 0, $nChannelsAPI84 = 0, $nChannelsAPI97 = 0, $nChannelsInternal = 0, $nChannelsInternal10 = 0, $nChannelsInternal114 = 0, $nChannelsInternal134 = 0, $nChannelsInternal181 = 0, $nChannelsInternal189 = 0, $nChannelsInternal19 = 0, $nChannelsInternal2 = 0, $nChannelsInternal228 = 0, $nChannelsInternal286 = 0, $nChannelsInternal3 = 0, $nChannelsInternal312 = 0, $nChannelsInternal320 = 0, $nChannelsInternal347 = 0; var $nChannelsInternal365 = 0, $nChannelsInternal422 = 0, $nChannelsInternal465 = 0, $nChannelsInternal476 = 0, $nChannelsInternal493 = 0, $nChannelsInternal499 = 0, $nChannelsInternal499$sink = 0, $nChannelsInternal534 = 0, $nChannelsInternal593 = 0, $nChannelsInternal8 = 0, $nChannelsInternal81 = 0, $nChannelsInternal86 = 0, $nChannelsInternal98 = 0, $nChannelsInternal99 = 0, $nFramesDecoded = 0, $nFramesDecoded110 = 0, $nFramesDecoded15 = 0, $nFramesDecoded241 = 0, $nFramesDecoded253 = 0, $nFramesDecoded264 = 0; var $nFramesDecoded357 = 0, $nFramesDecoded376 = 0, $nFramesDecoded413 = 0, $nFramesPerPacket = 0, $nFramesPerPacket119 = 0, $nFramesPerPacket144 = 0, $nFramesPerPacket152 = 0, $nFramesPerPacket158 = 0, $nFramesPerPacket177 = 0, $nFramesPerPacket30 = 0, $nFramesPerPacket38 = 0, $nFramesPerPacket46 = 0, $nFramesPerPacket54 = 0, $nSamplesOut$addr = 0, $nSamplesOutDec = 0, $nb_subfr32 = 0, $newPacketFlag$addr = 0, $or$cond = 0, $or$cond1 = 0, $or$cond2 = 0; var $or$cond3 = 0, $or$cond4 = 0, $or$cond5 = 0, $outBuf = 0, $payloadSize_ms = 0, $payloadSize_ms26 = 0, $payloadSize_ms34 = 0, $payloadSize_ms42 = 0, $payloadSize_ms50 = 0, $prevPitchLag587 = 0, $prevSignalType = 0, $prevSignalType574 = 0, $prev_decode_only_middle = 0, $prev_decode_only_middle345 = 0, $prev_decode_only_middle395 = 0, $prev_decode_only_middle604 = 0, $psDec = 0, $psRangeDec$addr = 0, $pulses = 0, $quantOffsetType = 0; var $resample_out_ptr = 0, $resampler_state = 0, $resampler_state506 = 0, $resampler_state541 = 0, $resampler_state94 = 0, $ret = 0, $retval = 0, $sLPC_Q14_buf = 0, $sMid = 0, $sMid437 = 0, $sSide = 0, $sStereo = 0, $sStereo276 = 0, $sStereo426 = 0, $sStereo434 = 0, $sStereo436 = 0, $sStereo90 = 0, $samplesOut$addr = 0, $samplesOut1_tmp = 0, $saved_stack = 0; var $shr = 0, $shr161 = 0, $shr583 = 0, $signalType = 0, $stereo_to_mono = 0, $sub = 0, $sub$ptr$div = 0, $sub$ptr$lhs$cast = 0, $sub$ptr$rhs$cast = 0, $sub$ptr$sub = 0, $sub206 = 0, $sub377 = 0, $sub387 = 0, $sub582 = 0, $tobool = 0, $tobool141 = 0, $tobool187 = 0, $tobool208 = 0, $tobool319 = 0, $tobool325 = 0; var $tobool343 = 0, $tobool346 = 0, $tobool372 = 0, $tobool389 = 0, $tobool396 = 0, $tobool463 = 0, $tobool474 = 0, $tobool538 = 0, $vla = 0, $vla$alloca_mul = 0, $vla$sink = 0, $vla456 = 0, $vla456$alloca_mul = 0, $vla473 = 0, $vla473$alloca_mul = 0, dest = 0, label = 0, sp = 0, stop = 0; sp = STACKTOP; STACKTOP = STACKTOP + 784|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(784|0); $decode_only_middle = sp + 84|0; $nSamplesOutDec = sp + 76|0; $samplesOut1_tmp = sp + 64|0; $MS_pred_Q13 = sp + 56|0; $pulses = sp + 136|0; $mult_tab = sp; $decState$addr = $decState; $decControl$addr = $decControl; $lostFlag$addr = $lostFlag; $newPacketFlag$addr = $newPacketFlag; $psRangeDec$addr = $psRangeDec; $samplesOut$addr = $samplesOut; $nSamplesOut$addr = $nSamplesOut; $arch$addr = $arch; HEAP32[$decode_only_middle>>2] = 0; $ret = 0; ;HEAP32[$MS_pred_Q13>>2]=0|0;HEAP32[$MS_pred_Q13+4>>2]=0|0; $0 = $decState$addr; $psDec = $0; $1 = $psDec; $channel_state = $1; $2 = $newPacketFlag$addr; $tobool = ($2|0)!=(0); L1: do { if ($tobool) { $n = 0; while(1) { $3 = $n; $4 = $decControl$addr; $nChannelsInternal = ((($4)) + 4|0); $5 = HEAP32[$nChannelsInternal>>2]|0; $cmp = ($3|0)<($5|0); if (!($cmp)) { break L1; } $6 = $channel_state; $7 = $n; $arrayidx = (($6) + (($7*4264)|0)|0); $nFramesDecoded = ((($arrayidx)) + 2388|0); HEAP32[$nFramesDecoded>>2] = 0; $8 = $n; $inc = (($8) + 1)|0; $n = $inc; } } } while(0); $9 = $decControl$addr; $nChannelsInternal2 = ((($9)) + 4|0); $10 = HEAP32[$nChannelsInternal2>>2]|0; $11 = $psDec; $nChannelsInternal3 = ((($11)) + 8544|0); $12 = HEAP32[$nChannelsInternal3>>2]|0; $cmp4 = ($10|0)>($12|0); if ($cmp4) { $13 = $channel_state; $arrayidx6 = ((($13)) + 4264|0); $call = (_silk_init_decoder($arrayidx6)|0); $14 = $ret; $add = (($14) + ($call))|0; $ret = $add; } $15 = $decControl$addr; $nChannelsInternal8 = ((($15)) + 4|0); $16 = HEAP32[$nChannelsInternal8>>2]|0; $cmp9 = ($16|0)==(1); if ($cmp9) { $17 = $psDec; $nChannelsInternal10 = ((($17)) + 8544|0); $18 = HEAP32[$nChannelsInternal10>>2]|0; $cmp11 = ($18|0)==(2); if ($cmp11) { $19 = $decControl$addr; $internalSampleRate = ((($19)) + 12|0); $20 = HEAP32[$internalSampleRate>>2]|0; $21 = $channel_state; $fs_kHz = ((($21)) + 2316|0); $22 = HEAP32[$fs_kHz>>2]|0; $mul = ($22*1000)|0; $cmp13 = ($20|0)==($mul|0); $23 = $cmp13; } else { $23 = 0; } } else { $23 = 0; } $land$ext = $23&1; $stereo_to_mono = $land$ext; $24 = $channel_state; $nFramesDecoded15 = ((($24)) + 2388|0); $25 = HEAP32[$nFramesDecoded15>>2]|0; $cmp16 = ($25|0)==(0); L14: do { if ($cmp16) { $n = 0; L16: while(1) { $26 = $n; $27 = $decControl$addr; $nChannelsInternal19 = ((($27)) + 4|0); $28 = HEAP32[$nChannelsInternal19>>2]|0; $cmp20 = ($26|0)<($28|0); if (!($cmp20)) { break L14; } $29 = $decControl$addr; $payloadSize_ms = ((($29)) + 16|0); $30 = HEAP32[$payloadSize_ms>>2]|0; $cmp22 = ($30|0)==(0); do { if ($cmp22) { $31 = $channel_state; $32 = $n; $arrayidx24 = (($31) + (($32*4264)|0)|0); $nFramesPerPacket = ((($arrayidx24)) + 2392|0); HEAP32[$nFramesPerPacket>>2] = 1; $33 = $channel_state; $34 = $n; $arrayidx25 = (($33) + (($34*4264)|0)|0); $$sink8 = 2;$arrayidx31$sink = $arrayidx25; } else { $35 = $decControl$addr; $payloadSize_ms26 = ((($35)) + 16|0); $36 = HEAP32[$payloadSize_ms26>>2]|0; $cmp27 = ($36|0)==(10); if ($cmp27) { $37 = $channel_state; $38 = $n; $arrayidx29 = (($37) + (($38*4264)|0)|0); $nFramesPerPacket30 = ((($arrayidx29)) + 2392|0); HEAP32[$nFramesPerPacket30>>2] = 1; $39 = $channel_state; $40 = $n; $arrayidx31 = (($39) + (($40*4264)|0)|0); $$sink8 = 2;$arrayidx31$sink = $arrayidx31; break; } $41 = $decControl$addr; $payloadSize_ms34 = ((($41)) + 16|0); $42 = HEAP32[$payloadSize_ms34>>2]|0; $cmp35 = ($42|0)==(20); if ($cmp35) { $43 = $channel_state; $44 = $n; $arrayidx37 = (($43) + (($44*4264)|0)|0); $nFramesPerPacket38 = ((($arrayidx37)) + 2392|0); HEAP32[$nFramesPerPacket38>>2] = 1; $45 = $channel_state; $46 = $n; $arrayidx39 = (($45) + (($46*4264)|0)|0); $$sink8 = 4;$arrayidx31$sink = $arrayidx39; break; } $47 = $decControl$addr; $payloadSize_ms42 = ((($47)) + 16|0); $48 = HEAP32[$payloadSize_ms42>>2]|0; $cmp43 = ($48|0)==(40); if ($cmp43) { $49 = $channel_state; $50 = $n; $arrayidx45 = (($49) + (($50*4264)|0)|0); $nFramesPerPacket46 = ((($arrayidx45)) + 2392|0); HEAP32[$nFramesPerPacket46>>2] = 2; $51 = $channel_state; $52 = $n; $arrayidx47 = (($51) + (($52*4264)|0)|0); $$sink8 = 4;$arrayidx31$sink = $arrayidx47; break; } $53 = $decControl$addr; $payloadSize_ms50 = ((($53)) + 16|0); $54 = HEAP32[$payloadSize_ms50>>2]|0; $cmp51 = ($54|0)==(60); if (!($cmp51)) { label = 23; break L16; } $55 = $channel_state; $56 = $n; $arrayidx53 = (($55) + (($56*4264)|0)|0); $nFramesPerPacket54 = ((($arrayidx53)) + 2392|0); HEAP32[$nFramesPerPacket54>>2] = 3; $57 = $channel_state; $58 = $n; $arrayidx55 = (($57) + (($58*4264)|0)|0); $$sink8 = 4;$arrayidx31$sink = $arrayidx55; } } while(0); $nb_subfr32 = ((($arrayidx31$sink)) + 2324|0); HEAP32[$nb_subfr32>>2] = $$sink8; $59 = $decControl$addr; $internalSampleRate63 = ((($59)) + 12|0); $60 = HEAP32[$internalSampleRate63>>2]|0; $shr = $60 >> 10; $add64 = (($shr) + 1)|0; $fs_kHz_dec = $add64; $61 = $fs_kHz_dec; $cmp65 = ($61|0)!=(8); $62 = $fs_kHz_dec; $cmp67 = ($62|0)!=(12); $or$cond = $cmp65 & $cmp67; $63 = $fs_kHz_dec; $cmp69 = ($63|0)!=(16); $or$cond1 = $or$cond & $cmp69; if ($or$cond1) { label = 25; break; } $64 = $channel_state; $65 = $n; $arrayidx72 = (($64) + (($65*4264)|0)|0); $66 = $fs_kHz_dec; $67 = $decControl$addr; $API_sampleRate = ((($67)) + 8|0); $68 = HEAP32[$API_sampleRate>>2]|0; $call73 = (_silk_decoder_set_fs($arrayidx72,$66,$68)|0); $69 = $ret; $add74 = (($69) + ($call73))|0; $ret = $add74; $70 = $n; $inc76 = (($70) + 1)|0; $n = $inc76; } if ((label|0) == 23) { $retval = -203; $399 = $retval; STACKTOP = sp;return ($399|0); } else if ((label|0) == 25) { $retval = -200; $399 = $retval; STACKTOP = sp;return ($399|0); } } } while(0); $71 = $decControl$addr; $72 = HEAP32[$71>>2]|0; $cmp79 = ($72|0)==(2); do { if ($cmp79) { $73 = $decControl$addr; $nChannelsInternal81 = ((($73)) + 4|0); $74 = HEAP32[$nChannelsInternal81>>2]|0; $cmp82 = ($74|0)==(2); if ($cmp82) { $75 = $psDec; $nChannelsAPI84 = ((($75)) + 8540|0); $76 = HEAP32[$nChannelsAPI84>>2]|0; $cmp85 = ($76|0)==(1); if (!($cmp85)) { $77 = $psDec; $nChannelsInternal86 = ((($77)) + 8544|0); $78 = HEAP32[$nChannelsInternal86>>2]|0; $cmp87 = ($78|0)==(1); if (!($cmp87)) { break; } } $79 = $psDec; $sStereo = ((($79)) + 8528|0); ;HEAP32[$sStereo>>2]=0|0; $80 = $psDec; $sStereo90 = ((($80)) + 8528|0); $sSide = ((($sStereo90)) + 8|0); ;HEAP32[$sSide>>2]=0|0; $81 = $channel_state; $arrayidx92 = ((($81)) + 4264|0); $resampler_state = ((($arrayidx92)) + 2432|0); $82 = $channel_state; $resampler_state94 = ((($82)) + 2432|0); _memcpy(($resampler_state|0),($resampler_state94|0),300)|0; } } } while(0); $83 = $decControl$addr; $84 = HEAP32[$83>>2]|0; $85 = $psDec; $nChannelsAPI97 = ((($85)) + 8540|0); HEAP32[$nChannelsAPI97>>2] = $84; $86 = $decControl$addr; $nChannelsInternal98 = ((($86)) + 4|0); $87 = HEAP32[$nChannelsInternal98>>2]|0; $88 = $psDec; $nChannelsInternal99 = ((($88)) + 8544|0); HEAP32[$nChannelsInternal99>>2] = $87; $89 = $decControl$addr; $API_sampleRate100 = ((($89)) + 8|0); $90 = HEAP32[$API_sampleRate100>>2]|0; $cmp101 = ($90|0)>(48000); if (!($cmp101)) { $91 = $decControl$addr; $API_sampleRate103 = ((($91)) + 8|0); $92 = HEAP32[$API_sampleRate103>>2]|0; $cmp104 = ($92|0)<(8000); if (!($cmp104)) { $94 = $lostFlag$addr; $cmp107 = ($94|0)!=(1); L50: do { if ($cmp107) { $95 = $channel_state; $nFramesDecoded110 = ((($95)) + 2388|0); $96 = HEAP32[$nFramesDecoded110>>2]|0; $cmp111 = ($96|0)==(0); if ($cmp111) { $n = 0; while(1) { $97 = $n; $98 = $decControl$addr; $nChannelsInternal114 = ((($98)) + 4|0); $99 = HEAP32[$nChannelsInternal114>>2]|0; $cmp115 = ($97|0)<($99|0); if (!($cmp115)) { break; } $i = 0; while(1) { $100 = $i; $101 = $channel_state; $102 = $n; $arrayidx118 = (($101) + (($102*4264)|0)|0); $nFramesPerPacket119 = ((($arrayidx118)) + 2392|0); $103 = HEAP32[$nFramesPerPacket119>>2]|0; $cmp120 = ($100|0)<($103|0); $104 = $psRangeDec$addr; $call122 = (_ec_dec_bit_logp($104,1)|0); $105 = $channel_state; $106 = $n; $arrayidx123 = (($105) + (($106*4264)|0)|0); if (!($cmp120)) { break; } $VAD_flags = ((($arrayidx123)) + 2404|0); $107 = $i; $arrayidx124 = (($VAD_flags) + ($107<<2)|0); HEAP32[$arrayidx124>>2] = $call122; $108 = $i; $inc126 = (($108) + 1)|0; $i = $inc126; } $LBRR_flag = ((($arrayidx123)) + 2416|0); HEAP32[$LBRR_flag>>2] = $call122; $109 = $n; $inc131 = (($109) + 1)|0; $n = $inc131; } $n = 0; while(1) { $110 = $n; $111 = $decControl$addr; $nChannelsInternal134 = ((($111)) + 4|0); $112 = HEAP32[$nChannelsInternal134>>2]|0; $cmp135 = ($110|0)<($112|0); if (!($cmp135)) { break; } $113 = $channel_state; $114 = $n; $arrayidx137 = (($113) + (($114*4264)|0)|0); $LBRR_flags = ((($arrayidx137)) + 2420|0); ;HEAP32[$LBRR_flags>>2]=0|0;HEAP32[$LBRR_flags+4>>2]=0|0;HEAP32[$LBRR_flags+8>>2]=0|0; $115 = $channel_state; $116 = $n; $arrayidx139 = (($115) + (($116*4264)|0)|0); $LBRR_flag140 = ((($arrayidx139)) + 2416|0); $117 = HEAP32[$LBRR_flag140>>2]|0; $tobool141 = ($117|0)!=(0); L64: do { if ($tobool141) { $118 = $channel_state; $119 = $n; $arrayidx143 = (($118) + (($119*4264)|0)|0); $nFramesPerPacket144 = ((($arrayidx143)) + 2392|0); $120 = HEAP32[$nFramesPerPacket144>>2]|0; $cmp145 = ($120|0)==(1); if ($cmp145) { $121 = $channel_state; $122 = $n; $arrayidx147 = (($121) + (($122*4264)|0)|0); $LBRR_flags148 = ((($arrayidx147)) + 2420|0); HEAP32[$LBRR_flags148>>2] = 1; break; } $123 = $psRangeDec$addr; $124 = $channel_state; $125 = $n; $arrayidx151 = (($124) + (($125*4264)|0)|0); $nFramesPerPacket152 = ((($arrayidx151)) + 2392|0); $126 = HEAP32[$nFramesPerPacket152>>2]|0; $sub = (($126) - 2)|0; $arrayidx153 = (15280 + ($sub<<2)|0); $127 = HEAP32[$arrayidx153>>2]|0; $call154 = (_ec_dec_icdf($123,$127,8)|0); $add155 = (($call154) + 1)|0; $LBRR_symbol = $add155; $i = 0; while(1) { $128 = $i; $129 = $channel_state; $130 = $n; $arrayidx157 = (($129) + (($130*4264)|0)|0); $nFramesPerPacket158 = ((($arrayidx157)) + 2392|0); $131 = HEAP32[$nFramesPerPacket158>>2]|0; $cmp159 = ($128|0)<($131|0); if (!($cmp159)) { break L64; } $132 = $LBRR_symbol; $133 = $i; $shr161 = $132 >> $133; $and = $shr161 & 1; $134 = $channel_state; $135 = $n; $arrayidx162 = (($134) + (($135*4264)|0)|0); $LBRR_flags163 = ((($arrayidx162)) + 2420|0); $136 = $i; $arrayidx164 = (($LBRR_flags163) + ($136<<2)|0); HEAP32[$arrayidx164>>2] = $and; $137 = $i; $inc166 = (($137) + 1)|0; $i = $inc166; } } } while(0); $138 = $n; $inc171 = (($138) + 1)|0; $n = $inc171; } $139 = $lostFlag$addr; $cmp173 = ($139|0)==(0); if ($cmp173) { $i = 0; while(1) { $140 = $i; $141 = $channel_state; $nFramesPerPacket177 = ((($141)) + 2392|0); $142 = HEAP32[$nFramesPerPacket177>>2]|0; $cmp178 = ($140|0)<($142|0); if (!($cmp178)) { break L50; } $n = 0; while(1) { $143 = $n; $144 = $decControl$addr; $nChannelsInternal181 = ((($144)) + 4|0); $145 = HEAP32[$nChannelsInternal181>>2]|0; $cmp182 = ($143|0)<($145|0); if (!($cmp182)) { break; } $146 = $channel_state; $147 = $n; $arrayidx184 = (($146) + (($147*4264)|0)|0); $LBRR_flags185 = ((($arrayidx184)) + 2420|0); $148 = $i; $arrayidx186 = (($LBRR_flags185) + ($148<<2)|0); $149 = HEAP32[$arrayidx186>>2]|0; $tobool187 = ($149|0)!=(0); if ($tobool187) { $150 = $decControl$addr; $nChannelsInternal189 = ((($150)) + 4|0); $151 = HEAP32[$nChannelsInternal189>>2]|0; $cmp190 = ($151|0)==(2); $152 = $n; $cmp192 = ($152|0)==(0); $or$cond2 = $cmp190 & $cmp192; do { if ($or$cond2) { $153 = $psRangeDec$addr; _silk_stereo_decode_pred($153,$MS_pred_Q13); $154 = $channel_state; $arrayidx195 = ((($154)) + 4264|0); $LBRR_flags196 = ((($arrayidx195)) + 2420|0); $155 = $i; $arrayidx197 = (($LBRR_flags196) + ($155<<2)|0); $156 = HEAP32[$arrayidx197>>2]|0; $cmp198 = ($156|0)==(0); if (!($cmp198)) { break; } $157 = $psRangeDec$addr; _silk_stereo_decode_mid_only($157,$decode_only_middle); } } while(0); $158 = $i; $cmp202 = ($158|0)>(0); do { if ($cmp202) { $159 = $channel_state; $160 = $n; $arrayidx204 = (($159) + (($160*4264)|0)|0); $LBRR_flags205 = ((($arrayidx204)) + 2420|0); $161 = $i; $sub206 = (($161) - 1)|0; $arrayidx207 = (($LBRR_flags205) + ($sub206<<2)|0); $162 = HEAP32[$arrayidx207>>2]|0; $tobool208 = ($162|0)!=(0); if (!($tobool208)) { label = 64; break; } $condCoding = 2; } else { label = 64; } } while(0); if ((label|0) == 64) { label = 0; $condCoding = 0; } $163 = $channel_state; $164 = $n; $arrayidx212 = (($163) + (($164*4264)|0)|0); $165 = $psRangeDec$addr; $166 = $i; $167 = $condCoding; _silk_decode_indices($arrayidx212,$165,$166,1,$167); $168 = $psRangeDec$addr; $169 = $channel_state; $170 = $n; $arrayidx214 = (($169) + (($170*4264)|0)|0); $indices = ((($arrayidx214)) + 2736|0); $signalType = ((($indices)) + 29|0); $171 = HEAP8[$signalType>>0]|0; $conv = $171 << 24 >> 24; $172 = $channel_state; $173 = $n; $arrayidx215 = (($172) + (($173*4264)|0)|0); $indices216 = ((($arrayidx215)) + 2736|0); $quantOffsetType = ((($indices216)) + 30|0); $174 = HEAP8[$quantOffsetType>>0]|0; $conv217 = $174 << 24 >> 24; $175 = $channel_state; $176 = $n; $arrayidx218 = (($175) + (($176*4264)|0)|0); $frame_length = ((($arrayidx218)) + 2328|0); $177 = HEAP32[$frame_length>>2]|0; _silk_decode_pulses($168,$pulses,$conv,$conv217,$177); } $178 = $n; $inc221 = (($178) + 1)|0; $n = $inc221; } $179 = $i; $inc224 = (($179) + 1)|0; $i = $inc224; } } } } } while(0); $180 = $decControl$addr; $nChannelsInternal228 = ((($180)) + 4|0); $181 = HEAP32[$nChannelsInternal228>>2]|0; $cmp229 = ($181|0)==(2); L96: do { if ($cmp229) { $182 = $lostFlag$addr; $cmp232 = ($182|0)==(0); do { if (!($cmp232)) { $183 = $lostFlag$addr; $cmp235 = ($183|0)==(2); if ($cmp235) { $184 = $channel_state; $LBRR_flags239 = ((($184)) + 2420|0); $185 = $channel_state; $nFramesDecoded241 = ((($185)) + 2388|0); $186 = HEAP32[$nFramesDecoded241>>2]|0; $arrayidx242 = (($LBRR_flags239) + ($186<<2)|0); $187 = HEAP32[$arrayidx242>>2]|0; $cmp243 = ($187|0)==(1); if ($cmp243) { break; } } $n = 0; while(1) { $200 = $n; $cmp273 = ($200|0)<(2); if (!($cmp273)) { break L96; } $201 = $psDec; $sStereo276 = ((($201)) + 8528|0); $202 = $n; $arrayidx278 = (($sStereo276) + ($202<<1)|0); $203 = HEAP16[$arrayidx278>>1]|0; $conv279 = $203 << 16 >> 16; $204 = $n; $arrayidx280 = (($MS_pred_Q13) + ($204<<2)|0); HEAP32[$arrayidx280>>2] = $conv279; $205 = $n; $inc282 = (($205) + 1)|0; $n = $inc282; } } } while(0); $188 = $psRangeDec$addr; _silk_stereo_decode_pred($188,$MS_pred_Q13); $189 = $lostFlag$addr; $cmp247 = ($189|0)==(0); if ($cmp247) { $190 = $channel_state; $arrayidx250 = ((($190)) + 4264|0); $VAD_flags251 = ((($arrayidx250)) + 2404|0); $191 = $channel_state; $nFramesDecoded253 = ((($191)) + 2388|0); $192 = HEAP32[$nFramesDecoded253>>2]|0; $arrayidx254 = (($VAD_flags251) + ($192<<2)|0); $193 = HEAP32[$arrayidx254>>2]|0; $cmp255 = ($193|0)==(0); if (!($cmp255)) { label = 74; } } else { label = 74; } do { if ((label|0) == 74) { $194 = $lostFlag$addr; $cmp258 = ($194|0)==(2); if ($cmp258) { $195 = $channel_state; $arrayidx261 = ((($195)) + 4264|0); $LBRR_flags262 = ((($arrayidx261)) + 2420|0); $196 = $channel_state; $nFramesDecoded264 = ((($196)) + 2388|0); $197 = HEAP32[$nFramesDecoded264>>2]|0; $arrayidx265 = (($LBRR_flags262) + ($197<<2)|0); $198 = HEAP32[$arrayidx265>>2]|0; $cmp266 = ($198|0)==(0); if ($cmp266) { break; } } HEAP32[$decode_only_middle>>2] = 0; break L96; } } while(0); $199 = $psRangeDec$addr; _silk_stereo_decode_mid_only($199,$decode_only_middle); } } while(0); $206 = $decControl$addr; $nChannelsInternal286 = ((($206)) + 4|0); $207 = HEAP32[$nChannelsInternal286>>2]|0; $cmp287 = ($207|0)==(2); $208 = HEAP32[$decode_only_middle>>2]|0; $cmp290 = ($208|0)==(0); $or$cond3 = $cmp287 & $cmp290; if ($or$cond3) { $209 = $psDec; $prev_decode_only_middle = ((($209)) + 8548|0); $210 = HEAP32[$prev_decode_only_middle>>2]|0; $cmp293 = ($210|0)==(1); if ($cmp293) { $211 = $psDec; $arrayidx297 = ((($211)) + 4264|0); $outBuf = ((($arrayidx297)) + 1348|0); _memset(($outBuf|0),0,960)|0; $212 = $psDec; $arrayidx300 = ((($212)) + 4264|0); $sLPC_Q14_buf = ((($arrayidx300)) + 1284|0); dest=$sLPC_Q14_buf; stop=dest+64|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); $213 = $psDec; $arrayidx303 = ((($213)) + 4264|0); $lagPrev = ((($arrayidx303)) + 2308|0); HEAP32[$lagPrev>>2] = 100; $214 = $psDec; $arrayidx305 = ((($214)) + 4264|0); $LastGainIndex = ((($arrayidx305)) + 2312|0); HEAP8[$LastGainIndex>>0] = 10; $215 = $psDec; $arrayidx307 = ((($215)) + 4264|0); $prevSignalType = ((($arrayidx307)) + 4164|0); HEAP32[$prevSignalType>>2] = 0; $216 = $psDec; $arrayidx309 = ((($216)) + 4264|0); $first_frame_after_reset = ((($arrayidx309)) + 2376|0); HEAP32[$first_frame_after_reset>>2] = 1; } } $217 = $decControl$addr; $internalSampleRate311 = ((($217)) + 12|0); $218 = HEAP32[$internalSampleRate311>>2]|0; $219 = $decControl$addr; $nChannelsInternal312 = ((($219)) + 4|0); $220 = HEAP32[$nChannelsInternal312>>2]|0; $mul313 = Math_imul($218, $220)|0; $221 = $decControl$addr; $API_sampleRate314 = ((($221)) + 8|0); $222 = HEAP32[$API_sampleRate314>>2]|0; $223 = $decControl$addr; $224 = HEAP32[$223>>2]|0; $mul316 = Math_imul($222, $224)|0; $cmp317 = ($mul313|0)<($mul316|0); $conv318 = $cmp317&1; $delay_stack_alloc = $conv318; $225 = $delay_stack_alloc; $tobool319 = ($225|0)!=(0); if ($tobool319) { $cond = 1; } else { $226 = $decControl$addr; $nChannelsInternal320 = ((($226)) + 4|0); $227 = HEAP32[$nChannelsInternal320>>2]|0; $228 = $channel_state; $frame_length322 = ((($228)) + 2328|0); $229 = HEAP32[$frame_length322>>2]|0; $add323 = (($229) + 2)|0; $mul324 = Math_imul($227, $add323)|0; $cond = $mul324; } $230 = (_llvm_stacksave()|0); $saved_stack = $230; $vla$alloca_mul = $cond<<1; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $231 = $delay_stack_alloc; $tobool325 = ($231|0)!=(0); if ($tobool325) { $232 = $samplesOut$addr; HEAP32[$samplesOut1_tmp>>2] = $232; $233 = $samplesOut$addr; $234 = $channel_state; $$sink = $234;$vla$sink = $233; } else { HEAP32[$samplesOut1_tmp>>2] = $vla; $235 = $channel_state; $$sink = $235;$vla$sink = $vla; } $frame_length335 = ((($$sink)) + 2328|0); $236 = HEAP32[$frame_length335>>2]|0; $add$ptr336 = (($vla$sink) + ($236<<1)|0); $add$ptr337 = ((($add$ptr336)) + 4|0); $arrayidx338 = ((($samplesOut1_tmp)) + 4|0); HEAP32[$arrayidx338>>2] = $add$ptr337; $237 = $lostFlag$addr; $cmp340 = ($237|0)==(0); if ($cmp340) { $238 = HEAP32[$decode_only_middle>>2]|0; $tobool343 = ($238|0)!=(0); $lnot = $tobool343 ^ 1; $lnot$ext = $lnot&1; $has_side = $lnot$ext; } else { $239 = $psDec; $prev_decode_only_middle345 = ((($239)) + 8548|0); $240 = HEAP32[$prev_decode_only_middle345>>2]|0; $tobool346 = ($240|0)!=(0); if ($tobool346) { $241 = $decControl$addr; $nChannelsInternal347 = ((($241)) + 4|0); $242 = HEAP32[$nChannelsInternal347>>2]|0; $cmp348 = ($242|0)==(2); $243 = $lostFlag$addr; $cmp351 = ($243|0)==(2); $or$cond4 = $cmp348 & $cmp351; if ($or$cond4) { $244 = $channel_state; $arrayidx354 = ((($244)) + 4264|0); $LBRR_flags355 = ((($arrayidx354)) + 2420|0); $245 = $channel_state; $arrayidx356 = ((($245)) + 4264|0); $nFramesDecoded357 = ((($arrayidx356)) + 2388|0); $246 = HEAP32[$nFramesDecoded357>>2]|0; $arrayidx358 = (($LBRR_flags355) + ($246<<2)|0); $247 = HEAP32[$arrayidx358>>2]|0; $cmp359 = ($247|0)==(1); $248 = $cmp359; } else { $248 = 0; } } else { $248 = 1; } $lor$ext = $248&1; $has_side = $lor$ext; } $n = 0; while(1) { $249 = $n; $250 = $decControl$addr; $nChannelsInternal365 = ((($250)) + 4|0); $251 = HEAP32[$nChannelsInternal365>>2]|0; $cmp366 = ($249|0)<($251|0); if (!($cmp366)) { break; } $252 = $n; $cmp369 = ($252|0)==(0); $253 = $has_side; $tobool372 = ($253|0)!=(0); $or$cond5 = $cmp369 | $tobool372; if ($or$cond5) { $254 = $channel_state; $nFramesDecoded376 = ((($254)) + 2388|0); $255 = HEAP32[$nFramesDecoded376>>2]|0; $256 = $n; $sub377 = (($255) - ($256))|0; $FrameIndex = $sub377; $257 = $FrameIndex; $cmp378 = ($257|0)<=(0); L140: do { if ($cmp378) { $condCoding374 = 0; } else { $258 = $lostFlag$addr; $cmp382 = ($258|0)==(2); if ($cmp382) { $259 = $channel_state; $260 = $n; $arrayidx385 = (($259) + (($260*4264)|0)|0); $LBRR_flags386 = ((($arrayidx385)) + 2420|0); $261 = $FrameIndex; $sub387 = (($261) - 1)|0; $arrayidx388 = (($LBRR_flags386) + ($sub387<<2)|0); $262 = HEAP32[$arrayidx388>>2]|0; $tobool389 = ($262|0)!=(0); $cond390 = $tobool389 ? 2 : 0; $condCoding374 = $cond390; break; } $263 = $n; $cmp392 = ($263|0)>(0); do { if ($cmp392) { $264 = $psDec; $prev_decode_only_middle395 = ((($264)) + 8548|0); $265 = HEAP32[$prev_decode_only_middle395>>2]|0; $tobool396 = ($265|0)!=(0); if (!($tobool396)) { break; } $condCoding374 = 1; break L140; } } while(0); $condCoding374 = 2; } } while(0); $266 = $channel_state; $267 = $n; $arrayidx402 = (($266) + (($267*4264)|0)|0); $268 = $psRangeDec$addr; $269 = $n; $arrayidx403 = (($samplesOut1_tmp) + ($269<<2)|0); $270 = HEAP32[$arrayidx403>>2]|0; $arrayidx404 = ((($270)) + 4|0); $271 = $lostFlag$addr; $272 = $condCoding374; $273 = $arch$addr; $call405 = (_silk_decode_frame($arrayidx402,$268,$arrayidx404,$nSamplesOutDec,$271,$272,$273)|0); $274 = $ret; $add406 = (($274) + ($call405))|0; $ret = $add406; } else { $275 = $n; $arrayidx408 = (($samplesOut1_tmp) + ($275<<2)|0); $276 = HEAP32[$arrayidx408>>2]|0; $arrayidx409 = ((($276)) + 4|0); $277 = HEAP32[$nSamplesOutDec>>2]|0; $mul410 = $277<<1; _memset(($arrayidx409|0),0,($mul410|0))|0; } $278 = $channel_state; $279 = $n; $arrayidx412 = (($278) + (($279*4264)|0)|0); $nFramesDecoded413 = ((($arrayidx412)) + 2388|0); $280 = HEAP32[$nFramesDecoded413>>2]|0; $inc414 = (($280) + 1)|0; HEAP32[$nFramesDecoded413>>2] = $inc414; $281 = $n; $inc416 = (($281) + 1)|0; $n = $inc416; } $282 = $decControl$addr; $283 = HEAP32[$282>>2]|0; $cmp419 = ($283|0)==(2); if ($cmp419) { $284 = $decControl$addr; $nChannelsInternal422 = ((($284)) + 4|0); $285 = HEAP32[$nChannelsInternal422>>2]|0; $cmp423 = ($285|0)==(2); if ($cmp423) { $286 = $psDec; $sStereo426 = ((($286)) + 8528|0); $287 = HEAP32[$samplesOut1_tmp>>2]|0; $arrayidx428 = ((($samplesOut1_tmp)) + 4|0); $288 = HEAP32[$arrayidx428>>2]|0; $289 = $channel_state; $fs_kHz431 = ((($289)) + 2316|0); $290 = HEAP32[$fs_kHz431>>2]|0; $291 = HEAP32[$nSamplesOutDec>>2]|0; _silk_stereo_MS_to_LR($sStereo426,$287,$288,$MS_pred_Q13,$290,$291); } else { label = 112; } } else { label = 112; } if ((label|0) == 112) { $292 = HEAP32[$samplesOut1_tmp>>2]|0; $293 = $psDec; $sStereo434 = ((($293)) + 8528|0); $sMid = ((($sStereo434)) + 4|0); ;HEAP16[$292>>1]=HEAP16[$sMid>>1]|0;HEAP16[$292+2>>1]=HEAP16[$sMid+2>>1]|0; $294 = $psDec; $sStereo436 = ((($294)) + 8528|0); $sMid437 = ((($sStereo436)) + 4|0); $295 = HEAP32[$samplesOut1_tmp>>2]|0; $296 = HEAP32[$nSamplesOutDec>>2]|0; $arrayidx440 = (($295) + ($296<<1)|0); ;HEAP16[$sMid437>>1]=HEAP16[$arrayidx440>>1]|0;HEAP16[$sMid437+2>>1]=HEAP16[$arrayidx440+2>>1]|0; } $297 = HEAP32[$nSamplesOutDec>>2]|0; $298 = $decControl$addr; $API_sampleRate442 = ((($298)) + 8|0); $299 = HEAP32[$API_sampleRate442>>2]|0; $mul443 = Math_imul($297, $299)|0; $300 = $channel_state; $fs_kHz445 = ((($300)) + 2316|0); $301 = HEAP32[$fs_kHz445>>2]|0; $conv446 = $301&65535; $conv447 = $conv446 << 16 >> 16; $mul448 = ($conv447*1000)|0; $div = (($mul443|0) / ($mul448|0))&-1; $302 = $nSamplesOut$addr; HEAP32[$302>>2] = $div; $303 = $decControl$addr; $304 = HEAP32[$303>>2]|0; $cmp450 = ($304|0)==(2); if ($cmp450) { $305 = $nSamplesOut$addr; $306 = HEAP32[$305>>2]|0; $cond455 = $306; } else { $cond455 = 1; } $vla456$alloca_mul = $cond455<<1; $vla456 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla456$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla456$alloca_mul)|0)+15)&-16)|0);; $307 = $decControl$addr; $308 = HEAP32[$307>>2]|0; $cmp458 = ($308|0)==(2); if ($cmp458) { $resample_out_ptr = $vla456; } else { $309 = $samplesOut$addr; $resample_out_ptr = $309; } $310 = $delay_stack_alloc; $tobool463 = ($310|0)!=(0); if ($tobool463) { $311 = $decControl$addr; $nChannelsInternal465 = ((($311)) + 4|0); $312 = HEAP32[$nChannelsInternal465>>2]|0; $313 = $channel_state; $frame_length467 = ((($313)) + 2328|0); $314 = HEAP32[$frame_length467>>2]|0; $add468 = (($314) + 2)|0; $mul469 = Math_imul($312, $add468)|0; $cond472 = $mul469; } else { $cond472 = 1; } $vla473$alloca_mul = $cond472<<1; $vla473 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla473$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla473$alloca_mul)|0)+15)&-16)|0);; $315 = $delay_stack_alloc; $tobool474 = ($315|0)!=(0); if ($tobool474) { $316 = $samplesOut$addr; $317 = $decControl$addr; $nChannelsInternal476 = ((($317)) + 4|0); $318 = HEAP32[$nChannelsInternal476>>2]|0; $319 = $channel_state; $frame_length478 = ((($319)) + 2328|0); $320 = HEAP32[$frame_length478>>2]|0; $add479 = (($320) + 2)|0; $mul480 = Math_imul($318, $add479)|0; $mul481 = $mul480<<1; $321 = $samplesOut$addr; $sub$ptr$lhs$cast = $vla473; $sub$ptr$rhs$cast = $321; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $sub$ptr$div = (($sub$ptr$sub|0) / 2)&-1; $mul482 = 0; $add483 = (($mul481) + ($mul482))|0; _memcpy(($vla473|0),($316|0),($add483|0))|0; HEAP32[$samplesOut1_tmp>>2] = $vla473; $322 = $channel_state; $frame_length486 = ((($322)) + 2328|0); $323 = HEAP32[$frame_length486>>2]|0; $add$ptr487 = (($vla473) + ($323<<1)|0); $add$ptr488 = ((($add$ptr487)) + 4|0); $arrayidx489 = ((($samplesOut1_tmp)) + 4|0); HEAP32[$arrayidx489>>2] = $add$ptr488; } $n = 0; while(1) { $324 = $n; $325 = $decControl$addr; $326 = HEAP32[$325>>2]|0; $327 = $decControl$addr; $nChannelsInternal493 = ((($327)) + 4|0); $328 = HEAP32[$nChannelsInternal493>>2]|0; $cmp494 = ($326|0)<($328|0); $329 = $decControl$addr; $nChannelsInternal499 = ((($329)) + 4|0); $nChannelsInternal499$sink = $cmp494 ? $329 : $nChannelsInternal499; $330 = HEAP32[$nChannelsInternal499$sink>>2]|0; $cmp502 = ($324|0)<($330|0); if (!($cmp502)) { break; } $331 = $channel_state; $332 = $n; $arrayidx505 = (($331) + (($332*4264)|0)|0); $resampler_state506 = ((($arrayidx505)) + 2432|0); $333 = $resample_out_ptr; $334 = $n; $arrayidx507 = (($samplesOut1_tmp) + ($334<<2)|0); $335 = HEAP32[$arrayidx507>>2]|0; $arrayidx508 = ((($335)) + 2|0); $336 = HEAP32[$nSamplesOutDec>>2]|0; $call509 = (_silk_resampler($resampler_state506,$333,$arrayidx508,$336)|0); $337 = $ret; $add510 = (($337) + ($call509))|0; $ret = $add510; $338 = $decControl$addr; $339 = HEAP32[$338>>2]|0; $cmp512 = ($339|0)==(2); L176: do { if ($cmp512) { $i = 0; while(1) { $340 = $i; $341 = $nSamplesOut$addr; $342 = HEAP32[$341>>2]|0; $cmp516 = ($340|0)<($342|0); if (!($cmp516)) { break L176; } $343 = $resample_out_ptr; $344 = $i; $arrayidx519 = (($343) + ($344<<1)|0); $345 = HEAP16[$arrayidx519>>1]|0; $346 = $samplesOut$addr; $347 = $n; $348 = $i; $mul520 = $348<<1; $add521 = (($347) + ($mul520))|0; $arrayidx522 = (($346) + ($add521<<1)|0); HEAP16[$arrayidx522>>1] = $345; $349 = $i; $inc524 = (($349) + 1)|0; $i = $inc524; } } } while(0); $350 = $n; $inc528 = (($350) + 1)|0; $n = $inc528; } $351 = $decControl$addr; $352 = HEAP32[$351>>2]|0; $cmp531 = ($352|0)==(2); L183: do { if ($cmp531) { $353 = $decControl$addr; $nChannelsInternal534 = ((($353)) + 4|0); $354 = HEAP32[$nChannelsInternal534>>2]|0; $cmp535 = ($354|0)==(1); if (!($cmp535)) { break; } $355 = $stereo_to_mono; $tobool538 = ($355|0)!=(0); if ($tobool538) { $356 = $channel_state; $arrayidx540 = ((($356)) + 4264|0); $resampler_state541 = ((($arrayidx540)) + 2432|0); $357 = $resample_out_ptr; $358 = HEAP32[$samplesOut1_tmp>>2]|0; $arrayidx543 = ((($358)) + 2|0); $359 = HEAP32[$nSamplesOutDec>>2]|0; $call544 = (_silk_resampler($resampler_state541,$357,$arrayidx543,$359)|0); $360 = $ret; $add545 = (($360) + ($call544))|0; $ret = $add545; $i = 0; while(1) { $361 = $i; $362 = $nSamplesOut$addr; $363 = HEAP32[$362>>2]|0; $cmp547 = ($361|0)<($363|0); if (!($cmp547)) { break L183; } $364 = $resample_out_ptr; $365 = $i; $arrayidx550 = (($364) + ($365<<1)|0); $366 = HEAP16[$arrayidx550>>1]|0; $367 = $samplesOut$addr; $368 = $i; $mul551 = $368<<1; $add552 = (1 + ($mul551))|0; $arrayidx553 = (($367) + ($add552<<1)|0); HEAP16[$arrayidx553>>1] = $366; $369 = $i; $inc555 = (($369) + 1)|0; $i = $inc555; } } else { $i = 0; while(1) { $370 = $i; $371 = $nSamplesOut$addr; $372 = HEAP32[$371>>2]|0; $cmp559 = ($370|0)<($372|0); if (!($cmp559)) { break L183; } $373 = $samplesOut$addr; $374 = $i; $mul562 = $374<<1; $add563 = (0 + ($mul562))|0; $arrayidx564 = (($373) + ($add563<<1)|0); $375 = HEAP16[$arrayidx564>>1]|0; $376 = $samplesOut$addr; $377 = $i; $mul565 = $377<<1; $add566 = (1 + ($mul565))|0; $arrayidx567 = (($376) + ($add566<<1)|0); HEAP16[$arrayidx567>>1] = $375; $378 = $i; $inc569 = (($378) + 1)|0; $i = $inc569; } } } } while(0); $379 = $channel_state; $prevSignalType574 = ((($379)) + 4164|0); $380 = HEAP32[$prevSignalType574>>2]|0; $cmp575 = ($380|0)==(2); if ($cmp575) { ;HEAP32[$mult_tab>>2]=HEAP32[15124>>2]|0;HEAP32[$mult_tab+4>>2]=HEAP32[15124+4>>2]|0;HEAP32[$mult_tab+8>>2]=HEAP32[15124+8>>2]|0; $381 = $channel_state; $lagPrev579 = ((($381)) + 2308|0); $382 = HEAP32[$lagPrev579>>2]|0; $383 = $channel_state; $fs_kHz581 = ((($383)) + 2316|0); $384 = HEAP32[$fs_kHz581>>2]|0; $sub582 = (($384) - 8)|0; $shr583 = $sub582 >> 2; $arrayidx584 = (($mult_tab) + ($shr583<<2)|0); $385 = HEAP32[$arrayidx584>>2]|0; $mul585 = Math_imul($382, $385)|0; $386 = $decControl$addr; $$sink6 = $mul585;$$sink7 = $386; } else { $387 = $decControl$addr; $$sink6 = 0;$$sink7 = $387; } $prevPitchLag587 = ((($$sink7)) + 20|0); HEAP32[$prevPitchLag587>>2] = $$sink6; $388 = $lostFlag$addr; $cmp589 = ($388|0)==(1); L200: do { if ($cmp589) { $i = 0; while(1) { $389 = $i; $390 = $psDec; $nChannelsInternal593 = ((($390)) + 8544|0); $391 = HEAP32[$nChannelsInternal593>>2]|0; $cmp594 = ($389|0)<($391|0); if (!($cmp594)) { break L200; } $392 = $psDec; $393 = $i; $arrayidx598 = (($392) + (($393*4264)|0)|0); $LastGainIndex599 = ((($arrayidx598)) + 2312|0); HEAP8[$LastGainIndex599>>0] = 10; $394 = $i; $inc601 = (($394) + 1)|0; $i = $inc601; } } else { $395 = HEAP32[$decode_only_middle>>2]|0; $396 = $psDec; $prev_decode_only_middle604 = ((($396)) + 8548|0); HEAP32[$prev_decode_only_middle604>>2] = $395; } } while(0); $397 = $ret; $retval = $397; $398 = $saved_stack; _llvm_stackrestore(($398|0)); $399 = $retval; STACKTOP = sp;return ($399|0); } } $ret = -200; $93 = $ret; $retval = $93; $399 = $retval; STACKTOP = sp;return ($399|0); } function _silk_Get_Encoder_Size($encSizeBytes) { $encSizeBytes = $encSizeBytes|0; var $0 = 0, $1 = 0, $encSizeBytes$addr = 0, $ret = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $encSizeBytes$addr = $encSizeBytes; $ret = 0; $0 = $encSizeBytes$addr; HEAP32[$0>>2] = 20208; $1 = $ret; STACKTOP = sp;return ($1|0); } function _silk_InitEncoder($encState,$arch,$encStatus) { $encState = $encState|0; $arch = $arch|0; $encStatus = $encStatus|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $add2 = 0, $arch$addr = 0, $arrayidx = 0, $call = 0, $call1 = 0, $cmp = 0; var $encState$addr = 0, $encStatus$addr = 0, $inc = 0, $n = 0, $nChannelsAPI = 0, $nChannelsInternal = 0, $psEnc = 0, $ret = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $encState$addr = $encState; $arch$addr = $arch; $encStatus$addr = $encStatus; $ret = 0; $0 = $encState$addr; $psEnc = $0; $1 = $psEnc; _memset(($1|0),0,20208)|0; $n = 0; while(1) { $2 = $n; $cmp = ($2|0)<(2); $3 = $psEnc; if (!($cmp)) { break; } $4 = $n; $arrayidx = (($3) + (($4*10060)|0)|0); $5 = $arch$addr; $call = (_silk_init_encoder($arrayidx,$5)|0); $6 = $ret; $add = (($6) + ($call))|0; $ret = $add; $7 = $n; $inc = (($7) + 1)|0; $n = $inc; } $nChannelsAPI = ((($3)) + 20184|0); HEAP32[$nChannelsAPI>>2] = 1; $8 = $psEnc; $nChannelsInternal = ((($8)) + 20188|0); HEAP32[$nChannelsInternal>>2] = 1; $9 = $encState$addr; $10 = $encStatus$addr; $call1 = (_silk_QueryEncoder($9,$10)|0); $11 = $ret; $add2 = (($11) + ($call1))|0; $ret = $add2; $12 = $ret; STACKTOP = sp;return ($12|0); } function _silk_QueryEncoder($encState,$encStatus) { $encState = $encState|0; $encStatus = $encStatus|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $API_fs_Hz = 0, $API_sampleRate = 0, $Complexity = 0, $PacketLoss_perc = 0, $PacketSize_ms = 0, $TargetRate_bps = 0; var $allowBandwidthSwitch = 0, $allow_bandwidth_switch = 0, $bitRate = 0, $cmp = 0, $cmp38 = 0, $complexity = 0, $conv = 0, $conv29 = 0, $desiredInternalSampleRate = 0, $desiredInternal_fs_Hz = 0, $encState$addr = 0, $encStatus$addr = 0, $fs_kHz = 0, $fs_kHz34 = 0, $inWBmodeWithoutVariableLP = 0, $internalSampleRate = 0, $land$ext = 0, $maxInternalSampleRate = 0, $maxInternal_fs_Hz = 0, $minInternalSampleRate = 0; var $minInternal_fs_Hz = 0, $mode = 0, $mul = 0, $nChannelsAPI = 0, $nChannelsInternal = 0, $nChannelsInternal3 = 0, $packetLossPercentage = 0, $payloadSize_ms = 0, $psEnc = 0, $ret = 0, $sLP = 0, $state_Fxx = 0, $useCBR = 0, $useCBR26 = 0, $useDTX = 0, $useDTX23 = 0, $useInBandFEC = 0, $useInBandFEC20 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $encState$addr = $encState; $encStatus$addr = $encStatus; $ret = 0; $0 = $encState$addr; $psEnc = $0; $1 = $psEnc; $state_Fxx = $1; $2 = $psEnc; $nChannelsAPI = ((($2)) + 20184|0); $3 = HEAP32[$nChannelsAPI>>2]|0; $4 = $encStatus$addr; HEAP32[$4>>2] = $3; $5 = $psEnc; $nChannelsInternal = ((($5)) + 20188|0); $6 = HEAP32[$nChannelsInternal>>2]|0; $7 = $encStatus$addr; $nChannelsInternal3 = ((($7)) + 4|0); HEAP32[$nChannelsInternal3>>2] = $6; $8 = $state_Fxx; $API_fs_Hz = ((($8)) + 4552|0); $9 = HEAP32[$API_fs_Hz>>2]|0; $10 = $encStatus$addr; $API_sampleRate = ((($10)) + 8|0); HEAP32[$API_sampleRate>>2] = $9; $11 = $state_Fxx; $maxInternal_fs_Hz = ((($11)) + 4560|0); $12 = HEAP32[$maxInternal_fs_Hz>>2]|0; $13 = $encStatus$addr; $maxInternalSampleRate = ((($13)) + 12|0); HEAP32[$maxInternalSampleRate>>2] = $12; $14 = $state_Fxx; $minInternal_fs_Hz = ((($14)) + 4564|0); $15 = HEAP32[$minInternal_fs_Hz>>2]|0; $16 = $encStatus$addr; $minInternalSampleRate = ((($16)) + 16|0); HEAP32[$minInternalSampleRate>>2] = $15; $17 = $state_Fxx; $desiredInternal_fs_Hz = ((($17)) + 4568|0); $18 = HEAP32[$desiredInternal_fs_Hz>>2]|0; $19 = $encStatus$addr; $desiredInternalSampleRate = ((($19)) + 20|0); HEAP32[$desiredInternalSampleRate>>2] = $18; $20 = $state_Fxx; $PacketSize_ms = ((($20)) + 4608|0); $21 = HEAP32[$PacketSize_ms>>2]|0; $22 = $encStatus$addr; $payloadSize_ms = ((($22)) + 24|0); HEAP32[$payloadSize_ms>>2] = $21; $23 = $state_Fxx; $TargetRate_bps = ((($23)) + 4604|0); $24 = HEAP32[$TargetRate_bps>>2]|0; $25 = $encStatus$addr; $bitRate = ((($25)) + 28|0); HEAP32[$bitRate>>2] = $24; $26 = $state_Fxx; $PacketLoss_perc = ((($26)) + 4612|0); $27 = HEAP32[$PacketLoss_perc>>2]|0; $28 = $encStatus$addr; $packetLossPercentage = ((($28)) + 32|0); HEAP32[$packetLossPercentage>>2] = $27; $29 = $state_Fxx; $Complexity = ((($29)) + 4620|0); $30 = HEAP32[$Complexity>>2]|0; $31 = $encStatus$addr; $complexity = ((($31)) + 36|0); HEAP32[$complexity>>2] = $30; $32 = $state_Fxx; $useInBandFEC = ((($32)) + 6084|0); $33 = HEAP32[$useInBandFEC>>2]|0; $34 = $encStatus$addr; $useInBandFEC20 = ((($34)) + 40|0); HEAP32[$useInBandFEC20>>2] = $33; $35 = $state_Fxx; $useDTX = ((($35)) + 6072|0); $36 = HEAP32[$useDTX>>2]|0; $37 = $encStatus$addr; $useDTX23 = ((($37)) + 48|0); HEAP32[$useDTX23>>2] = $36; $38 = $state_Fxx; $useCBR = ((($38)) + 4672|0); $39 = HEAP32[$useCBR>>2]|0; $40 = $encStatus$addr; $useCBR26 = ((($40)) + 52|0); HEAP32[$useCBR26>>2] = $39; $41 = $state_Fxx; $fs_kHz = ((($41)) + 4572|0); $42 = HEAP32[$fs_kHz>>2]|0; $conv = $42&65535; $conv29 = $conv << 16 >> 16; $mul = ($conv29*1000)|0; $43 = $encStatus$addr; $internalSampleRate = ((($43)) + 72|0); HEAP32[$internalSampleRate>>2] = $mul; $44 = $state_Fxx; $allow_bandwidth_switch = ((($44)) + 4532|0); $45 = HEAP32[$allow_bandwidth_switch>>2]|0; $46 = $encStatus$addr; $allowBandwidthSwitch = ((($46)) + 76|0); HEAP32[$allowBandwidthSwitch>>2] = $45; $47 = $state_Fxx; $fs_kHz34 = ((($47)) + 4572|0); $48 = HEAP32[$fs_kHz34>>2]|0; $cmp = ($48|0)==(16); if (!($cmp)) { $51 = 0; $land$ext = $51&1; $52 = $encStatus$addr; $inWBmodeWithoutVariableLP = ((($52)) + 80|0); HEAP32[$inWBmodeWithoutVariableLP>>2] = $land$ext; $53 = $ret; STACKTOP = sp;return ($53|0); } $49 = $state_Fxx; $sLP = ((($49)) + 16|0); $mode = ((($sLP)) + 12|0); $50 = HEAP32[$mode>>2]|0; $cmp38 = ($50|0)==(0); $51 = $cmp38; $land$ext = $51&1; $52 = $encStatus$addr; $inWBmodeWithoutVariableLP = ((($52)) + 80|0); HEAP32[$inWBmodeWithoutVariableLP>>2] = $land$ext; $53 = $ret; STACKTOP = sp;return ($53|0); } function _silk_Encode($encState,$encControl,$samplesIn,$nSamplesIn,$psRangeEnc,$nBytesOut,$prefillFlag) { $encState = $encState|0; $encControl = $encControl|0; $samplesIn = $samplesIn|0; $nSamplesIn = $nSamplesIn|0; $psRangeEnc = $psRangeEnc|0; $nBytesOut = $nBytesOut|0; $prefillFlag = $prefillFlag|0; var $$sink$sink = 0, $$sink3$sink = 0, $$sink9 = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0; var $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0; var $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0; var $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0; var $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0; var $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0; var $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0; var $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0; var $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0; var $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0; var $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0; var $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0; var $311 = 0, $312 = 0, $313 = 0, $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0; var $33 = 0, $330 = 0, $331 = 0, $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0; var $348 = 0, $349 = 0, $35 = 0, $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0; var $366 = 0, $367 = 0, $368 = 0, $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0; var $384 = 0, $385 = 0, $386 = 0, $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0; var $401 = 0, $402 = 0, $403 = 0, $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0; var $42 = 0, $420 = 0, $421 = 0, $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0; var $438 = 0, $439 = 0, $44 = 0, $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0; var $456 = 0, $457 = 0, $458 = 0, $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0; var $474 = 0, $475 = 0, $476 = 0, $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0; var $492 = 0, $493 = 0, $494 = 0, $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0; var $51 = 0, $510 = 0, $511 = 0, $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0; var $528 = 0, $529 = 0, $53 = 0, $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0; var $546 = 0, $547 = 0, $548 = 0, $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0; var $564 = 0, $565 = 0, $566 = 0, $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0; var $582 = 0, $583 = 0, $584 = 0, $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0; var $60 = 0, $600 = 0, $601 = 0, $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0; var $618 = 0, $619 = 0, $62 = 0, $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0; var $636 = 0, $637 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0; var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0; var $99 = 0, $API_fs_Hz = 0, $API_fs_Hz193 = 0, $API_sampleRate = 0, $API_sampleRate108 = 0, $API_sampleRate99 = 0, $LBRR_flag = 0, $LBRR_flag1043 = 0, $LBRR_flags = 0, $LBRR_flags508 = 0, $LBRR_flags556 = 0, $LBRR_flags573 = 0, $LBRR_flags588 = 0, $LBRR_flags633 = 0, $LBRR_symbol = 0, $MStargetRates_bps = 0, $PacketSize_ms = 0, $TargetRate_bps = 0, $VAD_flags = 0, $VAD_flags1032 = 0; var $VAD_flags842 = 0, $add = 0, $add$ptr = 0, $add1055 = 0, $add1078 = 0, $add1109 = 0, $add1110 = 0, $add1124 = 0, $add243 = 0, $add246 = 0, $add251 = 0, $add282 = 0, $add300 = 0, $add303 = 0, $add322 = 0, $add325 = 0, $add327 = 0, $add345 = 0, $add348 = 0, $add372 = 0; var $add375 = 0, $add392 = 0, $add393 = 0, $add404 = 0, $add405 = 0, $add408 = 0, $add419 = 0, $add420 = 0, $add445 = 0, $add448 = 0, $add453 = 0, $add484 = 0, $allowBandwidthSwitch = 0, $allowBandwidthSwitch1118 = 0, $allowBandwidthSwitch1136 = 0, $allowBandwidthSwitch1137 = 0, $allowBandwidthSwitch459 = 0, $and = 0, $arch = 0, $arch80 = 0; var $arrayidx1022 = 0, $arrayidx1030 = 0, $arrayidx1033 = 0, $arrayidx1070 = 0, $arrayidx1179 = 0, $arrayidx1183 = 0, $arrayidx1203 = 0, $arrayidx1209 = 0, $arrayidx127 = 0, $arrayidx133 = 0, $arrayidx147 = 0, $arrayidx149 = 0, $arrayidx155 = 0, $arrayidx158 = 0, $arrayidx18 = 0, $arrayidx2 = 0, $arrayidx214 = 0, $arrayidx215 = 0, $arrayidx224 = 0, $arrayidx244 = 0; var $arrayidx253 = 0, $arrayidx257 = 0, $arrayidx263 = 0, $arrayidx272 = 0, $arrayidx283 = 0, $arrayidx284 = 0, $arrayidx289 = 0, $arrayidx29 = 0, $arrayidx293 = 0, $arrayidx297 = 0, $arrayidx301 = 0, $arrayidx32 = 0, $arrayidx320 = 0, $arrayidx323 = 0, $arrayidx329 = 0, $arrayidx346 = 0, $arrayidx35 = 0, $arrayidx361 = 0, $arrayidx365 = 0, $arrayidx369 = 0; var $arrayidx373 = 0, $arrayidx394 = 0, $arrayidx397 = 0, $arrayidx401 = 0, $arrayidx406 = 0, $arrayidx41 = 0, $arrayidx421 = 0, $arrayidx446 = 0, $arrayidx450 = 0, $arrayidx48 = 0, $arrayidx499 = 0, $arrayidx506 = 0, $arrayidx509 = 0, $arrayidx518 = 0, $arrayidx523 = 0, $arrayidx531 = 0, $arrayidx535 = 0, $arrayidx554 = 0, $arrayidx557 = 0, $arrayidx568 = 0; var $arrayidx571 = 0, $arrayidx574 = 0, $arrayidx579 = 0, $arrayidx586 = 0, $arrayidx590 = 0, $arrayidx596 = 0, $arrayidx599 = 0, $arrayidx6 = 0, $arrayidx601 = 0, $arrayidx604 = 0, $arrayidx607 = 0, $arrayidx610 = 0, $arrayidx612 = 0, $arrayidx615 = 0, $arrayidx631 = 0, $arrayidx736 = 0, $arrayidx738 = 0, $arrayidx741 = 0, $arrayidx748 = 0, $arrayidx756 = 0; var $arrayidx76 = 0, $arrayidx775 = 0, $arrayidx78 = 0, $arrayidx784 = 0, $arrayidx786 = 0, $arrayidx789 = 0, $arrayidx793 = 0, $arrayidx796 = 0, $arrayidx799 = 0, $arrayidx803 = 0, $arrayidx806 = 0, $arrayidx809 = 0, $arrayidx813 = 0, $arrayidx818 = 0, $arrayidx821 = 0, $arrayidx827 = 0, $arrayidx837 = 0, $arrayidx840 = 0, $arrayidx847 = 0, $arrayidx858 = 0; var $arrayidx880 = 0, $arrayidx90 = 0, $arrayidx927 = 0, $arrayidx93 = 0, $arrayidx931 = 0, $arrayidx946 = 0, $arrayidx968 = 0, $arrayidx976 = 0, $arrayidx980 = 0, $arrayidx984 = 0, $arrayidx998 = 0, $bitRate = 0, $bitRate1079 = 0, $bitRate692 = 0, $bitRate696 = 0, $bitRate700 = 0, $bitRate715 = 0, $bitRate719 = 0, $bitsBalance = 0, $call = 0; var $call128 = 0, $call22 = 0, $call245 = 0, $call302 = 0, $call347 = 0, $call374 = 0, $call447 = 0, $call638 = 0, $call679 = 0, $call81 = 0, $call969 = 0, $channelRate_bps = 0, $cmp = 0, $cmp1001 = 0, $cmp1012 = 0, $cmp1017 = 0, $cmp102 = 0, $cmp1025 = 0, $cmp103 = 0, $cmp1066 = 0; var $cmp1086 = 0, $cmp1091 = 0, $cmp110 = 0, $cmp1115 = 0, $cmp1127 = 0, $cmp1142 = 0, $cmp1149 = 0, $cmp116 = 0, $cmp1175 = 0, $cmp118 = 0, $cmp129 = 0, $cmp144 = 0, $cmp15 = 0, $cmp185 = 0, $cmp202 = 0, $cmp204 = 0, $cmp211 = 0, $cmp219 = 0, $cmp221 = 0, $cmp267 = 0; var $cmp279 = 0, $cmp311 = 0, $cmp314 = 0, $cmp317 = 0, $cmp350 = 0, $cmp357 = 0, $cmp38 = 0, $cmp381 = 0, $cmp468 = 0, $cmp475 = 0, $cmp494 = 0, $cmp502 = 0, $cmp513 = 0, $cmp526 = 0, $cmp545 = 0, $cmp550 = 0, $cmp561 = 0, $cmp564 = 0, $cmp575 = 0, $cmp582 = 0; var $cmp59 = 0, $cmp62 = 0, $cmp627 = 0, $cmp656 = 0, $cmp67 = 0, $cmp676 = 0, $cmp693 = 0, $cmp697 = 0, $cmp70 = 0, $cmp702 = 0, $cmp711 = 0, $cmp716 = 0, $cmp728 = 0, $cmp74 = 0, $cmp777 = 0, $cmp780 = 0, $cmp849 = 0, $cmp87 = 0, $cmp886 = 0, $cmp890 = 0; var $cmp893 = 0, $cmp899 = 0, $cmp902 = 0, $cmp908 = 0, $cmp920 = 0, $cmp923 = 0, $cmp928 = 0, $cmp932 = 0, $cmp941 = 0, $cmp954 = 0, $cmp958 = 0, $complexity = 0, $complexity1172 = 0, $complexity84 = 0, $cond = 0, $cond1099 = 0, $cond1168 = 0, $cond125 = 0, $cond189 = 0, $cond277 = 0; var $cond515 = 0, $cond707 = 0, $cond726 = 0, $condCoding = 0, $condCoding944 = 0, $controlled_since_last_payload = 0, $controlled_since_last_payload1181 = 0, $controlled_since_last_payload978 = 0, $conv = 0, $conv1034 = 0, $conv1044 = 0, $conv1101 = 0, $conv1102 = 0, $conv1105 = 0, $conv1106 = 0, $conv1157 = 0, $conv1158 = 0, $conv1166 = 0, $conv1194 = 0, $conv1201 = 0; var $conv1210 = 0, $conv324 = 0, $conv328 = 0, $conv395 = 0, $conv407 = 0, $conv410 = 0, $conv489 = 0, $conv516 = 0, $conv602 = 0, $conv608 = 0, $conv659 = 0, $conv660 = 0, $conv776 = 0, $conv848 = 0, $conv999 = 0, $curr_block = 0, $div = 0, $div1082 = 0, $div178 = 0, $div200 = 0; var $div644 = 0, $div654 = 0, $div668 = 0, $div689 = 0, $div897 = 0, $div906 = 0, $div912 = 0, $div937 = 0, $encControl$addr = 0, $encState$addr = 0, $first_frame_after_reset = 0, $first_frame_after_reset135 = 0, $first_frame_after_reset4 = 0, $first_frame_after_reset815 = 0, $flags = 0, $force_fs_kHz = 0, $frame_length = 0, $frame_length255 = 0, $frame_length380 = 0, $frame_length467 = 0; var $frame_length617 = 0, $frame_length768 = 0, $frame_length879 = 0, $fs_kHz = 0, $fs_kHz1141 = 0, $fs_kHz1156 = 0, $fs_kHz167 = 0, $fs_kHz176 = 0, $fs_kHz198 = 0, $fs_kHz265 = 0, $fs_kHz274 = 0, $fs_kHz764 = 0, $i = 0, $iCDF = 0, $id = 0, $idxprom = 0, $inDTX = 0, $inDTX1062 = 0, $inDTX1072 = 0, $inWBmodeWithoutVariableLP = 0; var $inc = 0, $inc1037 = 0, $inc1047 = 0, $inc1133 = 0, $inc1187 = 0, $inc151 = 0, $inc161 = 0, $inc217 = 0, $inc286 = 0, $inc331 = 0, $inc423 = 0, $inc511 = 0, $inc538 = 0, $inc620 = 0, $inc623 = 0, $inc636 = 0, $inc97 = 0, $inc987 = 0, $inc989 = 0, $indices = 0; var $indices1199 = 0, $indices1207 = 0, $indices_LBRR = 0, $indices_LBRR606 = 0, $inputBuf = 0, $inputBuf295 = 0, $inputBuf340 = 0, $inputBuf367 = 0, $inputBuf387 = 0, $inputBuf399 = 0, $inputBuf414 = 0, $inputBuf440 = 0, $inputBuf735 = 0, $inputBuf740 = 0, $inputBuf865 = 0, $inputBuf875 = 0, $inputBufIx = 0, $inputBufIx242 = 0, $inputBufIx250 = 0, $inputBufIx259 = 0; var $inputBufIx299 = 0, $inputBufIx344 = 0, $inputBufIx371 = 0, $inputBufIx391 = 0, $inputBufIx403 = 0, $inputBufIx418 = 0, $inputBufIx444 = 0, $inputBufIx452 = 0, $inputBufIx463 = 0, $inputBufIx982 = 0, $internalSampleRate = 0, $lagPrev = 0, $land$ext = 0, $land$ext1152 = 0, $lor$ext = 0, $maxBits = 0, $maxBits889 = 0, $maxBits935 = 0, $mid_only_flags = 0, $mid_only_flags751 = 0; var $mid_only_flags770 = 0, $mid_only_flags853 = 0, $mid_only_flags992 = 0, $mid_side_amp_Q0 = 0, $mid_side_amp_Q028 = 0, $mid_side_amp_Q031 = 0, $mid_side_amp_Q034 = 0, $mode = 0, $mul = 0, $mul100 = 0, $mul101 = 0, $mul1057 = 0, $mul106 = 0, $mul1076 = 0, $mul1081 = 0, $mul109 = 0, $mul1103 = 0, $mul1107 = 0, $mul1159 = 0, $mul163 = 0; var $mul168 = 0, $mul172 = 0, $mul177 = 0, $mul194 = 0, $mul199 = 0, $mul213 = 0, $mul261 = 0, $mul266 = 0, $mul270 = 0, $mul275 = 0, $mul281 = 0, $mul319 = 0, $mul321 = 0, $mul432 = 0, $mul457 = 0, $mul486 = 0, $mul643 = 0, $mul661 = 0, $mul665 = 0, $mul667 = 0; var $mul686 = 0, $mul688 = 0, $mul896 = 0, $mul905 = 0, $mul911 = 0, $mul936 = 0, $n = 0, $nBits = 0, $nBitsExceeded = 0, $nBitsExceeded1077 = 0, $nBitsExceeded1083 = 0, $nBitsExceeded1085 = 0, $nBitsExceeded1090 = 0, $nBitsExceeded1095 = 0, $nBitsExceeded1100 = 0, $nBitsUsedLBRR = 0, $nBitsUsedLBRR647 = 0, $nBitsUsedLBRR680 = 0, $nBlocksOf10ms = 0, $nBytesOut$addr = 0; var $nChannelsAPI = 0, $nChannelsAPI64 = 0, $nChannelsInternal = 0, $nChannelsInternal1016 = 0, $nChannelsInternal1056 = 0, $nChannelsInternal1065 = 0, $nChannelsInternal1134 = 0, $nChannelsInternal115 = 0, $nChannelsInternal1174 = 0, $nChannelsInternal14 = 0, $nChannelsInternal203 = 0, $nChannelsInternal313 = 0, $nChannelsInternal485 = 0, $nChannelsInternal493 = 0, $nChannelsInternal549 = 0, $nChannelsInternal560 = 0, $nChannelsInternal60 = 0, $nChannelsInternal61 = 0, $nChannelsInternal626 = 0, $nChannelsInternal65 = 0; var $nChannelsInternal66 = 0, $nChannelsInternal727 = 0, $nChannelsInternal73 = 0, $nChannelsInternal86 = 0, $nChannelsInternal885 = 0, $nChannelsInternal922 = 0, $nFramesEncoded = 0, $nFramesEncoded1007 = 0, $nFramesEncoded11 = 0, $nFramesEncoded209 = 0, $nFramesEncoded356 = 0, $nFramesEncoded474 = 0, $nFramesEncoded675 = 0, $nFramesEncoded685 = 0, $nFramesEncoded747 = 0, $nFramesEncoded755 = 0, $nFramesEncoded774 = 0, $nFramesEncoded826 = 0, $nFramesEncoded836 = 0, $nFramesEncoded846 = 0; var $nFramesEncoded857 = 0, $nFramesEncoded952 = 0, $nFramesEncoded986 = 0, $nFramesEncoded996 = 0, $nFramesPerPacket = 0, $nFramesPerPacket1011 = 0, $nFramesPerPacket1024 = 0, $nFramesPerPacket1054 = 0, $nFramesPerPacket483 = 0, $nFramesPerPacket501 = 0, $nFramesPerPacket525 = 0, $nFramesPerPacket533 = 0, $nFramesPerPacket544 = 0, $nFramesPerPacket653 = 0, $nPrevChannelsInternal = 0, $nPrevChannelsInternal1135 = 0, $nPrevChannelsInternal349 = 0, $nSamplesFromInput = 0, $nSamplesFromInputMax = 0, $nSamplesIn$addr = 0; var $nSamplesToBuffer = 0, $nSamplesToBufferMax = 0, $offset = 0, $or = 0, $or$cond = 0, $or$cond1 = 0, $or$cond2 = 0, $or$cond6 = 0, $or$cond7 = 0, $or$cond8 = 0, $or1035 = 0, $or1045 = 0, $payloadSize_ms = 0, $payloadSize_ms107 = 0, $payloadSize_ms1080 = 0, $payloadSize_ms1122 = 0, $payloadSize_ms1171 = 0, $payloadSize_ms642 = 0, $payloadSize_ms655 = 0, $payloadSize_ms82 = 0; var $payloadSize_ms83 = 0, $predIx = 0, $predIx743 = 0, $predIx832 = 0, $prefillFlag$addr = 0, $prefillFlag1185 = 0, $prefillFlag95 = 0, $prevLag = 0, $prevSignalType = 0, $prev_NLSFq_Q15 = 0, $prev_decode_only_middle = 0, $prev_decode_only_middle1000 = 0, $prev_decode_only_middle961 = 0, $prev_gain_Q16 = 0, $psEnc = 0, $psRangeEnc$addr = 0, $pulses_LBRR = 0, $quantOffsetType = 0, $quantOffsetType1208 = 0, $reducedDependency = 0; var $resampler_state = 0, $resampler_state226 = 0, $resampler_state230 = 0, $resampler_state235 = 0, $resampler_state291 = 0, $resampler_state336 = 0, $resampler_state363 = 0, $resampler_state436 = 0, $resampler_state46 = 0, $ret = 0, $retval = 0, $sLP = 0, $sLP1148 = 0, $sMid = 0, $sMid870 = 0, $sNSQ = 0, $sNSQ801 = 0, $sNSQ811 = 0, $sShape = 0, $sShape804 = 0; var $sSide = 0, $sStereo = 0, $sStereo1164 = 0, $sStereo23 = 0, $sStereo25 = 0, $sStereo27 = 0, $sStereo30 = 0, $sStereo33 = 0, $sStereo36 = 0, $sStereo37 = 0, $sStereo567 = 0, $sStereo578 = 0, $sStereo731 = 0, $sStereo742 = 0, $sStereo750 = 0, $sStereo769 = 0, $sStereo831 = 0, $sStereo852 = 0, $sStereo867 = 0, $sStereo869 = 0; var $sStereo991 = 0, $samplesIn$addr = 0, $saved_stack = 0, $shl = 0, $shl1028 = 0, $shr = 0, $shr1108 = 0, $shr1202 = 0, $shr326 = 0, $shr409 = 0, $shr487 = 0, $signalType = 0, $signalType1193 = 0, $signalType1195 = 0, $signalType1200 = 0, $smth_width_Q14 = 0, $smth_width_Q141165 = 0, $speech_act_thr_for_switch_Q8 = 0, $speech_activity_Q8 = 0, $speech_activity_Q81114 = 0; var $stereoWidth_Q14 = 0, $sub = 0, $sub1084 = 0, $sub260 = 0, $sub458 = 0, $sub488 = 0, $sub529 = 0, $sub534 = 0, $sub589 = 0, $sub648 = 0, $sub669 = 0, $sub681 = 0, $sub687 = 0, $sub690 = 0, $sub919 = 0, $sub938 = 0, $sub953 = 0, $sub997 = 0, $sum = 0, $switchReady = 0; var $timeSinceSwitchAllowed_ms = 0, $timeSinceSwitchAllowed_ms1104 = 0, $timeSinceSwitchAllowed_ms1119 = 0, $timeSinceSwitchAllowed_ms1123 = 0, $tmp_complexity = 0, $tmp_payloadSize_ms = 0, $toMono = 0, $toMono1160 = 0, $tobool = 0, $tobool1049 = 0, $tobool1063 = 0, $tobool1073 = 0, $tobool1161 = 0, $tobool1169 = 0, $tobool136 = 0, $tobool138 = 0, $tobool478 = 0, $tobool520 = 0, $tobool558 = 0, $tobool591 = 0; var $tobool645 = 0, $tobool670 = 0, $tobool68 = 0, $tobool829 = 0, $tobool918 = 0, $tobool962 = 0, $tot_blocks = 0, $transition = 0, $useCBR = 0, $useCBR917 = 0, $useDTX = 0, $vla = 0, $vla$alloca_mul = 0, $width_prev_Q14 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 176|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(176|0); $MStargetRates_bps = sp + 64|0; $iCDF = sp + 160|0; $encState$addr = $encState; $encControl$addr = $encControl; $samplesIn$addr = $samplesIn; $nSamplesIn$addr = $nSamplesIn; $psRangeEnc$addr = $psRangeEnc; $nBytesOut$addr = $nBytesOut; $prefillFlag$addr = $prefillFlag; $tmp_payloadSize_ms = 0; $tmp_complexity = 0; $ret = 0; $nSamplesFromInput = 0; $0 = $encState$addr; $psEnc = $0; $1 = $encControl$addr; $reducedDependency = ((($1)) + 68|0); $2 = HEAP32[$reducedDependency>>2]|0; $tobool = ($2|0)!=(0); if ($tobool) { $3 = $psEnc; $first_frame_after_reset = ((($3)) + 4660|0); HEAP32[$first_frame_after_reset>>2] = 1; $4 = $psEnc; $arrayidx2 = ((($4)) + 10060|0); $first_frame_after_reset4 = ((($arrayidx2)) + 4660|0); HEAP32[$first_frame_after_reset4>>2] = 1; } $5 = $psEnc; $arrayidx6 = ((($5)) + 10060|0); $nFramesEncoded = ((($arrayidx6)) + 5744|0); HEAP32[$nFramesEncoded>>2] = 0; $6 = $psEnc; $nFramesEncoded11 = ((($6)) + 5744|0); HEAP32[$nFramesEncoded11>>2] = 0; $7 = $encControl$addr; $call = (_check_control_input($7)|0); $ret = $call; $cmp = ($call|0)!=(0); if ($cmp) { $8 = $ret; $retval = $8; $637 = $retval; STACKTOP = sp;return ($637|0); } $9 = $encControl$addr; $switchReady = ((($9)) + 88|0); HEAP32[$switchReady>>2] = 0; $10 = $encControl$addr; $nChannelsInternal = ((($10)) + 4|0); $11 = HEAP32[$nChannelsInternal>>2]|0; $12 = $psEnc; $nChannelsInternal14 = ((($12)) + 20188|0); $13 = HEAP32[$nChannelsInternal14>>2]|0; $cmp15 = ($11|0)>($13|0); if ($cmp15) { $14 = $psEnc; $arrayidx18 = ((($14)) + 10060|0); $15 = $psEnc; $arch = ((($15)) + 5088|0); $16 = HEAP32[$arch>>2]|0; $call22 = (_silk_init_encoder($arrayidx18,$16)|0); $17 = $ret; $add = (($17) + ($call22))|0; $ret = $add; $18 = $psEnc; $sStereo = ((($18)) + 20120|0); ;HEAP32[$sStereo>>2]=0|0; $19 = $psEnc; $sStereo23 = ((($19)) + 20120|0); $sSide = ((($sStereo23)) + 8|0); ;HEAP32[$sSide>>2]=0|0; $20 = $psEnc; $sStereo25 = ((($20)) + 20120|0); $mid_side_amp_Q0 = ((($sStereo25)) + 12|0); HEAP32[$mid_side_amp_Q0>>2] = 0; $21 = $psEnc; $sStereo27 = ((($21)) + 20120|0); $mid_side_amp_Q028 = ((($sStereo27)) + 12|0); $arrayidx29 = ((($mid_side_amp_Q028)) + 4|0); HEAP32[$arrayidx29>>2] = 1; $22 = $psEnc; $sStereo30 = ((($22)) + 20120|0); $mid_side_amp_Q031 = ((($sStereo30)) + 12|0); $arrayidx32 = ((($mid_side_amp_Q031)) + 8|0); HEAP32[$arrayidx32>>2] = 0; $23 = $psEnc; $sStereo33 = ((($23)) + 20120|0); $mid_side_amp_Q034 = ((($sStereo33)) + 12|0); $arrayidx35 = ((($mid_side_amp_Q034)) + 12|0); HEAP32[$arrayidx35>>2] = 1; $24 = $psEnc; $sStereo36 = ((($24)) + 20120|0); $width_prev_Q14 = ((($sStereo36)) + 30|0); HEAP16[$width_prev_Q14>>1] = 0; $25 = $psEnc; $sStereo37 = ((($25)) + 20120|0); $smth_width_Q14 = ((($sStereo37)) + 28|0); HEAP16[$smth_width_Q14>>1] = 16384; $26 = $psEnc; $nChannelsAPI = ((($26)) + 20184|0); $27 = HEAP32[$nChannelsAPI>>2]|0; $cmp38 = ($27|0)==(2); if ($cmp38) { $28 = $psEnc; $arrayidx41 = ((($28)) + 10060|0); $resampler_state = ((($arrayidx41)) + 5772|0); $29 = $psEnc; $resampler_state46 = ((($29)) + 5772|0); _memcpy(($resampler_state|0),($resampler_state46|0),300)|0; $30 = $psEnc; $arrayidx48 = ((($30)) + 10060|0); $31 = $psEnc; ;HEAP32[$arrayidx48>>2]=HEAP32[$31>>2]|0;HEAP32[$arrayidx48+4>>2]=HEAP32[$31+4>>2]|0; } } $32 = $encControl$addr; $payloadSize_ms = ((($32)) + 24|0); $33 = HEAP32[$payloadSize_ms>>2]|0; $34 = $psEnc; $PacketSize_ms = ((($34)) + 4608|0); $35 = HEAP32[$PacketSize_ms>>2]|0; $cmp59 = ($33|0)!=($35|0); if ($cmp59) { $40 = 1; } else { $36 = $psEnc; $nChannelsInternal60 = ((($36)) + 20188|0); $37 = HEAP32[$nChannelsInternal60>>2]|0; $38 = $encControl$addr; $nChannelsInternal61 = ((($38)) + 4|0); $39 = HEAP32[$nChannelsInternal61>>2]|0; $cmp62 = ($37|0)!=($39|0); $40 = $cmp62; } $lor$ext = $40&1; $transition = $lor$ext; $41 = $encControl$addr; $42 = HEAP32[$41>>2]|0; $43 = $psEnc; $nChannelsAPI64 = ((($43)) + 20184|0); HEAP32[$nChannelsAPI64>>2] = $42; $44 = $encControl$addr; $nChannelsInternal65 = ((($44)) + 4|0); $45 = HEAP32[$nChannelsInternal65>>2]|0; $46 = $psEnc; $nChannelsInternal66 = ((($46)) + 20188|0); HEAP32[$nChannelsInternal66>>2] = $45; $47 = $nSamplesIn$addr; $mul = ($47*100)|0; $48 = $encControl$addr; $API_sampleRate = ((($48)) + 8|0); $49 = HEAP32[$API_sampleRate>>2]|0; $div = (($mul|0) / ($49|0))&-1; $nBlocksOf10ms = $div; $50 = $nBlocksOf10ms; $cmp67 = ($50|0)>(1); $51 = $nBlocksOf10ms; $shr = $51 >> 1; $cond = $cmp67 ? $shr : 1; $tot_blocks = $cond; $curr_block = 0; $52 = $prefillFlag$addr; $tobool68 = ($52|0)!=(0); $53 = $nBlocksOf10ms; L15: do { if ($tobool68) { $cmp70 = ($53|0)!=(1); if ($cmp70) { $retval = -101; $637 = $retval; STACKTOP = sp;return ($637|0); } $n = 0; while(1) { $54 = $n; $55 = $encControl$addr; $nChannelsInternal73 = ((($55)) + 4|0); $56 = HEAP32[$nChannelsInternal73>>2]|0; $cmp74 = ($54|0)<($56|0); if (!($cmp74)) { break; } $57 = $psEnc; $58 = $n; $arrayidx76 = (($57) + (($58*10060)|0)|0); $59 = $psEnc; $60 = $n; $arrayidx78 = (($59) + (($60*10060)|0)|0); $arch80 = ((($arrayidx78)) + 5088|0); $61 = HEAP32[$arch80>>2]|0; $call81 = (_silk_init_encoder($arrayidx76,$61)|0); $ret = $call81; $62 = $n; $inc = (($62) + 1)|0; $n = $inc; } $63 = $encControl$addr; $payloadSize_ms82 = ((($63)) + 24|0); $64 = HEAP32[$payloadSize_ms82>>2]|0; $tmp_payloadSize_ms = $64; $65 = $encControl$addr; $payloadSize_ms83 = ((($65)) + 24|0); HEAP32[$payloadSize_ms83>>2] = 10; $66 = $encControl$addr; $complexity = ((($66)) + 36|0); $67 = HEAP32[$complexity>>2]|0; $tmp_complexity = $67; $68 = $encControl$addr; $complexity84 = ((($68)) + 36|0); HEAP32[$complexity84>>2] = 0; $n = 0; while(1) { $69 = $n; $70 = $encControl$addr; $nChannelsInternal86 = ((($70)) + 4|0); $71 = HEAP32[$nChannelsInternal86>>2]|0; $cmp87 = ($69|0)<($71|0); if (!($cmp87)) { break L15; } $72 = $psEnc; $73 = $n; $arrayidx90 = (($72) + (($73*10060)|0)|0); $controlled_since_last_payload = ((($arrayidx90)) + 4664|0); HEAP32[$controlled_since_last_payload>>2] = 0; $74 = $psEnc; $75 = $n; $arrayidx93 = (($74) + (($75*10060)|0)|0); $prefillFlag95 = ((($arrayidx93)) + 4676|0); HEAP32[$prefillFlag95>>2] = 1; $76 = $n; $inc97 = (($76) + 1)|0; $n = $inc97; } } else { $77 = $encControl$addr; $API_sampleRate99 = ((($77)) + 8|0); $78 = HEAP32[$API_sampleRate99>>2]|0; $mul100 = Math_imul($53, $78)|0; $79 = $nSamplesIn$addr; $mul101 = ($79*100)|0; $cmp102 = ($mul100|0)!=($mul101|0); $80 = $nSamplesIn$addr; $cmp103 = ($80|0)<(0); $or$cond = $cmp102 | $cmp103; if ($or$cond) { $retval = -101; $637 = $retval; STACKTOP = sp;return ($637|0); } $81 = $nSamplesIn$addr; $mul106 = ($81*1000)|0; $82 = $encControl$addr; $payloadSize_ms107 = ((($82)) + 24|0); $83 = HEAP32[$payloadSize_ms107>>2]|0; $84 = $encControl$addr; $API_sampleRate108 = ((($84)) + 8|0); $85 = HEAP32[$API_sampleRate108>>2]|0; $mul109 = Math_imul($83, $85)|0; $cmp110 = ($mul106|0)>($mul109|0); if ($cmp110) { $retval = -101; $637 = $retval; STACKTOP = sp;return ($637|0); } } } while(0); $n = 0; while(1) { $86 = $n; $87 = $encControl$addr; $nChannelsInternal115 = ((($87)) + 4|0); $88 = HEAP32[$nChannelsInternal115>>2]|0; $cmp116 = ($86|0)<($88|0); if (!($cmp116)) { break; } $89 = $n; $cmp118 = ($89|0)==(1); if ($cmp118) { $90 = $psEnc; $fs_kHz = ((($90)) + 4572|0); $91 = HEAP32[$fs_kHz>>2]|0; $cond125 = $91; } else { $cond125 = 0; } $force_fs_kHz = $cond125; $92 = $psEnc; $93 = $n; $arrayidx127 = (($92) + (($93*10060)|0)|0); $94 = $encControl$addr; $95 = $psEnc; $allowBandwidthSwitch = ((($95)) + 20200|0); $96 = HEAP32[$allowBandwidthSwitch>>2]|0; $97 = $n; $98 = $force_fs_kHz; $call128 = (_silk_control_encoder($arrayidx127,$94,$96,$97,$98)|0); $ret = $call128; $cmp129 = ($call128|0)!=(0); if ($cmp129) { label = 28; break; } $100 = $psEnc; $101 = $n; $arrayidx133 = (($100) + (($101*10060)|0)|0); $first_frame_after_reset135 = ((($arrayidx133)) + 4660|0); $102 = HEAP32[$first_frame_after_reset135>>2]|0; $tobool136 = ($102|0)!=(0); $103 = $transition; $tobool138 = ($103|0)!=(0); $or$cond1 = $tobool136 | $tobool138; L43: do { if ($or$cond1) { $i = 0; while(1) { $104 = $i; $105 = $psEnc; $nFramesPerPacket = ((($105)) + 5740|0); $106 = HEAP32[$nFramesPerPacket>>2]|0; $cmp144 = ($104|0)<($106|0); if (!($cmp144)) { break L43; } $107 = $psEnc; $108 = $n; $arrayidx147 = (($107) + (($108*10060)|0)|0); $LBRR_flags = ((($arrayidx147)) + 4720|0); $109 = $i; $arrayidx149 = (($LBRR_flags) + ($109<<2)|0); HEAP32[$arrayidx149>>2] = 0; $110 = $i; $inc151 = (($110) + 1)|0; $i = $inc151; } } } while(0); $111 = $psEnc; $112 = $n; $arrayidx155 = (($111) + (($112*10060)|0)|0); $useDTX = ((($arrayidx155)) + 6072|0); $113 = HEAP32[$useDTX>>2]|0; $114 = $psEnc; $115 = $n; $arrayidx158 = (($114) + (($115*10060)|0)|0); $inDTX = ((($arrayidx158)) + 6076|0); HEAP32[$inDTX>>2] = $113; $116 = $n; $inc161 = (($116) + 1)|0; $n = $inc161; } if ((label|0) == 28) { $99 = $ret; $retval = $99; $637 = $retval; STACKTOP = sp;return ($637|0); } $117 = $nBlocksOf10ms; $mul163 = ($117*10)|0; $118 = $psEnc; $fs_kHz167 = ((($118)) + 4572|0); $119 = HEAP32[$fs_kHz167>>2]|0; $mul168 = Math_imul($mul163, $119)|0; $nSamplesToBufferMax = $mul168; $120 = $nSamplesToBufferMax; $121 = $psEnc; $API_fs_Hz = ((($121)) + 4552|0); $122 = HEAP32[$API_fs_Hz>>2]|0; $mul172 = Math_imul($120, $122)|0; $123 = $psEnc; $fs_kHz176 = ((($123)) + 4572|0); $124 = HEAP32[$fs_kHz176>>2]|0; $mul177 = ($124*1000)|0; $div178 = (($mul172|0) / ($mul177|0))&-1; $nSamplesFromInputMax = $div178; $125 = $nSamplesFromInputMax; $126 = (_llvm_stacksave()|0); $saved_stack = $126; $vla$alloca_mul = $125<<1; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; while(1) { $127 = $psEnc; $frame_length = ((($127)) + 4580|0); $128 = HEAP32[$frame_length>>2]|0; $129 = $psEnc; $inputBufIx = ((($129)) + 5736|0); $130 = HEAP32[$inputBufIx>>2]|0; $sub = (($128) - ($130))|0; $nSamplesToBuffer = $sub; $131 = $nSamplesToBuffer; $132 = $nSamplesToBufferMax; $cmp185 = ($131|0)<($132|0); $133 = $nSamplesToBuffer; $134 = $nSamplesToBufferMax; $cond189 = $cmp185 ? $133 : $134; $nSamplesToBuffer = $cond189; $135 = $nSamplesToBuffer; $136 = $psEnc; $API_fs_Hz193 = ((($136)) + 4552|0); $137 = HEAP32[$API_fs_Hz193>>2]|0; $mul194 = Math_imul($135, $137)|0; $138 = $psEnc; $fs_kHz198 = ((($138)) + 4572|0); $139 = HEAP32[$fs_kHz198>>2]|0; $mul199 = ($139*1000)|0; $div200 = (($mul194|0) / ($mul199|0))&-1; $nSamplesFromInput = $div200; $140 = $encControl$addr; $141 = HEAP32[$140>>2]|0; $cmp202 = ($141|0)==(2); if ($cmp202) { $142 = $encControl$addr; $nChannelsInternal203 = ((($142)) + 4|0); $143 = HEAP32[$nChannelsInternal203>>2]|0; $cmp204 = ($143|0)==(2); if ($cmp204) { $144 = $psEnc; $nFramesEncoded209 = ((($144)) + 5744|0); $145 = HEAP32[$nFramesEncoded209>>2]|0; $id = $145; $n = 0; while(1) { $146 = $n; $147 = $nSamplesFromInput; $cmp211 = ($146|0)<($147|0); if (!($cmp211)) { break; } $148 = $samplesIn$addr; $149 = $n; $mul213 = $149<<1; $arrayidx214 = (($148) + ($mul213<<1)|0); $150 = HEAP16[$arrayidx214>>1]|0; $151 = $n; $arrayidx215 = (($vla) + ($151<<1)|0); HEAP16[$arrayidx215>>1] = $150; $152 = $n; $inc217 = (($152) + 1)|0; $n = $inc217; } $153 = $psEnc; $nPrevChannelsInternal = ((($153)) + 20192|0); $154 = HEAP32[$nPrevChannelsInternal>>2]|0; $cmp219 = ($154|0)==(1); $155 = $id; $cmp221 = ($155|0)==(0); $or$cond2 = $cmp219 & $cmp221; if ($or$cond2) { $156 = $psEnc; $arrayidx224 = ((($156)) + 10060|0); $resampler_state226 = ((($arrayidx224)) + 5772|0); $157 = $psEnc; $resampler_state230 = ((($157)) + 5772|0); _memcpy(($resampler_state226|0),($resampler_state230|0),300)|0; } $158 = $psEnc; $resampler_state235 = ((($158)) + 5772|0); $159 = $psEnc; $inputBuf = ((($159)) + 5092|0); $160 = $psEnc; $inputBufIx242 = ((($160)) + 5736|0); $161 = HEAP32[$inputBufIx242>>2]|0; $add243 = (($161) + 2)|0; $arrayidx244 = (($inputBuf) + ($add243<<1)|0); $162 = $nSamplesFromInput; $call245 = (_silk_resampler($resampler_state235,$arrayidx244,$vla,$162)|0); $163 = $ret; $add246 = (($163) + ($call245))|0; $ret = $add246; $164 = $nSamplesToBuffer; $165 = $psEnc; $inputBufIx250 = ((($165)) + 5736|0); $166 = HEAP32[$inputBufIx250>>2]|0; $add251 = (($166) + ($164))|0; HEAP32[$inputBufIx250>>2] = $add251; $167 = $psEnc; $arrayidx253 = ((($167)) + 10060|0); $frame_length255 = ((($arrayidx253)) + 4580|0); $168 = HEAP32[$frame_length255>>2]|0; $169 = $psEnc; $arrayidx257 = ((($169)) + 10060|0); $inputBufIx259 = ((($arrayidx257)) + 5736|0); $170 = HEAP32[$inputBufIx259>>2]|0; $sub260 = (($168) - ($170))|0; $nSamplesToBuffer = $sub260; $171 = $nSamplesToBuffer; $172 = $nBlocksOf10ms; $mul261 = ($172*10)|0; $173 = $psEnc; $arrayidx263 = ((($173)) + 10060|0); $fs_kHz265 = ((($arrayidx263)) + 4572|0); $174 = HEAP32[$fs_kHz265>>2]|0; $mul266 = Math_imul($mul261, $174)|0; $cmp267 = ($171|0)<($mul266|0); if ($cmp267) { $175 = $nSamplesToBuffer; $cond277 = $175; } else { $176 = $nBlocksOf10ms; $mul270 = ($176*10)|0; $177 = $psEnc; $arrayidx272 = ((($177)) + 10060|0); $fs_kHz274 = ((($arrayidx272)) + 4572|0); $178 = HEAP32[$fs_kHz274>>2]|0; $mul275 = Math_imul($mul270, $178)|0; $cond277 = $mul275; } $nSamplesToBuffer = $cond277; $n = 0; while(1) { $179 = $n; $180 = $nSamplesFromInput; $cmp279 = ($179|0)<($180|0); if (!($cmp279)) { break; } $181 = $samplesIn$addr; $182 = $n; $mul281 = $182<<1; $add282 = (($mul281) + 1)|0; $arrayidx283 = (($181) + ($add282<<1)|0); $183 = HEAP16[$arrayidx283>>1]|0; $184 = $n; $arrayidx284 = (($vla) + ($184<<1)|0); HEAP16[$arrayidx284>>1] = $183; $185 = $n; $inc286 = (($185) + 1)|0; $n = $inc286; } $186 = $psEnc; $arrayidx289 = ((($186)) + 10060|0); $resampler_state291 = ((($arrayidx289)) + 5772|0); $187 = $psEnc; $arrayidx293 = ((($187)) + 10060|0); $inputBuf295 = ((($arrayidx293)) + 5092|0); $188 = $psEnc; $arrayidx297 = ((($188)) + 10060|0); $inputBufIx299 = ((($arrayidx297)) + 5736|0); $189 = HEAP32[$inputBufIx299>>2]|0; $add300 = (($189) + 2)|0; $arrayidx301 = (($inputBuf295) + ($add300<<1)|0); $190 = $nSamplesFromInput; $call302 = (_silk_resampler($resampler_state291,$arrayidx301,$vla,$190)|0); $191 = $ret; $add303 = (($191) + ($call302))|0; $ret = $add303; $192 = $nSamplesToBuffer; $193 = $psEnc; $$sink$sink = $193;$$sink3$sink = $192;$$sink9 = 1; } else { label = 49; } } else { label = 49; } do { if ((label|0) == 49) { label = 0; $194 = $encControl$addr; $195 = HEAP32[$194>>2]|0; $cmp311 = ($195|0)==(2); if ($cmp311) { $196 = $encControl$addr; $nChannelsInternal313 = ((($196)) + 4|0); $197 = HEAP32[$nChannelsInternal313>>2]|0; $cmp314 = ($197|0)==(1); if ($cmp314) { $n = 0; while(1) { $198 = $n; $199 = $nSamplesFromInput; $cmp317 = ($198|0)<($199|0); if (!($cmp317)) { break; } $200 = $samplesIn$addr; $201 = $n; $mul319 = $201<<1; $arrayidx320 = (($200) + ($mul319<<1)|0); $202 = HEAP16[$arrayidx320>>1]|0; $conv = $202 << 16 >> 16; $203 = $samplesIn$addr; $204 = $n; $mul321 = $204<<1; $add322 = (($mul321) + 1)|0; $arrayidx323 = (($203) + ($add322<<1)|0); $205 = HEAP16[$arrayidx323>>1]|0; $conv324 = $205 << 16 >> 16; $add325 = (($conv) + ($conv324))|0; $sum = $add325; $206 = $sum; $shr326 = $206 >> 1; $207 = $sum; $and = $207 & 1; $add327 = (($shr326) + ($and))|0; $conv328 = $add327&65535; $208 = $n; $arrayidx329 = (($vla) + ($208<<1)|0); HEAP16[$arrayidx329>>1] = $conv328; $209 = $n; $inc331 = (($209) + 1)|0; $n = $inc331; } $210 = $psEnc; $resampler_state336 = ((($210)) + 5772|0); $211 = $psEnc; $inputBuf340 = ((($211)) + 5092|0); $212 = $psEnc; $inputBufIx344 = ((($212)) + 5736|0); $213 = HEAP32[$inputBufIx344>>2]|0; $add345 = (($213) + 2)|0; $arrayidx346 = (($inputBuf340) + ($add345<<1)|0); $214 = $nSamplesFromInput; $call347 = (_silk_resampler($resampler_state336,$arrayidx346,$vla,$214)|0); $215 = $ret; $add348 = (($215) + ($call347))|0; $ret = $add348; $216 = $psEnc; $nPrevChannelsInternal349 = ((($216)) + 20192|0); $217 = HEAP32[$nPrevChannelsInternal349>>2]|0; $cmp350 = ($217|0)==(2); L82: do { if ($cmp350) { $218 = $psEnc; $nFramesEncoded356 = ((($218)) + 5744|0); $219 = HEAP32[$nFramesEncoded356>>2]|0; $cmp357 = ($219|0)==(0); if ($cmp357) { $220 = $psEnc; $arrayidx361 = ((($220)) + 10060|0); $resampler_state363 = ((($arrayidx361)) + 5772|0); $221 = $psEnc; $arrayidx365 = ((($221)) + 10060|0); $inputBuf367 = ((($arrayidx365)) + 5092|0); $222 = $psEnc; $arrayidx369 = ((($222)) + 10060|0); $inputBufIx371 = ((($arrayidx369)) + 5736|0); $223 = HEAP32[$inputBufIx371>>2]|0; $add372 = (($223) + 2)|0; $arrayidx373 = (($inputBuf367) + ($add372<<1)|0); $224 = $nSamplesFromInput; $call374 = (_silk_resampler($resampler_state363,$arrayidx373,$vla,$224)|0); $225 = $ret; $add375 = (($225) + ($call374))|0; $ret = $add375; $n = 0; while(1) { $226 = $n; $227 = $psEnc; $frame_length380 = ((($227)) + 4580|0); $228 = HEAP32[$frame_length380>>2]|0; $cmp381 = ($226|0)<($228|0); if (!($cmp381)) { break L82; } $229 = $psEnc; $inputBuf387 = ((($229)) + 5092|0); $230 = $psEnc; $inputBufIx391 = ((($230)) + 5736|0); $231 = HEAP32[$inputBufIx391>>2]|0; $232 = $n; $add392 = (($231) + ($232))|0; $add393 = (($add392) + 2)|0; $arrayidx394 = (($inputBuf387) + ($add393<<1)|0); $233 = HEAP16[$arrayidx394>>1]|0; $conv395 = $233 << 16 >> 16; $234 = $psEnc; $arrayidx397 = ((($234)) + 10060|0); $inputBuf399 = ((($arrayidx397)) + 5092|0); $235 = $psEnc; $arrayidx401 = ((($235)) + 10060|0); $inputBufIx403 = ((($arrayidx401)) + 5736|0); $236 = HEAP32[$inputBufIx403>>2]|0; $237 = $n; $add404 = (($236) + ($237))|0; $add405 = (($add404) + 2)|0; $arrayidx406 = (($inputBuf399) + ($add405<<1)|0); $238 = HEAP16[$arrayidx406>>1]|0; $conv407 = $238 << 16 >> 16; $add408 = (($conv395) + ($conv407))|0; $shr409 = $add408 >> 1; $conv410 = $shr409&65535; $239 = $psEnc; $inputBuf414 = ((($239)) + 5092|0); $240 = $psEnc; $inputBufIx418 = ((($240)) + 5736|0); $241 = HEAP32[$inputBufIx418>>2]|0; $242 = $n; $add419 = (($241) + ($242))|0; $add420 = (($add419) + 2)|0; $arrayidx421 = (($inputBuf414) + ($add420<<1)|0); HEAP16[$arrayidx421>>1] = $conv410; $243 = $n; $inc423 = (($243) + 1)|0; $n = $inc423; } } } } while(0); $244 = $nSamplesToBuffer; $245 = $psEnc; $$sink$sink = $245;$$sink3$sink = $244;$$sink9 = 0; break; } } $246 = $samplesIn$addr; $247 = $nSamplesFromInput; $mul432 = $247<<1; _memcpy(($vla|0),($246|0),($mul432|0))|0; $248 = $psEnc; $resampler_state436 = ((($248)) + 5772|0); $249 = $psEnc; $inputBuf440 = ((($249)) + 5092|0); $250 = $psEnc; $inputBufIx444 = ((($250)) + 5736|0); $251 = HEAP32[$inputBufIx444>>2]|0; $add445 = (($251) + 2)|0; $arrayidx446 = (($inputBuf440) + ($add445<<1)|0); $252 = $nSamplesFromInput; $call447 = (_silk_resampler($resampler_state436,$arrayidx446,$vla,$252)|0); $253 = $ret; $add448 = (($253) + ($call447))|0; $ret = $add448; $254 = $nSamplesToBuffer; $255 = $psEnc; $$sink$sink = $255;$$sink3$sink = $254;$$sink9 = 0; } } while(0); $arrayidx450 = (($$sink$sink) + (($$sink9*10060)|0)|0); $inputBufIx452 = ((($arrayidx450)) + 5736|0); $256 = HEAP32[$inputBufIx452>>2]|0; $add453 = (($256) + ($$sink3$sink))|0; HEAP32[$inputBufIx452>>2] = $add453; $257 = $nSamplesFromInput; $258 = $encControl$addr; $259 = HEAP32[$258>>2]|0; $mul457 = Math_imul($257, $259)|0; $260 = $samplesIn$addr; $add$ptr = (($260) + ($mul457<<1)|0); $samplesIn$addr = $add$ptr; $261 = $nSamplesFromInput; $262 = $nSamplesIn$addr; $sub458 = (($262) - ($261))|0; $nSamplesIn$addr = $sub458; $263 = $psEnc; $allowBandwidthSwitch459 = ((($263)) + 20200|0); HEAP32[$allowBandwidthSwitch459>>2] = 0; $264 = $psEnc; $inputBufIx463 = ((($264)) + 5736|0); $265 = HEAP32[$inputBufIx463>>2]|0; $266 = $psEnc; $frame_length467 = ((($266)) + 4580|0); $267 = HEAP32[$frame_length467>>2]|0; $cmp468 = ($265|0)>=($267|0); if (!($cmp468)) { break; } $268 = $psEnc; $nFramesEncoded474 = ((($268)) + 5744|0); $269 = HEAP32[$nFramesEncoded474>>2]|0; $cmp475 = ($269|0)!=(0); $270 = $prefillFlag$addr; $tobool478 = ($270|0)!=(0); $or$cond6 = $cmp475 | $tobool478; if (!($or$cond6)) { ;HEAP8[$iCDF>>0]=0|0;HEAP8[$iCDF+1>>0]=0|0; $271 = $psEnc; $nFramesPerPacket483 = ((($271)) + 5740|0); $272 = HEAP32[$nFramesPerPacket483>>2]|0; $add484 = (($272) + 1)|0; $273 = $encControl$addr; $nChannelsInternal485 = ((($273)) + 4|0); $274 = HEAP32[$nChannelsInternal485>>2]|0; $mul486 = Math_imul($add484, $274)|0; $shr487 = 256 >> $mul486; $sub488 = (256 - ($shr487))|0; $conv489 = $sub488&255; HEAP8[$iCDF>>0] = $conv489; $275 = $psRangeEnc$addr; _ec_enc_icdf($275,0,$iCDF,8); $n = 0; while(1) { $276 = $n; $277 = $encControl$addr; $nChannelsInternal493 = ((($277)) + 4|0); $278 = HEAP32[$nChannelsInternal493>>2]|0; $cmp494 = ($276|0)<($278|0); if (!($cmp494)) { break; } $LBRR_symbol = 0; $i = 0; while(1) { $279 = $i; $280 = $psEnc; $281 = $n; $arrayidx499 = (($280) + (($281*10060)|0)|0); $nFramesPerPacket501 = ((($arrayidx499)) + 5740|0); $282 = HEAP32[$nFramesPerPacket501>>2]|0; $cmp502 = ($279|0)<($282|0); if (!($cmp502)) { break; } $283 = $psEnc; $284 = $n; $arrayidx506 = (($283) + (($284*10060)|0)|0); $LBRR_flags508 = ((($arrayidx506)) + 4720|0); $285 = $i; $arrayidx509 = (($LBRR_flags508) + ($285<<2)|0); $286 = HEAP32[$arrayidx509>>2]|0; $287 = $i; $shl = $286 << $287; $288 = $LBRR_symbol; $or = $288 | $shl; $LBRR_symbol = $or; $289 = $i; $inc511 = (($289) + 1)|0; $i = $inc511; } $290 = $LBRR_symbol; $cmp513 = ($290|0)>(0); $cond515 = $cmp513 ? 1 : 0; $conv516 = $cond515&255; $291 = $psEnc; $292 = $n; $arrayidx518 = (($291) + (($292*10060)|0)|0); $LBRR_flag = ((($arrayidx518)) + 4719|0); HEAP8[$LBRR_flag>>0] = $conv516; $293 = $LBRR_symbol; $tobool520 = ($293|0)!=(0); if ($tobool520) { $294 = $psEnc; $295 = $n; $arrayidx523 = (($294) + (($295*10060)|0)|0); $nFramesPerPacket525 = ((($arrayidx523)) + 5740|0); $296 = HEAP32[$nFramesPerPacket525>>2]|0; $cmp526 = ($296|0)>(1); if ($cmp526) { $297 = $psRangeEnc$addr; $298 = $LBRR_symbol; $sub529 = (($298) - 1)|0; $299 = $psEnc; $300 = $n; $arrayidx531 = (($299) + (($300*10060)|0)|0); $nFramesPerPacket533 = ((($arrayidx531)) + 5740|0); $301 = HEAP32[$nFramesPerPacket533>>2]|0; $sub534 = (($301) - 2)|0; $arrayidx535 = (15280 + ($sub534<<2)|0); $302 = HEAP32[$arrayidx535>>2]|0; _ec_enc_icdf($297,$sub529,$302,8); } } $303 = $n; $inc538 = (($303) + 1)|0; $n = $inc538; } $i = 0; while(1) { $304 = $i; $305 = $psEnc; $nFramesPerPacket544 = ((($305)) + 5740|0); $306 = HEAP32[$nFramesPerPacket544>>2]|0; $cmp545 = ($304|0)<($306|0); $n = 0; if (!($cmp545)) { break; } while(1) { $307 = $n; $308 = $encControl$addr; $nChannelsInternal549 = ((($308)) + 4|0); $309 = HEAP32[$nChannelsInternal549>>2]|0; $cmp550 = ($307|0)<($309|0); if (!($cmp550)) { break; } $310 = $psEnc; $311 = $n; $arrayidx554 = (($310) + (($311*10060)|0)|0); $LBRR_flags556 = ((($arrayidx554)) + 4720|0); $312 = $i; $arrayidx557 = (($LBRR_flags556) + ($312<<2)|0); $313 = HEAP32[$arrayidx557>>2]|0; $tobool558 = ($313|0)!=(0); if ($tobool558) { $314 = $encControl$addr; $nChannelsInternal560 = ((($314)) + 4|0); $315 = HEAP32[$nChannelsInternal560>>2]|0; $cmp561 = ($315|0)==(2); $316 = $n; $cmp564 = ($316|0)==(0); $or$cond7 = $cmp561 & $cmp564; if ($or$cond7) { $317 = $psRangeEnc$addr; $318 = $psEnc; $sStereo567 = ((($318)) + 20120|0); $predIx = ((($sStereo567)) + 34|0); $319 = $i; $arrayidx568 = (($predIx) + (($319*6)|0)|0); _silk_stereo_encode_pred($317,$arrayidx568); $320 = $psEnc; $arrayidx571 = ((($320)) + 10060|0); $LBRR_flags573 = ((($arrayidx571)) + 4720|0); $321 = $i; $arrayidx574 = (($LBRR_flags573) + ($321<<2)|0); $322 = HEAP32[$arrayidx574>>2]|0; $cmp575 = ($322|0)==(0); if ($cmp575) { $323 = $psRangeEnc$addr; $324 = $psEnc; $sStereo578 = ((($324)) + 20120|0); $mid_only_flags = ((($sStereo578)) + 52|0); $325 = $i; $arrayidx579 = (($mid_only_flags) + ($325)|0); $326 = HEAP8[$arrayidx579>>0]|0; _silk_stereo_encode_mid_only($323,$326); } } $327 = $i; $cmp582 = ($327|0)>(0); if ($cmp582) { $328 = $psEnc; $329 = $n; $arrayidx586 = (($328) + (($329*10060)|0)|0); $LBRR_flags588 = ((($arrayidx586)) + 4720|0); $330 = $i; $sub589 = (($330) - 1)|0; $arrayidx590 = (($LBRR_flags588) + ($sub589<<2)|0); $331 = HEAP32[$arrayidx590>>2]|0; $tobool591 = ($331|0)!=(0); if ($tobool591) { $condCoding = 2; } else { label = 82; } } else { label = 82; } if ((label|0) == 82) { label = 0; $condCoding = 0; } $332 = $psEnc; $333 = $n; $arrayidx596 = (($332) + (($333*10060)|0)|0); $334 = $psRangeEnc$addr; $335 = $i; $336 = $condCoding; _silk_encode_indices($arrayidx596,$334,$335,1,$336); $337 = $psRangeEnc$addr; $338 = $psEnc; $339 = $n; $arrayidx599 = (($338) + (($339*10060)|0)|0); $indices_LBRR = ((($arrayidx599)) + 6096|0); $340 = $i; $arrayidx601 = (($indices_LBRR) + (($340*36)|0)|0); $signalType = ((($arrayidx601)) + 29|0); $341 = HEAP8[$signalType>>0]|0; $conv602 = $341 << 24 >> 24; $342 = $psEnc; $343 = $n; $arrayidx604 = (($342) + (($343*10060)|0)|0); $indices_LBRR606 = ((($arrayidx604)) + 6096|0); $344 = $i; $arrayidx607 = (($indices_LBRR606) + (($344*36)|0)|0); $quantOffsetType = ((($arrayidx607)) + 30|0); $345 = HEAP8[$quantOffsetType>>0]|0; $conv608 = $345 << 24 >> 24; $346 = $psEnc; $347 = $n; $arrayidx610 = (($346) + (($347*10060)|0)|0); $pulses_LBRR = ((($arrayidx610)) + 6204|0); $348 = $i; $arrayidx612 = (($pulses_LBRR) + (($348*320)|0)|0); $349 = $psEnc; $350 = $n; $arrayidx615 = (($349) + (($350*10060)|0)|0); $frame_length617 = ((($arrayidx615)) + 4580|0); $351 = HEAP32[$frame_length617>>2]|0; _silk_encode_pulses($337,$conv602,$conv608,$arrayidx612,$351); } $352 = $n; $inc620 = (($352) + 1)|0; $n = $inc620; } $353 = $i; $inc623 = (($353) + 1)|0; $i = $inc623; } while(1) { $354 = $n; $355 = $encControl$addr; $nChannelsInternal626 = ((($355)) + 4|0); $356 = HEAP32[$nChannelsInternal626>>2]|0; $cmp627 = ($354|0)<($356|0); if (!($cmp627)) { break; } $357 = $psEnc; $358 = $n; $arrayidx631 = (($357) + (($358*10060)|0)|0); $LBRR_flags633 = ((($arrayidx631)) + 4720|0); ;HEAP32[$LBRR_flags633>>2]=0|0;HEAP32[$LBRR_flags633+4>>2]=0|0;HEAP32[$LBRR_flags633+8>>2]=0|0; $359 = $n; $inc636 = (($359) + 1)|0; $n = $inc636; } $360 = $psRangeEnc$addr; $call638 = (_ec_tell_157($360)|0); $361 = $psEnc; $nBitsUsedLBRR = ((($361)) + 20176|0); HEAP32[$nBitsUsedLBRR>>2] = $call638; } $362 = $psEnc; _silk_HP_variable_cutoff($362); $363 = $encControl$addr; $bitRate = ((($363)) + 28|0); $364 = HEAP32[$bitRate>>2]|0; $365 = $encControl$addr; $payloadSize_ms642 = ((($365)) + 24|0); $366 = HEAP32[$payloadSize_ms642>>2]|0; $mul643 = Math_imul($364, $366)|0; $div644 = (($mul643|0) / 1000)&-1; $nBits = $div644; $367 = $prefillFlag$addr; $tobool645 = ($367|0)!=(0); if (!($tobool645)) { $368 = $psEnc; $nBitsUsedLBRR647 = ((($368)) + 20176|0); $369 = HEAP32[$nBitsUsedLBRR647>>2]|0; $370 = $nBits; $sub648 = (($370) - ($369))|0; $nBits = $sub648; } $371 = $nBits; $372 = $psEnc; $nFramesPerPacket653 = ((($372)) + 5740|0); $373 = HEAP32[$nFramesPerPacket653>>2]|0; $div654 = (($371|0) / ($373|0))&-1; $nBits = $div654; $374 = $encControl$addr; $payloadSize_ms655 = ((($374)) + 24|0); $375 = HEAP32[$payloadSize_ms655>>2]|0; $cmp656 = ($375|0)==(10); $376 = $nBits; $conv659 = $376&65535; $conv660 = $conv659 << 16 >> 16; if ($cmp656) { $mul661 = ($conv660*100)|0; $TargetRate_bps = $mul661; } else { $mul665 = ($conv660*50)|0; $TargetRate_bps = $mul665; } $377 = $psEnc; $nBitsExceeded = ((($377)) + 20180|0); $378 = HEAP32[$nBitsExceeded>>2]|0; $mul667 = ($378*1000)|0; $div668 = (($mul667|0) / 500)&-1; $379 = $TargetRate_bps; $sub669 = (($379) - ($div668))|0; $TargetRate_bps = $sub669; $380 = $prefillFlag$addr; $tobool670 = ($380|0)!=(0); if (!($tobool670)) { $381 = $psEnc; $nFramesEncoded675 = ((($381)) + 5744|0); $382 = HEAP32[$nFramesEncoded675>>2]|0; $cmp676 = ($382|0)>(0); if ($cmp676) { $383 = $psRangeEnc$addr; $call679 = (_ec_tell_157($383)|0); $384 = $psEnc; $nBitsUsedLBRR680 = ((($384)) + 20176|0); $385 = HEAP32[$nBitsUsedLBRR680>>2]|0; $sub681 = (($call679) - ($385))|0; $386 = $nBits; $387 = $psEnc; $nFramesEncoded685 = ((($387)) + 5744|0); $388 = HEAP32[$nFramesEncoded685>>2]|0; $mul686 = Math_imul($386, $388)|0; $sub687 = (($sub681) - ($mul686))|0; $bitsBalance = $sub687; $389 = $bitsBalance; $mul688 = ($389*1000)|0; $div689 = (($mul688|0) / 500)&-1; $390 = $TargetRate_bps; $sub690 = (($390) - ($div689))|0; $TargetRate_bps = $sub690; } } $391 = $encControl$addr; $bitRate692 = ((($391)) + 28|0); $392 = HEAP32[$bitRate692>>2]|0; $cmp693 = ($392|0)>(5000); $393 = $TargetRate_bps; do { if ($cmp693) { $394 = $encControl$addr; $bitRate696 = ((($394)) + 28|0); $395 = HEAP32[$bitRate696>>2]|0; $cmp697 = ($393|0)>($395|0); if ($cmp697) { $396 = $encControl$addr; $bitRate700 = ((($396)) + 28|0); $397 = HEAP32[$bitRate700>>2]|0; $cond726 = $397; break; } else { $398 = $TargetRate_bps; $cmp702 = ($398|0)<(5000); $399 = $TargetRate_bps; $cond707 = $cmp702 ? 5000 : $399; $cond726 = $cond707; break; } } else { $cmp711 = ($393|0)>(5000); if ($cmp711) { $cond726 = 5000; } else { $400 = $TargetRate_bps; $401 = $encControl$addr; $bitRate715 = ((($401)) + 28|0); $402 = HEAP32[$bitRate715>>2]|0; $cmp716 = ($400|0)<($402|0); if ($cmp716) { $403 = $encControl$addr; $bitRate719 = ((($403)) + 28|0); $404 = HEAP32[$bitRate719>>2]|0; $cond726 = $404; break; } else { $405 = $TargetRate_bps; $cond726 = $405; break; } } } } while(0); $TargetRate_bps = $cond726; $406 = $encControl$addr; $nChannelsInternal727 = ((($406)) + 4|0); $407 = HEAP32[$nChannelsInternal727>>2]|0; $cmp728 = ($407|0)==(2); $408 = $psEnc; if ($cmp728) { $sStereo731 = ((($408)) + 20120|0); $409 = $psEnc; $inputBuf735 = ((($409)) + 5092|0); $arrayidx736 = ((($inputBuf735)) + 4|0); $410 = $psEnc; $arrayidx738 = ((($410)) + 10060|0); $inputBuf740 = ((($arrayidx738)) + 5092|0); $arrayidx741 = ((($inputBuf740)) + 4|0); $411 = $psEnc; $sStereo742 = ((($411)) + 20120|0); $predIx743 = ((($sStereo742)) + 34|0); $412 = $psEnc; $nFramesEncoded747 = ((($412)) + 5744|0); $413 = HEAP32[$nFramesEncoded747>>2]|0; $arrayidx748 = (($predIx743) + (($413*6)|0)|0); $414 = $psEnc; $sStereo750 = ((($414)) + 20120|0); $mid_only_flags751 = ((($sStereo750)) + 52|0); $415 = $psEnc; $nFramesEncoded755 = ((($415)) + 5744|0); $416 = HEAP32[$nFramesEncoded755>>2]|0; $arrayidx756 = (($mid_only_flags751) + ($416)|0); $417 = $TargetRate_bps; $418 = $psEnc; $speech_activity_Q8 = ((($418)) + 4528|0); $419 = HEAP32[$speech_activity_Q8>>2]|0; $420 = $encControl$addr; $toMono = ((($420)) + 60|0); $421 = HEAP32[$toMono>>2]|0; $422 = $psEnc; $fs_kHz764 = ((($422)) + 4572|0); $423 = HEAP32[$fs_kHz764>>2]|0; $424 = $psEnc; $frame_length768 = ((($424)) + 4580|0); $425 = HEAP32[$frame_length768>>2]|0; _silk_stereo_LR_to_MS($sStereo731,$arrayidx736,$arrayidx741,$arrayidx748,$arrayidx756,$MStargetRates_bps,$417,$419,$421,$423,$425); $426 = $psEnc; $sStereo769 = ((($426)) + 20120|0); $mid_only_flags770 = ((($sStereo769)) + 52|0); $427 = $psEnc; $nFramesEncoded774 = ((($427)) + 5744|0); $428 = HEAP32[$nFramesEncoded774>>2]|0; $arrayidx775 = (($mid_only_flags770) + ($428)|0); $429 = HEAP8[$arrayidx775>>0]|0; $conv776 = $429 << 24 >> 24; $cmp777 = ($conv776|0)==(0); $430 = $psEnc; if ($cmp777) { $prev_decode_only_middle = ((($430)) + 20204|0); $431 = HEAP32[$prev_decode_only_middle>>2]|0; $cmp780 = ($431|0)==(1); if ($cmp780) { $432 = $psEnc; $arrayidx784 = ((($432)) + 10060|0); $sShape = ((($arrayidx784)) + 7164|0); ;HEAP32[$sShape>>2]=0|0;HEAP32[$sShape+4>>2]=0|0;HEAP32[$sShape+8>>2]=0|0; $433 = $psEnc; $arrayidx786 = ((($433)) + 10060|0); $sNSQ = ((($arrayidx786)) + 144|0); _memset(($sNSQ|0),0,4352)|0; $434 = $psEnc; $arrayidx789 = ((($434)) + 10060|0); $prev_NLSFq_Q15 = ((($arrayidx789)) + 4496|0); ;HEAP32[$prev_NLSFq_Q15>>2]=0|0;HEAP32[$prev_NLSFq_Q15+4>>2]=0|0;HEAP32[$prev_NLSFq_Q15+8>>2]=0|0;HEAP32[$prev_NLSFq_Q15+12>>2]=0|0;HEAP32[$prev_NLSFq_Q15+16>>2]=0|0;HEAP32[$prev_NLSFq_Q15+20>>2]=0|0;HEAP32[$prev_NLSFq_Q15+24>>2]=0|0;HEAP32[$prev_NLSFq_Q15+28>>2]=0|0; $435 = $psEnc; $arrayidx793 = ((($435)) + 10060|0); $sLP = ((($arrayidx793)) + 16|0); ;HEAP32[$sLP>>2]=0|0;HEAP32[$sLP+4>>2]=0|0; $436 = $psEnc; $arrayidx796 = ((($436)) + 10060|0); $prevLag = ((($arrayidx796)) + 4540|0); HEAP32[$prevLag>>2] = 100; $437 = $psEnc; $arrayidx799 = ((($437)) + 10060|0); $sNSQ801 = ((($arrayidx799)) + 144|0); $lagPrev = ((($sNSQ801)) + 4328|0); HEAP32[$lagPrev>>2] = 100; $438 = $psEnc; $arrayidx803 = ((($438)) + 10060|0); $sShape804 = ((($arrayidx803)) + 7164|0); HEAP8[$sShape804>>0] = 10; $439 = $psEnc; $arrayidx806 = ((($439)) + 10060|0); $prevSignalType = ((($arrayidx806)) + 4537|0); HEAP8[$prevSignalType>>0] = 0; $440 = $psEnc; $arrayidx809 = ((($440)) + 10060|0); $sNSQ811 = ((($arrayidx809)) + 144|0); $prev_gain_Q16 = ((($sNSQ811)) + 4344|0); HEAP32[$prev_gain_Q16>>2] = 65536; $441 = $psEnc; $arrayidx813 = ((($441)) + 10060|0); $first_frame_after_reset815 = ((($arrayidx813)) + 4660|0); HEAP32[$first_frame_after_reset815>>2] = 1; } $442 = $psEnc; $arrayidx818 = ((($442)) + 10060|0); _silk_encode_do_VAD_FLP($arrayidx818); } else { $arrayidx821 = ((($430)) + 10060|0); $VAD_flags = ((($arrayidx821)) + 4716|0); $443 = $psEnc; $nFramesEncoded826 = ((($443)) + 5744|0); $444 = HEAP32[$nFramesEncoded826>>2]|0; $arrayidx827 = (($VAD_flags) + ($444)|0); HEAP8[$arrayidx827>>0] = 0; } $445 = $prefillFlag$addr; $tobool829 = ($445|0)!=(0); if (!($tobool829)) { $446 = $psRangeEnc$addr; $447 = $psEnc; $sStereo831 = ((($447)) + 20120|0); $predIx832 = ((($sStereo831)) + 34|0); $448 = $psEnc; $nFramesEncoded836 = ((($448)) + 5744|0); $449 = HEAP32[$nFramesEncoded836>>2]|0; $arrayidx837 = (($predIx832) + (($449*6)|0)|0); _silk_stereo_encode_pred($446,$arrayidx837); $450 = $psEnc; $arrayidx840 = ((($450)) + 10060|0); $VAD_flags842 = ((($arrayidx840)) + 4716|0); $451 = $psEnc; $nFramesEncoded846 = ((($451)) + 5744|0); $452 = HEAP32[$nFramesEncoded846>>2]|0; $arrayidx847 = (($VAD_flags842) + ($452)|0); $453 = HEAP8[$arrayidx847>>0]|0; $conv848 = $453 << 24 >> 24; $cmp849 = ($conv848|0)==(0); if ($cmp849) { $454 = $psRangeEnc$addr; $455 = $psEnc; $sStereo852 = ((($455)) + 20120|0); $mid_only_flags853 = ((($sStereo852)) + 52|0); $456 = $psEnc; $nFramesEncoded857 = ((($456)) + 5744|0); $457 = HEAP32[$nFramesEncoded857>>2]|0; $arrayidx858 = (($mid_only_flags853) + ($457)|0); $458 = HEAP8[$arrayidx858>>0]|0; _silk_stereo_encode_mid_only($454,$458); } } } else { $inputBuf865 = ((($408)) + 5092|0); $459 = $psEnc; $sStereo867 = ((($459)) + 20120|0); $sMid = ((($sStereo867)) + 4|0); ;HEAP32[$inputBuf865>>2]=HEAP32[$sMid>>2]|0; $460 = $psEnc; $sStereo869 = ((($460)) + 20120|0); $sMid870 = ((($sStereo869)) + 4|0); $461 = $psEnc; $inputBuf875 = ((($461)) + 5092|0); $462 = $psEnc; $frame_length879 = ((($462)) + 4580|0); $463 = HEAP32[$frame_length879>>2]|0; $arrayidx880 = (($inputBuf875) + ($463<<1)|0); ;HEAP16[$sMid870>>1]=HEAP16[$arrayidx880>>1]|0;HEAP16[$sMid870+2>>1]=HEAP16[$arrayidx880+2>>1]|0; } $464 = $psEnc; _silk_encode_do_VAD_FLP($464); $n = 0; while(1) { $465 = $n; $466 = $encControl$addr; $nChannelsInternal885 = ((($466)) + 4|0); $467 = HEAP32[$nChannelsInternal885>>2]|0; $cmp886 = ($465|0)<($467|0); if (!($cmp886)) { break; } $468 = $encControl$addr; $maxBits889 = ((($468)) + 56|0); $469 = HEAP32[$maxBits889>>2]|0; $maxBits = $469; $470 = $tot_blocks; $cmp890 = ($470|0)==(2); $471 = $curr_block; $cmp893 = ($471|0)==(0); $or$cond8 = $cmp890 & $cmp893; do { if ($or$cond8) { $472 = $maxBits; $mul896 = ($472*3)|0; $div897 = (($mul896|0) / 5)&-1; $maxBits = $div897; } else { $473 = $tot_blocks; $cmp899 = ($473|0)==(3); if ($cmp899) { $474 = $curr_block; $cmp902 = ($474|0)==(0); if ($cmp902) { $475 = $maxBits; $mul905 = $475<<1; $div906 = (($mul905|0) / 5)&-1; $maxBits = $div906; break; } $476 = $curr_block; $cmp908 = ($476|0)==(1); if (!($cmp908)) { break; } $477 = $maxBits; $mul911 = ($477*3)|0; $div912 = (($mul911|0) / 4)&-1; $maxBits = $div912; } } } while(0); $478 = $encControl$addr; $useCBR917 = ((($478)) + 52|0); $479 = HEAP32[$useCBR917>>2]|0; $tobool918 = ($479|0)!=(0); if ($tobool918) { $480 = $curr_block; $481 = $tot_blocks; $sub919 = (($481) - 1)|0; $cmp920 = ($480|0)==($sub919|0); $482 = $cmp920; } else { $482 = 0; } $land$ext = $482&1; $useCBR = $land$ext; $483 = $encControl$addr; $nChannelsInternal922 = ((($483)) + 4|0); $484 = HEAP32[$nChannelsInternal922>>2]|0; $cmp923 = ($484|0)==(1); do { if ($cmp923) { $485 = $TargetRate_bps; $channelRate_bps = $485; } else { $486 = $n; $arrayidx927 = (($MStargetRates_bps) + ($486<<2)|0); $487 = HEAP32[$arrayidx927>>2]|0; $channelRate_bps = $487; $488 = $n; $cmp928 = ($488|0)==(0); if (!($cmp928)) { break; } $arrayidx931 = ((($MStargetRates_bps)) + 4|0); $489 = HEAP32[$arrayidx931>>2]|0; $cmp932 = ($489|0)>(0); if (!($cmp932)) { break; } $useCBR = 0; $490 = $encControl$addr; $maxBits935 = ((($490)) + 56|0); $491 = HEAP32[$maxBits935>>2]|0; $492 = $tot_blocks; $mul936 = $492<<1; $div937 = (($491|0) / ($mul936|0))&-1; $493 = $maxBits; $sub938 = (($493) - ($div937))|0; $maxBits = $sub938; } } while(0); $494 = $channelRate_bps; $cmp941 = ($494|0)>(0); if ($cmp941) { $495 = $psEnc; $496 = $n; $arrayidx946 = (($495) + (($496*10060)|0)|0); $497 = $channelRate_bps; (_silk_control_SNR($arrayidx946,$497)|0); $498 = $psEnc; $nFramesEncoded952 = ((($498)) + 5744|0); $499 = HEAP32[$nFramesEncoded952>>2]|0; $500 = $n; $sub953 = (($499) - ($500))|0; $cmp954 = ($sub953|0)<=(0); L188: do { if ($cmp954) { $condCoding944 = 0; } else { $501 = $n; $cmp958 = ($501|0)>(0); do { if ($cmp958) { $502 = $psEnc; $prev_decode_only_middle961 = ((($502)) + 20204|0); $503 = HEAP32[$prev_decode_only_middle961>>2]|0; $tobool962 = ($503|0)!=(0); if (!($tobool962)) { break; } $condCoding944 = 1; break L188; } } while(0); $condCoding944 = 2; } } while(0); $504 = $psEnc; $505 = $n; $arrayidx968 = (($504) + (($505*10060)|0)|0); $506 = $nBytesOut$addr; $507 = $psRangeEnc$addr; $508 = $condCoding944; $509 = $maxBits; $510 = $useCBR; $call969 = (_silk_encode_frame_FLP($arrayidx968,$506,$507,$508,$509,$510)|0); $ret = $call969; } $511 = $psEnc; $512 = $n; $arrayidx976 = (($511) + (($512*10060)|0)|0); $controlled_since_last_payload978 = ((($arrayidx976)) + 4664|0); HEAP32[$controlled_since_last_payload978>>2] = 0; $513 = $psEnc; $514 = $n; $arrayidx980 = (($513) + (($514*10060)|0)|0); $inputBufIx982 = ((($arrayidx980)) + 5736|0); HEAP32[$inputBufIx982>>2] = 0; $515 = $psEnc; $516 = $n; $arrayidx984 = (($515) + (($516*10060)|0)|0); $nFramesEncoded986 = ((($arrayidx984)) + 5744|0); $517 = HEAP32[$nFramesEncoded986>>2]|0; $inc987 = (($517) + 1)|0; HEAP32[$nFramesEncoded986>>2] = $inc987; $518 = $n; $inc989 = (($518) + 1)|0; $n = $inc989; } $519 = $psEnc; $sStereo991 = ((($519)) + 20120|0); $mid_only_flags992 = ((($sStereo991)) + 52|0); $520 = $psEnc; $nFramesEncoded996 = ((($520)) + 5744|0); $521 = HEAP32[$nFramesEncoded996>>2]|0; $sub997 = (($521) - 1)|0; $arrayidx998 = (($mid_only_flags992) + ($sub997)|0); $522 = HEAP8[$arrayidx998>>0]|0; $conv999 = $522 << 24 >> 24; $523 = $psEnc; $prev_decode_only_middle1000 = ((($523)) + 20204|0); HEAP32[$prev_decode_only_middle1000>>2] = $conv999; $524 = $nBytesOut$addr; $525 = HEAP32[$524>>2]|0; $cmp1001 = ($525|0)>(0); do { if ($cmp1001) { $526 = $psEnc; $nFramesEncoded1007 = ((($526)) + 5744|0); $527 = HEAP32[$nFramesEncoded1007>>2]|0; $528 = $psEnc; $nFramesPerPacket1011 = ((($528)) + 5740|0); $529 = HEAP32[$nFramesPerPacket1011>>2]|0; $cmp1012 = ($527|0)==($529|0); if ($cmp1012) { $flags = 0; $n = 0; while(1) { $530 = $n; $531 = $encControl$addr; $nChannelsInternal1016 = ((($531)) + 4|0); $532 = HEAP32[$nChannelsInternal1016>>2]|0; $cmp1017 = ($530|0)<($532|0); if (!($cmp1017)) { break; } $i = 0; while(1) { $533 = $i; $534 = $psEnc; $535 = $n; $arrayidx1022 = (($534) + (($535*10060)|0)|0); $nFramesPerPacket1024 = ((($arrayidx1022)) + 5740|0); $536 = HEAP32[$nFramesPerPacket1024>>2]|0; $cmp1025 = ($533|0)<($536|0); $537 = $flags; $shl1028 = $537 << 1; $flags = $shl1028; $538 = $psEnc; $539 = $n; $arrayidx1030 = (($538) + (($539*10060)|0)|0); if (!($cmp1025)) { break; } $VAD_flags1032 = ((($arrayidx1030)) + 4716|0); $540 = $i; $arrayidx1033 = (($VAD_flags1032) + ($540)|0); $541 = HEAP8[$arrayidx1033>>0]|0; $conv1034 = $541 << 24 >> 24; $542 = $flags; $or1035 = $542 | $conv1034; $flags = $or1035; $543 = $i; $inc1037 = (($543) + 1)|0; $i = $inc1037; } $LBRR_flag1043 = ((($arrayidx1030)) + 4719|0); $544 = HEAP8[$LBRR_flag1043>>0]|0; $conv1044 = $544 << 24 >> 24; $545 = $flags; $or1045 = $545 | $conv1044; $flags = $or1045; $546 = $n; $inc1047 = (($546) + 1)|0; $n = $inc1047; } $547 = $prefillFlag$addr; $tobool1049 = ($547|0)!=(0); if (!($tobool1049)) { $548 = $psRangeEnc$addr; $549 = $flags; $550 = $psEnc; $nFramesPerPacket1054 = ((($550)) + 5740|0); $551 = HEAP32[$nFramesPerPacket1054>>2]|0; $add1055 = (($551) + 1)|0; $552 = $encControl$addr; $nChannelsInternal1056 = ((($552)) + 4|0); $553 = HEAP32[$nChannelsInternal1056>>2]|0; $mul1057 = Math_imul($add1055, $553)|0; _ec_enc_patch_initial_bits($548,$549,$mul1057); } $554 = $psEnc; $inDTX1062 = ((($554)) + 6076|0); $555 = HEAP32[$inDTX1062>>2]|0; $tobool1063 = ($555|0)!=(0); do { if ($tobool1063) { $556 = $encControl$addr; $nChannelsInternal1065 = ((($556)) + 4|0); $557 = HEAP32[$nChannelsInternal1065>>2]|0; $cmp1066 = ($557|0)==(1); if (!($cmp1066)) { $558 = $psEnc; $arrayidx1070 = ((($558)) + 10060|0); $inDTX1072 = ((($arrayidx1070)) + 6076|0); $559 = HEAP32[$inDTX1072>>2]|0; $tobool1073 = ($559|0)!=(0); if (!($tobool1073)) { break; } } $560 = $nBytesOut$addr; HEAP32[$560>>2] = 0; } } while(0); $561 = $nBytesOut$addr; $562 = HEAP32[$561>>2]|0; $mul1076 = $562<<3; $563 = $psEnc; $nBitsExceeded1077 = ((($563)) + 20180|0); $564 = HEAP32[$nBitsExceeded1077>>2]|0; $add1078 = (($564) + ($mul1076))|0; HEAP32[$nBitsExceeded1077>>2] = $add1078; $565 = $encControl$addr; $bitRate1079 = ((($565)) + 28|0); $566 = HEAP32[$bitRate1079>>2]|0; $567 = $encControl$addr; $payloadSize_ms1080 = ((($567)) + 24|0); $568 = HEAP32[$payloadSize_ms1080>>2]|0; $mul1081 = Math_imul($566, $568)|0; $div1082 = (($mul1081|0) / 1000)&-1; $569 = $psEnc; $nBitsExceeded1083 = ((($569)) + 20180|0); $570 = HEAP32[$nBitsExceeded1083>>2]|0; $sub1084 = (($570) - ($div1082))|0; HEAP32[$nBitsExceeded1083>>2] = $sub1084; $571 = $psEnc; $nBitsExceeded1085 = ((($571)) + 20180|0); $572 = HEAP32[$nBitsExceeded1085>>2]|0; $cmp1086 = ($572|0)>(10000); do { if ($cmp1086) { $cond1099 = 10000; } else { $573 = $psEnc; $nBitsExceeded1090 = ((($573)) + 20180|0); $574 = HEAP32[$nBitsExceeded1090>>2]|0; $cmp1091 = ($574|0)<(0); if ($cmp1091) { $cond1099 = 0; break; } $575 = $psEnc; $nBitsExceeded1095 = ((($575)) + 20180|0); $576 = HEAP32[$nBitsExceeded1095>>2]|0; $cond1099 = $576; } } while(0); $577 = $psEnc; $nBitsExceeded1100 = ((($577)) + 20180|0); HEAP32[$nBitsExceeded1100>>2] = $cond1099; $578 = $psEnc; $timeSinceSwitchAllowed_ms = ((($578)) + 20196|0); $579 = HEAP32[$timeSinceSwitchAllowed_ms>>2]|0; $conv1101 = $579&65535; $conv1102 = $conv1101 << 16 >> 16; $mul1103 = 0; $580 = $psEnc; $timeSinceSwitchAllowed_ms1104 = ((($580)) + 20196|0); $581 = HEAP32[$timeSinceSwitchAllowed_ms1104>>2]|0; $conv1105 = $581&65535; $conv1106 = $conv1105 << 16 >> 16; $mul1107 = ($conv1106*3188)|0; $shr1108 = $mul1107 >> 16; $add1109 = (($mul1103) + ($shr1108))|0; $add1110 = (13 + ($add1109))|0; $speech_act_thr_for_switch_Q8 = $add1110; $582 = $psEnc; $speech_activity_Q81114 = ((($582)) + 4528|0); $583 = HEAP32[$speech_activity_Q81114>>2]|0; $584 = $speech_act_thr_for_switch_Q8; $cmp1115 = ($583|0)<($584|0); $585 = $psEnc; $allowBandwidthSwitch1118 = ((($585)) + 20200|0); if ($cmp1115) { HEAP32[$allowBandwidthSwitch1118>>2] = 1; $586 = $psEnc; $timeSinceSwitchAllowed_ms1119 = ((($586)) + 20196|0); HEAP32[$timeSinceSwitchAllowed_ms1119>>2] = 0; break; } else { HEAP32[$allowBandwidthSwitch1118>>2] = 0; $587 = $encControl$addr; $payloadSize_ms1122 = ((($587)) + 24|0); $588 = HEAP32[$payloadSize_ms1122>>2]|0; $589 = $psEnc; $timeSinceSwitchAllowed_ms1123 = ((($589)) + 20196|0); $590 = HEAP32[$timeSinceSwitchAllowed_ms1123>>2]|0; $add1124 = (($590) + ($588))|0; HEAP32[$timeSinceSwitchAllowed_ms1123>>2] = $add1124; break; } } } } while(0); $591 = $nSamplesIn$addr; $cmp1127 = ($591|0)==(0); if ($cmp1127) { break; } $592 = $curr_block; $inc1133 = (($592) + 1)|0; $curr_block = $inc1133; } $593 = $encControl$addr; $nChannelsInternal1134 = ((($593)) + 4|0); $594 = HEAP32[$nChannelsInternal1134>>2]|0; $595 = $psEnc; $nPrevChannelsInternal1135 = ((($595)) + 20192|0); HEAP32[$nPrevChannelsInternal1135>>2] = $594; $596 = $psEnc; $allowBandwidthSwitch1136 = ((($596)) + 20200|0); $597 = HEAP32[$allowBandwidthSwitch1136>>2]|0; $598 = $encControl$addr; $allowBandwidthSwitch1137 = ((($598)) + 76|0); HEAP32[$allowBandwidthSwitch1137>>2] = $597; $599 = $psEnc; $fs_kHz1141 = ((($599)) + 4572|0); $600 = HEAP32[$fs_kHz1141>>2]|0; $cmp1142 = ($600|0)==(16); if ($cmp1142) { $601 = $psEnc; $sLP1148 = ((($601)) + 16|0); $mode = ((($sLP1148)) + 12|0); $602 = HEAP32[$mode>>2]|0; $cmp1149 = ($602|0)==(0); $603 = $cmp1149; } else { $603 = 0; } $land$ext1152 = $603&1; $604 = $encControl$addr; $inWBmodeWithoutVariableLP = ((($604)) + 80|0); HEAP32[$inWBmodeWithoutVariableLP>>2] = $land$ext1152; $605 = $psEnc; $fs_kHz1156 = ((($605)) + 4572|0); $606 = HEAP32[$fs_kHz1156>>2]|0; $conv1157 = $606&65535; $conv1158 = $conv1157 << 16 >> 16; $mul1159 = ($conv1158*1000)|0; $607 = $encControl$addr; $internalSampleRate = ((($607)) + 72|0); HEAP32[$internalSampleRate>>2] = $mul1159; $608 = $encControl$addr; $toMono1160 = ((($608)) + 60|0); $609 = HEAP32[$toMono1160>>2]|0; $tobool1161 = ($609|0)!=(0); if ($tobool1161) { $cond1168 = 0; } else { $610 = $psEnc; $sStereo1164 = ((($610)) + 20120|0); $smth_width_Q141165 = ((($sStereo1164)) + 28|0); $611 = HEAP16[$smth_width_Q141165>>1]|0; $conv1166 = $611 << 16 >> 16; $cond1168 = $conv1166; } $612 = $encControl$addr; $stereoWidth_Q14 = ((($612)) + 84|0); HEAP32[$stereoWidth_Q14>>2] = $cond1168; $613 = $prefillFlag$addr; $tobool1169 = ($613|0)!=(0); L234: do { if ($tobool1169) { $614 = $tmp_payloadSize_ms; $615 = $encControl$addr; $payloadSize_ms1171 = ((($615)) + 24|0); HEAP32[$payloadSize_ms1171>>2] = $614; $616 = $tmp_complexity; $617 = $encControl$addr; $complexity1172 = ((($617)) + 36|0); HEAP32[$complexity1172>>2] = $616; $n = 0; while(1) { $618 = $n; $619 = $encControl$addr; $nChannelsInternal1174 = ((($619)) + 4|0); $620 = HEAP32[$nChannelsInternal1174>>2]|0; $cmp1175 = ($618|0)<($620|0); if (!($cmp1175)) { break L234; } $621 = $psEnc; $622 = $n; $arrayidx1179 = (($621) + (($622*10060)|0)|0); $controlled_since_last_payload1181 = ((($arrayidx1179)) + 4664|0); HEAP32[$controlled_since_last_payload1181>>2] = 0; $623 = $psEnc; $624 = $n; $arrayidx1183 = (($623) + (($624*10060)|0)|0); $prefillFlag1185 = ((($arrayidx1183)) + 4676|0); HEAP32[$prefillFlag1185>>2] = 0; $625 = $n; $inc1187 = (($625) + 1)|0; $n = $inc1187; } } } while(0); $626 = $psEnc; $indices = ((($626)) + 4732|0); $signalType1193 = ((($indices)) + 29|0); $627 = HEAP8[$signalType1193>>0]|0; $conv1194 = $627 << 24 >> 24; $628 = $encControl$addr; $signalType1195 = ((($628)) + 92|0); HEAP32[$signalType1195>>2] = $conv1194; $629 = $psEnc; $indices1199 = ((($629)) + 4732|0); $signalType1200 = ((($indices1199)) + 29|0); $630 = HEAP8[$signalType1200>>0]|0; $conv1201 = $630 << 24 >> 24; $shr1202 = $conv1201 >> 1; $arrayidx1203 = (23512 + ($shr1202<<2)|0); $631 = $psEnc; $indices1207 = ((($631)) + 4732|0); $quantOffsetType1208 = ((($indices1207)) + 30|0); $632 = HEAP8[$quantOffsetType1208>>0]|0; $idxprom = $632 << 24 >> 24; $arrayidx1209 = (($arrayidx1203) + ($idxprom<<1)|0); $633 = HEAP16[$arrayidx1209>>1]|0; $conv1210 = $633 << 16 >> 16; $634 = $encControl$addr; $offset = ((($634)) + 96|0); HEAP32[$offset>>2] = $conv1210; $635 = $ret; $retval = $635; $636 = $saved_stack; _llvm_stackrestore(($636|0)); $637 = $retval; STACKTOP = sp;return ($637|0); } function _ec_tell_157($_this) { $_this = $_this|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $_this$addr = 0, $nbits_total = 0, $rng = 0, $sub = 0, $sub1 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $_this$addr = $_this; $0 = $_this$addr; $nbits_total = ((($0)) + 20|0); $1 = HEAP32[$nbits_total>>2]|0; $2 = $_this$addr; $rng = ((($2)) + 28|0); $3 = HEAP32[$rng>>2]|0; $4 = (Math_clz32(($3|0))|0); $sub = (32 - ($4))|0; $sub1 = (($1) - ($sub))|0; STACKTOP = sp;return ($sub1|0); } function _silk_encode_indices($psEncC,$psRangeEnc,$FrameIndex,$encode_LBRR,$condCoding) { $psEncC = $psEncC|0; $psRangeEnc = $psRangeEnc|0; $FrameIndex = $FrameIndex|0; $encode_LBRR = $encode_LBRR|0; $condCoding = $condCoding|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0; var $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0; var $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0; var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0; var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0; var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $CB1_iCDF = 0, $FrameIndex$addr = 0, $LTPIndex = 0, $LTP_scaleIndex = 0, $NLSFIndices = 0, $NLSFIndices39 = 0, $NLSFIndices48 = 0, $NLSFIndices59 = 0, $NLSFIndices65 = 0, $NLSFIndices77 = 0, $NLSFIndices84 = 0, $NLSFInterpCoef_Q2 = 0, $PERIndex = 0; var $PERIndex155 = 0, $Seed = 0, $add = 0, $add125 = 0, $add49 = 0, $add60 = 0, $add66 = 0, $add78 = 0, $add85 = 0, $add88 = 0, $and = 0, $arrayidx = 0, $arrayidx153 = 0, $arrayidx157 = 0, $arrayidx17 = 0, $arrayidx25 = 0, $arrayidx35 = 0, $arrayidx50 = 0, $arrayidx56 = 0, $arrayidx58 = 0; var $arrayidx61 = 0, $arrayidx67 = 0, $arrayidx74 = 0, $arrayidx76 = 0, $arrayidx79 = 0, $arrayidx86 = 0, $arrayidx91 = 0, $arrayidx93 = 0, $cmp = 0, $cmp100 = 0, $cmp107 = 0, $cmp110 = 0, $cmp112 = 0, $cmp118 = 0, $cmp121 = 0, $cmp150 = 0, $cmp161 = 0, $cmp22 = 0, $cmp45 = 0, $cmp52 = 0; var $cmp69 = 0, $cmp7 = 0, $condCoding$addr = 0, $contourIndex = 0, $conv = 0, $conv1 = 0, $conv103 = 0, $conv106 = 0, $conv11 = 0, $conv115 = 0, $conv116 = 0, $conv131 = 0, $conv134 = 0, $conv135 = 0, $conv136 = 0, $conv139 = 0, $conv140 = 0, $conv146 = 0, $conv147 = 0, $conv154 = 0; var $conv164 = 0, $conv168 = 0, $conv170 = 0, $conv20 = 0, $conv26 = 0, $conv28 = 0, $conv30 = 0, $conv33 = 0, $conv41 = 0, $conv44 = 0, $conv51 = 0, $conv62 = 0, $conv68 = 0, $conv80 = 0, $conv87 = 0, $delta_lagIndex = 0, $div = 0, $ec_iCDF = 0, $ec_iCDF73 = 0, $ec_iCDF90 = 0; var $ec_ix = 0, $ec_prevLagIndex = 0, $ec_prevLagIndex145 = 0, $ec_prevSignalType = 0, $ec_prevSignalType169 = 0, $encode_LBRR$addr = 0, $encode_absolute_lagIndex = 0, $fs_kHz = 0, $fs_kHz137 = 0, $i = 0, $idxprom = 0, $idxprom156 = 0, $idxprom57 = 0, $idxprom75 = 0, $idxprom92 = 0, $inc = 0, $inc159 = 0, $inc97 = 0, $indices = 0, $indices_LBRR = 0; var $k = 0, $lagIndex = 0, $lagIndex130 = 0, $lagIndex133 = 0, $lagIndex144 = 0, $mul = 0, $mul141 = 0, $mul34 = 0, $nb_subfr = 0, $nb_subfr149 = 0, $nb_subfr99 = 0, $or$cond = 0, $or$cond1 = 0, $order = 0, $pitch_contour_iCDF = 0, $pitch_high_bits = 0, $pitch_lag_low_bits_iCDF = 0, $pitch_low_bits = 0, $pred_Q8 = 0, $psEncC$addr = 0; var $psIndices = 0, $psNLSF_CB = 0, $psNLSF_CB32 = 0, $psNLSF_CB38 = 0, $psNLSF_CB43 = 0, $psNLSF_CB55 = 0, $psNLSF_CB72 = 0, $psNLSF_CB89 = 0, $psRangeEnc$addr = 0, $quantOffsetType = 0, $shr = 0, $shr132 = 0, $shr138 = 0, $shr31 = 0, $signalType = 0, $signalType105 = 0, $signalType16 = 0, $signalType167 = 0, $signalType29 = 0, $sub = 0; var $sub117 = 0, $sub142 = 0, $sub63 = 0, $sub81 = 0, $sub82 = 0, $tobool = 0, $tobool128 = 0, $tobool2 = 0, $typeOffset = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 112|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(112|0); $ec_ix = sp + 56|0; $pred_Q8 = sp + 88|0; $psEncC$addr = $psEncC; $psRangeEnc$addr = $psRangeEnc; $FrameIndex$addr = $FrameIndex; $encode_LBRR$addr = $encode_LBRR; $condCoding$addr = $condCoding; $0 = $encode_LBRR$addr; $tobool = ($0|0)!=(0); $1 = $psEncC$addr; if ($tobool) { $indices_LBRR = ((($1)) + 6096|0); $2 = $FrameIndex$addr; $arrayidx = (($indices_LBRR) + (($2*36)|0)|0); $psIndices = $arrayidx; } else { $indices = ((($1)) + 4732|0); $psIndices = $indices; } $3 = $psIndices; $signalType = ((($3)) + 29|0); $4 = HEAP8[$signalType>>0]|0; $conv = $4 << 24 >> 24; $mul = $conv<<1; $5 = $psIndices; $quantOffsetType = ((($5)) + 30|0); $6 = HEAP8[$quantOffsetType>>0]|0; $conv1 = $6 << 24 >> 24; $add = (($mul) + ($conv1))|0; $typeOffset = $add; $7 = $encode_LBRR$addr; $tobool2 = ($7|0)!=(0); $8 = $typeOffset; $cmp = ($8|0)>=(2); $or$cond = $tobool2 | $cmp; $9 = $psRangeEnc$addr; $10 = $typeOffset; if ($or$cond) { $sub = (($10) - 2)|0; _ec_enc_icdf($9,$sub,32818,8); } else { _ec_enc_icdf($9,$10,32822,8); } $11 = $condCoding$addr; $cmp7 = ($11|0)==(2); $12 = $psRangeEnc$addr; $13 = $psIndices; $14 = HEAP8[$13>>0]|0; $conv11 = $14 << 24 >> 24; if ($cmp7) { _ec_enc_icdf($12,$conv11,32281,8); } else { $shr = $conv11 >> 3; $15 = $psIndices; $signalType16 = ((($15)) + 29|0); $16 = HEAP8[$signalType16>>0]|0; $idxprom = $16 << 24 >> 24; $arrayidx17 = (32257 + ($idxprom<<3)|0); _ec_enc_icdf($12,$shr,$arrayidx17,8); $17 = $psRangeEnc$addr; $18 = $psIndices; $19 = HEAP8[$18>>0]|0; $conv20 = $19 << 24 >> 24; $and = $conv20 & 7; _ec_enc_icdf($17,$and,32847,8); } $i = 1; while(1) { $20 = $i; $21 = $psEncC$addr; $nb_subfr = ((($21)) + 4576|0); $22 = HEAP32[$nb_subfr>>2]|0; $cmp22 = ($20|0)<($22|0); $23 = $psRangeEnc$addr; $24 = $psIndices; if (!($cmp22)) { break; } $25 = $i; $arrayidx25 = (($24) + ($25)|0); $26 = HEAP8[$arrayidx25>>0]|0; $conv26 = $26 << 24 >> 24; _ec_enc_icdf($23,$conv26,32281,8); $27 = $i; $inc = (($27) + 1)|0; $i = $inc; } $NLSFIndices = ((($24)) + 8|0); $28 = HEAP8[$NLSFIndices>>0]|0; $conv28 = $28 << 24 >> 24; $29 = $psEncC$addr; $psNLSF_CB = ((($29)) + 4688|0); $30 = HEAP32[$psNLSF_CB>>2]|0; $CB1_iCDF = ((($30)) + 16|0); $31 = HEAP32[$CB1_iCDF>>2]|0; $32 = $psIndices; $signalType29 = ((($32)) + 29|0); $33 = HEAP8[$signalType29>>0]|0; $conv30 = $33 << 24 >> 24; $shr31 = $conv30 >> 1; $34 = $psEncC$addr; $psNLSF_CB32 = ((($34)) + 4688|0); $35 = HEAP32[$psNLSF_CB32>>2]|0; $36 = HEAP16[$35>>1]|0; $conv33 = $36 << 16 >> 16; $mul34 = Math_imul($shr31, $conv33)|0; $arrayidx35 = (($31) + ($mul34)|0); _ec_enc_icdf($23,$conv28,$arrayidx35,8); $37 = $psEncC$addr; $psNLSF_CB38 = ((($37)) + 4688|0); $38 = HEAP32[$psNLSF_CB38>>2]|0; $39 = $psIndices; $NLSFIndices39 = ((($39)) + 8|0); $40 = HEAP8[$NLSFIndices39>>0]|0; $conv41 = $40 << 24 >> 24; _silk_NLSF_unpack($ec_ix,$pred_Q8,$38,$conv41); $i = 0; while(1) { $41 = $i; $42 = $psEncC$addr; $psNLSF_CB43 = ((($42)) + 4688|0); $43 = HEAP32[$psNLSF_CB43>>2]|0; $order = ((($43)) + 2|0); $44 = HEAP16[$order>>1]|0; $conv44 = $44 << 16 >> 16; $cmp45 = ($41|0)<($conv44|0); if (!($cmp45)) { break; } $45 = $psIndices; $NLSFIndices48 = ((($45)) + 8|0); $46 = $i; $add49 = (($46) + 1)|0; $arrayidx50 = (($NLSFIndices48) + ($add49)|0); $47 = HEAP8[$arrayidx50>>0]|0; $conv51 = $47 << 24 >> 24; $cmp52 = ($conv51|0)>=(4); do { if ($cmp52) { $48 = $psRangeEnc$addr; $49 = $psEncC$addr; $psNLSF_CB55 = ((($49)) + 4688|0); $50 = HEAP32[$psNLSF_CB55>>2]|0; $ec_iCDF = ((($50)) + 28|0); $51 = HEAP32[$ec_iCDF>>2]|0; $52 = $i; $arrayidx56 = (($ec_ix) + ($52<<1)|0); $53 = HEAP16[$arrayidx56>>1]|0; $idxprom57 = $53 << 16 >> 16; $arrayidx58 = (($51) + ($idxprom57)|0); _ec_enc_icdf($48,8,$arrayidx58,8); $54 = $psRangeEnc$addr; $55 = $psIndices; $NLSFIndices59 = ((($55)) + 8|0); $56 = $i; $add60 = (($56) + 1)|0; $arrayidx61 = (($NLSFIndices59) + ($add60)|0); $57 = HEAP8[$arrayidx61>>0]|0; $conv62 = $57 << 24 >> 24; $sub63 = (($conv62) - 4)|0; _ec_enc_icdf($54,$sub63,32855,8); } else { $58 = $psIndices; $NLSFIndices65 = ((($58)) + 8|0); $59 = $i; $add66 = (($59) + 1)|0; $arrayidx67 = (($NLSFIndices65) + ($add66)|0); $60 = HEAP8[$arrayidx67>>0]|0; $conv68 = $60 << 24 >> 24; $cmp69 = ($conv68|0)<=(-4); $61 = $psRangeEnc$addr; if ($cmp69) { $62 = $psEncC$addr; $psNLSF_CB72 = ((($62)) + 4688|0); $63 = HEAP32[$psNLSF_CB72>>2]|0; $ec_iCDF73 = ((($63)) + 28|0); $64 = HEAP32[$ec_iCDF73>>2]|0; $65 = $i; $arrayidx74 = (($ec_ix) + ($65<<1)|0); $66 = HEAP16[$arrayidx74>>1]|0; $idxprom75 = $66 << 16 >> 16; $arrayidx76 = (($64) + ($idxprom75)|0); _ec_enc_icdf($61,0,$arrayidx76,8); $67 = $psRangeEnc$addr; $68 = $psIndices; $NLSFIndices77 = ((($68)) + 8|0); $69 = $i; $add78 = (($69) + 1)|0; $arrayidx79 = (($NLSFIndices77) + ($add78)|0); $70 = HEAP8[$arrayidx79>>0]|0; $conv80 = $70 << 24 >> 24; $sub81 = (0 - ($conv80))|0; $sub82 = (($sub81) - 4)|0; _ec_enc_icdf($67,$sub82,32855,8); break; } else { $71 = $psIndices; $NLSFIndices84 = ((($71)) + 8|0); $72 = $i; $add85 = (($72) + 1)|0; $arrayidx86 = (($NLSFIndices84) + ($add85)|0); $73 = HEAP8[$arrayidx86>>0]|0; $conv87 = $73 << 24 >> 24; $add88 = (($conv87) + 4)|0; $74 = $psEncC$addr; $psNLSF_CB89 = ((($74)) + 4688|0); $75 = HEAP32[$psNLSF_CB89>>2]|0; $ec_iCDF90 = ((($75)) + 28|0); $76 = HEAP32[$ec_iCDF90>>2]|0; $77 = $i; $arrayidx91 = (($ec_ix) + ($77<<1)|0); $78 = HEAP16[$arrayidx91>>1]|0; $idxprom92 = $78 << 16 >> 16; $arrayidx93 = (($76) + ($idxprom92)|0); _ec_enc_icdf($61,$add88,$arrayidx93,8); break; } } } while(0); $79 = $i; $inc97 = (($79) + 1)|0; $i = $inc97; } $80 = $psEncC$addr; $nb_subfr99 = ((($80)) + 4576|0); $81 = HEAP32[$nb_subfr99>>2]|0; $cmp100 = ($81|0)==(4); if ($cmp100) { $82 = $psRangeEnc$addr; $83 = $psIndices; $NLSFInterpCoef_Q2 = ((($83)) + 31|0); $84 = HEAP8[$NLSFInterpCoef_Q2>>0]|0; $conv103 = $84 << 24 >> 24; _ec_enc_icdf($82,$conv103,32824,8); } $85 = $psIndices; $signalType105 = ((($85)) + 29|0); $86 = HEAP8[$signalType105>>0]|0; $conv106 = $86 << 24 >> 24; $cmp107 = ($conv106|0)==(2); if (!($cmp107)) { $141 = $psIndices; $signalType167 = ((($141)) + 29|0); $142 = HEAP8[$signalType167>>0]|0; $conv168 = $142 << 24 >> 24; $143 = $psEncC$addr; $ec_prevSignalType169 = ((($143)) + 5764|0); HEAP32[$ec_prevSignalType169>>2] = $conv168; $144 = $psRangeEnc$addr; $145 = $psIndices; $Seed = ((($145)) + 34|0); $146 = HEAP8[$Seed>>0]|0; $conv170 = $146 << 24 >> 24; _ec_enc_icdf($144,$conv170,32832,8); STACKTOP = sp;return; } $encode_absolute_lagIndex = 1; $87 = $condCoding$addr; $cmp110 = ($87|0)==(2); if ($cmp110) { $88 = $psEncC$addr; $ec_prevSignalType = ((($88)) + 5764|0); $89 = HEAP32[$ec_prevSignalType>>2]|0; $cmp112 = ($89|0)==(2); if ($cmp112) { $90 = $psIndices; $lagIndex = ((($90)) + 26|0); $91 = HEAP16[$lagIndex>>1]|0; $conv115 = $91 << 16 >> 16; $92 = $psEncC$addr; $ec_prevLagIndex = ((($92)) + 5768|0); $93 = HEAP16[$ec_prevLagIndex>>1]|0; $conv116 = $93 << 16 >> 16; $sub117 = (($conv115) - ($conv116))|0; $delta_lagIndex = $sub117; $94 = $delta_lagIndex; $cmp118 = ($94|0)<(-8); $95 = $delta_lagIndex; $cmp121 = ($95|0)>(11); $or$cond1 = $cmp118 | $cmp121; if ($or$cond1) { $delta_lagIndex = 0; } else { $96 = $delta_lagIndex; $add125 = (($96) + 9)|0; $delta_lagIndex = $add125; $encode_absolute_lagIndex = 0; } $97 = $psRangeEnc$addr; $98 = $delta_lagIndex; _ec_enc_icdf($97,$98,32894,8); } } $99 = $encode_absolute_lagIndex; $tobool128 = ($99|0)!=(0); if ($tobool128) { $100 = $psIndices; $lagIndex130 = ((($100)) + 26|0); $101 = HEAP16[$lagIndex130>>1]|0; $conv131 = $101 << 16 >> 16; $102 = $psEncC$addr; $fs_kHz = ((($102)) + 4572|0); $103 = HEAP32[$fs_kHz>>2]|0; $shr132 = $103 >> 1; $div = (($conv131|0) / ($shr132|0))&-1; $pitch_high_bits = $div; $104 = $psIndices; $lagIndex133 = ((($104)) + 26|0); $105 = HEAP16[$lagIndex133>>1]|0; $conv134 = $105 << 16 >> 16; $106 = $pitch_high_bits; $conv135 = $106&65535; $conv136 = $conv135 << 16 >> 16; $107 = $psEncC$addr; $fs_kHz137 = ((($107)) + 4572|0); $108 = HEAP32[$fs_kHz137>>2]|0; $shr138 = $108 >> 1; $conv139 = $shr138&65535; $conv140 = $conv139 << 16 >> 16; $mul141 = Math_imul($conv136, $conv140)|0; $sub142 = (($conv134) - ($mul141))|0; $pitch_low_bits = $sub142; $109 = $psRangeEnc$addr; $110 = $pitch_high_bits; _ec_enc_icdf($109,$110,32862,8); $111 = $psRangeEnc$addr; $112 = $pitch_low_bits; $113 = $psEncC$addr; $pitch_lag_low_bits_iCDF = ((($113)) + 4680|0); $114 = HEAP32[$pitch_lag_low_bits_iCDF>>2]|0; _ec_enc_icdf($111,$112,$114,8); } $115 = $psIndices; $lagIndex144 = ((($115)) + 26|0); $116 = HEAP16[$lagIndex144>>1]|0; $117 = $psEncC$addr; $ec_prevLagIndex145 = ((($117)) + 5768|0); HEAP16[$ec_prevLagIndex145>>1] = $116; $118 = $psRangeEnc$addr; $119 = $psIndices; $contourIndex = ((($119)) + 28|0); $120 = HEAP8[$contourIndex>>0]|0; $conv146 = $120 << 24 >> 24; $121 = $psEncC$addr; $pitch_contour_iCDF = ((($121)) + 4684|0); $122 = HEAP32[$pitch_contour_iCDF>>2]|0; _ec_enc_icdf($118,$conv146,$122,8); $123 = $psRangeEnc$addr; $124 = $psIndices; $PERIndex = ((($124)) + 32|0); $125 = HEAP8[$PERIndex>>0]|0; $conv147 = $125 << 24 >> 24; _ec_enc_icdf($123,$conv147,32322,8); $k = 0; while(1) { $126 = $k; $127 = $psEncC$addr; $nb_subfr149 = ((($127)) + 4576|0); $128 = HEAP32[$nb_subfr149>>2]|0; $cmp150 = ($126|0)<($128|0); if (!($cmp150)) { break; } $129 = $psRangeEnc$addr; $130 = $psIndices; $LTPIndex = ((($130)) + 4|0); $131 = $k; $arrayidx153 = (($LTPIndex) + ($131)|0); $132 = HEAP8[$arrayidx153>>0]|0; $conv154 = $132 << 24 >> 24; $133 = $psIndices; $PERIndex155 = ((($133)) + 32|0); $134 = HEAP8[$PERIndex155>>0]|0; $idxprom156 = $134 << 24 >> 24; $arrayidx157 = (15136 + ($idxprom156<<2)|0); $135 = HEAP32[$arrayidx157>>2]|0; _ec_enc_icdf($129,$conv154,$135,8); $136 = $k; $inc159 = (($136) + 1)|0; $k = $inc159; } $137 = $condCoding$addr; $cmp161 = ($137|0)==(0); if (!($cmp161)) { $141 = $psIndices; $signalType167 = ((($141)) + 29|0); $142 = HEAP8[$signalType167>>0]|0; $conv168 = $142 << 24 >> 24; $143 = $psEncC$addr; $ec_prevSignalType169 = ((($143)) + 5764|0); HEAP32[$ec_prevSignalType169>>2] = $conv168; $144 = $psRangeEnc$addr; $145 = $psIndices; $Seed = ((($145)) + 34|0); $146 = HEAP8[$Seed>>0]|0; $conv170 = $146 << 24 >> 24; _ec_enc_icdf($144,$conv170,32832,8); STACKTOP = sp;return; } $138 = $psRangeEnc$addr; $139 = $psIndices; $LTP_scaleIndex = ((($139)) + 33|0); $140 = HEAP8[$LTP_scaleIndex>>0]|0; $conv164 = $140 << 24 >> 24; _ec_enc_icdf($138,$conv164,32815,8); $141 = $psIndices; $signalType167 = ((($141)) + 29|0); $142 = HEAP8[$signalType167>>0]|0; $conv168 = $142 << 24 >> 24; $143 = $psEncC$addr; $ec_prevSignalType169 = ((($143)) + 5764|0); HEAP32[$ec_prevSignalType169>>2] = $conv168; $144 = $psRangeEnc$addr; $145 = $psIndices; $Seed = ((($145)) + 34|0); $146 = HEAP8[$Seed>>0]|0; $conv170 = $146 << 24 >> 24; _ec_enc_icdf($144,$conv170,32832,8); STACKTOP = sp;return; } function _silk_encode_pulses($psRangeEnc,$signalType,$quantOffsetType,$pulses,$frame_length) { $psRangeEnc = $psRangeEnc|0; $signalType = $signalType|0; $quantOffsetType = $quantOffsetType|0; $pulses = $pulses|0; $frame_length = $frame_length|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0; var $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0; var $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0; var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0; var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0; var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $RateLevelIndex = 0, $abs_pulses_ptr = 0, $abs_q = 0, $add = 0, $add$ptr = 0, $add13 = 0, $add131 = 0, $add136 = 0, $add15 = 0, $add21 = 0, $add31 = 0, $add33 = 0, $add39 = 0; var $add49 = 0, $add51 = 0, $add57 = 0, $add67 = 0, $add69 = 0, $add7 = 0, $add83 = 0, $add88 = 0, $add93 = 0, $and = 0, $and229 = 0, $arrayidx = 0, $arrayidx101 = 0, $arrayidx103 = 0, $arrayidx115 = 0, $arrayidx118 = 0, $arrayidx119 = 0, $arrayidx125 = 0, $arrayidx129 = 0, $arrayidx133 = 0; var $arrayidx134 = 0, $arrayidx14 = 0, $arrayidx149 = 0, $arrayidx151 = 0, $arrayidx157 = 0, $arrayidx16 = 0, $arrayidx161 = 0, $arrayidx164 = 0, $arrayidx172 = 0, $arrayidx181 = 0, $arrayidx186 = 0, $arrayidx195 = 0, $arrayidx200 = 0, $arrayidx201 = 0, $arrayidx207 = 0, $arrayidx212 = 0, $arrayidx22 = 0, $arrayidx32 = 0, $arrayidx34 = 0, $arrayidx4 = 0; var $arrayidx40 = 0, $arrayidx50 = 0, $arrayidx52 = 0, $arrayidx58 = 0, $arrayidx68 = 0, $arrayidx76 = 0, $arrayidx8 = 0, $arrayidx89 = 0, $arrayidx95 = 0, $bit = 0, $call = 0, $call82 = 0, $call87 = 0, $call92 = 0, $cdf_ptr = 0, $cmp = 0, $cmp112 = 0, $cmp122 = 0, $cmp126 = 0, $cmp141 = 0; var $cmp154 = 0, $cmp158 = 0, $cmp166 = 0, $cmp178 = 0, $cmp18 = 0, $cmp182 = 0, $cmp192 = 0, $cmp196 = 0, $cmp204 = 0, $cmp209 = 0, $cmp223 = 0, $cmp3 = 0, $cmp36 = 0, $cmp5 = 0, $cmp54 = 0, $cmp73 = 0, $cmp98 = 0, $cond = 0, $cond219 = 0, $cond30 = 0; var $cond48 = 0, $cond66 = 0, $conv = 0, $conv120 = 0, $conv130 = 0, $conv135 = 0, $conv17 = 0, $conv208 = 0, $conv213 = 0, $conv220 = 0, $conv221 = 0, $conv23 = 0, $conv35 = 0, $conv41 = 0, $conv53 = 0, $conv59 = 0, $conv78 = 0, $conv81 = 0, $conv86 = 0, $conv9 = 0; var $conv91 = 0, $dec = 0, $frame_length$addr = 0, $i = 0, $inc = 0, $inc105 = 0, $inc109 = 0, $inc139 = 0, $inc146 = 0, $inc170 = 0, $inc175 = 0, $inc189 = 0, $inc231 = 0, $inc235 = 0, $inc96 = 0, $iter = 0, $j = 0, $k = 0, $minSumBits_Q5 = 0, $mul = 0; var $mul1 = 0, $mul185 = 0, $mul199 = 0, $mul2 = 0, $nBits_ptr = 0, $nLS = 0, $psRangeEnc$addr = 0, $pulses$addr = 0, $pulses_comb = 0, $pulses_ptr = 0, $quantOffsetType$addr = 0, $saved_stack = 0, $scale_down = 0, $shr = 0, $shr102 = 0, $shr117 = 0, $shr148 = 0, $shr226 = 0, $signalType$addr = 0, $sub = 0; var $sub165 = 0, $sub202 = 0, $sub217 = 0, $sub28 = 0, $sub46 = 0, $sub64 = 0, $sumBits_Q5 = 0, $tobool = 0, $vla = 0, $vla$alloca_mul = 0, $vla70 = 0, $vla70$alloca_mul = 0, $vla71 = 0, $vla71$alloca_mul = 0, dest = 0, label = 0, sp = 0, stop = 0; sp = STACKTOP; STACKTOP = STACKTOP + 128|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(128|0); $pulses_comb = sp + 24|0; $psRangeEnc$addr = $psRangeEnc; $signalType$addr = $signalType; $quantOffsetType$addr = $quantOffsetType; $pulses$addr = $pulses; $frame_length$addr = $frame_length; $RateLevelIndex = 0; ;HEAP32[$pulses_comb>>2]=0|0;HEAP32[$pulses_comb+4>>2]=0|0;HEAP32[$pulses_comb+8>>2]=0|0;HEAP32[$pulses_comb+12>>2]=0|0;HEAP32[$pulses_comb+16>>2]=0|0;HEAP32[$pulses_comb+20>>2]=0|0;HEAP32[$pulses_comb+24>>2]=0|0;HEAP32[$pulses_comb+28>>2]=0|0; $0 = $frame_length$addr; $shr = $0 >> 4; $iter = $shr; $1 = $iter; $mul = $1<<4; $2 = $frame_length$addr; $cmp = ($mul|0)<($2|0); if ($cmp) { $3 = $iter; $inc = (($3) + 1)|0; $iter = $inc; $4 = $pulses$addr; $5 = $frame_length$addr; $arrayidx = (($4) + ($5)|0); dest=$arrayidx; stop=dest+16|0; do { HEAP8[dest>>0]=0|0; dest=dest+1|0; } while ((dest|0) < (stop|0)); } $6 = $iter; $mul1 = $6<<4; $7 = (_llvm_stacksave()|0); $saved_stack = $7; $vla$alloca_mul = $mul1<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $i = 0; while(1) { $8 = $i; $9 = $iter; $mul2 = $9<<4; $cmp3 = ($8|0)<($mul2|0); if (!($cmp3)) { break; } $10 = $pulses$addr; $11 = $i; $add = (($11) + 0)|0; $arrayidx4 = (($10) + ($add)|0); $12 = HEAP8[$arrayidx4>>0]|0; $conv = $12 << 24 >> 24; $cmp5 = ($conv|0)>(0); $13 = $pulses$addr; $14 = $i; $add7 = (($14) + 0)|0; $arrayidx8 = (($13) + ($add7)|0); $15 = HEAP8[$arrayidx8>>0]|0; $conv9 = $15 << 24 >> 24; $sub = (0 - ($conv9))|0; $cond = $cmp5 ? $conv9 : $sub; $16 = $i; $add13 = (($16) + 0)|0; $arrayidx14 = (($vla) + ($add13<<2)|0); HEAP32[$arrayidx14>>2] = $cond; $17 = $pulses$addr; $18 = $i; $add15 = (($18) + 1)|0; $arrayidx16 = (($17) + ($add15)|0); $19 = HEAP8[$arrayidx16>>0]|0; $conv17 = $19 << 24 >> 24; $cmp18 = ($conv17|0)>(0); $20 = $pulses$addr; $21 = $i; $add21 = (($21) + 1)|0; $arrayidx22 = (($20) + ($add21)|0); $22 = HEAP8[$arrayidx22>>0]|0; $conv23 = $22 << 24 >> 24; $sub28 = (0 - ($conv23))|0; $cond30 = $cmp18 ? $conv23 : $sub28; $23 = $i; $add31 = (($23) + 1)|0; $arrayidx32 = (($vla) + ($add31<<2)|0); HEAP32[$arrayidx32>>2] = $cond30; $24 = $pulses$addr; $25 = $i; $add33 = (($25) + 2)|0; $arrayidx34 = (($24) + ($add33)|0); $26 = HEAP8[$arrayidx34>>0]|0; $conv35 = $26 << 24 >> 24; $cmp36 = ($conv35|0)>(0); $27 = $pulses$addr; $28 = $i; $add39 = (($28) + 2)|0; $arrayidx40 = (($27) + ($add39)|0); $29 = HEAP8[$arrayidx40>>0]|0; $conv41 = $29 << 24 >> 24; $sub46 = (0 - ($conv41))|0; $cond48 = $cmp36 ? $conv41 : $sub46; $30 = $i; $add49 = (($30) + 2)|0; $arrayidx50 = (($vla) + ($add49<<2)|0); HEAP32[$arrayidx50>>2] = $cond48; $31 = $pulses$addr; $32 = $i; $add51 = (($32) + 3)|0; $arrayidx52 = (($31) + ($add51)|0); $33 = HEAP8[$arrayidx52>>0]|0; $conv53 = $33 << 24 >> 24; $cmp54 = ($conv53|0)>(0); $34 = $pulses$addr; $35 = $i; $add57 = (($35) + 3)|0; $arrayidx58 = (($34) + ($add57)|0); $36 = HEAP8[$arrayidx58>>0]|0; $conv59 = $36 << 24 >> 24; $sub64 = (0 - ($conv59))|0; $cond66 = $cmp54 ? $conv59 : $sub64; $37 = $i; $add67 = (($37) + 3)|0; $arrayidx68 = (($vla) + ($add67<<2)|0); HEAP32[$arrayidx68>>2] = $cond66; $38 = $i; $add69 = (($38) + 4)|0; $i = $add69; } $39 = $iter; $vla70$alloca_mul = $39<<2; $vla70 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla70$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla70$alloca_mul)|0)+15)&-16)|0);; $40 = $iter; $vla71$alloca_mul = $40<<2; $vla71 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla71$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla71$alloca_mul)|0)+15)&-16)|0);; $abs_pulses_ptr = $vla; $i = 0; while(1) { $41 = $i; $42 = $iter; $cmp73 = ($41|0)<($42|0); if (!($cmp73)) { break; } $43 = $i; $arrayidx76 = (($vla71) + ($43<<2)|0); HEAP32[$arrayidx76>>2] = 0; L11: while(1) { $44 = $abs_pulses_ptr; $45 = HEAP8[32975]|0; $conv78 = $45&255; $call = (_combine_and_check($pulses_comb,$44,$conv78,8)|0); $scale_down = $call; $46 = HEAP8[(32976)>>0]|0; $conv81 = $46&255; $call82 = (_combine_and_check($pulses_comb,$pulses_comb,$conv81,4)|0); $47 = $scale_down; $add83 = (($47) + ($call82))|0; $scale_down = $add83; $48 = HEAP8[(32977)>>0]|0; $conv86 = $48&255; $call87 = (_combine_and_check($pulses_comb,$pulses_comb,$conv86,2)|0); $49 = $scale_down; $add88 = (($49) + ($call87))|0; $scale_down = $add88; $50 = $i; $arrayidx89 = (($vla70) + ($50<<2)|0); $51 = HEAP8[(32978)>>0]|0; $conv91 = $51&255; $call92 = (_combine_and_check($arrayidx89,$pulses_comb,$conv91,1)|0); $52 = $scale_down; $add93 = (($52) + ($call92))|0; $scale_down = $add93; $53 = $scale_down; $tobool = ($53|0)!=(0); if (!($tobool)) { break; } $54 = $i; $arrayidx95 = (($vla71) + ($54<<2)|0); $55 = HEAP32[$arrayidx95>>2]|0; $inc96 = (($55) + 1)|0; HEAP32[$arrayidx95>>2] = $inc96; $k = 0; while(1) { $56 = $k; $cmp98 = ($56|0)<(16); if (!($cmp98)) { continue L11; } $57 = $abs_pulses_ptr; $58 = $k; $arrayidx101 = (($57) + ($58<<2)|0); $59 = HEAP32[$arrayidx101>>2]|0; $shr102 = $59 >> 1; $60 = $abs_pulses_ptr; $61 = $k; $arrayidx103 = (($60) + ($61<<2)|0); HEAP32[$arrayidx103>>2] = $shr102; $62 = $k; $inc105 = (($62) + 1)|0; $k = $inc105; } } $63 = $abs_pulses_ptr; $add$ptr = ((($63)) + 64|0); $abs_pulses_ptr = $add$ptr; $64 = $i; $inc109 = (($64) + 1)|0; $i = $inc109; } $minSumBits_Q5 = 2147483647; $k = 0; while(1) { $65 = $k; $cmp112 = ($65|0)<(9); if (!($cmp112)) { break; } $66 = $k; $arrayidx115 = (33159 + (($66*18)|0)|0); $nBits_ptr = $arrayidx115; $67 = $signalType$addr; $shr117 = $67 >> 1; $arrayidx118 = (33339 + (($shr117*9)|0)|0); $68 = $k; $arrayidx119 = (($arrayidx118) + ($68)|0); $69 = HEAP8[$arrayidx119>>0]|0; $conv120 = $69&255; $sumBits_Q5 = $conv120; $i = 0; while(1) { $70 = $i; $71 = $iter; $cmp122 = ($70|0)<($71|0); if (!($cmp122)) { break; } $72 = $i; $arrayidx125 = (($vla71) + ($72<<2)|0); $73 = HEAP32[$arrayidx125>>2]|0; $cmp126 = ($73|0)>(0); $74 = $nBits_ptr; if ($cmp126) { $arrayidx129 = ((($74)) + 17|0); $75 = HEAP8[$arrayidx129>>0]|0; $conv130 = $75&255; $76 = $sumBits_Q5; $add131 = (($76) + ($conv130))|0; $sumBits_Q5 = $add131; } else { $77 = $i; $arrayidx133 = (($vla70) + ($77<<2)|0); $78 = HEAP32[$arrayidx133>>2]|0; $arrayidx134 = (($74) + ($78)|0); $79 = HEAP8[$arrayidx134>>0]|0; $conv135 = $79&255; $80 = $sumBits_Q5; $add136 = (($80) + ($conv135))|0; $sumBits_Q5 = $add136; } $81 = $i; $inc139 = (($81) + 1)|0; $i = $inc139; } $82 = $sumBits_Q5; $83 = $minSumBits_Q5; $cmp141 = ($82|0)<($83|0); if ($cmp141) { $84 = $sumBits_Q5; $minSumBits_Q5 = $84; $85 = $k; $RateLevelIndex = $85; } $86 = $k; $inc146 = (($86) + 1)|0; $k = $inc146; } $87 = $psRangeEnc$addr; $88 = $RateLevelIndex; $89 = $signalType$addr; $shr148 = $89 >> 1; $arrayidx149 = (33321 + (($shr148*9)|0)|0); _ec_enc_icdf($87,$88,$arrayidx149,8); $90 = $RateLevelIndex; $arrayidx151 = (32979 + (($90*18)|0)|0); $cdf_ptr = $arrayidx151; $i = 0; while(1) { $91 = $i; $92 = $iter; $cmp154 = ($91|0)<($92|0); if (!($cmp154)) { break; } $93 = $i; $arrayidx157 = (($vla71) + ($93<<2)|0); $94 = HEAP32[$arrayidx157>>2]|0; $cmp158 = ($94|0)==(0); $95 = $psRangeEnc$addr; if ($cmp158) { $96 = $i; $arrayidx161 = (($vla70) + ($96<<2)|0); $97 = HEAP32[$arrayidx161>>2]|0; $98 = $cdf_ptr; _ec_enc_icdf($95,$97,$98,8); } else { $99 = $cdf_ptr; _ec_enc_icdf($95,17,$99,8); $k = 0; while(1) { $100 = $k; $101 = $i; $arrayidx164 = (($vla71) + ($101<<2)|0); $102 = HEAP32[$arrayidx164>>2]|0; $sub165 = (($102) - 1)|0; $cmp166 = ($100|0)<($sub165|0); $103 = $psRangeEnc$addr; if (!($cmp166)) { break; } _ec_enc_icdf($103,17,(33141),8); $104 = $k; $inc170 = (($104) + 1)|0; $k = $inc170; } $105 = $i; $arrayidx172 = (($vla70) + ($105<<2)|0); $106 = HEAP32[$arrayidx172>>2]|0; _ec_enc_icdf($103,$106,(33141),8); } $107 = $i; $inc175 = (($107) + 1)|0; $i = $inc175; } $i = 0; while(1) { $108 = $i; $109 = $iter; $cmp178 = ($108|0)<($109|0); if (!($cmp178)) { break; } $110 = $i; $arrayidx181 = (($vla70) + ($110<<2)|0); $111 = HEAP32[$arrayidx181>>2]|0; $cmp182 = ($111|0)>(0); if ($cmp182) { $112 = $psRangeEnc$addr; $113 = $i; $mul185 = $113<<4; $arrayidx186 = (($vla) + ($mul185<<2)|0); _silk_shell_encoder($112,$arrayidx186); } $114 = $i; $inc189 = (($114) + 1)|0; $i = $inc189; } $i = 0; while(1) { $115 = $i; $116 = $iter; $cmp192 = ($115|0)<($116|0); if (!($cmp192)) { break; } $117 = $i; $arrayidx195 = (($vla71) + ($117<<2)|0); $118 = HEAP32[$arrayidx195>>2]|0; $cmp196 = ($118|0)>(0); L56: do { if ($cmp196) { $119 = $pulses$addr; $120 = $i; $mul199 = $120<<4; $arrayidx200 = (($119) + ($mul199)|0); $pulses_ptr = $arrayidx200; $121 = $i; $arrayidx201 = (($vla71) + ($121<<2)|0); $122 = HEAP32[$arrayidx201>>2]|0; $sub202 = (($122) - 1)|0; $nLS = $sub202; $k = 0; while(1) { $123 = $k; $cmp204 = ($123|0)<(16); if (!($cmp204)) { break L56; } $124 = $pulses_ptr; $125 = $k; $arrayidx207 = (($124) + ($125)|0); $126 = HEAP8[$arrayidx207>>0]|0; $conv208 = $126 << 24 >> 24; $cmp209 = ($conv208|0)>(0); $127 = $pulses_ptr; $128 = $k; $arrayidx212 = (($127) + ($128)|0); $129 = HEAP8[$arrayidx212>>0]|0; $conv213 = $129 << 24 >> 24; $sub217 = (0 - ($conv213))|0; $cond219 = $cmp209 ? $conv213 : $sub217; $conv220 = $cond219&255; $conv221 = $conv220 << 24 >> 24; $abs_q = $conv221; $130 = $nLS; $j = $130; while(1) { $131 = $j; $cmp223 = ($131|0)>(0); $132 = $abs_q; if (!($cmp223)) { break; } $133 = $j; $shr226 = $132 >> $133; $and = $shr226 & 1; $bit = $and; $134 = $psRangeEnc$addr; $135 = $bit; _ec_enc_icdf($134,$135,32813,8); $136 = $j; $dec = (($136) + -1)|0; $j = $dec; } $and229 = $132 & 1; $bit = $and229; $137 = $psRangeEnc$addr; $138 = $bit; _ec_enc_icdf($137,$138,32813,8); $139 = $k; $inc231 = (($139) + 1)|0; $k = $inc231; } } } while(0); $140 = $i; $inc235 = (($140) + 1)|0; $i = $inc235; } $141 = $psRangeEnc$addr; $142 = $pulses$addr; $143 = $frame_length$addr; $144 = $signalType$addr; $145 = $quantOffsetType$addr; _silk_encode_signs($141,$142,$143,$144,$145,$vla70); $146 = $saved_stack; _llvm_stackrestore(($146|0)); STACKTOP = sp;return; } function _combine_and_check($pulses_comb,$pulses_in,$max_pulses,$len) { $pulses_comb = $pulses_comb|0; $pulses_in = $pulses_in|0; $max_pulses = $max_pulses|0; $len = $len|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $add3 = 0, $arrayidx = 0, $arrayidx2 = 0, $arrayidx5 = 0; var $cmp = 0, $cmp4 = 0, $inc = 0, $k = 0, $len$addr = 0, $max_pulses$addr = 0, $mul = 0, $mul1 = 0, $pulses_comb$addr = 0, $pulses_in$addr = 0, $retval = 0, $sum = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $pulses_comb$addr = $pulses_comb; $pulses_in$addr = $pulses_in; $max_pulses$addr = $max_pulses; $len$addr = $len; $k = 0; while(1) { $0 = $k; $1 = $len$addr; $cmp = ($0|0)<($1|0); if (!($cmp)) { label = 6; break; } $2 = $pulses_in$addr; $3 = $k; $mul = $3<<1; $arrayidx = (($2) + ($mul<<2)|0); $4 = HEAP32[$arrayidx>>2]|0; $5 = $pulses_in$addr; $6 = $k; $mul1 = $6<<1; $add = (($mul1) + 1)|0; $arrayidx2 = (($5) + ($add<<2)|0); $7 = HEAP32[$arrayidx2>>2]|0; $add3 = (($4) + ($7))|0; $sum = $add3; $8 = $sum; $9 = $max_pulses$addr; $cmp4 = ($8|0)>($9|0); if ($cmp4) { label = 4; break; } $10 = $sum; $11 = $pulses_comb$addr; $12 = $k; $arrayidx5 = (($11) + ($12<<2)|0); HEAP32[$arrayidx5>>2] = $10; $13 = $k; $inc = (($13) + 1)|0; $k = $inc; } if ((label|0) == 4) { $retval = 1; $14 = $retval; STACKTOP = sp;return ($14|0); } else if ((label|0) == 6) { $retval = 0; $14 = $retval; STACKTOP = sp;return ($14|0); } return (0)|0; } function _silk_shell_encoder($psRangeEnc,$pulses0) { $psRangeEnc = $psRangeEnc|0; $pulses0 = $pulses0|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $arrayidx14 = 0, $arrayidx15 = 0, $arrayidx16 = 0, $arrayidx17 = 0, $arrayidx18 = 0, $arrayidx19 = 0; var $arrayidx20 = 0, $arrayidx21 = 0, $arrayidx22 = 0, $arrayidx23 = 0, $arrayidx24 = 0, $arrayidx25 = 0, $arrayidx26 = 0, $arrayidx27 = 0, $arrayidx28 = 0, $arrayidx29 = 0, $arrayidx30 = 0, $arrayidx31 = 0, $arrayidx32 = 0, $arrayidx33 = 0, $arrayidx34 = 0, $arrayidx35 = 0, $psRangeEnc$addr = 0, $pulses0$addr = 0, $pulses1 = 0, $pulses2 = 0; var $pulses3 = 0, $pulses4 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(80|0); $pulses1 = sp + 32|0; $pulses2 = sp + 16|0; $pulses3 = sp + 8|0; $pulses4 = sp; $psRangeEnc$addr = $psRangeEnc; $pulses0$addr = $pulses0; $0 = $pulses0$addr; _combine_pulses($pulses1,$0,8); _combine_pulses($pulses2,$pulses1,4); _combine_pulses($pulses3,$pulses2,2); _combine_pulses($pulses4,$pulses3,1); $1 = $psRangeEnc$addr; $2 = HEAP32[$pulses3>>2]|0; $3 = HEAP32[$pulses4>>2]|0; _encode_split($1,$2,$3,33813); $4 = $psRangeEnc$addr; $5 = HEAP32[$pulses2>>2]|0; $6 = HEAP32[$pulses3>>2]|0; _encode_split($4,$5,$6,33661); $7 = $psRangeEnc$addr; $8 = HEAP32[$pulses1>>2]|0; $9 = HEAP32[$pulses2>>2]|0; _encode_split($7,$8,$9,33509); $10 = $psRangeEnc$addr; $11 = $pulses0$addr; $12 = HEAP32[$11>>2]|0; $13 = HEAP32[$pulses1>>2]|0; _encode_split($10,$12,$13,33357); $14 = $psRangeEnc$addr; $15 = $pulses0$addr; $arrayidx14 = ((($15)) + 8|0); $16 = HEAP32[$arrayidx14>>2]|0; $arrayidx15 = ((($pulses1)) + 4|0); $17 = HEAP32[$arrayidx15>>2]|0; _encode_split($14,$16,$17,33357); $18 = $psRangeEnc$addr; $arrayidx16 = ((($pulses1)) + 8|0); $19 = HEAP32[$arrayidx16>>2]|0; $arrayidx17 = ((($pulses2)) + 4|0); $20 = HEAP32[$arrayidx17>>2]|0; _encode_split($18,$19,$20,33509); $21 = $psRangeEnc$addr; $22 = $pulses0$addr; $arrayidx18 = ((($22)) + 16|0); $23 = HEAP32[$arrayidx18>>2]|0; $arrayidx19 = ((($pulses1)) + 8|0); $24 = HEAP32[$arrayidx19>>2]|0; _encode_split($21,$23,$24,33357); $25 = $psRangeEnc$addr; $26 = $pulses0$addr; $arrayidx20 = ((($26)) + 24|0); $27 = HEAP32[$arrayidx20>>2]|0; $arrayidx21 = ((($pulses1)) + 12|0); $28 = HEAP32[$arrayidx21>>2]|0; _encode_split($25,$27,$28,33357); $29 = $psRangeEnc$addr; $arrayidx22 = ((($pulses2)) + 8|0); $30 = HEAP32[$arrayidx22>>2]|0; $arrayidx23 = ((($pulses3)) + 4|0); $31 = HEAP32[$arrayidx23>>2]|0; _encode_split($29,$30,$31,33661); $32 = $psRangeEnc$addr; $arrayidx24 = ((($pulses1)) + 16|0); $33 = HEAP32[$arrayidx24>>2]|0; $arrayidx25 = ((($pulses2)) + 8|0); $34 = HEAP32[$arrayidx25>>2]|0; _encode_split($32,$33,$34,33509); $35 = $psRangeEnc$addr; $36 = $pulses0$addr; $arrayidx26 = ((($36)) + 32|0); $37 = HEAP32[$arrayidx26>>2]|0; $arrayidx27 = ((($pulses1)) + 16|0); $38 = HEAP32[$arrayidx27>>2]|0; _encode_split($35,$37,$38,33357); $39 = $psRangeEnc$addr; $40 = $pulses0$addr; $arrayidx28 = ((($40)) + 40|0); $41 = HEAP32[$arrayidx28>>2]|0; $arrayidx29 = ((($pulses1)) + 20|0); $42 = HEAP32[$arrayidx29>>2]|0; _encode_split($39,$41,$42,33357); $43 = $psRangeEnc$addr; $arrayidx30 = ((($pulses1)) + 24|0); $44 = HEAP32[$arrayidx30>>2]|0; $arrayidx31 = ((($pulses2)) + 12|0); $45 = HEAP32[$arrayidx31>>2]|0; _encode_split($43,$44,$45,33509); $46 = $psRangeEnc$addr; $47 = $pulses0$addr; $arrayidx32 = ((($47)) + 48|0); $48 = HEAP32[$arrayidx32>>2]|0; $arrayidx33 = ((($pulses1)) + 24|0); $49 = HEAP32[$arrayidx33>>2]|0; _encode_split($46,$48,$49,33357); $50 = $psRangeEnc$addr; $51 = $pulses0$addr; $arrayidx34 = ((($51)) + 56|0); $52 = HEAP32[$arrayidx34>>2]|0; $arrayidx35 = ((($pulses1)) + 28|0); $53 = HEAP32[$arrayidx35>>2]|0; _encode_split($50,$52,$53,33357); STACKTOP = sp;return; } function _combine_pulses($out,$in,$len) { $out = $out|0; $in = $in|0; $len = $len|0; var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $add3 = 0, $arrayidx = 0, $arrayidx2 = 0, $arrayidx4 = 0, $cmp = 0, $in$addr = 0, $inc = 0, $k = 0; var $len$addr = 0, $mul = 0, $mul1 = 0, $out$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $out$addr = $out; $in$addr = $in; $len$addr = $len; $k = 0; while(1) { $0 = $k; $1 = $len$addr; $cmp = ($0|0)<($1|0); if (!($cmp)) { break; } $2 = $in$addr; $3 = $k; $mul = $3<<1; $arrayidx = (($2) + ($mul<<2)|0); $4 = HEAP32[$arrayidx>>2]|0; $5 = $in$addr; $6 = $k; $mul1 = $6<<1; $add = (($mul1) + 1)|0; $arrayidx2 = (($5) + ($add<<2)|0); $7 = HEAP32[$arrayidx2>>2]|0; $add3 = (($4) + ($7))|0; $8 = $out$addr; $9 = $k; $arrayidx4 = (($8) + ($9<<2)|0); HEAP32[$arrayidx4>>2] = $add3; $10 = $k; $inc = (($10) + 1)|0; $k = $inc; } STACKTOP = sp;return; } function _encode_split($psRangeEnc,$p_child1,$p,$shell_table) { $psRangeEnc = $psRangeEnc|0; $p_child1 = $p_child1|0; $p = $p|0; $shell_table = $shell_table|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $arrayidx = 0, $arrayidx1 = 0, $cmp = 0, $idxprom = 0, $p$addr = 0, $p_child1$addr = 0, $psRangeEnc$addr = 0, $shell_table$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $psRangeEnc$addr = $psRangeEnc; $p_child1$addr = $p_child1; $p$addr = $p; $shell_table$addr = $shell_table; $0 = $p$addr; $cmp = ($0|0)>(0); if (!($cmp)) { STACKTOP = sp;return; } $1 = $psRangeEnc$addr; $2 = $p_child1$addr; $3 = $shell_table$addr; $4 = $p$addr; $arrayidx = (33965 + ($4)|0); $5 = HEAP8[$arrayidx>>0]|0; $idxprom = $5&255; $arrayidx1 = (($3) + ($idxprom)|0); _ec_enc_icdf($1,$2,$arrayidx1,8); STACKTOP = sp;return; } function _silk_shell_decoder($pulses0,$psRangeDec,$pulses4) { $pulses0 = $pulses0|0; $psRangeDec = $psRangeDec|0; $pulses4 = $pulses4|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $arrayidx1 = 0, $arrayidx10 = 0, $arrayidx13 = 0, $arrayidx14 = 0, $arrayidx15 = 0, $arrayidx17 = 0, $arrayidx18 = 0, $arrayidx19 = 0, $arrayidx21 = 0, $arrayidx22 = 0, $arrayidx23 = 0, $arrayidx25 = 0, $arrayidx26 = 0, $arrayidx27 = 0; var $arrayidx29 = 0, $arrayidx3 = 0, $arrayidx30 = 0, $arrayidx31 = 0, $arrayidx33 = 0, $arrayidx34 = 0, $arrayidx35 = 0, $arrayidx37 = 0, $arrayidx38 = 0, $arrayidx39 = 0, $arrayidx41 = 0, $arrayidx42 = 0, $arrayidx43 = 0, $arrayidx45 = 0, $arrayidx46 = 0, $arrayidx47 = 0, $arrayidx49 = 0, $arrayidx50 = 0, $arrayidx51 = 0, $arrayidx53 = 0; var $arrayidx54 = 0, $arrayidx55 = 0, $arrayidx6 = 0, $conv = 0, $conv12 = 0, $conv16 = 0, $conv20 = 0, $conv24 = 0, $conv28 = 0, $conv32 = 0, $conv36 = 0, $conv40 = 0, $conv44 = 0, $conv48 = 0, $conv52 = 0, $conv56 = 0, $conv8 = 0, $psRangeDec$addr = 0, $pulses0$addr = 0, $pulses1 = 0; var $pulses2 = 0, $pulses3 = 0, $pulses4$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $pulses3 = sp + 40|0; $pulses2 = sp + 32|0; $pulses1 = sp + 16|0; $pulses0$addr = $pulses0; $psRangeDec$addr = $psRangeDec; $pulses4$addr = $pulses4; $arrayidx1 = ((($pulses3)) + 2|0); $0 = $psRangeDec$addr; $1 = $pulses4$addr; _decode_split($pulses3,$arrayidx1,$0,$1,33813); $arrayidx3 = ((($pulses2)) + 2|0); $2 = $psRangeDec$addr; $3 = HEAP16[$pulses3>>1]|0; $conv = $3 << 16 >> 16; _decode_split($pulses2,$arrayidx3,$2,$conv,33661); $arrayidx6 = ((($pulses1)) + 2|0); $4 = $psRangeDec$addr; $5 = HEAP16[$pulses2>>1]|0; $conv8 = $5 << 16 >> 16; _decode_split($pulses1,$arrayidx6,$4,$conv8,33509); $6 = $pulses0$addr; $7 = $pulses0$addr; $arrayidx10 = ((($7)) + 2|0); $8 = $psRangeDec$addr; $9 = HEAP16[$pulses1>>1]|0; $conv12 = $9 << 16 >> 16; _decode_split($6,$arrayidx10,$8,$conv12,33357); $10 = $pulses0$addr; $arrayidx13 = ((($10)) + 4|0); $11 = $pulses0$addr; $arrayidx14 = ((($11)) + 6|0); $12 = $psRangeDec$addr; $arrayidx15 = ((($pulses1)) + 2|0); $13 = HEAP16[$arrayidx15>>1]|0; $conv16 = $13 << 16 >> 16; _decode_split($arrayidx13,$arrayidx14,$12,$conv16,33357); $arrayidx17 = ((($pulses1)) + 4|0); $arrayidx18 = ((($pulses1)) + 6|0); $14 = $psRangeDec$addr; $arrayidx19 = ((($pulses2)) + 2|0); $15 = HEAP16[$arrayidx19>>1]|0; $conv20 = $15 << 16 >> 16; _decode_split($arrayidx17,$arrayidx18,$14,$conv20,33509); $16 = $pulses0$addr; $arrayidx21 = ((($16)) + 8|0); $17 = $pulses0$addr; $arrayidx22 = ((($17)) + 10|0); $18 = $psRangeDec$addr; $arrayidx23 = ((($pulses1)) + 4|0); $19 = HEAP16[$arrayidx23>>1]|0; $conv24 = $19 << 16 >> 16; _decode_split($arrayidx21,$arrayidx22,$18,$conv24,33357); $20 = $pulses0$addr; $arrayidx25 = ((($20)) + 12|0); $21 = $pulses0$addr; $arrayidx26 = ((($21)) + 14|0); $22 = $psRangeDec$addr; $arrayidx27 = ((($pulses1)) + 6|0); $23 = HEAP16[$arrayidx27>>1]|0; $conv28 = $23 << 16 >> 16; _decode_split($arrayidx25,$arrayidx26,$22,$conv28,33357); $arrayidx29 = ((($pulses2)) + 4|0); $arrayidx30 = ((($pulses2)) + 6|0); $24 = $psRangeDec$addr; $arrayidx31 = ((($pulses3)) + 2|0); $25 = HEAP16[$arrayidx31>>1]|0; $conv32 = $25 << 16 >> 16; _decode_split($arrayidx29,$arrayidx30,$24,$conv32,33661); $arrayidx33 = ((($pulses1)) + 8|0); $arrayidx34 = ((($pulses1)) + 10|0); $26 = $psRangeDec$addr; $arrayidx35 = ((($pulses2)) + 4|0); $27 = HEAP16[$arrayidx35>>1]|0; $conv36 = $27 << 16 >> 16; _decode_split($arrayidx33,$arrayidx34,$26,$conv36,33509); $28 = $pulses0$addr; $arrayidx37 = ((($28)) + 16|0); $29 = $pulses0$addr; $arrayidx38 = ((($29)) + 18|0); $30 = $psRangeDec$addr; $arrayidx39 = ((($pulses1)) + 8|0); $31 = HEAP16[$arrayidx39>>1]|0; $conv40 = $31 << 16 >> 16; _decode_split($arrayidx37,$arrayidx38,$30,$conv40,33357); $32 = $pulses0$addr; $arrayidx41 = ((($32)) + 20|0); $33 = $pulses0$addr; $arrayidx42 = ((($33)) + 22|0); $34 = $psRangeDec$addr; $arrayidx43 = ((($pulses1)) + 10|0); $35 = HEAP16[$arrayidx43>>1]|0; $conv44 = $35 << 16 >> 16; _decode_split($arrayidx41,$arrayidx42,$34,$conv44,33357); $arrayidx45 = ((($pulses1)) + 12|0); $arrayidx46 = ((($pulses1)) + 14|0); $36 = $psRangeDec$addr; $arrayidx47 = ((($pulses2)) + 6|0); $37 = HEAP16[$arrayidx47>>1]|0; $conv48 = $37 << 16 >> 16; _decode_split($arrayidx45,$arrayidx46,$36,$conv48,33509); $38 = $pulses0$addr; $arrayidx49 = ((($38)) + 24|0); $39 = $pulses0$addr; $arrayidx50 = ((($39)) + 26|0); $40 = $psRangeDec$addr; $arrayidx51 = ((($pulses1)) + 12|0); $41 = HEAP16[$arrayidx51>>1]|0; $conv52 = $41 << 16 >> 16; _decode_split($arrayidx49,$arrayidx50,$40,$conv52,33357); $42 = $pulses0$addr; $arrayidx53 = ((($42)) + 28|0); $43 = $pulses0$addr; $arrayidx54 = ((($43)) + 30|0); $44 = $psRangeDec$addr; $arrayidx55 = ((($pulses1)) + 14|0); $45 = HEAP16[$arrayidx55>>1]|0; $conv56 = $45 << 16 >> 16; _decode_split($arrayidx53,$arrayidx54,$44,$conv56,33357); STACKTOP = sp;return; } function _decode_split($p_child1,$p_child2,$psRangeDec,$p,$shell_table) { $p_child1 = $p_child1|0; $p_child2 = $p_child2|0; $psRangeDec = $psRangeDec|0; $p = $p|0; $shell_table = $shell_table|0; var $$sink = 0, $$sink1 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $arrayidx = 0, $arrayidx1 = 0, $call = 0, $cmp = 0, $conv = 0, $conv4 = 0; var $conv5 = 0, $idxprom = 0, $p$addr = 0, $p_child1$addr = 0, $p_child2$addr = 0, $psRangeDec$addr = 0, $shell_table$addr = 0, $sub = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $p_child1$addr = $p_child1; $p_child2$addr = $p_child2; $psRangeDec$addr = $psRangeDec; $p$addr = $p; $shell_table$addr = $shell_table; $0 = $p$addr; $cmp = ($0|0)>(0); if ($cmp) { $1 = $psRangeDec$addr; $2 = $shell_table$addr; $3 = $p$addr; $arrayidx = (33965 + ($3)|0); $4 = HEAP8[$arrayidx>>0]|0; $idxprom = $4&255; $arrayidx1 = (($2) + ($idxprom)|0); $call = (_ec_dec_icdf($1,$arrayidx1,8)|0); $conv = $call&65535; $5 = $p_child1$addr; HEAP16[$5>>1] = $conv; $6 = $p$addr; $7 = $p_child1$addr; $8 = HEAP16[$7>>1]|0; $conv4 = $8 << 16 >> 16; $sub = (($6) - ($conv4))|0; $conv5 = $sub&65535; $9 = $p_child2$addr; $$sink = $conv5;$$sink1 = $9; HEAP16[$$sink1>>1] = $$sink; STACKTOP = sp;return; } else { $10 = $p_child1$addr; HEAP16[$10>>1] = 0; $11 = $p_child2$addr; $$sink = 0;$$sink1 = $11; HEAP16[$$sink1>>1] = $$sink; STACKTOP = sp;return; } } function _silk_HP_variable_cutoff($state_Fxx) { $state_Fxx = $state_Fxx|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $add34 = 0, $add43 = 0, $add44 = 0, $add76 = 0, $add77 = 0, $and = 0, $and29 = 0, $and35 = 0, $and73 = 0, $call = 0; var $call101 = 0, $call111 = 0, $call116 = 0, $call120 = 0, $call125 = 0, $call15 = 0, $call36 = 0, $call79 = 0, $call81 = 0, $call87 = 0, $call92 = 0, $call96 = 0, $cmp = 0, $cmp113 = 0, $cmp122 = 0, $cmp47 = 0, $cmp51 = 0, $cmp53 = 0, $cmp83 = 0, $cmp89 = 0; var $cmp98 = 0, $cond = 0, $cond134 = 0, $cond58 = 0, $conv = 0, $conv10 = 0, $conv11 = 0, $conv18 = 0, $conv19 = 0, $conv24 = 0, $conv25 = 0, $conv30 = 0, $conv31 = 0, $conv39 = 0, $conv40 = 0, $conv5 = 0, $conv6 = 0, $conv60 = 0, $conv61 = 0, $conv62 = 0; var $conv63 = 0, $conv68 = 0, $conv69 = 0, $conv70 = 0, $conv71 = 0, $delta_freq_Q7 = 0, $div = 0, $fs_kHz = 0, $input_quality_bands_Q15 = 0, $mul = 0, $mul12 = 0, $mul20 = 0, $mul26 = 0, $mul32 = 0, $mul41 = 0, $mul50 = 0, $mul64 = 0, $mul66 = 0, $mul7 = 0, $mul72 = 0; var $mul74 = 0, $pitch_freq_Hz_Q16 = 0, $pitch_freq_log_Q7 = 0, $prevLag = 0, $prevSignalType = 0, $psEncC1 = 0, $quality_Q15 = 0, $shl = 0, $shl102 = 0, $shl112 = 0, $shl117 = 0, $shl121 = 0, $shl126 = 0, $shl22 = 0, $shl28 = 0, $shl4 = 0, $shl80 = 0, $shl82 = 0, $shl88 = 0, $shl9 = 0; var $shl93 = 0, $shl97 = 0, $shr = 0, $shr13 = 0, $shr14 = 0, $shr23 = 0, $shr33 = 0, $shr42 = 0, $shr45 = 0, $shr65 = 0, $shr75 = 0, $speech_activity_Q8 = 0, $speech_activity_Q867 = 0, $state_Fxx$addr = 0, $sub = 0, $sub16 = 0, $sub17 = 0, $sub21 = 0, $sub27 = 0, $sub3 = 0; var $sub37 = 0, $sub38 = 0, $sub46 = 0, $sub8 = 0, $variable_HP_smth1_Q15 = 0, $variable_HP_smth1_Q15104 = 0, $variable_HP_smth1_Q15119 = 0, $variable_HP_smth1_Q15128 = 0, $variable_HP_smth1_Q15135 = 0, $variable_HP_smth1_Q1559 = 0, $variable_HP_smth1_Q1578 = 0, $variable_HP_smth1_Q1586 = 0, $variable_HP_smth1_Q1595 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $state_Fxx$addr = $state_Fxx; $0 = $state_Fxx$addr; $psEncC1 = $0; $1 = $psEncC1; $prevSignalType = ((($1)) + 4537|0); $2 = HEAP8[$prevSignalType>>0]|0; $conv = $2 << 24 >> 24; $cmp = ($conv|0)==(2); if (!($cmp)) { STACKTOP = sp;return; } $3 = $psEncC1; $fs_kHz = ((($3)) + 4572|0); $4 = HEAP32[$fs_kHz>>2]|0; $mul = ($4*1000)|0; $shl = $mul << 16; $5 = $psEncC1; $prevLag = ((($5)) + 4540|0); $6 = HEAP32[$prevLag>>2]|0; $div = (($shl|0) / ($6|0))&-1; $pitch_freq_Hz_Q16 = $div; $7 = $pitch_freq_Hz_Q16; $call = (_silk_lin2log($7)|0); $sub = (($call) - 2048)|0; $pitch_freq_log_Q7 = $sub; $8 = $psEncC1; $input_quality_bands_Q15 = ((($8)) + 4692|0); $9 = HEAP32[$input_quality_bands_Q15>>2]|0; $quality_Q15 = $9; $10 = $pitch_freq_log_Q7; $11 = $quality_Q15; $sub3 = (0 - ($11))|0; $shl4 = $sub3 << 2; $shr = $shl4 >> 16; $12 = $quality_Q15; $conv5 = $12&65535; $conv6 = $conv5 << 16 >> 16; $mul7 = Math_imul($shr, $conv6)|0; $13 = $quality_Q15; $sub8 = (0 - ($13))|0; $shl9 = $sub8 << 2; $and = $shl9 & 65535; $14 = $quality_Q15; $conv10 = $14&65535; $conv11 = $conv10 << 16 >> 16; $mul12 = Math_imul($and, $conv11)|0; $shr13 = $mul12 >> 16; $add = (($mul7) + ($shr13))|0; $shr14 = $add >> 16; $15 = $pitch_freq_log_Q7; $call15 = (_silk_lin2log(3932160)|0); $sub16 = (($call15) - 2048)|0; $sub17 = (($15) - ($sub16))|0; $conv18 = $sub17&65535; $conv19 = $conv18 << 16 >> 16; $mul20 = Math_imul($shr14, $conv19)|0; $16 = $quality_Q15; $sub21 = (0 - ($16))|0; $shl22 = $sub21 << 2; $shr23 = $shl22 >> 16; $17 = $quality_Q15; $conv24 = $17&65535; $conv25 = $conv24 << 16 >> 16; $mul26 = Math_imul($shr23, $conv25)|0; $18 = $quality_Q15; $sub27 = (0 - ($18))|0; $shl28 = $sub27 << 2; $and29 = $shl28 & 65535; $19 = $quality_Q15; $conv30 = $19&65535; $conv31 = $conv30 << 16 >> 16; $mul32 = Math_imul($and29, $conv31)|0; $shr33 = $mul32 >> 16; $add34 = (($mul26) + ($shr33))|0; $and35 = $add34 & 65535; $20 = $pitch_freq_log_Q7; $call36 = (_silk_lin2log(3932160)|0); $sub37 = (($call36) - 2048)|0; $sub38 = (($20) - ($sub37))|0; $conv39 = $sub38&65535; $conv40 = $conv39 << 16 >> 16; $mul41 = Math_imul($and35, $conv40)|0; $shr42 = $mul41 >> 16; $add43 = (($mul20) + ($shr42))|0; $add44 = (($10) + ($add43))|0; $pitch_freq_log_Q7 = $add44; $21 = $pitch_freq_log_Q7; $22 = $psEncC1; $variable_HP_smth1_Q15 = ((($22)) + 8|0); $23 = HEAP32[$variable_HP_smth1_Q15>>2]|0; $shr45 = $23 >> 8; $sub46 = (($21) - ($shr45))|0; $delta_freq_Q7 = $sub46; $24 = $delta_freq_Q7; $cmp47 = ($24|0)<(0); if ($cmp47) { $25 = $delta_freq_Q7; $mul50 = ($25*3)|0; $delta_freq_Q7 = $mul50; } $26 = $delta_freq_Q7; $cmp51 = ($26|0)>(51); if ($cmp51) { $cond58 = 51; } else { $27 = $delta_freq_Q7; $cmp53 = ($27|0)<(-51); $28 = $delta_freq_Q7; $cond = $cmp53 ? -51 : $28; $cond58 = $cond; } $delta_freq_Q7 = $cond58; $29 = $psEncC1; $variable_HP_smth1_Q1559 = ((($29)) + 8|0); $30 = HEAP32[$variable_HP_smth1_Q1559>>2]|0; $31 = $psEncC1; $speech_activity_Q8 = ((($31)) + 4528|0); $32 = HEAP32[$speech_activity_Q8>>2]|0; $conv60 = $32&65535; $conv61 = $conv60 << 16 >> 16; $33 = $delta_freq_Q7; $conv62 = $33&65535; $conv63 = $conv62 << 16 >> 16; $mul64 = Math_imul($conv61, $conv63)|0; $shr65 = $mul64 >> 16; $mul66 = ($shr65*6554)|0; $34 = $psEncC1; $speech_activity_Q867 = ((($34)) + 4528|0); $35 = HEAP32[$speech_activity_Q867>>2]|0; $conv68 = $35&65535; $conv69 = $conv68 << 16 >> 16; $36 = $delta_freq_Q7; $conv70 = $36&65535; $conv71 = $conv70 << 16 >> 16; $mul72 = Math_imul($conv69, $conv71)|0; $and73 = $mul72 & 65535; $mul74 = ($and73*6554)|0; $shr75 = $mul74 >> 16; $add76 = (($mul66) + ($shr75))|0; $add77 = (($30) + ($add76))|0; $37 = $psEncC1; $variable_HP_smth1_Q1578 = ((($37)) + 8|0); HEAP32[$variable_HP_smth1_Q1578>>2] = $add77; $call79 = (_silk_lin2log(60)|0); $shl80 = $call79 << 8; $call81 = (_silk_lin2log(100)|0); $shl82 = $call81 << 8; $cmp83 = ($shl80|0)>($shl82|0); $38 = $psEncC1; $variable_HP_smth1_Q1586 = ((($38)) + 8|0); $39 = HEAP32[$variable_HP_smth1_Q1586>>2]|0; do { if ($cmp83) { $call87 = (_silk_lin2log(60)|0); $shl88 = $call87 << 8; $cmp89 = ($39|0)>($shl88|0); if ($cmp89) { $call92 = (_silk_lin2log(60)|0); $shl93 = $call92 << 8; $cond134 = $shl93; break; } $40 = $psEncC1; $variable_HP_smth1_Q1595 = ((($40)) + 8|0); $41 = HEAP32[$variable_HP_smth1_Q1595>>2]|0; $call96 = (_silk_lin2log(100)|0); $shl97 = $call96 << 8; $cmp98 = ($41|0)<($shl97|0); if ($cmp98) { $call101 = (_silk_lin2log(100)|0); $shl102 = $call101 << 8; $cond134 = $shl102; break; } else { $42 = $psEncC1; $variable_HP_smth1_Q15104 = ((($42)) + 8|0); $43 = HEAP32[$variable_HP_smth1_Q15104>>2]|0; $cond134 = $43; break; } } else { $call111 = (_silk_lin2log(100)|0); $shl112 = $call111 << 8; $cmp113 = ($39|0)>($shl112|0); if ($cmp113) { $call116 = (_silk_lin2log(100)|0); $shl117 = $call116 << 8; $cond134 = $shl117; break; } $44 = $psEncC1; $variable_HP_smth1_Q15119 = ((($44)) + 8|0); $45 = HEAP32[$variable_HP_smth1_Q15119>>2]|0; $call120 = (_silk_lin2log(60)|0); $shl121 = $call120 << 8; $cmp122 = ($45|0)<($shl121|0); if ($cmp122) { $call125 = (_silk_lin2log(60)|0); $shl126 = $call125 << 8; $cond134 = $shl126; break; } else { $46 = $psEncC1; $variable_HP_smth1_Q15128 = ((($46)) + 8|0); $47 = HEAP32[$variable_HP_smth1_Q15128>>2]|0; $cond134 = $47; break; } } } while(0); $48 = $psEncC1; $variable_HP_smth1_Q15135 = ((($48)) + 8|0); HEAP32[$variable_HP_smth1_Q15135>>2] = $cond134; STACKTOP = sp;return; } function _silk_NLSF_unpack($ec_ix,$pred_Q8,$psNLSF_CB,$CB1_index) { $ec_ix = $ec_ix|0; $pred_Q8 = $pred_Q8|0; $psNLSF_CB = $psNLSF_CB|0; $CB1_index = $CB1_index|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $CB1_index$addr = 0, $add = 0, $add26 = 0, $add36 = 0, $add37 = 0; var $add39 = 0, $add41 = 0, $and = 0, $and13 = 0, $and21 = 0, $and31 = 0, $arrayidx = 0, $arrayidx10 = 0, $arrayidx17 = 0, $arrayidx18 = 0, $arrayidx27 = 0, $arrayidx38 = 0, $arrayidx40 = 0, $cmp = 0, $conv = 0, $conv12 = 0, $conv15 = 0, $conv19 = 0, $conv22 = 0, $conv23 = 0; var $conv25 = 0, $conv29 = 0, $conv3 = 0, $conv33 = 0, $conv5 = 0, $conv6 = 0, $conv7 = 0, $conv9 = 0, $div = 0, $ec_ix$addr = 0, $ec_sel = 0, $ec_sel_ptr = 0, $entry1 = 0, $i = 0, $incdec$ptr = 0, $mul = 0, $mul16 = 0, $mul24 = 0, $mul35 = 0, $mul8 = 0; var $order = 0, $order14 = 0, $order2 = 0, $order32 = 0, $pred_Q8$addr = 0, $pred_Q811 = 0, $pred_Q828 = 0, $psNLSF_CB$addr = 0, $shr = 0, $shr20 = 0, $shr30 = 0, $sub = 0, $sub34 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $ec_ix$addr = $ec_ix; $pred_Q8$addr = $pred_Q8; $psNLSF_CB$addr = $psNLSF_CB; $CB1_index$addr = $CB1_index; $0 = $psNLSF_CB$addr; $ec_sel = ((($0)) + 24|0); $1 = HEAP32[$ec_sel>>2]|0; $2 = $CB1_index$addr; $3 = $psNLSF_CB$addr; $order = ((($3)) + 2|0); $4 = HEAP16[$order>>1]|0; $conv = $4 << 16 >> 16; $mul = Math_imul($2, $conv)|0; $div = (($mul|0) / 2)&-1; $arrayidx = (($1) + ($div)|0); $ec_sel_ptr = $arrayidx; $i = 0; while(1) { $5 = $i; $6 = $psNLSF_CB$addr; $order2 = ((($6)) + 2|0); $7 = HEAP16[$order2>>1]|0; $conv3 = $7 << 16 >> 16; $cmp = ($5|0)<($conv3|0); if (!($cmp)) { break; } $8 = $ec_sel_ptr; $incdec$ptr = ((($8)) + 1|0); $ec_sel_ptr = $incdec$ptr; $9 = HEAP8[$8>>0]|0; $entry1 = $9; $10 = $entry1; $conv5 = $10&255; $shr = $conv5 >> 1; $and = $shr & 7; $conv6 = $and&65535; $conv7 = $conv6 << 16 >> 16; $mul8 = ($conv7*9)|0; $conv9 = $mul8&65535; $11 = $ec_ix$addr; $12 = $i; $arrayidx10 = (($11) + ($12<<1)|0); HEAP16[$arrayidx10>>1] = $conv9; $13 = $psNLSF_CB$addr; $pred_Q811 = ((($13)) + 20|0); $14 = HEAP32[$pred_Q811>>2]|0; $15 = $i; $16 = $entry1; $conv12 = $16&255; $and13 = $conv12 & 1; $17 = $psNLSF_CB$addr; $order14 = ((($17)) + 2|0); $18 = HEAP16[$order14>>1]|0; $conv15 = $18 << 16 >> 16; $sub = (($conv15) - 1)|0; $mul16 = Math_imul($and13, $sub)|0; $add = (($15) + ($mul16))|0; $arrayidx17 = (($14) + ($add)|0); $19 = HEAP8[$arrayidx17>>0]|0; $20 = $pred_Q8$addr; $21 = $i; $arrayidx18 = (($20) + ($21)|0); HEAP8[$arrayidx18>>0] = $19; $22 = $entry1; $conv19 = $22&255; $shr20 = $conv19 >> 5; $and21 = $shr20 & 7; $conv22 = $and21&65535; $conv23 = $conv22 << 16 >> 16; $mul24 = ($conv23*9)|0; $conv25 = $mul24&65535; $23 = $ec_ix$addr; $24 = $i; $add26 = (($24) + 1)|0; $arrayidx27 = (($23) + ($add26<<1)|0); HEAP16[$arrayidx27>>1] = $conv25; $25 = $psNLSF_CB$addr; $pred_Q828 = ((($25)) + 20|0); $26 = HEAP32[$pred_Q828>>2]|0; $27 = $i; $28 = $entry1; $conv29 = $28&255; $shr30 = $conv29 >> 4; $and31 = $shr30 & 1; $29 = $psNLSF_CB$addr; $order32 = ((($29)) + 2|0); $30 = HEAP16[$order32>>1]|0; $conv33 = $30 << 16 >> 16; $sub34 = (($conv33) - 1)|0; $mul35 = Math_imul($and31, $sub34)|0; $add36 = (($27) + ($mul35))|0; $add37 = (($add36) + 1)|0; $arrayidx38 = (($26) + ($add37)|0); $31 = HEAP8[$arrayidx38>>0]|0; $32 = $pred_Q8$addr; $33 = $i; $add39 = (($33) + 1)|0; $arrayidx40 = (($32) + ($add39)|0); HEAP8[$arrayidx40>>0] = $31; $34 = $i; $add41 = (($34) + 2)|0; $i = $add41; } STACKTOP = sp;return; } function _silk_stereo_LR_to_MS($state,$x1,$x2,$ix,$mid_only_flag,$mid_side_rates_bps,$total_rate_bps,$prev_speech_act_Q8,$toMono,$fs_kHz,$frame_length) { $state = $state|0; $x1 = $x1|0; $x2 = $x2|0; $ix = $ix|0; $mid_only_flag = $mid_only_flag|0; $mid_side_rates_bps = $mid_side_rates_bps|0; $total_rate_bps = $total_rate_bps|0; $prev_speech_act_Q8 = $prev_speech_act_Q8|0; $toMono = $toMono|0; $fs_kHz = $fs_kHz|0; $frame_length = $frame_length|0; var $$sub145 = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0; var $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0; var $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0; var $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0; var $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0; var $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0; var $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0; var $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0; var $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0; var $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0; var $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0; var $296 = 0, $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0; var $313 = 0, $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0; var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0; var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0; var $97 = 0, $98 = 0, $99 = 0, $HP_ratio_Q14 = 0, $LP_ratio_Q14 = 0, $add = 0, $add1 = 0, $add126 = 0, $add136 = 0, $add14 = 0, $add151 = 0, $add153 = 0, $add167 = 0, $add172 = 0, $add178 = 0, $add19 = 0, $add212 = 0, $add213 = 0, $add238 = 0, $add24 = 0; var $add283 = 0, $add31 = 0, $add344 = 0, $add394 = 0, $add408 = 0, $add426 = 0, $add433 = 0, $add434 = 0, $add435 = 0, $add438 = 0, $add441 = 0, $add442 = 0, $add446 = 0, $add449 = 0, $add454 = 0, $add459 = 0, $add469 = 0, $add470 = 0, $add471 = 0, $add479 = 0; var $add488 = 0, $add489 = 0, $add491 = 0, $add498 = 0, $add505 = 0, $add51 = 0, $add529 = 0, $add532 = 0, $add533 = 0, $add537 = 0, $add54 = 0, $add540 = 0, $add545 = 0, $add55 = 0, $add550 = 0, $add560 = 0, $add561 = 0, $add562 = 0, $add570 = 0, $add579 = 0; var $add58 = 0, $add580 = 0, $add582 = 0, $add589 = 0, $add596 = 0, $add6 = 0, $add60 = 0, $add64 = 0, $add81 = 0, $add84 = 0, $add85 = 0, $add89 = 0, $add91 = 0, $add95 = 0, $and = 0, $and121 = 0, $and173 = 0, $and18 = 0, $and207 = 0, $and23 = 0; var $and233 = 0, $and278 = 0, $and30 = 0, $and421 = 0, $and453 = 0, $and464 = 0, $and483 = 0, $and544 = 0, $and555 = 0, $and574 = 0, $arrayidx = 0, $arrayidx100 = 0, $arrayidx11 = 0, $arrayidx130 = 0, $arrayidx132 = 0, $arrayidx16 = 0, $arrayidx163 = 0, $arrayidx164 = 0, $arrayidx194 = 0, $arrayidx2 = 0; var $arrayidx219 = 0, $arrayidx252 = 0, $arrayidx257 = 0, $arrayidx260 = 0, $arrayidx262 = 0, $arrayidx297 = 0, $arrayidx302 = 0, $arrayidx305 = 0, $arrayidx324 = 0, $arrayidx329 = 0, $arrayidx35 = 0, $arrayidx362 = 0, $arrayidx366 = 0, $arrayidx367 = 0, $arrayidx376 = 0, $arrayidx39 = 0, $arrayidx397 = 0, $arrayidx399 = 0, $arrayidx4 = 0, $arrayidx42 = 0; var $arrayidx436 = 0, $arrayidx439 = 0, $arrayidx443 = 0, $arrayidx450 = 0, $arrayidx455 = 0, $arrayidx472 = 0, $arrayidx480 = 0, $arrayidx49 = 0, $arrayidx513 = 0, $arrayidx519 = 0, $arrayidx52 = 0, $arrayidx527 = 0, $arrayidx530 = 0, $arrayidx534 = 0, $arrayidx541 = 0, $arrayidx546 = 0, $arrayidx56 = 0, $arrayidx563 = 0, $arrayidx571 = 0, $arrayidx604 = 0; var $arrayidx612 = 0, $arrayidx615 = 0, $arrayidx63 = 0, $arrayidx65 = 0, $arrayidx69 = 0, $arrayidx79 = 0, $arrayidx8 = 0, $arrayidx82 = 0, $arrayidx86 = 0, $arrayidx94 = 0, $arrayidx96 = 0, $call = 0, $call131 = 0, $call154 = 0, $call179 = 0, $call369 = 0, $cmp = 0, $cmp104 = 0, $cmp137 = 0, $cmp146 = 0; var $cmp157 = 0, $cmp180 = 0, $cmp184 = 0, $cmp20 = 0, $cmp223 = 0, $cmp227 = 0, $cmp239 = 0, $cmp25 = 0, $cmp266 = 0, $cmp271 = 0, $cmp284 = 0, $cmp309 = 0, $cmp338 = 0, $cmp349 = 0, $cmp359 = 0, $cmp363 = 0, $cmp430 = 0, $cmp46 = 0, $cmp493 = 0, $cmp500 = 0; var $cmp524 = 0, $cmp584 = 0, $cmp591 = 0, $cmp76 = 0, $cond106 = 0, $cond142 = 0, $cond144 = 0, $cond189 = 0, $cond191 = 0, $cond33 = 0, $cond510 = 0, $cond601 = 0, $conv = 0, $conv105 = 0, $conv107 = 0, $conv108 = 0, $conv109 = 0, $conv110 = 0, $conv113 = 0, $conv114 = 0; var $conv116 = 0, $conv117 = 0, $conv118 = 0, $conv119 = 0, $conv12 = 0, $conv122 = 0, $conv123 = 0, $conv133 = 0, $conv134 = 0, $conv148 = 0, $conv149 = 0, $conv15 = 0, $conv169 = 0, $conv170 = 0, $conv174 = 0, $conv175 = 0, $conv196 = 0, $conv198 = 0, $conv201 = 0, $conv202 = 0; var $conv205 = 0, $conv208 = 0, $conv209 = 0, $conv214 = 0, $conv222 = 0, $conv231 = 0, $conv235 = 0, $conv243 = 0, $conv245 = 0, $conv246 = 0, $conv251 = 0, $conv253 = 0, $conv254 = 0, $conv265 = 0, $conv276 = 0, $conv280 = 0, $conv288 = 0, $conv290 = 0, $conv291 = 0, $conv296 = 0; var $conv298 = 0, $conv299 = 0, $conv308 = 0, $conv315 = 0, $conv317 = 0, $conv318 = 0, $conv323 = 0, $conv325 = 0, $conv326 = 0, $conv332 = 0, $conv337 = 0, $conv34 = 0, $conv343 = 0, $conv345 = 0, $conv347 = 0, $conv358 = 0, $conv373 = 0, $conv377 = 0, $conv380 = 0, $conv386 = 0; var $conv388 = 0, $conv389 = 0, $conv390 = 0, $conv391 = 0, $conv400 = 0, $conv402 = 0, $conv403 = 0, $conv404 = 0, $conv405 = 0, $conv412 = 0, $conv415 = 0, $conv416 = 0, $conv419 = 0, $conv422 = 0, $conv423 = 0, $conv437 = 0, $conv440 = 0, $conv444 = 0, $conv451 = 0, $conv456 = 0; var $conv461 = 0, $conv462 = 0, $conv465 = 0, $conv466 = 0, $conv473 = 0, $conv476 = 0, $conv477 = 0, $conv481 = 0, $conv484 = 0, $conv485 = 0, $conv5 = 0, $conv50 = 0, $conv511 = 0, $conv528 = 0, $conv53 = 0, $conv531 = 0, $conv535 = 0, $conv542 = 0, $conv547 = 0, $conv552 = 0; var $conv553 = 0, $conv556 = 0, $conv557 = 0, $conv564 = 0, $conv567 = 0, $conv568 = 0, $conv57 = 0, $conv572 = 0, $conv575 = 0, $conv576 = 0, $conv602 = 0, $conv609 = 0, $conv613 = 0, $conv616 = 0, $conv62 = 0, $conv66 = 0, $conv68 = 0, $conv80 = 0, $conv83 = 0, $conv87 = 0; var $conv9 = 0, $conv93 = 0, $conv97 = 0, $conv99 = 0, $delta0_Q13 = 0, $delta1_Q13 = 0, $deltaw_Q24 = 0, $denom_Q16 = 0, $diff = 0, $div = 0, $frac_3_Q16 = 0, $frac_Q16 = 0, $frame_length$addr = 0, $fs_kHz$addr = 0, $inc = 0, $inc102 = 0, $inc515 = 0, $inc606 = 0, $inc71 = 0, $is10msFrame = 0; var $ix$addr = 0, $mid = 0, $mid_only_flag$addr = 0, $mid_side_amp_Q0 = 0, $mid_side_amp_Q0129 = 0, $mid_side_rates_bps$addr = 0, $min_mid_rate_bps = 0, $mul = 0, $mul111 = 0, $mul115 = 0, $mul120 = 0, $mul124 = 0, $mul135 = 0, $mul150 = 0, $mul152 = 0, $mul171 = 0, $mul176 = 0, $mul203 = 0, $mul210 = 0, $mul225 = 0; var $mul226 = 0, $mul232 = 0, $mul236 = 0, $mul247 = 0, $mul255 = 0, $mul269 = 0, $mul270 = 0, $mul277 = 0, $mul281 = 0, $mul292 = 0, $mul300 = 0, $mul319 = 0, $mul327 = 0, $mul341 = 0, $mul348 = 0, $mul382 = 0, $mul392 = 0, $mul406 = 0, $mul417 = 0, $mul424 = 0; var $mul429 = 0, $mul452 = 0, $mul457 = 0, $mul463 = 0, $mul467 = 0, $mul478 = 0, $mul486 = 0, $mul522 = 0, $mul543 = 0, $mul548 = 0, $mul554 = 0, $mul558 = 0, $mul569 = 0, $mul577 = 0, $n = 0, $pred0_Q13 = 0, $pred1_Q13 = 0, $pred_Q13 = 0, $prev_speech_act_Q8$addr = 0, $sMid = 0; var $sMid37 = 0, $sSide = 0, $sSide40 = 0, $saved_stack = 0, $shl = 0, $shl165 = 0, $shl381 = 0, $shl427 = 0, $shl445 = 0, $shl447 = 0, $shl474 = 0, $shl482 = 0, $shl521 = 0, $shl536 = 0, $shl538 = 0, $shl565 = 0, $shl573 = 0, $shl88 = 0, $shr = 0, $shr112 = 0; var $shr125 = 0, $shr168 = 0, $shr17 = 0, $shr177 = 0, $shr200 = 0, $shr211 = 0, $shr22 = 0, $shr229 = 0, $shr237 = 0, $shr248 = 0, $shr256 = 0, $shr274 = 0, $shr282 = 0, $shr29 = 0, $shr293 = 0, $shr301 = 0, $shr320 = 0, $shr328 = 0, $shr393 = 0, $shr395 = 0; var $shr407 = 0, $shr409 = 0, $shr414 = 0, $shr425 = 0, $shr448 = 0, $shr458 = 0, $shr460 = 0, $shr468 = 0, $shr475 = 0, $shr487 = 0, $shr490 = 0, $shr492 = 0, $shr497 = 0, $shr499 = 0, $shr504 = 0, $shr506 = 0, $shr539 = 0, $shr549 = 0, $shr551 = 0, $shr559 = 0; var $shr566 = 0, $shr578 = 0, $shr581 = 0, $shr583 = 0, $shr588 = 0, $shr59 = 0, $shr590 = 0, $shr595 = 0, $shr597 = 0, $shr61 = 0, $shr90 = 0, $shr92 = 0, $silent_side_len = 0, $silent_side_len346 = 0, $silent_side_len353 = 0, $silent_side_len356 = 0, $smooth_coef_Q16 = 0, $smth_width_Q14 = 0, $smth_width_Q14197 = 0, $smth_width_Q14204 = 0; var $smth_width_Q14215 = 0, $smth_width_Q14230 = 0, $smth_width_Q14234 = 0, $smth_width_Q14242 = 0, $smth_width_Q14250 = 0, $smth_width_Q14275 = 0, $smth_width_Q14279 = 0, $smth_width_Q14287 = 0, $smth_width_Q14295 = 0, $smth_width_Q14307 = 0, $smth_width_Q14314 = 0, $smth_width_Q14322 = 0, $smth_width_Q14331 = 0, $state$addr = 0, $sub = 0, $sub10 = 0, $sub13 = 0, $sub145 = 0, $sub162 = 0, $sub166 = 0; var $sub193 = 0, $sub199 = 0, $sub206 = 0, $sub3 = 0, $sub342 = 0, $sub368 = 0, $sub374 = 0, $sub378 = 0, $sub387 = 0, $sub396 = 0, $sub401 = 0, $sub410 = 0, $sub413 = 0, $sub420 = 0, $sub512 = 0, $sub518 = 0, $sub520 = 0, $sub603 = 0, $sub67 = 0, $sub7 = 0; var $sub98 = 0, $sum = 0, $toMono$addr = 0, $tobool = 0, $tobool143 = 0, $tobool216 = 0, $total_rate_bps$addr = 0, $vla = 0, $vla$alloca_mul = 0, $vla43 = 0, $vla43$alloca_mul = 0, $vla44 = 0, $vla44$alloca_mul = 0, $vla73 = 0, $vla73$alloca_mul = 0, $vla74 = 0, $vla74$alloca_mul = 0, $w_Q24 = 0, $width_Q14 = 0, $width_prev_Q14 = 0; var $width_prev_Q14264 = 0, $width_prev_Q14379 = 0, $width_prev_Q14411 = 0, $width_prev_Q14418 = 0, $width_prev_Q14617 = 0, $x1$addr = 0, $x2$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 144|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(144|0); $pred_Q13 = sp + 48|0; $LP_ratio_Q14 = sp + 36|0; $HP_ratio_Q14 = sp + 32|0; $state$addr = $state; $x1$addr = $x1; $x2$addr = $x2; $ix$addr = $ix; $mid_only_flag$addr = $mid_only_flag; $mid_side_rates_bps$addr = $mid_side_rates_bps; $total_rate_bps$addr = $total_rate_bps; $prev_speech_act_Q8$addr = $prev_speech_act_Q8; $toMono$addr = $toMono; $fs_kHz$addr = $fs_kHz; $frame_length$addr = $frame_length; $0 = $x1$addr; $arrayidx = ((($0)) + -4|0); $mid = $arrayidx; $1 = $frame_length$addr; $add = (($1) + 2)|0; $2 = (_llvm_stacksave()|0); $saved_stack = $2; $vla$alloca_mul = $add<<1; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $n = 0; while(1) { $3 = $n; $4 = $frame_length$addr; $add1 = (($4) + 2)|0; $cmp = ($3|0)<($add1|0); if (!($cmp)) { break; } $5 = $x1$addr; $6 = $n; $sub = (($6) - 2)|0; $arrayidx2 = (($5) + ($sub<<1)|0); $7 = HEAP16[$arrayidx2>>1]|0; $conv = $7 << 16 >> 16; $8 = $x2$addr; $9 = $n; $sub3 = (($9) - 2)|0; $arrayidx4 = (($8) + ($sub3<<1)|0); $10 = HEAP16[$arrayidx4>>1]|0; $conv5 = $10 << 16 >> 16; $add6 = (($conv) + ($conv5))|0; $sum = $add6; $11 = $x1$addr; $12 = $n; $sub7 = (($12) - 2)|0; $arrayidx8 = (($11) + ($sub7<<1)|0); $13 = HEAP16[$arrayidx8>>1]|0; $conv9 = $13 << 16 >> 16; $14 = $x2$addr; $15 = $n; $sub10 = (($15) - 2)|0; $arrayidx11 = (($14) + ($sub10<<1)|0); $16 = HEAP16[$arrayidx11>>1]|0; $conv12 = $16 << 16 >> 16; $sub13 = (($conv9) - ($conv12))|0; $diff = $sub13; $17 = $sum; $shr = $17 >> 1; $18 = $sum; $and = $18 & 1; $add14 = (($shr) + ($and))|0; $conv15 = $add14&65535; $19 = $mid; $20 = $n; $arrayidx16 = (($19) + ($20<<1)|0); HEAP16[$arrayidx16>>1] = $conv15; $21 = $diff; $shr17 = $21 >> 1; $22 = $diff; $and18 = $22 & 1; $add19 = (($shr17) + ($and18))|0; $cmp20 = ($add19|0)>(32767); if ($cmp20) { $cond33 = 32767; } else { $23 = $diff; $shr22 = $23 >> 1; $24 = $diff; $and23 = $24 & 1; $add24 = (($shr22) + ($and23))|0; $cmp25 = ($add24|0)<(-32768); if ($cmp25) { $cond33 = -32768; } else { $25 = $diff; $shr29 = $25 >> 1; $26 = $diff; $and30 = $26 & 1; $add31 = (($shr29) + ($and30))|0; $cond33 = $add31; } } $conv34 = $cond33&65535; $27 = $n; $arrayidx35 = (($vla) + ($27<<1)|0); HEAP16[$arrayidx35>>1] = $conv34; $28 = $n; $inc = (($28) + 1)|0; $n = $inc; } $29 = $mid; $30 = $state$addr; $sMid = ((($30)) + 4|0); ;HEAP16[$29>>1]=HEAP16[$sMid>>1]|0;HEAP16[$29+2>>1]=HEAP16[$sMid+2>>1]|0; $31 = $state$addr; $sSide = ((($31)) + 8|0); ;HEAP16[$vla>>1]=HEAP16[$sSide>>1]|0;HEAP16[$vla+2>>1]=HEAP16[$sSide+2>>1]|0; $32 = $state$addr; $sMid37 = ((($32)) + 4|0); $33 = $mid; $34 = $frame_length$addr; $arrayidx39 = (($33) + ($34<<1)|0); ;HEAP16[$sMid37>>1]=HEAP16[$arrayidx39>>1]|0;HEAP16[$sMid37+2>>1]=HEAP16[$arrayidx39+2>>1]|0; $35 = $state$addr; $sSide40 = ((($35)) + 8|0); $36 = $frame_length$addr; $arrayidx42 = (($vla) + ($36<<1)|0); ;HEAP16[$sSide40>>1]=HEAP16[$arrayidx42>>1]|0;HEAP16[$sSide40+2>>1]=HEAP16[$arrayidx42+2>>1]|0; $37 = $frame_length$addr; $vla43$alloca_mul = $37<<1; $vla43 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla43$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla43$alloca_mul)|0)+15)&-16)|0);; $38 = $frame_length$addr; $vla44$alloca_mul = $38<<1; $vla44 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla44$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla44$alloca_mul)|0)+15)&-16)|0);; $n = 0; while(1) { $39 = $n; $40 = $frame_length$addr; $cmp46 = ($39|0)<($40|0); if (!($cmp46)) { break; } $41 = $mid; $42 = $n; $arrayidx49 = (($41) + ($42<<1)|0); $43 = HEAP16[$arrayidx49>>1]|0; $conv50 = $43 << 16 >> 16; $44 = $mid; $45 = $n; $add51 = (($45) + 2)|0; $arrayidx52 = (($44) + ($add51<<1)|0); $46 = HEAP16[$arrayidx52>>1]|0; $conv53 = $46 << 16 >> 16; $add54 = (($conv50) + ($conv53))|0; $47 = $mid; $48 = $n; $add55 = (($48) + 1)|0; $arrayidx56 = (($47) + ($add55<<1)|0); $49 = HEAP16[$arrayidx56>>1]|0; $conv57 = $49 << 16 >> 16; $shl = $conv57 << 1; $add58 = (($add54) + ($shl))|0; $shr59 = $add58 >> 1; $add60 = (($shr59) + 1)|0; $shr61 = $add60 >> 1; $sum = $shr61; $50 = $sum; $conv62 = $50&65535; $51 = $n; $arrayidx63 = (($vla43) + ($51<<1)|0); HEAP16[$arrayidx63>>1] = $conv62; $52 = $mid; $53 = $n; $add64 = (($53) + 1)|0; $arrayidx65 = (($52) + ($add64<<1)|0); $54 = HEAP16[$arrayidx65>>1]|0; $conv66 = $54 << 16 >> 16; $55 = $sum; $sub67 = (($conv66) - ($55))|0; $conv68 = $sub67&65535; $56 = $n; $arrayidx69 = (($vla44) + ($56<<1)|0); HEAP16[$arrayidx69>>1] = $conv68; $57 = $n; $inc71 = (($57) + 1)|0; $n = $inc71; } $58 = $frame_length$addr; $vla73$alloca_mul = $58<<1; $vla73 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla73$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla73$alloca_mul)|0)+15)&-16)|0);; $59 = $frame_length$addr; $vla74$alloca_mul = $59<<1; $vla74 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla74$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla74$alloca_mul)|0)+15)&-16)|0);; $n = 0; while(1) { $60 = $n; $61 = $frame_length$addr; $cmp76 = ($60|0)<($61|0); if (!($cmp76)) { break; } $62 = $n; $arrayidx79 = (($vla) + ($62<<1)|0); $63 = HEAP16[$arrayidx79>>1]|0; $conv80 = $63 << 16 >> 16; $64 = $n; $add81 = (($64) + 2)|0; $arrayidx82 = (($vla) + ($add81<<1)|0); $65 = HEAP16[$arrayidx82>>1]|0; $conv83 = $65 << 16 >> 16; $add84 = (($conv80) + ($conv83))|0; $66 = $n; $add85 = (($66) + 1)|0; $arrayidx86 = (($vla) + ($add85<<1)|0); $67 = HEAP16[$arrayidx86>>1]|0; $conv87 = $67 << 16 >> 16; $shl88 = $conv87 << 1; $add89 = (($add84) + ($shl88))|0; $shr90 = $add89 >> 1; $add91 = (($shr90) + 1)|0; $shr92 = $add91 >> 1; $sum = $shr92; $68 = $sum; $conv93 = $68&65535; $69 = $n; $arrayidx94 = (($vla73) + ($69<<1)|0); HEAP16[$arrayidx94>>1] = $conv93; $70 = $n; $add95 = (($70) + 1)|0; $arrayidx96 = (($vla) + ($add95<<1)|0); $71 = HEAP16[$arrayidx96>>1]|0; $conv97 = $71 << 16 >> 16; $72 = $sum; $sub98 = (($conv97) - ($72))|0; $conv99 = $sub98&65535; $73 = $n; $arrayidx100 = (($vla74) + ($73<<1)|0); HEAP16[$arrayidx100>>1] = $conv99; $74 = $n; $inc102 = (($74) + 1)|0; $n = $inc102; } $75 = $frame_length$addr; $76 = $fs_kHz$addr; $mul = ($76*10)|0; $cmp104 = ($75|0)==($mul|0); $conv105 = $cmp104&1; $is10msFrame = $conv105; $77 = $is10msFrame; $tobool = ($77|0)!=(0); $cond106 = $tobool ? 328 : 655; $smooth_coef_Q16 = $cond106; $78 = $prev_speech_act_Q8$addr; $conv107 = $78&65535; $conv108 = $conv107 << 16 >> 16; $79 = $prev_speech_act_Q8$addr; $conv109 = $79&65535; $conv110 = $conv109 << 16 >> 16; $mul111 = Math_imul($conv108, $conv110)|0; $shr112 = $mul111 >> 16; $80 = $smooth_coef_Q16; $conv113 = $80&65535; $conv114 = $conv113 << 16 >> 16; $mul115 = Math_imul($shr112, $conv114)|0; $81 = $prev_speech_act_Q8$addr; $conv116 = $81&65535; $conv117 = $conv116 << 16 >> 16; $82 = $prev_speech_act_Q8$addr; $conv118 = $82&65535; $conv119 = $conv118 << 16 >> 16; $mul120 = Math_imul($conv117, $conv119)|0; $and121 = $mul120 & 65535; $83 = $smooth_coef_Q16; $conv122 = $83&65535; $conv123 = $conv122 << 16 >> 16; $mul124 = Math_imul($and121, $conv123)|0; $shr125 = $mul124 >> 16; $add126 = (($mul115) + ($shr125))|0; $smooth_coef_Q16 = $add126; $84 = $state$addr; $mid_side_amp_Q0 = ((($84)) + 12|0); $85 = $frame_length$addr; $86 = $smooth_coef_Q16; $call = (_silk_stereo_find_predictor($LP_ratio_Q14,$vla43,$vla73,$mid_side_amp_Q0,$85,$86)|0); HEAP32[$pred_Q13>>2] = $call; $87 = $state$addr; $mid_side_amp_Q0129 = ((($87)) + 12|0); $arrayidx130 = ((($mid_side_amp_Q0129)) + 8|0); $88 = $frame_length$addr; $89 = $smooth_coef_Q16; $call131 = (_silk_stereo_find_predictor($HP_ratio_Q14,$vla44,$vla74,$arrayidx130,$88,$89)|0); $arrayidx132 = ((($pred_Q13)) + 4|0); HEAP32[$arrayidx132>>2] = $call131; $90 = HEAP32[$HP_ratio_Q14>>2]|0; $91 = HEAP32[$LP_ratio_Q14>>2]|0; $conv133 = $91&65535; $conv134 = $conv133 << 16 >> 16; $mul135 = ($conv134*3)|0; $add136 = (($90) + ($mul135))|0; $frac_Q16 = $add136; $92 = $frac_Q16; $cmp137 = ($92|0)<(65536); $93 = $frac_Q16; $cond142 = $cmp137 ? $93 : 65536; $frac_Q16 = $cond142; $94 = $is10msFrame; $tobool143 = ($94|0)!=(0); $cond144 = $tobool143 ? 1200 : 600; $95 = $total_rate_bps$addr; $sub145 = (($95) - ($cond144))|0; $total_rate_bps$addr = $sub145; $96 = $total_rate_bps$addr; $cmp146 = ($96|0)<(1); $$sub145 = $cmp146 ? 1 : $sub145; $total_rate_bps$addr = $$sub145; $97 = $fs_kHz$addr; $conv148 = $97&65535; $conv149 = $conv148 << 16 >> 16; $mul150 = ($conv149*600)|0; $add151 = (2000 + ($mul150))|0; $min_mid_rate_bps = $add151; $98 = $frac_Q16; $mul152 = ($98*3)|0; $frac_3_Q16 = $mul152; $99 = $total_rate_bps$addr; $100 = $frac_3_Q16; $add153 = (851968 + ($100))|0; $call154 = (_silk_DIV32_varQ($99,$add153,19)|0); $101 = $mid_side_rates_bps$addr; HEAP32[$101>>2] = $call154; $102 = $mid_side_rates_bps$addr; $103 = HEAP32[$102>>2]|0; $104 = $min_mid_rate_bps; $cmp157 = ($103|0)<($104|0); if ($cmp157) { $105 = $min_mid_rate_bps; $106 = $mid_side_rates_bps$addr; HEAP32[$106>>2] = $105; $107 = $total_rate_bps$addr; $108 = $mid_side_rates_bps$addr; $109 = HEAP32[$108>>2]|0; $sub162 = (($107) - ($109))|0; $110 = $mid_side_rates_bps$addr; $arrayidx163 = ((($110)) + 4|0); HEAP32[$arrayidx163>>2] = $sub162; $111 = $mid_side_rates_bps$addr; $arrayidx164 = ((($111)) + 4|0); $112 = HEAP32[$arrayidx164>>2]|0; $shl165 = $112 << 1; $113 = $min_mid_rate_bps; $sub166 = (($shl165) - ($113))|0; $114 = $frac_3_Q16; $add167 = (65536 + ($114))|0; $shr168 = $add167 >> 16; $115 = $min_mid_rate_bps; $conv169 = $115&65535; $conv170 = $conv169 << 16 >> 16; $mul171 = Math_imul($shr168, $conv170)|0; $116 = $frac_3_Q16; $add172 = (65536 + ($116))|0; $and173 = $add172 & 65535; $117 = $min_mid_rate_bps; $conv174 = $117&65535; $conv175 = $conv174 << 16 >> 16; $mul176 = Math_imul($and173, $conv175)|0; $shr177 = $mul176 >> 16; $add178 = (($mul171) + ($shr177))|0; $call179 = (_silk_DIV32_varQ($sub166,$add178,16)|0); $width_Q14 = $call179; $118 = $width_Q14; $cmp180 = ($118|0)>(16384); if ($cmp180) { $cond191 = 16384; } else { $119 = $width_Q14; $cmp184 = ($119|0)<(0); $120 = $width_Q14; $cond189 = $cmp184 ? 0 : $120; $cond191 = $cond189; } $width_Q14 = $cond191; } else { $121 = $total_rate_bps$addr; $122 = $mid_side_rates_bps$addr; $123 = HEAP32[$122>>2]|0; $sub193 = (($121) - ($123))|0; $124 = $mid_side_rates_bps$addr; $arrayidx194 = ((($124)) + 4|0); HEAP32[$arrayidx194>>2] = $sub193; $width_Q14 = 16384; } $125 = $state$addr; $smth_width_Q14 = ((($125)) + 28|0); $126 = HEAP16[$smth_width_Q14>>1]|0; $conv196 = $126 << 16 >> 16; $127 = $width_Q14; $128 = $state$addr; $smth_width_Q14197 = ((($128)) + 28|0); $129 = HEAP16[$smth_width_Q14197>>1]|0; $conv198 = $129 << 16 >> 16; $sub199 = (($127) - ($conv198))|0; $shr200 = $sub199 >> 16; $130 = $smooth_coef_Q16; $conv201 = $130&65535; $conv202 = $conv201 << 16 >> 16; $mul203 = Math_imul($shr200, $conv202)|0; $131 = $width_Q14; $132 = $state$addr; $smth_width_Q14204 = ((($132)) + 28|0); $133 = HEAP16[$smth_width_Q14204>>1]|0; $conv205 = $133 << 16 >> 16; $sub206 = (($131) - ($conv205))|0; $and207 = $sub206 & 65535; $134 = $smooth_coef_Q16; $conv208 = $134&65535; $conv209 = $conv208 << 16 >> 16; $mul210 = Math_imul($and207, $conv209)|0; $shr211 = $mul210 >> 16; $add212 = (($mul203) + ($shr211))|0; $add213 = (($conv196) + ($add212))|0; $conv214 = $add213&65535; $135 = $state$addr; $smth_width_Q14215 = ((($135)) + 28|0); HEAP16[$smth_width_Q14215>>1] = $conv214; $136 = $mid_only_flag$addr; HEAP8[$136>>0] = 0; $137 = $toMono$addr; $tobool216 = ($137|0)!=(0); L24: do { if ($tobool216) { $width_Q14 = 0; HEAP32[$pred_Q13>>2] = 0; $arrayidx219 = ((($pred_Q13)) + 4|0); HEAP32[$arrayidx219>>2] = 0; $138 = $ix$addr; _silk_stereo_quant_pred($pred_Q13,$138); } else { $139 = $state$addr; $width_prev_Q14 = ((($139)) + 30|0); $140 = HEAP16[$width_prev_Q14>>1]|0; $conv222 = $140 << 16 >> 16; $cmp223 = ($conv222|0)==(0); do { if ($cmp223) { $141 = $total_rate_bps$addr; $mul225 = $141<<3; $142 = $min_mid_rate_bps; $mul226 = ($142*13)|0; $cmp227 = ($mul225|0)<($mul226|0); if (!($cmp227)) { $143 = $frac_Q16; $shr229 = $143 >> 16; $144 = $state$addr; $smth_width_Q14230 = ((($144)) + 28|0); $145 = HEAP16[$smth_width_Q14230>>1]|0; $conv231 = $145 << 16 >> 16; $mul232 = Math_imul($shr229, $conv231)|0; $146 = $frac_Q16; $and233 = $146 & 65535; $147 = $state$addr; $smth_width_Q14234 = ((($147)) + 28|0); $148 = HEAP16[$smth_width_Q14234>>1]|0; $conv235 = $148 << 16 >> 16; $mul236 = Math_imul($and233, $conv235)|0; $shr237 = $mul236 >> 16; $add238 = (($mul232) + ($shr237))|0; $cmp239 = ($add238|0)<(819); if (!($cmp239)) { break; } } $149 = $state$addr; $smth_width_Q14242 = ((($149)) + 28|0); $150 = HEAP16[$smth_width_Q14242>>1]|0; $conv243 = $150 << 16 >> 16; $151 = HEAP32[$pred_Q13>>2]|0; $conv245 = $151&65535; $conv246 = $conv245 << 16 >> 16; $mul247 = Math_imul($conv243, $conv246)|0; $shr248 = $mul247 >> 14; HEAP32[$pred_Q13>>2] = $shr248; $152 = $state$addr; $smth_width_Q14250 = ((($152)) + 28|0); $153 = HEAP16[$smth_width_Q14250>>1]|0; $conv251 = $153 << 16 >> 16; $arrayidx252 = ((($pred_Q13)) + 4|0); $154 = HEAP32[$arrayidx252>>2]|0; $conv253 = $154&65535; $conv254 = $conv253 << 16 >> 16; $mul255 = Math_imul($conv251, $conv254)|0; $shr256 = $mul255 >> 14; $arrayidx257 = ((($pred_Q13)) + 4|0); HEAP32[$arrayidx257>>2] = $shr256; $155 = $ix$addr; _silk_stereo_quant_pred($pred_Q13,$155); $width_Q14 = 0; HEAP32[$pred_Q13>>2] = 0; $arrayidx260 = ((($pred_Q13)) + 4|0); HEAP32[$arrayidx260>>2] = 0; $156 = $total_rate_bps$addr; $157 = $mid_side_rates_bps$addr; HEAP32[$157>>2] = $156; $158 = $mid_side_rates_bps$addr; $arrayidx262 = ((($158)) + 4|0); HEAP32[$arrayidx262>>2] = 0; $159 = $mid_only_flag$addr; HEAP8[$159>>0] = 1; break L24; } } while(0); $160 = $state$addr; $width_prev_Q14264 = ((($160)) + 30|0); $161 = HEAP16[$width_prev_Q14264>>1]|0; $conv265 = $161 << 16 >> 16; $cmp266 = ($conv265|0)!=(0); do { if ($cmp266) { $162 = $total_rate_bps$addr; $mul269 = $162<<3; $163 = $min_mid_rate_bps; $mul270 = ($163*11)|0; $cmp271 = ($mul269|0)<($mul270|0); if (!($cmp271)) { $164 = $frac_Q16; $shr274 = $164 >> 16; $165 = $state$addr; $smth_width_Q14275 = ((($165)) + 28|0); $166 = HEAP16[$smth_width_Q14275>>1]|0; $conv276 = $166 << 16 >> 16; $mul277 = Math_imul($shr274, $conv276)|0; $167 = $frac_Q16; $and278 = $167 & 65535; $168 = $state$addr; $smth_width_Q14279 = ((($168)) + 28|0); $169 = HEAP16[$smth_width_Q14279>>1]|0; $conv280 = $169 << 16 >> 16; $mul281 = Math_imul($and278, $conv280)|0; $shr282 = $mul281 >> 16; $add283 = (($mul277) + ($shr282))|0; $cmp284 = ($add283|0)<(328); if (!($cmp284)) { break; } } $170 = $state$addr; $smth_width_Q14287 = ((($170)) + 28|0); $171 = HEAP16[$smth_width_Q14287>>1]|0; $conv288 = $171 << 16 >> 16; $172 = HEAP32[$pred_Q13>>2]|0; $conv290 = $172&65535; $conv291 = $conv290 << 16 >> 16; $mul292 = Math_imul($conv288, $conv291)|0; $shr293 = $mul292 >> 14; HEAP32[$pred_Q13>>2] = $shr293; $173 = $state$addr; $smth_width_Q14295 = ((($173)) + 28|0); $174 = HEAP16[$smth_width_Q14295>>1]|0; $conv296 = $174 << 16 >> 16; $arrayidx297 = ((($pred_Q13)) + 4|0); $175 = HEAP32[$arrayidx297>>2]|0; $conv298 = $175&65535; $conv299 = $conv298 << 16 >> 16; $mul300 = Math_imul($conv296, $conv299)|0; $shr301 = $mul300 >> 14; $arrayidx302 = ((($pred_Q13)) + 4|0); HEAP32[$arrayidx302>>2] = $shr301; $176 = $ix$addr; _silk_stereo_quant_pred($pred_Q13,$176); $width_Q14 = 0; HEAP32[$pred_Q13>>2] = 0; $arrayidx305 = ((($pred_Q13)) + 4|0); HEAP32[$arrayidx305>>2] = 0; break L24; } } while(0); $177 = $state$addr; $smth_width_Q14307 = ((($177)) + 28|0); $178 = HEAP16[$smth_width_Q14307>>1]|0; $conv308 = $178 << 16 >> 16; $cmp309 = ($conv308|0)>(15565); if ($cmp309) { $179 = $ix$addr; _silk_stereo_quant_pred($pred_Q13,$179); $width_Q14 = 16384; break; } else { $180 = $state$addr; $smth_width_Q14314 = ((($180)) + 28|0); $181 = HEAP16[$smth_width_Q14314>>1]|0; $conv315 = $181 << 16 >> 16; $182 = HEAP32[$pred_Q13>>2]|0; $conv317 = $182&65535; $conv318 = $conv317 << 16 >> 16; $mul319 = Math_imul($conv315, $conv318)|0; $shr320 = $mul319 >> 14; HEAP32[$pred_Q13>>2] = $shr320; $183 = $state$addr; $smth_width_Q14322 = ((($183)) + 28|0); $184 = HEAP16[$smth_width_Q14322>>1]|0; $conv323 = $184 << 16 >> 16; $arrayidx324 = ((($pred_Q13)) + 4|0); $185 = HEAP32[$arrayidx324>>2]|0; $conv325 = $185&65535; $conv326 = $conv325 << 16 >> 16; $mul327 = Math_imul($conv323, $conv326)|0; $shr328 = $mul327 >> 14; $arrayidx329 = ((($pred_Q13)) + 4|0); HEAP32[$arrayidx329>>2] = $shr328; $186 = $ix$addr; _silk_stereo_quant_pred($pred_Q13,$186); $187 = $state$addr; $smth_width_Q14331 = ((($187)) + 28|0); $188 = HEAP16[$smth_width_Q14331>>1]|0; $conv332 = $188 << 16 >> 16; $width_Q14 = $conv332; break; } } } while(0); $189 = $mid_only_flag$addr; $190 = HEAP8[$189>>0]|0; $conv337 = $190 << 24 >> 24; $cmp338 = ($conv337|0)==(1); do { if ($cmp338) { $191 = $frame_length$addr; $192 = $fs_kHz$addr; $mul341 = $192<<3; $sub342 = (($191) - ($mul341))|0; $193 = $state$addr; $silent_side_len = ((($193)) + 32|0); $194 = HEAP16[$silent_side_len>>1]|0; $conv343 = $194 << 16 >> 16; $add344 = (($conv343) + ($sub342))|0; $conv345 = $add344&65535; HEAP16[$silent_side_len>>1] = $conv345; $195 = $state$addr; $silent_side_len346 = ((($195)) + 32|0); $196 = HEAP16[$silent_side_len346>>1]|0; $conv347 = $196 << 16 >> 16; $197 = $fs_kHz$addr; $mul348 = ($197*5)|0; $cmp349 = ($conv347|0)<($mul348|0); if ($cmp349) { $198 = $mid_only_flag$addr; HEAP8[$198>>0] = 0; break; } else { $199 = $state$addr; $silent_side_len353 = ((($199)) + 32|0); HEAP16[$silent_side_len353>>1] = 10000; break; } } else { $200 = $state$addr; $silent_side_len356 = ((($200)) + 32|0); HEAP16[$silent_side_len356>>1] = 0; } } while(0); $201 = $mid_only_flag$addr; $202 = HEAP8[$201>>0]|0; $conv358 = $202 << 24 >> 24; $cmp359 = ($conv358|0)==(0); if ($cmp359) { $203 = $mid_side_rates_bps$addr; $arrayidx362 = ((($203)) + 4|0); $204 = HEAP32[$arrayidx362>>2]|0; $cmp363 = ($204|0)<(1); if ($cmp363) { $205 = $mid_side_rates_bps$addr; $arrayidx366 = ((($205)) + 4|0); HEAP32[$arrayidx366>>2] = 1; $206 = $total_rate_bps$addr; $207 = $mid_side_rates_bps$addr; $arrayidx367 = ((($207)) + 4|0); $208 = HEAP32[$arrayidx367>>2]|0; $sub368 = (($206) - ($208))|0; $call369 = (_silk_max_int(1,$sub368)|0); $209 = $mid_side_rates_bps$addr; HEAP32[$209>>2] = $call369; } } $210 = $state$addr; $211 = HEAP16[$210>>1]|0; $conv373 = $211 << 16 >> 16; $sub374 = (0 - ($conv373))|0; $pred0_Q13 = $sub374; $212 = $state$addr; $arrayidx376 = ((($212)) + 2|0); $213 = HEAP16[$arrayidx376>>1]|0; $conv377 = $213 << 16 >> 16; $sub378 = (0 - ($conv377))|0; $pred1_Q13 = $sub378; $214 = $state$addr; $width_prev_Q14379 = ((($214)) + 30|0); $215 = HEAP16[$width_prev_Q14379>>1]|0; $conv380 = $215 << 16 >> 16; $shl381 = $conv380 << 10; $w_Q24 = $shl381; $216 = $fs_kHz$addr; $mul382 = $216<<3; $div = (65536 / ($mul382|0))&-1; $denom_Q16 = $div; $217 = HEAP32[$pred_Q13>>2]|0; $218 = $state$addr; $219 = HEAP16[$218>>1]|0; $conv386 = $219 << 16 >> 16; $sub387 = (($217) - ($conv386))|0; $conv388 = $sub387&65535; $conv389 = $conv388 << 16 >> 16; $220 = $denom_Q16; $conv390 = $220&65535; $conv391 = $conv390 << 16 >> 16; $mul392 = Math_imul($conv389, $conv391)|0; $shr393 = $mul392 >> 15; $add394 = (($shr393) + 1)|0; $shr395 = $add394 >> 1; $sub396 = (0 - ($shr395))|0; $delta0_Q13 = $sub396; $arrayidx397 = ((($pred_Q13)) + 4|0); $221 = HEAP32[$arrayidx397>>2]|0; $222 = $state$addr; $arrayidx399 = ((($222)) + 2|0); $223 = HEAP16[$arrayidx399>>1]|0; $conv400 = $223 << 16 >> 16; $sub401 = (($221) - ($conv400))|0; $conv402 = $sub401&65535; $conv403 = $conv402 << 16 >> 16; $224 = $denom_Q16; $conv404 = $224&65535; $conv405 = $conv404 << 16 >> 16; $mul406 = Math_imul($conv403, $conv405)|0; $shr407 = $mul406 >> 15; $add408 = (($shr407) + 1)|0; $shr409 = $add408 >> 1; $sub410 = (0 - ($shr409))|0; $delta1_Q13 = $sub410; $225 = $width_Q14; $226 = $state$addr; $width_prev_Q14411 = ((($226)) + 30|0); $227 = HEAP16[$width_prev_Q14411>>1]|0; $conv412 = $227 << 16 >> 16; $sub413 = (($225) - ($conv412))|0; $shr414 = $sub413 >> 16; $228 = $denom_Q16; $conv415 = $228&65535; $conv416 = $conv415 << 16 >> 16; $mul417 = Math_imul($shr414, $conv416)|0; $229 = $width_Q14; $230 = $state$addr; $width_prev_Q14418 = ((($230)) + 30|0); $231 = HEAP16[$width_prev_Q14418>>1]|0; $conv419 = $231 << 16 >> 16; $sub420 = (($229) - ($conv419))|0; $and421 = $sub420 & 65535; $232 = $denom_Q16; $conv422 = $232&65535; $conv423 = $conv422 << 16 >> 16; $mul424 = Math_imul($and421, $conv423)|0; $shr425 = $mul424 >> 16; $add426 = (($mul417) + ($shr425))|0; $shl427 = $add426 << 10; $deltaw_Q24 = $shl427; $n = 0; while(1) { $233 = $n; $234 = $fs_kHz$addr; $mul429 = $234<<3; $cmp430 = ($233|0)<($mul429|0); if (!($cmp430)) { break; } $235 = $delta0_Q13; $236 = $pred0_Q13; $add433 = (($236) + ($235))|0; $pred0_Q13 = $add433; $237 = $delta1_Q13; $238 = $pred1_Q13; $add434 = (($238) + ($237))|0; $pred1_Q13 = $add434; $239 = $deltaw_Q24; $240 = $w_Q24; $add435 = (($240) + ($239))|0; $w_Q24 = $add435; $241 = $mid; $242 = $n; $arrayidx436 = (($241) + ($242<<1)|0); $243 = HEAP16[$arrayidx436>>1]|0; $conv437 = $243 << 16 >> 16; $244 = $mid; $245 = $n; $add438 = (($245) + 2)|0; $arrayidx439 = (($244) + ($add438<<1)|0); $246 = HEAP16[$arrayidx439>>1]|0; $conv440 = $246 << 16 >> 16; $add441 = (($conv437) + ($conv440))|0; $247 = $mid; $248 = $n; $add442 = (($248) + 1)|0; $arrayidx443 = (($247) + ($add442<<1)|0); $249 = HEAP16[$arrayidx443>>1]|0; $conv444 = $249 << 16 >> 16; $shl445 = $conv444 << 1; $add446 = (($add441) + ($shl445))|0; $shl447 = $add446 << 9; $sum = $shl447; $250 = $w_Q24; $shr448 = $250 >> 16; $251 = $n; $add449 = (($251) + 1)|0; $arrayidx450 = (($vla) + ($add449<<1)|0); $252 = HEAP16[$arrayidx450>>1]|0; $conv451 = $252 << 16 >> 16; $mul452 = Math_imul($shr448, $conv451)|0; $253 = $w_Q24; $and453 = $253 & 65535; $254 = $n; $add454 = (($254) + 1)|0; $arrayidx455 = (($vla) + ($add454<<1)|0); $255 = HEAP16[$arrayidx455>>1]|0; $conv456 = $255 << 16 >> 16; $mul457 = Math_imul($and453, $conv456)|0; $shr458 = $mul457 >> 16; $add459 = (($mul452) + ($shr458))|0; $256 = $sum; $shr460 = $256 >> 16; $257 = $pred0_Q13; $conv461 = $257&65535; $conv462 = $conv461 << 16 >> 16; $mul463 = Math_imul($shr460, $conv462)|0; $258 = $sum; $and464 = $258 & 65535; $259 = $pred0_Q13; $conv465 = $259&65535; $conv466 = $conv465 << 16 >> 16; $mul467 = Math_imul($and464, $conv466)|0; $shr468 = $mul467 >> 16; $add469 = (($mul463) + ($shr468))|0; $add470 = (($add459) + ($add469))|0; $sum = $add470; $260 = $sum; $261 = $mid; $262 = $n; $add471 = (($262) + 1)|0; $arrayidx472 = (($261) + ($add471<<1)|0); $263 = HEAP16[$arrayidx472>>1]|0; $conv473 = $263 << 16 >> 16; $shl474 = $conv473 << 11; $shr475 = $shl474 >> 16; $264 = $pred1_Q13; $conv476 = $264&65535; $conv477 = $conv476 << 16 >> 16; $mul478 = Math_imul($shr475, $conv477)|0; $265 = $mid; $266 = $n; $add479 = (($266) + 1)|0; $arrayidx480 = (($265) + ($add479<<1)|0); $267 = HEAP16[$arrayidx480>>1]|0; $conv481 = $267 << 16 >> 16; $shl482 = $conv481 << 11; $and483 = $shl482 & 65535; $268 = $pred1_Q13; $conv484 = $268&65535; $conv485 = $conv484 << 16 >> 16; $mul486 = Math_imul($and483, $conv485)|0; $shr487 = $mul486 >> 16; $add488 = (($mul478) + ($shr487))|0; $add489 = (($260) + ($add488))|0; $sum = $add489; $269 = $sum; $shr490 = $269 >> 7; $add491 = (($shr490) + 1)|0; $shr492 = $add491 >> 1; $cmp493 = ($shr492|0)>(32767); if ($cmp493) { $cond510 = 32767; } else { $270 = $sum; $shr497 = $270 >> 7; $add498 = (($shr497) + 1)|0; $shr499 = $add498 >> 1; $cmp500 = ($shr499|0)<(-32768); if ($cmp500) { $cond510 = -32768; } else { $271 = $sum; $shr504 = $271 >> 7; $add505 = (($shr504) + 1)|0; $shr506 = $add505 >> 1; $cond510 = $shr506; } } $conv511 = $cond510&65535; $272 = $x2$addr; $273 = $n; $sub512 = (($273) - 1)|0; $arrayidx513 = (($272) + ($sub512<<1)|0); HEAP16[$arrayidx513>>1] = $conv511; $274 = $n; $inc515 = (($274) + 1)|0; $n = $inc515; } $275 = HEAP32[$pred_Q13>>2]|0; $sub518 = (0 - ($275))|0; $pred0_Q13 = $sub518; $arrayidx519 = ((($pred_Q13)) + 4|0); $276 = HEAP32[$arrayidx519>>2]|0; $sub520 = (0 - ($276))|0; $pred1_Q13 = $sub520; $277 = $width_Q14; $shl521 = $277 << 10; $w_Q24 = $shl521; $278 = $fs_kHz$addr; $mul522 = $278<<3; $n = $mul522; while(1) { $279 = $n; $280 = $frame_length$addr; $cmp524 = ($279|0)<($280|0); if (!($cmp524)) { break; } $281 = $mid; $282 = $n; $arrayidx527 = (($281) + ($282<<1)|0); $283 = HEAP16[$arrayidx527>>1]|0; $conv528 = $283 << 16 >> 16; $284 = $mid; $285 = $n; $add529 = (($285) + 2)|0; $arrayidx530 = (($284) + ($add529<<1)|0); $286 = HEAP16[$arrayidx530>>1]|0; $conv531 = $286 << 16 >> 16; $add532 = (($conv528) + ($conv531))|0; $287 = $mid; $288 = $n; $add533 = (($288) + 1)|0; $arrayidx534 = (($287) + ($add533<<1)|0); $289 = HEAP16[$arrayidx534>>1]|0; $conv535 = $289 << 16 >> 16; $shl536 = $conv535 << 1; $add537 = (($add532) + ($shl536))|0; $shl538 = $add537 << 9; $sum = $shl538; $290 = $w_Q24; $shr539 = $290 >> 16; $291 = $n; $add540 = (($291) + 1)|0; $arrayidx541 = (($vla) + ($add540<<1)|0); $292 = HEAP16[$arrayidx541>>1]|0; $conv542 = $292 << 16 >> 16; $mul543 = Math_imul($shr539, $conv542)|0; $293 = $w_Q24; $and544 = $293 & 65535; $294 = $n; $add545 = (($294) + 1)|0; $arrayidx546 = (($vla) + ($add545<<1)|0); $295 = HEAP16[$arrayidx546>>1]|0; $conv547 = $295 << 16 >> 16; $mul548 = Math_imul($and544, $conv547)|0; $shr549 = $mul548 >> 16; $add550 = (($mul543) + ($shr549))|0; $296 = $sum; $shr551 = $296 >> 16; $297 = $pred0_Q13; $conv552 = $297&65535; $conv553 = $conv552 << 16 >> 16; $mul554 = Math_imul($shr551, $conv553)|0; $298 = $sum; $and555 = $298 & 65535; $299 = $pred0_Q13; $conv556 = $299&65535; $conv557 = $conv556 << 16 >> 16; $mul558 = Math_imul($and555, $conv557)|0; $shr559 = $mul558 >> 16; $add560 = (($mul554) + ($shr559))|0; $add561 = (($add550) + ($add560))|0; $sum = $add561; $300 = $sum; $301 = $mid; $302 = $n; $add562 = (($302) + 1)|0; $arrayidx563 = (($301) + ($add562<<1)|0); $303 = HEAP16[$arrayidx563>>1]|0; $conv564 = $303 << 16 >> 16; $shl565 = $conv564 << 11; $shr566 = $shl565 >> 16; $304 = $pred1_Q13; $conv567 = $304&65535; $conv568 = $conv567 << 16 >> 16; $mul569 = Math_imul($shr566, $conv568)|0; $305 = $mid; $306 = $n; $add570 = (($306) + 1)|0; $arrayidx571 = (($305) + ($add570<<1)|0); $307 = HEAP16[$arrayidx571>>1]|0; $conv572 = $307 << 16 >> 16; $shl573 = $conv572 << 11; $and574 = $shl573 & 65535; $308 = $pred1_Q13; $conv575 = $308&65535; $conv576 = $conv575 << 16 >> 16; $mul577 = Math_imul($and574, $conv576)|0; $shr578 = $mul577 >> 16; $add579 = (($mul569) + ($shr578))|0; $add580 = (($300) + ($add579))|0; $sum = $add580; $309 = $sum; $shr581 = $309 >> 7; $add582 = (($shr581) + 1)|0; $shr583 = $add582 >> 1; $cmp584 = ($shr583|0)>(32767); if ($cmp584) { $cond601 = 32767; } else { $310 = $sum; $shr588 = $310 >> 7; $add589 = (($shr588) + 1)|0; $shr590 = $add589 >> 1; $cmp591 = ($shr590|0)<(-32768); if ($cmp591) { $cond601 = -32768; } else { $311 = $sum; $shr595 = $311 >> 7; $add596 = (($shr595) + 1)|0; $shr597 = $add596 >> 1; $cond601 = $shr597; } } $conv602 = $cond601&65535; $312 = $x2$addr; $313 = $n; $sub603 = (($313) - 1)|0; $arrayidx604 = (($312) + ($sub603<<1)|0); HEAP16[$arrayidx604>>1] = $conv602; $314 = $n; $inc606 = (($314) + 1)|0; $n = $inc606; } $315 = HEAP32[$pred_Q13>>2]|0; $conv609 = $315&65535; $316 = $state$addr; HEAP16[$316>>1] = $conv609; $arrayidx612 = ((($pred_Q13)) + 4|0); $317 = HEAP32[$arrayidx612>>2]|0; $conv613 = $317&65535; $318 = $state$addr; $arrayidx615 = ((($318)) + 2|0); HEAP16[$arrayidx615>>1] = $conv613; $319 = $width_Q14; $conv616 = $319&65535; $320 = $state$addr; $width_prev_Q14617 = ((($320)) + 30|0); HEAP16[$width_prev_Q14617>>1] = $conv616; $321 = $saved_stack; _llvm_stackrestore(($321|0)); STACKTOP = sp;return; } function _silk_DIV32_varQ($a32,$b32,$Qres) { $a32 = $a32|0; $b32 = $b32|0; $Qres = $Qres|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $Qres$addr = 0, $a32$addr = 0, $a32_nrm = 0, $a_headrm = 0, $add = 0, $add33 = 0, $add34 = 0, $add35 = 0, $and = 0; var $and28 = 0, $b32$addr = 0, $b32_inv = 0, $b32_nrm = 0, $b_headrm = 0, $call = 0, $call8 = 0, $cmp = 0, $cmp2 = 0, $cmp38 = 0, $cmp44 = 0, $cmp49 = 0, $cmp57 = 0, $cmp70 = 0, $cmp78 = 0, $cmp92 = 0, $cond = 0, $cond7 = 0, $cond89 = 0, $conv = 0; var $conv12 = 0, $conv13 = 0, $conv14 = 0, $conv25 = 0, $conv26 = 0, $conv29 = 0, $conv30 = 0, $div = 0, $lshift = 0, $mul = 0, $mul15 = 0, $mul27 = 0, $mul31 = 0, $result = 0, $retval = 0, $shl = 0, $shl10 = 0, $shl22 = 0, $shl91 = 0, $shr = 0; var $shr11 = 0, $shr16 = 0, $shr24 = 0, $shr32 = 0, $shr41 = 0, $shr43 = 0, $shr48 = 0, $shr53 = 0, $shr56 = 0, $shr61 = 0, $shr69 = 0, $shr74 = 0, $shr77 = 0, $shr82 = 0, $shr95 = 0, $sub = 0, $sub1 = 0, $sub23 = 0, $sub36 = 0, $sub37 = 0; var $sub40 = 0, $sub42 = 0, $sub47 = 0, $sub5 = 0, $sub52 = 0, $sub55 = 0, $sub60 = 0, $sub73 = 0, $sub76 = 0, $sub81 = 0, $sub9 = 0, $sub90 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $a32$addr = $a32; $b32$addr = $b32; $Qres$addr = $Qres; $0 = $a32$addr; $cmp = ($0|0)>(0); $1 = $a32$addr; $sub = (0 - ($1))|0; $cond = $cmp ? $1 : $sub; $call = (_silk_CLZ32($cond)|0); $sub1 = (($call) - 1)|0; $a_headrm = $sub1; $2 = $a32$addr; $3 = $a_headrm; $shl = $2 << $3; $a32_nrm = $shl; $4 = $b32$addr; $cmp2 = ($4|0)>(0); $5 = $b32$addr; $sub5 = (0 - ($5))|0; $cond7 = $cmp2 ? $5 : $sub5; $call8 = (_silk_CLZ32($cond7)|0); $sub9 = (($call8) - 1)|0; $b_headrm = $sub9; $6 = $b32$addr; $7 = $b_headrm; $shl10 = $6 << $7; $b32_nrm = $shl10; $8 = $b32_nrm; $shr = $8 >> 16; $div = (536870911 / ($shr|0))&-1; $b32_inv = $div; $9 = $a32_nrm; $shr11 = $9 >> 16; $10 = $b32_inv; $conv = $10&65535; $conv12 = $conv << 16 >> 16; $mul = Math_imul($shr11, $conv12)|0; $11 = $a32_nrm; $and = $11 & 65535; $12 = $b32_inv; $conv13 = $12&65535; $conv14 = $conv13 << 16 >> 16; $mul15 = Math_imul($and, $conv14)|0; $shr16 = $mul15 >> 16; $add = (($mul) + ($shr16))|0; $result = $add; $13 = $a32_nrm; $14 = $b32_nrm; $15 = ($14|0)<(0); $16 = $15 << 31 >> 31; $17 = $result; $18 = ($17|0)<(0); $19 = $18 << 31 >> 31; $20 = (___muldi3(($14|0),($16|0),($17|0),($19|0))|0); $21 = tempRet0; $22 = (_bitshift64Ashr(($20|0),($21|0),32)|0); $23 = tempRet0; $shl22 = $22 << 3; $sub23 = (($13) - ($shl22))|0; $a32_nrm = $sub23; $24 = $result; $25 = $a32_nrm; $shr24 = $25 >> 16; $26 = $b32_inv; $conv25 = $26&65535; $conv26 = $conv25 << 16 >> 16; $mul27 = Math_imul($shr24, $conv26)|0; $27 = $a32_nrm; $and28 = $27 & 65535; $28 = $b32_inv; $conv29 = $28&65535; $conv30 = $conv29 << 16 >> 16; $mul31 = Math_imul($and28, $conv30)|0; $shr32 = $mul31 >> 16; $add33 = (($mul27) + ($shr32))|0; $add34 = (($24) + ($add33))|0; $result = $add34; $29 = $a_headrm; $add35 = (29 + ($29))|0; $30 = $b_headrm; $sub36 = (($add35) - ($30))|0; $31 = $Qres$addr; $sub37 = (($sub36) - ($31))|0; $lshift = $sub37; $32 = $lshift; $cmp38 = ($32|0)<(0); $33 = $lshift; if (!($cmp38)) { $cmp92 = ($33|0)<(32); if ($cmp92) { $48 = $result; $49 = $lshift; $shr95 = $48 >> $49; $retval = $shr95; $50 = $retval; STACKTOP = sp;return ($50|0); } else { $retval = 0; $50 = $retval; STACKTOP = sp;return ($50|0); } } $sub40 = (0 - ($33))|0; $shr41 = -2147483648 >> $sub40; $34 = $lshift; $sub42 = (0 - ($34))|0; $shr43 = 2147483647 >> $sub42; $cmp44 = ($shr41|0)>($shr43|0); $35 = $result; $36 = $lshift; $sub47 = (0 - ($36))|0; do { if ($cmp44) { $shr48 = -2147483648 >> $sub47; $cmp49 = ($35|0)>($shr48|0); if ($cmp49) { $37 = $lshift; $sub52 = (0 - ($37))|0; $shr53 = -2147483648 >> $sub52; $cond89 = $shr53; break; } $38 = $result; $39 = $lshift; $sub55 = (0 - ($39))|0; $shr56 = 2147483647 >> $sub55; $cmp57 = ($38|0)<($shr56|0); if ($cmp57) { $40 = $lshift; $sub60 = (0 - ($40))|0; $shr61 = 2147483647 >> $sub60; $cond89 = $shr61; break; } else { $41 = $result; $cond89 = $41; break; } } else { $shr69 = 2147483647 >> $sub47; $cmp70 = ($35|0)>($shr69|0); if ($cmp70) { $42 = $lshift; $sub73 = (0 - ($42))|0; $shr74 = 2147483647 >> $sub73; $cond89 = $shr74; break; } $43 = $result; $44 = $lshift; $sub76 = (0 - ($44))|0; $shr77 = -2147483648 >> $sub76; $cmp78 = ($43|0)<($shr77|0); if ($cmp78) { $45 = $lshift; $sub81 = (0 - ($45))|0; $shr82 = -2147483648 >> $sub81; $cond89 = $shr82; break; } else { $46 = $result; $cond89 = $46; break; } } } while(0); $47 = $lshift; $sub90 = (0 - ($47))|0; $shl91 = $cond89 << $sub90; $retval = $shl91; $50 = $retval; STACKTOP = sp;return ($50|0); } function _silk_max_int($a,$b) { $a = $a|0; $b = $b|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $a$addr = 0, $b$addr = 0, $cmp = 0, $cond = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $a$addr = $a; $b$addr = $b; $0 = $a$addr; $1 = $b$addr; $cmp = ($0|0)>($1|0); $2 = $a$addr; $3 = $b$addr; $cond = $cmp ? $2 : $3; STACKTOP = sp;return ($cond|0); } function _silk_CLZ32($in32) { $in32 = $in32|0; var $0 = 0, $1 = 0, $2 = 0, $cond = 0, $in32$addr = 0, $sub = 0, $sub1 = 0, $tobool = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $in32$addr = $in32; $0 = $in32$addr; $tobool = ($0|0)!=(0); if (!($tobool)) { $cond = 32; STACKTOP = sp;return ($cond|0); } $1 = $in32$addr; $2 = (Math_clz32(($1|0))|0); $sub = (32 - ($2))|0; $sub1 = (32 - ($sub))|0; $cond = $sub1; STACKTOP = sp;return ($cond|0); } function _silk_stereo_MS_to_LR($state,$x1,$x2,$pred_Q13,$fs_kHz,$frame_length) { $state = $state|0; $x1 = $x1|0; $x2 = $x2|0; $pred_Q13 = $pred_Q13|0; $fs_kHz = $fs_kHz|0; $frame_length = $frame_length|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $14 = 0, $15 = 0, $16 = 0; var $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0; var $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0; var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0; var $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0; var $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $add = 0, $add100 = 0, $add111 = 0, $add114 = 0, $add115 = 0, $add119 = 0, $add121 = 0, $add134 = 0, $add135 = 0; var $add136 = 0, $add144 = 0, $add153 = 0, $add154 = 0, $add156 = 0, $add163 = 0, $add170 = 0, $add177 = 0, $add194 = 0, $add197 = 0, $add200 = 0, $add201 = 0, $add204 = 0, $add221 = 0, $add236 = 0, $add32 = 0, $add36 = 0, $add37 = 0, $add40 = 0, $add43 = 0; var $add44 = 0, $add47 = 0, $add49 = 0, $add61 = 0, $add62 = 0, $add63 = 0, $add71 = 0, $add80 = 0, $add81 = 0, $add83 = 0, $add88 = 0, $add95 = 0, $and = 0, $and129 = 0, $and148 = 0, $and75 = 0, $arrayidx = 0, $arrayidx101 = 0, $arrayidx103 = 0, $arrayidx109 = 0; var $arrayidx112 = 0, $arrayidx116 = 0, $arrayidx122 = 0, $arrayidx137 = 0, $arrayidx145 = 0, $arrayidx178 = 0, $arrayidx186 = 0, $arrayidx189 = 0, $arrayidx195 = 0, $arrayidx198 = 0, $arrayidx202 = 0, $arrayidx205 = 0, $arrayidx21 = 0, $arrayidx222 = 0, $arrayidx23 = 0, $arrayidx237 = 0, $arrayidx38 = 0, $arrayidx41 = 0, $arrayidx45 = 0, $arrayidx50 = 0; var $arrayidx6 = 0, $arrayidx64 = 0, $arrayidx72 = 0, $arrayidx9 = 0, $cmp = 0, $cmp106 = 0, $cmp158 = 0, $cmp165 = 0, $cmp191 = 0, $cmp208 = 0, $cmp212 = 0, $cmp223 = 0, $cmp227 = 0, $cmp85 = 0, $cmp90 = 0, $cond175 = 0, $cond217 = 0, $cond219 = 0, $cond232 = 0, $cond234 = 0; var $cond98 = 0, $conv = 0, $conv10 = 0, $conv110 = 0, $conv113 = 0, $conv117 = 0, $conv123 = 0, $conv126 = 0, $conv127 = 0, $conv130 = 0, $conv131 = 0, $conv138 = 0, $conv14 = 0, $conv141 = 0, $conv142 = 0, $conv146 = 0, $conv149 = 0, $conv15 = 0, $conv150 = 0, $conv16 = 0; var $conv17 = 0, $conv176 = 0, $conv18 = 0, $conv183 = 0, $conv187 = 0, $conv196 = 0, $conv199 = 0, $conv203 = 0, $conv206 = 0, $conv220 = 0, $conv235 = 0, $conv24 = 0, $conv26 = 0, $conv27 = 0, $conv28 = 0, $conv29 = 0, $conv39 = 0, $conv42 = 0, $conv46 = 0, $conv51 = 0; var $conv54 = 0, $conv55 = 0, $conv57 = 0, $conv58 = 0, $conv65 = 0, $conv68 = 0, $conv69 = 0, $conv73 = 0, $conv76 = 0, $conv77 = 0, $conv99 = 0, $delta0_Q13 = 0, $delta1_Q13 = 0, $denom_Q16 = 0, $diff = 0, $div = 0, $frame_length$addr = 0, $fs_kHz$addr = 0, $inc = 0, $inc180 = 0; var $inc239 = 0, $mul = 0, $mul104 = 0, $mul128 = 0, $mul132 = 0, $mul143 = 0, $mul151 = 0, $mul19 = 0, $mul30 = 0, $mul34 = 0, $mul56 = 0, $mul59 = 0, $mul70 = 0, $mul78 = 0, $n = 0, $pred0_Q13 = 0, $pred1_Q13 = 0, $pred_Q13$addr = 0, $sMid = 0, $sMid2 = 0; var $sSide = 0, $sSide4 = 0, $shl = 0, $shl118 = 0, $shl120 = 0, $shl124 = 0, $shl139 = 0, $shl147 = 0, $shl48 = 0, $shl52 = 0, $shl66 = 0, $shl74 = 0, $shr = 0, $shr125 = 0, $shr133 = 0, $shr140 = 0, $shr152 = 0, $shr155 = 0, $shr157 = 0, $shr162 = 0; var $shr164 = 0, $shr169 = 0, $shr171 = 0, $shr20 = 0, $shr31 = 0, $shr33 = 0, $shr53 = 0, $shr60 = 0, $shr67 = 0, $shr79 = 0, $shr82 = 0, $shr84 = 0, $shr87 = 0, $shr89 = 0, $shr94 = 0, $shr96 = 0, $state$addr = 0, $sub = 0, $sub207 = 0, $sub25 = 0; var $sum = 0, $x1$addr = 0, $x2$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $state$addr = $state; $x1$addr = $x1; $x2$addr = $x2; $pred_Q13$addr = $pred_Q13; $fs_kHz$addr = $fs_kHz; $frame_length$addr = $frame_length; $0 = $x1$addr; $1 = $state$addr; $sMid = ((($1)) + 4|0); ;HEAP16[$0>>1]=HEAP16[$sMid>>1]|0;HEAP16[$0+2>>1]=HEAP16[$sMid+2>>1]|0; $2 = $x2$addr; $3 = $state$addr; $sSide = ((($3)) + 8|0); ;HEAP16[$2>>1]=HEAP16[$sSide>>1]|0;HEAP16[$2+2>>1]=HEAP16[$sSide+2>>1]|0; $4 = $state$addr; $sMid2 = ((($4)) + 4|0); $5 = $x1$addr; $6 = $frame_length$addr; $arrayidx = (($5) + ($6<<1)|0); ;HEAP16[$sMid2>>1]=HEAP16[$arrayidx>>1]|0;HEAP16[$sMid2+2>>1]=HEAP16[$arrayidx+2>>1]|0; $7 = $state$addr; $sSide4 = ((($7)) + 8|0); $8 = $x2$addr; $9 = $frame_length$addr; $arrayidx6 = (($8) + ($9<<1)|0); ;HEAP16[$sSide4>>1]=HEAP16[$arrayidx6>>1]|0;HEAP16[$sSide4+2>>1]=HEAP16[$arrayidx6+2>>1]|0; $10 = $state$addr; $11 = HEAP16[$10>>1]|0; $conv = $11 << 16 >> 16; $pred0_Q13 = $conv; $12 = $state$addr; $arrayidx9 = ((($12)) + 2|0); $13 = HEAP16[$arrayidx9>>1]|0; $conv10 = $13 << 16 >> 16; $pred1_Q13 = $conv10; $14 = $fs_kHz$addr; $mul = $14<<3; $div = (65536 / ($mul|0))&-1; $denom_Q16 = $div; $15 = $pred_Q13$addr; $16 = HEAP32[$15>>2]|0; $17 = $state$addr; $18 = HEAP16[$17>>1]|0; $conv14 = $18 << 16 >> 16; $sub = (($16) - ($conv14))|0; $conv15 = $sub&65535; $conv16 = $conv15 << 16 >> 16; $19 = $denom_Q16; $conv17 = $19&65535; $conv18 = $conv17 << 16 >> 16; $mul19 = Math_imul($conv16, $conv18)|0; $shr = $mul19 >> 15; $add = (($shr) + 1)|0; $shr20 = $add >> 1; $delta0_Q13 = $shr20; $20 = $pred_Q13$addr; $arrayidx21 = ((($20)) + 4|0); $21 = HEAP32[$arrayidx21>>2]|0; $22 = $state$addr; $arrayidx23 = ((($22)) + 2|0); $23 = HEAP16[$arrayidx23>>1]|0; $conv24 = $23 << 16 >> 16; $sub25 = (($21) - ($conv24))|0; $conv26 = $sub25&65535; $conv27 = $conv26 << 16 >> 16; $24 = $denom_Q16; $conv28 = $24&65535; $conv29 = $conv28 << 16 >> 16; $mul30 = Math_imul($conv27, $conv29)|0; $shr31 = $mul30 >> 15; $add32 = (($shr31) + 1)|0; $shr33 = $add32 >> 1; $delta1_Q13 = $shr33; $n = 0; while(1) { $25 = $n; $26 = $fs_kHz$addr; $mul34 = $26<<3; $cmp = ($25|0)<($mul34|0); if (!($cmp)) { break; } $27 = $delta0_Q13; $28 = $pred0_Q13; $add36 = (($28) + ($27))|0; $pred0_Q13 = $add36; $29 = $delta1_Q13; $30 = $pred1_Q13; $add37 = (($30) + ($29))|0; $pred1_Q13 = $add37; $31 = $x1$addr; $32 = $n; $arrayidx38 = (($31) + ($32<<1)|0); $33 = HEAP16[$arrayidx38>>1]|0; $conv39 = $33 << 16 >> 16; $34 = $x1$addr; $35 = $n; $add40 = (($35) + 2)|0; $arrayidx41 = (($34) + ($add40<<1)|0); $36 = HEAP16[$arrayidx41>>1]|0; $conv42 = $36 << 16 >> 16; $add43 = (($conv39) + ($conv42))|0; $37 = $x1$addr; $38 = $n; $add44 = (($38) + 1)|0; $arrayidx45 = (($37) + ($add44<<1)|0); $39 = HEAP16[$arrayidx45>>1]|0; $conv46 = $39 << 16 >> 16; $shl = $conv46 << 1; $add47 = (($add43) + ($shl))|0; $shl48 = $add47 << 9; $sum = $shl48; $40 = $x2$addr; $41 = $n; $add49 = (($41) + 1)|0; $arrayidx50 = (($40) + ($add49<<1)|0); $42 = HEAP16[$arrayidx50>>1]|0; $conv51 = $42 << 16 >> 16; $shl52 = $conv51 << 8; $43 = $sum; $shr53 = $43 >> 16; $44 = $pred0_Q13; $conv54 = $44&65535; $conv55 = $conv54 << 16 >> 16; $mul56 = Math_imul($shr53, $conv55)|0; $45 = $sum; $and = $45 & 65535; $46 = $pred0_Q13; $conv57 = $46&65535; $conv58 = $conv57 << 16 >> 16; $mul59 = Math_imul($and, $conv58)|0; $shr60 = $mul59 >> 16; $add61 = (($mul56) + ($shr60))|0; $add62 = (($shl52) + ($add61))|0; $sum = $add62; $47 = $sum; $48 = $x1$addr; $49 = $n; $add63 = (($49) + 1)|0; $arrayidx64 = (($48) + ($add63<<1)|0); $50 = HEAP16[$arrayidx64>>1]|0; $conv65 = $50 << 16 >> 16; $shl66 = $conv65 << 11; $shr67 = $shl66 >> 16; $51 = $pred1_Q13; $conv68 = $51&65535; $conv69 = $conv68 << 16 >> 16; $mul70 = Math_imul($shr67, $conv69)|0; $52 = $x1$addr; $53 = $n; $add71 = (($53) + 1)|0; $arrayidx72 = (($52) + ($add71<<1)|0); $54 = HEAP16[$arrayidx72>>1]|0; $conv73 = $54 << 16 >> 16; $shl74 = $conv73 << 11; $and75 = $shl74 & 65535; $55 = $pred1_Q13; $conv76 = $55&65535; $conv77 = $conv76 << 16 >> 16; $mul78 = Math_imul($and75, $conv77)|0; $shr79 = $mul78 >> 16; $add80 = (($mul70) + ($shr79))|0; $add81 = (($47) + ($add80))|0; $sum = $add81; $56 = $sum; $shr82 = $56 >> 7; $add83 = (($shr82) + 1)|0; $shr84 = $add83 >> 1; $cmp85 = ($shr84|0)>(32767); if ($cmp85) { $cond98 = 32767; } else { $57 = $sum; $shr87 = $57 >> 7; $add88 = (($shr87) + 1)|0; $shr89 = $add88 >> 1; $cmp90 = ($shr89|0)<(-32768); if ($cmp90) { $cond98 = -32768; } else { $58 = $sum; $shr94 = $58 >> 7; $add95 = (($shr94) + 1)|0; $shr96 = $add95 >> 1; $cond98 = $shr96; } } $conv99 = $cond98&65535; $59 = $x2$addr; $60 = $n; $add100 = (($60) + 1)|0; $arrayidx101 = (($59) + ($add100<<1)|0); HEAP16[$arrayidx101>>1] = $conv99; $61 = $n; $inc = (($61) + 1)|0; $n = $inc; } $62 = $pred_Q13$addr; $63 = HEAP32[$62>>2]|0; $pred0_Q13 = $63; $64 = $pred_Q13$addr; $arrayidx103 = ((($64)) + 4|0); $65 = HEAP32[$arrayidx103>>2]|0; $pred1_Q13 = $65; $66 = $fs_kHz$addr; $mul104 = $66<<3; $n = $mul104; while(1) { $67 = $n; $68 = $frame_length$addr; $cmp106 = ($67|0)<($68|0); if (!($cmp106)) { break; } $69 = $x1$addr; $70 = $n; $arrayidx109 = (($69) + ($70<<1)|0); $71 = HEAP16[$arrayidx109>>1]|0; $conv110 = $71 << 16 >> 16; $72 = $x1$addr; $73 = $n; $add111 = (($73) + 2)|0; $arrayidx112 = (($72) + ($add111<<1)|0); $74 = HEAP16[$arrayidx112>>1]|0; $conv113 = $74 << 16 >> 16; $add114 = (($conv110) + ($conv113))|0; $75 = $x1$addr; $76 = $n; $add115 = (($76) + 1)|0; $arrayidx116 = (($75) + ($add115<<1)|0); $77 = HEAP16[$arrayidx116>>1]|0; $conv117 = $77 << 16 >> 16; $shl118 = $conv117 << 1; $add119 = (($add114) + ($shl118))|0; $shl120 = $add119 << 9; $sum = $shl120; $78 = $x2$addr; $79 = $n; $add121 = (($79) + 1)|0; $arrayidx122 = (($78) + ($add121<<1)|0); $80 = HEAP16[$arrayidx122>>1]|0; $conv123 = $80 << 16 >> 16; $shl124 = $conv123 << 8; $81 = $sum; $shr125 = $81 >> 16; $82 = $pred0_Q13; $conv126 = $82&65535; $conv127 = $conv126 << 16 >> 16; $mul128 = Math_imul($shr125, $conv127)|0; $83 = $sum; $and129 = $83 & 65535; $84 = $pred0_Q13; $conv130 = $84&65535; $conv131 = $conv130 << 16 >> 16; $mul132 = Math_imul($and129, $conv131)|0; $shr133 = $mul132 >> 16; $add134 = (($mul128) + ($shr133))|0; $add135 = (($shl124) + ($add134))|0; $sum = $add135; $85 = $sum; $86 = $x1$addr; $87 = $n; $add136 = (($87) + 1)|0; $arrayidx137 = (($86) + ($add136<<1)|0); $88 = HEAP16[$arrayidx137>>1]|0; $conv138 = $88 << 16 >> 16; $shl139 = $conv138 << 11; $shr140 = $shl139 >> 16; $89 = $pred1_Q13; $conv141 = $89&65535; $conv142 = $conv141 << 16 >> 16; $mul143 = Math_imul($shr140, $conv142)|0; $90 = $x1$addr; $91 = $n; $add144 = (($91) + 1)|0; $arrayidx145 = (($90) + ($add144<<1)|0); $92 = HEAP16[$arrayidx145>>1]|0; $conv146 = $92 << 16 >> 16; $shl147 = $conv146 << 11; $and148 = $shl147 & 65535; $93 = $pred1_Q13; $conv149 = $93&65535; $conv150 = $conv149 << 16 >> 16; $mul151 = Math_imul($and148, $conv150)|0; $shr152 = $mul151 >> 16; $add153 = (($mul143) + ($shr152))|0; $add154 = (($85) + ($add153))|0; $sum = $add154; $94 = $sum; $shr155 = $94 >> 7; $add156 = (($shr155) + 1)|0; $shr157 = $add156 >> 1; $cmp158 = ($shr157|0)>(32767); if ($cmp158) { $cond175 = 32767; } else { $95 = $sum; $shr162 = $95 >> 7; $add163 = (($shr162) + 1)|0; $shr164 = $add163 >> 1; $cmp165 = ($shr164|0)<(-32768); if ($cmp165) { $cond175 = -32768; } else { $96 = $sum; $shr169 = $96 >> 7; $add170 = (($shr169) + 1)|0; $shr171 = $add170 >> 1; $cond175 = $shr171; } } $conv176 = $cond175&65535; $97 = $x2$addr; $98 = $n; $add177 = (($98) + 1)|0; $arrayidx178 = (($97) + ($add177<<1)|0); HEAP16[$arrayidx178>>1] = $conv176; $99 = $n; $inc180 = (($99) + 1)|0; $n = $inc180; } $100 = $pred_Q13$addr; $101 = HEAP32[$100>>2]|0; $conv183 = $101&65535; $102 = $state$addr; HEAP16[$102>>1] = $conv183; $103 = $pred_Q13$addr; $arrayidx186 = ((($103)) + 4|0); $104 = HEAP32[$arrayidx186>>2]|0; $conv187 = $104&65535; $105 = $state$addr; $arrayidx189 = ((($105)) + 2|0); HEAP16[$arrayidx189>>1] = $conv187; $n = 0; while(1) { $106 = $n; $107 = $frame_length$addr; $cmp191 = ($106|0)<($107|0); if (!($cmp191)) { break; } $108 = $x1$addr; $109 = $n; $add194 = (($109) + 1)|0; $arrayidx195 = (($108) + ($add194<<1)|0); $110 = HEAP16[$arrayidx195>>1]|0; $conv196 = $110 << 16 >> 16; $111 = $x2$addr; $112 = $n; $add197 = (($112) + 1)|0; $arrayidx198 = (($111) + ($add197<<1)|0); $113 = HEAP16[$arrayidx198>>1]|0; $conv199 = $113 << 16 >> 16; $add200 = (($conv196) + ($conv199))|0; $sum = $add200; $114 = $x1$addr; $115 = $n; $add201 = (($115) + 1)|0; $arrayidx202 = (($114) + ($add201<<1)|0); $116 = HEAP16[$arrayidx202>>1]|0; $conv203 = $116 << 16 >> 16; $117 = $x2$addr; $118 = $n; $add204 = (($118) + 1)|0; $arrayidx205 = (($117) + ($add204<<1)|0); $119 = HEAP16[$arrayidx205>>1]|0; $conv206 = $119 << 16 >> 16; $sub207 = (($conv203) - ($conv206))|0; $diff = $sub207; $120 = $sum; $cmp208 = ($120|0)>(32767); if ($cmp208) { $cond219 = 32767; } else { $121 = $sum; $cmp212 = ($121|0)<(-32768); $122 = $sum; $cond217 = $cmp212 ? -32768 : $122; $cond219 = $cond217; } $conv220 = $cond219&65535; $123 = $x1$addr; $124 = $n; $add221 = (($124) + 1)|0; $arrayidx222 = (($123) + ($add221<<1)|0); HEAP16[$arrayidx222>>1] = $conv220; $125 = $diff; $cmp223 = ($125|0)>(32767); if ($cmp223) { $cond234 = 32767; } else { $126 = $diff; $cmp227 = ($126|0)<(-32768); $127 = $diff; $cond232 = $cmp227 ? -32768 : $127; $cond234 = $cond232; } $conv235 = $cond234&65535; $128 = $x2$addr; $129 = $n; $add236 = (($129) + 1)|0; $arrayidx237 = (($128) + ($add236<<1)|0); HEAP16[$arrayidx237>>1] = $conv235; $130 = $n; $inc239 = (($130) + 1)|0; $n = $inc239; } STACKTOP = sp;return; } function _check_control_input($encControl) { $encControl = $encControl|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $9 = 0, $API_sampleRate = 0, $API_sampleRate1 = 0, $API_sampleRate10 = 0, $API_sampleRate13 = 0, $API_sampleRate16 = 0, $API_sampleRate4 = 0, $API_sampleRate7 = 0, $cmp = 0, $cmp103 = 0, $cmp106 = 0, $cmp109 = 0, $cmp11 = 0, $cmp14 = 0, $cmp17 = 0, $cmp18 = 0; var $cmp2 = 0, $cmp21 = 0, $cmp24 = 0, $cmp26 = 0, $cmp29 = 0, $cmp32 = 0, $cmp34 = 0, $cmp37 = 0, $cmp40 = 0, $cmp44 = 0, $cmp48 = 0, $cmp5 = 0, $cmp52 = 0, $cmp53 = 0, $cmp56 = 0, $cmp59 = 0, $cmp62 = 0, $cmp65 = 0, $cmp68 = 0, $cmp71 = 0; var $cmp74 = 0, $cmp77 = 0, $cmp8 = 0, $cmp80 = 0, $cmp83 = 0, $cmp86 = 0, $cmp89 = 0, $cmp92 = 0, $cmp95 = 0, $cmp98 = 0, $complexity = 0, $complexity108 = 0, $desiredInternalSampleRate = 0, $desiredInternalSampleRate20 = 0, $desiredInternalSampleRate23 = 0, $desiredInternalSampleRate43 = 0, $desiredInternalSampleRate47 = 0, $encControl$addr = 0, $maxInternalSampleRate = 0, $maxInternalSampleRate28 = 0; var $maxInternalSampleRate31 = 0, $maxInternalSampleRate46 = 0, $maxInternalSampleRate51 = 0, $minInternalSampleRate = 0, $minInternalSampleRate36 = 0, $minInternalSampleRate39 = 0, $minInternalSampleRate42 = 0, $minInternalSampleRate50 = 0, $nChannelsInternal = 0, $nChannelsInternal101 = 0, $nChannelsInternal97 = 0, $packetLossPercentage = 0, $packetLossPercentage67 = 0, $payloadSize_ms = 0, $payloadSize_ms55 = 0, $payloadSize_ms58 = 0, $payloadSize_ms61 = 0, $retval = 0, $useCBR = 0, $useCBR79 = 0; var $useDTX = 0, $useDTX73 = 0, $useInBandFEC = 0, $useInBandFEC85 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $encControl$addr = $encControl; $0 = $encControl$addr; $API_sampleRate = ((($0)) + 8|0); $1 = HEAP32[$API_sampleRate>>2]|0; $cmp = ($1|0)!=(8000); if ($cmp) { $2 = $encControl$addr; $API_sampleRate1 = ((($2)) + 8|0); $3 = HEAP32[$API_sampleRate1>>2]|0; $cmp2 = ($3|0)!=(12000); if ($cmp2) { $4 = $encControl$addr; $API_sampleRate4 = ((($4)) + 8|0); $5 = HEAP32[$API_sampleRate4>>2]|0; $cmp5 = ($5|0)!=(16000); if ($cmp5) { $6 = $encControl$addr; $API_sampleRate7 = ((($6)) + 8|0); $7 = HEAP32[$API_sampleRate7>>2]|0; $cmp8 = ($7|0)!=(24000); if ($cmp8) { $8 = $encControl$addr; $API_sampleRate10 = ((($8)) + 8|0); $9 = HEAP32[$API_sampleRate10>>2]|0; $cmp11 = ($9|0)!=(32000); if ($cmp11) { $10 = $encControl$addr; $API_sampleRate13 = ((($10)) + 8|0); $11 = HEAP32[$API_sampleRate13>>2]|0; $cmp14 = ($11|0)!=(44100); if ($cmp14) { $12 = $encControl$addr; $API_sampleRate16 = ((($12)) + 8|0); $13 = HEAP32[$API_sampleRate16>>2]|0; $cmp17 = ($13|0)!=(48000); if (!($cmp17)) { label = 8; } } else { label = 8; } } else { label = 8; } } else { label = 8; } } else { label = 8; } } else { label = 8; } } else { label = 8; } do { if ((label|0) == 8) { $14 = $encControl$addr; $desiredInternalSampleRate = ((($14)) + 20|0); $15 = HEAP32[$desiredInternalSampleRate>>2]|0; $cmp18 = ($15|0)!=(8000); if ($cmp18) { $16 = $encControl$addr; $desiredInternalSampleRate20 = ((($16)) + 20|0); $17 = HEAP32[$desiredInternalSampleRate20>>2]|0; $cmp21 = ($17|0)!=(12000); if ($cmp21) { $18 = $encControl$addr; $desiredInternalSampleRate23 = ((($18)) + 20|0); $19 = HEAP32[$desiredInternalSampleRate23>>2]|0; $cmp24 = ($19|0)!=(16000); if ($cmp24) { break; } } } $20 = $encControl$addr; $maxInternalSampleRate = ((($20)) + 12|0); $21 = HEAP32[$maxInternalSampleRate>>2]|0; $cmp26 = ($21|0)!=(8000); if ($cmp26) { $22 = $encControl$addr; $maxInternalSampleRate28 = ((($22)) + 12|0); $23 = HEAP32[$maxInternalSampleRate28>>2]|0; $cmp29 = ($23|0)!=(12000); if ($cmp29) { $24 = $encControl$addr; $maxInternalSampleRate31 = ((($24)) + 12|0); $25 = HEAP32[$maxInternalSampleRate31>>2]|0; $cmp32 = ($25|0)!=(16000); if ($cmp32) { break; } } } $26 = $encControl$addr; $minInternalSampleRate = ((($26)) + 16|0); $27 = HEAP32[$minInternalSampleRate>>2]|0; $cmp34 = ($27|0)!=(8000); if ($cmp34) { $28 = $encControl$addr; $minInternalSampleRate36 = ((($28)) + 16|0); $29 = HEAP32[$minInternalSampleRate36>>2]|0; $cmp37 = ($29|0)!=(12000); if ($cmp37) { $30 = $encControl$addr; $minInternalSampleRate39 = ((($30)) + 16|0); $31 = HEAP32[$minInternalSampleRate39>>2]|0; $cmp40 = ($31|0)!=(16000); if ($cmp40) { break; } } } $32 = $encControl$addr; $minInternalSampleRate42 = ((($32)) + 16|0); $33 = HEAP32[$minInternalSampleRate42>>2]|0; $34 = $encControl$addr; $desiredInternalSampleRate43 = ((($34)) + 20|0); $35 = HEAP32[$desiredInternalSampleRate43>>2]|0; $cmp44 = ($33|0)>($35|0); if (!($cmp44)) { $36 = $encControl$addr; $maxInternalSampleRate46 = ((($36)) + 12|0); $37 = HEAP32[$maxInternalSampleRate46>>2]|0; $38 = $encControl$addr; $desiredInternalSampleRate47 = ((($38)) + 20|0); $39 = HEAP32[$desiredInternalSampleRate47>>2]|0; $cmp48 = ($37|0)<($39|0); if (!($cmp48)) { $40 = $encControl$addr; $minInternalSampleRate50 = ((($40)) + 16|0); $41 = HEAP32[$minInternalSampleRate50>>2]|0; $42 = $encControl$addr; $maxInternalSampleRate51 = ((($42)) + 12|0); $43 = HEAP32[$maxInternalSampleRate51>>2]|0; $cmp52 = ($41|0)>($43|0); if (!($cmp52)) { $44 = $encControl$addr; $payloadSize_ms = ((($44)) + 24|0); $45 = HEAP32[$payloadSize_ms>>2]|0; $cmp53 = ($45|0)!=(10); if ($cmp53) { $46 = $encControl$addr; $payloadSize_ms55 = ((($46)) + 24|0); $47 = HEAP32[$payloadSize_ms55>>2]|0; $cmp56 = ($47|0)!=(20); if ($cmp56) { $48 = $encControl$addr; $payloadSize_ms58 = ((($48)) + 24|0); $49 = HEAP32[$payloadSize_ms58>>2]|0; $cmp59 = ($49|0)!=(40); if ($cmp59) { $50 = $encControl$addr; $payloadSize_ms61 = ((($50)) + 24|0); $51 = HEAP32[$payloadSize_ms61>>2]|0; $cmp62 = ($51|0)!=(60); if ($cmp62) { $retval = -103; $84 = $retval; STACKTOP = sp;return ($84|0); } } } } $52 = $encControl$addr; $packetLossPercentage = ((($52)) + 32|0); $53 = HEAP32[$packetLossPercentage>>2]|0; $cmp65 = ($53|0)<(0); if (!($cmp65)) { $54 = $encControl$addr; $packetLossPercentage67 = ((($54)) + 32|0); $55 = HEAP32[$packetLossPercentage67>>2]|0; $cmp68 = ($55|0)>(100); if (!($cmp68)) { $56 = $encControl$addr; $useDTX = ((($56)) + 48|0); $57 = HEAP32[$useDTX>>2]|0; $cmp71 = ($57|0)<(0); if (!($cmp71)) { $58 = $encControl$addr; $useDTX73 = ((($58)) + 48|0); $59 = HEAP32[$useDTX73>>2]|0; $cmp74 = ($59|0)>(1); if (!($cmp74)) { $60 = $encControl$addr; $useCBR = ((($60)) + 52|0); $61 = HEAP32[$useCBR>>2]|0; $cmp77 = ($61|0)<(0); if (!($cmp77)) { $62 = $encControl$addr; $useCBR79 = ((($62)) + 52|0); $63 = HEAP32[$useCBR79>>2]|0; $cmp80 = ($63|0)>(1); if (!($cmp80)) { $64 = $encControl$addr; $useInBandFEC = ((($64)) + 40|0); $65 = HEAP32[$useInBandFEC>>2]|0; $cmp83 = ($65|0)<(0); do { if (!($cmp83)) { $66 = $encControl$addr; $useInBandFEC85 = ((($66)) + 40|0); $67 = HEAP32[$useInBandFEC85>>2]|0; $cmp86 = ($67|0)>(1); if ($cmp86) { break; } $68 = $encControl$addr; $69 = HEAP32[$68>>2]|0; $cmp89 = ($69|0)<(1); do { if (!($cmp89)) { $70 = $encControl$addr; $71 = HEAP32[$70>>2]|0; $cmp92 = ($71|0)>(2); if ($cmp92) { break; } $72 = $encControl$addr; $nChannelsInternal = ((($72)) + 4|0); $73 = HEAP32[$nChannelsInternal>>2]|0; $cmp95 = ($73|0)<(1); do { if (!($cmp95)) { $74 = $encControl$addr; $nChannelsInternal97 = ((($74)) + 4|0); $75 = HEAP32[$nChannelsInternal97>>2]|0; $cmp98 = ($75|0)>(2); if ($cmp98) { break; } $76 = $encControl$addr; $nChannelsInternal101 = ((($76)) + 4|0); $77 = HEAP32[$nChannelsInternal101>>2]|0; $78 = $encControl$addr; $79 = HEAP32[$78>>2]|0; $cmp103 = ($77|0)>($79|0); if ($cmp103) { $retval = -111; $84 = $retval; STACKTOP = sp;return ($84|0); } $80 = $encControl$addr; $complexity = ((($80)) + 36|0); $81 = HEAP32[$complexity>>2]|0; $cmp106 = ($81|0)<(0); do { if (!($cmp106)) { $82 = $encControl$addr; $complexity108 = ((($82)) + 36|0); $83 = HEAP32[$complexity108>>2]|0; $cmp109 = ($83|0)>(10); if ($cmp109) { break; } $retval = 0; $84 = $retval; STACKTOP = sp;return ($84|0); } } while(0); $retval = -106; $84 = $retval; STACKTOP = sp;return ($84|0); } } while(0); $retval = -111; $84 = $retval; STACKTOP = sp;return ($84|0); } } while(0); $retval = -111; $84 = $retval; STACKTOP = sp;return ($84|0); } } while(0); $retval = -107; $84 = $retval; STACKTOP = sp;return ($84|0); } } $retval = -109; $84 = $retval; STACKTOP = sp;return ($84|0); } } $retval = -108; $84 = $retval; STACKTOP = sp;return ($84|0); } } $retval = -105; $84 = $retval; STACKTOP = sp;return ($84|0); } } } } } while(0); $retval = -102; $84 = $retval; STACKTOP = sp;return ($84|0); } function _silk_control_SNR($psEncC,$TargetRate_bps) { $psEncC = $psEncC|0; $TargetRate_bps = $TargetRate_bps|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; var $SNR_dB_Q7 = 0, $TargetRate_bps$addr = 0, $TargetRate_bps6 = 0, $TargetRate_bps8 = 0, $add = 0, $arrayidx = 0, $arrayidx23 = 0, $arrayidx25 = 0, $arrayidx27 = 0, $arrayidx30 = 0, $arrayidx32 = 0, $arrayidx35 = 0, $cmp = 0, $cmp1 = 0, $cmp12 = 0, $cmp16 = 0, $cmp19 = 0, $cmp20 = 0, $cmp7 = 0, $cmp9 = 0; var $cond = 0, $cond5 = 0, $conv = 0, $conv33 = 0, $conv36 = 0, $div = 0, $frac_Q6 = 0, $fs_kHz = 0, $fs_kHz11 = 0, $inc = 0, $k = 0, $mul = 0, $nb_subfr = 0, $psEncC$addr = 0, $rateTable = 0, $ret = 0, $shl = 0, $shl31 = 0, $sub = 0, $sub22 = 0; var $sub24 = 0, $sub26 = 0, $sub28 = 0, $sub29 = 0, $sub34 = 0, $sub37 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $psEncC$addr = $psEncC; $TargetRate_bps$addr = $TargetRate_bps; $ret = 0; $0 = $TargetRate_bps$addr; $cmp = ($0|0)>(80000); if ($cmp) { $cond5 = 80000; } else { $1 = $TargetRate_bps$addr; $cmp1 = ($1|0)<(5000); $2 = $TargetRate_bps$addr; $cond = $cmp1 ? 5000 : $2; $cond5 = $cond; } $TargetRate_bps$addr = $cond5; $3 = $TargetRate_bps$addr; $4 = $psEncC$addr; $TargetRate_bps6 = ((($4)) + 4604|0); $5 = HEAP32[$TargetRate_bps6>>2]|0; $cmp7 = ($3|0)!=($5|0); if (!($cmp7)) { $39 = $ret; STACKTOP = sp;return ($39|0); } $6 = $TargetRate_bps$addr; $7 = $psEncC$addr; $TargetRate_bps8 = ((($7)) + 4604|0); HEAP32[$TargetRate_bps8>>2] = $6; $8 = $psEncC$addr; $fs_kHz = ((($8)) + 4572|0); $9 = HEAP32[$fs_kHz>>2]|0; $cmp9 = ($9|0)==(8); do { if ($cmp9) { $rateTable = 15184; } else { $10 = $psEncC$addr; $fs_kHz11 = ((($10)) + 4572|0); $11 = HEAP32[$fs_kHz11>>2]|0; $cmp12 = ($11|0)==(12); if ($cmp12) { $rateTable = 15216; break; } else { $rateTable = 15248; break; } } } while(0); $12 = $psEncC$addr; $nb_subfr = ((($12)) + 4576|0); $13 = HEAP32[$nb_subfr>>2]|0; $cmp16 = ($13|0)==(2); if ($cmp16) { $14 = $TargetRate_bps$addr; $sub = (($14) - 2200)|0; $TargetRate_bps$addr = $sub; } $k = 1; while(1) { $15 = $k; $cmp19 = ($15|0)<(8); if (!($cmp19)) { label = 16; break; } $16 = $TargetRate_bps$addr; $17 = $rateTable; $18 = $k; $arrayidx = (($17) + ($18<<2)|0); $19 = HEAP32[$arrayidx>>2]|0; $cmp20 = ($16|0)<=($19|0); if ($cmp20) { break; } $38 = $k; $inc = (($38) + 1)|0; $k = $inc; } if ((label|0) == 16) { $39 = $ret; STACKTOP = sp;return ($39|0); } $20 = $TargetRate_bps$addr; $21 = $rateTable; $22 = $k; $sub22 = (($22) - 1)|0; $arrayidx23 = (($21) + ($sub22<<2)|0); $23 = HEAP32[$arrayidx23>>2]|0; $sub24 = (($20) - ($23))|0; $shl = $sub24 << 6; $24 = $rateTable; $25 = $k; $arrayidx25 = (($24) + ($25<<2)|0); $26 = HEAP32[$arrayidx25>>2]|0; $27 = $rateTable; $28 = $k; $sub26 = (($28) - 1)|0; $arrayidx27 = (($27) + ($sub26<<2)|0); $29 = HEAP32[$arrayidx27>>2]|0; $sub28 = (($26) - ($29))|0; $div = (($shl|0) / ($sub28|0))&-1; $frac_Q6 = $div; $30 = $k; $sub29 = (($30) - 1)|0; $arrayidx30 = (23464 + ($sub29<<1)|0); $31 = HEAP16[$arrayidx30>>1]|0; $conv = $31 << 16 >> 16; $shl31 = $conv << 6; $32 = $frac_Q6; $33 = $k; $arrayidx32 = (23464 + ($33<<1)|0); $34 = HEAP16[$arrayidx32>>1]|0; $conv33 = $34 << 16 >> 16; $35 = $k; $sub34 = (($35) - 1)|0; $arrayidx35 = (23464 + ($sub34<<1)|0); $36 = HEAP16[$arrayidx35>>1]|0; $conv36 = $36 << 16 >> 16; $sub37 = (($conv33) - ($conv36))|0; $mul = Math_imul($32, $sub37)|0; $add = (($shl31) + ($mul))|0; $37 = $psEncC$addr; $SNR_dB_Q7 = ((($37)) + 4712|0); HEAP32[$SNR_dB_Q7>>2] = $add; $39 = $ret; STACKTOP = sp;return ($39|0); } function _silk_init_encoder($psEnc,$arch) { $psEnc = $psEnc|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $arch$addr = 0, $arch1 = 0, $call = 0, $call8 = 0, $first_frame_after_reset = 0, $psEnc$addr = 0, $ret = 0, $sVAD = 0; var $shl = 0, $sub = 0, $variable_HP_smth1_Q15 = 0, $variable_HP_smth1_Q154 = 0, $variable_HP_smth2_Q15 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $psEnc$addr = $psEnc; $arch$addr = $arch; $ret = 0; $0 = $psEnc$addr; _memset(($0|0),0,10060)|0; $1 = $arch$addr; $2 = $psEnc$addr; $arch1 = ((($2)) + 5088|0); HEAP32[$arch1>>2] = $1; $call = (_silk_lin2log(3932160)|0); $sub = (($call) - 2048)|0; $shl = $sub << 8; $3 = $psEnc$addr; $variable_HP_smth1_Q15 = ((($3)) + 8|0); HEAP32[$variable_HP_smth1_Q15>>2] = $shl; $4 = $psEnc$addr; $variable_HP_smth1_Q154 = ((($4)) + 8|0); $5 = HEAP32[$variable_HP_smth1_Q154>>2]|0; $6 = $psEnc$addr; $variable_HP_smth2_Q15 = ((($6)) + 12|0); HEAP32[$variable_HP_smth2_Q15>>2] = $5; $7 = $psEnc$addr; $first_frame_after_reset = ((($7)) + 4660|0); HEAP32[$first_frame_after_reset>>2] = 1; $8 = $psEnc$addr; $sVAD = ((($8)) + 32|0); $call8 = (_silk_VAD_Init($sVAD)|0); $9 = $ret; $add = (($9) + ($call8))|0; $ret = $add; $10 = $ret; STACKTOP = sp;return ($10|0); } function _silk_control_encoder($psEnc,$encControl,$allow_bw_switch,$channelNb,$force_fs_kHz) { $psEnc = $psEnc|0; $encControl = $encControl|0; $allow_bw_switch = $allow_bw_switch|0; $channelNb = $channelNb|0; $force_fs_kHz = $force_fs_kHz|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $8 = 0, $9 = 0, $API_fs_Hz = 0, $API_fs_Hz21 = 0, $API_sampleRate = 0, $PacketLoss_perc = 0, $add = 0, $add37 = 0, $add39 = 0, $add42 = 0, $add46 = 0; var $allow_bandwidth_switch = 0, $allow_bw_switch$addr = 0, $call = 0, $call33 = 0, $call36 = 0, $call38 = 0, $call41 = 0, $call45 = 0, $channelNb$addr = 0, $channelNb16 = 0, $cmp = 0, $cmp19 = 0, $cmp23 = 0, $cmp27 = 0, $complexity = 0, $controlled_since_last_payload = 0, $controlled_since_last_payload48 = 0, $desiredInternalSampleRate = 0, $desiredInternal_fs_Hz = 0, $encControl$addr = 0; var $force_fs_kHz$addr = 0, $fs_kHz = 0, $fs_kHz26 = 0, $fs_kHz30 = 0, $maxInternalSampleRate = 0, $maxInternal_fs_Hz = 0, $minInternalSampleRate = 0, $minInternal_fs_Hz = 0, $nChannelsAPI11 = 0, $nChannelsInternal = 0, $nChannelsInternal13 = 0, $packetLossPercentage = 0, $payloadSize_ms = 0, $prefillFlag = 0, $prev_API_fs_Hz = 0, $psEnc$addr = 0, $ret = 0, $retval = 0, $tobool = 0, $useCBR = 0; var $useCBR3 = 0, $useDTX = 0, $useDTX1 = 0, $useInBandFEC = 0, $useInBandFEC9 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $psEnc$addr = $psEnc; $encControl$addr = $encControl; $allow_bw_switch$addr = $allow_bw_switch; $channelNb$addr = $channelNb; $force_fs_kHz$addr = $force_fs_kHz; $ret = 0; $0 = $encControl$addr; $useDTX = ((($0)) + 48|0); $1 = HEAP32[$useDTX>>2]|0; $2 = $psEnc$addr; $useDTX1 = ((($2)) + 6072|0); HEAP32[$useDTX1>>2] = $1; $3 = $encControl$addr; $useCBR = ((($3)) + 52|0); $4 = HEAP32[$useCBR>>2]|0; $5 = $psEnc$addr; $useCBR3 = ((($5)) + 4672|0); HEAP32[$useCBR3>>2] = $4; $6 = $encControl$addr; $API_sampleRate = ((($6)) + 8|0); $7 = HEAP32[$API_sampleRate>>2]|0; $8 = $psEnc$addr; $API_fs_Hz = ((($8)) + 4552|0); HEAP32[$API_fs_Hz>>2] = $7; $9 = $encControl$addr; $maxInternalSampleRate = ((($9)) + 12|0); $10 = HEAP32[$maxInternalSampleRate>>2]|0; $11 = $psEnc$addr; $maxInternal_fs_Hz = ((($11)) + 4560|0); HEAP32[$maxInternal_fs_Hz>>2] = $10; $12 = $encControl$addr; $minInternalSampleRate = ((($12)) + 16|0); $13 = HEAP32[$minInternalSampleRate>>2]|0; $14 = $psEnc$addr; $minInternal_fs_Hz = ((($14)) + 4564|0); HEAP32[$minInternal_fs_Hz>>2] = $13; $15 = $encControl$addr; $desiredInternalSampleRate = ((($15)) + 20|0); $16 = HEAP32[$desiredInternalSampleRate>>2]|0; $17 = $psEnc$addr; $desiredInternal_fs_Hz = ((($17)) + 4568|0); HEAP32[$desiredInternal_fs_Hz>>2] = $16; $18 = $encControl$addr; $useInBandFEC = ((($18)) + 40|0); $19 = HEAP32[$useInBandFEC>>2]|0; $20 = $psEnc$addr; $useInBandFEC9 = ((($20)) + 6084|0); HEAP32[$useInBandFEC9>>2] = $19; $21 = $encControl$addr; $22 = HEAP32[$21>>2]|0; $23 = $psEnc$addr; $nChannelsAPI11 = ((($23)) + 5748|0); HEAP32[$nChannelsAPI11>>2] = $22; $24 = $encControl$addr; $nChannelsInternal = ((($24)) + 4|0); $25 = HEAP32[$nChannelsInternal>>2]|0; $26 = $psEnc$addr; $nChannelsInternal13 = ((($26)) + 5752|0); HEAP32[$nChannelsInternal13>>2] = $25; $27 = $allow_bw_switch$addr; $28 = $psEnc$addr; $allow_bandwidth_switch = ((($28)) + 4532|0); HEAP32[$allow_bandwidth_switch>>2] = $27; $29 = $channelNb$addr; $30 = $psEnc$addr; $channelNb16 = ((($30)) + 5756|0); HEAP32[$channelNb16>>2] = $29; $31 = $psEnc$addr; $controlled_since_last_payload = ((($31)) + 4664|0); $32 = HEAP32[$controlled_since_last_payload>>2]|0; $cmp = ($32|0)!=(0); if ($cmp) { $33 = $psEnc$addr; $prefillFlag = ((($33)) + 4676|0); $34 = HEAP32[$prefillFlag>>2]|0; $cmp19 = ($34|0)==(0); if ($cmp19) { $35 = $psEnc$addr; $API_fs_Hz21 = ((($35)) + 4552|0); $36 = HEAP32[$API_fs_Hz21>>2]|0; $37 = $psEnc$addr; $prev_API_fs_Hz = ((($37)) + 4556|0); $38 = HEAP32[$prev_API_fs_Hz>>2]|0; $cmp23 = ($36|0)!=($38|0); if ($cmp23) { $39 = $psEnc$addr; $fs_kHz26 = ((($39)) + 4572|0); $40 = HEAP32[$fs_kHz26>>2]|0; $cmp27 = ($40|0)>(0); if ($cmp27) { $41 = $psEnc$addr; $42 = $psEnc$addr; $fs_kHz30 = ((($42)) + 4572|0); $43 = HEAP32[$fs_kHz30>>2]|0; $call = (_silk_setup_resamplers($41,$43)|0); $44 = $ret; $add = (($44) + ($call))|0; $ret = $add; } } $45 = $ret; $retval = $45; $70 = $retval; STACKTOP = sp;return ($70|0); } } $46 = $psEnc$addr; $47 = $encControl$addr; $call33 = (_silk_control_audio_bandwidth($46,$47)|0); $fs_kHz = $call33; $48 = $force_fs_kHz$addr; $tobool = ($48|0)!=(0); if ($tobool) { $49 = $force_fs_kHz$addr; $fs_kHz = $49; } $50 = $psEnc$addr; $51 = $fs_kHz; $call36 = (_silk_setup_resamplers($50,$51)|0); $52 = $ret; $add37 = (($52) + ($call36))|0; $ret = $add37; $53 = $psEnc$addr; $54 = $fs_kHz; $55 = $encControl$addr; $payloadSize_ms = ((($55)) + 24|0); $56 = HEAP32[$payloadSize_ms>>2]|0; $call38 = (_silk_setup_fs($53,$54,$56)|0); $57 = $ret; $add39 = (($57) + ($call38))|0; $ret = $add39; $58 = $psEnc$addr; $59 = $encControl$addr; $complexity = ((($59)) + 36|0); $60 = HEAP32[$complexity>>2]|0; $call41 = (_silk_setup_complexity($58,$60)|0); $61 = $ret; $add42 = (($61) + ($call41))|0; $ret = $add42; $62 = $encControl$addr; $packetLossPercentage = ((($62)) + 32|0); $63 = HEAP32[$packetLossPercentage>>2]|0; $64 = $psEnc$addr; $PacketLoss_perc = ((($64)) + 4612|0); HEAP32[$PacketLoss_perc>>2] = $63; $65 = $psEnc$addr; $66 = $encControl$addr; $call45 = (_silk_setup_LBRR($65,$66)|0); $67 = $ret; $add46 = (($67) + ($call45))|0; $ret = $add46; $68 = $psEnc$addr; $controlled_since_last_payload48 = ((($68)) + 4664|0); HEAP32[$controlled_since_last_payload48>>2] = 1; $69 = $ret; $retval = $69; $70 = $retval; STACKTOP = sp;return ($70|0); } function _silk_setup_resamplers($psEnc,$fs_kHz) { $psEnc = $psEnc|0; $fs_kHz = $fs_kHz|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $API_fs_Hz = 0, $API_fs_Hz11 = 0, $API_fs_Hz26 = 0, $API_fs_Hz30 = 0, $API_fs_Hz39 = 0, $API_fs_Hz53 = 0, $add = 0; var $add14 = 0, $add28 = 0, $add35 = 0, $add44 = 0, $add48 = 0, $api_buf_samples = 0, $buf_length_ms = 0, $call = 0, $call27 = 0, $call34 = 0, $call43 = 0, $call47 = 0, $cmp = 0, $cmp19 = 0, $cmp4 = 0, $cmp7 = 0, $cond = 0, $conv = 0, $conv23 = 0, $conv40 = 0; var $conv41 = 0, $div = 0, $fs_kHz$addr = 0, $fs_kHz1 = 0, $fs_kHz16 = 0, $fs_kHz22 = 0, $fs_kHz6 = 0, $mul = 0, $mul13 = 0, $mul17 = 0, $mul18 = 0, $mul24 = 0, $mul31 = 0, $mul42 = 0, $nb_subfr = 0, $new_buf_samples = 0, $old_buf_samples = 0, $prev_API_fs_Hz = 0, $prev_API_fs_Hz55 = 0, $psEnc$addr = 0; var $resampler_state = 0, $resampler_state37 = 0, $resampler_state46 = 0, $ret = 0, $saved_stack = 0, $shl = 0, $temp_resampler_state = 0, $vla = 0, $vla$alloca_mul = 0, $vla32 = 0, $vla32$alloca_mul = 0, $x_buf = 0, $x_buf49 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 336|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(336|0); $temp_resampler_state = sp; $psEnc$addr = $psEnc; $fs_kHz$addr = $fs_kHz; $ret = 0; $0 = $psEnc$addr; $fs_kHz1 = ((($0)) + 4572|0); $1 = HEAP32[$fs_kHz1>>2]|0; $2 = $fs_kHz$addr; $cmp = ($1|0)!=($2|0); if (!($cmp)) { $3 = $psEnc$addr; $prev_API_fs_Hz = ((($3)) + 4556|0); $4 = HEAP32[$prev_API_fs_Hz>>2]|0; $5 = $psEnc$addr; $API_fs_Hz = ((($5)) + 4552|0); $6 = HEAP32[$API_fs_Hz>>2]|0; $cmp4 = ($4|0)!=($6|0); if (!($cmp4)) { $49 = $psEnc$addr; $API_fs_Hz53 = ((($49)) + 4552|0); $50 = HEAP32[$API_fs_Hz53>>2]|0; $51 = $psEnc$addr; $prev_API_fs_Hz55 = ((($51)) + 4556|0); HEAP32[$prev_API_fs_Hz55>>2] = $50; $52 = $ret; STACKTOP = sp;return ($52|0); } } $7 = $psEnc$addr; $fs_kHz6 = ((($7)) + 4572|0); $8 = HEAP32[$fs_kHz6>>2]|0; $cmp7 = ($8|0)==(0); $9 = $psEnc$addr; if ($cmp7) { $resampler_state = ((($9)) + 5772|0); $10 = $psEnc$addr; $API_fs_Hz11 = ((($10)) + 4552|0); $11 = HEAP32[$API_fs_Hz11>>2]|0; $12 = $fs_kHz$addr; $mul = ($12*1000)|0; $call = (_silk_resampler_init($resampler_state,$11,$mul,1)|0); $13 = $ret; $add = (($13) + ($call))|0; $ret = $add; $49 = $psEnc$addr; $API_fs_Hz53 = ((($49)) + 4552|0); $50 = HEAP32[$API_fs_Hz53>>2]|0; $51 = $psEnc$addr; $prev_API_fs_Hz55 = ((($51)) + 4556|0); HEAP32[$prev_API_fs_Hz55>>2] = $50; $52 = $ret; STACKTOP = sp;return ($52|0); } else { $nb_subfr = ((($9)) + 4576|0); $14 = HEAP32[$nb_subfr>>2]|0; $mul13 = ($14*5)|0; $shl = $mul13 << 1; $add14 = (($shl) + 5)|0; $buf_length_ms = $add14; $15 = $buf_length_ms; $16 = $psEnc$addr; $fs_kHz16 = ((($16)) + 4572|0); $17 = HEAP32[$fs_kHz16>>2]|0; $mul17 = Math_imul($15, $17)|0; $old_buf_samples = $mul17; $18 = $buf_length_ms; $19 = $fs_kHz$addr; $mul18 = Math_imul($18, $19)|0; $new_buf_samples = $mul18; $20 = $old_buf_samples; $21 = $new_buf_samples; $cmp19 = ($20|0)>($21|0); $22 = $old_buf_samples; $23 = $new_buf_samples; $cond = $cmp19 ? $22 : $23; $24 = (_llvm_stacksave()|0); $saved_stack = $24; $vla$alloca_mul = $cond<<1; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $25 = $psEnc$addr; $x_buf = ((($25)) + 7176|0); $26 = $old_buf_samples; _silk_float2short_array($vla,$x_buf,$26); $27 = $psEnc$addr; $fs_kHz22 = ((($27)) + 4572|0); $28 = HEAP32[$fs_kHz22>>2]|0; $conv = $28&65535; $conv23 = $conv << 16 >> 16; $mul24 = ($conv23*1000)|0; $29 = $psEnc$addr; $API_fs_Hz26 = ((($29)) + 4552|0); $30 = HEAP32[$API_fs_Hz26>>2]|0; $call27 = (_silk_resampler_init($temp_resampler_state,$mul24,$30,0)|0); $31 = $ret; $add28 = (($31) + ($call27))|0; $ret = $add28; $32 = $buf_length_ms; $33 = $psEnc$addr; $API_fs_Hz30 = ((($33)) + 4552|0); $34 = HEAP32[$API_fs_Hz30>>2]|0; $div = (($34|0) / 1000)&-1; $mul31 = Math_imul($32, $div)|0; $api_buf_samples = $mul31; $35 = $api_buf_samples; $vla32$alloca_mul = $35<<1; $vla32 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla32$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla32$alloca_mul)|0)+15)&-16)|0);; $36 = $old_buf_samples; $call34 = (_silk_resampler($temp_resampler_state,$vla32,$vla,$36)|0); $37 = $ret; $add35 = (($37) + ($call34))|0; $ret = $add35; $38 = $psEnc$addr; $resampler_state37 = ((($38)) + 5772|0); $39 = $psEnc$addr; $API_fs_Hz39 = ((($39)) + 4552|0); $40 = HEAP32[$API_fs_Hz39>>2]|0; $41 = $fs_kHz$addr; $conv40 = $41&65535; $conv41 = $conv40 << 16 >> 16; $mul42 = ($conv41*1000)|0; $call43 = (_silk_resampler_init($resampler_state37,$40,$mul42,1)|0); $42 = $ret; $add44 = (($42) + ($call43))|0; $ret = $add44; $43 = $psEnc$addr; $resampler_state46 = ((($43)) + 5772|0); $44 = $api_buf_samples; $call47 = (_silk_resampler($resampler_state46,$vla,$vla32,$44)|0); $45 = $ret; $add48 = (($45) + ($call47))|0; $ret = $add48; $46 = $psEnc$addr; $x_buf49 = ((($46)) + 7176|0); $47 = $new_buf_samples; _silk_short2float_array($x_buf49,$vla,$47); $48 = $saved_stack; _llvm_stackrestore(($48|0)); $49 = $psEnc$addr; $API_fs_Hz53 = ((($49)) + 4552|0); $50 = HEAP32[$API_fs_Hz53>>2]|0; $51 = $psEnc$addr; $prev_API_fs_Hz55 = ((($51)) + 4556|0); HEAP32[$prev_API_fs_Hz55>>2] = $50; $52 = $ret; STACKTOP = sp;return ($52|0); } return (0)|0; } function _silk_setup_fs($psEnc,$fs_kHz,$PacketSize_ms) { $psEnc = $psEnc|0; $fs_kHz = $fs_kHz|0; $PacketSize_ms = $PacketSize_ms|0; var $$sink = 0, $$sink3 = 0, $$sink3$sink = 0, $$sink4 = 0, $$sink5 = 0, $$sink5$sink = 0, $$sink6 = 0, $$sink7 = 0, $$sink8 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0; var $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0; var $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $9 = 0, $PacketSize_ms$addr = 0, $PacketSize_ms1 = 0, $PacketSize_ms59 = 0, $TargetRate_bps = 0; var $TargetRate_bps73 = 0, $cmp = 0, $cmp115 = 0, $cmp119 = 0, $cmp12 = 0, $cmp157 = 0, $cmp174 = 0, $cmp181 = 0, $cmp2 = 0, $cmp24 = 0, $cmp3 = 0, $cmp48 = 0, $cmp5 = 0, $cmp64 = 0, $cmp7 = 0, $cmp86 = 0, $cmp9 = 0, $cmp91 = 0, $cond = 0, $conv = 0; var $conv134 = 0, $conv135 = 0, $conv138 = 0, $conv139 = 0, $conv14 = 0, $conv143 = 0, $conv144 = 0, $conv147 = 0, $conv148 = 0, $conv15 = 0, $conv151 = 0, $conv152 = 0, $conv16 = 0, $conv160 = 0, $conv161 = 0, $conv18 = 0, $conv19 = 0, $conv36 = 0, $conv37 = 0, $conv41 = 0; var $conv42 = 0, $div = 0, $first_frame_after_reset = 0, $frame_length = 0, $frame_length142 = 0, $frame_length40 = 0, $fs_kHz$addr = 0, $fs_kHz114 = 0, $fs_kHz118 = 0, $fs_kHz173 = 0, $fs_kHz180 = 0, $fs_kHz23 = 0, $fs_kHz47 = 0, $fs_kHz63 = 0, $fs_kHz83 = 0, $fs_kHz85 = 0, $inputBufIx = 0, $la_pitch = 0, $lagPrev = 0, $ltp_mem_length = 0; var $max_pitch_lag = 0, $mul = 0, $mul130 = 0, $mul140 = 0, $mul145 = 0, $mul149 = 0, $mul153 = 0, $mul162 = 0, $mul168 = 0, $mul168$sink = 0, $mul20 = 0, $mul38 = 0, $mul43 = 0, $nFramesEncoded = 0, $nFramesPerPacket = 0, $nFramesPerPacket33 = 0, $nb_subfr = 0, $nb_subfr137 = 0, $nb_subfr156 = 0, $nb_subfr35 = 0; var $nb_subfr90 = 0, $or$cond = 0, $or$cond1 = 0, $or$cond2 = 0, $pitch_LPC_win_length = 0, $pitch_LPC_win_length170 = 0, $pitch_LPC_win_length45 = 0, $pitch_contour_iCDF = 0, $pitch_contour_iCDF52 = 0, $pitch_contour_iCDF52$sink = 0, $pitch_contour_iCDF95 = 0, $pitch_lag_low_bits_iCDF = 0, $pitch_lag_low_bits_iCDF185 = 0, $predictLPCOrder = 0, $predictLPCOrder126 = 0, $prevLag = 0, $prevSignalType = 0, $prev_NLSFq_Q15 = 0, $prev_gain_Q16 = 0, $psEnc$addr = 0; var $psNLSF_CB128 = 0, $ret = 0, $sLP = 0, $sNSQ = 0, $sNSQ78 = 0, $sNSQ80 = 0, $sShape = 0, $sShape76 = 0, $silk_NLSF_CB_WB$sink = 0, $subfr_length = 0, $subfr_length133 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $psEnc$addr = $psEnc; $fs_kHz$addr = $fs_kHz; $PacketSize_ms$addr = $PacketSize_ms; $ret = 0; $0 = $PacketSize_ms$addr; $1 = $psEnc$addr; $PacketSize_ms1 = ((($1)) + 4608|0); $2 = HEAP32[$PacketSize_ms1>>2]|0; $cmp = ($0|0)!=($2|0); if ($cmp) { $3 = $PacketSize_ms$addr; $cmp2 = ($3|0)!=(10); $4 = $PacketSize_ms$addr; $cmp3 = ($4|0)!=(20); $or$cond = $cmp2 & $cmp3; $5 = $PacketSize_ms$addr; $cmp5 = ($5|0)!=(40); $or$cond1 = $or$cond & $cmp5; $6 = $PacketSize_ms$addr; $cmp7 = ($6|0)!=(60); $or$cond2 = $or$cond1 & $cmp7; if ($or$cond2) { $ret = -103; } $7 = $PacketSize_ms$addr; $cmp9 = ($7|0)<=(10); if ($cmp9) { $8 = $psEnc$addr; $nFramesPerPacket = ((($8)) + 5740|0); HEAP32[$nFramesPerPacket>>2] = 1; $9 = $PacketSize_ms$addr; $cmp12 = ($9|0)==(10); $cond = $cmp12 ? 2 : 1; $10 = $psEnc$addr; $nb_subfr = ((($10)) + 4576|0); HEAP32[$nb_subfr>>2] = $cond; $11 = $PacketSize_ms$addr; $conv = $11&65535; $conv14 = $conv << 16 >> 16; $12 = $fs_kHz$addr; $conv15 = $12&65535; $conv16 = $conv15 << 16 >> 16; $mul = Math_imul($conv14, $conv16)|0; $13 = $psEnc$addr; $frame_length = ((($13)) + 4580|0); HEAP32[$frame_length>>2] = $mul; $14 = $fs_kHz$addr; $conv18 = $14&65535; $conv19 = $conv18 << 16 >> 16; $mul20 = ($conv19*14)|0; $15 = $psEnc$addr; $pitch_LPC_win_length = ((($15)) + 4544|0); HEAP32[$pitch_LPC_win_length>>2] = $mul20; $16 = $psEnc$addr; $fs_kHz23 = ((($16)) + 4572|0); $17 = HEAP32[$fs_kHz23>>2]|0; $cmp24 = ($17|0)==(8); $18 = $psEnc$addr; $pitch_contour_iCDF = ((($18)) + 4684|0); $$sink = $cmp24 ? 32972 : 32960; $$sink3$sink = $$sink;$pitch_contour_iCDF52$sink = $pitch_contour_iCDF; } else { $19 = $PacketSize_ms$addr; $div = (($19|0) / 20)&-1; $20 = $psEnc$addr; $nFramesPerPacket33 = ((($20)) + 5740|0); HEAP32[$nFramesPerPacket33>>2] = $div; $21 = $psEnc$addr; $nb_subfr35 = ((($21)) + 4576|0); HEAP32[$nb_subfr35>>2] = 4; $22 = $fs_kHz$addr; $conv36 = $22&65535; $conv37 = $conv36 << 16 >> 16; $mul38 = ($conv37*20)|0; $23 = $psEnc$addr; $frame_length40 = ((($23)) + 4580|0); HEAP32[$frame_length40>>2] = $mul38; $24 = $fs_kHz$addr; $conv41 = $24&65535; $conv42 = $conv41 << 16 >> 16; $mul43 = ($conv42*24)|0; $25 = $psEnc$addr; $pitch_LPC_win_length45 = ((($25)) + 4544|0); HEAP32[$pitch_LPC_win_length45>>2] = $mul43; $26 = $psEnc$addr; $fs_kHz47 = ((($26)) + 4572|0); $27 = HEAP32[$fs_kHz47>>2]|0; $cmp48 = ($27|0)==(8); $28 = $psEnc$addr; $pitch_contour_iCDF52 = ((($28)) + 4684|0); $$sink3 = $cmp48 ? 32949 : 32915; $$sink3$sink = $$sink3;$pitch_contour_iCDF52$sink = $pitch_contour_iCDF52; } HEAP32[$pitch_contour_iCDF52$sink>>2] = $$sink3$sink; $29 = $PacketSize_ms$addr; $30 = $psEnc$addr; $PacketSize_ms59 = ((($30)) + 4608|0); HEAP32[$PacketSize_ms59>>2] = $29; $31 = $psEnc$addr; $TargetRate_bps = ((($31)) + 4604|0); HEAP32[$TargetRate_bps>>2] = 0; } $32 = $psEnc$addr; $fs_kHz63 = ((($32)) + 4572|0); $33 = HEAP32[$fs_kHz63>>2]|0; $34 = $fs_kHz$addr; $cmp64 = ($33|0)!=($34|0); if (!($cmp64)) { $86 = $ret; STACKTOP = sp;return ($86|0); } $35 = $psEnc$addr; $sShape = ((($35)) + 7164|0); ;HEAP32[$sShape>>2]=0|0;HEAP32[$sShape+4>>2]=0|0;HEAP32[$sShape+8>>2]=0|0; $36 = $psEnc$addr; $sNSQ = ((($36)) + 144|0); _memset(($sNSQ|0),0,4352)|0; $37 = $psEnc$addr; $prev_NLSFq_Q15 = ((($37)) + 4496|0); ;HEAP32[$prev_NLSFq_Q15>>2]=0|0;HEAP32[$prev_NLSFq_Q15+4>>2]=0|0;HEAP32[$prev_NLSFq_Q15+8>>2]=0|0;HEAP32[$prev_NLSFq_Q15+12>>2]=0|0;HEAP32[$prev_NLSFq_Q15+16>>2]=0|0;HEAP32[$prev_NLSFq_Q15+20>>2]=0|0;HEAP32[$prev_NLSFq_Q15+24>>2]=0|0;HEAP32[$prev_NLSFq_Q15+28>>2]=0|0; $38 = $psEnc$addr; $sLP = ((($38)) + 16|0); ;HEAP32[$sLP>>2]=0|0;HEAP32[$sLP+4>>2]=0|0; $39 = $psEnc$addr; $inputBufIx = ((($39)) + 5736|0); HEAP32[$inputBufIx>>2] = 0; $40 = $psEnc$addr; $nFramesEncoded = ((($40)) + 5744|0); HEAP32[$nFramesEncoded>>2] = 0; $41 = $psEnc$addr; $TargetRate_bps73 = ((($41)) + 4604|0); HEAP32[$TargetRate_bps73>>2] = 0; $42 = $psEnc$addr; $prevLag = ((($42)) + 4540|0); HEAP32[$prevLag>>2] = 100; $43 = $psEnc$addr; $first_frame_after_reset = ((($43)) + 4660|0); HEAP32[$first_frame_after_reset>>2] = 1; $44 = $psEnc$addr; $sShape76 = ((($44)) + 7164|0); HEAP8[$sShape76>>0] = 10; $45 = $psEnc$addr; $sNSQ78 = ((($45)) + 144|0); $lagPrev = ((($sNSQ78)) + 4328|0); HEAP32[$lagPrev>>2] = 100; $46 = $psEnc$addr; $sNSQ80 = ((($46)) + 144|0); $prev_gain_Q16 = ((($sNSQ80)) + 4344|0); HEAP32[$prev_gain_Q16>>2] = 65536; $47 = $psEnc$addr; $prevSignalType = ((($47)) + 4537|0); HEAP8[$prevSignalType>>0] = 0; $48 = $fs_kHz$addr; $49 = $psEnc$addr; $fs_kHz83 = ((($49)) + 4572|0); HEAP32[$fs_kHz83>>2] = $48; $50 = $psEnc$addr; $fs_kHz85 = ((($50)) + 4572|0); $51 = HEAP32[$fs_kHz85>>2]|0; $cmp86 = ($51|0)==(8); $52 = $psEnc$addr; $nb_subfr90 = ((($52)) + 4576|0); $53 = HEAP32[$nb_subfr90>>2]|0; $cmp91 = ($53|0)==(4); $54 = $psEnc$addr; $pitch_contour_iCDF95 = ((($54)) + 4684|0); $$sink5 = $cmp91 ? 32915 : 32960; $$sink4 = $cmp91 ? 32949 : 32972; $$sink5$sink = $cmp86 ? $$sink4 : $$sink5; HEAP32[$pitch_contour_iCDF95>>2] = $$sink5$sink; $55 = $psEnc$addr; $fs_kHz114 = ((($55)) + 4572|0); $56 = HEAP32[$fs_kHz114>>2]|0; $cmp115 = ($56|0)==(8); if ($cmp115) { label = 11; } else { $57 = $psEnc$addr; $fs_kHz118 = ((($57)) + 4572|0); $58 = HEAP32[$fs_kHz118>>2]|0; $cmp119 = ($58|0)==(12); if ($cmp119) { label = 11; } else { $61 = $psEnc$addr; $predictLPCOrder126 = ((($61)) + 4636|0); HEAP32[$predictLPCOrder126>>2] = 16; $62 = $psEnc$addr; $$sink6 = $62;$silk_NLSF_CB_WB$sink = 20764; } } if ((label|0) == 11) { $59 = $psEnc$addr; $predictLPCOrder = ((($59)) + 4636|0); HEAP32[$predictLPCOrder>>2] = 10; $60 = $psEnc$addr; $$sink6 = $60;$silk_NLSF_CB_WB$sink = 20724; } $psNLSF_CB128 = ((($$sink6)) + 4688|0); HEAP32[$psNLSF_CB128>>2] = $silk_NLSF_CB_WB$sink; $63 = $fs_kHz$addr; $mul130 = ($63*5)|0; $64 = $psEnc$addr; $subfr_length = ((($64)) + 4584|0); HEAP32[$subfr_length>>2] = $mul130; $65 = $psEnc$addr; $subfr_length133 = ((($65)) + 4584|0); $66 = HEAP32[$subfr_length133>>2]|0; $conv134 = $66&65535; $conv135 = $conv134 << 16 >> 16; $67 = $psEnc$addr; $nb_subfr137 = ((($67)) + 4576|0); $68 = HEAP32[$nb_subfr137>>2]|0; $conv138 = $68&65535; $conv139 = $conv138 << 16 >> 16; $mul140 = Math_imul($conv135, $conv139)|0; $69 = $psEnc$addr; $frame_length142 = ((($69)) + 4580|0); HEAP32[$frame_length142>>2] = $mul140; $70 = $fs_kHz$addr; $conv143 = $70&65535; $conv144 = $conv143 << 16 >> 16; $mul145 = ($conv144*20)|0; $71 = $psEnc$addr; $ltp_mem_length = ((($71)) + 4588|0); HEAP32[$ltp_mem_length>>2] = $mul145; $72 = $fs_kHz$addr; $conv147 = $72&65535; $conv148 = $conv147 << 16 >> 16; $mul149 = $conv148<<1; $73 = $psEnc$addr; $la_pitch = ((($73)) + 4592|0); HEAP32[$la_pitch>>2] = $mul149; $74 = $fs_kHz$addr; $conv151 = $74&65535; $conv152 = $conv151 << 16 >> 16; $mul153 = ($conv152*18)|0; $75 = $psEnc$addr; $max_pitch_lag = ((($75)) + 4548|0); HEAP32[$max_pitch_lag>>2] = $mul153; $76 = $psEnc$addr; $nb_subfr156 = ((($76)) + 4576|0); $77 = HEAP32[$nb_subfr156>>2]|0; $cmp157 = ($77|0)==(4); $78 = $fs_kHz$addr; $conv160 = $78&65535; $conv161 = $conv160 << 16 >> 16; $mul168 = ($conv161*14)|0; $79 = $psEnc$addr; $mul162 = ($conv161*24)|0; $80 = $psEnc$addr; $$sink7 = $cmp157 ? $80 : $79; $mul168$sink = $cmp157 ? $mul162 : $mul168; $pitch_LPC_win_length170 = ((($$sink7)) + 4544|0); HEAP32[$pitch_LPC_win_length170>>2] = $mul168$sink; $81 = $psEnc$addr; $fs_kHz173 = ((($81)) + 4572|0); $82 = HEAP32[$fs_kHz173>>2]|0; $cmp174 = ($82|0)==(16); $83 = $psEnc$addr; if ($cmp174) { $pitch_lag_low_bits_iCDF = ((($83)) + 4680|0); HEAP32[$pitch_lag_low_bits_iCDF>>2] = 32847; $86 = $ret; STACKTOP = sp;return ($86|0); } else { $fs_kHz180 = ((($83)) + 4572|0); $84 = HEAP32[$fs_kHz180>>2]|0; $cmp181 = ($84|0)==(12); $85 = $psEnc$addr; $pitch_lag_low_bits_iCDF185 = ((($85)) + 4680|0); $$sink8 = $cmp181 ? 32841 : 32832; HEAP32[$pitch_lag_low_bits_iCDF185>>2] = $$sink8; $86 = $ret; STACKTOP = sp;return ($86|0); } return (0)|0; } function _silk_setup_complexity($psEncC,$Complexity) { $psEncC = $psEncC|0; $Complexity = $Complexity|0; var $$sink$sink$sink$sink$sink$sink = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0; var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0; var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0; var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0; var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0; var $98 = 0, $99 = 0, $Complexity$addr = 0, $Complexity99 = 0, $NLSF_MSVQ_Survivors = 0, $NLSF_MSVQ_Survivors12 = 0, $NLSF_MSVQ_Survivors26 = 0, $NLSF_MSVQ_Survivors40 = 0, $NLSF_MSVQ_Survivors54 = 0, $NLSF_MSVQ_Survivors70 = 0, $NLSF_MSVQ_Survivors84 = 0, $add = 0, $call = 0, $cmp = 0, $cmp1 = 0, $cmp15 = 0, $cmp29 = 0, $cmp43 = 0, $cmp59 = 0, $fs_kHz = 0; var $fs_kHz21 = 0, $fs_kHz35 = 0, $fs_kHz49 = 0, $fs_kHz55 = 0, $fs_kHz65 = 0, $fs_kHz7 = 0, $fs_kHz71 = 0, $fs_kHz79 = 0, $fs_kHz85 = 0, $fs_kHz95 = 0, $la_shape = 0, $la_shape23 = 0, $la_shape37 = 0, $la_shape51 = 0, $la_shape67 = 0, $la_shape81 = 0, $la_shape9 = 0, $la_shape97 = 0, $mul = 0, $mul22 = 0; var $mul36 = 0, $mul50 = 0, $mul56 = 0, $mul66 = 0, $mul72 = 0, $mul8 = 0, $mul80 = 0, $mul86 = 0, $mul86$sink$sink$sink$sink$sink$sink = 0, $mul96 = 0, $mul98 = 0, $nStatesDelayedDecision = 0, $nStatesDelayedDecision10 = 0, $nStatesDelayedDecision24 = 0, $nStatesDelayedDecision38 = 0, $nStatesDelayedDecision52 = 0, $nStatesDelayedDecision68 = 0, $nStatesDelayedDecision82 = 0, $pitchEstimationComplexity = 0, $pitchEstimationComplexity17 = 0; var $pitchEstimationComplexity3 = 0, $pitchEstimationComplexity31 = 0, $pitchEstimationComplexity45 = 0, $pitchEstimationComplexity61 = 0, $pitchEstimationLPCOrder = 0, $pitchEstimationLPCOrder19 = 0, $pitchEstimationLPCOrder33 = 0, $pitchEstimationLPCOrder47 = 0, $pitchEstimationLPCOrder5 = 0, $pitchEstimationLPCOrder63 = 0, $pitchEstimationLPCOrder77 = 0, $pitchEstimationLPCOrder93 = 0, $pitchEstimationLPCOrder94 = 0, $pitchEstimationThreshold_Q16 = 0, $pitchEstimationThreshold_Q1618 = 0, $pitchEstimationThreshold_Q1632 = 0, $pitchEstimationThreshold_Q164 = 0, $pitchEstimationThreshold_Q1646 = 0, $pitchEstimationThreshold_Q1662 = 0, $pitchEstimationThreshold_Q1676 = 0; var $predictLPCOrder = 0, $psEncC$addr = 0, $ret = 0, $shapeWinLength = 0, $shapingLPCOrder = 0, $shapingLPCOrder20 = 0, $shapingLPCOrder34 = 0, $shapingLPCOrder48 = 0, $shapingLPCOrder6 = 0, $shapingLPCOrder64 = 0, $shapingLPCOrder78 = 0, $useInterpolatedNLSFs = 0, $useInterpolatedNLSFs11 = 0, $useInterpolatedNLSFs25 = 0, $useInterpolatedNLSFs39 = 0, $useInterpolatedNLSFs53 = 0, $useInterpolatedNLSFs69 = 0, $useInterpolatedNLSFs83 = 0, $warping_Q1687 = 0, label = 0; var sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $psEncC$addr = $psEncC; $Complexity$addr = $Complexity; $ret = 0; $0 = $Complexity$addr; $cmp = ($0|0)<(1); do { if ($cmp) { $1 = $psEncC$addr; $pitchEstimationComplexity = ((($1)) + 4640|0); HEAP32[$pitchEstimationComplexity>>2] = 0; $2 = $psEncC$addr; $pitchEstimationThreshold_Q16 = ((($2)) + 4648|0); HEAP32[$pitchEstimationThreshold_Q16>>2] = 52429; $3 = $psEncC$addr; $pitchEstimationLPCOrder = ((($3)) + 4644|0); HEAP32[$pitchEstimationLPCOrder>>2] = 6; $4 = $psEncC$addr; $shapingLPCOrder = ((($4)) + 4632|0); HEAP32[$shapingLPCOrder>>2] = 12; $5 = $psEncC$addr; $fs_kHz = ((($5)) + 4572|0); $6 = HEAP32[$fs_kHz>>2]|0; $mul = ($6*3)|0; $7 = $psEncC$addr; $la_shape = ((($7)) + 4596|0); HEAP32[$la_shape>>2] = $mul; $8 = $psEncC$addr; $nStatesDelayedDecision = ((($8)) + 4624|0); HEAP32[$nStatesDelayedDecision>>2] = 1; $9 = $psEncC$addr; $useInterpolatedNLSFs = ((($9)) + 4628|0); HEAP32[$useInterpolatedNLSFs>>2] = 0; $10 = $psEncC$addr; $NLSF_MSVQ_Survivors = ((($10)) + 4656|0); HEAP32[$NLSF_MSVQ_Survivors>>2] = 2; $11 = $psEncC$addr; $$sink$sink$sink$sink$sink$sink = $11;$mul86$sink$sink$sink$sink$sink$sink = 0; } else { $12 = $Complexity$addr; $cmp1 = ($12|0)<(2); if ($cmp1) { $13 = $psEncC$addr; $pitchEstimationComplexity3 = ((($13)) + 4640|0); HEAP32[$pitchEstimationComplexity3>>2] = 1; $14 = $psEncC$addr; $pitchEstimationThreshold_Q164 = ((($14)) + 4648|0); HEAP32[$pitchEstimationThreshold_Q164>>2] = 49807; $15 = $psEncC$addr; $pitchEstimationLPCOrder5 = ((($15)) + 4644|0); HEAP32[$pitchEstimationLPCOrder5>>2] = 8; $16 = $psEncC$addr; $shapingLPCOrder6 = ((($16)) + 4632|0); HEAP32[$shapingLPCOrder6>>2] = 14; $17 = $psEncC$addr; $fs_kHz7 = ((($17)) + 4572|0); $18 = HEAP32[$fs_kHz7>>2]|0; $mul8 = ($18*5)|0; $19 = $psEncC$addr; $la_shape9 = ((($19)) + 4596|0); HEAP32[$la_shape9>>2] = $mul8; $20 = $psEncC$addr; $nStatesDelayedDecision10 = ((($20)) + 4624|0); HEAP32[$nStatesDelayedDecision10>>2] = 1; $21 = $psEncC$addr; $useInterpolatedNLSFs11 = ((($21)) + 4628|0); HEAP32[$useInterpolatedNLSFs11>>2] = 0; $22 = $psEncC$addr; $NLSF_MSVQ_Survivors12 = ((($22)) + 4656|0); HEAP32[$NLSF_MSVQ_Survivors12>>2] = 3; $23 = $psEncC$addr; $$sink$sink$sink$sink$sink$sink = $23;$mul86$sink$sink$sink$sink$sink$sink = 0; break; } $24 = $Complexity$addr; $cmp15 = ($24|0)<(3); if ($cmp15) { $25 = $psEncC$addr; $pitchEstimationComplexity17 = ((($25)) + 4640|0); HEAP32[$pitchEstimationComplexity17>>2] = 0; $26 = $psEncC$addr; $pitchEstimationThreshold_Q1618 = ((($26)) + 4648|0); HEAP32[$pitchEstimationThreshold_Q1618>>2] = 52429; $27 = $psEncC$addr; $pitchEstimationLPCOrder19 = ((($27)) + 4644|0); HEAP32[$pitchEstimationLPCOrder19>>2] = 6; $28 = $psEncC$addr; $shapingLPCOrder20 = ((($28)) + 4632|0); HEAP32[$shapingLPCOrder20>>2] = 12; $29 = $psEncC$addr; $fs_kHz21 = ((($29)) + 4572|0); $30 = HEAP32[$fs_kHz21>>2]|0; $mul22 = ($30*3)|0; $31 = $psEncC$addr; $la_shape23 = ((($31)) + 4596|0); HEAP32[$la_shape23>>2] = $mul22; $32 = $psEncC$addr; $nStatesDelayedDecision24 = ((($32)) + 4624|0); HEAP32[$nStatesDelayedDecision24>>2] = 2; $33 = $psEncC$addr; $useInterpolatedNLSFs25 = ((($33)) + 4628|0); HEAP32[$useInterpolatedNLSFs25>>2] = 0; $34 = $psEncC$addr; $NLSF_MSVQ_Survivors26 = ((($34)) + 4656|0); HEAP32[$NLSF_MSVQ_Survivors26>>2] = 2; $35 = $psEncC$addr; $$sink$sink$sink$sink$sink$sink = $35;$mul86$sink$sink$sink$sink$sink$sink = 0; break; } $36 = $Complexity$addr; $cmp29 = ($36|0)<(4); if ($cmp29) { $37 = $psEncC$addr; $pitchEstimationComplexity31 = ((($37)) + 4640|0); HEAP32[$pitchEstimationComplexity31>>2] = 1; $38 = $psEncC$addr; $pitchEstimationThreshold_Q1632 = ((($38)) + 4648|0); HEAP32[$pitchEstimationThreshold_Q1632>>2] = 49807; $39 = $psEncC$addr; $pitchEstimationLPCOrder33 = ((($39)) + 4644|0); HEAP32[$pitchEstimationLPCOrder33>>2] = 8; $40 = $psEncC$addr; $shapingLPCOrder34 = ((($40)) + 4632|0); HEAP32[$shapingLPCOrder34>>2] = 14; $41 = $psEncC$addr; $fs_kHz35 = ((($41)) + 4572|0); $42 = HEAP32[$fs_kHz35>>2]|0; $mul36 = ($42*5)|0; $43 = $psEncC$addr; $la_shape37 = ((($43)) + 4596|0); HEAP32[$la_shape37>>2] = $mul36; $44 = $psEncC$addr; $nStatesDelayedDecision38 = ((($44)) + 4624|0); HEAP32[$nStatesDelayedDecision38>>2] = 2; $45 = $psEncC$addr; $useInterpolatedNLSFs39 = ((($45)) + 4628|0); HEAP32[$useInterpolatedNLSFs39>>2] = 0; $46 = $psEncC$addr; $NLSF_MSVQ_Survivors40 = ((($46)) + 4656|0); HEAP32[$NLSF_MSVQ_Survivors40>>2] = 4; $47 = $psEncC$addr; $$sink$sink$sink$sink$sink$sink = $47;$mul86$sink$sink$sink$sink$sink$sink = 0; break; } $48 = $Complexity$addr; $cmp43 = ($48|0)<(6); if ($cmp43) { $49 = $psEncC$addr; $pitchEstimationComplexity45 = ((($49)) + 4640|0); HEAP32[$pitchEstimationComplexity45>>2] = 1; $50 = $psEncC$addr; $pitchEstimationThreshold_Q1646 = ((($50)) + 4648|0); HEAP32[$pitchEstimationThreshold_Q1646>>2] = 48497; $51 = $psEncC$addr; $pitchEstimationLPCOrder47 = ((($51)) + 4644|0); HEAP32[$pitchEstimationLPCOrder47>>2] = 10; $52 = $psEncC$addr; $shapingLPCOrder48 = ((($52)) + 4632|0); HEAP32[$shapingLPCOrder48>>2] = 16; $53 = $psEncC$addr; $fs_kHz49 = ((($53)) + 4572|0); $54 = HEAP32[$fs_kHz49>>2]|0; $mul50 = ($54*5)|0; $55 = $psEncC$addr; $la_shape51 = ((($55)) + 4596|0); HEAP32[$la_shape51>>2] = $mul50; $56 = $psEncC$addr; $nStatesDelayedDecision52 = ((($56)) + 4624|0); HEAP32[$nStatesDelayedDecision52>>2] = 2; $57 = $psEncC$addr; $useInterpolatedNLSFs53 = ((($57)) + 4628|0); HEAP32[$useInterpolatedNLSFs53>>2] = 1; $58 = $psEncC$addr; $NLSF_MSVQ_Survivors54 = ((($58)) + 4656|0); HEAP32[$NLSF_MSVQ_Survivors54>>2] = 6; $59 = $psEncC$addr; $fs_kHz55 = ((($59)) + 4572|0); $60 = HEAP32[$fs_kHz55>>2]|0; $mul56 = ($60*983)|0; $61 = $psEncC$addr; $$sink$sink$sink$sink$sink$sink = $61;$mul86$sink$sink$sink$sink$sink$sink = $mul56; break; } $62 = $Complexity$addr; $cmp59 = ($62|0)<(8); $63 = $psEncC$addr; $pitchEstimationComplexity61 = ((($63)) + 4640|0); if ($cmp59) { HEAP32[$pitchEstimationComplexity61>>2] = 1; $64 = $psEncC$addr; $pitchEstimationThreshold_Q1662 = ((($64)) + 4648|0); HEAP32[$pitchEstimationThreshold_Q1662>>2] = 47186; $65 = $psEncC$addr; $pitchEstimationLPCOrder63 = ((($65)) + 4644|0); HEAP32[$pitchEstimationLPCOrder63>>2] = 12; $66 = $psEncC$addr; $shapingLPCOrder64 = ((($66)) + 4632|0); HEAP32[$shapingLPCOrder64>>2] = 20; $67 = $psEncC$addr; $fs_kHz65 = ((($67)) + 4572|0); $68 = HEAP32[$fs_kHz65>>2]|0; $mul66 = ($68*5)|0; $69 = $psEncC$addr; $la_shape67 = ((($69)) + 4596|0); HEAP32[$la_shape67>>2] = $mul66; $70 = $psEncC$addr; $nStatesDelayedDecision68 = ((($70)) + 4624|0); HEAP32[$nStatesDelayedDecision68>>2] = 3; $71 = $psEncC$addr; $useInterpolatedNLSFs69 = ((($71)) + 4628|0); HEAP32[$useInterpolatedNLSFs69>>2] = 1; $72 = $psEncC$addr; $NLSF_MSVQ_Survivors70 = ((($72)) + 4656|0); HEAP32[$NLSF_MSVQ_Survivors70>>2] = 8; $73 = $psEncC$addr; $fs_kHz71 = ((($73)) + 4572|0); $74 = HEAP32[$fs_kHz71>>2]|0; $mul72 = ($74*983)|0; $75 = $psEncC$addr; $$sink$sink$sink$sink$sink$sink = $75;$mul86$sink$sink$sink$sink$sink$sink = $mul72; break; } else { HEAP32[$pitchEstimationComplexity61>>2] = 2; $76 = $psEncC$addr; $pitchEstimationThreshold_Q1676 = ((($76)) + 4648|0); HEAP32[$pitchEstimationThreshold_Q1676>>2] = 45875; $77 = $psEncC$addr; $pitchEstimationLPCOrder77 = ((($77)) + 4644|0); HEAP32[$pitchEstimationLPCOrder77>>2] = 16; $78 = $psEncC$addr; $shapingLPCOrder78 = ((($78)) + 4632|0); HEAP32[$shapingLPCOrder78>>2] = 24; $79 = $psEncC$addr; $fs_kHz79 = ((($79)) + 4572|0); $80 = HEAP32[$fs_kHz79>>2]|0; $mul80 = ($80*5)|0; $81 = $psEncC$addr; $la_shape81 = ((($81)) + 4596|0); HEAP32[$la_shape81>>2] = $mul80; $82 = $psEncC$addr; $nStatesDelayedDecision82 = ((($82)) + 4624|0); HEAP32[$nStatesDelayedDecision82>>2] = 4; $83 = $psEncC$addr; $useInterpolatedNLSFs83 = ((($83)) + 4628|0); HEAP32[$useInterpolatedNLSFs83>>2] = 1; $84 = $psEncC$addr; $NLSF_MSVQ_Survivors84 = ((($84)) + 4656|0); HEAP32[$NLSF_MSVQ_Survivors84>>2] = 16; $85 = $psEncC$addr; $fs_kHz85 = ((($85)) + 4572|0); $86 = HEAP32[$fs_kHz85>>2]|0; $mul86 = ($86*983)|0; $87 = $psEncC$addr; $$sink$sink$sink$sink$sink$sink = $87;$mul86$sink$sink$sink$sink$sink$sink = $mul86; break; } } } while(0); $warping_Q1687 = ((($$sink$sink$sink$sink$sink$sink)) + 4668|0); HEAP32[$warping_Q1687>>2] = $mul86$sink$sink$sink$sink$sink$sink; $88 = $psEncC$addr; $pitchEstimationLPCOrder93 = ((($88)) + 4644|0); $89 = HEAP32[$pitchEstimationLPCOrder93>>2]|0; $90 = $psEncC$addr; $predictLPCOrder = ((($90)) + 4636|0); $91 = HEAP32[$predictLPCOrder>>2]|0; $call = (_silk_min_int($89,$91)|0); $92 = $psEncC$addr; $pitchEstimationLPCOrder94 = ((($92)) + 4644|0); HEAP32[$pitchEstimationLPCOrder94>>2] = $call; $93 = $psEncC$addr; $fs_kHz95 = ((($93)) + 4572|0); $94 = HEAP32[$fs_kHz95>>2]|0; $mul96 = ($94*5)|0; $95 = $psEncC$addr; $la_shape97 = ((($95)) + 4596|0); $96 = HEAP32[$la_shape97>>2]|0; $mul98 = $96<<1; $add = (($mul96) + ($mul98))|0; $97 = $psEncC$addr; $shapeWinLength = ((($97)) + 4600|0); HEAP32[$shapeWinLength>>2] = $add; $98 = $Complexity$addr; $99 = $psEncC$addr; $Complexity99 = ((($99)) + 4620|0); HEAP32[$Complexity99>>2] = $98; $100 = $ret; STACKTOP = sp;return ($100|0); } function _silk_setup_LBRR($psEncC,$encControl) { $psEncC = $psEncC|0; $encControl = $encControl|0; var $$sink = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $LBRR_GainIncreases7 = 0, $LBRR_coded = 0, $LBRR_enabled = 0, $LBRR_enabled1 = 0, $LBRR_enabled2 = 0; var $LBRR_in_previous_packet = 0, $PacketLoss_perc = 0, $PacketLoss_perc4 = 0, $add = 0, $and = 0, $call = 0, $call$sink = 0, $cmp = 0, $encControl$addr = 0, $mul = 0, $mul5 = 0, $psEncC$addr = 0, $ret = 0, $shr = 0, $shr6 = 0, $sub = 0, $tobool = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $psEncC$addr = $psEncC; $encControl$addr = $encControl; $ret = 0; $0 = $psEncC$addr; $LBRR_enabled = ((($0)) + 6088|0); $1 = HEAP32[$LBRR_enabled>>2]|0; $LBRR_in_previous_packet = $1; $2 = $encControl$addr; $LBRR_coded = ((($2)) + 44|0); $3 = HEAP32[$LBRR_coded>>2]|0; $4 = $psEncC$addr; $LBRR_enabled1 = ((($4)) + 6088|0); HEAP32[$LBRR_enabled1>>2] = $3; $5 = $psEncC$addr; $LBRR_enabled2 = ((($5)) + 6088|0); $6 = HEAP32[$LBRR_enabled2>>2]|0; $tobool = ($6|0)!=(0); if (!($tobool)) { $13 = $ret; STACKTOP = sp;return ($13|0); } $7 = $LBRR_in_previous_packet; $cmp = ($7|0)==(0); $8 = $psEncC$addr; if ($cmp) { $$sink = $8;$call$sink = 7; } else { $PacketLoss_perc = ((($8)) + 4612|0); $9 = HEAP32[$PacketLoss_perc>>2]|0; $shr = $9 >> 16; $mul = ($shr*26214)|0; $10 = $psEncC$addr; $PacketLoss_perc4 = ((($10)) + 4612|0); $11 = HEAP32[$PacketLoss_perc4>>2]|0; $and = $11 & 65535; $mul5 = ($and*26214)|0; $shr6 = $mul5 >> 16; $add = (($mul) + ($shr6))|0; $sub = (7 - ($add))|0; $call = (_silk_max_int_232($sub,2)|0); $12 = $psEncC$addr; $$sink = $12;$call$sink = $call; } $LBRR_GainIncreases7 = ((($$sink)) + 6092|0); HEAP32[$LBRR_GainIncreases7>>2] = $call$sink; $13 = $ret; STACKTOP = sp;return ($13|0); } function _silk_max_int_232($a,$b) { $a = $a|0; $b = $b|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $a$addr = 0, $b$addr = 0, $cmp = 0, $cond = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $a$addr = $a; $b$addr = $b; $0 = $a$addr; $1 = $b$addr; $cmp = ($0|0)>($1|0); $2 = $a$addr; $3 = $b$addr; $cond = $cmp ? $2 : $3; STACKTOP = sp;return ($cond|0); } function _silk_min_int($a,$b) { $a = $a|0; $b = $b|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $a$addr = 0, $b$addr = 0, $cmp = 0, $cond = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $a$addr = $a; $b$addr = $b; $0 = $a$addr; $1 = $b$addr; $cmp = ($0|0)<($1|0); $2 = $a$addr; $3 = $b$addr; $cond = $cmp ? $2 : $3; STACKTOP = sp;return ($cond|0); } function _silk_float2short_array($out,$in,$length) { $out = $out|0; $in = $in|0; $length = $length|0; var $0 = 0, $1 = 0, $10 = 0.0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0.0, $5 = 0, $6 = 0, $7 = 0.0, $8 = 0, $9 = 0, $arrayidx = 0, $arrayidx11 = 0, $arrayidx2 = 0, $arrayidx7 = 0, $call = 0, $call3 = 0; var $call8 = 0, $cmp = 0, $cmp1 = 0, $cmp4 = 0, $cond10 = 0, $conv = 0, $dec = 0, $in$addr = 0, $k = 0, $length$addr = 0, $out$addr = 0, $sub = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $out$addr = $out; $in$addr = $in; $length$addr = $length; $0 = $length$addr; $sub = (($0) - 1)|0; $k = $sub; while(1) { $1 = $k; $cmp = ($1|0)>=(0); if (!($cmp)) { break; } $2 = $in$addr; $3 = $k; $arrayidx = (($2) + ($3<<2)|0); $4 = +HEAPF32[$arrayidx>>2]; $call = (_lrintf($4)|0); $cmp1 = ($call|0)>(32767); if ($cmp1) { $cond10 = 32767; } else { $5 = $in$addr; $6 = $k; $arrayidx2 = (($5) + ($6<<2)|0); $7 = +HEAPF32[$arrayidx2>>2]; $call3 = (_lrintf($7)|0); $cmp4 = ($call3|0)<(-32768); if ($cmp4) { $cond10 = -32768; } else { $8 = $in$addr; $9 = $k; $arrayidx7 = (($8) + ($9<<2)|0); $10 = +HEAPF32[$arrayidx7>>2]; $call8 = (_lrintf($10)|0); $cond10 = $call8; } } $conv = $cond10&65535; $11 = $out$addr; $12 = $k; $arrayidx11 = (($11) + ($12<<1)|0); HEAP16[$arrayidx11>>1] = $conv; $13 = $k; $dec = (($13) + -1)|0; $k = $dec; } STACKTOP = sp;return; } function _silk_short2float_array($out,$in,$length) { $out = $out|0; $in = $in|0; $length = $length|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $arrayidx = 0, $arrayidx1 = 0, $cmp = 0, $conv = 0.0, $dec = 0, $in$addr = 0, $k = 0, $length$addr = 0, $out$addr = 0, $sub = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $out$addr = $out; $in$addr = $in; $length$addr = $length; $0 = $length$addr; $sub = (($0) - 1)|0; $k = $sub; while(1) { $1 = $k; $cmp = ($1|0)>=(0); if (!($cmp)) { break; } $2 = $in$addr; $3 = $k; $arrayidx = (($2) + ($3<<1)|0); $4 = HEAP16[$arrayidx>>1]|0; $conv = (+($4<<16>>16)); $5 = $out$addr; $6 = $k; $arrayidx1 = (($5) + ($6<<2)|0); HEAPF32[$arrayidx1>>2] = $conv; $7 = $k; $dec = (($7) + -1)|0; $k = $dec; } STACKTOP = sp;return; } function _silk_lin2log($inLin) { $inLin = $inLin|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $add = 0, $add6 = 0, $add8 = 0, $and = 0, $frac_Q7 = 0, $inLin$addr = 0, $lz = 0, $mul = 0, $mul1 = 0, $mul3 = 0, $mul4 = 0, $shl = 0, $shr = 0; var $shr5 = 0, $sub = 0, $sub2 = 0, $sub7 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $lz = sp + 4|0; $frac_Q7 = sp; $inLin$addr = $inLin; $0 = $inLin$addr; _silk_CLZ_FRAC($0,$lz,$frac_Q7); $1 = HEAP32[$frac_Q7>>2]|0; $2 = HEAP32[$frac_Q7>>2]|0; $3 = HEAP32[$frac_Q7>>2]|0; $sub = (128 - ($3))|0; $mul = Math_imul($2, $sub)|0; $shr = $mul >> 16; $mul1 = ($shr*179)|0; $4 = HEAP32[$frac_Q7>>2]|0; $5 = HEAP32[$frac_Q7>>2]|0; $sub2 = (128 - ($5))|0; $mul3 = Math_imul($4, $sub2)|0; $and = $mul3 & 65535; $mul4 = ($and*179)|0; $shr5 = $mul4 >> 16; $add = (($mul1) + ($shr5))|0; $add6 = (($1) + ($add))|0; $6 = HEAP32[$lz>>2]|0; $sub7 = (31 - ($6))|0; $shl = $sub7 << 7; $add8 = (($add6) + ($shl))|0; STACKTOP = sp;return ($add8|0); } function _silk_CLZ_FRAC($in,$lz,$frac_Q7) { $in = $in|0; $lz = $lz|0; $frac_Q7 = $frac_Q7|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $and = 0, $call = 0, $call1 = 0, $frac_Q7$addr = 0, $in$addr = 0, $lz$addr = 0, $lzeros = 0, $sub = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $in$addr = $in; $lz$addr = $lz; $frac_Q7$addr = $frac_Q7; $0 = $in$addr; $call = (_silk_CLZ32_235($0)|0); $lzeros = $call; $1 = $lzeros; $2 = $lz$addr; HEAP32[$2>>2] = $1; $3 = $in$addr; $4 = $lzeros; $sub = (24 - ($4))|0; $call1 = (_silk_ROR32($3,$sub)|0); $and = $call1 & 127; $5 = $frac_Q7$addr; HEAP32[$5>>2] = $and; STACKTOP = sp;return; } function _silk_CLZ32_235($in32) { $in32 = $in32|0; var $0 = 0, $1 = 0, $2 = 0, $cond = 0, $in32$addr = 0, $sub = 0, $sub1 = 0, $tobool = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $in32$addr = $in32; $0 = $in32$addr; $tobool = ($0|0)!=(0); if (!($tobool)) { $cond = 32; STACKTOP = sp;return ($cond|0); } $1 = $in32$addr; $2 = (Math_clz32(($1|0))|0); $sub = (32 - ($2))|0; $sub1 = (32 - ($sub))|0; $cond = $sub1; STACKTOP = sp;return ($cond|0); } function _silk_ROR32($a32,$rot) { $a32 = $a32|0; $rot = $rot|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $a32$addr = 0, $cmp = 0, $cmp1 = 0, $m = 0, $or = 0, $or8 = 0; var $r = 0, $retval = 0, $rot$addr = 0, $shl = 0, $shl6 = 0, $shr = 0, $shr7 = 0, $sub = 0, $sub3 = 0, $sub5 = 0, $x = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $a32$addr = $a32; $rot$addr = $rot; $0 = $a32$addr; $x = $0; $1 = $rot$addr; $r = $1; $2 = $rot$addr; $sub = (0 - ($2))|0; $m = $sub; $3 = $rot$addr; $cmp = ($3|0)==(0); if ($cmp) { $4 = $a32$addr; $retval = $4; $13 = $retval; STACKTOP = sp;return ($13|0); } $5 = $rot$addr; $cmp1 = ($5|0)<(0); $6 = $x; if ($cmp1) { $7 = $m; $shl = $6 << $7; $8 = $x; $9 = $m; $sub3 = (32 - ($9))|0; $shr = $8 >>> $sub3; $or = $shl | $shr; $retval = $or; $13 = $retval; STACKTOP = sp;return ($13|0); } else { $10 = $r; $sub5 = (32 - ($10))|0; $shl6 = $6 << $sub5; $11 = $x; $12 = $r; $shr7 = $11 >>> $12; $or8 = $shl6 | $shr7; $retval = $or8; $13 = $retval; STACKTOP = sp;return ($13|0); } return (0)|0; } function _silk_log2lin($inLog_Q7) { $inLog_Q7 = $inLog_Q7|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0; var $add20 = 0, $add23 = 0, $add43 = 0, $add44 = 0, $add46 = 0, $and = 0, $and17 = 0, $and40 = 0, $cmp = 0, $cmp1 = 0, $cmp4 = 0, $conv = 0, $conv11 = 0, $conv12 = 0, $conv14 = 0, $conv15 = 0, $conv26 = 0, $conv27 = 0, $conv29 = 0, $conv30 = 0; var $conv34 = 0, $conv35 = 0, $conv37 = 0, $conv38 = 0, $conv6 = 0, $conv7 = 0, $conv8 = 0, $frac_Q7 = 0, $inLog_Q7$addr = 0, $mul = 0, $mul10 = 0, $mul16 = 0, $mul18 = 0, $mul21 = 0, $mul31 = 0, $mul33 = 0, $mul39 = 0, $mul41 = 0, $mul45 = 0, $out = 0; var $retval = 0, $shl = 0, $shr = 0, $shr19 = 0, $shr22 = 0, $shr25 = 0, $shr32 = 0, $shr42 = 0, $shr9 = 0, $sub = 0, $sub13 = 0, $sub28 = 0, $sub36 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $inLog_Q7$addr = $inLog_Q7; $0 = $inLog_Q7$addr; $cmp = ($0|0)<(0); if ($cmp) { $retval = 0; $18 = $retval; STACKTOP = sp;return ($18|0); } $1 = $inLog_Q7$addr; $cmp1 = ($1|0)>=(3967); if ($cmp1) { $retval = 2147483647; $18 = $retval; STACKTOP = sp;return ($18|0); } $2 = $inLog_Q7$addr; $shr = $2 >> 7; $shl = 1 << $shr; $out = $shl; $3 = $inLog_Q7$addr; $and = $3 & 127; $frac_Q7 = $and; $4 = $inLog_Q7$addr; $cmp4 = ($4|0)<(2048); $5 = $out; $6 = $out; if ($cmp4) { $7 = $frac_Q7; $8 = $frac_Q7; $conv = $8&65535; $conv6 = $conv << 16 >> 16; $9 = $frac_Q7; $sub = (128 - ($9))|0; $conv7 = $sub&65535; $conv8 = $conv7 << 16 >> 16; $mul = Math_imul($conv6, $conv8)|0; $shr9 = $mul >> 16; $mul10 = Math_imul($shr9, -174)|0; $10 = $frac_Q7; $conv11 = $10&65535; $conv12 = $conv11 << 16 >> 16; $11 = $frac_Q7; $sub13 = (128 - ($11))|0; $conv14 = $sub13&65535; $conv15 = $conv14 << 16 >> 16; $mul16 = Math_imul($conv12, $conv15)|0; $and17 = $mul16 & 65535; $mul18 = Math_imul($and17, -174)|0; $shr19 = $mul18 >> 16; $add = (($mul10) + ($shr19))|0; $add20 = (($7) + ($add))|0; $mul21 = Math_imul($6, $add20)|0; $shr22 = $mul21 >> 7; $add23 = (($5) + ($shr22))|0; $out = $add23; } else { $shr25 = $6 >> 7; $12 = $frac_Q7; $13 = $frac_Q7; $conv26 = $13&65535; $conv27 = $conv26 << 16 >> 16; $14 = $frac_Q7; $sub28 = (128 - ($14))|0; $conv29 = $sub28&65535; $conv30 = $conv29 << 16 >> 16; $mul31 = Math_imul($conv27, $conv30)|0; $shr32 = $mul31 >> 16; $mul33 = Math_imul($shr32, -174)|0; $15 = $frac_Q7; $conv34 = $15&65535; $conv35 = $conv34 << 16 >> 16; $16 = $frac_Q7; $sub36 = (128 - ($16))|0; $conv37 = $sub36&65535; $conv38 = $conv37 << 16 >> 16; $mul39 = Math_imul($conv35, $conv38)|0; $and40 = $mul39 & 65535; $mul41 = Math_imul($and40, -174)|0; $shr42 = $mul41 >> 16; $add43 = (($mul33) + ($shr42))|0; $add44 = (($12) + ($add43))|0; $mul45 = Math_imul($shr25, $add44)|0; $add46 = (($5) + ($mul45))|0; $out = $add46; } $17 = $out; $retval = $17; $18 = $retval; STACKTOP = sp;return ($18|0); } function _silk_resampler_init($S,$Fs_Hz_in,$Fs_Hz_out,$forEnc) { $S = $S|0; $Fs_Hz_in = $Fs_Hz_in|0; $Fs_Hz_out = $Fs_Hz_out|0; $forEnc = $forEnc|0; var $$sink = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0; var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $Coefs = 0, $Coefs105 = 0, $Coefs113 = 0, $Coefs121 = 0, $Coefs129 = 0, $Coefs137 = 0, $FIR_Fracs = 0; var $FIR_Fracs103 = 0, $FIR_Fracs111 = 0, $FIR_Fracs119 = 0, $FIR_Fracs127 = 0, $FIR_Fracs135 = 0, $FIR_Order = 0, $FIR_Order104 = 0, $FIR_Order112 = 0, $FIR_Order120 = 0, $FIR_Order128 = 0, $FIR_Order136 = 0, $Fs_Hz_in$addr = 0, $Fs_Hz_out$addr = 0, $Fs_in_kHz = 0, $Fs_in_kHz76 = 0, $Fs_out_kHz = 0, $S$addr = 0, $add = 0, $add161 = 0, $add164 = 0; var $add167 = 0, $and = 0, $arrayidx = 0, $arrayidx27 = 0, $arrayidx62 = 0, $arrayidx71 = 0, $batchSize = 0, $cmp = 0, $cmp1 = 0, $cmp10 = 0, $cmp100 = 0, $cmp108 = 0, $cmp116 = 0, $cmp12 = 0, $cmp124 = 0, $cmp132 = 0, $cmp14 = 0, $cmp15 = 0, $cmp169 = 0, $cmp20 = 0; var $cmp23 = 0, $cmp3 = 0, $cmp38 = 0, $cmp41 = 0, $cmp44 = 0, $cmp47 = 0, $cmp5 = 0, $cmp50 = 0, $cmp55 = 0, $cmp58 = 0, $cmp64 = 0, $cmp67 = 0, $cmp7 = 0, $cmp77 = 0, $cmp8 = 0, $cmp81 = 0, $cmp88 = 0, $cmp94 = 0, $conv = 0, $conv153 = 0; var $conv154 = 0, $conv157 = 0, $conv158 = 0, $conv16 = 0, $conv21 = 0, $conv24 = 0, $conv28 = 0, $conv56 = 0, $conv59 = 0, $conv65 = 0, $conv68 = 0, $conv72 = 0, $conv72$sink = 0, $div = 0, $div149 = 0, $div75 = 0, $forEnc$addr = 0, $inc = 0, $inputDelay73 = 0, $invRatio_Q16 = 0; var $invRatio_Q16151 = 0, $invRatio_Q16156 = 0, $invRatio_Q16162 = 0, $invRatio_Q16171 = 0, $mul = 0, $mul107 = 0, $mul115 = 0, $mul123 = 0, $mul131 = 0, $mul155 = 0, $mul159 = 0, $mul166 = 0, $mul80 = 0, $mul92 = 0, $mul93 = 0, $mul98 = 0, $mul99 = 0, $or$cond = 0, $or$cond1 = 0, $or$cond10 = 0; var $or$cond11 = 0, $or$cond2 = 0, $or$cond3 = 0, $or$cond4 = 0, $or$cond5 = 0, $or$cond8 = 0, $or$cond9 = 0, $resampler_function = 0, $resampler_function91 = 0, $retval = 0, $shl = 0, $shl150 = 0, $shl168 = 0, $shr = 0, $shr152 = 0, $shr160 = 0, $shr163 = 0, $shr165 = 0, $shr17 = 0, $shr19 = 0; var $shr25 = 0, $shr54 = 0, $shr60 = 0, $shr63 = 0, $shr69 = 0, $sub = 0, $sub18 = 0, $sub22 = 0, $sub26 = 0, $sub57 = 0, $sub61 = 0, $sub66 = 0, $sub70 = 0, $tobool = 0, $up2x = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $S$addr = $S; $Fs_Hz_in$addr = $Fs_Hz_in; $Fs_Hz_out$addr = $Fs_Hz_out; $forEnc$addr = $forEnc; $0 = $S$addr; _memset(($0|0),0,300)|0; $1 = $forEnc$addr; $tobool = ($1|0)!=(0); $2 = $Fs_Hz_in$addr; $cmp = ($2|0)!=(8000); $3 = $Fs_Hz_in$addr; $cmp1 = ($3|0)!=(12000); $or$cond = $cmp & $cmp1; $4 = $Fs_Hz_in$addr; $cmp3 = ($4|0)!=(16000); $or$cond1 = $or$cond & $cmp3; do { if ($tobool) { $5 = $Fs_Hz_in$addr; $cmp5 = ($5|0)!=(24000); $or$cond2 = $or$cond1 & $cmp5; $6 = $Fs_Hz_in$addr; $cmp7 = ($6|0)!=(48000); $or$cond3 = $or$cond2 & $cmp7; if (!($or$cond3)) { $7 = $Fs_Hz_out$addr; $cmp8 = ($7|0)!=(8000); $8 = $Fs_Hz_out$addr; $cmp10 = ($8|0)!=(12000); $or$cond4 = $cmp8 & $cmp10; $9 = $Fs_Hz_out$addr; $cmp12 = ($9|0)!=(16000); $or$cond5 = $or$cond4 & $cmp12; if (!($or$cond5)) { $10 = $Fs_Hz_in$addr; $shr = $10 >> 12; $11 = $Fs_Hz_in$addr; $cmp14 = ($11|0)>(16000); $conv = $cmp14&1; $sub = (($shr) - ($conv))|0; $12 = $Fs_Hz_in$addr; $cmp15 = ($12|0)>(24000); $conv16 = $cmp15&1; $shr17 = $sub >> $conv16; $sub18 = (($shr17) - 1)|0; $arrayidx = (34024 + (($sub18*3)|0)|0); $13 = $Fs_Hz_out$addr; $shr19 = $13 >> 12; $14 = $Fs_Hz_out$addr; $cmp20 = ($14|0)>(16000); $conv21 = $cmp20&1; $sub22 = (($shr19) - ($conv21))|0; $15 = $Fs_Hz_out$addr; $cmp23 = ($15|0)>(24000); $conv24 = $cmp23&1; $shr25 = $sub22 >> $conv24; $sub26 = (($shr25) - 1)|0; $arrayidx27 = (($arrayidx) + ($sub26)|0); $16 = HEAP8[$arrayidx27>>0]|0; $conv28 = $16 << 24 >> 24; $17 = $S$addr; $$sink = $17;$conv72$sink = $conv28; break; } } $retval = -1; $91 = $retval; STACKTOP = sp;return ($91|0); } else { if (!($or$cond1)) { $18 = $Fs_Hz_out$addr; $cmp38 = ($18|0)!=(8000); $19 = $Fs_Hz_out$addr; $cmp41 = ($19|0)!=(12000); $or$cond8 = $cmp38 & $cmp41; $20 = $Fs_Hz_out$addr; $cmp44 = ($20|0)!=(16000); $or$cond9 = $or$cond8 & $cmp44; $21 = $Fs_Hz_out$addr; $cmp47 = ($21|0)!=(24000); $or$cond10 = $or$cond9 & $cmp47; $22 = $Fs_Hz_out$addr; $cmp50 = ($22|0)!=(48000); $or$cond11 = $or$cond10 & $cmp50; if (!($or$cond11)) { $23 = $Fs_Hz_in$addr; $shr54 = $23 >> 12; $24 = $Fs_Hz_in$addr; $cmp55 = ($24|0)>(16000); $conv56 = $cmp55&1; $sub57 = (($shr54) - ($conv56))|0; $25 = $Fs_Hz_in$addr; $cmp58 = ($25|0)>(24000); $conv59 = $cmp58&1; $shr60 = $sub57 >> $conv59; $sub61 = (($shr60) - 1)|0; $arrayidx62 = (34039 + (($sub61*5)|0)|0); $26 = $Fs_Hz_out$addr; $shr63 = $26 >> 12; $27 = $Fs_Hz_out$addr; $cmp64 = ($27|0)>(16000); $conv65 = $cmp64&1; $sub66 = (($shr63) - ($conv65))|0; $28 = $Fs_Hz_out$addr; $cmp67 = ($28|0)>(24000); $conv68 = $cmp67&1; $shr69 = $sub66 >> $conv68; $sub70 = (($shr69) - 1)|0; $arrayidx71 = (($arrayidx62) + ($sub70)|0); $29 = HEAP8[$arrayidx71>>0]|0; $conv72 = $29 << 24 >> 24; $30 = $S$addr; $$sink = $30;$conv72$sink = $conv72; break; } } $retval = -1; $91 = $retval; STACKTOP = sp;return ($91|0); } } while(0); $inputDelay73 = ((($$sink)) + 292|0); HEAP32[$inputDelay73>>2] = $conv72$sink; $31 = $Fs_Hz_in$addr; $div = (($31|0) / 1000)&-1; $32 = $S$addr; $Fs_in_kHz = ((($32)) + 284|0); HEAP32[$Fs_in_kHz>>2] = $div; $33 = $Fs_Hz_out$addr; $div75 = (($33|0) / 1000)&-1; $34 = $S$addr; $Fs_out_kHz = ((($34)) + 288|0); HEAP32[$Fs_out_kHz>>2] = $div75; $35 = $S$addr; $Fs_in_kHz76 = ((($35)) + 284|0); $36 = HEAP32[$Fs_in_kHz76>>2]|0; $mul = ($36*10)|0; $37 = $S$addr; $batchSize = ((($37)) + 268|0); HEAP32[$batchSize>>2] = $mul; $up2x = 0; $38 = $Fs_Hz_out$addr; $39 = $Fs_Hz_in$addr; $cmp77 = ($38|0)>($39|0); $40 = $Fs_Hz_out$addr; $41 = $Fs_Hz_in$addr; do { if ($cmp77) { $mul80 = $41<<1; $cmp81 = ($40|0)==($mul80|0); $42 = $S$addr; $resampler_function = ((($42)) + 264|0); if ($cmp81) { HEAP32[$resampler_function>>2] = 1; break; } else { HEAP32[$resampler_function>>2] = 2; $up2x = 1; break; } } else { $cmp88 = ($40|0)<($41|0); $43 = $S$addr; $resampler_function91 = ((($43)) + 264|0); if (!($cmp88)) { HEAP32[$resampler_function91>>2] = 0; break; } HEAP32[$resampler_function91>>2] = 3; $44 = $Fs_Hz_out$addr; $mul92 = $44<<2; $45 = $Fs_Hz_in$addr; $mul93 = ($45*3)|0; $cmp94 = ($mul92|0)==($mul93|0); if ($cmp94) { $46 = $S$addr; $FIR_Fracs = ((($46)) + 280|0); HEAP32[$FIR_Fracs>>2] = 3; $47 = $S$addr; $FIR_Order = ((($47)) + 276|0); HEAP32[$FIR_Order>>2] = 18; $48 = $S$addr; $Coefs = ((($48)) + 296|0); HEAP32[$Coefs>>2] = 23538; break; } $49 = $Fs_Hz_out$addr; $mul98 = ($49*3)|0; $50 = $Fs_Hz_in$addr; $mul99 = $50<<1; $cmp100 = ($mul98|0)==($mul99|0); if ($cmp100) { $51 = $S$addr; $FIR_Fracs103 = ((($51)) + 280|0); HEAP32[$FIR_Fracs103>>2] = 2; $52 = $S$addr; $FIR_Order104 = ((($52)) + 276|0); HEAP32[$FIR_Order104>>2] = 18; $53 = $S$addr; $Coefs105 = ((($53)) + 296|0); HEAP32[$Coefs105>>2] = 23596; break; } $54 = $Fs_Hz_out$addr; $mul107 = $54<<1; $55 = $Fs_Hz_in$addr; $cmp108 = ($mul107|0)==($55|0); if ($cmp108) { $56 = $S$addr; $FIR_Fracs111 = ((($56)) + 280|0); HEAP32[$FIR_Fracs111>>2] = 1; $57 = $S$addr; $FIR_Order112 = ((($57)) + 276|0); HEAP32[$FIR_Order112>>2] = 24; $58 = $S$addr; $Coefs113 = ((($58)) + 296|0); HEAP32[$Coefs113>>2] = 23636; break; } $59 = $Fs_Hz_out$addr; $mul115 = ($59*3)|0; $60 = $Fs_Hz_in$addr; $cmp116 = ($mul115|0)==($60|0); if ($cmp116) { $61 = $S$addr; $FIR_Fracs119 = ((($61)) + 280|0); HEAP32[$FIR_Fracs119>>2] = 1; $62 = $S$addr; $FIR_Order120 = ((($62)) + 276|0); HEAP32[$FIR_Order120>>2] = 36; $63 = $S$addr; $Coefs121 = ((($63)) + 296|0); HEAP32[$Coefs121>>2] = 23664; break; } $64 = $Fs_Hz_out$addr; $mul123 = $64<<2; $65 = $Fs_Hz_in$addr; $cmp124 = ($mul123|0)==($65|0); if ($cmp124) { $66 = $S$addr; $FIR_Fracs127 = ((($66)) + 280|0); HEAP32[$FIR_Fracs127>>2] = 1; $67 = $S$addr; $FIR_Order128 = ((($67)) + 276|0); HEAP32[$FIR_Order128>>2] = 36; $68 = $S$addr; $Coefs129 = ((($68)) + 296|0); HEAP32[$Coefs129>>2] = 23704; break; } $69 = $Fs_Hz_out$addr; $mul131 = ($69*6)|0; $70 = $Fs_Hz_in$addr; $cmp132 = ($mul131|0)==($70|0); if ($cmp132) { $71 = $S$addr; $FIR_Fracs135 = ((($71)) + 280|0); HEAP32[$FIR_Fracs135>>2] = 1; $72 = $S$addr; $FIR_Order136 = ((($72)) + 276|0); HEAP32[$FIR_Order136>>2] = 36; $73 = $S$addr; $Coefs137 = ((($73)) + 296|0); HEAP32[$Coefs137>>2] = 23744; break; } $retval = -1; $91 = $retval; STACKTOP = sp;return ($91|0); } } while(0); $74 = $Fs_Hz_in$addr; $75 = $up2x; $add = (14 + ($75))|0; $shl = $74 << $add; $76 = $Fs_Hz_out$addr; $div149 = (($shl|0) / ($76|0))&-1; $shl150 = $div149 << 2; $77 = $S$addr; $invRatio_Q16 = ((($77)) + 272|0); HEAP32[$invRatio_Q16>>2] = $shl150; while(1) { $78 = $S$addr; $invRatio_Q16151 = ((($78)) + 272|0); $79 = HEAP32[$invRatio_Q16151>>2]|0; $shr152 = $79 >> 16; $80 = $Fs_Hz_out$addr; $conv153 = $80&65535; $conv154 = $conv153 << 16 >> 16; $mul155 = Math_imul($shr152, $conv154)|0; $81 = $S$addr; $invRatio_Q16156 = ((($81)) + 272|0); $82 = HEAP32[$invRatio_Q16156>>2]|0; $and = $82 & 65535; $83 = $Fs_Hz_out$addr; $conv157 = $83&65535; $conv158 = $conv157 << 16 >> 16; $mul159 = Math_imul($and, $conv158)|0; $shr160 = $mul159 >> 16; $add161 = (($mul155) + ($shr160))|0; $84 = $S$addr; $invRatio_Q16162 = ((($84)) + 272|0); $85 = HEAP32[$invRatio_Q16162>>2]|0; $86 = $Fs_Hz_out$addr; $shr163 = $86 >> 15; $add164 = (($shr163) + 1)|0; $shr165 = $add164 >> 1; $mul166 = Math_imul($85, $shr165)|0; $add167 = (($add161) + ($mul166))|0; $87 = $Fs_Hz_in$addr; $88 = $up2x; $shl168 = $87 << $88; $cmp169 = ($add167|0)<($shl168|0); if (!($cmp169)) { break; } $89 = $S$addr; $invRatio_Q16171 = ((($89)) + 272|0); $90 = HEAP32[$invRatio_Q16171>>2]|0; $inc = (($90) + 1)|0; HEAP32[$invRatio_Q16171>>2] = $inc; } $retval = 0; $91 = $retval; STACKTOP = sp;return ($91|0); } function _silk_resampler($S,$out,$in,$inLen) { $S = $S|0; $out = $out|0; $in = $in|0; $inLen = $inLen|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $8 = 0, $9 = 0, $Fs_in_kHz = 0, $Fs_in_kHz11 = 0, $Fs_in_kHz15 = 0, $Fs_in_kHz20 = 0, $Fs_in_kHz24 = 0, $Fs_in_kHz28 = 0, $Fs_in_kHz3 = 0, $Fs_in_kHz33 = 0; var $Fs_in_kHz6 = 0, $Fs_out_kHz = 0, $Fs_out_kHz12 = 0, $Fs_out_kHz21 = 0, $Fs_out_kHz30 = 0, $S$addr = 0, $arrayidx = 0, $arrayidx13 = 0, $arrayidx14 = 0, $arrayidx22 = 0, $arrayidx23 = 0, $arrayidx31 = 0, $arrayidx32 = 0, $arrayidx4 = 0, $arrayidx40 = 0, $arrayidx5 = 0, $delayBuf = 0, $delayBuf18 = 0, $delayBuf2 = 0, $delayBuf26 = 0; var $delayBuf36 = 0, $delayBuf9 = 0, $in$addr = 0, $inLen$addr = 0, $inputDelay = 0, $inputDelay1 = 0, $inputDelay38 = 0, $inputDelay41 = 0, $mul = 0, $mul29 = 0, $mul35 = 0, $mul42 = 0, $nSamples = 0, $out$addr = 0, $resampler_function = 0, $sub = 0, $sub16 = 0, $sub25 = 0, $sub34 = 0, $sub39 = 0; var $sub7 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $S$addr = $S; $out$addr = $out; $in$addr = $in; $inLen$addr = $inLen; $0 = $S$addr; $Fs_in_kHz = ((($0)) + 284|0); $1 = HEAP32[$Fs_in_kHz>>2]|0; $2 = $S$addr; $inputDelay = ((($2)) + 292|0); $3 = HEAP32[$inputDelay>>2]|0; $sub = (($1) - ($3))|0; $nSamples = $sub; $4 = $S$addr; $delayBuf = ((($4)) + 168|0); $5 = $S$addr; $inputDelay1 = ((($5)) + 292|0); $6 = HEAP32[$inputDelay1>>2]|0; $arrayidx = (($delayBuf) + ($6<<1)|0); $7 = $in$addr; $8 = $nSamples; $mul = $8<<1; _memcpy(($arrayidx|0),($7|0),($mul|0))|0; $9 = $S$addr; $resampler_function = ((($9)) + 264|0); $10 = HEAP32[$resampler_function>>2]|0; switch ($10|0) { case 1: { $11 = $S$addr; $12 = $out$addr; $13 = $S$addr; $delayBuf2 = ((($13)) + 168|0); $14 = $S$addr; $Fs_in_kHz3 = ((($14)) + 284|0); $15 = HEAP32[$Fs_in_kHz3>>2]|0; _silk_resampler_private_up2_HQ_wrapper($11,$12,$delayBuf2,$15); $16 = $S$addr; $17 = $out$addr; $18 = $S$addr; $Fs_out_kHz = ((($18)) + 288|0); $19 = HEAP32[$Fs_out_kHz>>2]|0; $arrayidx4 = (($17) + ($19<<1)|0); $20 = $in$addr; $21 = $nSamples; $arrayidx5 = (($20) + ($21<<1)|0); $22 = $inLen$addr; $23 = $S$addr; $Fs_in_kHz6 = ((($23)) + 284|0); $24 = HEAP32[$Fs_in_kHz6>>2]|0; $sub7 = (($22) - ($24))|0; _silk_resampler_private_up2_HQ_wrapper($16,$arrayidx4,$arrayidx5,$sub7); break; } case 2: { $25 = $S$addr; $26 = $out$addr; $27 = $S$addr; $delayBuf9 = ((($27)) + 168|0); $28 = $S$addr; $Fs_in_kHz11 = ((($28)) + 284|0); $29 = HEAP32[$Fs_in_kHz11>>2]|0; _silk_resampler_private_IIR_FIR($25,$26,$delayBuf9,$29); $30 = $S$addr; $31 = $out$addr; $32 = $S$addr; $Fs_out_kHz12 = ((($32)) + 288|0); $33 = HEAP32[$Fs_out_kHz12>>2]|0; $arrayidx13 = (($31) + ($33<<1)|0); $34 = $in$addr; $35 = $nSamples; $arrayidx14 = (($34) + ($35<<1)|0); $36 = $inLen$addr; $37 = $S$addr; $Fs_in_kHz15 = ((($37)) + 284|0); $38 = HEAP32[$Fs_in_kHz15>>2]|0; $sub16 = (($36) - ($38))|0; _silk_resampler_private_IIR_FIR($30,$arrayidx13,$arrayidx14,$sub16); break; } case 3: { $39 = $S$addr; $40 = $out$addr; $41 = $S$addr; $delayBuf18 = ((($41)) + 168|0); $42 = $S$addr; $Fs_in_kHz20 = ((($42)) + 284|0); $43 = HEAP32[$Fs_in_kHz20>>2]|0; _silk_resampler_private_down_FIR($39,$40,$delayBuf18,$43); $44 = $S$addr; $45 = $out$addr; $46 = $S$addr; $Fs_out_kHz21 = ((($46)) + 288|0); $47 = HEAP32[$Fs_out_kHz21>>2]|0; $arrayidx22 = (($45) + ($47<<1)|0); $48 = $in$addr; $49 = $nSamples; $arrayidx23 = (($48) + ($49<<1)|0); $50 = $inLen$addr; $51 = $S$addr; $Fs_in_kHz24 = ((($51)) + 284|0); $52 = HEAP32[$Fs_in_kHz24>>2]|0; $sub25 = (($50) - ($52))|0; _silk_resampler_private_down_FIR($44,$arrayidx22,$arrayidx23,$sub25); break; } default: { $53 = $out$addr; $54 = $S$addr; $delayBuf26 = ((($54)) + 168|0); $55 = $S$addr; $Fs_in_kHz28 = ((($55)) + 284|0); $56 = HEAP32[$Fs_in_kHz28>>2]|0; $mul29 = $56<<1; _memcpy(($53|0),($delayBuf26|0),($mul29|0))|0; $57 = $out$addr; $58 = $S$addr; $Fs_out_kHz30 = ((($58)) + 288|0); $59 = HEAP32[$Fs_out_kHz30>>2]|0; $arrayidx31 = (($57) + ($59<<1)|0); $60 = $in$addr; $61 = $nSamples; $arrayidx32 = (($60) + ($61<<1)|0); $62 = $inLen$addr; $63 = $S$addr; $Fs_in_kHz33 = ((($63)) + 284|0); $64 = HEAP32[$Fs_in_kHz33>>2]|0; $sub34 = (($62) - ($64))|0; $mul35 = $sub34<<1; _memcpy(($arrayidx31|0),($arrayidx32|0),($mul35|0))|0; } } $65 = $S$addr; $delayBuf36 = ((($65)) + 168|0); $66 = $in$addr; $67 = $inLen$addr; $68 = $S$addr; $inputDelay38 = ((($68)) + 292|0); $69 = HEAP32[$inputDelay38>>2]|0; $sub39 = (($67) - ($69))|0; $arrayidx40 = (($66) + ($sub39<<1)|0); $70 = $S$addr; $inputDelay41 = ((($70)) + 292|0); $71 = HEAP32[$inputDelay41>>2]|0; $mul42 = $71<<1; _memcpy(($delayBuf36|0),($arrayidx40|0),($mul42|0))|0; STACKTOP = sp;return 0; } function _silk_resampler_private_down_FIR($SS,$out,$in,$inLen) { $SS = $SS|0; $out = $out|0; $in = $in|0; $inLen = $inLen|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $Coefs = 0, $Coefs7 = 0, $FIR_Coefs = 0, $FIR_Fracs = 0, $FIR_Order = 0, $FIR_Order1 = 0, $FIR_Order11 = 0, $FIR_Order17 = 0, $FIR_Order5 = 0, $FIR_Order8 = 0, $S = 0, $SS$addr = 0; var $add = 0, $add$ptr = 0, $arrayidx = 0, $arrayidx10 = 0, $arrayidx16 = 0, $arrayidx6 = 0, $batchSize = 0, $batchSize2 = 0, $batchSize3 = 0, $call = 0, $cmp = 0, $cmp9 = 0, $cond = 0, $in$addr = 0, $inLen$addr = 0, $index_increment_Q16 = 0, $invRatio_Q16 = 0, $max_index_Q16 = 0, $mul = 0, $mul12 = 0; var $mul18 = 0, $nSamplesIn = 0, $out$addr = 0, $sFIR = 0, $sFIR13 = 0, $saved_stack = 0, $shl = 0, $sub = 0, $vla = 0, $vla$alloca_mul = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $SS$addr = $SS; $out$addr = $out; $in$addr = $in; $inLen$addr = $inLen; $0 = $SS$addr; $S = $0; $1 = $S; $batchSize = ((($1)) + 268|0); $2 = HEAP32[$batchSize>>2]|0; $3 = $S; $FIR_Order = ((($3)) + 276|0); $4 = HEAP32[$FIR_Order>>2]|0; $add = (($2) + ($4))|0; $5 = (_llvm_stacksave()|0); $saved_stack = $5; $vla$alloca_mul = $add<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $6 = $S; $sFIR = ((($6)) + 24|0); $7 = $S; $FIR_Order1 = ((($7)) + 276|0); $8 = HEAP32[$FIR_Order1>>2]|0; $mul = $8<<2; _memcpy(($vla|0),($sFIR|0),($mul|0))|0; $9 = $S; $Coefs = ((($9)) + 296|0); $10 = HEAP32[$Coefs>>2]|0; $arrayidx = ((($10)) + 4|0); $FIR_Coefs = $arrayidx; $11 = $S; $invRatio_Q16 = ((($11)) + 272|0); $12 = HEAP32[$invRatio_Q16>>2]|0; $index_increment_Q16 = $12; while(1) { $13 = $inLen$addr; $14 = $S; $batchSize2 = ((($14)) + 268|0); $15 = HEAP32[$batchSize2>>2]|0; $cmp = ($13|0)<($15|0); if ($cmp) { $16 = $inLen$addr; $cond = $16; } else { $17 = $S; $batchSize3 = ((($17)) + 268|0); $18 = HEAP32[$batchSize3>>2]|0; $cond = $18; } $nSamplesIn = $cond; $19 = $S; $20 = $S; $FIR_Order5 = ((($20)) + 276|0); $21 = HEAP32[$FIR_Order5>>2]|0; $arrayidx6 = (($vla) + ($21<<2)|0); $22 = $in$addr; $23 = $S; $Coefs7 = ((($23)) + 296|0); $24 = HEAP32[$Coefs7>>2]|0; $25 = $nSamplesIn; _silk_resampler_private_AR2($19,$arrayidx6,$22,$24,$25); $26 = $nSamplesIn; $shl = $26 << 16; $max_index_Q16 = $shl; $27 = $out$addr; $28 = $FIR_Coefs; $29 = $S; $FIR_Order8 = ((($29)) + 276|0); $30 = HEAP32[$FIR_Order8>>2]|0; $31 = $S; $FIR_Fracs = ((($31)) + 280|0); $32 = HEAP32[$FIR_Fracs>>2]|0; $33 = $max_index_Q16; $34 = $index_increment_Q16; $call = (_silk_resampler_private_down_FIR_INTERPOL($27,$vla,$28,$30,$32,$33,$34)|0); $out$addr = $call; $35 = $nSamplesIn; $36 = $in$addr; $add$ptr = (($36) + ($35<<1)|0); $in$addr = $add$ptr; $37 = $nSamplesIn; $38 = $inLen$addr; $sub = (($38) - ($37))|0; $inLen$addr = $sub; $39 = $inLen$addr; $cmp9 = ($39|0)>(1); if (!($cmp9)) { break; } $40 = $nSamplesIn; $arrayidx10 = (($vla) + ($40<<2)|0); $41 = $S; $FIR_Order11 = ((($41)) + 276|0); $42 = HEAP32[$FIR_Order11>>2]|0; $mul12 = $42<<2; _memcpy(($vla|0),($arrayidx10|0),($mul12|0))|0; } $43 = $S; $sFIR13 = ((($43)) + 24|0); $44 = $nSamplesIn; $arrayidx16 = (($vla) + ($44<<2)|0); $45 = $S; $FIR_Order17 = ((($45)) + 276|0); $46 = HEAP32[$FIR_Order17>>2]|0; $mul18 = $46<<2; _memcpy(($sFIR13|0),($arrayidx16|0),($mul18|0))|0; $47 = $saved_stack; _llvm_stackrestore(($47|0)); STACKTOP = sp;return; } function _silk_resampler_private_down_FIR_INTERPOL($out,$buf,$FIR_Coefs,$FIR_Order,$FIR_Fracs,$max_index_Q16,$index_increment_Q16) { $out = $out|0; $buf = $buf|0; $FIR_Coefs = $FIR_Coefs|0; $FIR_Order = $FIR_Order|0; $FIR_Fracs = $FIR_Fracs|0; $max_index_Q16 = $max_index_Q16|0; $index_increment_Q16 = $index_increment_Q16|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0; var $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0; var $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0; var $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0; var $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 = 0; var $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0; var $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0; var $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0; var $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0; var $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $FIR_Coefs$addr = 0, $FIR_Fracs$addr = 0, $FIR_Order$addr = 0, $add = 0, $add$ptr = 0, $add$ptr271 = 0, $add$ptr507 = 0, $add111 = 0, $add112 = 0, $add124 = 0; var $add125 = 0, $add140 = 0, $add141 = 0, $add153 = 0, $add154 = 0, $add166 = 0, $add167 = 0, $add179 = 0, $add180 = 0, $add192 = 0, $add193 = 0, $add205 = 0, $add206 = 0, $add21 = 0, $add218 = 0, $add219 = 0, $add231 = 0, $add232 = 0, $add244 = 0, $add245 = 0; var $add247 = 0, $add252 = 0, $add259 = 0, $add264 = 0, $add274 = 0, $add281 = 0, $add287 = 0, $add290 = 0, $add297 = 0, $add303 = 0, $add304 = 0, $add307 = 0, $add314 = 0, $add320 = 0, $add321 = 0, $add324 = 0, $add33 = 0, $add331 = 0, $add337 = 0, $add338 = 0; var $add34 = 0, $add341 = 0, $add348 = 0, $add354 = 0, $add355 = 0, $add358 = 0, $add365 = 0, $add371 = 0, $add372 = 0, $add375 = 0, $add382 = 0, $add388 = 0, $add389 = 0, $add392 = 0, $add399 = 0, $add405 = 0, $add406 = 0, $add409 = 0, $add416 = 0, $add422 = 0; var $add423 = 0, $add426 = 0, $add433 = 0, $add439 = 0, $add440 = 0, $add443 = 0, $add450 = 0, $add456 = 0, $add457 = 0, $add46 = 0, $add460 = 0, $add467 = 0, $add47 = 0, $add473 = 0, $add474 = 0, $add476 = 0, $add483 = 0, $add490 = 0, $add499 = 0, $add510 = 0; var $add517 = 0, $add523 = 0, $add526 = 0, $add533 = 0, $add539 = 0, $add540 = 0, $add543 = 0, $add550 = 0, $add556 = 0, $add557 = 0, $add560 = 0, $add567 = 0, $add573 = 0, $add574 = 0, $add577 = 0, $add584 = 0, $add59 = 0, $add590 = 0, $add591 = 0, $add594 = 0; var $add60 = 0, $add601 = 0, $add607 = 0, $add608 = 0, $add611 = 0, $add618 = 0, $add624 = 0, $add625 = 0, $add628 = 0, $add635 = 0, $add641 = 0, $add642 = 0, $add645 = 0, $add652 = 0, $add658 = 0, $add659 = 0, $add662 = 0, $add669 = 0, $add675 = 0, $add676 = 0; var $add679 = 0, $add686 = 0, $add692 = 0, $add693 = 0, $add696 = 0, $add703 = 0, $add709 = 0, $add710 = 0, $add713 = 0, $add72 = 0, $add720 = 0, $add726 = 0, $add727 = 0, $add73 = 0, $add730 = 0, $add737 = 0, $add743 = 0, $add744 = 0, $add747 = 0, $add754 = 0; var $add760 = 0, $add761 = 0, $add764 = 0, $add771 = 0, $add777 = 0, $add778 = 0, $add781 = 0, $add788 = 0, $add794 = 0, $add795 = 0, $add798 = 0, $add805 = 0, $add811 = 0, $add812 = 0, $add814 = 0, $add821 = 0, $add828 = 0, $add837 = 0, $add85 = 0, $add86 = 0; var $add98 = 0, $add99 = 0, $and = 0, $and106 = 0, $and119 = 0, $and135 = 0, $and148 = 0, $and16 = 0, $and161 = 0, $and174 = 0, $and187 = 0, $and200 = 0, $and213 = 0, $and226 = 0, $and239 = 0, $and28 = 0, $and282 = 0, $and298 = 0, $and3 = 0, $and315 = 0; var $and332 = 0, $and349 = 0, $and366 = 0, $and383 = 0, $and4 = 0, $and400 = 0, $and41 = 0, $and417 = 0, $and434 = 0, $and451 = 0, $and468 = 0, $and518 = 0, $and534 = 0, $and54 = 0, $and551 = 0, $and568 = 0, $and585 = 0, $and602 = 0, $and619 = 0, $and636 = 0; var $and653 = 0, $and67 = 0, $and670 = 0, $and687 = 0, $and704 = 0, $and721 = 0, $and738 = 0, $and755 = 0, $and772 = 0, $and789 = 0, $and80 = 0, $and806 = 0, $and93 = 0, $arrayidx = 0, $arrayidx100 = 0, $arrayidx102 = 0, $arrayidx105 = 0, $arrayidx107 = 0, $arrayidx113 = 0, $arrayidx115 = 0; var $arrayidx118 = 0, $arrayidx120 = 0, $arrayidx128 = 0, $arrayidx129 = 0, $arrayidx134 = 0, $arrayidx142 = 0, $arrayidx144 = 0, $arrayidx147 = 0, $arrayidx149 = 0, $arrayidx155 = 0, $arrayidx157 = 0, $arrayidx160 = 0, $arrayidx162 = 0, $arrayidx168 = 0, $arrayidx170 = 0, $arrayidx173 = 0, $arrayidx175 = 0, $arrayidx181 = 0, $arrayidx183 = 0, $arrayidx186 = 0; var $arrayidx188 = 0, $arrayidx194 = 0, $arrayidx196 = 0, $arrayidx199 = 0, $arrayidx201 = 0, $arrayidx207 = 0, $arrayidx209 = 0, $arrayidx212 = 0, $arrayidx214 = 0, $arrayidx22 = 0, $arrayidx220 = 0, $arrayidx222 = 0, $arrayidx225 = 0, $arrayidx227 = 0, $arrayidx233 = 0, $arrayidx235 = 0, $arrayidx238 = 0, $arrayidx24 = 0, $arrayidx240 = 0, $arrayidx27 = 0; var $arrayidx273 = 0, $arrayidx280 = 0, $arrayidx288 = 0, $arrayidx289 = 0, $arrayidx29 = 0, $arrayidx292 = 0, $arrayidx295 = 0, $arrayidx296 = 0, $arrayidx299 = 0, $arrayidx305 = 0, $arrayidx306 = 0, $arrayidx309 = 0, $arrayidx312 = 0, $arrayidx313 = 0, $arrayidx316 = 0, $arrayidx322 = 0, $arrayidx323 = 0, $arrayidx326 = 0, $arrayidx329 = 0, $arrayidx330 = 0; var $arrayidx333 = 0, $arrayidx339 = 0, $arrayidx340 = 0, $arrayidx343 = 0, $arrayidx346 = 0, $arrayidx347 = 0, $arrayidx35 = 0, $arrayidx350 = 0, $arrayidx356 = 0, $arrayidx357 = 0, $arrayidx360 = 0, $arrayidx363 = 0, $arrayidx364 = 0, $arrayidx367 = 0, $arrayidx37 = 0, $arrayidx373 = 0, $arrayidx374 = 0, $arrayidx377 = 0, $arrayidx380 = 0, $arrayidx381 = 0; var $arrayidx384 = 0, $arrayidx390 = 0, $arrayidx391 = 0, $arrayidx394 = 0, $arrayidx397 = 0, $arrayidx398 = 0, $arrayidx40 = 0, $arrayidx401 = 0, $arrayidx407 = 0, $arrayidx408 = 0, $arrayidx411 = 0, $arrayidx414 = 0, $arrayidx415 = 0, $arrayidx418 = 0, $arrayidx42 = 0, $arrayidx424 = 0, $arrayidx425 = 0, $arrayidx428 = 0, $arrayidx431 = 0, $arrayidx432 = 0; var $arrayidx435 = 0, $arrayidx441 = 0, $arrayidx442 = 0, $arrayidx445 = 0, $arrayidx448 = 0, $arrayidx449 = 0, $arrayidx452 = 0, $arrayidx458 = 0, $arrayidx459 = 0, $arrayidx462 = 0, $arrayidx465 = 0, $arrayidx466 = 0, $arrayidx469 = 0, $arrayidx48 = 0, $arrayidx50 = 0, $arrayidx509 = 0, $arrayidx516 = 0, $arrayidx524 = 0, $arrayidx525 = 0, $arrayidx528 = 0; var $arrayidx53 = 0, $arrayidx531 = 0, $arrayidx532 = 0, $arrayidx535 = 0, $arrayidx541 = 0, $arrayidx542 = 0, $arrayidx545 = 0, $arrayidx548 = 0, $arrayidx549 = 0, $arrayidx55 = 0, $arrayidx552 = 0, $arrayidx558 = 0, $arrayidx559 = 0, $arrayidx562 = 0, $arrayidx565 = 0, $arrayidx566 = 0, $arrayidx569 = 0, $arrayidx575 = 0, $arrayidx576 = 0, $arrayidx579 = 0; var $arrayidx582 = 0, $arrayidx583 = 0, $arrayidx586 = 0, $arrayidx592 = 0, $arrayidx593 = 0, $arrayidx596 = 0, $arrayidx599 = 0, $arrayidx600 = 0, $arrayidx603 = 0, $arrayidx609 = 0, $arrayidx61 = 0, $arrayidx610 = 0, $arrayidx613 = 0, $arrayidx616 = 0, $arrayidx617 = 0, $arrayidx620 = 0, $arrayidx626 = 0, $arrayidx627 = 0, $arrayidx63 = 0, $arrayidx630 = 0; var $arrayidx633 = 0, $arrayidx634 = 0, $arrayidx637 = 0, $arrayidx643 = 0, $arrayidx644 = 0, $arrayidx647 = 0, $arrayidx650 = 0, $arrayidx651 = 0, $arrayidx654 = 0, $arrayidx66 = 0, $arrayidx660 = 0, $arrayidx661 = 0, $arrayidx664 = 0, $arrayidx667 = 0, $arrayidx668 = 0, $arrayidx671 = 0, $arrayidx677 = 0, $arrayidx678 = 0, $arrayidx68 = 0, $arrayidx681 = 0; var $arrayidx684 = 0, $arrayidx685 = 0, $arrayidx688 = 0, $arrayidx694 = 0, $arrayidx695 = 0, $arrayidx698 = 0, $arrayidx701 = 0, $arrayidx702 = 0, $arrayidx705 = 0, $arrayidx711 = 0, $arrayidx712 = 0, $arrayidx715 = 0, $arrayidx718 = 0, $arrayidx719 = 0, $arrayidx722 = 0, $arrayidx728 = 0, $arrayidx729 = 0, $arrayidx732 = 0, $arrayidx735 = 0, $arrayidx736 = 0; var $arrayidx739 = 0, $arrayidx74 = 0, $arrayidx745 = 0, $arrayidx746 = 0, $arrayidx749 = 0, $arrayidx752 = 0, $arrayidx753 = 0, $arrayidx756 = 0, $arrayidx76 = 0, $arrayidx762 = 0, $arrayidx763 = 0, $arrayidx766 = 0, $arrayidx769 = 0, $arrayidx770 = 0, $arrayidx773 = 0, $arrayidx779 = 0, $arrayidx780 = 0, $arrayidx783 = 0, $arrayidx786 = 0, $arrayidx787 = 0; var $arrayidx79 = 0, $arrayidx790 = 0, $arrayidx796 = 0, $arrayidx797 = 0, $arrayidx800 = 0, $arrayidx803 = 0, $arrayidx804 = 0, $arrayidx807 = 0, $arrayidx81 = 0, $arrayidx87 = 0, $arrayidx89 = 0, $arrayidx92 = 0, $arrayidx94 = 0, $buf$addr = 0, $buf_ptr = 0, $cmp = 0, $cmp249 = 0, $cmp254 = 0, $cmp267 = 0, $cmp478 = 0; var $cmp485 = 0, $cmp503 = 0, $cmp816 = 0, $cmp823 = 0, $cond262 = 0, $cond495 = 0, $cond833 = 0, $conv = 0, $conv103 = 0, $conv108 = 0, $conv116 = 0, $conv121 = 0, $conv13 = 0, $conv132 = 0, $conv137 = 0, $conv145 = 0, $conv150 = 0, $conv158 = 0, $conv163 = 0, $conv171 = 0; var $conv176 = 0, $conv18 = 0, $conv184 = 0, $conv189 = 0, $conv197 = 0, $conv2 = 0, $conv202 = 0, $conv210 = 0, $conv215 = 0, $conv223 = 0, $conv228 = 0, $conv236 = 0, $conv241 = 0, $conv25 = 0, $conv263 = 0, $conv277 = 0, $conv284 = 0, $conv293 = 0, $conv30 = 0, $conv300 = 0; var $conv310 = 0, $conv317 = 0, $conv327 = 0, $conv334 = 0, $conv344 = 0, $conv351 = 0, $conv361 = 0, $conv368 = 0, $conv378 = 0, $conv38 = 0, $conv385 = 0, $conv395 = 0, $conv402 = 0, $conv412 = 0, $conv419 = 0, $conv429 = 0, $conv43 = 0, $conv436 = 0, $conv446 = 0, $conv453 = 0; var $conv463 = 0, $conv470 = 0, $conv496 = 0, $conv5 = 0, $conv51 = 0, $conv513 = 0, $conv520 = 0, $conv529 = 0, $conv536 = 0, $conv546 = 0, $conv553 = 0, $conv56 = 0, $conv563 = 0, $conv570 = 0, $conv580 = 0, $conv587 = 0, $conv597 = 0, $conv6 = 0, $conv604 = 0, $conv614 = 0; var $conv621 = 0, $conv631 = 0, $conv638 = 0, $conv64 = 0, $conv648 = 0, $conv655 = 0, $conv665 = 0, $conv672 = 0, $conv682 = 0, $conv689 = 0, $conv69 = 0, $conv699 = 0, $conv706 = 0, $conv716 = 0, $conv723 = 0, $conv733 = 0, $conv740 = 0, $conv750 = 0, $conv757 = 0, $conv767 = 0; var $conv77 = 0, $conv774 = 0, $conv784 = 0, $conv791 = 0, $conv801 = 0, $conv808 = 0, $conv82 = 0, $conv834 = 0, $conv90 = 0, $conv95 = 0, $incdec$ptr = 0, $incdec$ptr497 = 0, $incdec$ptr835 = 0, $index_Q16 = 0, $index_increment_Q16$addr = 0, $interpol_ind = 0, $interpol_ptr = 0, $max_index_Q16$addr = 0, $mul = 0, $mul104 = 0; var $mul109 = 0, $mul117 = 0, $mul122 = 0, $mul127 = 0, $mul133 = 0, $mul138 = 0, $mul14 = 0, $mul146 = 0, $mul151 = 0, $mul159 = 0, $mul164 = 0, $mul172 = 0, $mul177 = 0, $mul185 = 0, $mul19 = 0, $mul190 = 0, $mul198 = 0, $mul203 = 0, $mul211 = 0, $mul216 = 0; var $mul224 = 0, $mul229 = 0, $mul237 = 0, $mul242 = 0, $mul26 = 0, $mul278 = 0, $mul285 = 0, $mul294 = 0, $mul301 = 0, $mul31 = 0, $mul311 = 0, $mul318 = 0, $mul328 = 0, $mul335 = 0, $mul345 = 0, $mul352 = 0, $mul362 = 0, $mul369 = 0, $mul379 = 0, $mul386 = 0; var $mul39 = 0, $mul396 = 0, $mul403 = 0, $mul413 = 0, $mul420 = 0, $mul430 = 0, $mul437 = 0, $mul44 = 0, $mul447 = 0, $mul454 = 0, $mul464 = 0, $mul471 = 0, $mul514 = 0, $mul52 = 0, $mul521 = 0, $mul530 = 0, $mul537 = 0, $mul547 = 0, $mul554 = 0, $mul564 = 0; var $mul57 = 0, $mul571 = 0, $mul581 = 0, $mul588 = 0, $mul598 = 0, $mul605 = 0, $mul615 = 0, $mul622 = 0, $mul632 = 0, $mul639 = 0, $mul649 = 0, $mul65 = 0, $mul656 = 0, $mul666 = 0, $mul673 = 0, $mul683 = 0, $mul690 = 0, $mul7 = 0, $mul70 = 0, $mul700 = 0; var $mul707 = 0, $mul717 = 0, $mul724 = 0, $mul734 = 0, $mul741 = 0, $mul751 = 0, $mul758 = 0, $mul768 = 0, $mul775 = 0, $mul78 = 0, $mul785 = 0, $mul792 = 0, $mul802 = 0, $mul809 = 0, $mul83 = 0, $mul9 = 0, $mul91 = 0, $mul96 = 0, $out$addr = 0, $res_Q6 = 0; var $shr = 0, $shr1 = 0, $shr101 = 0, $shr11 = 0, $shr110 = 0, $shr114 = 0, $shr123 = 0, $shr130 = 0, $shr139 = 0, $shr143 = 0, $shr152 = 0, $shr156 = 0, $shr165 = 0, $shr169 = 0, $shr178 = 0, $shr182 = 0, $shr191 = 0, $shr195 = 0, $shr20 = 0, $shr204 = 0; var $shr208 = 0, $shr217 = 0, $shr221 = 0, $shr23 = 0, $shr230 = 0, $shr234 = 0, $shr243 = 0, $shr246 = 0, $shr248 = 0, $shr251 = 0, $shr253 = 0, $shr258 = 0, $shr260 = 0, $shr270 = 0, $shr275 = 0, $shr286 = 0, $shr291 = 0, $shr302 = 0, $shr308 = 0, $shr319 = 0; var $shr32 = 0, $shr325 = 0, $shr336 = 0, $shr342 = 0, $shr353 = 0, $shr359 = 0, $shr36 = 0, $shr370 = 0, $shr376 = 0, $shr387 = 0, $shr393 = 0, $shr404 = 0, $shr410 = 0, $shr421 = 0, $shr427 = 0, $shr438 = 0, $shr444 = 0, $shr45 = 0, $shr455 = 0, $shr461 = 0; var $shr472 = 0, $shr475 = 0, $shr477 = 0, $shr482 = 0, $shr484 = 0, $shr489 = 0, $shr49 = 0, $shr491 = 0, $shr506 = 0, $shr511 = 0, $shr522 = 0, $shr527 = 0, $shr538 = 0, $shr544 = 0, $shr555 = 0, $shr561 = 0, $shr572 = 0, $shr578 = 0, $shr58 = 0, $shr589 = 0; var $shr595 = 0, $shr606 = 0, $shr612 = 0, $shr62 = 0, $shr623 = 0, $shr629 = 0, $shr640 = 0, $shr646 = 0, $shr657 = 0, $shr663 = 0, $shr674 = 0, $shr680 = 0, $shr691 = 0, $shr697 = 0, $shr708 = 0, $shr71 = 0, $shr714 = 0, $shr725 = 0, $shr731 = 0, $shr742 = 0; var $shr748 = 0, $shr75 = 0, $shr759 = 0, $shr765 = 0, $shr776 = 0, $shr782 = 0, $shr793 = 0, $shr799 = 0, $shr8 = 0, $shr810 = 0, $shr813 = 0, $shr815 = 0, $shr820 = 0, $shr822 = 0, $shr827 = 0, $shr829 = 0, $shr84 = 0, $shr88 = 0, $shr97 = 0, $sub = 0; var $sub126 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $out$addr = $out; $buf$addr = $buf; $FIR_Coefs$addr = $FIR_Coefs; $FIR_Order$addr = $FIR_Order; $FIR_Fracs$addr = $FIR_Fracs; $max_index_Q16$addr = $max_index_Q16; $index_increment_Q16$addr = $index_increment_Q16; $0 = $FIR_Order$addr; switch ($0|0) { case 18: { $index_Q16 = 0; while(1) { $1 = $index_Q16; $2 = $max_index_Q16$addr; $cmp = ($1|0)<($2|0); if (!($cmp)) { break; } $3 = $buf$addr; $4 = $index_Q16; $shr = $4 >> 16; $add$ptr = (($3) + ($shr<<2)|0); $buf_ptr = $add$ptr; $5 = $index_Q16; $and = $5 & 65535; $shr1 = $and >> 16; $6 = $FIR_Fracs$addr; $conv = $6&65535; $conv2 = $conv << 16 >> 16; $mul = Math_imul($shr1, $conv2)|0; $7 = $index_Q16; $and3 = $7 & 65535; $and4 = $and3 & 65535; $8 = $FIR_Fracs$addr; $conv5 = $8&65535; $conv6 = $conv5 << 16 >> 16; $mul7 = Math_imul($and4, $conv6)|0; $shr8 = $mul7 >> 16; $add = (($mul) + ($shr8))|0; $interpol_ind = $add; $9 = $FIR_Coefs$addr; $10 = $interpol_ind; $mul9 = ($10*9)|0; $arrayidx = (($9) + ($mul9<<1)|0); $interpol_ptr = $arrayidx; $11 = $buf_ptr; $12 = HEAP32[$11>>2]|0; $shr11 = $12 >> 16; $13 = $interpol_ptr; $14 = HEAP16[$13>>1]|0; $conv13 = $14 << 16 >> 16; $mul14 = Math_imul($shr11, $conv13)|0; $15 = $buf_ptr; $16 = HEAP32[$15>>2]|0; $and16 = $16 & 65535; $17 = $interpol_ptr; $18 = HEAP16[$17>>1]|0; $conv18 = $18 << 16 >> 16; $mul19 = Math_imul($and16, $conv18)|0; $shr20 = $mul19 >> 16; $add21 = (($mul14) + ($shr20))|0; $res_Q6 = $add21; $19 = $res_Q6; $20 = $buf_ptr; $arrayidx22 = ((($20)) + 4|0); $21 = HEAP32[$arrayidx22>>2]|0; $shr23 = $21 >> 16; $22 = $interpol_ptr; $arrayidx24 = ((($22)) + 2|0); $23 = HEAP16[$arrayidx24>>1]|0; $conv25 = $23 << 16 >> 16; $mul26 = Math_imul($shr23, $conv25)|0; $24 = $buf_ptr; $arrayidx27 = ((($24)) + 4|0); $25 = HEAP32[$arrayidx27>>2]|0; $and28 = $25 & 65535; $26 = $interpol_ptr; $arrayidx29 = ((($26)) + 2|0); $27 = HEAP16[$arrayidx29>>1]|0; $conv30 = $27 << 16 >> 16; $mul31 = Math_imul($and28, $conv30)|0; $shr32 = $mul31 >> 16; $add33 = (($mul26) + ($shr32))|0; $add34 = (($19) + ($add33))|0; $res_Q6 = $add34; $28 = $res_Q6; $29 = $buf_ptr; $arrayidx35 = ((($29)) + 8|0); $30 = HEAP32[$arrayidx35>>2]|0; $shr36 = $30 >> 16; $31 = $interpol_ptr; $arrayidx37 = ((($31)) + 4|0); $32 = HEAP16[$arrayidx37>>1]|0; $conv38 = $32 << 16 >> 16; $mul39 = Math_imul($shr36, $conv38)|0; $33 = $buf_ptr; $arrayidx40 = ((($33)) + 8|0); $34 = HEAP32[$arrayidx40>>2]|0; $and41 = $34 & 65535; $35 = $interpol_ptr; $arrayidx42 = ((($35)) + 4|0); $36 = HEAP16[$arrayidx42>>1]|0; $conv43 = $36 << 16 >> 16; $mul44 = Math_imul($and41, $conv43)|0; $shr45 = $mul44 >> 16; $add46 = (($mul39) + ($shr45))|0; $add47 = (($28) + ($add46))|0; $res_Q6 = $add47; $37 = $res_Q6; $38 = $buf_ptr; $arrayidx48 = ((($38)) + 12|0); $39 = HEAP32[$arrayidx48>>2]|0; $shr49 = $39 >> 16; $40 = $interpol_ptr; $arrayidx50 = ((($40)) + 6|0); $41 = HEAP16[$arrayidx50>>1]|0; $conv51 = $41 << 16 >> 16; $mul52 = Math_imul($shr49, $conv51)|0; $42 = $buf_ptr; $arrayidx53 = ((($42)) + 12|0); $43 = HEAP32[$arrayidx53>>2]|0; $and54 = $43 & 65535; $44 = $interpol_ptr; $arrayidx55 = ((($44)) + 6|0); $45 = HEAP16[$arrayidx55>>1]|0; $conv56 = $45 << 16 >> 16; $mul57 = Math_imul($and54, $conv56)|0; $shr58 = $mul57 >> 16; $add59 = (($mul52) + ($shr58))|0; $add60 = (($37) + ($add59))|0; $res_Q6 = $add60; $46 = $res_Q6; $47 = $buf_ptr; $arrayidx61 = ((($47)) + 16|0); $48 = HEAP32[$arrayidx61>>2]|0; $shr62 = $48 >> 16; $49 = $interpol_ptr; $arrayidx63 = ((($49)) + 8|0); $50 = HEAP16[$arrayidx63>>1]|0; $conv64 = $50 << 16 >> 16; $mul65 = Math_imul($shr62, $conv64)|0; $51 = $buf_ptr; $arrayidx66 = ((($51)) + 16|0); $52 = HEAP32[$arrayidx66>>2]|0; $and67 = $52 & 65535; $53 = $interpol_ptr; $arrayidx68 = ((($53)) + 8|0); $54 = HEAP16[$arrayidx68>>1]|0; $conv69 = $54 << 16 >> 16; $mul70 = Math_imul($and67, $conv69)|0; $shr71 = $mul70 >> 16; $add72 = (($mul65) + ($shr71))|0; $add73 = (($46) + ($add72))|0; $res_Q6 = $add73; $55 = $res_Q6; $56 = $buf_ptr; $arrayidx74 = ((($56)) + 20|0); $57 = HEAP32[$arrayidx74>>2]|0; $shr75 = $57 >> 16; $58 = $interpol_ptr; $arrayidx76 = ((($58)) + 10|0); $59 = HEAP16[$arrayidx76>>1]|0; $conv77 = $59 << 16 >> 16; $mul78 = Math_imul($shr75, $conv77)|0; $60 = $buf_ptr; $arrayidx79 = ((($60)) + 20|0); $61 = HEAP32[$arrayidx79>>2]|0; $and80 = $61 & 65535; $62 = $interpol_ptr; $arrayidx81 = ((($62)) + 10|0); $63 = HEAP16[$arrayidx81>>1]|0; $conv82 = $63 << 16 >> 16; $mul83 = Math_imul($and80, $conv82)|0; $shr84 = $mul83 >> 16; $add85 = (($mul78) + ($shr84))|0; $add86 = (($55) + ($add85))|0; $res_Q6 = $add86; $64 = $res_Q6; $65 = $buf_ptr; $arrayidx87 = ((($65)) + 24|0); $66 = HEAP32[$arrayidx87>>2]|0; $shr88 = $66 >> 16; $67 = $interpol_ptr; $arrayidx89 = ((($67)) + 12|0); $68 = HEAP16[$arrayidx89>>1]|0; $conv90 = $68 << 16 >> 16; $mul91 = Math_imul($shr88, $conv90)|0; $69 = $buf_ptr; $arrayidx92 = ((($69)) + 24|0); $70 = HEAP32[$arrayidx92>>2]|0; $and93 = $70 & 65535; $71 = $interpol_ptr; $arrayidx94 = ((($71)) + 12|0); $72 = HEAP16[$arrayidx94>>1]|0; $conv95 = $72 << 16 >> 16; $mul96 = Math_imul($and93, $conv95)|0; $shr97 = $mul96 >> 16; $add98 = (($mul91) + ($shr97))|0; $add99 = (($64) + ($add98))|0; $res_Q6 = $add99; $73 = $res_Q6; $74 = $buf_ptr; $arrayidx100 = ((($74)) + 28|0); $75 = HEAP32[$arrayidx100>>2]|0; $shr101 = $75 >> 16; $76 = $interpol_ptr; $arrayidx102 = ((($76)) + 14|0); $77 = HEAP16[$arrayidx102>>1]|0; $conv103 = $77 << 16 >> 16; $mul104 = Math_imul($shr101, $conv103)|0; $78 = $buf_ptr; $arrayidx105 = ((($78)) + 28|0); $79 = HEAP32[$arrayidx105>>2]|0; $and106 = $79 & 65535; $80 = $interpol_ptr; $arrayidx107 = ((($80)) + 14|0); $81 = HEAP16[$arrayidx107>>1]|0; $conv108 = $81 << 16 >> 16; $mul109 = Math_imul($and106, $conv108)|0; $shr110 = $mul109 >> 16; $add111 = (($mul104) + ($shr110))|0; $add112 = (($73) + ($add111))|0; $res_Q6 = $add112; $82 = $res_Q6; $83 = $buf_ptr; $arrayidx113 = ((($83)) + 32|0); $84 = HEAP32[$arrayidx113>>2]|0; $shr114 = $84 >> 16; $85 = $interpol_ptr; $arrayidx115 = ((($85)) + 16|0); $86 = HEAP16[$arrayidx115>>1]|0; $conv116 = $86 << 16 >> 16; $mul117 = Math_imul($shr114, $conv116)|0; $87 = $buf_ptr; $arrayidx118 = ((($87)) + 32|0); $88 = HEAP32[$arrayidx118>>2]|0; $and119 = $88 & 65535; $89 = $interpol_ptr; $arrayidx120 = ((($89)) + 16|0); $90 = HEAP16[$arrayidx120>>1]|0; $conv121 = $90 << 16 >> 16; $mul122 = Math_imul($and119, $conv121)|0; $shr123 = $mul122 >> 16; $add124 = (($mul117) + ($shr123))|0; $add125 = (($82) + ($add124))|0; $res_Q6 = $add125; $91 = $FIR_Coefs$addr; $92 = $FIR_Fracs$addr; $sub = (($92) - 1)|0; $93 = $interpol_ind; $sub126 = (($sub) - ($93))|0; $mul127 = ($sub126*9)|0; $arrayidx128 = (($91) + ($mul127<<1)|0); $interpol_ptr = $arrayidx128; $94 = $res_Q6; $95 = $buf_ptr; $arrayidx129 = ((($95)) + 68|0); $96 = HEAP32[$arrayidx129>>2]|0; $shr130 = $96 >> 16; $97 = $interpol_ptr; $98 = HEAP16[$97>>1]|0; $conv132 = $98 << 16 >> 16; $mul133 = Math_imul($shr130, $conv132)|0; $99 = $buf_ptr; $arrayidx134 = ((($99)) + 68|0); $100 = HEAP32[$arrayidx134>>2]|0; $and135 = $100 & 65535; $101 = $interpol_ptr; $102 = HEAP16[$101>>1]|0; $conv137 = $102 << 16 >> 16; $mul138 = Math_imul($and135, $conv137)|0; $shr139 = $mul138 >> 16; $add140 = (($mul133) + ($shr139))|0; $add141 = (($94) + ($add140))|0; $res_Q6 = $add141; $103 = $res_Q6; $104 = $buf_ptr; $arrayidx142 = ((($104)) + 64|0); $105 = HEAP32[$arrayidx142>>2]|0; $shr143 = $105 >> 16; $106 = $interpol_ptr; $arrayidx144 = ((($106)) + 2|0); $107 = HEAP16[$arrayidx144>>1]|0; $conv145 = $107 << 16 >> 16; $mul146 = Math_imul($shr143, $conv145)|0; $108 = $buf_ptr; $arrayidx147 = ((($108)) + 64|0); $109 = HEAP32[$arrayidx147>>2]|0; $and148 = $109 & 65535; $110 = $interpol_ptr; $arrayidx149 = ((($110)) + 2|0); $111 = HEAP16[$arrayidx149>>1]|0; $conv150 = $111 << 16 >> 16; $mul151 = Math_imul($and148, $conv150)|0; $shr152 = $mul151 >> 16; $add153 = (($mul146) + ($shr152))|0; $add154 = (($103) + ($add153))|0; $res_Q6 = $add154; $112 = $res_Q6; $113 = $buf_ptr; $arrayidx155 = ((($113)) + 60|0); $114 = HEAP32[$arrayidx155>>2]|0; $shr156 = $114 >> 16; $115 = $interpol_ptr; $arrayidx157 = ((($115)) + 4|0); $116 = HEAP16[$arrayidx157>>1]|0; $conv158 = $116 << 16 >> 16; $mul159 = Math_imul($shr156, $conv158)|0; $117 = $buf_ptr; $arrayidx160 = ((($117)) + 60|0); $118 = HEAP32[$arrayidx160>>2]|0; $and161 = $118 & 65535; $119 = $interpol_ptr; $arrayidx162 = ((($119)) + 4|0); $120 = HEAP16[$arrayidx162>>1]|0; $conv163 = $120 << 16 >> 16; $mul164 = Math_imul($and161, $conv163)|0; $shr165 = $mul164 >> 16; $add166 = (($mul159) + ($shr165))|0; $add167 = (($112) + ($add166))|0; $res_Q6 = $add167; $121 = $res_Q6; $122 = $buf_ptr; $arrayidx168 = ((($122)) + 56|0); $123 = HEAP32[$arrayidx168>>2]|0; $shr169 = $123 >> 16; $124 = $interpol_ptr; $arrayidx170 = ((($124)) + 6|0); $125 = HEAP16[$arrayidx170>>1]|0; $conv171 = $125 << 16 >> 16; $mul172 = Math_imul($shr169, $conv171)|0; $126 = $buf_ptr; $arrayidx173 = ((($126)) + 56|0); $127 = HEAP32[$arrayidx173>>2]|0; $and174 = $127 & 65535; $128 = $interpol_ptr; $arrayidx175 = ((($128)) + 6|0); $129 = HEAP16[$arrayidx175>>1]|0; $conv176 = $129 << 16 >> 16; $mul177 = Math_imul($and174, $conv176)|0; $shr178 = $mul177 >> 16; $add179 = (($mul172) + ($shr178))|0; $add180 = (($121) + ($add179))|0; $res_Q6 = $add180; $130 = $res_Q6; $131 = $buf_ptr; $arrayidx181 = ((($131)) + 52|0); $132 = HEAP32[$arrayidx181>>2]|0; $shr182 = $132 >> 16; $133 = $interpol_ptr; $arrayidx183 = ((($133)) + 8|0); $134 = HEAP16[$arrayidx183>>1]|0; $conv184 = $134 << 16 >> 16; $mul185 = Math_imul($shr182, $conv184)|0; $135 = $buf_ptr; $arrayidx186 = ((($135)) + 52|0); $136 = HEAP32[$arrayidx186>>2]|0; $and187 = $136 & 65535; $137 = $interpol_ptr; $arrayidx188 = ((($137)) + 8|0); $138 = HEAP16[$arrayidx188>>1]|0; $conv189 = $138 << 16 >> 16; $mul190 = Math_imul($and187, $conv189)|0; $shr191 = $mul190 >> 16; $add192 = (($mul185) + ($shr191))|0; $add193 = (($130) + ($add192))|0; $res_Q6 = $add193; $139 = $res_Q6; $140 = $buf_ptr; $arrayidx194 = ((($140)) + 48|0); $141 = HEAP32[$arrayidx194>>2]|0; $shr195 = $141 >> 16; $142 = $interpol_ptr; $arrayidx196 = ((($142)) + 10|0); $143 = HEAP16[$arrayidx196>>1]|0; $conv197 = $143 << 16 >> 16; $mul198 = Math_imul($shr195, $conv197)|0; $144 = $buf_ptr; $arrayidx199 = ((($144)) + 48|0); $145 = HEAP32[$arrayidx199>>2]|0; $and200 = $145 & 65535; $146 = $interpol_ptr; $arrayidx201 = ((($146)) + 10|0); $147 = HEAP16[$arrayidx201>>1]|0; $conv202 = $147 << 16 >> 16; $mul203 = Math_imul($and200, $conv202)|0; $shr204 = $mul203 >> 16; $add205 = (($mul198) + ($shr204))|0; $add206 = (($139) + ($add205))|0; $res_Q6 = $add206; $148 = $res_Q6; $149 = $buf_ptr; $arrayidx207 = ((($149)) + 44|0); $150 = HEAP32[$arrayidx207>>2]|0; $shr208 = $150 >> 16; $151 = $interpol_ptr; $arrayidx209 = ((($151)) + 12|0); $152 = HEAP16[$arrayidx209>>1]|0; $conv210 = $152 << 16 >> 16; $mul211 = Math_imul($shr208, $conv210)|0; $153 = $buf_ptr; $arrayidx212 = ((($153)) + 44|0); $154 = HEAP32[$arrayidx212>>2]|0; $and213 = $154 & 65535; $155 = $interpol_ptr; $arrayidx214 = ((($155)) + 12|0); $156 = HEAP16[$arrayidx214>>1]|0; $conv215 = $156 << 16 >> 16; $mul216 = Math_imul($and213, $conv215)|0; $shr217 = $mul216 >> 16; $add218 = (($mul211) + ($shr217))|0; $add219 = (($148) + ($add218))|0; $res_Q6 = $add219; $157 = $res_Q6; $158 = $buf_ptr; $arrayidx220 = ((($158)) + 40|0); $159 = HEAP32[$arrayidx220>>2]|0; $shr221 = $159 >> 16; $160 = $interpol_ptr; $arrayidx222 = ((($160)) + 14|0); $161 = HEAP16[$arrayidx222>>1]|0; $conv223 = $161 << 16 >> 16; $mul224 = Math_imul($shr221, $conv223)|0; $162 = $buf_ptr; $arrayidx225 = ((($162)) + 40|0); $163 = HEAP32[$arrayidx225>>2]|0; $and226 = $163 & 65535; $164 = $interpol_ptr; $arrayidx227 = ((($164)) + 14|0); $165 = HEAP16[$arrayidx227>>1]|0; $conv228 = $165 << 16 >> 16; $mul229 = Math_imul($and226, $conv228)|0; $shr230 = $mul229 >> 16; $add231 = (($mul224) + ($shr230))|0; $add232 = (($157) + ($add231))|0; $res_Q6 = $add232; $166 = $res_Q6; $167 = $buf_ptr; $arrayidx233 = ((($167)) + 36|0); $168 = HEAP32[$arrayidx233>>2]|0; $shr234 = $168 >> 16; $169 = $interpol_ptr; $arrayidx235 = ((($169)) + 16|0); $170 = HEAP16[$arrayidx235>>1]|0; $conv236 = $170 << 16 >> 16; $mul237 = Math_imul($shr234, $conv236)|0; $171 = $buf_ptr; $arrayidx238 = ((($171)) + 36|0); $172 = HEAP32[$arrayidx238>>2]|0; $and239 = $172 & 65535; $173 = $interpol_ptr; $arrayidx240 = ((($173)) + 16|0); $174 = HEAP16[$arrayidx240>>1]|0; $conv241 = $174 << 16 >> 16; $mul242 = Math_imul($and239, $conv241)|0; $shr243 = $mul242 >> 16; $add244 = (($mul237) + ($shr243))|0; $add245 = (($166) + ($add244))|0; $res_Q6 = $add245; $175 = $res_Q6; $shr246 = $175 >> 5; $add247 = (($shr246) + 1)|0; $shr248 = $add247 >> 1; $cmp249 = ($shr248|0)>(32767); if ($cmp249) { $cond262 = 32767; } else { $176 = $res_Q6; $shr251 = $176 >> 5; $add252 = (($shr251) + 1)|0; $shr253 = $add252 >> 1; $cmp254 = ($shr253|0)<(-32768); if ($cmp254) { $cond262 = -32768; } else { $177 = $res_Q6; $shr258 = $177 >> 5; $add259 = (($shr258) + 1)|0; $shr260 = $add259 >> 1; $cond262 = $shr260; } } $conv263 = $cond262&65535; $178 = $out$addr; $incdec$ptr = ((($178)) + 2|0); $out$addr = $incdec$ptr; HEAP16[$178>>1] = $conv263; $179 = $index_increment_Q16$addr; $180 = $index_Q16; $add264 = (($180) + ($179))|0; $index_Q16 = $add264; } $589 = $out$addr; STACKTOP = sp;return ($589|0); break; } case 24: { $index_Q16 = 0; while(1) { $181 = $index_Q16; $182 = $max_index_Q16$addr; $cmp267 = ($181|0)<($182|0); if (!($cmp267)) { break; } $183 = $buf$addr; $184 = $index_Q16; $shr270 = $184 >> 16; $add$ptr271 = (($183) + ($shr270<<2)|0); $buf_ptr = $add$ptr271; $185 = $buf_ptr; $186 = HEAP32[$185>>2]|0; $187 = $buf_ptr; $arrayidx273 = ((($187)) + 92|0); $188 = HEAP32[$arrayidx273>>2]|0; $add274 = (($186) + ($188))|0; $shr275 = $add274 >> 16; $189 = $FIR_Coefs$addr; $190 = HEAP16[$189>>1]|0; $conv277 = $190 << 16 >> 16; $mul278 = Math_imul($shr275, $conv277)|0; $191 = $buf_ptr; $192 = HEAP32[$191>>2]|0; $193 = $buf_ptr; $arrayidx280 = ((($193)) + 92|0); $194 = HEAP32[$arrayidx280>>2]|0; $add281 = (($192) + ($194))|0; $and282 = $add281 & 65535; $195 = $FIR_Coefs$addr; $196 = HEAP16[$195>>1]|0; $conv284 = $196 << 16 >> 16; $mul285 = Math_imul($and282, $conv284)|0; $shr286 = $mul285 >> 16; $add287 = (($mul278) + ($shr286))|0; $res_Q6 = $add287; $197 = $res_Q6; $198 = $buf_ptr; $arrayidx288 = ((($198)) + 4|0); $199 = HEAP32[$arrayidx288>>2]|0; $200 = $buf_ptr; $arrayidx289 = ((($200)) + 88|0); $201 = HEAP32[$arrayidx289>>2]|0; $add290 = (($199) + ($201))|0; $shr291 = $add290 >> 16; $202 = $FIR_Coefs$addr; $arrayidx292 = ((($202)) + 2|0); $203 = HEAP16[$arrayidx292>>1]|0; $conv293 = $203 << 16 >> 16; $mul294 = Math_imul($shr291, $conv293)|0; $204 = $buf_ptr; $arrayidx295 = ((($204)) + 4|0); $205 = HEAP32[$arrayidx295>>2]|0; $206 = $buf_ptr; $arrayidx296 = ((($206)) + 88|0); $207 = HEAP32[$arrayidx296>>2]|0; $add297 = (($205) + ($207))|0; $and298 = $add297 & 65535; $208 = $FIR_Coefs$addr; $arrayidx299 = ((($208)) + 2|0); $209 = HEAP16[$arrayidx299>>1]|0; $conv300 = $209 << 16 >> 16; $mul301 = Math_imul($and298, $conv300)|0; $shr302 = $mul301 >> 16; $add303 = (($mul294) + ($shr302))|0; $add304 = (($197) + ($add303))|0; $res_Q6 = $add304; $210 = $res_Q6; $211 = $buf_ptr; $arrayidx305 = ((($211)) + 8|0); $212 = HEAP32[$arrayidx305>>2]|0; $213 = $buf_ptr; $arrayidx306 = ((($213)) + 84|0); $214 = HEAP32[$arrayidx306>>2]|0; $add307 = (($212) + ($214))|0; $shr308 = $add307 >> 16; $215 = $FIR_Coefs$addr; $arrayidx309 = ((($215)) + 4|0); $216 = HEAP16[$arrayidx309>>1]|0; $conv310 = $216 << 16 >> 16; $mul311 = Math_imul($shr308, $conv310)|0; $217 = $buf_ptr; $arrayidx312 = ((($217)) + 8|0); $218 = HEAP32[$arrayidx312>>2]|0; $219 = $buf_ptr; $arrayidx313 = ((($219)) + 84|0); $220 = HEAP32[$arrayidx313>>2]|0; $add314 = (($218) + ($220))|0; $and315 = $add314 & 65535; $221 = $FIR_Coefs$addr; $arrayidx316 = ((($221)) + 4|0); $222 = HEAP16[$arrayidx316>>1]|0; $conv317 = $222 << 16 >> 16; $mul318 = Math_imul($and315, $conv317)|0; $shr319 = $mul318 >> 16; $add320 = (($mul311) + ($shr319))|0; $add321 = (($210) + ($add320))|0; $res_Q6 = $add321; $223 = $res_Q6; $224 = $buf_ptr; $arrayidx322 = ((($224)) + 12|0); $225 = HEAP32[$arrayidx322>>2]|0; $226 = $buf_ptr; $arrayidx323 = ((($226)) + 80|0); $227 = HEAP32[$arrayidx323>>2]|0; $add324 = (($225) + ($227))|0; $shr325 = $add324 >> 16; $228 = $FIR_Coefs$addr; $arrayidx326 = ((($228)) + 6|0); $229 = HEAP16[$arrayidx326>>1]|0; $conv327 = $229 << 16 >> 16; $mul328 = Math_imul($shr325, $conv327)|0; $230 = $buf_ptr; $arrayidx329 = ((($230)) + 12|0); $231 = HEAP32[$arrayidx329>>2]|0; $232 = $buf_ptr; $arrayidx330 = ((($232)) + 80|0); $233 = HEAP32[$arrayidx330>>2]|0; $add331 = (($231) + ($233))|0; $and332 = $add331 & 65535; $234 = $FIR_Coefs$addr; $arrayidx333 = ((($234)) + 6|0); $235 = HEAP16[$arrayidx333>>1]|0; $conv334 = $235 << 16 >> 16; $mul335 = Math_imul($and332, $conv334)|0; $shr336 = $mul335 >> 16; $add337 = (($mul328) + ($shr336))|0; $add338 = (($223) + ($add337))|0; $res_Q6 = $add338; $236 = $res_Q6; $237 = $buf_ptr; $arrayidx339 = ((($237)) + 16|0); $238 = HEAP32[$arrayidx339>>2]|0; $239 = $buf_ptr; $arrayidx340 = ((($239)) + 76|0); $240 = HEAP32[$arrayidx340>>2]|0; $add341 = (($238) + ($240))|0; $shr342 = $add341 >> 16; $241 = $FIR_Coefs$addr; $arrayidx343 = ((($241)) + 8|0); $242 = HEAP16[$arrayidx343>>1]|0; $conv344 = $242 << 16 >> 16; $mul345 = Math_imul($shr342, $conv344)|0; $243 = $buf_ptr; $arrayidx346 = ((($243)) + 16|0); $244 = HEAP32[$arrayidx346>>2]|0; $245 = $buf_ptr; $arrayidx347 = ((($245)) + 76|0); $246 = HEAP32[$arrayidx347>>2]|0; $add348 = (($244) + ($246))|0; $and349 = $add348 & 65535; $247 = $FIR_Coefs$addr; $arrayidx350 = ((($247)) + 8|0); $248 = HEAP16[$arrayidx350>>1]|0; $conv351 = $248 << 16 >> 16; $mul352 = Math_imul($and349, $conv351)|0; $shr353 = $mul352 >> 16; $add354 = (($mul345) + ($shr353))|0; $add355 = (($236) + ($add354))|0; $res_Q6 = $add355; $249 = $res_Q6; $250 = $buf_ptr; $arrayidx356 = ((($250)) + 20|0); $251 = HEAP32[$arrayidx356>>2]|0; $252 = $buf_ptr; $arrayidx357 = ((($252)) + 72|0); $253 = HEAP32[$arrayidx357>>2]|0; $add358 = (($251) + ($253))|0; $shr359 = $add358 >> 16; $254 = $FIR_Coefs$addr; $arrayidx360 = ((($254)) + 10|0); $255 = HEAP16[$arrayidx360>>1]|0; $conv361 = $255 << 16 >> 16; $mul362 = Math_imul($shr359, $conv361)|0; $256 = $buf_ptr; $arrayidx363 = ((($256)) + 20|0); $257 = HEAP32[$arrayidx363>>2]|0; $258 = $buf_ptr; $arrayidx364 = ((($258)) + 72|0); $259 = HEAP32[$arrayidx364>>2]|0; $add365 = (($257) + ($259))|0; $and366 = $add365 & 65535; $260 = $FIR_Coefs$addr; $arrayidx367 = ((($260)) + 10|0); $261 = HEAP16[$arrayidx367>>1]|0; $conv368 = $261 << 16 >> 16; $mul369 = Math_imul($and366, $conv368)|0; $shr370 = $mul369 >> 16; $add371 = (($mul362) + ($shr370))|0; $add372 = (($249) + ($add371))|0; $res_Q6 = $add372; $262 = $res_Q6; $263 = $buf_ptr; $arrayidx373 = ((($263)) + 24|0); $264 = HEAP32[$arrayidx373>>2]|0; $265 = $buf_ptr; $arrayidx374 = ((($265)) + 68|0); $266 = HEAP32[$arrayidx374>>2]|0; $add375 = (($264) + ($266))|0; $shr376 = $add375 >> 16; $267 = $FIR_Coefs$addr; $arrayidx377 = ((($267)) + 12|0); $268 = HEAP16[$arrayidx377>>1]|0; $conv378 = $268 << 16 >> 16; $mul379 = Math_imul($shr376, $conv378)|0; $269 = $buf_ptr; $arrayidx380 = ((($269)) + 24|0); $270 = HEAP32[$arrayidx380>>2]|0; $271 = $buf_ptr; $arrayidx381 = ((($271)) + 68|0); $272 = HEAP32[$arrayidx381>>2]|0; $add382 = (($270) + ($272))|0; $and383 = $add382 & 65535; $273 = $FIR_Coefs$addr; $arrayidx384 = ((($273)) + 12|0); $274 = HEAP16[$arrayidx384>>1]|0; $conv385 = $274 << 16 >> 16; $mul386 = Math_imul($and383, $conv385)|0; $shr387 = $mul386 >> 16; $add388 = (($mul379) + ($shr387))|0; $add389 = (($262) + ($add388))|0; $res_Q6 = $add389; $275 = $res_Q6; $276 = $buf_ptr; $arrayidx390 = ((($276)) + 28|0); $277 = HEAP32[$arrayidx390>>2]|0; $278 = $buf_ptr; $arrayidx391 = ((($278)) + 64|0); $279 = HEAP32[$arrayidx391>>2]|0; $add392 = (($277) + ($279))|0; $shr393 = $add392 >> 16; $280 = $FIR_Coefs$addr; $arrayidx394 = ((($280)) + 14|0); $281 = HEAP16[$arrayidx394>>1]|0; $conv395 = $281 << 16 >> 16; $mul396 = Math_imul($shr393, $conv395)|0; $282 = $buf_ptr; $arrayidx397 = ((($282)) + 28|0); $283 = HEAP32[$arrayidx397>>2]|0; $284 = $buf_ptr; $arrayidx398 = ((($284)) + 64|0); $285 = HEAP32[$arrayidx398>>2]|0; $add399 = (($283) + ($285))|0; $and400 = $add399 & 65535; $286 = $FIR_Coefs$addr; $arrayidx401 = ((($286)) + 14|0); $287 = HEAP16[$arrayidx401>>1]|0; $conv402 = $287 << 16 >> 16; $mul403 = Math_imul($and400, $conv402)|0; $shr404 = $mul403 >> 16; $add405 = (($mul396) + ($shr404))|0; $add406 = (($275) + ($add405))|0; $res_Q6 = $add406; $288 = $res_Q6; $289 = $buf_ptr; $arrayidx407 = ((($289)) + 32|0); $290 = HEAP32[$arrayidx407>>2]|0; $291 = $buf_ptr; $arrayidx408 = ((($291)) + 60|0); $292 = HEAP32[$arrayidx408>>2]|0; $add409 = (($290) + ($292))|0; $shr410 = $add409 >> 16; $293 = $FIR_Coefs$addr; $arrayidx411 = ((($293)) + 16|0); $294 = HEAP16[$arrayidx411>>1]|0; $conv412 = $294 << 16 >> 16; $mul413 = Math_imul($shr410, $conv412)|0; $295 = $buf_ptr; $arrayidx414 = ((($295)) + 32|0); $296 = HEAP32[$arrayidx414>>2]|0; $297 = $buf_ptr; $arrayidx415 = ((($297)) + 60|0); $298 = HEAP32[$arrayidx415>>2]|0; $add416 = (($296) + ($298))|0; $and417 = $add416 & 65535; $299 = $FIR_Coefs$addr; $arrayidx418 = ((($299)) + 16|0); $300 = HEAP16[$arrayidx418>>1]|0; $conv419 = $300 << 16 >> 16; $mul420 = Math_imul($and417, $conv419)|0; $shr421 = $mul420 >> 16; $add422 = (($mul413) + ($shr421))|0; $add423 = (($288) + ($add422))|0; $res_Q6 = $add423; $301 = $res_Q6; $302 = $buf_ptr; $arrayidx424 = ((($302)) + 36|0); $303 = HEAP32[$arrayidx424>>2]|0; $304 = $buf_ptr; $arrayidx425 = ((($304)) + 56|0); $305 = HEAP32[$arrayidx425>>2]|0; $add426 = (($303) + ($305))|0; $shr427 = $add426 >> 16; $306 = $FIR_Coefs$addr; $arrayidx428 = ((($306)) + 18|0); $307 = HEAP16[$arrayidx428>>1]|0; $conv429 = $307 << 16 >> 16; $mul430 = Math_imul($shr427, $conv429)|0; $308 = $buf_ptr; $arrayidx431 = ((($308)) + 36|0); $309 = HEAP32[$arrayidx431>>2]|0; $310 = $buf_ptr; $arrayidx432 = ((($310)) + 56|0); $311 = HEAP32[$arrayidx432>>2]|0; $add433 = (($309) + ($311))|0; $and434 = $add433 & 65535; $312 = $FIR_Coefs$addr; $arrayidx435 = ((($312)) + 18|0); $313 = HEAP16[$arrayidx435>>1]|0; $conv436 = $313 << 16 >> 16; $mul437 = Math_imul($and434, $conv436)|0; $shr438 = $mul437 >> 16; $add439 = (($mul430) + ($shr438))|0; $add440 = (($301) + ($add439))|0; $res_Q6 = $add440; $314 = $res_Q6; $315 = $buf_ptr; $arrayidx441 = ((($315)) + 40|0); $316 = HEAP32[$arrayidx441>>2]|0; $317 = $buf_ptr; $arrayidx442 = ((($317)) + 52|0); $318 = HEAP32[$arrayidx442>>2]|0; $add443 = (($316) + ($318))|0; $shr444 = $add443 >> 16; $319 = $FIR_Coefs$addr; $arrayidx445 = ((($319)) + 20|0); $320 = HEAP16[$arrayidx445>>1]|0; $conv446 = $320 << 16 >> 16; $mul447 = Math_imul($shr444, $conv446)|0; $321 = $buf_ptr; $arrayidx448 = ((($321)) + 40|0); $322 = HEAP32[$arrayidx448>>2]|0; $323 = $buf_ptr; $arrayidx449 = ((($323)) + 52|0); $324 = HEAP32[$arrayidx449>>2]|0; $add450 = (($322) + ($324))|0; $and451 = $add450 & 65535; $325 = $FIR_Coefs$addr; $arrayidx452 = ((($325)) + 20|0); $326 = HEAP16[$arrayidx452>>1]|0; $conv453 = $326 << 16 >> 16; $mul454 = Math_imul($and451, $conv453)|0; $shr455 = $mul454 >> 16; $add456 = (($mul447) + ($shr455))|0; $add457 = (($314) + ($add456))|0; $res_Q6 = $add457; $327 = $res_Q6; $328 = $buf_ptr; $arrayidx458 = ((($328)) + 44|0); $329 = HEAP32[$arrayidx458>>2]|0; $330 = $buf_ptr; $arrayidx459 = ((($330)) + 48|0); $331 = HEAP32[$arrayidx459>>2]|0; $add460 = (($329) + ($331))|0; $shr461 = $add460 >> 16; $332 = $FIR_Coefs$addr; $arrayidx462 = ((($332)) + 22|0); $333 = HEAP16[$arrayidx462>>1]|0; $conv463 = $333 << 16 >> 16; $mul464 = Math_imul($shr461, $conv463)|0; $334 = $buf_ptr; $arrayidx465 = ((($334)) + 44|0); $335 = HEAP32[$arrayidx465>>2]|0; $336 = $buf_ptr; $arrayidx466 = ((($336)) + 48|0); $337 = HEAP32[$arrayidx466>>2]|0; $add467 = (($335) + ($337))|0; $and468 = $add467 & 65535; $338 = $FIR_Coefs$addr; $arrayidx469 = ((($338)) + 22|0); $339 = HEAP16[$arrayidx469>>1]|0; $conv470 = $339 << 16 >> 16; $mul471 = Math_imul($and468, $conv470)|0; $shr472 = $mul471 >> 16; $add473 = (($mul464) + ($shr472))|0; $add474 = (($327) + ($add473))|0; $res_Q6 = $add474; $340 = $res_Q6; $shr475 = $340 >> 5; $add476 = (($shr475) + 1)|0; $shr477 = $add476 >> 1; $cmp478 = ($shr477|0)>(32767); if ($cmp478) { $cond495 = 32767; } else { $341 = $res_Q6; $shr482 = $341 >> 5; $add483 = (($shr482) + 1)|0; $shr484 = $add483 >> 1; $cmp485 = ($shr484|0)<(-32768); if ($cmp485) { $cond495 = -32768; } else { $342 = $res_Q6; $shr489 = $342 >> 5; $add490 = (($shr489) + 1)|0; $shr491 = $add490 >> 1; $cond495 = $shr491; } } $conv496 = $cond495&65535; $343 = $out$addr; $incdec$ptr497 = ((($343)) + 2|0); $out$addr = $incdec$ptr497; HEAP16[$343>>1] = $conv496; $344 = $index_increment_Q16$addr; $345 = $index_Q16; $add499 = (($345) + ($344))|0; $index_Q16 = $add499; } $589 = $out$addr; STACKTOP = sp;return ($589|0); break; } case 36: { $index_Q16 = 0; while(1) { $346 = $index_Q16; $347 = $max_index_Q16$addr; $cmp503 = ($346|0)<($347|0); if (!($cmp503)) { break; } $348 = $buf$addr; $349 = $index_Q16; $shr506 = $349 >> 16; $add$ptr507 = (($348) + ($shr506<<2)|0); $buf_ptr = $add$ptr507; $350 = $buf_ptr; $351 = HEAP32[$350>>2]|0; $352 = $buf_ptr; $arrayidx509 = ((($352)) + 140|0); $353 = HEAP32[$arrayidx509>>2]|0; $add510 = (($351) + ($353))|0; $shr511 = $add510 >> 16; $354 = $FIR_Coefs$addr; $355 = HEAP16[$354>>1]|0; $conv513 = $355 << 16 >> 16; $mul514 = Math_imul($shr511, $conv513)|0; $356 = $buf_ptr; $357 = HEAP32[$356>>2]|0; $358 = $buf_ptr; $arrayidx516 = ((($358)) + 140|0); $359 = HEAP32[$arrayidx516>>2]|0; $add517 = (($357) + ($359))|0; $and518 = $add517 & 65535; $360 = $FIR_Coefs$addr; $361 = HEAP16[$360>>1]|0; $conv520 = $361 << 16 >> 16; $mul521 = Math_imul($and518, $conv520)|0; $shr522 = $mul521 >> 16; $add523 = (($mul514) + ($shr522))|0; $res_Q6 = $add523; $362 = $res_Q6; $363 = $buf_ptr; $arrayidx524 = ((($363)) + 4|0); $364 = HEAP32[$arrayidx524>>2]|0; $365 = $buf_ptr; $arrayidx525 = ((($365)) + 136|0); $366 = HEAP32[$arrayidx525>>2]|0; $add526 = (($364) + ($366))|0; $shr527 = $add526 >> 16; $367 = $FIR_Coefs$addr; $arrayidx528 = ((($367)) + 2|0); $368 = HEAP16[$arrayidx528>>1]|0; $conv529 = $368 << 16 >> 16; $mul530 = Math_imul($shr527, $conv529)|0; $369 = $buf_ptr; $arrayidx531 = ((($369)) + 4|0); $370 = HEAP32[$arrayidx531>>2]|0; $371 = $buf_ptr; $arrayidx532 = ((($371)) + 136|0); $372 = HEAP32[$arrayidx532>>2]|0; $add533 = (($370) + ($372))|0; $and534 = $add533 & 65535; $373 = $FIR_Coefs$addr; $arrayidx535 = ((($373)) + 2|0); $374 = HEAP16[$arrayidx535>>1]|0; $conv536 = $374 << 16 >> 16; $mul537 = Math_imul($and534, $conv536)|0; $shr538 = $mul537 >> 16; $add539 = (($mul530) + ($shr538))|0; $add540 = (($362) + ($add539))|0; $res_Q6 = $add540; $375 = $res_Q6; $376 = $buf_ptr; $arrayidx541 = ((($376)) + 8|0); $377 = HEAP32[$arrayidx541>>2]|0; $378 = $buf_ptr; $arrayidx542 = ((($378)) + 132|0); $379 = HEAP32[$arrayidx542>>2]|0; $add543 = (($377) + ($379))|0; $shr544 = $add543 >> 16; $380 = $FIR_Coefs$addr; $arrayidx545 = ((($380)) + 4|0); $381 = HEAP16[$arrayidx545>>1]|0; $conv546 = $381 << 16 >> 16; $mul547 = Math_imul($shr544, $conv546)|0; $382 = $buf_ptr; $arrayidx548 = ((($382)) + 8|0); $383 = HEAP32[$arrayidx548>>2]|0; $384 = $buf_ptr; $arrayidx549 = ((($384)) + 132|0); $385 = HEAP32[$arrayidx549>>2]|0; $add550 = (($383) + ($385))|0; $and551 = $add550 & 65535; $386 = $FIR_Coefs$addr; $arrayidx552 = ((($386)) + 4|0); $387 = HEAP16[$arrayidx552>>1]|0; $conv553 = $387 << 16 >> 16; $mul554 = Math_imul($and551, $conv553)|0; $shr555 = $mul554 >> 16; $add556 = (($mul547) + ($shr555))|0; $add557 = (($375) + ($add556))|0; $res_Q6 = $add557; $388 = $res_Q6; $389 = $buf_ptr; $arrayidx558 = ((($389)) + 12|0); $390 = HEAP32[$arrayidx558>>2]|0; $391 = $buf_ptr; $arrayidx559 = ((($391)) + 128|0); $392 = HEAP32[$arrayidx559>>2]|0; $add560 = (($390) + ($392))|0; $shr561 = $add560 >> 16; $393 = $FIR_Coefs$addr; $arrayidx562 = ((($393)) + 6|0); $394 = HEAP16[$arrayidx562>>1]|0; $conv563 = $394 << 16 >> 16; $mul564 = Math_imul($shr561, $conv563)|0; $395 = $buf_ptr; $arrayidx565 = ((($395)) + 12|0); $396 = HEAP32[$arrayidx565>>2]|0; $397 = $buf_ptr; $arrayidx566 = ((($397)) + 128|0); $398 = HEAP32[$arrayidx566>>2]|0; $add567 = (($396) + ($398))|0; $and568 = $add567 & 65535; $399 = $FIR_Coefs$addr; $arrayidx569 = ((($399)) + 6|0); $400 = HEAP16[$arrayidx569>>1]|0; $conv570 = $400 << 16 >> 16; $mul571 = Math_imul($and568, $conv570)|0; $shr572 = $mul571 >> 16; $add573 = (($mul564) + ($shr572))|0; $add574 = (($388) + ($add573))|0; $res_Q6 = $add574; $401 = $res_Q6; $402 = $buf_ptr; $arrayidx575 = ((($402)) + 16|0); $403 = HEAP32[$arrayidx575>>2]|0; $404 = $buf_ptr; $arrayidx576 = ((($404)) + 124|0); $405 = HEAP32[$arrayidx576>>2]|0; $add577 = (($403) + ($405))|0; $shr578 = $add577 >> 16; $406 = $FIR_Coefs$addr; $arrayidx579 = ((($406)) + 8|0); $407 = HEAP16[$arrayidx579>>1]|0; $conv580 = $407 << 16 >> 16; $mul581 = Math_imul($shr578, $conv580)|0; $408 = $buf_ptr; $arrayidx582 = ((($408)) + 16|0); $409 = HEAP32[$arrayidx582>>2]|0; $410 = $buf_ptr; $arrayidx583 = ((($410)) + 124|0); $411 = HEAP32[$arrayidx583>>2]|0; $add584 = (($409) + ($411))|0; $and585 = $add584 & 65535; $412 = $FIR_Coefs$addr; $arrayidx586 = ((($412)) + 8|0); $413 = HEAP16[$arrayidx586>>1]|0; $conv587 = $413 << 16 >> 16; $mul588 = Math_imul($and585, $conv587)|0; $shr589 = $mul588 >> 16; $add590 = (($mul581) + ($shr589))|0; $add591 = (($401) + ($add590))|0; $res_Q6 = $add591; $414 = $res_Q6; $415 = $buf_ptr; $arrayidx592 = ((($415)) + 20|0); $416 = HEAP32[$arrayidx592>>2]|0; $417 = $buf_ptr; $arrayidx593 = ((($417)) + 120|0); $418 = HEAP32[$arrayidx593>>2]|0; $add594 = (($416) + ($418))|0; $shr595 = $add594 >> 16; $419 = $FIR_Coefs$addr; $arrayidx596 = ((($419)) + 10|0); $420 = HEAP16[$arrayidx596>>1]|0; $conv597 = $420 << 16 >> 16; $mul598 = Math_imul($shr595, $conv597)|0; $421 = $buf_ptr; $arrayidx599 = ((($421)) + 20|0); $422 = HEAP32[$arrayidx599>>2]|0; $423 = $buf_ptr; $arrayidx600 = ((($423)) + 120|0); $424 = HEAP32[$arrayidx600>>2]|0; $add601 = (($422) + ($424))|0; $and602 = $add601 & 65535; $425 = $FIR_Coefs$addr; $arrayidx603 = ((($425)) + 10|0); $426 = HEAP16[$arrayidx603>>1]|0; $conv604 = $426 << 16 >> 16; $mul605 = Math_imul($and602, $conv604)|0; $shr606 = $mul605 >> 16; $add607 = (($mul598) + ($shr606))|0; $add608 = (($414) + ($add607))|0; $res_Q6 = $add608; $427 = $res_Q6; $428 = $buf_ptr; $arrayidx609 = ((($428)) + 24|0); $429 = HEAP32[$arrayidx609>>2]|0; $430 = $buf_ptr; $arrayidx610 = ((($430)) + 116|0); $431 = HEAP32[$arrayidx610>>2]|0; $add611 = (($429) + ($431))|0; $shr612 = $add611 >> 16; $432 = $FIR_Coefs$addr; $arrayidx613 = ((($432)) + 12|0); $433 = HEAP16[$arrayidx613>>1]|0; $conv614 = $433 << 16 >> 16; $mul615 = Math_imul($shr612, $conv614)|0; $434 = $buf_ptr; $arrayidx616 = ((($434)) + 24|0); $435 = HEAP32[$arrayidx616>>2]|0; $436 = $buf_ptr; $arrayidx617 = ((($436)) + 116|0); $437 = HEAP32[$arrayidx617>>2]|0; $add618 = (($435) + ($437))|0; $and619 = $add618 & 65535; $438 = $FIR_Coefs$addr; $arrayidx620 = ((($438)) + 12|0); $439 = HEAP16[$arrayidx620>>1]|0; $conv621 = $439 << 16 >> 16; $mul622 = Math_imul($and619, $conv621)|0; $shr623 = $mul622 >> 16; $add624 = (($mul615) + ($shr623))|0; $add625 = (($427) + ($add624))|0; $res_Q6 = $add625; $440 = $res_Q6; $441 = $buf_ptr; $arrayidx626 = ((($441)) + 28|0); $442 = HEAP32[$arrayidx626>>2]|0; $443 = $buf_ptr; $arrayidx627 = ((($443)) + 112|0); $444 = HEAP32[$arrayidx627>>2]|0; $add628 = (($442) + ($444))|0; $shr629 = $add628 >> 16; $445 = $FIR_Coefs$addr; $arrayidx630 = ((($445)) + 14|0); $446 = HEAP16[$arrayidx630>>1]|0; $conv631 = $446 << 16 >> 16; $mul632 = Math_imul($shr629, $conv631)|0; $447 = $buf_ptr; $arrayidx633 = ((($447)) + 28|0); $448 = HEAP32[$arrayidx633>>2]|0; $449 = $buf_ptr; $arrayidx634 = ((($449)) + 112|0); $450 = HEAP32[$arrayidx634>>2]|0; $add635 = (($448) + ($450))|0; $and636 = $add635 & 65535; $451 = $FIR_Coefs$addr; $arrayidx637 = ((($451)) + 14|0); $452 = HEAP16[$arrayidx637>>1]|0; $conv638 = $452 << 16 >> 16; $mul639 = Math_imul($and636, $conv638)|0; $shr640 = $mul639 >> 16; $add641 = (($mul632) + ($shr640))|0; $add642 = (($440) + ($add641))|0; $res_Q6 = $add642; $453 = $res_Q6; $454 = $buf_ptr; $arrayidx643 = ((($454)) + 32|0); $455 = HEAP32[$arrayidx643>>2]|0; $456 = $buf_ptr; $arrayidx644 = ((($456)) + 108|0); $457 = HEAP32[$arrayidx644>>2]|0; $add645 = (($455) + ($457))|0; $shr646 = $add645 >> 16; $458 = $FIR_Coefs$addr; $arrayidx647 = ((($458)) + 16|0); $459 = HEAP16[$arrayidx647>>1]|0; $conv648 = $459 << 16 >> 16; $mul649 = Math_imul($shr646, $conv648)|0; $460 = $buf_ptr; $arrayidx650 = ((($460)) + 32|0); $461 = HEAP32[$arrayidx650>>2]|0; $462 = $buf_ptr; $arrayidx651 = ((($462)) + 108|0); $463 = HEAP32[$arrayidx651>>2]|0; $add652 = (($461) + ($463))|0; $and653 = $add652 & 65535; $464 = $FIR_Coefs$addr; $arrayidx654 = ((($464)) + 16|0); $465 = HEAP16[$arrayidx654>>1]|0; $conv655 = $465 << 16 >> 16; $mul656 = Math_imul($and653, $conv655)|0; $shr657 = $mul656 >> 16; $add658 = (($mul649) + ($shr657))|0; $add659 = (($453) + ($add658))|0; $res_Q6 = $add659; $466 = $res_Q6; $467 = $buf_ptr; $arrayidx660 = ((($467)) + 36|0); $468 = HEAP32[$arrayidx660>>2]|0; $469 = $buf_ptr; $arrayidx661 = ((($469)) + 104|0); $470 = HEAP32[$arrayidx661>>2]|0; $add662 = (($468) + ($470))|0; $shr663 = $add662 >> 16; $471 = $FIR_Coefs$addr; $arrayidx664 = ((($471)) + 18|0); $472 = HEAP16[$arrayidx664>>1]|0; $conv665 = $472 << 16 >> 16; $mul666 = Math_imul($shr663, $conv665)|0; $473 = $buf_ptr; $arrayidx667 = ((($473)) + 36|0); $474 = HEAP32[$arrayidx667>>2]|0; $475 = $buf_ptr; $arrayidx668 = ((($475)) + 104|0); $476 = HEAP32[$arrayidx668>>2]|0; $add669 = (($474) + ($476))|0; $and670 = $add669 & 65535; $477 = $FIR_Coefs$addr; $arrayidx671 = ((($477)) + 18|0); $478 = HEAP16[$arrayidx671>>1]|0; $conv672 = $478 << 16 >> 16; $mul673 = Math_imul($and670, $conv672)|0; $shr674 = $mul673 >> 16; $add675 = (($mul666) + ($shr674))|0; $add676 = (($466) + ($add675))|0; $res_Q6 = $add676; $479 = $res_Q6; $480 = $buf_ptr; $arrayidx677 = ((($480)) + 40|0); $481 = HEAP32[$arrayidx677>>2]|0; $482 = $buf_ptr; $arrayidx678 = ((($482)) + 100|0); $483 = HEAP32[$arrayidx678>>2]|0; $add679 = (($481) + ($483))|0; $shr680 = $add679 >> 16; $484 = $FIR_Coefs$addr; $arrayidx681 = ((($484)) + 20|0); $485 = HEAP16[$arrayidx681>>1]|0; $conv682 = $485 << 16 >> 16; $mul683 = Math_imul($shr680, $conv682)|0; $486 = $buf_ptr; $arrayidx684 = ((($486)) + 40|0); $487 = HEAP32[$arrayidx684>>2]|0; $488 = $buf_ptr; $arrayidx685 = ((($488)) + 100|0); $489 = HEAP32[$arrayidx685>>2]|0; $add686 = (($487) + ($489))|0; $and687 = $add686 & 65535; $490 = $FIR_Coefs$addr; $arrayidx688 = ((($490)) + 20|0); $491 = HEAP16[$arrayidx688>>1]|0; $conv689 = $491 << 16 >> 16; $mul690 = Math_imul($and687, $conv689)|0; $shr691 = $mul690 >> 16; $add692 = (($mul683) + ($shr691))|0; $add693 = (($479) + ($add692))|0; $res_Q6 = $add693; $492 = $res_Q6; $493 = $buf_ptr; $arrayidx694 = ((($493)) + 44|0); $494 = HEAP32[$arrayidx694>>2]|0; $495 = $buf_ptr; $arrayidx695 = ((($495)) + 96|0); $496 = HEAP32[$arrayidx695>>2]|0; $add696 = (($494) + ($496))|0; $shr697 = $add696 >> 16; $497 = $FIR_Coefs$addr; $arrayidx698 = ((($497)) + 22|0); $498 = HEAP16[$arrayidx698>>1]|0; $conv699 = $498 << 16 >> 16; $mul700 = Math_imul($shr697, $conv699)|0; $499 = $buf_ptr; $arrayidx701 = ((($499)) + 44|0); $500 = HEAP32[$arrayidx701>>2]|0; $501 = $buf_ptr; $arrayidx702 = ((($501)) + 96|0); $502 = HEAP32[$arrayidx702>>2]|0; $add703 = (($500) + ($502))|0; $and704 = $add703 & 65535; $503 = $FIR_Coefs$addr; $arrayidx705 = ((($503)) + 22|0); $504 = HEAP16[$arrayidx705>>1]|0; $conv706 = $504 << 16 >> 16; $mul707 = Math_imul($and704, $conv706)|0; $shr708 = $mul707 >> 16; $add709 = (($mul700) + ($shr708))|0; $add710 = (($492) + ($add709))|0; $res_Q6 = $add710; $505 = $res_Q6; $506 = $buf_ptr; $arrayidx711 = ((($506)) + 48|0); $507 = HEAP32[$arrayidx711>>2]|0; $508 = $buf_ptr; $arrayidx712 = ((($508)) + 92|0); $509 = HEAP32[$arrayidx712>>2]|0; $add713 = (($507) + ($509))|0; $shr714 = $add713 >> 16; $510 = $FIR_Coefs$addr; $arrayidx715 = ((($510)) + 24|0); $511 = HEAP16[$arrayidx715>>1]|0; $conv716 = $511 << 16 >> 16; $mul717 = Math_imul($shr714, $conv716)|0; $512 = $buf_ptr; $arrayidx718 = ((($512)) + 48|0); $513 = HEAP32[$arrayidx718>>2]|0; $514 = $buf_ptr; $arrayidx719 = ((($514)) + 92|0); $515 = HEAP32[$arrayidx719>>2]|0; $add720 = (($513) + ($515))|0; $and721 = $add720 & 65535; $516 = $FIR_Coefs$addr; $arrayidx722 = ((($516)) + 24|0); $517 = HEAP16[$arrayidx722>>1]|0; $conv723 = $517 << 16 >> 16; $mul724 = Math_imul($and721, $conv723)|0; $shr725 = $mul724 >> 16; $add726 = (($mul717) + ($shr725))|0; $add727 = (($505) + ($add726))|0; $res_Q6 = $add727; $518 = $res_Q6; $519 = $buf_ptr; $arrayidx728 = ((($519)) + 52|0); $520 = HEAP32[$arrayidx728>>2]|0; $521 = $buf_ptr; $arrayidx729 = ((($521)) + 88|0); $522 = HEAP32[$arrayidx729>>2]|0; $add730 = (($520) + ($522))|0; $shr731 = $add730 >> 16; $523 = $FIR_Coefs$addr; $arrayidx732 = ((($523)) + 26|0); $524 = HEAP16[$arrayidx732>>1]|0; $conv733 = $524 << 16 >> 16; $mul734 = Math_imul($shr731, $conv733)|0; $525 = $buf_ptr; $arrayidx735 = ((($525)) + 52|0); $526 = HEAP32[$arrayidx735>>2]|0; $527 = $buf_ptr; $arrayidx736 = ((($527)) + 88|0); $528 = HEAP32[$arrayidx736>>2]|0; $add737 = (($526) + ($528))|0; $and738 = $add737 & 65535; $529 = $FIR_Coefs$addr; $arrayidx739 = ((($529)) + 26|0); $530 = HEAP16[$arrayidx739>>1]|0; $conv740 = $530 << 16 >> 16; $mul741 = Math_imul($and738, $conv740)|0; $shr742 = $mul741 >> 16; $add743 = (($mul734) + ($shr742))|0; $add744 = (($518) + ($add743))|0; $res_Q6 = $add744; $531 = $res_Q6; $532 = $buf_ptr; $arrayidx745 = ((($532)) + 56|0); $533 = HEAP32[$arrayidx745>>2]|0; $534 = $buf_ptr; $arrayidx746 = ((($534)) + 84|0); $535 = HEAP32[$arrayidx746>>2]|0; $add747 = (($533) + ($535))|0; $shr748 = $add747 >> 16; $536 = $FIR_Coefs$addr; $arrayidx749 = ((($536)) + 28|0); $537 = HEAP16[$arrayidx749>>1]|0; $conv750 = $537 << 16 >> 16; $mul751 = Math_imul($shr748, $conv750)|0; $538 = $buf_ptr; $arrayidx752 = ((($538)) + 56|0); $539 = HEAP32[$arrayidx752>>2]|0; $540 = $buf_ptr; $arrayidx753 = ((($540)) + 84|0); $541 = HEAP32[$arrayidx753>>2]|0; $add754 = (($539) + ($541))|0; $and755 = $add754 & 65535; $542 = $FIR_Coefs$addr; $arrayidx756 = ((($542)) + 28|0); $543 = HEAP16[$arrayidx756>>1]|0; $conv757 = $543 << 16 >> 16; $mul758 = Math_imul($and755, $conv757)|0; $shr759 = $mul758 >> 16; $add760 = (($mul751) + ($shr759))|0; $add761 = (($531) + ($add760))|0; $res_Q6 = $add761; $544 = $res_Q6; $545 = $buf_ptr; $arrayidx762 = ((($545)) + 60|0); $546 = HEAP32[$arrayidx762>>2]|0; $547 = $buf_ptr; $arrayidx763 = ((($547)) + 80|0); $548 = HEAP32[$arrayidx763>>2]|0; $add764 = (($546) + ($548))|0; $shr765 = $add764 >> 16; $549 = $FIR_Coefs$addr; $arrayidx766 = ((($549)) + 30|0); $550 = HEAP16[$arrayidx766>>1]|0; $conv767 = $550 << 16 >> 16; $mul768 = Math_imul($shr765, $conv767)|0; $551 = $buf_ptr; $arrayidx769 = ((($551)) + 60|0); $552 = HEAP32[$arrayidx769>>2]|0; $553 = $buf_ptr; $arrayidx770 = ((($553)) + 80|0); $554 = HEAP32[$arrayidx770>>2]|0; $add771 = (($552) + ($554))|0; $and772 = $add771 & 65535; $555 = $FIR_Coefs$addr; $arrayidx773 = ((($555)) + 30|0); $556 = HEAP16[$arrayidx773>>1]|0; $conv774 = $556 << 16 >> 16; $mul775 = Math_imul($and772, $conv774)|0; $shr776 = $mul775 >> 16; $add777 = (($mul768) + ($shr776))|0; $add778 = (($544) + ($add777))|0; $res_Q6 = $add778; $557 = $res_Q6; $558 = $buf_ptr; $arrayidx779 = ((($558)) + 64|0); $559 = HEAP32[$arrayidx779>>2]|0; $560 = $buf_ptr; $arrayidx780 = ((($560)) + 76|0); $561 = HEAP32[$arrayidx780>>2]|0; $add781 = (($559) + ($561))|0; $shr782 = $add781 >> 16; $562 = $FIR_Coefs$addr; $arrayidx783 = ((($562)) + 32|0); $563 = HEAP16[$arrayidx783>>1]|0; $conv784 = $563 << 16 >> 16; $mul785 = Math_imul($shr782, $conv784)|0; $564 = $buf_ptr; $arrayidx786 = ((($564)) + 64|0); $565 = HEAP32[$arrayidx786>>2]|0; $566 = $buf_ptr; $arrayidx787 = ((($566)) + 76|0); $567 = HEAP32[$arrayidx787>>2]|0; $add788 = (($565) + ($567))|0; $and789 = $add788 & 65535; $568 = $FIR_Coefs$addr; $arrayidx790 = ((($568)) + 32|0); $569 = HEAP16[$arrayidx790>>1]|0; $conv791 = $569 << 16 >> 16; $mul792 = Math_imul($and789, $conv791)|0; $shr793 = $mul792 >> 16; $add794 = (($mul785) + ($shr793))|0; $add795 = (($557) + ($add794))|0; $res_Q6 = $add795; $570 = $res_Q6; $571 = $buf_ptr; $arrayidx796 = ((($571)) + 68|0); $572 = HEAP32[$arrayidx796>>2]|0; $573 = $buf_ptr; $arrayidx797 = ((($573)) + 72|0); $574 = HEAP32[$arrayidx797>>2]|0; $add798 = (($572) + ($574))|0; $shr799 = $add798 >> 16; $575 = $FIR_Coefs$addr; $arrayidx800 = ((($575)) + 34|0); $576 = HEAP16[$arrayidx800>>1]|0; $conv801 = $576 << 16 >> 16; $mul802 = Math_imul($shr799, $conv801)|0; $577 = $buf_ptr; $arrayidx803 = ((($577)) + 68|0); $578 = HEAP32[$arrayidx803>>2]|0; $579 = $buf_ptr; $arrayidx804 = ((($579)) + 72|0); $580 = HEAP32[$arrayidx804>>2]|0; $add805 = (($578) + ($580))|0; $and806 = $add805 & 65535; $581 = $FIR_Coefs$addr; $arrayidx807 = ((($581)) + 34|0); $582 = HEAP16[$arrayidx807>>1]|0; $conv808 = $582 << 16 >> 16; $mul809 = Math_imul($and806, $conv808)|0; $shr810 = $mul809 >> 16; $add811 = (($mul802) + ($shr810))|0; $add812 = (($570) + ($add811))|0; $res_Q6 = $add812; $583 = $res_Q6; $shr813 = $583 >> 5; $add814 = (($shr813) + 1)|0; $shr815 = $add814 >> 1; $cmp816 = ($shr815|0)>(32767); if ($cmp816) { $cond833 = 32767; } else { $584 = $res_Q6; $shr820 = $584 >> 5; $add821 = (($shr820) + 1)|0; $shr822 = $add821 >> 1; $cmp823 = ($shr822|0)<(-32768); if ($cmp823) { $cond833 = -32768; } else { $585 = $res_Q6; $shr827 = $585 >> 5; $add828 = (($shr827) + 1)|0; $shr829 = $add828 >> 1; $cond833 = $shr829; } } $conv834 = $cond833&65535; $586 = $out$addr; $incdec$ptr835 = ((($586)) + 2|0); $out$addr = $incdec$ptr835; HEAP16[$586>>1] = $conv834; $587 = $index_increment_Q16$addr; $588 = $index_Q16; $add837 = (($588) + ($587))|0; $index_Q16 = $add837; } $589 = $out$addr; STACKTOP = sp;return ($589|0); break; } default: { $589 = $out$addr; STACKTOP = sp;return ($589|0); } } return (0)|0; } function _silk_resampler_private_IIR_FIR($SS,$out,$in,$inLen) { $SS = $SS|0; $out = $out|0; $in = $in|0; $inLen = $inLen|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $S = 0, $SS$addr = 0, $add = 0, $add$ptr = 0, $arrayidx = 0, $arrayidx11 = 0, $arrayidx6 = 0, $batchSize = 0, $batchSize1 = 0, $batchSize2 = 0, $call = 0; var $cmp = 0, $cmp4 = 0, $cond = 0, $in$addr = 0, $inLen$addr = 0, $index_increment_Q16 = 0, $invRatio_Q16 = 0, $max_index_Q16 = 0, $mul = 0, $nSamplesIn = 0, $out$addr = 0, $sFIR = 0, $sFIR7 = 0, $saved_stack = 0, $shl = 0, $shl10 = 0, $shl5 = 0, $sub = 0, $vla = 0, $vla$alloca_mul = 0; var label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $SS$addr = $SS; $out$addr = $out; $in$addr = $in; $inLen$addr = $inLen; $0 = $SS$addr; $S = $0; $1 = $S; $batchSize = ((($1)) + 268|0); $2 = HEAP32[$batchSize>>2]|0; $mul = $2<<1; $add = (($mul) + 8)|0; $3 = (_llvm_stacksave()|0); $saved_stack = $3; $vla$alloca_mul = $add<<1; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $4 = $S; $sFIR = ((($4)) + 24|0); ;HEAP16[$vla>>1]=HEAP16[$sFIR>>1]|0;HEAP16[$vla+2>>1]=HEAP16[$sFIR+2>>1]|0;HEAP16[$vla+4>>1]=HEAP16[$sFIR+4>>1]|0;HEAP16[$vla+6>>1]=HEAP16[$sFIR+6>>1]|0;HEAP16[$vla+8>>1]=HEAP16[$sFIR+8>>1]|0;HEAP16[$vla+10>>1]=HEAP16[$sFIR+10>>1]|0;HEAP16[$vla+12>>1]=HEAP16[$sFIR+12>>1]|0;HEAP16[$vla+14>>1]=HEAP16[$sFIR+14>>1]|0; $5 = $S; $invRatio_Q16 = ((($5)) + 272|0); $6 = HEAP32[$invRatio_Q16>>2]|0; $index_increment_Q16 = $6; while(1) { $7 = $inLen$addr; $8 = $S; $batchSize1 = ((($8)) + 268|0); $9 = HEAP32[$batchSize1>>2]|0; $cmp = ($7|0)<($9|0); if ($cmp) { $10 = $inLen$addr; $cond = $10; } else { $11 = $S; $batchSize2 = ((($11)) + 268|0); $12 = HEAP32[$batchSize2>>2]|0; $cond = $12; } $nSamplesIn = $cond; $13 = $S; $arrayidx = ((($vla)) + 16|0); $14 = $in$addr; $15 = $nSamplesIn; _silk_resampler_private_up2_HQ($13,$arrayidx,$14,$15); $16 = $nSamplesIn; $shl = $16 << 17; $max_index_Q16 = $shl; $17 = $out$addr; $18 = $max_index_Q16; $19 = $index_increment_Q16; $call = (_silk_resampler_private_IIR_FIR_INTERPOL($17,$vla,$18,$19)|0); $out$addr = $call; $20 = $nSamplesIn; $21 = $in$addr; $add$ptr = (($21) + ($20<<1)|0); $in$addr = $add$ptr; $22 = $nSamplesIn; $23 = $inLen$addr; $sub = (($23) - ($22))|0; $inLen$addr = $sub; $24 = $inLen$addr; $cmp4 = ($24|0)>(0); if (!($cmp4)) { break; } $25 = $nSamplesIn; $shl5 = $25 << 1; $arrayidx6 = (($vla) + ($shl5<<1)|0); ;HEAP16[$vla>>1]=HEAP16[$arrayidx6>>1]|0;HEAP16[$vla+2>>1]=HEAP16[$arrayidx6+2>>1]|0;HEAP16[$vla+4>>1]=HEAP16[$arrayidx6+4>>1]|0;HEAP16[$vla+6>>1]=HEAP16[$arrayidx6+6>>1]|0;HEAP16[$vla+8>>1]=HEAP16[$arrayidx6+8>>1]|0;HEAP16[$vla+10>>1]=HEAP16[$arrayidx6+10>>1]|0;HEAP16[$vla+12>>1]=HEAP16[$arrayidx6+12>>1]|0;HEAP16[$vla+14>>1]=HEAP16[$arrayidx6+14>>1]|0; } $26 = $S; $sFIR7 = ((($26)) + 24|0); $27 = $nSamplesIn; $shl10 = $27 << 1; $arrayidx11 = (($vla) + ($shl10<<1)|0); ;HEAP16[$sFIR7>>1]=HEAP16[$arrayidx11>>1]|0;HEAP16[$sFIR7+2>>1]=HEAP16[$arrayidx11+2>>1]|0;HEAP16[$sFIR7+4>>1]=HEAP16[$arrayidx11+4>>1]|0;HEAP16[$sFIR7+6>>1]=HEAP16[$arrayidx11+6>>1]|0;HEAP16[$sFIR7+8>>1]=HEAP16[$arrayidx11+8>>1]|0;HEAP16[$sFIR7+10>>1]=HEAP16[$arrayidx11+10>>1]|0;HEAP16[$sFIR7+12>>1]=HEAP16[$arrayidx11+12>>1]|0;HEAP16[$sFIR7+14>>1]=HEAP16[$arrayidx11+14>>1]|0; $28 = $saved_stack; _llvm_stackrestore(($28|0)); STACKTOP = sp;return; } function _silk_resampler_private_IIR_FIR_INTERPOL($out,$buf,$max_index_Q16,$index_increment_Q16) { $out = $out|0; $buf = $buf|0; $max_index_Q16 = $max_index_Q16|0; $index_increment_Q16 = $index_increment_Q16|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $add17 = 0, $add24 = 0, $add31 = 0, $add38 = 0, $add46 = 0, $add54 = 0, $add62 = 0; var $add64 = 0, $add69 = 0, $add76 = 0, $add81 = 0, $and = 0, $and1 = 0, $and2 = 0, $arrayidx = 0, $arrayidx11 = 0, $arrayidx13 = 0, $arrayidx14 = 0, $arrayidx18 = 0, $arrayidx20 = 0, $arrayidx21 = 0, $arrayidx25 = 0, $arrayidx27 = 0, $arrayidx28 = 0, $arrayidx32 = 0, $arrayidx34 = 0, $arrayidx35 = 0; var $arrayidx39 = 0, $arrayidx42 = 0, $arrayidx43 = 0, $arrayidx47 = 0, $arrayidx50 = 0, $arrayidx51 = 0, $arrayidx55 = 0, $arrayidx58 = 0, $arrayidx7 = 0, $buf$addr = 0, $buf_ptr = 0, $cmp = 0, $cmp66 = 0, $cmp71 = 0, $cond79 = 0, $conv = 0, $conv12 = 0, $conv15 = 0, $conv19 = 0, $conv22 = 0; var $conv26 = 0, $conv29 = 0, $conv33 = 0, $conv36 = 0, $conv40 = 0, $conv44 = 0, $conv48 = 0, $conv52 = 0, $conv56 = 0, $conv60 = 0, $conv80 = 0, $conv9 = 0, $incdec$ptr = 0, $index_Q16 = 0, $index_increment_Q16$addr = 0, $max_index_Q16$addr = 0, $mul = 0, $mul10 = 0, $mul16 = 0, $mul23 = 0; var $mul3 = 0, $mul30 = 0, $mul37 = 0, $mul45 = 0, $mul53 = 0, $mul61 = 0, $out$addr = 0, $res_Q15 = 0, $shr = 0, $shr4 = 0, $shr5 = 0, $shr63 = 0, $shr65 = 0, $shr68 = 0, $shr70 = 0, $shr75 = 0, $shr77 = 0, $sub = 0, $sub41 = 0, $sub49 = 0; var $sub57 = 0, $table_index = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $out$addr = $out; $buf$addr = $buf; $max_index_Q16$addr = $max_index_Q16; $index_increment_Q16$addr = $index_increment_Q16; $index_Q16 = 0; while(1) { $0 = $index_Q16; $1 = $max_index_Q16$addr; $cmp = ($0|0)<($1|0); if (!($cmp)) { break; } $2 = $index_Q16; $and = $2 & 65535; $shr = $and >> 16; $mul = ($shr*12)|0; $3 = $index_Q16; $and1 = $3 & 65535; $and2 = $and1 & 65535; $mul3 = ($and2*12)|0; $shr4 = $mul3 >> 16; $add = (($mul) + ($shr4))|0; $table_index = $add; $4 = $buf$addr; $5 = $index_Q16; $shr5 = $5 >> 16; $arrayidx = (($4) + ($shr5<<1)|0); $buf_ptr = $arrayidx; $6 = $buf_ptr; $7 = HEAP16[$6>>1]|0; $conv = $7 << 16 >> 16; $8 = $table_index; $arrayidx7 = (23796 + ($8<<3)|0); $9 = HEAP16[$arrayidx7>>1]|0; $conv9 = $9 << 16 >> 16; $mul10 = Math_imul($conv, $conv9)|0; $res_Q15 = $mul10; $10 = $res_Q15; $11 = $buf_ptr; $arrayidx11 = ((($11)) + 2|0); $12 = HEAP16[$arrayidx11>>1]|0; $conv12 = $12 << 16 >> 16; $13 = $table_index; $arrayidx13 = (23796 + ($13<<3)|0); $arrayidx14 = ((($arrayidx13)) + 2|0); $14 = HEAP16[$arrayidx14>>1]|0; $conv15 = $14 << 16 >> 16; $mul16 = Math_imul($conv12, $conv15)|0; $add17 = (($10) + ($mul16))|0; $res_Q15 = $add17; $15 = $res_Q15; $16 = $buf_ptr; $arrayidx18 = ((($16)) + 4|0); $17 = HEAP16[$arrayidx18>>1]|0; $conv19 = $17 << 16 >> 16; $18 = $table_index; $arrayidx20 = (23796 + ($18<<3)|0); $arrayidx21 = ((($arrayidx20)) + 4|0); $19 = HEAP16[$arrayidx21>>1]|0; $conv22 = $19 << 16 >> 16; $mul23 = Math_imul($conv19, $conv22)|0; $add24 = (($15) + ($mul23))|0; $res_Q15 = $add24; $20 = $res_Q15; $21 = $buf_ptr; $arrayidx25 = ((($21)) + 6|0); $22 = HEAP16[$arrayidx25>>1]|0; $conv26 = $22 << 16 >> 16; $23 = $table_index; $arrayidx27 = (23796 + ($23<<3)|0); $arrayidx28 = ((($arrayidx27)) + 6|0); $24 = HEAP16[$arrayidx28>>1]|0; $conv29 = $24 << 16 >> 16; $mul30 = Math_imul($conv26, $conv29)|0; $add31 = (($20) + ($mul30))|0; $res_Q15 = $add31; $25 = $res_Q15; $26 = $buf_ptr; $arrayidx32 = ((($26)) + 8|0); $27 = HEAP16[$arrayidx32>>1]|0; $conv33 = $27 << 16 >> 16; $28 = $table_index; $sub = (11 - ($28))|0; $arrayidx34 = (23796 + ($sub<<3)|0); $arrayidx35 = ((($arrayidx34)) + 6|0); $29 = HEAP16[$arrayidx35>>1]|0; $conv36 = $29 << 16 >> 16; $mul37 = Math_imul($conv33, $conv36)|0; $add38 = (($25) + ($mul37))|0; $res_Q15 = $add38; $30 = $res_Q15; $31 = $buf_ptr; $arrayidx39 = ((($31)) + 10|0); $32 = HEAP16[$arrayidx39>>1]|0; $conv40 = $32 << 16 >> 16; $33 = $table_index; $sub41 = (11 - ($33))|0; $arrayidx42 = (23796 + ($sub41<<3)|0); $arrayidx43 = ((($arrayidx42)) + 4|0); $34 = HEAP16[$arrayidx43>>1]|0; $conv44 = $34 << 16 >> 16; $mul45 = Math_imul($conv40, $conv44)|0; $add46 = (($30) + ($mul45))|0; $res_Q15 = $add46; $35 = $res_Q15; $36 = $buf_ptr; $arrayidx47 = ((($36)) + 12|0); $37 = HEAP16[$arrayidx47>>1]|0; $conv48 = $37 << 16 >> 16; $38 = $table_index; $sub49 = (11 - ($38))|0; $arrayidx50 = (23796 + ($sub49<<3)|0); $arrayidx51 = ((($arrayidx50)) + 2|0); $39 = HEAP16[$arrayidx51>>1]|0; $conv52 = $39 << 16 >> 16; $mul53 = Math_imul($conv48, $conv52)|0; $add54 = (($35) + ($mul53))|0; $res_Q15 = $add54; $40 = $res_Q15; $41 = $buf_ptr; $arrayidx55 = ((($41)) + 14|0); $42 = HEAP16[$arrayidx55>>1]|0; $conv56 = $42 << 16 >> 16; $43 = $table_index; $sub57 = (11 - ($43))|0; $arrayidx58 = (23796 + ($sub57<<3)|0); $44 = HEAP16[$arrayidx58>>1]|0; $conv60 = $44 << 16 >> 16; $mul61 = Math_imul($conv56, $conv60)|0; $add62 = (($40) + ($mul61))|0; $res_Q15 = $add62; $45 = $res_Q15; $shr63 = $45 >> 14; $add64 = (($shr63) + 1)|0; $shr65 = $add64 >> 1; $cmp66 = ($shr65|0)>(32767); if ($cmp66) { $cond79 = 32767; } else { $46 = $res_Q15; $shr68 = $46 >> 14; $add69 = (($shr68) + 1)|0; $shr70 = $add69 >> 1; $cmp71 = ($shr70|0)<(-32768); if ($cmp71) { $cond79 = -32768; } else { $47 = $res_Q15; $shr75 = $47 >> 14; $add76 = (($shr75) + 1)|0; $shr77 = $add76 >> 1; $cond79 = $shr77; } } $conv80 = $cond79&65535; $48 = $out$addr; $incdec$ptr = ((($48)) + 2|0); $out$addr = $incdec$ptr; HEAP16[$48>>1] = $conv80; $49 = $index_increment_Q16$addr; $50 = $index_Q16; $add81 = (($50) + ($49))|0; $index_Q16 = $add81; } $51 = $out$addr; STACKTOP = sp;return ($51|0); } function _silk_resampler_private_up2_HQ($S,$out,$in,$len) { $S = $S|0; $out = $out|0; $in = $in|0; $len = $len|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $S$addr = 0, $X = 0, $Y = 0, $add = 0; var $add100 = 0, $add103 = 0, $add110 = 0, $add117 = 0, $add125 = 0, $add19 = 0, $add21 = 0, $add22 = 0, $add33 = 0, $add34 = 0, $add36 = 0, $add37 = 0, $add40 = 0, $add45 = 0, $add52 = 0, $add68 = 0, $add7 = 0, $add70 = 0, $add71 = 0, $add8 = 0; var $add82 = 0, $add84 = 0, $add85 = 0, $add96 = 0, $add97 = 0, $add99 = 0, $and = 0, $and15 = 0, $and29 = 0, $and64 = 0, $and78 = 0, $and92 = 0, $arrayidx = 0, $arrayidx10 = 0, $arrayidx101 = 0, $arrayidx126 = 0, $arrayidx20 = 0, $arrayidx23 = 0, $arrayidx24 = 0, $arrayidx35 = 0; var $arrayidx38 = 0, $arrayidx58 = 0, $arrayidx59 = 0, $arrayidx69 = 0, $arrayidx72 = 0, $arrayidx73 = 0, $arrayidx83 = 0, $arrayidx86 = 0, $arrayidx87 = 0, $arrayidx98 = 0, $cmp = 0, $cmp105 = 0, $cmp112 = 0, $cmp42 = 0, $cmp47 = 0, $cond122 = 0, $cond55 = 0, $conv = 0, $conv123 = 0, $conv13 = 0; var $conv16 = 0, $conv2 = 0, $conv27 = 0, $conv3 = 0, $conv30 = 0, $conv56 = 0, $conv62 = 0, $conv65 = 0, $conv76 = 0, $conv79 = 0, $conv90 = 0, $conv93 = 0, $in$addr = 0, $in32 = 0, $inc = 0, $k = 0, $len$addr = 0, $mul = 0, $mul124 = 0, $mul14 = 0; var $mul17 = 0, $mul28 = 0, $mul31 = 0, $mul4 = 0, $mul57 = 0, $mul63 = 0, $mul66 = 0, $mul77 = 0, $mul80 = 0, $mul91 = 0, $mul94 = 0, $out$addr = 0, $out32_1 = 0, $out32_2 = 0, $shl = 0, $shr = 0, $shr102 = 0, $shr104 = 0, $shr109 = 0, $shr111 = 0; var $shr116 = 0, $shr118 = 0, $shr12 = 0, $shr18 = 0, $shr26 = 0, $shr32 = 0, $shr39 = 0, $shr41 = 0, $shr44 = 0, $shr46 = 0, $shr5 = 0, $shr51 = 0, $shr53 = 0, $shr61 = 0, $shr67 = 0, $shr75 = 0, $shr81 = 0, $shr89 = 0, $shr95 = 0, $sub = 0; var $sub11 = 0, $sub25 = 0, $sub60 = 0, $sub74 = 0, $sub88 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $S$addr = $S; $out$addr = $out; $in$addr = $in; $len$addr = $len; $k = 0; while(1) { $0 = $k; $1 = $len$addr; $cmp = ($0|0)<($1|0); if (!($cmp)) { break; } $2 = $in$addr; $3 = $k; $arrayidx = (($2) + ($3<<1)|0); $4 = HEAP16[$arrayidx>>1]|0; $conv = $4 << 16 >> 16; $shl = $conv << 10; $in32 = $shl; $5 = $in32; $6 = $S$addr; $7 = HEAP32[$6>>2]|0; $sub = (($5) - ($7))|0; $Y = $sub; $8 = $Y; $shr = $8 >> 16; $9 = HEAP16[11763]|0; $conv2 = $9 << 16 >> 16; $mul = Math_imul($shr, $conv2)|0; $10 = $Y; $and = $10 & 65535; $11 = HEAP16[11763]|0; $conv3 = $11 << 16 >> 16; $mul4 = Math_imul($and, $conv3)|0; $shr5 = $mul4 >> 16; $add = (($mul) + ($shr5))|0; $X = $add; $12 = $S$addr; $13 = HEAP32[$12>>2]|0; $14 = $X; $add7 = (($13) + ($14))|0; $out32_1 = $add7; $15 = $in32; $16 = $X; $add8 = (($15) + ($16))|0; $17 = $S$addr; HEAP32[$17>>2] = $add8; $18 = $out32_1; $19 = $S$addr; $arrayidx10 = ((($19)) + 4|0); $20 = HEAP32[$arrayidx10>>2]|0; $sub11 = (($18) - ($20))|0; $Y = $sub11; $21 = $Y; $shr12 = $21 >> 16; $22 = HEAP16[(23528)>>1]|0; $conv13 = $22 << 16 >> 16; $mul14 = Math_imul($shr12, $conv13)|0; $23 = $Y; $and15 = $23 & 65535; $24 = HEAP16[(23528)>>1]|0; $conv16 = $24 << 16 >> 16; $mul17 = Math_imul($and15, $conv16)|0; $shr18 = $mul17 >> 16; $add19 = (($mul14) + ($shr18))|0; $X = $add19; $25 = $S$addr; $arrayidx20 = ((($25)) + 4|0); $26 = HEAP32[$arrayidx20>>2]|0; $27 = $X; $add21 = (($26) + ($27))|0; $out32_2 = $add21; $28 = $out32_1; $29 = $X; $add22 = (($28) + ($29))|0; $30 = $S$addr; $arrayidx23 = ((($30)) + 4|0); HEAP32[$arrayidx23>>2] = $add22; $31 = $out32_2; $32 = $S$addr; $arrayidx24 = ((($32)) + 8|0); $33 = HEAP32[$arrayidx24>>2]|0; $sub25 = (($31) - ($33))|0; $Y = $sub25; $34 = $Y; $35 = $Y; $shr26 = $35 >> 16; $36 = HEAP16[(23530)>>1]|0; $conv27 = $36 << 16 >> 16; $mul28 = Math_imul($shr26, $conv27)|0; $37 = $Y; $and29 = $37 & 65535; $38 = HEAP16[(23530)>>1]|0; $conv30 = $38 << 16 >> 16; $mul31 = Math_imul($and29, $conv30)|0; $shr32 = $mul31 >> 16; $add33 = (($mul28) + ($shr32))|0; $add34 = (($34) + ($add33))|0; $X = $add34; $39 = $S$addr; $arrayidx35 = ((($39)) + 8|0); $40 = HEAP32[$arrayidx35>>2]|0; $41 = $X; $add36 = (($40) + ($41))|0; $out32_1 = $add36; $42 = $out32_2; $43 = $X; $add37 = (($42) + ($43))|0; $44 = $S$addr; $arrayidx38 = ((($44)) + 8|0); HEAP32[$arrayidx38>>2] = $add37; $45 = $out32_1; $shr39 = $45 >> 9; $add40 = (($shr39) + 1)|0; $shr41 = $add40 >> 1; $cmp42 = ($shr41|0)>(32767); if ($cmp42) { $cond55 = 32767; } else { $46 = $out32_1; $shr44 = $46 >> 9; $add45 = (($shr44) + 1)|0; $shr46 = $add45 >> 1; $cmp47 = ($shr46|0)<(-32768); if ($cmp47) { $cond55 = -32768; } else { $47 = $out32_1; $shr51 = $47 >> 9; $add52 = (($shr51) + 1)|0; $shr53 = $add52 >> 1; $cond55 = $shr53; } } $conv56 = $cond55&65535; $48 = $out$addr; $49 = $k; $mul57 = $49<<1; $arrayidx58 = (($48) + ($mul57<<1)|0); HEAP16[$arrayidx58>>1] = $conv56; $50 = $in32; $51 = $S$addr; $arrayidx59 = ((($51)) + 12|0); $52 = HEAP32[$arrayidx59>>2]|0; $sub60 = (($50) - ($52))|0; $Y = $sub60; $53 = $Y; $shr61 = $53 >> 16; $54 = HEAP16[11766]|0; $conv62 = $54 << 16 >> 16; $mul63 = Math_imul($shr61, $conv62)|0; $55 = $Y; $and64 = $55 & 65535; $56 = HEAP16[11766]|0; $conv65 = $56 << 16 >> 16; $mul66 = Math_imul($and64, $conv65)|0; $shr67 = $mul66 >> 16; $add68 = (($mul63) + ($shr67))|0; $X = $add68; $57 = $S$addr; $arrayidx69 = ((($57)) + 12|0); $58 = HEAP32[$arrayidx69>>2]|0; $59 = $X; $add70 = (($58) + ($59))|0; $out32_1 = $add70; $60 = $in32; $61 = $X; $add71 = (($60) + ($61))|0; $62 = $S$addr; $arrayidx72 = ((($62)) + 12|0); HEAP32[$arrayidx72>>2] = $add71; $63 = $out32_1; $64 = $S$addr; $arrayidx73 = ((($64)) + 16|0); $65 = HEAP32[$arrayidx73>>2]|0; $sub74 = (($63) - ($65))|0; $Y = $sub74; $66 = $Y; $shr75 = $66 >> 16; $67 = HEAP16[(23534)>>1]|0; $conv76 = $67 << 16 >> 16; $mul77 = Math_imul($shr75, $conv76)|0; $68 = $Y; $and78 = $68 & 65535; $69 = HEAP16[(23534)>>1]|0; $conv79 = $69 << 16 >> 16; $mul80 = Math_imul($and78, $conv79)|0; $shr81 = $mul80 >> 16; $add82 = (($mul77) + ($shr81))|0; $X = $add82; $70 = $S$addr; $arrayidx83 = ((($70)) + 16|0); $71 = HEAP32[$arrayidx83>>2]|0; $72 = $X; $add84 = (($71) + ($72))|0; $out32_2 = $add84; $73 = $out32_1; $74 = $X; $add85 = (($73) + ($74))|0; $75 = $S$addr; $arrayidx86 = ((($75)) + 16|0); HEAP32[$arrayidx86>>2] = $add85; $76 = $out32_2; $77 = $S$addr; $arrayidx87 = ((($77)) + 20|0); $78 = HEAP32[$arrayidx87>>2]|0; $sub88 = (($76) - ($78))|0; $Y = $sub88; $79 = $Y; $80 = $Y; $shr89 = $80 >> 16; $81 = HEAP16[(23536)>>1]|0; $conv90 = $81 << 16 >> 16; $mul91 = Math_imul($shr89, $conv90)|0; $82 = $Y; $and92 = $82 & 65535; $83 = HEAP16[(23536)>>1]|0; $conv93 = $83 << 16 >> 16; $mul94 = Math_imul($and92, $conv93)|0; $shr95 = $mul94 >> 16; $add96 = (($mul91) + ($shr95))|0; $add97 = (($79) + ($add96))|0; $X = $add97; $84 = $S$addr; $arrayidx98 = ((($84)) + 20|0); $85 = HEAP32[$arrayidx98>>2]|0; $86 = $X; $add99 = (($85) + ($86))|0; $out32_1 = $add99; $87 = $out32_2; $88 = $X; $add100 = (($87) + ($88))|0; $89 = $S$addr; $arrayidx101 = ((($89)) + 20|0); HEAP32[$arrayidx101>>2] = $add100; $90 = $out32_1; $shr102 = $90 >> 9; $add103 = (($shr102) + 1)|0; $shr104 = $add103 >> 1; $cmp105 = ($shr104|0)>(32767); if ($cmp105) { $cond122 = 32767; } else { $91 = $out32_1; $shr109 = $91 >> 9; $add110 = (($shr109) + 1)|0; $shr111 = $add110 >> 1; $cmp112 = ($shr111|0)<(-32768); if ($cmp112) { $cond122 = -32768; } else { $92 = $out32_1; $shr116 = $92 >> 9; $add117 = (($shr116) + 1)|0; $shr118 = $add117 >> 1; $cond122 = $shr118; } } $conv123 = $cond122&65535; $93 = $out$addr; $94 = $k; $mul124 = $94<<1; $add125 = (($mul124) + 1)|0; $arrayidx126 = (($93) + ($add125<<1)|0); HEAP16[$arrayidx126>>1] = $conv123; $95 = $k; $inc = (($95) + 1)|0; $k = $inc; } STACKTOP = sp;return; } function _silk_resampler_private_up2_HQ_wrapper($SS,$out,$in,$len) { $SS = $SS|0; $out = $out|0; $in = $in|0; $len = $len|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $S = 0, $SS$addr = 0, $in$addr = 0, $len$addr = 0, $out$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $SS$addr = $SS; $out$addr = $out; $in$addr = $in; $len$addr = $len; $0 = $SS$addr; $S = $0; $1 = $S; $2 = $out$addr; $3 = $in$addr; $4 = $len$addr; _silk_resampler_private_up2_HQ($1,$2,$3,$4); STACKTOP = sp;return; } function _silk_stereo_decode_pred($psRangeDec,$pred_Q13) { $psRangeDec = $psRangeDec|0; $pred_Q13 = $pred_Q13|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $add25 = 0, $add32 = 0; var $add38 = 0, $add44 = 0, $add48 = 0, $and = 0, $arrayidx1 = 0, $arrayidx10 = 0, $arrayidx11 = 0, $arrayidx15 = 0, $arrayidx16 = 0, $arrayidx18 = 0, $arrayidx20 = 0, $arrayidx22 = 0, $arrayidx23 = 0, $arrayidx26 = 0, $arrayidx3 = 0, $arrayidx30 = 0, $arrayidx33 = 0, $arrayidx4 = 0, $arrayidx41 = 0, $arrayidx42 = 0; var $arrayidx49 = 0, $arrayidx5 = 0, $arrayidx53 = 0, $arrayidx7 = 0, $call = 0, $call6 = 0, $call9 = 0, $cmp = 0, $cmp13 = 0, $conv = 0, $conv27 = 0, $conv34 = 0, $conv39 = 0, $conv40 = 0, $conv45 = 0, $conv46 = 0, $div = 0, $inc = 0, $inc51 = 0, $ix = 0; var $low_Q13 = 0, $mul = 0, $mul17 = 0, $mul29 = 0, $mul36 = 0, $mul43 = 0, $mul47 = 0, $n = 0, $pred_Q13$addr = 0, $psRangeDec$addr = 0, $shr = 0, $shr37 = 0, $step_Q13 = 0, $sub = 0, $sub28 = 0, $sub35 = 0, $sub55 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $ix = sp + 8|0; $psRangeDec$addr = $psRangeDec; $pred_Q13$addr = $pred_Q13; $0 = $psRangeDec$addr; $call = (_ec_dec_icdf($0,32776,8)|0); $n = $call; $1 = $n; $div = (($1|0) / 5)&-1; $arrayidx1 = ((($ix)) + 8|0); HEAP32[$arrayidx1>>2] = $div; $2 = $n; $arrayidx3 = ((($ix)) + 8|0); $3 = HEAP32[$arrayidx3>>2]|0; $mul = ($3*5)|0; $sub = (($2) - ($mul))|0; $arrayidx4 = ((($ix)) + 12|0); $arrayidx5 = ((($arrayidx4)) + 8|0); HEAP32[$arrayidx5>>2] = $sub; $n = 0; while(1) { $4 = $n; $cmp = ($4|0)<(2); if (!($cmp)) { break; } $5 = $psRangeDec$addr; $call6 = (_ec_dec_icdf($5,32829,8)|0); $6 = $n; $arrayidx7 = (($ix) + (($6*12)|0)|0); HEAP32[$arrayidx7>>2] = $call6; $7 = $psRangeDec$addr; $call9 = (_ec_dec_icdf($7,32836,8)|0); $8 = $n; $arrayidx10 = (($ix) + (($8*12)|0)|0); $arrayidx11 = ((($arrayidx10)) + 4|0); HEAP32[$arrayidx11>>2] = $call9; $9 = $n; $inc = (($9) + 1)|0; $n = $inc; } $n = 0; while(1) { $10 = $n; $cmp13 = ($10|0)<(2); if (!($cmp13)) { break; } $11 = $n; $arrayidx15 = (($ix) + (($11*12)|0)|0); $arrayidx16 = ((($arrayidx15)) + 8|0); $12 = HEAP32[$arrayidx16>>2]|0; $mul17 = ($12*3)|0; $13 = $n; $arrayidx18 = (($ix) + (($13*12)|0)|0); $14 = HEAP32[$arrayidx18>>2]|0; $add = (($14) + ($mul17))|0; HEAP32[$arrayidx18>>2] = $add; $15 = $n; $arrayidx20 = (($ix) + (($15*12)|0)|0); $16 = HEAP32[$arrayidx20>>2]|0; $arrayidx22 = (23480 + ($16<<1)|0); $17 = HEAP16[$arrayidx22>>1]|0; $conv = $17 << 16 >> 16; $low_Q13 = $conv; $18 = $n; $arrayidx23 = (($ix) + (($18*12)|0)|0); $19 = HEAP32[$arrayidx23>>2]|0; $add25 = (($19) + 1)|0; $arrayidx26 = (23480 + ($add25<<1)|0); $20 = HEAP16[$arrayidx26>>1]|0; $conv27 = $20 << 16 >> 16; $21 = $low_Q13; $sub28 = (($conv27) - ($21))|0; $shr = $sub28 >> 16; $mul29 = ($shr*6554)|0; $22 = $n; $arrayidx30 = (($ix) + (($22*12)|0)|0); $23 = HEAP32[$arrayidx30>>2]|0; $add32 = (($23) + 1)|0; $arrayidx33 = (23480 + ($add32<<1)|0); $24 = HEAP16[$arrayidx33>>1]|0; $conv34 = $24 << 16 >> 16; $25 = $low_Q13; $sub35 = (($conv34) - ($25))|0; $and = $sub35 & 65535; $mul36 = ($and*6554)|0; $shr37 = $mul36 >> 16; $add38 = (($mul29) + ($shr37))|0; $step_Q13 = $add38; $26 = $low_Q13; $27 = $step_Q13; $conv39 = $27&65535; $conv40 = $conv39 << 16 >> 16; $28 = $n; $arrayidx41 = (($ix) + (($28*12)|0)|0); $arrayidx42 = ((($arrayidx41)) + 4|0); $29 = HEAP32[$arrayidx42>>2]|0; $mul43 = $29<<1; $add44 = (($mul43) + 1)|0; $conv45 = $add44&65535; $conv46 = $conv45 << 16 >> 16; $mul47 = Math_imul($conv40, $conv46)|0; $add48 = (($26) + ($mul47))|0; $30 = $pred_Q13$addr; $31 = $n; $arrayidx49 = (($30) + ($31<<2)|0); HEAP32[$arrayidx49>>2] = $add48; $32 = $n; $inc51 = (($32) + 1)|0; $n = $inc51; } $33 = $pred_Q13$addr; $arrayidx53 = ((($33)) + 4|0); $34 = HEAP32[$arrayidx53>>2]|0; $35 = $pred_Q13$addr; $36 = HEAP32[$35>>2]|0; $sub55 = (($36) - ($34))|0; HEAP32[$35>>2] = $sub55; STACKTOP = sp;return; } function _silk_stereo_decode_mid_only($psRangeDec,$decode_only_mid) { $psRangeDec = $psRangeDec|0; $decode_only_mid = $decode_only_mid|0; var $0 = 0, $1 = 0, $call = 0, $decode_only_mid$addr = 0, $psRangeDec$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $psRangeDec$addr = $psRangeDec; $decode_only_mid$addr = $decode_only_mid; $0 = $psRangeDec$addr; $call = (_ec_dec_icdf($0,32801,8)|0); $1 = $decode_only_mid$addr; HEAP32[$1>>2] = $call; STACKTOP = sp;return; } function _silk_stereo_encode_pred($psRangeEnc,$ix) { $psRangeEnc = $psRangeEnc|0; $ix = $ix|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $arrayidx1 = 0, $arrayidx10 = 0, $arrayidx2 = 0; var $arrayidx3 = 0, $arrayidx6 = 0, $arrayidx9 = 0, $cmp = 0, $conv = 0, $conv11 = 0, $conv4 = 0, $conv8 = 0, $inc = 0, $ix$addr = 0, $mul = 0, $n = 0, $psRangeEnc$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $psRangeEnc$addr = $psRangeEnc; $ix$addr = $ix; $0 = $ix$addr; $arrayidx1 = ((($0)) + 2|0); $1 = HEAP8[$arrayidx1>>0]|0; $conv = $1 << 24 >> 24; $mul = ($conv*5)|0; $2 = $ix$addr; $arrayidx2 = ((($2)) + 3|0); $arrayidx3 = ((($arrayidx2)) + 2|0); $3 = HEAP8[$arrayidx3>>0]|0; $conv4 = $3 << 24 >> 24; $add = (($mul) + ($conv4))|0; $n = $add; $4 = $psRangeEnc$addr; $5 = $n; _ec_enc_icdf($4,$5,32776,8); $n = 0; while(1) { $6 = $n; $cmp = ($6|0)<(2); if (!($cmp)) { break; } $7 = $psRangeEnc$addr; $8 = $ix$addr; $9 = $n; $arrayidx6 = (($8) + (($9*3)|0)|0); $10 = HEAP8[$arrayidx6>>0]|0; $conv8 = $10 << 24 >> 24; _ec_enc_icdf($7,$conv8,32829,8); $11 = $psRangeEnc$addr; $12 = $ix$addr; $13 = $n; $arrayidx9 = (($12) + (($13*3)|0)|0); $arrayidx10 = ((($arrayidx9)) + 1|0); $14 = HEAP8[$arrayidx10>>0]|0; $conv11 = $14 << 24 >> 24; _ec_enc_icdf($11,$conv11,32836,8); $15 = $n; $inc = (($15) + 1)|0; $n = $inc; } STACKTOP = sp;return; } function _silk_stereo_encode_mid_only($psRangeEnc,$mid_only_flag) { $psRangeEnc = $psRangeEnc|0; $mid_only_flag = $mid_only_flag|0; var $0 = 0, $1 = 0, $conv = 0, $mid_only_flag$addr = 0, $psRangeEnc$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $psRangeEnc$addr = $psRangeEnc; $mid_only_flag$addr = $mid_only_flag; $0 = $psRangeEnc$addr; $1 = $mid_only_flag$addr; $conv = $1 << 24 >> 24; _ec_enc_icdf($0,$conv,32801,8); STACKTOP = sp;return; } function _silk_stereo_find_predictor($ratio_Q14,$x,$y,$mid_res_amp_Q0,$length,$smooth_coef_Q16) { $ratio_Q14 = $ratio_Q14|0; $x = $x|0; $y = $y|0; $mid_res_amp_Q0 = $mid_res_amp_Q0|0; $length = $length|0; $smooth_coef_Q16 = $smooth_coef_Q16|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; var $81 = 0, $82 = 0, $9 = 0, $add = 0, $add18 = 0, $add44 = 0, $add45 = 0, $add56 = 0, $add68 = 0, $add70 = 0, $add89 = 0, $add90 = 0, $and = 0, $and13 = 0, $and39 = 0, $and51 = 0, $and63 = 0, $and84 = 0, $arrayidx71 = 0, $arrayidx74 = 0; var $arrayidx82 = 0, $arrayidx91 = 0, $arrayidx92 = 0, $call = 0, $call101 = 0, $call26 = 0, $call28 = 0, $call3 = 0, $call35 = 0, $call4 = 0, $call5 = 0, $call72 = 0, $call80 = 0, $cmp = 0, $cmp102 = 0, $cmp106 = 0, $cmp19 = 0, $cmp6 = 0, $cmp94 = 0, $cond = 0; var $cond10 = 0, $cond100 = 0, $cond113 = 0, $cond25 = 0, $conv = 0, $conv12 = 0, $conv14 = 0, $conv15 = 0, $conv32 = 0, $conv33 = 0, $conv40 = 0, $conv41 = 0, $conv48 = 0, $conv49 = 0, $conv52 = 0, $conv53 = 0, $conv60 = 0, $conv61 = 0, $conv64 = 0, $conv65 = 0; var $conv77 = 0, $conv78 = 0, $conv85 = 0, $conv86 = 0, $corr = 0, $length$addr = 0, $mid_res_amp_Q0$addr = 0, $mul = 0, $mul16 = 0, $mul34 = 0, $mul42 = 0, $mul50 = 0, $mul54 = 0, $mul62 = 0, $mul66 = 0, $mul79 = 0, $mul87 = 0, $nrgx = 0, $nrgy = 0, $pred2_Q10 = 0; var $pred_Q13 = 0, $ratio_Q14$addr = 0, $scale = 0, $scale1 = 0, $scale2 = 0, $shl = 0, $shl36 = 0, $shl57 = 0, $shl69 = 0, $shl73 = 0, $shl81 = 0, $shr = 0, $shr11 = 0, $shr17 = 0, $shr2 = 0, $shr27 = 0, $shr31 = 0, $shr43 = 0, $shr47 = 0, $shr55 = 0; var $shr59 = 0, $shr67 = 0, $shr76 = 0, $shr88 = 0, $smooth_coef_Q16$addr = 0, $sub = 0, $sub1 = 0, $sub23 = 0, $sub30 = 0, $sub38 = 0, $sub58 = 0, $sub75 = 0, $sub83 = 0, $x$addr = 0, $y$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $scale1 = sp + 24|0; $scale2 = sp + 20|0; $nrgx = sp + 16|0; $nrgy = sp + 12|0; $ratio_Q14$addr = $ratio_Q14; $x$addr = $x; $y$addr = $y; $mid_res_amp_Q0$addr = $mid_res_amp_Q0; $length$addr = $length; $smooth_coef_Q16$addr = $smooth_coef_Q16; $0 = $x$addr; $1 = $length$addr; _silk_sum_sqr_shift($nrgx,$scale1,$0,$1); $2 = $y$addr; $3 = $length$addr; _silk_sum_sqr_shift($nrgy,$scale2,$2,$3); $4 = HEAP32[$scale1>>2]|0; $5 = HEAP32[$scale2>>2]|0; $call = (_silk_max_int_274($4,$5)|0); $scale = $call; $6 = $scale; $7 = $scale; $and = $7 & 1; $add = (($6) + ($and))|0; $scale = $add; $8 = HEAP32[$nrgy>>2]|0; $9 = $scale; $10 = HEAP32[$scale2>>2]|0; $sub = (($9) - ($10))|0; $shr = $8 >> $sub; HEAP32[$nrgy>>2] = $shr; $11 = HEAP32[$nrgx>>2]|0; $12 = $scale; $13 = HEAP32[$scale1>>2]|0; $sub1 = (($12) - ($13))|0; $shr2 = $11 >> $sub1; HEAP32[$nrgx>>2] = $shr2; $14 = HEAP32[$nrgx>>2]|0; $call3 = (_silk_max_int_274($14,1)|0); HEAP32[$nrgx>>2] = $call3; $15 = $x$addr; $16 = $y$addr; $17 = $scale; $18 = $length$addr; $call4 = (_silk_inner_prod_aligned_scale($15,$16,$17,$18)|0); $corr = $call4; $19 = $corr; $20 = HEAP32[$nrgx>>2]|0; $call5 = (_silk_DIV32_varQ_275($19,$20,13)|0); $pred_Q13 = $call5; $21 = $pred_Q13; $cmp = ($21|0)>(16384); if ($cmp) { $cond10 = 16384; } else { $22 = $pred_Q13; $cmp6 = ($22|0)<(-16384); $23 = $pred_Q13; $cond = $cmp6 ? -16384 : $23; $cond10 = $cond; } $pred_Q13 = $cond10; $24 = $pred_Q13; $shr11 = $24 >> 16; $25 = $pred_Q13; $conv = $25&65535; $conv12 = $conv << 16 >> 16; $mul = Math_imul($shr11, $conv12)|0; $26 = $pred_Q13; $and13 = $26 & 65535; $27 = $pred_Q13; $conv14 = $27&65535; $conv15 = $conv14 << 16 >> 16; $mul16 = Math_imul($and13, $conv15)|0; $shr17 = $mul16 >> 16; $add18 = (($mul) + ($shr17))|0; $pred2_Q10 = $add18; $28 = $smooth_coef_Q16$addr; $29 = $pred2_Q10; $cmp19 = ($29|0)>(0); $30 = $pred2_Q10; $sub23 = (0 - ($30))|0; $cond25 = $cmp19 ? $30 : $sub23; $call26 = (_silk_max_int_274($28,$cond25)|0); $smooth_coef_Q16$addr = $call26; $31 = $scale; $shr27 = $31 >> 1; $scale = $shr27; $32 = $mid_res_amp_Q0$addr; $33 = HEAP32[$32>>2]|0; $34 = HEAP32[$nrgx>>2]|0; $call28 = (_silk_SQRT_APPROX($34)|0); $35 = $scale; $shl = $call28 << $35; $36 = $mid_res_amp_Q0$addr; $37 = HEAP32[$36>>2]|0; $sub30 = (($shl) - ($37))|0; $shr31 = $sub30 >> 16; $38 = $smooth_coef_Q16$addr; $conv32 = $38&65535; $conv33 = $conv32 << 16 >> 16; $mul34 = Math_imul($shr31, $conv33)|0; $39 = HEAP32[$nrgx>>2]|0; $call35 = (_silk_SQRT_APPROX($39)|0); $40 = $scale; $shl36 = $call35 << $40; $41 = $mid_res_amp_Q0$addr; $42 = HEAP32[$41>>2]|0; $sub38 = (($shl36) - ($42))|0; $and39 = $sub38 & 65535; $43 = $smooth_coef_Q16$addr; $conv40 = $43&65535; $conv41 = $conv40 << 16 >> 16; $mul42 = Math_imul($and39, $conv41)|0; $shr43 = $mul42 >> 16; $add44 = (($mul34) + ($shr43))|0; $add45 = (($33) + ($add44))|0; $44 = $mid_res_amp_Q0$addr; HEAP32[$44>>2] = $add45; $45 = HEAP32[$nrgy>>2]|0; $46 = $corr; $shr47 = $46 >> 16; $47 = $pred_Q13; $conv48 = $47&65535; $conv49 = $conv48 << 16 >> 16; $mul50 = Math_imul($shr47, $conv49)|0; $48 = $corr; $and51 = $48 & 65535; $49 = $pred_Q13; $conv52 = $49&65535; $conv53 = $conv52 << 16 >> 16; $mul54 = Math_imul($and51, $conv53)|0; $shr55 = $mul54 >> 16; $add56 = (($mul50) + ($shr55))|0; $shl57 = $add56 << 4; $sub58 = (($45) - ($shl57))|0; HEAP32[$nrgy>>2] = $sub58; $50 = HEAP32[$nrgy>>2]|0; $51 = HEAP32[$nrgx>>2]|0; $shr59 = $51 >> 16; $52 = $pred2_Q10; $conv60 = $52&65535; $conv61 = $conv60 << 16 >> 16; $mul62 = Math_imul($shr59, $conv61)|0; $53 = HEAP32[$nrgx>>2]|0; $and63 = $53 & 65535; $54 = $pred2_Q10; $conv64 = $54&65535; $conv65 = $conv64 << 16 >> 16; $mul66 = Math_imul($and63, $conv65)|0; $shr67 = $mul66 >> 16; $add68 = (($mul62) + ($shr67))|0; $shl69 = $add68 << 6; $add70 = (($50) + ($shl69))|0; HEAP32[$nrgy>>2] = $add70; $55 = $mid_res_amp_Q0$addr; $arrayidx71 = ((($55)) + 4|0); $56 = HEAP32[$arrayidx71>>2]|0; $57 = HEAP32[$nrgy>>2]|0; $call72 = (_silk_SQRT_APPROX($57)|0); $58 = $scale; $shl73 = $call72 << $58; $59 = $mid_res_amp_Q0$addr; $arrayidx74 = ((($59)) + 4|0); $60 = HEAP32[$arrayidx74>>2]|0; $sub75 = (($shl73) - ($60))|0; $shr76 = $sub75 >> 16; $61 = $smooth_coef_Q16$addr; $conv77 = $61&65535; $conv78 = $conv77 << 16 >> 16; $mul79 = Math_imul($shr76, $conv78)|0; $62 = HEAP32[$nrgy>>2]|0; $call80 = (_silk_SQRT_APPROX($62)|0); $63 = $scale; $shl81 = $call80 << $63; $64 = $mid_res_amp_Q0$addr; $arrayidx82 = ((($64)) + 4|0); $65 = HEAP32[$arrayidx82>>2]|0; $sub83 = (($shl81) - ($65))|0; $and84 = $sub83 & 65535; $66 = $smooth_coef_Q16$addr; $conv85 = $66&65535; $conv86 = $conv85 << 16 >> 16; $mul87 = Math_imul($and84, $conv86)|0; $shr88 = $mul87 >> 16; $add89 = (($mul79) + ($shr88))|0; $add90 = (($56) + ($add89))|0; $67 = $mid_res_amp_Q0$addr; $arrayidx91 = ((($67)) + 4|0); HEAP32[$arrayidx91>>2] = $add90; $68 = $mid_res_amp_Q0$addr; $arrayidx92 = ((($68)) + 4|0); $69 = HEAP32[$arrayidx92>>2]|0; $70 = $mid_res_amp_Q0$addr; $71 = HEAP32[$70>>2]|0; $cmp94 = ($71|0)>(1); if ($cmp94) { $72 = $mid_res_amp_Q0$addr; $73 = HEAP32[$72>>2]|0; $cond100 = $73; } else { $cond100 = 1; } $call101 = (_silk_DIV32_varQ_275($69,$cond100,14)|0); $74 = $ratio_Q14$addr; HEAP32[$74>>2] = $call101; $75 = $ratio_Q14$addr; $76 = HEAP32[$75>>2]|0; $cmp102 = ($76|0)>(32767); if ($cmp102) { $cond113 = 32767; $81 = $ratio_Q14$addr; HEAP32[$81>>2] = $cond113; $82 = $pred_Q13; STACKTOP = sp;return ($82|0); } $77 = $ratio_Q14$addr; $78 = HEAP32[$77>>2]|0; $cmp106 = ($78|0)<(0); if ($cmp106) { $cond113 = 0; $81 = $ratio_Q14$addr; HEAP32[$81>>2] = $cond113; $82 = $pred_Q13; STACKTOP = sp;return ($82|0); } $79 = $ratio_Q14$addr; $80 = HEAP32[$79>>2]|0; $cond113 = $80; $81 = $ratio_Q14$addr; HEAP32[$81>>2] = $cond113; $82 = $pred_Q13; STACKTOP = sp;return ($82|0); } function _silk_max_int_274($a,$b) { $a = $a|0; $b = $b|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $a$addr = 0, $b$addr = 0, $cmp = 0, $cond = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $a$addr = $a; $b$addr = $b; $0 = $a$addr; $1 = $b$addr; $cmp = ($0|0)>($1|0); $2 = $a$addr; $3 = $b$addr; $cond = $cmp ? $2 : $3; STACKTOP = sp;return ($cond|0); } function _silk_DIV32_varQ_275($a32,$b32,$Qres) { $a32 = $a32|0; $b32 = $b32|0; $Qres = $Qres|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $Qres$addr = 0, $a32$addr = 0, $a32_nrm = 0, $a_headrm = 0, $add = 0, $add33 = 0, $add34 = 0, $add35 = 0, $and = 0; var $and28 = 0, $b32$addr = 0, $b32_inv = 0, $b32_nrm = 0, $b_headrm = 0, $call = 0, $call8 = 0, $cmp = 0, $cmp2 = 0, $cmp38 = 0, $cmp44 = 0, $cmp49 = 0, $cmp57 = 0, $cmp70 = 0, $cmp78 = 0, $cmp92 = 0, $cond = 0, $cond7 = 0, $cond89 = 0, $conv = 0; var $conv12 = 0, $conv13 = 0, $conv14 = 0, $conv25 = 0, $conv26 = 0, $conv29 = 0, $conv30 = 0, $div = 0, $lshift = 0, $mul = 0, $mul15 = 0, $mul27 = 0, $mul31 = 0, $result = 0, $retval = 0, $shl = 0, $shl10 = 0, $shl22 = 0, $shl91 = 0, $shr = 0; var $shr11 = 0, $shr16 = 0, $shr24 = 0, $shr32 = 0, $shr41 = 0, $shr43 = 0, $shr48 = 0, $shr53 = 0, $shr56 = 0, $shr61 = 0, $shr69 = 0, $shr74 = 0, $shr77 = 0, $shr82 = 0, $shr95 = 0, $sub = 0, $sub1 = 0, $sub23 = 0, $sub36 = 0, $sub37 = 0; var $sub40 = 0, $sub42 = 0, $sub47 = 0, $sub5 = 0, $sub52 = 0, $sub55 = 0, $sub60 = 0, $sub73 = 0, $sub76 = 0, $sub81 = 0, $sub9 = 0, $sub90 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $a32$addr = $a32; $b32$addr = $b32; $Qres$addr = $Qres; $0 = $a32$addr; $cmp = ($0|0)>(0); $1 = $a32$addr; $sub = (0 - ($1))|0; $cond = $cmp ? $1 : $sub; $call = (_silk_CLZ32_277($cond)|0); $sub1 = (($call) - 1)|0; $a_headrm = $sub1; $2 = $a32$addr; $3 = $a_headrm; $shl = $2 << $3; $a32_nrm = $shl; $4 = $b32$addr; $cmp2 = ($4|0)>(0); $5 = $b32$addr; $sub5 = (0 - ($5))|0; $cond7 = $cmp2 ? $5 : $sub5; $call8 = (_silk_CLZ32_277($cond7)|0); $sub9 = (($call8) - 1)|0; $b_headrm = $sub9; $6 = $b32$addr; $7 = $b_headrm; $shl10 = $6 << $7; $b32_nrm = $shl10; $8 = $b32_nrm; $shr = $8 >> 16; $div = (536870911 / ($shr|0))&-1; $b32_inv = $div; $9 = $a32_nrm; $shr11 = $9 >> 16; $10 = $b32_inv; $conv = $10&65535; $conv12 = $conv << 16 >> 16; $mul = Math_imul($shr11, $conv12)|0; $11 = $a32_nrm; $and = $11 & 65535; $12 = $b32_inv; $conv13 = $12&65535; $conv14 = $conv13 << 16 >> 16; $mul15 = Math_imul($and, $conv14)|0; $shr16 = $mul15 >> 16; $add = (($mul) + ($shr16))|0; $result = $add; $13 = $a32_nrm; $14 = $b32_nrm; $15 = ($14|0)<(0); $16 = $15 << 31 >> 31; $17 = $result; $18 = ($17|0)<(0); $19 = $18 << 31 >> 31; $20 = (___muldi3(($14|0),($16|0),($17|0),($19|0))|0); $21 = tempRet0; $22 = (_bitshift64Ashr(($20|0),($21|0),32)|0); $23 = tempRet0; $shl22 = $22 << 3; $sub23 = (($13) - ($shl22))|0; $a32_nrm = $sub23; $24 = $result; $25 = $a32_nrm; $shr24 = $25 >> 16; $26 = $b32_inv; $conv25 = $26&65535; $conv26 = $conv25 << 16 >> 16; $mul27 = Math_imul($shr24, $conv26)|0; $27 = $a32_nrm; $and28 = $27 & 65535; $28 = $b32_inv; $conv29 = $28&65535; $conv30 = $conv29 << 16 >> 16; $mul31 = Math_imul($and28, $conv30)|0; $shr32 = $mul31 >> 16; $add33 = (($mul27) + ($shr32))|0; $add34 = (($24) + ($add33))|0; $result = $add34; $29 = $a_headrm; $add35 = (29 + ($29))|0; $30 = $b_headrm; $sub36 = (($add35) - ($30))|0; $31 = $Qres$addr; $sub37 = (($sub36) - ($31))|0; $lshift = $sub37; $32 = $lshift; $cmp38 = ($32|0)<(0); $33 = $lshift; if (!($cmp38)) { $cmp92 = ($33|0)<(32); if ($cmp92) { $48 = $result; $49 = $lshift; $shr95 = $48 >> $49; $retval = $shr95; $50 = $retval; STACKTOP = sp;return ($50|0); } else { $retval = 0; $50 = $retval; STACKTOP = sp;return ($50|0); } } $sub40 = (0 - ($33))|0; $shr41 = -2147483648 >> $sub40; $34 = $lshift; $sub42 = (0 - ($34))|0; $shr43 = 2147483647 >> $sub42; $cmp44 = ($shr41|0)>($shr43|0); $35 = $result; $36 = $lshift; $sub47 = (0 - ($36))|0; do { if ($cmp44) { $shr48 = -2147483648 >> $sub47; $cmp49 = ($35|0)>($shr48|0); if ($cmp49) { $37 = $lshift; $sub52 = (0 - ($37))|0; $shr53 = -2147483648 >> $sub52; $cond89 = $shr53; break; } $38 = $result; $39 = $lshift; $sub55 = (0 - ($39))|0; $shr56 = 2147483647 >> $sub55; $cmp57 = ($38|0)<($shr56|0); if ($cmp57) { $40 = $lshift; $sub60 = (0 - ($40))|0; $shr61 = 2147483647 >> $sub60; $cond89 = $shr61; break; } else { $41 = $result; $cond89 = $41; break; } } else { $shr69 = 2147483647 >> $sub47; $cmp70 = ($35|0)>($shr69|0); if ($cmp70) { $42 = $lshift; $sub73 = (0 - ($42))|0; $shr74 = 2147483647 >> $sub73; $cond89 = $shr74; break; } $43 = $result; $44 = $lshift; $sub76 = (0 - ($44))|0; $shr77 = -2147483648 >> $sub76; $cmp78 = ($43|0)<($shr77|0); if ($cmp78) { $45 = $lshift; $sub81 = (0 - ($45))|0; $shr82 = -2147483648 >> $sub81; $cond89 = $shr82; break; } else { $46 = $result; $cond89 = $46; break; } } } while(0); $47 = $lshift; $sub90 = (0 - ($47))|0; $shl91 = $cond89 << $sub90; $retval = $shl91; $50 = $retval; STACKTOP = sp;return ($50|0); } function _silk_SQRT_APPROX($x) { $x = $x|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $add17 = 0, $and = 0, $and9 = 0, $cmp = 0, $conv = 0, $conv10 = 0, $conv11 = 0; var $conv13 = 0, $conv14 = 0, $conv5 = 0, $conv6 = 0, $conv7 = 0, $frac_Q7 = 0, $lz = 0, $mul = 0, $mul12 = 0, $mul15 = 0, $mul8 = 0, $retval = 0, $shr = 0, $shr16 = 0, $shr3 = 0, $shr4 = 0, $tobool = 0, $x$addr = 0, $y = 0, label = 0; var sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $lz = sp + 4|0; $frac_Q7 = sp; $x$addr = $x; $0 = $x$addr; $cmp = ($0|0)<=(0); if ($cmp) { $retval = 0; $11 = $retval; STACKTOP = sp;return ($11|0); } $1 = $x$addr; _silk_CLZ_FRAC_276($1,$lz,$frac_Q7); $2 = HEAP32[$lz>>2]|0; $and = $2 & 1; $tobool = ($and|0)!=(0); if ($tobool) { $y = 32768; } else { $y = 46214; } $3 = HEAP32[$lz>>2]|0; $shr = $3 >> 1; $4 = $y; $shr3 = $4 >> $shr; $y = $shr3; $5 = $y; $6 = $y; $shr4 = $6 >> 16; $7 = HEAP32[$frac_Q7>>2]|0; $conv = $7&65535; $conv5 = $conv << 16 >> 16; $mul = ($conv5*213)|0; $conv6 = $mul&65535; $conv7 = $conv6 << 16 >> 16; $mul8 = Math_imul($shr4, $conv7)|0; $8 = $y; $and9 = $8 & 65535; $9 = HEAP32[$frac_Q7>>2]|0; $conv10 = $9&65535; $conv11 = $conv10 << 16 >> 16; $mul12 = ($conv11*213)|0; $conv13 = $mul12&65535; $conv14 = $conv13 << 16 >> 16; $mul15 = Math_imul($and9, $conv14)|0; $shr16 = $mul15 >> 16; $add = (($mul8) + ($shr16))|0; $add17 = (($5) + ($add))|0; $y = $add17; $10 = $y; $retval = $10; $11 = $retval; STACKTOP = sp;return ($11|0); } function _silk_CLZ_FRAC_276($in,$lz,$frac_Q7) { $in = $in|0; $lz = $lz|0; $frac_Q7 = $frac_Q7|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $and = 0, $call = 0, $call1 = 0, $frac_Q7$addr = 0, $in$addr = 0, $lz$addr = 0, $lzeros = 0, $sub = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $in$addr = $in; $lz$addr = $lz; $frac_Q7$addr = $frac_Q7; $0 = $in$addr; $call = (_silk_CLZ32_277($0)|0); $lzeros = $call; $1 = $lzeros; $2 = $lz$addr; HEAP32[$2>>2] = $1; $3 = $in$addr; $4 = $lzeros; $sub = (24 - ($4))|0; $call1 = (_silk_ROR32_278($3,$sub)|0); $and = $call1 & 127; $5 = $frac_Q7$addr; HEAP32[$5>>2] = $and; STACKTOP = sp;return; } function _silk_CLZ32_277($in32) { $in32 = $in32|0; var $0 = 0, $1 = 0, $2 = 0, $cond = 0, $in32$addr = 0, $sub = 0, $sub1 = 0, $tobool = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $in32$addr = $in32; $0 = $in32$addr; $tobool = ($0|0)!=(0); if (!($tobool)) { $cond = 32; STACKTOP = sp;return ($cond|0); } $1 = $in32$addr; $2 = (Math_clz32(($1|0))|0); $sub = (32 - ($2))|0; $sub1 = (32 - ($sub))|0; $cond = $sub1; STACKTOP = sp;return ($cond|0); } function _silk_ROR32_278($a32,$rot) { $a32 = $a32|0; $rot = $rot|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $a32$addr = 0, $cmp = 0, $cmp1 = 0, $m = 0, $or = 0, $or8 = 0; var $r = 0, $retval = 0, $rot$addr = 0, $shl = 0, $shl6 = 0, $shr = 0, $shr7 = 0, $sub = 0, $sub3 = 0, $sub5 = 0, $x = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $a32$addr = $a32; $rot$addr = $rot; $0 = $a32$addr; $x = $0; $1 = $rot$addr; $r = $1; $2 = $rot$addr; $sub = (0 - ($2))|0; $m = $sub; $3 = $rot$addr; $cmp = ($3|0)==(0); if ($cmp) { $4 = $a32$addr; $retval = $4; $13 = $retval; STACKTOP = sp;return ($13|0); } $5 = $rot$addr; $cmp1 = ($5|0)<(0); $6 = $x; if ($cmp1) { $7 = $m; $shl = $6 << $7; $8 = $x; $9 = $m; $sub3 = (32 - ($9))|0; $shr = $8 >>> $sub3; $or = $shl | $shr; $retval = $or; $13 = $retval; STACKTOP = sp;return ($13|0); } else { $10 = $r; $sub5 = (32 - ($10))|0; $shl6 = $6 << $sub5; $11 = $x; $12 = $r; $shr7 = $11 >>> $12; $or8 = $shl6 | $shr7; $retval = $or8; $13 = $retval; STACKTOP = sp;return ($13|0); } return (0)|0; } function _silk_stereo_quant_pred($pred_Q13,$ix) { $pred_Q13 = $pred_Q13|0; $ix = $ix|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $add12 = 0, $add20 = 0, $add24 = 0, $add6 = 0, $and = 0, $arrayidx = 0; var $arrayidx25 = 0, $arrayidx29 = 0, $arrayidx37 = 0, $arrayidx4 = 0, $arrayidx40 = 0, $arrayidx41 = 0, $arrayidx45 = 0, $arrayidx49 = 0, $arrayidx50 = 0, $arrayidx51 = 0, $arrayidx52 = 0, $arrayidx55 = 0, $arrayidx60 = 0, $arrayidx64 = 0, $arrayidx7 = 0, $cmp = 0, $cmp14 = 0, $cmp2 = 0, $cmp27 = 0, $cmp34 = 0; var $cond = 0, $conv = 0, $conv17 = 0, $conv18 = 0, $conv21 = 0, $conv22 = 0, $conv36 = 0, $conv39 = 0, $conv47 = 0, $conv48 = 0, $conv5 = 0, $conv53 = 0, $conv57 = 0, $conv59 = 0, $conv8 = 0, $div = 0, $err_Q13 = 0, $err_min_Q13 = 0, $i = 0, $inc = 0; var $inc43 = 0, $inc62 = 0, $ix$addr = 0, $j = 0, $low_Q13 = 0, $lvl_Q13 = 0, $mul = 0, $mul10 = 0, $mul19 = 0, $mul23 = 0, $mul54 = 0, $n = 0, $pred_Q13$addr = 0, $quant_pred_Q13 = 0, $shr = 0, $shr11 = 0, $step_Q13 = 0, $sub = 0, $sub26 = 0, $sub30 = 0; var $sub33 = 0, $sub58 = 0, $sub66 = 0, $sub9 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $pred_Q13$addr = $pred_Q13; $ix$addr = $ix; $quant_pred_Q13 = 0; $n = 0; while(1) { $0 = $n; $cmp = ($0|0)<(2); if (!($cmp)) { break; } $err_min_Q13 = 2147483647; $i = 0; L4: while(1) { $1 = $i; $cmp2 = ($1|0)<(15); if (!($cmp2)) { break; } $2 = $i; $arrayidx = (23480 + ($2<<1)|0); $3 = HEAP16[$arrayidx>>1]|0; $conv = $3 << 16 >> 16; $low_Q13 = $conv; $4 = $i; $add = (($4) + 1)|0; $arrayidx4 = (23480 + ($add<<1)|0); $5 = HEAP16[$arrayidx4>>1]|0; $conv5 = $5 << 16 >> 16; $6 = $low_Q13; $sub = (($conv5) - ($6))|0; $shr = $sub >> 16; $mul = ($shr*6554)|0; $7 = $i; $add6 = (($7) + 1)|0; $arrayidx7 = (23480 + ($add6<<1)|0); $8 = HEAP16[$arrayidx7>>1]|0; $conv8 = $8 << 16 >> 16; $9 = $low_Q13; $sub9 = (($conv8) - ($9))|0; $and = $sub9 & 65535; $mul10 = ($and*6554)|0; $shr11 = $mul10 >> 16; $add12 = (($mul) + ($shr11))|0; $step_Q13 = $add12; $j = 0; while(1) { $10 = $j; $cmp14 = ($10|0)<(5); if (!($cmp14)) { break; } $11 = $low_Q13; $12 = $step_Q13; $conv17 = $12&65535; $conv18 = $conv17 << 16 >> 16; $13 = $j; $mul19 = $13<<1; $add20 = (($mul19) + 1)|0; $conv21 = $add20&65535; $conv22 = $conv21 << 16 >> 16; $mul23 = Math_imul($conv18, $conv22)|0; $add24 = (($11) + ($mul23))|0; $lvl_Q13 = $add24; $14 = $pred_Q13$addr; $15 = $n; $arrayidx25 = (($14) + ($15<<2)|0); $16 = HEAP32[$arrayidx25>>2]|0; $17 = $lvl_Q13; $sub26 = (($16) - ($17))|0; $cmp27 = ($sub26|0)>(0); $18 = $pred_Q13$addr; $19 = $n; $arrayidx29 = (($18) + ($19<<2)|0); $20 = HEAP32[$arrayidx29>>2]|0; $21 = $lvl_Q13; $sub30 = (($20) - ($21))|0; $sub33 = (0 - ($sub30))|0; $cond = $cmp27 ? $sub30 : $sub33; $err_Q13 = $cond; $22 = $err_Q13; $23 = $err_min_Q13; $cmp34 = ($22|0)<($23|0); if (!($cmp34)) { break L4; } $24 = $err_Q13; $err_min_Q13 = $24; $25 = $lvl_Q13; $quant_pred_Q13 = $25; $26 = $i; $conv36 = $26&255; $27 = $ix$addr; $28 = $n; $arrayidx37 = (($27) + (($28*3)|0)|0); HEAP8[$arrayidx37>>0] = $conv36; $29 = $j; $conv39 = $29&255; $30 = $ix$addr; $31 = $n; $arrayidx40 = (($30) + (($31*3)|0)|0); $arrayidx41 = ((($arrayidx40)) + 1|0); HEAP8[$arrayidx41>>0] = $conv39; $32 = $j; $inc = (($32) + 1)|0; $j = $inc; } $33 = $i; $inc43 = (($33) + 1)|0; $i = $inc43; } $34 = $ix$addr; $35 = $n; $arrayidx45 = (($34) + (($35*3)|0)|0); $36 = HEAP8[$arrayidx45>>0]|0; $conv47 = $36 << 24 >> 24; $div = (($conv47|0) / 3)&-1; $conv48 = $div&255; $37 = $ix$addr; $38 = $n; $arrayidx49 = (($37) + (($38*3)|0)|0); $arrayidx50 = ((($arrayidx49)) + 2|0); HEAP8[$arrayidx50>>0] = $conv48; $39 = $ix$addr; $40 = $n; $arrayidx51 = (($39) + (($40*3)|0)|0); $arrayidx52 = ((($arrayidx51)) + 2|0); $41 = HEAP8[$arrayidx52>>0]|0; $conv53 = $41 << 24 >> 24; $mul54 = ($conv53*3)|0; $42 = $ix$addr; $43 = $n; $arrayidx55 = (($42) + (($43*3)|0)|0); $44 = HEAP8[$arrayidx55>>0]|0; $conv57 = $44 << 24 >> 24; $sub58 = (($conv57) - ($mul54))|0; $conv59 = $sub58&255; HEAP8[$arrayidx55>>0] = $conv59; $45 = $quant_pred_Q13; $46 = $pred_Q13$addr; $47 = $n; $arrayidx60 = (($46) + ($47<<2)|0); HEAP32[$arrayidx60>>2] = $45; $48 = $n; $inc62 = (($48) + 1)|0; $n = $inc62; } $49 = $pred_Q13$addr; $arrayidx64 = ((($49)) + 4|0); $50 = HEAP32[$arrayidx64>>2]|0; $51 = $pred_Q13$addr; $52 = HEAP32[$51>>2]|0; $sub66 = (($52) - ($50))|0; HEAP32[$51>>2] = $sub66; STACKTOP = sp;return; } function _silk_encode_do_VAD_FLP($psEnc) { $psEnc = $psEnc|0; var $$sink = 0, $$sink2 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0; var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $VAD_flags = 0, $VAD_flags32 = 0, $VAD_flags32$sink = 0, $add$ptr = 0, $and = 0, $arch = 0, $arrayidx = 0, $arrayidx35 = 0, $cmp = 0, $cmp13 = 0, $cmp8 = 0, $inDTX18 = 0, $inDTX27 = 0, $inc = 0, $indices = 0; var $indices29 = 0, $inputBuf = 0, $nFramesEncoded34 = 0, $noSpeechCounter = 0, $noSpeechCounter12 = 0, $noSpeechCounter16 = 0, $noSpeechCounter25 = 0, $noSpeechCounter7 = 0, $psEnc$addr = 0, $sCmn17$sink = 0, $signalType = 0, $signalType30 = 0, $speech_activity_Q8 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $psEnc$addr = $psEnc; $0 = $psEnc$addr; $arch = ((($0)) + 5088|0); $1 = HEAP32[$arch>>2]|0; $and = $1 & 7; $arrayidx = (15388 + ($and<<2)|0); $2 = HEAP32[$arrayidx>>2]|0; $3 = $psEnc$addr; $4 = $psEnc$addr; $inputBuf = ((($4)) + 5092|0); $add$ptr = ((($inputBuf)) + 2|0); (FUNCTION_TABLE_iii[$2 & 3]($3,$add$ptr)|0); $5 = $psEnc$addr; $speech_activity_Q8 = ((($5)) + 4528|0); $6 = HEAP32[$speech_activity_Q8>>2]|0; $cmp = ($6|0)<(13); $7 = $psEnc$addr; if (!($cmp)) { $noSpeechCounter25 = ((($7)) + 6080|0); HEAP32[$noSpeechCounter25>>2] = 0; $18 = $psEnc$addr; $inDTX27 = ((($18)) + 6076|0); HEAP32[$inDTX27>>2] = 0; $19 = $psEnc$addr; $indices29 = ((($19)) + 4732|0); $signalType30 = ((($indices29)) + 29|0); HEAP8[$signalType30>>0] = 1; $20 = $psEnc$addr; $VAD_flags32 = ((($20)) + 4716|0); $21 = $psEnc$addr; $$sink = 1;$$sink2 = $21;$VAD_flags32$sink = $VAD_flags32; $nFramesEncoded34 = ((($$sink2)) + 5744|0); $22 = HEAP32[$nFramesEncoded34>>2]|0; $arrayidx35 = (($VAD_flags32$sink) + ($22)|0); HEAP8[$arrayidx35>>0] = $$sink; STACKTOP = sp;return; } $indices = ((($7)) + 4732|0); $signalType = ((($indices)) + 29|0); HEAP8[$signalType>>0] = 0; $8 = $psEnc$addr; $noSpeechCounter = ((($8)) + 6080|0); $9 = HEAP32[$noSpeechCounter>>2]|0; $inc = (($9) + 1)|0; HEAP32[$noSpeechCounter>>2] = $inc; $10 = $psEnc$addr; $noSpeechCounter7 = ((($10)) + 6080|0); $11 = HEAP32[$noSpeechCounter7>>2]|0; $cmp8 = ($11|0)<=(10); $12 = $psEnc$addr; if ($cmp8) { $sCmn17$sink = $12; label = 5; } else { $noSpeechCounter12 = ((($12)) + 6080|0); $13 = HEAP32[$noSpeechCounter12>>2]|0; $cmp13 = ($13|0)>(30); if ($cmp13) { $14 = $psEnc$addr; $noSpeechCounter16 = ((($14)) + 6080|0); HEAP32[$noSpeechCounter16>>2] = 10; $15 = $psEnc$addr; $sCmn17$sink = $15; label = 5; } } if ((label|0) == 5) { $inDTX18 = ((($sCmn17$sink)) + 6076|0); HEAP32[$inDTX18>>2] = 0; } $16 = $psEnc$addr; $VAD_flags = ((($16)) + 4716|0); $17 = $psEnc$addr; $$sink = 0;$$sink2 = $17;$VAD_flags32$sink = $VAD_flags; $nFramesEncoded34 = ((($$sink2)) + 5744|0); $22 = HEAP32[$nFramesEncoded34>>2]|0; $arrayidx35 = (($VAD_flags32$sink) + ($22)|0); HEAP8[$arrayidx35>>0] = $$sink; STACKTOP = sp;return; } function _silk_encode_frame_FLP($psEnc,$pnBytesOut,$psRangeEnc,$condCoding,$maxBits,$useCBR) { $psEnc = $psEnc|0; $pnBytesOut = $pnBytesOut|0; $psRangeEnc = $psRangeEnc|0; $condCoding = $condCoding|0; $maxBits = $maxBits|0; $useCBR = $useCBR|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0.0, $158 = 0.0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0.0; var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $32 = 0; var $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0; var $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0; var $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0; var $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $GainsUnq_Q16 = 0, $GainsUnq_Q16357 = 0, $GainsUnq_Q16368 = 0, $GainsUnq_Q16373 = 0, $GainsUnq_Q16384 = 0, $GainsUnq_Q16389 = 0, $Lambda = 0; var $Lambda197 = 0, $Lambda199 = 0, $LastGainIndex_copy2 = 0, $Seed = 0, $Seed42 = 0, $Seed62 = 0, $add = 0, $add$ptr = 0, $add$ptr10 = 0, $add$ptr13 = 0, $add$ptr17 = 0, $add$ptr6 = 0, $add240 = 0, $add252 = 0, $add295 = 0, $add30 = 0.0, $add304 = 0, $add313 = 0, $add318 = 0, $add324 = 0; var $add363 = 0, $add379 = 0, $add395 = 0, $add454 = 0, $add472 = 0, $and = 0, $and21 = 0, $and275 = 0, $and300 = 0, $and359 = 0, $and375 = 0, $and391 = 0, $arch = 0, $arrayidx = 0, $arrayidx109 = 0, $arrayidx134 = 0, $arrayidx249 = 0, $arrayidx259 = 0, $arrayidx263 = 0, $arrayidx266 = 0; var $arrayidx267 = 0, $arrayidx269 = 0, $arrayidx347 = 0, $arrayidx350 = 0, $arrayidx353 = 0, $arrayidx358 = 0, $arrayidx369 = 0, $arrayidx374 = 0, $arrayidx385 = 0, $arrayidx390 = 0, $arrayidx401 = 0, $arrayidx432 = 0, $arrayidx435 = 0, $arrayidx448 = 0, $arrayidx464 = 0, $best_gain_mult = 0, $best_sum = 0, $call = 0, $call154 = 0, $call251 = 0; var $call296 = 0, $call425 = 0, $call471 = 0, $call91 = 0, $cmp = 0, $cmp103 = 0, $cmp113 = 0, $cmp129 = 0, $cmp156 = 0, $cmp159 = 0, $cmp162 = 0, $cmp168 = 0, $cmp173 = 0, $cmp175 = 0, $cmp185 = 0, $cmp188 = 0, $cmp191 = 0, $cmp195 = 0, $cmp208 = 0, $cmp212 = 0; var $cmp228 = 0, $cmp234 = 0, $cmp244 = 0, $cmp256 = 0, $cmp260 = 0, $cmp276 = 0, $cmp279 = 0, $cmp283 = 0, $cmp319 = 0, $cmp331 = 0, $cmp344 = 0, $cmp364 = 0, $cmp380 = 0, $cmp415 = 0, $cmp429 = 0, $cmp47 = 0, $cmp50 = 0, $cmp54 = 0, $cmp73 = 0, $cmp92 = 0; var $cmp97 = 0, $cond = 0.0, $cond399 = 0, $condCoding$addr = 0, $conv = 0, $conv144 = 0, $conv148 = 0, $conv204 = 0, $conv211 = 0, $conv22 = 0.0, $conv250 = 0, $conv282 = 0, $conv286 = 0, $conv288 = 0, $conv298 = 0, $conv301 = 0, $conv305 = 0, $conv314 = 0, $conv315 = 0, $conv325 = 0; var $conv327 = 0, $conv337 = 0, $conv355 = 0, $conv360 = 0, $conv371 = 0, $conv376 = 0, $conv387 = 0, $conv392 = 0, $conv416 = 0, $conv43 = 0, $conv433 = 0.0, $conv59 = 0, $conv82 = 0, $conv85 = 0, $div = 0, $div312 = 0, $div434 = 0.0, $ec_buf_copy = 0, $ec_prevLagIndex = 0, $ec_prevLagIndex123 = 0; var $ec_prevLagIndex64 = 0, $ec_prevLagIndex_copy = 0, $ec_prevSignalType = 0, $ec_prevSignalType125 = 0, $ec_prevSignalType66 = 0, $ec_prevSignalType_copy = 0, $first_frame_after_reset = 0, $found_lower = 0, $found_upper = 0, $frameCounter = 0, $frame_length = 0, $frame_length128 = 0, $frame_length153 = 0, $frame_length19 = 0, $frame_length28 = 0, $frame_length294 = 0, $frame_length447 = 0, $frame_length90 = 0, $fs_kHz = 0, $fs_kHz25 = 0; var $fs_kHz452 = 0, $gainMult_Q8 = 0, $gainMult_lower = 0, $gainMult_upper = 0, $gain_factor_Q16 = 0, $gain_lock = 0, $gainsID = 0, $gainsID_lower = 0, $gainsID_upper = 0, $i = 0, $inc = 0, $inc111 = 0, $inc136 = 0, $inc254 = 0, $inc272 = 0, $inc31 = 0, $inc403 = 0, $inc437 = 0, $inc440 = 0, $indices = 0; var $indices107 = 0, $indices118 = 0, $indices142 = 0, $indices146 = 0, $indices201 = 0, $indices36 = 0, $indices409 = 0, $indices41 = 0, $indices420 = 0, $indices467 = 0, $indices61 = 0, $indices68 = 0, $indices81 = 0, $indices84 = 0, $inputBuf = 0, $inputBuf15 = 0, $iter = 0, $j = 0, $lastGainIndexPrev = 0, $lastGainIndexPrev116 = 0; var $lastGainIndexPrev405 = 0, $ltp_mem_length = 0, $ltp_mem_length450 = 0, $ltp_mem_length5 = 0, $maxBits$addr = 0, $maxIter = 0, $mul = 0, $mul194 = 0.0, $mul198 = 0.0, $mul23 = 0.0, $mul238 = 0, $mul243 = 0, $mul26 = 0, $mul287 = 0, $mul29 = 0, $mul299 = 0, $mul302 = 0, $mul310 = 0, $mul356 = 0, $mul361 = 0; var $mul372 = 0, $mul377 = 0, $mul388 = 0, $mul393 = 0, $mul453 = 0, $mul455 = 0, $nBits = 0, $nBits_lower = 0, $nBits_upper = 0, $nFramesEncoded = 0, $nFramesEncoded140 = 0, $nb_subfr = 0, $nb_subfr102 = 0, $nb_subfr233 = 0, $nb_subfr343 = 0, $nb_subfr418 = 0, $nb_subfr424 = 0, $nb_subfr428 = 0, $nb_subfr462 = 0, $offs = 0; var $offs217 = 0, $or$cond = 0, $or$cond1 = 0, $or$cond2 = 0, $or$cond3 = 0, $pGains_Q16 = 0, $pitchL = 0, $pnBytesOut$addr = 0, $prefillFlag = 0, $prefillFlag457 = 0, $prevLag = 0, $prevSignalType = 0, $psEnc$addr = 0, $psRangeEnc$addr = 0, $pulses = 0, $pulses133 = 0, $pulses150 = 0, $pulses248 = 0, $pulses87 = 0, $quantOffsetType = 0; var $quantOffsetType147 = 0, $quantOffsetType202 = 0, $res_pitch = 0, $res_pitch_frame = 0, $ret = 0, $retval = 0, $sEncCtrl = 0, $sLP = 0, $sNSQ = 0, $sNSQ180 = 0, $sNSQ219 = 0, $sNSQ58 = 0, $sNSQ70 = 0, $sNSQ_copy = 0, $sNSQ_copy2 = 0, $sRangeEnc_copy = 0, $sRangeEnc_copy2 = 0, $sShape = 0, $sShape181 = 0, $sShape220 = 0; var $sShape406 = 0, $sShape413 = 0, $seed_copy = 0, $shl = 0, $shl400 = 0, $shr = 0, $shr297 = 0, $shr303 = 0, $shr317 = 0, $shr323 = 0, $shr329 = 0, $shr335 = 0, $shr354 = 0, $shr362 = 0, $shr370 = 0, $shr378 = 0, $shr386 = 0, $shr394 = 0, $shr473 = 0, $signalType = 0; var $signalType143 = 0, $signalType468 = 0, $sub = 0, $sub207 = 0, $sub292 = 0, $sub308 = 0, $sub309 = 0, $sub311 = 0, $sub316 = 0, $sub322 = 0, $sub328 = 0, $sub330 = 0, $sub334 = 0, $sub336 = 0, $sub463 = 0, $subfr_length = 0, $subfr_length242 = 0, $sum = 0, $tmp = 0, $tobool = 0; var $tobool171 = 0, $tobool226 = 0, $tobool264 = 0, $tobool348 = 0, $tobool458 = 0, $tobool75 = 0, $tobool95 = 0, $useCBR$addr = 0, $x_buf = 0, $x_buf443 = 0, $x_buf445 = 0, $x_frame = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; sp = STACKTOP; STACKTOP = STACKTOP + 13696|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(13696|0); $sEncCtrl = sp + 11624|0; $res_pitch = sp + 8904|0; $sRangeEnc_copy = sp + 8856|0; $sRangeEnc_copy2 = sp + 8808|0; $sNSQ_copy = sp + 4456|0; $sNSQ_copy2 = sp + 104|0; $pGains_Q16 = sp + 48|0; $ec_buf_copy = sp + 12420|0; $gain_lock = sp + 32|0; $best_gain_mult = sp + 12408|0; $best_sum = sp + 16|0; $psEnc$addr = $psEnc; $pnBytesOut$addr = $pnBytesOut; $psRangeEnc$addr = $psRangeEnc; $condCoding$addr = $condCoding; $maxBits$addr = $maxBits; $useCBR$addr = $useCBR; $ret = 0; ;HEAP32[$gain_lock>>2]=0|0;HEAP32[$gain_lock+4>>2]=0|0;HEAP32[$gain_lock+8>>2]=0|0;HEAP32[$gain_lock+12>>2]=0|0; $gainMult_upper = 0; $gainMult_lower = 0; $nBits_upper = 0; $nBits_lower = 0; $LastGainIndex_copy2 = 0; $0 = $psEnc$addr; $frameCounter = ((($0)) + 4616|0); $1 = HEAP32[$frameCounter>>2]|0; $inc = (($1) + 1)|0; HEAP32[$frameCounter>>2] = $inc; $and = $1 & 3; $conv = $and&255; $2 = $psEnc$addr; $indices = ((($2)) + 4732|0); $Seed = ((($indices)) + 34|0); HEAP8[$Seed>>0] = $conv; $3 = $psEnc$addr; $x_buf = ((($3)) + 7176|0); $4 = $psEnc$addr; $ltp_mem_length = ((($4)) + 4588|0); $5 = HEAP32[$ltp_mem_length>>2]|0; $add$ptr = (($x_buf) + ($5<<2)|0); $x_frame = $add$ptr; $6 = $psEnc$addr; $ltp_mem_length5 = ((($6)) + 4588|0); $7 = HEAP32[$ltp_mem_length5>>2]|0; $add$ptr6 = (($res_pitch) + ($7<<2)|0); $res_pitch_frame = $add$ptr6; $8 = $psEnc$addr; $sLP = ((($8)) + 16|0); $9 = $psEnc$addr; $inputBuf = ((($9)) + 5092|0); $add$ptr10 = ((($inputBuf)) + 2|0); $10 = $psEnc$addr; $frame_length = ((($10)) + 4580|0); $11 = HEAP32[$frame_length>>2]|0; _silk_LP_variable_cutoff($sLP,$add$ptr10,$11); $12 = $x_frame; $13 = $psEnc$addr; $fs_kHz = ((($13)) + 4572|0); $14 = HEAP32[$fs_kHz>>2]|0; $mul = ($14*5)|0; $add$ptr13 = (($12) + ($mul<<2)|0); $15 = $psEnc$addr; $inputBuf15 = ((($15)) + 5092|0); $add$ptr17 = ((($inputBuf15)) + 2|0); $16 = $psEnc$addr; $frame_length19 = ((($16)) + 4580|0); $17 = HEAP32[$frame_length19>>2]|0; _silk_short2float_array_285($add$ptr13,$add$ptr17,$17); $i = 0; while(1) { $18 = $i; $cmp = ($18|0)<(8); if (!($cmp)) { break; } $19 = $i; $and21 = $19 & 2; $sub = (1 - ($and21))|0; $conv22 = (+($sub|0)); $mul23 = $conv22 * 9.9999999747524271E-7; $20 = $x_frame; $21 = $psEnc$addr; $fs_kHz25 = ((($21)) + 4572|0); $22 = HEAP32[$fs_kHz25>>2]|0; $mul26 = ($22*5)|0; $23 = $i; $24 = $psEnc$addr; $frame_length28 = ((($24)) + 4580|0); $25 = HEAP32[$frame_length28>>2]|0; $shr = $25 >> 3; $mul29 = Math_imul($23, $shr)|0; $add = (($mul26) + ($mul29))|0; $arrayidx = (($20) + ($add<<2)|0); $26 = +HEAPF32[$arrayidx>>2]; $add30 = $26 + $mul23; HEAPF32[$arrayidx>>2] = $add30; $27 = $i; $inc31 = (($27) + 1)|0; $i = $inc31; } $28 = $psEnc$addr; $prefillFlag = ((($28)) + 4676|0); $29 = HEAP32[$prefillFlag>>2]|0; $tobool = ($29|0)!=(0); L5: do { if (!($tobool)) { $30 = $psEnc$addr; $31 = $x_frame; $32 = $psEnc$addr; $arch = ((($32)) + 5088|0); $33 = HEAP32[$arch>>2]|0; _silk_find_pitch_lags_FLP($30,$sEncCtrl,$res_pitch,$31,$33); $34 = $psEnc$addr; $35 = $res_pitch_frame; $36 = $x_frame; _silk_noise_shape_analysis_FLP($34,$sEncCtrl,$35,$36); $37 = $psEnc$addr; $38 = $res_pitch_frame; $39 = $x_frame; $40 = $condCoding$addr; _silk_find_pred_coefs_FLP($37,$sEncCtrl,$38,$39,$40); $41 = $psEnc$addr; $42 = $condCoding$addr; _silk_process_gains_FLP($41,$sEncCtrl,$42); $43 = $psEnc$addr; $44 = $x_frame; $45 = $condCoding$addr; _silk_LBRR_encode_FLP($43,$sEncCtrl,$44,$45); $maxIter = 6; $gainMult_Q8 = 256; $found_lower = 0; $found_upper = 0; $46 = $psEnc$addr; $indices36 = ((($46)) + 4732|0); $47 = $psEnc$addr; $nb_subfr = ((($47)) + 4576|0); $48 = HEAP32[$nb_subfr>>2]|0; $call = (_silk_gains_ID($indices36,$48)|0); $gainsID = $call; $gainsID_lower = -1; $gainsID_upper = -1; $49 = $psRangeEnc$addr; dest=$sRangeEnc_copy; src=$49; stop=dest+48|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); $50 = $psEnc$addr; $sNSQ = ((($50)) + 144|0); _memcpy(($sNSQ_copy|0),($sNSQ|0),4352)|0; $51 = $psEnc$addr; $indices41 = ((($51)) + 4732|0); $Seed42 = ((($indices41)) + 34|0); $52 = HEAP8[$Seed42>>0]|0; $conv43 = $52 << 24 >> 24; $seed_copy = $conv43; $53 = $psEnc$addr; $ec_prevLagIndex = ((($53)) + 5768|0); $54 = HEAP16[$ec_prevLagIndex>>1]|0; $ec_prevLagIndex_copy = $54; $55 = $psEnc$addr; $ec_prevSignalType = ((($55)) + 5764|0); $56 = HEAP32[$ec_prevSignalType>>2]|0; $ec_prevSignalType_copy = $56; $iter = 0; while(1) { $57 = $gainsID; $58 = $gainsID_lower; $cmp47 = ($57|0)==($58|0); do { if ($cmp47) { $59 = $nBits_lower; $nBits = $59; } else { $60 = $gainsID; $61 = $gainsID_upper; $cmp50 = ($60|0)==($61|0); if ($cmp50) { $62 = $nBits_upper; $nBits = $62; break; } $63 = $iter; $cmp54 = ($63|0)>(0); if ($cmp54) { $64 = $psRangeEnc$addr; dest=$64; src=$sRangeEnc_copy; stop=dest+48|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); $65 = $psEnc$addr; $sNSQ58 = ((($65)) + 144|0); _memcpy(($sNSQ58|0),($sNSQ_copy|0),4352)|0; $66 = $seed_copy; $conv59 = $66&255; $67 = $psEnc$addr; $indices61 = ((($67)) + 4732|0); $Seed62 = ((($indices61)) + 34|0); HEAP8[$Seed62>>0] = $conv59; $68 = $ec_prevLagIndex_copy; $69 = $psEnc$addr; $ec_prevLagIndex64 = ((($69)) + 5768|0); HEAP16[$ec_prevLagIndex64>>1] = $68; $70 = $ec_prevSignalType_copy; $71 = $psEnc$addr; $ec_prevSignalType66 = ((($71)) + 5764|0); HEAP32[$ec_prevSignalType66>>2] = $70; } $72 = $psEnc$addr; $73 = $psEnc$addr; $indices68 = ((($73)) + 4732|0); $74 = $psEnc$addr; $sNSQ70 = ((($74)) + 144|0); $75 = $psEnc$addr; $pulses = ((($75)) + 4768|0); $76 = $x_frame; _silk_NSQ_wrapper_FLP($72,$sEncCtrl,$indices68,$sNSQ70,$pulses,$76); $77 = $iter; $78 = $maxIter; $cmp73 = ($77|0)!=($78|0); $79 = $found_lower; $tobool75 = ($79|0)!=(0); $or$cond = $cmp73 | $tobool75; if (!($or$cond)) { $80 = $psRangeEnc$addr; dest=$sRangeEnc_copy2; src=$80; stop=dest+48|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); } $81 = $psEnc$addr; $82 = $psRangeEnc$addr; $83 = $psEnc$addr; $nFramesEncoded = ((($83)) + 5744|0); $84 = HEAP32[$nFramesEncoded>>2]|0; $85 = $condCoding$addr; _silk_encode_indices($81,$82,$84,0,$85); $86 = $psRangeEnc$addr; $87 = $psEnc$addr; $indices81 = ((($87)) + 4732|0); $signalType = ((($indices81)) + 29|0); $88 = HEAP8[$signalType>>0]|0; $conv82 = $88 << 24 >> 24; $89 = $psEnc$addr; $indices84 = ((($89)) + 4732|0); $quantOffsetType = ((($indices84)) + 30|0); $90 = HEAP8[$quantOffsetType>>0]|0; $conv85 = $90 << 24 >> 24; $91 = $psEnc$addr; $pulses87 = ((($91)) + 4768|0); $92 = $psEnc$addr; $frame_length90 = ((($92)) + 4580|0); $93 = HEAP32[$frame_length90>>2]|0; _silk_encode_pulses($86,$conv82,$conv85,$pulses87,$93); $94 = $psRangeEnc$addr; $call91 = (_ec_tell_286($94)|0); $nBits = $call91; $95 = $iter; $96 = $maxIter; $cmp92 = ($95|0)!=($96|0); $97 = $found_lower; $tobool95 = ($97|0)!=(0); $or$cond1 = $cmp92 | $tobool95; if (!($or$cond1)) { $98 = $nBits; $99 = $maxBits$addr; $cmp97 = ($98|0)>($99|0); if ($cmp97) { $100 = $psRangeEnc$addr; dest=$100; src=$sRangeEnc_copy2; stop=dest+48|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); $lastGainIndexPrev = ((($sEncCtrl)) + 744|0); $101 = HEAP8[$lastGainIndexPrev>>0]|0; $102 = $psEnc$addr; $sShape = ((($102)) + 7164|0); HEAP8[$sShape>>0] = $101; $i = 0; while(1) { $103 = $i; $104 = $psEnc$addr; $nb_subfr102 = ((($104)) + 4576|0); $105 = HEAP32[$nb_subfr102>>2]|0; $cmp103 = ($103|0)<($105|0); if (!($cmp103)) { break; } $106 = $psEnc$addr; $indices107 = ((($106)) + 4732|0); $107 = $i; $arrayidx109 = (($indices107) + ($107)|0); HEAP8[$arrayidx109>>0] = 4; $108 = $i; $inc111 = (($108) + 1)|0; $i = $inc111; } $109 = $condCoding$addr; $cmp113 = ($109|0)!=(2); if ($cmp113) { $lastGainIndexPrev116 = ((($sEncCtrl)) + 744|0); $110 = HEAP8[$lastGainIndexPrev116>>0]|0; $111 = $psEnc$addr; $indices118 = ((($111)) + 4732|0); HEAP8[$indices118>>0] = $110; } $112 = $ec_prevLagIndex_copy; $113 = $psEnc$addr; $ec_prevLagIndex123 = ((($113)) + 5768|0); HEAP16[$ec_prevLagIndex123>>1] = $112; $114 = $ec_prevSignalType_copy; $115 = $psEnc$addr; $ec_prevSignalType125 = ((($115)) + 5764|0); HEAP32[$ec_prevSignalType125>>2] = $114; $i = 0; while(1) { $116 = $i; $117 = $psEnc$addr; $frame_length128 = ((($117)) + 4580|0); $118 = HEAP32[$frame_length128>>2]|0; $cmp129 = ($116|0)<($118|0); $119 = $psEnc$addr; if (!($cmp129)) { break; } $pulses133 = ((($119)) + 4768|0); $120 = $i; $arrayidx134 = (($pulses133) + ($120)|0); HEAP8[$arrayidx134>>0] = 0; $121 = $i; $inc136 = (($121) + 1)|0; $i = $inc136; } $122 = $psRangeEnc$addr; $123 = $psEnc$addr; $nFramesEncoded140 = ((($123)) + 5744|0); $124 = HEAP32[$nFramesEncoded140>>2]|0; $125 = $condCoding$addr; _silk_encode_indices($119,$122,$124,0,$125); $126 = $psRangeEnc$addr; $127 = $psEnc$addr; $indices142 = ((($127)) + 4732|0); $signalType143 = ((($indices142)) + 29|0); $128 = HEAP8[$signalType143>>0]|0; $conv144 = $128 << 24 >> 24; $129 = $psEnc$addr; $indices146 = ((($129)) + 4732|0); $quantOffsetType147 = ((($indices146)) + 30|0); $130 = HEAP8[$quantOffsetType147>>0]|0; $conv148 = $130 << 24 >> 24; $131 = $psEnc$addr; $pulses150 = ((($131)) + 4768|0); $132 = $psEnc$addr; $frame_length153 = ((($132)) + 4580|0); $133 = HEAP32[$frame_length153>>2]|0; _silk_encode_pulses($126,$conv144,$conv148,$pulses150,$133); $134 = $psRangeEnc$addr; $call154 = (_ec_tell_286($134)|0); $nBits = $call154; } } $135 = $useCBR$addr; $cmp156 = ($135|0)==(0); $136 = $iter; $cmp159 = ($136|0)==(0); $or$cond2 = $cmp156 & $cmp159; if ($or$cond2) { $137 = $nBits; $138 = $maxBits$addr; $cmp162 = ($137|0)<=($138|0); if ($cmp162) { break L5; } } } } while(0); $139 = $iter; $140 = $maxIter; $cmp168 = ($139|0)==($140|0); if ($cmp168) { break; } $153 = $nBits; $154 = $maxBits$addr; $cmp185 = ($153|0)>($154|0); do { if ($cmp185) { $155 = $found_lower; $cmp188 = ($155|0)==(0); $156 = $iter; $cmp191 = ($156|0)>=(2); $or$cond3 = $cmp188 & $cmp191; if (!($or$cond3)) { $found_upper = 1; $160 = $nBits; $nBits_upper = $160; $161 = $gainMult_Q8; $conv204 = $161 << 16 >> 16; $gainMult_upper = $conv204; $162 = $gainsID; $gainsID_upper = $162; break; } $Lambda = ((($sEncCtrl)) + 692|0); $157 = +HEAPF32[$Lambda>>2]; $mul194 = $157 * 1.5; $cmp195 = $mul194 > 1.5; if ($cmp195) { $Lambda197 = ((($sEncCtrl)) + 692|0); $158 = +HEAPF32[$Lambda197>>2]; $mul198 = $158 * 1.5; $cond = $mul198; } else { $cond = 1.5; } $Lambda199 = ((($sEncCtrl)) + 692|0); HEAPF32[$Lambda199>>2] = $cond; $159 = $psEnc$addr; $indices201 = ((($159)) + 4732|0); $quantOffsetType202 = ((($indices201)) + 30|0); HEAP8[$quantOffsetType202>>0] = 0; $found_upper = 0; $gainsID_upper = -1; } else { $163 = $nBits; $164 = $maxBits$addr; $sub207 = (($164) - 5)|0; $cmp208 = ($163|0)<($sub207|0); if (!($cmp208)) { break L5; } $found_lower = 1; $165 = $nBits; $nBits_lower = $165; $166 = $gainMult_Q8; $conv211 = $166 << 16 >> 16; $gainMult_lower = $conv211; $167 = $gainsID; $168 = $gainsID_lower; $cmp212 = ($167|0)!=($168|0); if ($cmp212) { $169 = $gainsID; $gainsID_lower = $169; $170 = $psRangeEnc$addr; dest=$sRangeEnc_copy2; src=$170; stop=dest+48|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); $171 = $psRangeEnc$addr; $172 = HEAP32[$171>>2]|0; $173 = $psRangeEnc$addr; $offs217 = ((($173)) + 24|0); $174 = HEAP32[$offs217>>2]|0; _memcpy(($ec_buf_copy|0),($172|0),($174|0))|0; $175 = $psEnc$addr; $sNSQ219 = ((($175)) + 144|0); _memcpy(($sNSQ_copy2|0),($sNSQ219|0),4352)|0; $176 = $psEnc$addr; $sShape220 = ((($176)) + 7164|0); $177 = HEAP8[$sShape220>>0]|0; $LastGainIndex_copy2 = $177; } } } while(0); $178 = $found_lower; $tobool226 = ($178|0)!=(0); L51: do { if (!($tobool226)) { $179 = $nBits; $180 = $maxBits$addr; $cmp228 = ($179|0)>($180|0); if ($cmp228) { $i = 0; while(1) { $181 = $i; $182 = $psEnc$addr; $nb_subfr233 = ((($182)) + 4576|0); $183 = HEAP32[$nb_subfr233>>2]|0; $cmp234 = ($181|0)<($183|0); if (!($cmp234)) { break L51; } $sum = 0; $184 = $i; $185 = $psEnc$addr; $subfr_length = ((($185)) + 4584|0); $186 = HEAP32[$subfr_length>>2]|0; $mul238 = Math_imul($184, $186)|0; $j = $mul238; while(1) { $187 = $j; $188 = $i; $add240 = (($188) + 1)|0; $189 = $psEnc$addr; $subfr_length242 = ((($189)) + 4584|0); $190 = HEAP32[$subfr_length242>>2]|0; $mul243 = Math_imul($add240, $190)|0; $cmp244 = ($187|0)<($mul243|0); if (!($cmp244)) { break; } $191 = $psEnc$addr; $pulses248 = ((($191)) + 4768|0); $192 = $j; $arrayidx249 = (($pulses248) + ($192)|0); $193 = HEAP8[$arrayidx249>>0]|0; $conv250 = $193 << 24 >> 24; $call251 = (Math_abs(($conv250|0))|0); $194 = $sum; $add252 = (($194) + ($call251))|0; $sum = $add252; $195 = $j; $inc254 = (($195) + 1)|0; $j = $inc254; } $196 = $iter; $cmp256 = ($196|0)==(0); do { if ($cmp256) { label = 51; } else { $197 = $sum; $198 = $i; $arrayidx259 = (($best_sum) + ($198<<2)|0); $199 = HEAP32[$arrayidx259>>2]|0; $cmp260 = ($197|0)<($199|0); if ($cmp260) { $200 = $i; $arrayidx263 = (($gain_lock) + ($200<<2)|0); $201 = HEAP32[$arrayidx263>>2]|0; $tobool264 = ($201|0)!=(0); if (!($tobool264)) { label = 51; break; } } $206 = $i; $arrayidx269 = (($gain_lock) + ($206<<2)|0); HEAP32[$arrayidx269>>2] = 1; } } while(0); if ((label|0) == 51) { label = 0; $202 = $sum; $203 = $i; $arrayidx266 = (($best_sum) + ($203<<2)|0); HEAP32[$arrayidx266>>2] = $202; $204 = $gainMult_Q8; $205 = $i; $arrayidx267 = (($best_gain_mult) + ($205<<1)|0); HEAP16[$arrayidx267>>1] = $204; } $207 = $i; $inc272 = (($207) + 1)|0; $i = $inc272; } } } } while(0); $208 = $found_lower; $209 = $found_upper; $and275 = $208 & $209; $cmp276 = ($and275|0)==(0); do { if ($cmp276) { $210 = $nBits; $211 = $maxBits$addr; $cmp279 = ($210|0)>($211|0); if (!($cmp279)) { $214 = $nBits; $215 = $maxBits$addr; $sub292 = (($214) - ($215))|0; $shl = $sub292 << 7; $216 = $psEnc$addr; $frame_length294 = ((($216)) + 4580|0); $217 = HEAP32[$frame_length294>>2]|0; $div = (($shl|0) / ($217|0))&-1; $add295 = (($div) + 2048)|0; $call296 = (_silk_log2lin($add295)|0); $gain_factor_Q16 = $call296; $218 = $gain_factor_Q16; $shr297 = $218 >> 16; $219 = $gainMult_Q8; $conv298 = $219 << 16 >> 16; $mul299 = Math_imul($shr297, $conv298)|0; $220 = $gain_factor_Q16; $and300 = $220 & 65535; $221 = $gainMult_Q8; $conv301 = $221 << 16 >> 16; $mul302 = Math_imul($and300, $conv301)|0; $shr303 = $mul302 >> 16; $add304 = (($mul299) + ($shr303))|0; $conv305 = $add304&65535; $gainMult_Q8 = $conv305; break; } $212 = $gainMult_Q8; $conv282 = $212 << 16 >> 16; $cmp283 = ($conv282|0)<(16384); if ($cmp283) { $213 = $gainMult_Q8; $conv286 = $213 << 16 >> 16; $mul287 = $conv286<<1; $conv288 = $mul287&65535; $gainMult_Q8 = $conv288; break; } else { $gainMult_Q8 = 32767; break; } } else { $222 = $gainMult_lower; $223 = $gainMult_upper; $224 = $gainMult_lower; $sub308 = (($223) - ($224))|0; $225 = $maxBits$addr; $226 = $nBits_lower; $sub309 = (($225) - ($226))|0; $mul310 = Math_imul($sub308, $sub309)|0; $227 = $nBits_upper; $228 = $nBits_lower; $sub311 = (($227) - ($228))|0; $div312 = (($mul310|0) / ($sub311|0))&-1; $add313 = (($222) + ($div312))|0; $conv314 = $add313&65535; $gainMult_Q8 = $conv314; $229 = $gainMult_Q8; $conv315 = $229 << 16 >> 16; $230 = $gainMult_lower; $231 = $gainMult_upper; $232 = $gainMult_lower; $sub316 = (($231) - ($232))|0; $shr317 = $sub316 >> 2; $add318 = (($230) + ($shr317))|0; $cmp319 = ($conv315|0)>($add318|0); if ($cmp319) { $233 = $gainMult_lower; $234 = $gainMult_upper; $235 = $gainMult_lower; $sub322 = (($234) - ($235))|0; $shr323 = $sub322 >> 2; $add324 = (($233) + ($shr323))|0; $conv325 = $add324&65535; $gainMult_Q8 = $conv325; break; } $236 = $gainMult_Q8; $conv327 = $236 << 16 >> 16; $237 = $gainMult_upper; $238 = $gainMult_upper; $239 = $gainMult_lower; $sub328 = (($238) - ($239))|0; $shr329 = $sub328 >> 2; $sub330 = (($237) - ($shr329))|0; $cmp331 = ($conv327|0)<($sub330|0); if ($cmp331) { $240 = $gainMult_upper; $241 = $gainMult_upper; $242 = $gainMult_lower; $sub334 = (($241) - ($242))|0; $shr335 = $sub334 >> 2; $sub336 = (($240) - ($shr335))|0; $conv337 = $sub336&65535; $gainMult_Q8 = $conv337; } } } while(0); $i = 0; while(1) { $243 = $i; $244 = $psEnc$addr; $nb_subfr343 = ((($244)) + 4576|0); $245 = HEAP32[$nb_subfr343>>2]|0; $cmp344 = ($243|0)<($245|0); if (!($cmp344)) { break; } $246 = $i; $arrayidx347 = (($gain_lock) + ($246<<2)|0); $247 = HEAP32[$arrayidx347>>2]|0; $tobool348 = ($247|0)!=(0); if ($tobool348) { $248 = $i; $arrayidx350 = (($best_gain_mult) + ($248<<1)|0); $249 = HEAP16[$arrayidx350>>1]|0; $tmp = $249; } else { $250 = $gainMult_Q8; $tmp = $250; } $GainsUnq_Q16 = ((($sEncCtrl)) + 728|0); $251 = $i; $arrayidx353 = (($GainsUnq_Q16) + ($251<<2)|0); $252 = HEAP32[$arrayidx353>>2]|0; $shr354 = $252 >> 16; $253 = $tmp; $conv355 = $253 << 16 >> 16; $mul356 = Math_imul($shr354, $conv355)|0; $GainsUnq_Q16357 = ((($sEncCtrl)) + 728|0); $254 = $i; $arrayidx358 = (($GainsUnq_Q16357) + ($254<<2)|0); $255 = HEAP32[$arrayidx358>>2]|0; $and359 = $255 & 65535; $256 = $tmp; $conv360 = $256 << 16 >> 16; $mul361 = Math_imul($and359, $conv360)|0; $shr362 = $mul361 >> 16; $add363 = (($mul356) + ($shr362))|0; $cmp364 = ($add363|0)>(8388607); if ($cmp364) { $cond399 = 8388607; } else { $GainsUnq_Q16368 = ((($sEncCtrl)) + 728|0); $257 = $i; $arrayidx369 = (($GainsUnq_Q16368) + ($257<<2)|0); $258 = HEAP32[$arrayidx369>>2]|0; $shr370 = $258 >> 16; $259 = $tmp; $conv371 = $259 << 16 >> 16; $mul372 = Math_imul($shr370, $conv371)|0; $GainsUnq_Q16373 = ((($sEncCtrl)) + 728|0); $260 = $i; $arrayidx374 = (($GainsUnq_Q16373) + ($260<<2)|0); $261 = HEAP32[$arrayidx374>>2]|0; $and375 = $261 & 65535; $262 = $tmp; $conv376 = $262 << 16 >> 16; $mul377 = Math_imul($and375, $conv376)|0; $shr378 = $mul377 >> 16; $add379 = (($mul372) + ($shr378))|0; $cmp380 = ($add379|0)<(-8388608); if ($cmp380) { $cond399 = -8388608; } else { $GainsUnq_Q16384 = ((($sEncCtrl)) + 728|0); $263 = $i; $arrayidx385 = (($GainsUnq_Q16384) + ($263<<2)|0); $264 = HEAP32[$arrayidx385>>2]|0; $shr386 = $264 >> 16; $265 = $tmp; $conv387 = $265 << 16 >> 16; $mul388 = Math_imul($shr386, $conv387)|0; $GainsUnq_Q16389 = ((($sEncCtrl)) + 728|0); $266 = $i; $arrayidx390 = (($GainsUnq_Q16389) + ($266<<2)|0); $267 = HEAP32[$arrayidx390>>2]|0; $and391 = $267 & 65535; $268 = $tmp; $conv392 = $268 << 16 >> 16; $mul393 = Math_imul($and391, $conv392)|0; $shr394 = $mul393 >> 16; $add395 = (($mul388) + ($shr394))|0; $cond399 = $add395; } } $shl400 = $cond399 << 8; $269 = $i; $arrayidx401 = (($pGains_Q16) + ($269<<2)|0); HEAP32[$arrayidx401>>2] = $shl400; $270 = $i; $inc403 = (($270) + 1)|0; $i = $inc403; } $lastGainIndexPrev405 = ((($sEncCtrl)) + 744|0); $271 = HEAP8[$lastGainIndexPrev405>>0]|0; $272 = $psEnc$addr; $sShape406 = ((($272)) + 7164|0); HEAP8[$sShape406>>0] = $271; $273 = $psEnc$addr; $indices409 = ((($273)) + 4732|0); $274 = $psEnc$addr; $sShape413 = ((($274)) + 7164|0); $275 = $condCoding$addr; $cmp415 = ($275|0)==(2); $conv416 = $cmp415&1; $276 = $psEnc$addr; $nb_subfr418 = ((($276)) + 4576|0); $277 = HEAP32[$nb_subfr418>>2]|0; _silk_gains_quant($indices409,$pGains_Q16,$sShape413,$conv416,$277); $278 = $psEnc$addr; $indices420 = ((($278)) + 4732|0); $279 = $psEnc$addr; $nb_subfr424 = ((($279)) + 4576|0); $280 = HEAP32[$nb_subfr424>>2]|0; $call425 = (_silk_gains_ID($indices420,$280)|0); $gainsID = $call425; $i = 0; while(1) { $281 = $i; $282 = $psEnc$addr; $nb_subfr428 = ((($282)) + 4576|0); $283 = HEAP32[$nb_subfr428>>2]|0; $cmp429 = ($281|0)<($283|0); if (!($cmp429)) { break; } $284 = $i; $arrayidx432 = (($pGains_Q16) + ($284<<2)|0); $285 = HEAP32[$arrayidx432>>2]|0; $conv433 = (+($285|0)); $div434 = $conv433 / 65536.0; $286 = $i; $arrayidx435 = (($sEncCtrl) + ($286<<2)|0); HEAPF32[$arrayidx435>>2] = $div434; $287 = $i; $inc437 = (($287) + 1)|0; $i = $inc437; } $288 = $iter; $inc440 = (($288) + 1)|0; $iter = $inc440; } $141 = $found_lower; $tobool171 = ($141|0)!=(0); if ($tobool171) { $142 = $gainsID; $143 = $gainsID_lower; $cmp173 = ($142|0)==($143|0); if (!($cmp173)) { $144 = $nBits; $145 = $maxBits$addr; $cmp175 = ($144|0)>($145|0); if (!($cmp175)) { break; } } $146 = $psRangeEnc$addr; dest=$146; src=$sRangeEnc_copy2; stop=dest+48|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); $147 = $psRangeEnc$addr; $148 = HEAP32[$147>>2]|0; $offs = ((($sRangeEnc_copy2)) + 24|0); $149 = HEAP32[$offs>>2]|0; _memcpy(($148|0),($ec_buf_copy|0),($149|0))|0; $150 = $psEnc$addr; $sNSQ180 = ((($150)) + 144|0); _memcpy(($sNSQ180|0),($sNSQ_copy2|0),4352)|0; $151 = $LastGainIndex_copy2; $152 = $psEnc$addr; $sShape181 = ((($152)) + 7164|0); HEAP8[$sShape181>>0] = $151; } } } while(0); $289 = $psEnc$addr; $x_buf443 = ((($289)) + 7176|0); $290 = $psEnc$addr; $x_buf445 = ((($290)) + 7176|0); $291 = $psEnc$addr; $frame_length447 = ((($291)) + 4580|0); $292 = HEAP32[$frame_length447>>2]|0; $arrayidx448 = (($x_buf445) + ($292<<2)|0); $293 = $psEnc$addr; $ltp_mem_length450 = ((($293)) + 4588|0); $294 = HEAP32[$ltp_mem_length450>>2]|0; $295 = $psEnc$addr; $fs_kHz452 = ((($295)) + 4572|0); $296 = HEAP32[$fs_kHz452>>2]|0; $mul453 = ($296*5)|0; $add454 = (($294) + ($mul453))|0; $mul455 = $add454<<2; _memmove(($x_buf443|0),($arrayidx448|0),($mul455|0))|0; $297 = $psEnc$addr; $prefillFlag457 = ((($297)) + 4676|0); $298 = HEAP32[$prefillFlag457>>2]|0; $tobool458 = ($298|0)!=(0); if ($tobool458) { $299 = $pnBytesOut$addr; HEAP32[$299>>2] = 0; $300 = $ret; $retval = $300; $312 = $retval; STACKTOP = sp;return ($312|0); } else { $pitchL = ((($sEncCtrl)) + 228|0); $301 = $psEnc$addr; $nb_subfr462 = ((($301)) + 4576|0); $302 = HEAP32[$nb_subfr462>>2]|0; $sub463 = (($302) - 1)|0; $arrayidx464 = (($pitchL) + ($sub463<<2)|0); $303 = HEAP32[$arrayidx464>>2]|0; $304 = $psEnc$addr; $prevLag = ((($304)) + 4540|0); HEAP32[$prevLag>>2] = $303; $305 = $psEnc$addr; $indices467 = ((($305)) + 4732|0); $signalType468 = ((($indices467)) + 29|0); $306 = HEAP8[$signalType468>>0]|0; $307 = $psEnc$addr; $prevSignalType = ((($307)) + 4537|0); HEAP8[$prevSignalType>>0] = $306; $308 = $psEnc$addr; $first_frame_after_reset = ((($308)) + 4660|0); HEAP32[$first_frame_after_reset>>2] = 0; $309 = $psRangeEnc$addr; $call471 = (_ec_tell_286($309)|0); $add472 = (($call471) + 7)|0; $shr473 = $add472 >> 3; $310 = $pnBytesOut$addr; HEAP32[$310>>2] = $shr473; $311 = $ret; $retval = $311; $312 = $retval; STACKTOP = sp;return ($312|0); } return (0)|0; } function _silk_short2float_array_285($out,$in,$length) { $out = $out|0; $in = $in|0; $length = $length|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $arrayidx = 0, $arrayidx1 = 0, $cmp = 0, $conv = 0.0, $dec = 0, $in$addr = 0, $k = 0, $length$addr = 0, $out$addr = 0, $sub = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $out$addr = $out; $in$addr = $in; $length$addr = $length; $0 = $length$addr; $sub = (($0) - 1)|0; $k = $sub; while(1) { $1 = $k; $cmp = ($1|0)>=(0); if (!($cmp)) { break; } $2 = $in$addr; $3 = $k; $arrayidx = (($2) + ($3<<1)|0); $4 = HEAP16[$arrayidx>>1]|0; $conv = (+($4<<16>>16)); $5 = $out$addr; $6 = $k; $arrayidx1 = (($5) + ($6<<2)|0); HEAPF32[$arrayidx1>>2] = $conv; $7 = $k; $dec = (($7) + -1)|0; $k = $dec; } STACKTOP = sp;return; } function _silk_LBRR_encode_FLP($psEnc,$psEncCtrl,$xfw,$condCoding) { $psEnc = $psEnc|0; $psEncCtrl = $psEncCtrl|0; $xfw = $xfw|0; $condCoding = $condCoding|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $Gains_Q16 = 0, $LBRR_GainIncreases = 0, $LBRR_enabled = 0, $LBRR_flags = 0, $LBRR_flags16 = 0; var $LBRRprevLastGainIndex = 0, $LBRRprevLastGainIndex36 = 0, $TempGains = 0, $add = 0, $arrayidx = 0, $arrayidx19 = 0, $arrayidx45 = 0, $arrayidx49 = 0, $arrayidx53 = 0, $arrayidx7 = 0, $call = 0, $cmp = 0, $cmp14 = 0, $cmp20 = 0, $cmp37 = 0, $cmp43 = 0, $condCoding$addr = 0, $conv = 0, $conv25 = 0, $conv28 = 0; var $conv29 = 0, $conv38 = 0, $conv46 = 0.0, $inc = 0, $indices = 0, $indices_LBRR = 0, $k = 0, $mul = 0, $mul47 = 0.0, $mul60 = 0, $nFramesEncoded = 0, $nFramesEncoded13 = 0, $nFramesEncoded18 = 0, $nFramesEncoded52 = 0, $nFramesEncoded6 = 0, $nb_subfr = 0, $nb_subfr40 = 0, $nb_subfr42 = 0, $nb_subfr59 = 0, $psEnc$addr = 0; var $psEncCtrl$addr = 0, $psIndices_LBRR = 0, $pulses_LBRR = 0, $sNSQ = 0, $sNSQ_LBRR = 0, $sShape = 0, $speech_activity_Q8 = 0, $sub = 0, $tobool = 0, $xfw$addr = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; sp = STACKTOP; STACKTOP = STACKTOP + 4416|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(4416|0); $Gains_Q16 = sp + 4376|0; $TempGains = sp + 4360|0; $sNSQ_LBRR = sp; $psEnc$addr = $psEnc; $psEncCtrl$addr = $psEncCtrl; $xfw$addr = $xfw; $condCoding$addr = $condCoding; $0 = $psEnc$addr; $indices_LBRR = ((($0)) + 6096|0); $1 = $psEnc$addr; $nFramesEncoded = ((($1)) + 5744|0); $2 = HEAP32[$nFramesEncoded>>2]|0; $arrayidx = (($indices_LBRR) + (($2*36)|0)|0); $psIndices_LBRR = $arrayidx; $3 = $psEnc$addr; $LBRR_enabled = ((($3)) + 6088|0); $4 = HEAP32[$LBRR_enabled>>2]|0; $tobool = ($4|0)!=(0); if (!($tobool)) { STACKTOP = sp;return; } $5 = $psEnc$addr; $speech_activity_Q8 = ((($5)) + 4528|0); $6 = HEAP32[$speech_activity_Q8>>2]|0; $cmp = ($6|0)>(77); if (!($cmp)) { STACKTOP = sp;return; } $7 = $psEnc$addr; $LBRR_flags = ((($7)) + 4720|0); $8 = $psEnc$addr; $nFramesEncoded6 = ((($8)) + 5744|0); $9 = HEAP32[$nFramesEncoded6>>2]|0; $arrayidx7 = (($LBRR_flags) + ($9<<2)|0); HEAP32[$arrayidx7>>2] = 1; $10 = $psEnc$addr; $sNSQ = ((($10)) + 144|0); _memcpy(($sNSQ_LBRR|0),($sNSQ|0),4352)|0; $11 = $psIndices_LBRR; $12 = $psEnc$addr; $indices = ((($12)) + 4732|0); dest=$11; src=$indices; stop=dest+36|0; do { HEAP16[dest>>1]=HEAP16[src>>1]|0; dest=dest+2|0; src=src+2|0; } while ((dest|0) < (stop|0)); $13 = $psEncCtrl$addr; $14 = $psEnc$addr; $nb_subfr = ((($14)) + 4576|0); $15 = HEAP32[$nb_subfr>>2]|0; $mul = $15<<2; _memcpy(($TempGains|0),($13|0),($mul|0))|0; $16 = $psEnc$addr; $nFramesEncoded13 = ((($16)) + 5744|0); $17 = HEAP32[$nFramesEncoded13>>2]|0; $cmp14 = ($17|0)==(0); if ($cmp14) { label = 5; } else { $18 = $psEnc$addr; $LBRR_flags16 = ((($18)) + 4720|0); $19 = $psEnc$addr; $nFramesEncoded18 = ((($19)) + 5744|0); $20 = HEAP32[$nFramesEncoded18>>2]|0; $sub = (($20) - 1)|0; $arrayidx19 = (($LBRR_flags16) + ($sub<<2)|0); $21 = HEAP32[$arrayidx19>>2]|0; $cmp20 = ($21|0)==(0); if ($cmp20) { label = 5; } } if ((label|0) == 5) { $22 = $psEnc$addr; $sShape = ((($22)) + 7164|0); $23 = HEAP8[$sShape>>0]|0; $24 = $psEnc$addr; $LBRRprevLastGainIndex = ((($24)) + 4536|0); HEAP8[$LBRRprevLastGainIndex>>0] = $23; $25 = $psEnc$addr; $LBRR_GainIncreases = ((($25)) + 6092|0); $26 = HEAP32[$LBRR_GainIncreases>>2]|0; $27 = $psIndices_LBRR; $28 = HEAP8[$27>>0]|0; $conv = $28 << 24 >> 24; $add = (($conv) + ($26))|0; $conv25 = $add&255; HEAP8[$27>>0] = $conv25; $29 = $psIndices_LBRR; $30 = HEAP8[$29>>0]|0; $conv28 = $30 << 24 >> 24; $call = (_silk_min_int_287($conv28,63)|0); $conv29 = $call&255; $31 = $psIndices_LBRR; HEAP8[$31>>0] = $conv29; } $32 = $psIndices_LBRR; $33 = $psEnc$addr; $LBRRprevLastGainIndex36 = ((($33)) + 4536|0); $34 = $condCoding$addr; $cmp37 = ($34|0)==(2); $conv38 = $cmp37&1; $35 = $psEnc$addr; $nb_subfr40 = ((($35)) + 4576|0); $36 = HEAP32[$nb_subfr40>>2]|0; _silk_gains_dequant($Gains_Q16,$32,$LBRRprevLastGainIndex36,$conv38,$36); $k = 0; while(1) { $37 = $k; $38 = $psEnc$addr; $nb_subfr42 = ((($38)) + 4576|0); $39 = HEAP32[$nb_subfr42>>2]|0; $cmp43 = ($37|0)<($39|0); if (!($cmp43)) { break; } $40 = $k; $arrayidx45 = (($Gains_Q16) + ($40<<2)|0); $41 = HEAP32[$arrayidx45>>2]|0; $conv46 = (+($41|0)); $mul47 = $conv46 * 1.52587890625E-5; $42 = $psEncCtrl$addr; $43 = $k; $arrayidx49 = (($42) + ($43<<2)|0); HEAPF32[$arrayidx49>>2] = $mul47; $44 = $k; $inc = (($44) + 1)|0; $k = $inc; } $45 = $psEnc$addr; $46 = $psEncCtrl$addr; $47 = $psIndices_LBRR; $48 = $psEnc$addr; $pulses_LBRR = ((($48)) + 6204|0); $49 = $psEnc$addr; $nFramesEncoded52 = ((($49)) + 5744|0); $50 = HEAP32[$nFramesEncoded52>>2]|0; $arrayidx53 = (($pulses_LBRR) + (($50*320)|0)|0); $51 = $xfw$addr; _silk_NSQ_wrapper_FLP($45,$46,$47,$sNSQ_LBRR,$arrayidx53,$51); $52 = $psEncCtrl$addr; $53 = $psEnc$addr; $nb_subfr59 = ((($53)) + 4576|0); $54 = HEAP32[$nb_subfr59>>2]|0; $mul60 = $54<<2; _memcpy(($52|0),($TempGains|0),($mul60|0))|0; STACKTOP = sp;return; } function _ec_tell_286($_this) { $_this = $_this|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $_this$addr = 0, $nbits_total = 0, $rng = 0, $sub = 0, $sub1 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $_this$addr = $_this; $0 = $_this$addr; $nbits_total = ((($0)) + 20|0); $1 = HEAP32[$nbits_total>>2]|0; $2 = $_this$addr; $rng = ((($2)) + 28|0); $3 = HEAP32[$rng>>2]|0; $4 = (Math_clz32(($3|0))|0); $sub = (32 - ($4))|0; $sub1 = (($1) - ($sub))|0; STACKTOP = sp;return ($sub1|0); } function _silk_min_int_287($a,$b) { $a = $a|0; $b = $b|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $a$addr = 0, $b$addr = 0, $cmp = 0, $cond = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $a$addr = $a; $b$addr = $b; $0 = $a$addr; $1 = $b$addr; $cmp = ($0|0)<($1|0); $2 = $a$addr; $3 = $b$addr; $cond = $cmp ? $2 : $3; STACKTOP = sp;return ($cond|0); } function _silk_find_pitch_lags_FLP($psEnc,$psEncCtrl,$res,$x,$arch) { $psEnc = $psEnc|0; $psEncCtrl = $psEncCtrl|0; $res = $res|0; $x = $x|0; $arch = $arch|0; var $$sink = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0; var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0; var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0.0, $48 = 0.0, $49 = 0, $5 = 0, $50 = 0, $51 = 0.0, $52 = 0.0, $53 = 0.0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0.0, $71 = 0, $72 = 0, $73 = 0.0, $74 = 0, $75 = 0, $76 = 0.0, $77 = 0, $78 = 0; var $79 = 0.0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0.0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0; var $97 = 0, $98 = 0, $99 = 0, $A = 0, $LTPCorr = 0, $LTPCorr120 = 0, $Wsig = 0, $Wsig_ptr = 0, $add = 0, $add$ptr = 0, $add$ptr14 = 0, $add$ptr17 = 0, $add$ptr28 = 0, $add$ptr35 = 0, $add$ptr6 = 0, $add$ptr9 = 0, $add3 = 0, $add43 = 0, $add45 = 0.0, $add47 = 0.0; var $arch$addr = 0, $auto_corr = 0, $buf_len = 0, $call = 0.0, $call101 = 0, $cmp = 0, $cmp102 = 0, $cmp64 = 0, $cmp67 = 0, $cond = 0.0, $contourIndex = 0, $contourIndex119 = 0, $conv = 0, $conv71 = 0.0, $conv75 = 0.0, $conv80 = 0, $conv81 = 0.0, $conv85 = 0.0, $conv96 = 0.0, $div = 0.0; var $div97 = 0.0, $first_frame_after_reset = 0, $frame_length = 0, $fs_kHz = 0, $idx$neg = 0, $idx$neg8 = 0, $indices = 0, $indices106 = 0, $indices115 = 0, $indices118 = 0, $indices91 = 0, $indices93 = 0, $input_tilt_Q15 = 0, $la_pitch = 0, $la_pitch11 = 0, $la_pitch13 = 0, $la_pitch16 = 0, $la_pitch21 = 0, $la_pitch25 = 0, $la_pitch32 = 0; var $la_pitch37 = 0, $lagIndex = 0, $lagIndex116 = 0, $ltp_mem_length = 0, $ltp_mem_length5 = 0, $mul = 0, $mul44 = 0.0, $mul72 = 0.0, $mul76 = 0.0, $mul77 = 0.0, $mul82 = 0.0, $mul86 = 0.0, $mul87 = 0.0, $nb_subfr = 0, $pitchEstimationComplexity = 0, $pitchEstimationLPCOrder = 0, $pitchEstimationLPCOrder51 = 0, $pitchEstimationLPCOrder56 = 0, $pitchEstimationLPCOrder59 = 0, $pitchEstimationLPCOrder62 = 0; var $pitchEstimationLPCOrder70 = 0, $pitchEstimationThreshold_Q16 = 0, $pitchL = 0, $pitchL112 = 0, $pitch_LPC_win_length = 0, $pitch_LPC_win_length19 = 0, $pitch_LPC_win_length23 = 0, $pitch_LPC_win_length30 = 0, $pitch_LPC_win_length41 = 0, $predGain = 0, $prevLag = 0, $prevSignalType = 0, $psEnc$addr = 0, $psEncCtrl$addr = 0, $refl_coef = 0, $res$addr = 0, $res_nrg = 0.0, $shl = 0, $shl26 = 0, $shl33 = 0; var $shr = 0, $signalType = 0, $signalType107 = 0, $speech_activity_Q8 = 0, $sub = 0, $sub27 = 0, $sub34 = 0, $sub73 = 0.0, $sub78 = 0.0, $sub83 = 0.0, $sub88 = 0.0, $thrhld = 0.0, $x$addr = 0, $x_buf = 0, $x_buf_ptr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 1792|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(1792|0); $auto_corr = sp + 1672|0; $A = sp + 1608|0; $refl_coef = sp + 1544|0; $Wsig = sp + 8|0; $psEnc$addr = $psEnc; $psEncCtrl$addr = $psEncCtrl; $res$addr = $res; $x$addr = $x; $arch$addr = $arch; $0 = $psEnc$addr; $la_pitch = ((($0)) + 4592|0); $1 = HEAP32[$la_pitch>>2]|0; $2 = $psEnc$addr; $frame_length = ((($2)) + 4580|0); $3 = HEAP32[$frame_length>>2]|0; $add = (($1) + ($3))|0; $4 = $psEnc$addr; $ltp_mem_length = ((($4)) + 4588|0); $5 = HEAP32[$ltp_mem_length>>2]|0; $add3 = (($add) + ($5))|0; $buf_len = $add3; $6 = $x$addr; $7 = $psEnc$addr; $ltp_mem_length5 = ((($7)) + 4588|0); $8 = HEAP32[$ltp_mem_length5>>2]|0; $idx$neg = (0 - ($8))|0; $add$ptr = (($6) + ($idx$neg<<2)|0); $x_buf = $add$ptr; $9 = $x_buf; $10 = $buf_len; $add$ptr6 = (($9) + ($10<<2)|0); $11 = $psEnc$addr; $pitch_LPC_win_length = ((($11)) + 4544|0); $12 = HEAP32[$pitch_LPC_win_length>>2]|0; $idx$neg8 = (0 - ($12))|0; $add$ptr9 = (($add$ptr6) + ($idx$neg8<<2)|0); $x_buf_ptr = $add$ptr9; $Wsig_ptr = $Wsig; $13 = $Wsig_ptr; $14 = $x_buf_ptr; $15 = $psEnc$addr; $la_pitch11 = ((($15)) + 4592|0); $16 = HEAP32[$la_pitch11>>2]|0; _silk_apply_sine_window_FLP($13,$14,1,$16); $17 = $psEnc$addr; $la_pitch13 = ((($17)) + 4592|0); $18 = HEAP32[$la_pitch13>>2]|0; $19 = $Wsig_ptr; $add$ptr14 = (($19) + ($18<<2)|0); $Wsig_ptr = $add$ptr14; $20 = $psEnc$addr; $la_pitch16 = ((($20)) + 4592|0); $21 = HEAP32[$la_pitch16>>2]|0; $22 = $x_buf_ptr; $add$ptr17 = (($22) + ($21<<2)|0); $x_buf_ptr = $add$ptr17; $23 = $Wsig_ptr; $24 = $x_buf_ptr; $25 = $psEnc$addr; $pitch_LPC_win_length19 = ((($25)) + 4544|0); $26 = HEAP32[$pitch_LPC_win_length19>>2]|0; $27 = $psEnc$addr; $la_pitch21 = ((($27)) + 4592|0); $28 = HEAP32[$la_pitch21>>2]|0; $shl = $28 << 1; $sub = (($26) - ($shl))|0; $mul = $sub<<2; _memcpy(($23|0),($24|0),($mul|0))|0; $29 = $psEnc$addr; $pitch_LPC_win_length23 = ((($29)) + 4544|0); $30 = HEAP32[$pitch_LPC_win_length23>>2]|0; $31 = $psEnc$addr; $la_pitch25 = ((($31)) + 4592|0); $32 = HEAP32[$la_pitch25>>2]|0; $shl26 = $32 << 1; $sub27 = (($30) - ($shl26))|0; $33 = $Wsig_ptr; $add$ptr28 = (($33) + ($sub27<<2)|0); $Wsig_ptr = $add$ptr28; $34 = $psEnc$addr; $pitch_LPC_win_length30 = ((($34)) + 4544|0); $35 = HEAP32[$pitch_LPC_win_length30>>2]|0; $36 = $psEnc$addr; $la_pitch32 = ((($36)) + 4592|0); $37 = HEAP32[$la_pitch32>>2]|0; $shl33 = $37 << 1; $sub34 = (($35) - ($shl33))|0; $38 = $x_buf_ptr; $add$ptr35 = (($38) + ($sub34<<2)|0); $x_buf_ptr = $add$ptr35; $39 = $Wsig_ptr; $40 = $x_buf_ptr; $41 = $psEnc$addr; $la_pitch37 = ((($41)) + 4592|0); $42 = HEAP32[$la_pitch37>>2]|0; _silk_apply_sine_window_FLP($39,$40,2,$42); $43 = $psEnc$addr; $pitch_LPC_win_length41 = ((($43)) + 4544|0); $44 = HEAP32[$pitch_LPC_win_length41>>2]|0; $45 = $psEnc$addr; $pitchEstimationLPCOrder = ((($45)) + 4644|0); $46 = HEAP32[$pitchEstimationLPCOrder>>2]|0; $add43 = (($46) + 1)|0; _silk_autocorrelation_FLP($auto_corr,$Wsig,$44,$add43); $47 = +HEAPF32[$auto_corr>>2]; $mul44 = $47 * 0.0010000000474974513; $add45 = $mul44 + 1.0; $48 = +HEAPF32[$auto_corr>>2]; $add47 = $48 + $add45; HEAPF32[$auto_corr>>2] = $add47; $49 = $psEnc$addr; $pitchEstimationLPCOrder51 = ((($49)) + 4644|0); $50 = HEAP32[$pitchEstimationLPCOrder51>>2]|0; $call = (+_silk_schur_FLP($refl_coef,$auto_corr,$50)); $res_nrg = $call; $51 = +HEAPF32[$auto_corr>>2]; $52 = $res_nrg; $cmp = $52 > 1.0; $53 = $res_nrg; $cond = $cmp ? $53 : 1.0; $div = $51 / $cond; $54 = $psEncCtrl$addr; $predGain = ((($54)) + 704|0); HEAPF32[$predGain>>2] = $div; $55 = $psEnc$addr; $pitchEstimationLPCOrder56 = ((($55)) + 4644|0); $56 = HEAP32[$pitchEstimationLPCOrder56>>2]|0; _silk_k2a_FLP($A,$refl_coef,$56); $57 = $psEnc$addr; $pitchEstimationLPCOrder59 = ((($57)) + 4644|0); $58 = HEAP32[$pitchEstimationLPCOrder59>>2]|0; _silk_bwexpander_FLP($A,$58,0.99000000953674316); $59 = $res$addr; $60 = $x_buf; $61 = $buf_len; $62 = $psEnc$addr; $pitchEstimationLPCOrder62 = ((($62)) + 4644|0); $63 = HEAP32[$pitchEstimationLPCOrder62>>2]|0; _silk_LPC_analysis_filter_FLP($59,$A,$60,$61,$63); $64 = $psEnc$addr; $indices = ((($64)) + 4732|0); $signalType = ((($indices)) + 29|0); $65 = HEAP8[$signalType>>0]|0; $conv = $65 << 24 >> 24; $cmp64 = ($conv|0)!=(0); if ($cmp64) { $66 = $psEnc$addr; $first_frame_after_reset = ((($66)) + 4660|0); $67 = HEAP32[$first_frame_after_reset>>2]|0; $cmp67 = ($67|0)==(0); if ($cmp67) { $thrhld = 0.60000002384185791; $68 = $psEnc$addr; $pitchEstimationLPCOrder70 = ((($68)) + 4644|0); $69 = HEAP32[$pitchEstimationLPCOrder70>>2]|0; $conv71 = (+($69|0)); $mul72 = 0.0040000001899898052 * $conv71; $70 = $thrhld; $sub73 = $70 - $mul72; $thrhld = $sub73; $71 = $psEnc$addr; $speech_activity_Q8 = ((($71)) + 4528|0); $72 = HEAP32[$speech_activity_Q8>>2]|0; $conv75 = (+($72|0)); $mul76 = 0.10000000149011612 * $conv75; $mul77 = $mul76 * 0.00390625; $73 = $thrhld; $sub78 = $73 - $mul77; $thrhld = $sub78; $74 = $psEnc$addr; $prevSignalType = ((($74)) + 4537|0); $75 = HEAP8[$prevSignalType>>0]|0; $conv80 = $75 << 24 >> 24; $shr = $conv80 >> 1; $conv81 = (+($shr|0)); $mul82 = 0.15000000596046448 * $conv81; $76 = $thrhld; $sub83 = $76 - $mul82; $thrhld = $sub83; $77 = $psEnc$addr; $input_tilt_Q15 = ((($77)) + 4708|0); $78 = HEAP32[$input_tilt_Q15>>2]|0; $conv85 = (+($78|0)); $mul86 = 0.10000000149011612 * $conv85; $mul87 = $mul86 * 3.0517578125E-5; $79 = $thrhld; $sub88 = $79 - $mul87; $thrhld = $sub88; $80 = $res$addr; $81 = $psEncCtrl$addr; $pitchL = ((($81)) + 228|0); $82 = $psEnc$addr; $indices91 = ((($82)) + 4732|0); $lagIndex = ((($indices91)) + 26|0); $83 = $psEnc$addr; $indices93 = ((($83)) + 4732|0); $contourIndex = ((($indices93)) + 28|0); $84 = $psEnc$addr; $LTPCorr = ((($84)) + 10056|0); $85 = $psEnc$addr; $prevLag = ((($85)) + 4540|0); $86 = HEAP32[$prevLag>>2]|0; $87 = $psEnc$addr; $pitchEstimationThreshold_Q16 = ((($87)) + 4648|0); $88 = HEAP32[$pitchEstimationThreshold_Q16>>2]|0; $conv96 = (+($88|0)); $div97 = $conv96 / 65536.0; $89 = $thrhld; $90 = $psEnc$addr; $fs_kHz = ((($90)) + 4572|0); $91 = HEAP32[$fs_kHz>>2]|0; $92 = $psEnc$addr; $pitchEstimationComplexity = ((($92)) + 4640|0); $93 = HEAP32[$pitchEstimationComplexity>>2]|0; $94 = $psEnc$addr; $nb_subfr = ((($94)) + 4576|0); $95 = HEAP32[$nb_subfr>>2]|0; $96 = $arch$addr; $call101 = (_silk_pitch_analysis_core_FLP($80,$pitchL,$lagIndex,$contourIndex,$LTPCorr,$86,$div97,$89,$91,$93,$95,$96)|0); $cmp102 = ($call101|0)==(0); $97 = $psEnc$addr; $indices106 = ((($97)) + 4732|0); $signalType107 = ((($indices106)) + 29|0); $$sink = $cmp102 ? 2 : 1; HEAP8[$signalType107>>0] = $$sink; STACKTOP = sp;return; } } $98 = $psEncCtrl$addr; $pitchL112 = ((($98)) + 228|0); ;HEAP32[$pitchL112>>2]=0|0;HEAP32[$pitchL112+4>>2]=0|0;HEAP32[$pitchL112+8>>2]=0|0;HEAP32[$pitchL112+12>>2]=0|0; $99 = $psEnc$addr; $indices115 = ((($99)) + 4732|0); $lagIndex116 = ((($indices115)) + 26|0); HEAP16[$lagIndex116>>1] = 0; $100 = $psEnc$addr; $indices118 = ((($100)) + 4732|0); $contourIndex119 = ((($indices118)) + 28|0); HEAP8[$contourIndex119>>0] = 0; $101 = $psEnc$addr; $LTPCorr120 = ((($101)) + 10056|0); HEAPF32[$LTPCorr120>>2] = 0.0; STACKTOP = sp;return; } function _silk_find_pred_coefs_FLP($psEnc,$psEncCtrl,$res_pitch,$x,$condCoding) { $psEnc = $psEnc|0; $psEncCtrl = $psEncCtrl|0; $res_pitch = $res_pitch|0; $x = $x|0; $condCoding = $condCoding|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0.0, $50 = 0.0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0.0, $73 = 0.0, $74 = 0, $75 = 0.0, $76 = 0.0, $77 = 0, $78 = 0.0, $79 = 0, $8 = 0, $80 = 0; var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $LPC_in_pre = 0, $LTPCoef = 0, $LTPCoef26 = 0, $LTPCoef65 = 0, $LTPIndex = 0, $LTPredCodGain = 0, $LTPredCodGain70 = 0, $LTPredCodGain76 = 0; var $NLSF_Q15 = 0, $PERIndex = 0, $PredCoef = 0, $PredCoef95 = 0, $ResNrg = 0, $XXLTP = 0, $add = 0, $add$ptr = 0, $add$ptr40 = 0, $add$ptr58 = 0, $add$ptr61 = 0, $add57 = 0, $add82 = 0.0, $arch = 0, $arrayidx = 0, $arrayidx1 = 0, $arrayidx48 = 0, $cmp = 0, $cmp3 = 0, $cmp45 = 0; var $coding_quality = 0, $condCoding$addr = 0, $conv = 0, $conv78 = 0.0, $conv79 = 0.0, $div = 0.0, $div77 = 0.0, $div80 = 0.0, $div83 = 0.0, $first_frame_after_reset = 0, $i = 0, $idx$neg = 0, $idx$neg39 = 0, $inc = 0, $inc63 = 0, $indices = 0, $indices12 = 0, $indices15 = 0, $invGains = 0, $minInvGain = 0.0; var $mul = 0, $mul69 = 0, $mul81 = 0.0, $nb_subfr = 0, $nb_subfr102 = 0, $nb_subfr22 = 0, $nb_subfr34 = 0, $nb_subfr44 = 0, $nb_subfr68 = 0, $nb_subfr9 = 0, $pitchL = 0, $pitchL28 = 0, $predictLPCOrder = 0, $predictLPCOrder104 = 0, $predictLPCOrder36 = 0, $predictLPCOrder38 = 0, $predictLPCOrder52 = 0, $predictLPCOrder56 = 0, $prev_NLSFq_Q15 = 0, $prev_NLSFq_Q15106 = 0; var $psEnc$addr = 0, $psEncCtrl$addr = 0, $res_pitch$addr = 0, $signalType = 0, $subfr_length = 0, $subfr_length100 = 0, $subfr_length20 = 0, $subfr_length32 = 0, $subfr_length50 = 0, $subfr_length54 = 0, $subfr_length60 = 0, $sum_log_gain_Q7 = 0, $sum_log_gain_Q772 = 0, $tobool = 0, $x$addr = 0, $xXLTP = 0, $x_pre_ptr = 0, $x_ptr = 0, dest = 0, label = 0; var sp = 0, src = 0, stop = 0; sp = STACKTOP; STACKTOP = STACKTOP + 2112|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(2112|0); $XXLTP = sp + 1648|0; $xXLTP = sp + 1568|0; $invGains = sp + 1552|0; $NLSF_Q15 = sp + 2072|0; $LPC_in_pre = sp + 8|0; $psEnc$addr = $psEnc; $psEncCtrl$addr = $psEncCtrl; $res_pitch$addr = $res_pitch; $x$addr = $x; $condCoding$addr = $condCoding; $i = 0; while(1) { $0 = $i; $1 = $psEnc$addr; $nb_subfr = ((($1)) + 4576|0); $2 = HEAP32[$nb_subfr>>2]|0; $cmp = ($0|0)<($2|0); if (!($cmp)) { break; } $3 = $psEncCtrl$addr; $4 = $i; $arrayidx = (($3) + ($4<<2)|0); $5 = +HEAPF32[$arrayidx>>2]; $div = 1.0 / $5; $6 = $i; $arrayidx1 = (($invGains) + ($6<<2)|0); HEAPF32[$arrayidx1>>2] = $div; $7 = $i; $inc = (($7) + 1)|0; $i = $inc; } $8 = $psEnc$addr; $indices = ((($8)) + 4732|0); $signalType = ((($indices)) + 29|0); $9 = HEAP8[$signalType>>0]|0; $conv = $9 << 24 >> 24; $cmp3 = ($conv|0)==(2); if ($cmp3) { $10 = $res_pitch$addr; $11 = $psEncCtrl$addr; $pitchL = ((($11)) + 228|0); $12 = $psEnc$addr; $subfr_length = ((($12)) + 4584|0); $13 = HEAP32[$subfr_length>>2]|0; $14 = $psEnc$addr; $nb_subfr9 = ((($14)) + 4576|0); $15 = HEAP32[$nb_subfr9>>2]|0; _silk_find_LTP_FLP($XXLTP,$xXLTP,$10,$pitchL,$13,$15); $16 = $psEncCtrl$addr; $LTPCoef = ((($16)) + 144|0); $17 = $psEnc$addr; $indices12 = ((($17)) + 4732|0); $LTPIndex = ((($indices12)) + 4|0); $18 = $psEnc$addr; $indices15 = ((($18)) + 4732|0); $PERIndex = ((($indices15)) + 32|0); $19 = $psEnc$addr; $sum_log_gain_Q7 = ((($19)) + 4652|0); $20 = $psEncCtrl$addr; $LTPredCodGain = ((($20)) + 708|0); $21 = $psEnc$addr; $subfr_length20 = ((($21)) + 4584|0); $22 = HEAP32[$subfr_length20>>2]|0; $23 = $psEnc$addr; $nb_subfr22 = ((($23)) + 4576|0); $24 = HEAP32[$nb_subfr22>>2]|0; $25 = $psEnc$addr; $arch = ((($25)) + 5088|0); $26 = HEAP32[$arch>>2]|0; _silk_quant_LTP_gains_FLP($LTPCoef,$LTPIndex,$PERIndex,$sum_log_gain_Q7,$LTPredCodGain,$XXLTP,$xXLTP,$22,$24,$26); $27 = $psEnc$addr; $28 = $psEncCtrl$addr; $29 = $condCoding$addr; _silk_LTP_scale_ctrl_FLP($27,$28,$29); $30 = $x$addr; $31 = $psEnc$addr; $predictLPCOrder = ((($31)) + 4636|0); $32 = HEAP32[$predictLPCOrder>>2]|0; $idx$neg = (0 - ($32))|0; $add$ptr = (($30) + ($idx$neg<<2)|0); $33 = $psEncCtrl$addr; $LTPCoef26 = ((($33)) + 144|0); $34 = $psEncCtrl$addr; $pitchL28 = ((($34)) + 228|0); $35 = $psEnc$addr; $subfr_length32 = ((($35)) + 4584|0); $36 = HEAP32[$subfr_length32>>2]|0; $37 = $psEnc$addr; $nb_subfr34 = ((($37)) + 4576|0); $38 = HEAP32[$nb_subfr34>>2]|0; $39 = $psEnc$addr; $predictLPCOrder36 = ((($39)) + 4636|0); $40 = HEAP32[$predictLPCOrder36>>2]|0; _silk_LTP_analysis_filter_FLP($LPC_in_pre,$add$ptr,$LTPCoef26,$pitchL28,$invGains,$36,$38,$40); } else { $41 = $x$addr; $42 = $psEnc$addr; $predictLPCOrder38 = ((($42)) + 4636|0); $43 = HEAP32[$predictLPCOrder38>>2]|0; $idx$neg39 = (0 - ($43))|0; $add$ptr40 = (($41) + ($idx$neg39<<2)|0); $x_ptr = $add$ptr40; $x_pre_ptr = $LPC_in_pre; $i = 0; while(1) { $44 = $i; $45 = $psEnc$addr; $nb_subfr44 = ((($45)) + 4576|0); $46 = HEAP32[$nb_subfr44>>2]|0; $cmp45 = ($44|0)<($46|0); if (!($cmp45)) { break; } $47 = $x_pre_ptr; $48 = $x_ptr; $49 = $i; $arrayidx48 = (($invGains) + ($49<<2)|0); $50 = +HEAPF32[$arrayidx48>>2]; $51 = $psEnc$addr; $subfr_length50 = ((($51)) + 4584|0); $52 = HEAP32[$subfr_length50>>2]|0; $53 = $psEnc$addr; $predictLPCOrder52 = ((($53)) + 4636|0); $54 = HEAP32[$predictLPCOrder52>>2]|0; $add = (($52) + ($54))|0; _silk_scale_copy_vector_FLP($47,$48,$50,$add); $55 = $psEnc$addr; $subfr_length54 = ((($55)) + 4584|0); $56 = HEAP32[$subfr_length54>>2]|0; $57 = $psEnc$addr; $predictLPCOrder56 = ((($57)) + 4636|0); $58 = HEAP32[$predictLPCOrder56>>2]|0; $add57 = (($56) + ($58))|0; $59 = $x_pre_ptr; $add$ptr58 = (($59) + ($add57<<2)|0); $x_pre_ptr = $add$ptr58; $60 = $psEnc$addr; $subfr_length60 = ((($60)) + 4584|0); $61 = HEAP32[$subfr_length60>>2]|0; $62 = $x_ptr; $add$ptr61 = (($62) + ($61<<2)|0); $x_ptr = $add$ptr61; $63 = $i; $inc63 = (($63) + 1)|0; $i = $inc63; } $64 = $psEncCtrl$addr; $LTPCoef65 = ((($64)) + 144|0); $65 = $psEnc$addr; $nb_subfr68 = ((($65)) + 4576|0); $66 = HEAP32[$nb_subfr68>>2]|0; $mul = ($66*5)|0; $mul69 = $mul<<2; _memset(($LTPCoef65|0),0,($mul69|0))|0; $67 = $psEncCtrl$addr; $LTPredCodGain70 = ((($67)) + 708|0); HEAPF32[$LTPredCodGain70>>2] = 0.0; $68 = $psEnc$addr; $sum_log_gain_Q772 = ((($68)) + 4652|0); HEAP32[$sum_log_gain_Q772>>2] = 0; } $69 = $psEnc$addr; $first_frame_after_reset = ((($69)) + 4660|0); $70 = HEAP32[$first_frame_after_reset>>2]|0; $tobool = ($70|0)!=(0); if ($tobool) { $minInvGain = 0.0099999997764825821; $77 = $psEnc$addr; $78 = $minInvGain; _silk_find_LPC_FLP($77,$NLSF_Q15,$LPC_in_pre,$78); $79 = $psEnc$addr; $80 = $psEncCtrl$addr; $PredCoef = ((($80)) + 16|0); $81 = $psEnc$addr; $prev_NLSFq_Q15 = ((($81)) + 4496|0); _silk_process_NLSFs_FLP($79,$PredCoef,$NLSF_Q15,$prev_NLSFq_Q15); $82 = $psEncCtrl$addr; $ResNrg = ((($82)) + 712|0); $83 = $psEncCtrl$addr; $PredCoef95 = ((($83)) + 16|0); $84 = $psEncCtrl$addr; $85 = $psEnc$addr; $subfr_length100 = ((($85)) + 4584|0); $86 = HEAP32[$subfr_length100>>2]|0; $87 = $psEnc$addr; $nb_subfr102 = ((($87)) + 4576|0); $88 = HEAP32[$nb_subfr102>>2]|0; $89 = $psEnc$addr; $predictLPCOrder104 = ((($89)) + 4636|0); $90 = HEAP32[$predictLPCOrder104>>2]|0; _silk_residual_energy_FLP($ResNrg,$LPC_in_pre,$PredCoef95,$84,$86,$88,$90); $91 = $psEnc$addr; $prev_NLSFq_Q15106 = ((($91)) + 4496|0); dest=$prev_NLSFq_Q15106; src=$NLSF_Q15; stop=dest+32|0; do { HEAP16[dest>>1]=HEAP16[src>>1]|0; dest=dest+2|0; src=src+2|0; } while ((dest|0) < (stop|0)); STACKTOP = sp;return; } else { $71 = $psEncCtrl$addr; $LTPredCodGain76 = ((($71)) + 708|0); $72 = +HEAPF32[$LTPredCodGain76>>2]; $div77 = $72 / 3.0; $conv78 = $div77; $73 = (+Math_pow(2.0,(+$conv78))); $conv79 = $73; $div80 = $conv79 / 1.0E+4; $minInvGain = $div80; $74 = $psEncCtrl$addr; $coding_quality = ((($74)) + 700|0); $75 = +HEAPF32[$coding_quality>>2]; $mul81 = 0.75 * $75; $add82 = 0.25 + $mul81; $76 = $minInvGain; $div83 = $76 / $add82; $minInvGain = $div83; $77 = $psEnc$addr; $78 = $minInvGain; _silk_find_LPC_FLP($77,$NLSF_Q15,$LPC_in_pre,$78); $79 = $psEnc$addr; $80 = $psEncCtrl$addr; $PredCoef = ((($80)) + 16|0); $81 = $psEnc$addr; $prev_NLSFq_Q15 = ((($81)) + 4496|0); _silk_process_NLSFs_FLP($79,$PredCoef,$NLSF_Q15,$prev_NLSFq_Q15); $82 = $psEncCtrl$addr; $ResNrg = ((($82)) + 712|0); $83 = $psEncCtrl$addr; $PredCoef95 = ((($83)) + 16|0); $84 = $psEncCtrl$addr; $85 = $psEnc$addr; $subfr_length100 = ((($85)) + 4584|0); $86 = HEAP32[$subfr_length100>>2]|0; $87 = $psEnc$addr; $nb_subfr102 = ((($87)) + 4576|0); $88 = HEAP32[$nb_subfr102>>2]|0; $89 = $psEnc$addr; $predictLPCOrder104 = ((($89)) + 4636|0); $90 = HEAP32[$predictLPCOrder104>>2]|0; _silk_residual_energy_FLP($ResNrg,$LPC_in_pre,$PredCoef95,$84,$86,$88,$90); $91 = $psEnc$addr; $prev_NLSFq_Q15106 = ((($91)) + 4496|0); dest=$prev_NLSFq_Q15106; src=$NLSF_Q15; stop=dest+32|0; do { HEAP16[dest>>1]=HEAP16[src>>1]|0; dest=dest+2|0; src=src+2|0; } while ((dest|0) < (stop|0)); STACKTOP = sp;return; } } function _silk_LPC_analysis_filter_FLP($r_LPC,$PredCoef,$s,$length,$Order) { $r_LPC = $r_LPC|0; $PredCoef = $PredCoef|0; $s = $s|0; $length = $length|0; $Order = $Order|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; var $7 = 0, $8 = 0, $9 = 0, $Order$addr = 0, $PredCoef$addr = 0, $length$addr = 0, $mul = 0, $r_LPC$addr = 0, $s$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $r_LPC$addr = $r_LPC; $PredCoef$addr = $PredCoef; $s$addr = $s; $length$addr = $length; $Order$addr = $Order; $0 = $Order$addr; switch ($0|0) { case 6: { $1 = $r_LPC$addr; $2 = $PredCoef$addr; $3 = $s$addr; $4 = $length$addr; _silk_LPC_analysis_filter6_FLP($1,$2,$3,$4); break; } case 8: { $5 = $r_LPC$addr; $6 = $PredCoef$addr; $7 = $s$addr; $8 = $length$addr; _silk_LPC_analysis_filter8_FLP($5,$6,$7,$8); break; } case 10: { $9 = $r_LPC$addr; $10 = $PredCoef$addr; $11 = $s$addr; $12 = $length$addr; _silk_LPC_analysis_filter10_FLP($9,$10,$11,$12); break; } case 12: { $13 = $r_LPC$addr; $14 = $PredCoef$addr; $15 = $s$addr; $16 = $length$addr; _silk_LPC_analysis_filter12_FLP($13,$14,$15,$16); break; } case 16: { $17 = $r_LPC$addr; $18 = $PredCoef$addr; $19 = $s$addr; $20 = $length$addr; _silk_LPC_analysis_filter16_FLP($17,$18,$19,$20); break; } default: { } } $21 = $r_LPC$addr; $22 = $Order$addr; $mul = $22<<2; _memset(($21|0),0,($mul|0))|0; STACKTOP = sp;return; } function _silk_LPC_analysis_filter6_FLP($r_LPC,$PredCoef,$s,$length) { $r_LPC = $r_LPC|0; $PredCoef = $PredCoef|0; $s = $s|0; $length = $length|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0.0, $12 = 0, $13 = 0.0, $14 = 0, $15 = 0.0, $16 = 0, $17 = 0.0, $18 = 0, $19 = 0.0, $2 = 0, $20 = 0, $21 = 0.0, $22 = 0, $23 = 0.0, $24 = 0, $25 = 0.0, $26 = 0; var $27 = 0.0, $28 = 0, $29 = 0.0, $3 = 0, $30 = 0.0, $31 = 0, $32 = 0, $33 = 0, $4 = 0, $5 = 0.0, $6 = 0, $7 = 0.0, $8 = 0, $9 = 0.0, $LPC_pred = 0.0, $PredCoef$addr = 0, $add = 0.0, $add13 = 0.0, $add17 = 0.0, $add21 = 0.0; var $add9 = 0.0, $arrayidx = 0, $arrayidx10 = 0, $arrayidx11 = 0, $arrayidx14 = 0, $arrayidx15 = 0, $arrayidx18 = 0, $arrayidx19 = 0, $arrayidx22 = 0, $arrayidx24 = 0, $arrayidx3 = 0, $arrayidx4 = 0, $arrayidx6 = 0, $arrayidx7 = 0, $cmp = 0, $inc = 0, $ix = 0, $length$addr = 0, $mul = 0.0, $mul12 = 0.0; var $mul16 = 0.0, $mul20 = 0.0, $mul5 = 0.0, $mul8 = 0.0, $r_LPC$addr = 0, $s$addr = 0, $s_ptr = 0, $sub = 0, $sub23 = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $r_LPC$addr = $r_LPC; $PredCoef$addr = $PredCoef; $s$addr = $s; $length$addr = $length; $ix = 6; while(1) { $0 = $ix; $1 = $length$addr; $cmp = ($0|0)<($1|0); if (!($cmp)) { break; } $2 = $s$addr; $3 = $ix; $sub = (($3) - 1)|0; $arrayidx = (($2) + ($sub<<2)|0); $s_ptr = $arrayidx; $4 = $s_ptr; $5 = +HEAPF32[$4>>2]; $6 = $PredCoef$addr; $7 = +HEAPF32[$6>>2]; $mul = $5 * $7; $8 = $s_ptr; $arrayidx3 = ((($8)) + -4|0); $9 = +HEAPF32[$arrayidx3>>2]; $10 = $PredCoef$addr; $arrayidx4 = ((($10)) + 4|0); $11 = +HEAPF32[$arrayidx4>>2]; $mul5 = $9 * $11; $add = $mul + $mul5; $12 = $s_ptr; $arrayidx6 = ((($12)) + -8|0); $13 = +HEAPF32[$arrayidx6>>2]; $14 = $PredCoef$addr; $arrayidx7 = ((($14)) + 8|0); $15 = +HEAPF32[$arrayidx7>>2]; $mul8 = $13 * $15; $add9 = $add + $mul8; $16 = $s_ptr; $arrayidx10 = ((($16)) + -12|0); $17 = +HEAPF32[$arrayidx10>>2]; $18 = $PredCoef$addr; $arrayidx11 = ((($18)) + 12|0); $19 = +HEAPF32[$arrayidx11>>2]; $mul12 = $17 * $19; $add13 = $add9 + $mul12; $20 = $s_ptr; $arrayidx14 = ((($20)) + -16|0); $21 = +HEAPF32[$arrayidx14>>2]; $22 = $PredCoef$addr; $arrayidx15 = ((($22)) + 16|0); $23 = +HEAPF32[$arrayidx15>>2]; $mul16 = $21 * $23; $add17 = $add13 + $mul16; $24 = $s_ptr; $arrayidx18 = ((($24)) + -20|0); $25 = +HEAPF32[$arrayidx18>>2]; $26 = $PredCoef$addr; $arrayidx19 = ((($26)) + 20|0); $27 = +HEAPF32[$arrayidx19>>2]; $mul20 = $25 * $27; $add21 = $add17 + $mul20; $LPC_pred = $add21; $28 = $s_ptr; $arrayidx22 = ((($28)) + 4|0); $29 = +HEAPF32[$arrayidx22>>2]; $30 = $LPC_pred; $sub23 = $29 - $30; $31 = $r_LPC$addr; $32 = $ix; $arrayidx24 = (($31) + ($32<<2)|0); HEAPF32[$arrayidx24>>2] = $sub23; $33 = $ix; $inc = (($33) + 1)|0; $ix = $inc; } STACKTOP = sp;return; } function _silk_LPC_analysis_filter8_FLP($r_LPC,$PredCoef,$s,$length) { $r_LPC = $r_LPC|0; $PredCoef = $PredCoef|0; $s = $s|0; $length = $length|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0.0, $12 = 0, $13 = 0.0, $14 = 0, $15 = 0.0, $16 = 0, $17 = 0.0, $18 = 0, $19 = 0.0, $2 = 0, $20 = 0, $21 = 0.0, $22 = 0, $23 = 0.0, $24 = 0, $25 = 0.0, $26 = 0; var $27 = 0.0, $28 = 0, $29 = 0.0, $3 = 0, $30 = 0, $31 = 0.0, $32 = 0, $33 = 0.0, $34 = 0, $35 = 0.0, $36 = 0, $37 = 0.0, $38 = 0.0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $5 = 0.0, $6 = 0, $7 = 0.0; var $8 = 0, $9 = 0.0, $LPC_pred = 0.0, $PredCoef$addr = 0, $add = 0.0, $add13 = 0.0, $add17 = 0.0, $add21 = 0.0, $add25 = 0.0, $add29 = 0.0, $add9 = 0.0, $arrayidx = 0, $arrayidx10 = 0, $arrayidx11 = 0, $arrayidx14 = 0, $arrayidx15 = 0, $arrayidx18 = 0, $arrayidx19 = 0, $arrayidx22 = 0, $arrayidx23 = 0; var $arrayidx26 = 0, $arrayidx27 = 0, $arrayidx3 = 0, $arrayidx30 = 0, $arrayidx32 = 0, $arrayidx4 = 0, $arrayidx6 = 0, $arrayidx7 = 0, $cmp = 0, $inc = 0, $ix = 0, $length$addr = 0, $mul = 0.0, $mul12 = 0.0, $mul16 = 0.0, $mul20 = 0.0, $mul24 = 0.0, $mul28 = 0.0, $mul5 = 0.0, $mul8 = 0.0; var $r_LPC$addr = 0, $s$addr = 0, $s_ptr = 0, $sub = 0, $sub31 = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $r_LPC$addr = $r_LPC; $PredCoef$addr = $PredCoef; $s$addr = $s; $length$addr = $length; $ix = 8; while(1) { $0 = $ix; $1 = $length$addr; $cmp = ($0|0)<($1|0); if (!($cmp)) { break; } $2 = $s$addr; $3 = $ix; $sub = (($3) - 1)|0; $arrayidx = (($2) + ($sub<<2)|0); $s_ptr = $arrayidx; $4 = $s_ptr; $5 = +HEAPF32[$4>>2]; $6 = $PredCoef$addr; $7 = +HEAPF32[$6>>2]; $mul = $5 * $7; $8 = $s_ptr; $arrayidx3 = ((($8)) + -4|0); $9 = +HEAPF32[$arrayidx3>>2]; $10 = $PredCoef$addr; $arrayidx4 = ((($10)) + 4|0); $11 = +HEAPF32[$arrayidx4>>2]; $mul5 = $9 * $11; $add = $mul + $mul5; $12 = $s_ptr; $arrayidx6 = ((($12)) + -8|0); $13 = +HEAPF32[$arrayidx6>>2]; $14 = $PredCoef$addr; $arrayidx7 = ((($14)) + 8|0); $15 = +HEAPF32[$arrayidx7>>2]; $mul8 = $13 * $15; $add9 = $add + $mul8; $16 = $s_ptr; $arrayidx10 = ((($16)) + -12|0); $17 = +HEAPF32[$arrayidx10>>2]; $18 = $PredCoef$addr; $arrayidx11 = ((($18)) + 12|0); $19 = +HEAPF32[$arrayidx11>>2]; $mul12 = $17 * $19; $add13 = $add9 + $mul12; $20 = $s_ptr; $arrayidx14 = ((($20)) + -16|0); $21 = +HEAPF32[$arrayidx14>>2]; $22 = $PredCoef$addr; $arrayidx15 = ((($22)) + 16|0); $23 = +HEAPF32[$arrayidx15>>2]; $mul16 = $21 * $23; $add17 = $add13 + $mul16; $24 = $s_ptr; $arrayidx18 = ((($24)) + -20|0); $25 = +HEAPF32[$arrayidx18>>2]; $26 = $PredCoef$addr; $arrayidx19 = ((($26)) + 20|0); $27 = +HEAPF32[$arrayidx19>>2]; $mul20 = $25 * $27; $add21 = $add17 + $mul20; $28 = $s_ptr; $arrayidx22 = ((($28)) + -24|0); $29 = +HEAPF32[$arrayidx22>>2]; $30 = $PredCoef$addr; $arrayidx23 = ((($30)) + 24|0); $31 = +HEAPF32[$arrayidx23>>2]; $mul24 = $29 * $31; $add25 = $add21 + $mul24; $32 = $s_ptr; $arrayidx26 = ((($32)) + -28|0); $33 = +HEAPF32[$arrayidx26>>2]; $34 = $PredCoef$addr; $arrayidx27 = ((($34)) + 28|0); $35 = +HEAPF32[$arrayidx27>>2]; $mul28 = $33 * $35; $add29 = $add25 + $mul28; $LPC_pred = $add29; $36 = $s_ptr; $arrayidx30 = ((($36)) + 4|0); $37 = +HEAPF32[$arrayidx30>>2]; $38 = $LPC_pred; $sub31 = $37 - $38; $39 = $r_LPC$addr; $40 = $ix; $arrayidx32 = (($39) + ($40<<2)|0); HEAPF32[$arrayidx32>>2] = $sub31; $41 = $ix; $inc = (($41) + 1)|0; $ix = $inc; } STACKTOP = sp;return; } function _silk_LPC_analysis_filter10_FLP($r_LPC,$PredCoef,$s,$length) { $r_LPC = $r_LPC|0; $PredCoef = $PredCoef|0; $s = $s|0; $length = $length|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0.0, $12 = 0, $13 = 0.0, $14 = 0, $15 = 0.0, $16 = 0, $17 = 0.0, $18 = 0, $19 = 0.0, $2 = 0, $20 = 0, $21 = 0.0, $22 = 0, $23 = 0.0, $24 = 0, $25 = 0.0, $26 = 0; var $27 = 0.0, $28 = 0, $29 = 0.0, $3 = 0, $30 = 0, $31 = 0.0, $32 = 0, $33 = 0.0, $34 = 0, $35 = 0.0, $36 = 0, $37 = 0.0, $38 = 0, $39 = 0.0, $4 = 0, $40 = 0, $41 = 0.0, $42 = 0, $43 = 0.0, $44 = 0; var $45 = 0.0, $46 = 0.0, $47 = 0, $48 = 0, $49 = 0, $5 = 0.0, $6 = 0, $7 = 0.0, $8 = 0, $9 = 0.0, $LPC_pred = 0.0, $PredCoef$addr = 0, $add = 0.0, $add13 = 0.0, $add17 = 0.0, $add21 = 0.0, $add25 = 0.0, $add29 = 0.0, $add33 = 0.0, $add37 = 0.0; var $add9 = 0.0, $arrayidx = 0, $arrayidx10 = 0, $arrayidx11 = 0, $arrayidx14 = 0, $arrayidx15 = 0, $arrayidx18 = 0, $arrayidx19 = 0, $arrayidx22 = 0, $arrayidx23 = 0, $arrayidx26 = 0, $arrayidx27 = 0, $arrayidx3 = 0, $arrayidx30 = 0, $arrayidx31 = 0, $arrayidx34 = 0, $arrayidx35 = 0, $arrayidx38 = 0, $arrayidx4 = 0, $arrayidx40 = 0; var $arrayidx6 = 0, $arrayidx7 = 0, $cmp = 0, $inc = 0, $ix = 0, $length$addr = 0, $mul = 0.0, $mul12 = 0.0, $mul16 = 0.0, $mul20 = 0.0, $mul24 = 0.0, $mul28 = 0.0, $mul32 = 0.0, $mul36 = 0.0, $mul5 = 0.0, $mul8 = 0.0, $r_LPC$addr = 0, $s$addr = 0, $s_ptr = 0, $sub = 0; var $sub39 = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $r_LPC$addr = $r_LPC; $PredCoef$addr = $PredCoef; $s$addr = $s; $length$addr = $length; $ix = 10; while(1) { $0 = $ix; $1 = $length$addr; $cmp = ($0|0)<($1|0); if (!($cmp)) { break; } $2 = $s$addr; $3 = $ix; $sub = (($3) - 1)|0; $arrayidx = (($2) + ($sub<<2)|0); $s_ptr = $arrayidx; $4 = $s_ptr; $5 = +HEAPF32[$4>>2]; $6 = $PredCoef$addr; $7 = +HEAPF32[$6>>2]; $mul = $5 * $7; $8 = $s_ptr; $arrayidx3 = ((($8)) + -4|0); $9 = +HEAPF32[$arrayidx3>>2]; $10 = $PredCoef$addr; $arrayidx4 = ((($10)) + 4|0); $11 = +HEAPF32[$arrayidx4>>2]; $mul5 = $9 * $11; $add = $mul + $mul5; $12 = $s_ptr; $arrayidx6 = ((($12)) + -8|0); $13 = +HEAPF32[$arrayidx6>>2]; $14 = $PredCoef$addr; $arrayidx7 = ((($14)) + 8|0); $15 = +HEAPF32[$arrayidx7>>2]; $mul8 = $13 * $15; $add9 = $add + $mul8; $16 = $s_ptr; $arrayidx10 = ((($16)) + -12|0); $17 = +HEAPF32[$arrayidx10>>2]; $18 = $PredCoef$addr; $arrayidx11 = ((($18)) + 12|0); $19 = +HEAPF32[$arrayidx11>>2]; $mul12 = $17 * $19; $add13 = $add9 + $mul12; $20 = $s_ptr; $arrayidx14 = ((($20)) + -16|0); $21 = +HEAPF32[$arrayidx14>>2]; $22 = $PredCoef$addr; $arrayidx15 = ((($22)) + 16|0); $23 = +HEAPF32[$arrayidx15>>2]; $mul16 = $21 * $23; $add17 = $add13 + $mul16; $24 = $s_ptr; $arrayidx18 = ((($24)) + -20|0); $25 = +HEAPF32[$arrayidx18>>2]; $26 = $PredCoef$addr; $arrayidx19 = ((($26)) + 20|0); $27 = +HEAPF32[$arrayidx19>>2]; $mul20 = $25 * $27; $add21 = $add17 + $mul20; $28 = $s_ptr; $arrayidx22 = ((($28)) + -24|0); $29 = +HEAPF32[$arrayidx22>>2]; $30 = $PredCoef$addr; $arrayidx23 = ((($30)) + 24|0); $31 = +HEAPF32[$arrayidx23>>2]; $mul24 = $29 * $31; $add25 = $add21 + $mul24; $32 = $s_ptr; $arrayidx26 = ((($32)) + -28|0); $33 = +HEAPF32[$arrayidx26>>2]; $34 = $PredCoef$addr; $arrayidx27 = ((($34)) + 28|0); $35 = +HEAPF32[$arrayidx27>>2]; $mul28 = $33 * $35; $add29 = $add25 + $mul28; $36 = $s_ptr; $arrayidx30 = ((($36)) + -32|0); $37 = +HEAPF32[$arrayidx30>>2]; $38 = $PredCoef$addr; $arrayidx31 = ((($38)) + 32|0); $39 = +HEAPF32[$arrayidx31>>2]; $mul32 = $37 * $39; $add33 = $add29 + $mul32; $40 = $s_ptr; $arrayidx34 = ((($40)) + -36|0); $41 = +HEAPF32[$arrayidx34>>2]; $42 = $PredCoef$addr; $arrayidx35 = ((($42)) + 36|0); $43 = +HEAPF32[$arrayidx35>>2]; $mul36 = $41 * $43; $add37 = $add33 + $mul36; $LPC_pred = $add37; $44 = $s_ptr; $arrayidx38 = ((($44)) + 4|0); $45 = +HEAPF32[$arrayidx38>>2]; $46 = $LPC_pred; $sub39 = $45 - $46; $47 = $r_LPC$addr; $48 = $ix; $arrayidx40 = (($47) + ($48<<2)|0); HEAPF32[$arrayidx40>>2] = $sub39; $49 = $ix; $inc = (($49) + 1)|0; $ix = $inc; } STACKTOP = sp;return; } function _silk_LPC_analysis_filter12_FLP($r_LPC,$PredCoef,$s,$length) { $r_LPC = $r_LPC|0; $PredCoef = $PredCoef|0; $s = $s|0; $length = $length|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0.0, $12 = 0, $13 = 0.0, $14 = 0, $15 = 0.0, $16 = 0, $17 = 0.0, $18 = 0, $19 = 0.0, $2 = 0, $20 = 0, $21 = 0.0, $22 = 0, $23 = 0.0, $24 = 0, $25 = 0.0, $26 = 0; var $27 = 0.0, $28 = 0, $29 = 0.0, $3 = 0, $30 = 0, $31 = 0.0, $32 = 0, $33 = 0.0, $34 = 0, $35 = 0.0, $36 = 0, $37 = 0.0, $38 = 0, $39 = 0.0, $4 = 0, $40 = 0, $41 = 0.0, $42 = 0, $43 = 0.0, $44 = 0; var $45 = 0.0, $46 = 0, $47 = 0.0, $48 = 0, $49 = 0.0, $5 = 0.0, $50 = 0, $51 = 0.0, $52 = 0, $53 = 0.0, $54 = 0.0, $55 = 0, $56 = 0, $57 = 0, $6 = 0, $7 = 0.0, $8 = 0, $9 = 0.0, $LPC_pred = 0.0, $PredCoef$addr = 0; var $add = 0.0, $add13 = 0.0, $add17 = 0.0, $add21 = 0.0, $add25 = 0.0, $add29 = 0.0, $add33 = 0.0, $add37 = 0.0, $add41 = 0.0, $add45 = 0.0, $add9 = 0.0, $arrayidx = 0, $arrayidx10 = 0, $arrayidx11 = 0, $arrayidx14 = 0, $arrayidx15 = 0, $arrayidx18 = 0, $arrayidx19 = 0, $arrayidx22 = 0, $arrayidx23 = 0; var $arrayidx26 = 0, $arrayidx27 = 0, $arrayidx3 = 0, $arrayidx30 = 0, $arrayidx31 = 0, $arrayidx34 = 0, $arrayidx35 = 0, $arrayidx38 = 0, $arrayidx39 = 0, $arrayidx4 = 0, $arrayidx42 = 0, $arrayidx43 = 0, $arrayidx46 = 0, $arrayidx48 = 0, $arrayidx6 = 0, $arrayidx7 = 0, $cmp = 0, $inc = 0, $ix = 0, $length$addr = 0; var $mul = 0.0, $mul12 = 0.0, $mul16 = 0.0, $mul20 = 0.0, $mul24 = 0.0, $mul28 = 0.0, $mul32 = 0.0, $mul36 = 0.0, $mul40 = 0.0, $mul44 = 0.0, $mul5 = 0.0, $mul8 = 0.0, $r_LPC$addr = 0, $s$addr = 0, $s_ptr = 0, $sub = 0, $sub47 = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $r_LPC$addr = $r_LPC; $PredCoef$addr = $PredCoef; $s$addr = $s; $length$addr = $length; $ix = 12; while(1) { $0 = $ix; $1 = $length$addr; $cmp = ($0|0)<($1|0); if (!($cmp)) { break; } $2 = $s$addr; $3 = $ix; $sub = (($3) - 1)|0; $arrayidx = (($2) + ($sub<<2)|0); $s_ptr = $arrayidx; $4 = $s_ptr; $5 = +HEAPF32[$4>>2]; $6 = $PredCoef$addr; $7 = +HEAPF32[$6>>2]; $mul = $5 * $7; $8 = $s_ptr; $arrayidx3 = ((($8)) + -4|0); $9 = +HEAPF32[$arrayidx3>>2]; $10 = $PredCoef$addr; $arrayidx4 = ((($10)) + 4|0); $11 = +HEAPF32[$arrayidx4>>2]; $mul5 = $9 * $11; $add = $mul + $mul5; $12 = $s_ptr; $arrayidx6 = ((($12)) + -8|0); $13 = +HEAPF32[$arrayidx6>>2]; $14 = $PredCoef$addr; $arrayidx7 = ((($14)) + 8|0); $15 = +HEAPF32[$arrayidx7>>2]; $mul8 = $13 * $15; $add9 = $add + $mul8; $16 = $s_ptr; $arrayidx10 = ((($16)) + -12|0); $17 = +HEAPF32[$arrayidx10>>2]; $18 = $PredCoef$addr; $arrayidx11 = ((($18)) + 12|0); $19 = +HEAPF32[$arrayidx11>>2]; $mul12 = $17 * $19; $add13 = $add9 + $mul12; $20 = $s_ptr; $arrayidx14 = ((($20)) + -16|0); $21 = +HEAPF32[$arrayidx14>>2]; $22 = $PredCoef$addr; $arrayidx15 = ((($22)) + 16|0); $23 = +HEAPF32[$arrayidx15>>2]; $mul16 = $21 * $23; $add17 = $add13 + $mul16; $24 = $s_ptr; $arrayidx18 = ((($24)) + -20|0); $25 = +HEAPF32[$arrayidx18>>2]; $26 = $PredCoef$addr; $arrayidx19 = ((($26)) + 20|0); $27 = +HEAPF32[$arrayidx19>>2]; $mul20 = $25 * $27; $add21 = $add17 + $mul20; $28 = $s_ptr; $arrayidx22 = ((($28)) + -24|0); $29 = +HEAPF32[$arrayidx22>>2]; $30 = $PredCoef$addr; $arrayidx23 = ((($30)) + 24|0); $31 = +HEAPF32[$arrayidx23>>2]; $mul24 = $29 * $31; $add25 = $add21 + $mul24; $32 = $s_ptr; $arrayidx26 = ((($32)) + -28|0); $33 = +HEAPF32[$arrayidx26>>2]; $34 = $PredCoef$addr; $arrayidx27 = ((($34)) + 28|0); $35 = +HEAPF32[$arrayidx27>>2]; $mul28 = $33 * $35; $add29 = $add25 + $mul28; $36 = $s_ptr; $arrayidx30 = ((($36)) + -32|0); $37 = +HEAPF32[$arrayidx30>>2]; $38 = $PredCoef$addr; $arrayidx31 = ((($38)) + 32|0); $39 = +HEAPF32[$arrayidx31>>2]; $mul32 = $37 * $39; $add33 = $add29 + $mul32; $40 = $s_ptr; $arrayidx34 = ((($40)) + -36|0); $41 = +HEAPF32[$arrayidx34>>2]; $42 = $PredCoef$addr; $arrayidx35 = ((($42)) + 36|0); $43 = +HEAPF32[$arrayidx35>>2]; $mul36 = $41 * $43; $add37 = $add33 + $mul36; $44 = $s_ptr; $arrayidx38 = ((($44)) + -40|0); $45 = +HEAPF32[$arrayidx38>>2]; $46 = $PredCoef$addr; $arrayidx39 = ((($46)) + 40|0); $47 = +HEAPF32[$arrayidx39>>2]; $mul40 = $45 * $47; $add41 = $add37 + $mul40; $48 = $s_ptr; $arrayidx42 = ((($48)) + -44|0); $49 = +HEAPF32[$arrayidx42>>2]; $50 = $PredCoef$addr; $arrayidx43 = ((($50)) + 44|0); $51 = +HEAPF32[$arrayidx43>>2]; $mul44 = $49 * $51; $add45 = $add41 + $mul44; $LPC_pred = $add45; $52 = $s_ptr; $arrayidx46 = ((($52)) + 4|0); $53 = +HEAPF32[$arrayidx46>>2]; $54 = $LPC_pred; $sub47 = $53 - $54; $55 = $r_LPC$addr; $56 = $ix; $arrayidx48 = (($55) + ($56<<2)|0); HEAPF32[$arrayidx48>>2] = $sub47; $57 = $ix; $inc = (($57) + 1)|0; $ix = $inc; } STACKTOP = sp;return; } function _silk_LPC_analysis_filter16_FLP($r_LPC,$PredCoef,$s,$length) { $r_LPC = $r_LPC|0; $PredCoef = $PredCoef|0; $s = $s|0; $length = $length|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0.0, $12 = 0, $13 = 0.0, $14 = 0, $15 = 0.0, $16 = 0, $17 = 0.0, $18 = 0, $19 = 0.0, $2 = 0, $20 = 0, $21 = 0.0, $22 = 0, $23 = 0.0, $24 = 0, $25 = 0.0, $26 = 0; var $27 = 0.0, $28 = 0, $29 = 0.0, $3 = 0, $30 = 0, $31 = 0.0, $32 = 0, $33 = 0.0, $34 = 0, $35 = 0.0, $36 = 0, $37 = 0.0, $38 = 0, $39 = 0.0, $4 = 0, $40 = 0, $41 = 0.0, $42 = 0, $43 = 0.0, $44 = 0; var $45 = 0.0, $46 = 0, $47 = 0.0, $48 = 0, $49 = 0.0, $5 = 0.0, $50 = 0, $51 = 0.0, $52 = 0, $53 = 0.0, $54 = 0, $55 = 0.0, $56 = 0, $57 = 0.0, $58 = 0, $59 = 0.0, $6 = 0, $60 = 0, $61 = 0.0, $62 = 0; var $63 = 0.0, $64 = 0, $65 = 0.0, $66 = 0, $67 = 0.0, $68 = 0, $69 = 0.0, $7 = 0.0, $70 = 0.0, $71 = 0, $72 = 0, $73 = 0, $8 = 0, $9 = 0.0, $LPC_pred = 0.0, $PredCoef$addr = 0, $add = 0.0, $add13 = 0.0, $add17 = 0.0, $add21 = 0.0; var $add25 = 0.0, $add29 = 0.0, $add33 = 0.0, $add37 = 0.0, $add41 = 0.0, $add45 = 0.0, $add49 = 0.0, $add53 = 0.0, $add57 = 0.0, $add61 = 0.0, $add9 = 0.0, $arrayidx = 0, $arrayidx10 = 0, $arrayidx11 = 0, $arrayidx14 = 0, $arrayidx15 = 0, $arrayidx18 = 0, $arrayidx19 = 0, $arrayidx22 = 0, $arrayidx23 = 0; var $arrayidx26 = 0, $arrayidx27 = 0, $arrayidx3 = 0, $arrayidx30 = 0, $arrayidx31 = 0, $arrayidx34 = 0, $arrayidx35 = 0, $arrayidx38 = 0, $arrayidx39 = 0, $arrayidx4 = 0, $arrayidx42 = 0, $arrayidx43 = 0, $arrayidx46 = 0, $arrayidx47 = 0, $arrayidx50 = 0, $arrayidx51 = 0, $arrayidx54 = 0, $arrayidx55 = 0, $arrayidx58 = 0, $arrayidx59 = 0; var $arrayidx6 = 0, $arrayidx62 = 0, $arrayidx64 = 0, $arrayidx7 = 0, $cmp = 0, $inc = 0, $ix = 0, $length$addr = 0, $mul = 0.0, $mul12 = 0.0, $mul16 = 0.0, $mul20 = 0.0, $mul24 = 0.0, $mul28 = 0.0, $mul32 = 0.0, $mul36 = 0.0, $mul40 = 0.0, $mul44 = 0.0, $mul48 = 0.0, $mul5 = 0.0; var $mul52 = 0.0, $mul56 = 0.0, $mul60 = 0.0, $mul8 = 0.0, $r_LPC$addr = 0, $s$addr = 0, $s_ptr = 0, $sub = 0, $sub63 = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $r_LPC$addr = $r_LPC; $PredCoef$addr = $PredCoef; $s$addr = $s; $length$addr = $length; $ix = 16; while(1) { $0 = $ix; $1 = $length$addr; $cmp = ($0|0)<($1|0); if (!($cmp)) { break; } $2 = $s$addr; $3 = $ix; $sub = (($3) - 1)|0; $arrayidx = (($2) + ($sub<<2)|0); $s_ptr = $arrayidx; $4 = $s_ptr; $5 = +HEAPF32[$4>>2]; $6 = $PredCoef$addr; $7 = +HEAPF32[$6>>2]; $mul = $5 * $7; $8 = $s_ptr; $arrayidx3 = ((($8)) + -4|0); $9 = +HEAPF32[$arrayidx3>>2]; $10 = $PredCoef$addr; $arrayidx4 = ((($10)) + 4|0); $11 = +HEAPF32[$arrayidx4>>2]; $mul5 = $9 * $11; $add = $mul + $mul5; $12 = $s_ptr; $arrayidx6 = ((($12)) + -8|0); $13 = +HEAPF32[$arrayidx6>>2]; $14 = $PredCoef$addr; $arrayidx7 = ((($14)) + 8|0); $15 = +HEAPF32[$arrayidx7>>2]; $mul8 = $13 * $15; $add9 = $add + $mul8; $16 = $s_ptr; $arrayidx10 = ((($16)) + -12|0); $17 = +HEAPF32[$arrayidx10>>2]; $18 = $PredCoef$addr; $arrayidx11 = ((($18)) + 12|0); $19 = +HEAPF32[$arrayidx11>>2]; $mul12 = $17 * $19; $add13 = $add9 + $mul12; $20 = $s_ptr; $arrayidx14 = ((($20)) + -16|0); $21 = +HEAPF32[$arrayidx14>>2]; $22 = $PredCoef$addr; $arrayidx15 = ((($22)) + 16|0); $23 = +HEAPF32[$arrayidx15>>2]; $mul16 = $21 * $23; $add17 = $add13 + $mul16; $24 = $s_ptr; $arrayidx18 = ((($24)) + -20|0); $25 = +HEAPF32[$arrayidx18>>2]; $26 = $PredCoef$addr; $arrayidx19 = ((($26)) + 20|0); $27 = +HEAPF32[$arrayidx19>>2]; $mul20 = $25 * $27; $add21 = $add17 + $mul20; $28 = $s_ptr; $arrayidx22 = ((($28)) + -24|0); $29 = +HEAPF32[$arrayidx22>>2]; $30 = $PredCoef$addr; $arrayidx23 = ((($30)) + 24|0); $31 = +HEAPF32[$arrayidx23>>2]; $mul24 = $29 * $31; $add25 = $add21 + $mul24; $32 = $s_ptr; $arrayidx26 = ((($32)) + -28|0); $33 = +HEAPF32[$arrayidx26>>2]; $34 = $PredCoef$addr; $arrayidx27 = ((($34)) + 28|0); $35 = +HEAPF32[$arrayidx27>>2]; $mul28 = $33 * $35; $add29 = $add25 + $mul28; $36 = $s_ptr; $arrayidx30 = ((($36)) + -32|0); $37 = +HEAPF32[$arrayidx30>>2]; $38 = $PredCoef$addr; $arrayidx31 = ((($38)) + 32|0); $39 = +HEAPF32[$arrayidx31>>2]; $mul32 = $37 * $39; $add33 = $add29 + $mul32; $40 = $s_ptr; $arrayidx34 = ((($40)) + -36|0); $41 = +HEAPF32[$arrayidx34>>2]; $42 = $PredCoef$addr; $arrayidx35 = ((($42)) + 36|0); $43 = +HEAPF32[$arrayidx35>>2]; $mul36 = $41 * $43; $add37 = $add33 + $mul36; $44 = $s_ptr; $arrayidx38 = ((($44)) + -40|0); $45 = +HEAPF32[$arrayidx38>>2]; $46 = $PredCoef$addr; $arrayidx39 = ((($46)) + 40|0); $47 = +HEAPF32[$arrayidx39>>2]; $mul40 = $45 * $47; $add41 = $add37 + $mul40; $48 = $s_ptr; $arrayidx42 = ((($48)) + -44|0); $49 = +HEAPF32[$arrayidx42>>2]; $50 = $PredCoef$addr; $arrayidx43 = ((($50)) + 44|0); $51 = +HEAPF32[$arrayidx43>>2]; $mul44 = $49 * $51; $add45 = $add41 + $mul44; $52 = $s_ptr; $arrayidx46 = ((($52)) + -48|0); $53 = +HEAPF32[$arrayidx46>>2]; $54 = $PredCoef$addr; $arrayidx47 = ((($54)) + 48|0); $55 = +HEAPF32[$arrayidx47>>2]; $mul48 = $53 * $55; $add49 = $add45 + $mul48; $56 = $s_ptr; $arrayidx50 = ((($56)) + -52|0); $57 = +HEAPF32[$arrayidx50>>2]; $58 = $PredCoef$addr; $arrayidx51 = ((($58)) + 52|0); $59 = +HEAPF32[$arrayidx51>>2]; $mul52 = $57 * $59; $add53 = $add49 + $mul52; $60 = $s_ptr; $arrayidx54 = ((($60)) + -56|0); $61 = +HEAPF32[$arrayidx54>>2]; $62 = $PredCoef$addr; $arrayidx55 = ((($62)) + 56|0); $63 = +HEAPF32[$arrayidx55>>2]; $mul56 = $61 * $63; $add57 = $add53 + $mul56; $64 = $s_ptr; $arrayidx58 = ((($64)) + -60|0); $65 = +HEAPF32[$arrayidx58>>2]; $66 = $PredCoef$addr; $arrayidx59 = ((($66)) + 60|0); $67 = +HEAPF32[$arrayidx59>>2]; $mul60 = $65 * $67; $add61 = $add57 + $mul60; $LPC_pred = $add61; $68 = $s_ptr; $arrayidx62 = ((($68)) + 4|0); $69 = +HEAPF32[$arrayidx62>>2]; $70 = $LPC_pred; $sub63 = $69 - $70; $71 = $r_LPC$addr; $72 = $ix; $arrayidx64 = (($71) + ($72<<2)|0); HEAPF32[$arrayidx64>>2] = $sub63; $73 = $ix; $inc = (($73) + 1)|0; $ix = $inc; } STACKTOP = sp;return; } function _silk_LTP_analysis_filter_FLP($LTP_res,$x,$B,$pitchL,$invGains,$subfr_length,$nb_subfr,$pre_length) { $LTP_res = $LTP_res|0; $x = $x|0; $B = $B|0; $pitchL = $pitchL|0; $invGains = $invGains|0; $subfr_length = $subfr_length|0; $nb_subfr = $nb_subfr|0; $pre_length = $pre_length|0; var $0 = 0, $1 = 0, $10 = 0.0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0.0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0.0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0.0, $29 = 0, $3 = 0, $30 = 0, $31 = 0.0, $32 = 0, $33 = 0, $34 = 0.0, $35 = 0, $36 = 0.0, $37 = 0, $38 = 0, $39 = 0.0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $B$addr = 0, $Btmp = 0, $LTP_res$addr = 0, $LTP_res_ptr = 0, $add = 0, $add$ptr = 0, $add$ptr30 = 0, $add$ptr31 = 0, $add29 = 0, $add8 = 0, $arrayidx = 0, $arrayidx1 = 0; var $arrayidx11 = 0, $arrayidx12 = 0, $arrayidx16 = 0, $arrayidx17 = 0, $arrayidx19 = 0, $arrayidx24 = 0, $arrayidx5 = 0, $arrayidx6 = 0, $cmp = 0, $cmp14 = 0, $cmp3 = 0, $cmp9 = 0, $i = 0, $idx$neg = 0, $inc = 0, $inc22 = 0, $inc27 = 0, $inc33 = 0, $incdec$ptr = 0, $invGains$addr = 0; var $inv_gain = 0.0, $j = 0, $k = 0, $mul = 0, $mul18 = 0.0, $mul25 = 0.0, $nb_subfr$addr = 0, $pitchL$addr = 0, $pre_length$addr = 0, $sub = 0, $sub20 = 0.0, $subfr_length$addr = 0, $x$addr = 0, $x_lag_ptr = 0, $x_ptr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(80|0); $Btmp = sp + 20|0; $LTP_res$addr = $LTP_res; $x$addr = $x; $B$addr = $B; $pitchL$addr = $pitchL; $invGains$addr = $invGains; $subfr_length$addr = $subfr_length; $nb_subfr$addr = $nb_subfr; $pre_length$addr = $pre_length; $0 = $x$addr; $x_ptr = $0; $1 = $LTP_res$addr; $LTP_res_ptr = $1; $k = 0; while(1) { $2 = $k; $3 = $nb_subfr$addr; $cmp = ($2|0)<($3|0); if (!($cmp)) { break; } $4 = $x_ptr; $5 = $pitchL$addr; $6 = $k; $arrayidx = (($5) + ($6<<2)|0); $7 = HEAP32[$arrayidx>>2]|0; $idx$neg = (0 - ($7))|0; $add$ptr = (($4) + ($idx$neg<<2)|0); $x_lag_ptr = $add$ptr; $8 = $invGains$addr; $9 = $k; $arrayidx1 = (($8) + ($9<<2)|0); $10 = +HEAPF32[$arrayidx1>>2]; $inv_gain = $10; $i = 0; while(1) { $11 = $i; $cmp3 = ($11|0)<(5); if (!($cmp3)) { break; } $12 = $B$addr; $13 = $k; $mul = ($13*5)|0; $14 = $i; $add = (($mul) + ($14))|0; $arrayidx5 = (($12) + ($add<<2)|0); $15 = +HEAPF32[$arrayidx5>>2]; $16 = $i; $arrayidx6 = (($Btmp) + ($16<<2)|0); HEAPF32[$arrayidx6>>2] = $15; $17 = $i; $inc = (($17) + 1)|0; $i = $inc; } $i = 0; while(1) { $18 = $i; $19 = $subfr_length$addr; $20 = $pre_length$addr; $add8 = (($19) + ($20))|0; $cmp9 = ($18|0)<($add8|0); if (!($cmp9)) { break; } $21 = $x_ptr; $22 = $i; $arrayidx11 = (($21) + ($22<<2)|0); $23 = +HEAPF32[$arrayidx11>>2]; $24 = $LTP_res_ptr; $25 = $i; $arrayidx12 = (($24) + ($25<<2)|0); HEAPF32[$arrayidx12>>2] = $23; $j = 0; while(1) { $26 = $j; $cmp14 = ($26|0)<(5); if (!($cmp14)) { break; } $27 = $j; $arrayidx16 = (($Btmp) + ($27<<2)|0); $28 = +HEAPF32[$arrayidx16>>2]; $29 = $x_lag_ptr; $30 = $j; $sub = (2 - ($30))|0; $arrayidx17 = (($29) + ($sub<<2)|0); $31 = +HEAPF32[$arrayidx17>>2]; $mul18 = $28 * $31; $32 = $LTP_res_ptr; $33 = $i; $arrayidx19 = (($32) + ($33<<2)|0); $34 = +HEAPF32[$arrayidx19>>2]; $sub20 = $34 - $mul18; HEAPF32[$arrayidx19>>2] = $sub20; $35 = $j; $inc22 = (($35) + 1)|0; $j = $inc22; } $36 = $inv_gain; $37 = $LTP_res_ptr; $38 = $i; $arrayidx24 = (($37) + ($38<<2)|0); $39 = +HEAPF32[$arrayidx24>>2]; $mul25 = $39 * $36; HEAPF32[$arrayidx24>>2] = $mul25; $40 = $x_lag_ptr; $incdec$ptr = ((($40)) + 4|0); $x_lag_ptr = $incdec$ptr; $41 = $i; $inc27 = (($41) + 1)|0; $i = $inc27; } $42 = $subfr_length$addr; $43 = $pre_length$addr; $add29 = (($42) + ($43))|0; $44 = $LTP_res_ptr; $add$ptr30 = (($44) + ($add29<<2)|0); $LTP_res_ptr = $add$ptr30; $45 = $subfr_length$addr; $46 = $x_ptr; $add$ptr31 = (($46) + ($45<<2)|0); $x_ptr = $add$ptr31; $47 = $k; $inc33 = (($47) + 1)|0; $k = $inc33; } STACKTOP = sp;return; } function _silk_LTP_scale_ctrl_FLP($psEnc,$psEncCtrl,$condCoding) { $psEnc = $psEnc|0; $psEncCtrl = $psEncCtrl|0; $condCoding = $condCoding|0; var $$sink = 0, $0 = 0, $1 = 0, $10 = 0.0, $11 = 0, $12 = 0, $13 = 0.0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0.0, $8 = 0, $9 = 0; var $LTP_scale = 0, $LTP_scaleIndex23 = 0, $LTP_scaleIndex26 = 0, $LTPredCodGain = 0, $LTPredCodGain14 = 0, $LTPredCodGain6 = 0, $PacketLoss_perc = 0, $add = 0, $arrayidx = 0, $cmp = 0, $cmp3 = 0, $cmp9 = 0, $cond18 = 0.0, $condCoding$addr = 0, $conv = 0.0, $conv13 = 0.0, $conv19 = 0, $conv27 = 0.0, $conv5 = 0.0, $div = 0.0; var $idxprom = 0, $indices22 = 0, $indices25 = 0, $mul = 0.0, $mul15 = 0.0, $mul16 = 0.0, $mul2 = 0.0, $mul7 = 0.0, $mul8 = 0.0, $nFramesPerPacket = 0, $psEnc$addr = 0, $psEncCtrl$addr = 0, $round_loss = 0, $sCmn$sink = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $psEnc$addr = $psEnc; $psEncCtrl$addr = $psEncCtrl; $condCoding$addr = $condCoding; $0 = $condCoding$addr; $cmp = ($0|0)==(0); $1 = $psEnc$addr; if ($cmp) { $PacketLoss_perc = ((($1)) + 4612|0); $2 = HEAP32[$PacketLoss_perc>>2]|0; $3 = $psEnc$addr; $nFramesPerPacket = ((($3)) + 5740|0); $4 = HEAP32[$nFramesPerPacket>>2]|0; $add = (($2) + ($4))|0; $round_loss = $add; $5 = $round_loss; $conv = (+($5|0)); $6 = $psEncCtrl$addr; $LTPredCodGain = ((($6)) + 708|0); $7 = +HEAPF32[$LTPredCodGain>>2]; $mul = $conv * $7; $mul2 = $mul * 0.10000000149011612; $cmp3 = $mul2 > 2.0; if ($cmp3) { $cond18 = 2.0; } else { $8 = $round_loss; $conv5 = (+($8|0)); $9 = $psEncCtrl$addr; $LTPredCodGain6 = ((($9)) + 708|0); $10 = +HEAPF32[$LTPredCodGain6>>2]; $mul7 = $conv5 * $10; $mul8 = $mul7 * 0.10000000149011612; $cmp9 = $mul8 < 0.0; if ($cmp9) { $cond18 = 0.0; } else { $11 = $round_loss; $conv13 = (+($11|0)); $12 = $psEncCtrl$addr; $LTPredCodGain14 = ((($12)) + 708|0); $13 = +HEAPF32[$LTPredCodGain14>>2]; $mul15 = $conv13 * $13; $mul16 = $mul15 * 0.10000000149011612; $cond18 = $mul16; } } $conv19 = (~~(($cond18))); $14 = $psEnc$addr; $$sink = $conv19;$sCmn$sink = $14; } else { $$sink = 0;$sCmn$sink = $1; } $indices22 = ((($sCmn$sink)) + 4732|0); $LTP_scaleIndex23 = ((($indices22)) + 33|0); HEAP8[$LTP_scaleIndex23>>0] = $$sink; $15 = $psEnc$addr; $indices25 = ((($15)) + 4732|0); $LTP_scaleIndex26 = ((($indices25)) + 33|0); $16 = HEAP8[$LTP_scaleIndex26>>0]|0; $idxprom = $16 << 24 >> 24; $arrayidx = (23520 + ($idxprom<<1)|0); $17 = HEAP16[$arrayidx>>1]|0; $conv27 = (+($17<<16>>16)); $div = $conv27 / 16384.0; $18 = $psEncCtrl$addr; $LTP_scale = ((($18)) + 224|0); HEAPF32[$LTP_scale>>2] = $div; STACKTOP = sp;return; } function _silk_noise_shape_analysis_FLP($psEnc,$psEncCtrl,$pitch_res,$x) { $psEnc = $psEnc|0; $psEncCtrl = $psEncCtrl|0; $pitch_res = $pitch_res|0; $x = $x|0; var $$sink = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0.0, $101 = 0.0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0.0, $109 = 0, $11 = 0.0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0; var $115 = 0.0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0.0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0.0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0.0, $131 = 0, $132 = 0; var $133 = 0, $134 = 0, $135 = 0, $136 = 0.0, $137 = 0.0, $138 = 0.0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0.0, $143 = 0, $144 = 0, $145 = 0.0, $146 = 0.0, $147 = 0, $148 = 0, $149 = 0.0, $15 = 0, $150 = 0; var $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0.0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0.0, $167 = 0, $168 = 0, $169 = 0.0; var $17 = 0, $170 = 0.0, $171 = 0.0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0.0, $179 = 0, $18 = 0.0, $180 = 0.0, $181 = 0.0, $182 = 0.0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0; var $188 = 0.0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0.0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0.0, $2 = 0, $20 = 0.0, $200 = 0, $201 = 0.0, $202 = 0.0, $203 = 0, $204 = 0.0; var $205 = 0.0, $206 = 0, $207 = 0, $208 = 0, $209 = 0.0, $21 = 0.0, $210 = 0, $211 = 0.0, $212 = 0, $213 = 0.0, $214 = 0, $215 = 0.0, $216 = 0, $217 = 0, $218 = 0.0, $219 = 0, $22 = 0.0, $220 = 0.0, $221 = 0, $222 = 0.0; var $223 = 0, $224 = 0.0, $225 = 0, $226 = 0, $227 = 0, $23 = 0.0, $24 = 0, $25 = 0, $26 = 0, $27 = 0.0, $28 = 0.0, $29 = 0, $3 = 0, $30 = 0, $31 = 0.0, $32 = 0.0, $33 = 0, $34 = 0, $35 = 0, $36 = 0; var $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0.0, $46 = 0, $47 = 0.0, $48 = 0.0, $49 = 0.0, $5 = 0, $50 = 0.0, $51 = 0, $52 = 0, $53 = 0, $54 = 0.0; var $55 = 0, $56 = 0, $57 = 0, $58 = 0.0, $59 = 0.0, $6 = 0, $60 = 0.0, $61 = 0, $62 = 0, $63 = 0, $64 = 0.0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; var $91 = 0.0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $AR = 0, $AR167 = 0, $AR177 = 0, $AR187 = 0, $BWExp = 0.0, $HarmShapeGain = 0.0, $HarmShapeGain335 = 0, $HarmShapeGain_smth = 0, $HarmShapeGain_smth332 = 0, $HarmShapeGain_smth334 = 0, $LF_AR_shp = 0; var $LF_AR_shp283 = 0, $LF_AR_shp295 = 0, $LF_AR_shp297 = 0, $LF_MA_shp = 0, $LF_MA_shp277 = 0, $LF_MA_shp291 = 0, $LF_MA_shp293 = 0, $LTPCorr = 0, $LTPCorr317 = 0, $SNR_adj_dB = 0.0, $SNR_dB_Q7 = 0, $SNR_dB_Q733 = 0, $Tilt = 0.0, $Tilt342 = 0, $Tilt_smth = 0, $Tilt_smth339 = 0, $Tilt_smth341 = 0, $add = 0, $add$ptr = 0, $add$ptr115 = 0; var $add$ptr116 = 0, $add$ptr120 = 0, $add$ptr121 = 0, $add$ptr123 = 0, $add$ptr76 = 0, $add101 = 0.0, $add118 = 0, $add141 = 0, $add145 = 0.0, $add147 = 0.0, $add20 = 0.0, $add217 = 0.0, $add228 = 0.0, $add255 = 0.0, $add256 = 0.0, $add276 = 0.0, $add31 = 0.0, $add316 = 0.0, $add333 = 0.0, $add340 = 0.0; var $add37 = 0.0, $add41 = 0.0, $add64 = 0.0, $add74 = 0.0, $add94 = 0.0, $arrayidx154 = 0, $arrayidx161 = 0, $arrayidx169 = 0, $arrayidx174 = 0, $arrayidx179 = 0, $arrayidx189 = 0, $arrayidx213 = 0, $arrayidx216 = 0, $arrayidx252 = 0, $arrayidx257 = 0, $arrayidx261 = 0, $arrayidx294 = 0, $arrayidx298 = 0, $arrayidx336 = 0, $arrayidx343 = 0; var $arrayidx5 = 0, $auto_corr = 0, $b = 0.0, $call = 0.0, $call152 = 0.0, $call159 = 0.0, $call172 = 0.0, $call319 = 0.0, $call62 = 0.0, $call66 = 0.0, $call72 = 0.0, $cmp = 0, $cmp105 = 0, $cmp126 = 0, $cmp164 = 0, $cmp184 = 0, $cmp209 = 0, $cmp239 = 0, $cmp245 = 0, $cmp27 = 0; var $cmp288 = 0, $cmp307 = 0, $cmp327 = 0, $cmp47 = 0, $cmp59 = 0, $cmp67 = 0, $cmp80 = 0, $coding_quality = 0, $coding_quality16 = 0, $coding_quality310 = 0, $coding_quality99 = 0, $conv = 0.0, $conv13 = 0.0, $conv158 = 0.0, $conv160 = 0.0, $conv203 = 0.0, $conv204 = 0.0, $conv205 = 0.0, $conv224 = 0.0, $conv232 = 0.0; var $conv238 = 0, $conv250 = 0.0, $conv253 = 0.0, $conv26 = 0, $conv267 = 0.0, $conv274 = 0.0, $conv306 = 0, $conv318 = 0.0, $conv320 = 0.0, $conv34 = 0.0, $conv46 = 0, $conv56 = 0, $conv57 = 0, $conv6 = 0.0, $conv61 = 0.0, $conv63 = 0.0, $conv65 = 0.0, $conv71 = 0.0, $conv73 = 0.0, $conv78 = 0.0; var $conv97 = 0.0, $div = 0, $div113 = 0, $div251 = 0.0, $div254 = 0.0, $div275 = 0.0, $div95 = 0.0, $div98 = 0.0, $energy_variation = 0.0, $flat_part = 0, $fs_kHz = 0, $fs_kHz109 = 0, $fs_kHz249 = 0, $fs_kHz273 = 0, $gain_add = 0.0, $gain_mult = 0.0, $idx$neg = 0, $inc = 0, $inc200 = 0, $inc219 = 0; var $inc263 = 0, $inc300 = 0, $inc345 = 0, $indices = 0, $indices236 = 0, $indices304 = 0, $indices44 = 0, $indices51 = 0, $indices84 = 0, $input_quality = 0, $input_quality18 = 0, $input_quality312 = 0, $input_quality38 = 0, $input_quality_bands_Q15 = 0, $input_quality_bands_Q15222 = 0, $input_quality_bands_Q154 = 0, $k = 0, $la_shape = 0, $log_energy = 0.0, $log_energy_prev = 0.0; var $mul = 0.0, $mul100 = 0.0, $mul110 = 0, $mul117 = 0, $mul14 = 0.0, $mul144 = 0.0, $mul153 = 0, $mul168 = 0, $mul17 = 0.0, $mul175 = 0.0, $mul178 = 0, $mul188 = 0, $mul19 = 0.0, $mul202 = 0.0, $mul21 = 0.0, $mul214 = 0.0, $mul22 = 0.0, $mul225 = 0.0, $mul227 = 0.0, $mul229 = 0.0; var $mul23 = 0.0, $mul233 = 0.0, $mul234 = 0.0, $mul259 = 0.0, $mul268 = 0.0, $mul269 = 0.0, $mul280 = 0.0, $mul281 = 0.0, $mul30 = 0.0, $mul313 = 0.0, $mul315 = 0.0, $mul321 = 0.0, $mul331 = 0.0, $mul338 = 0.0, $mul35 = 0.0, $mul36 = 0.0, $mul40 = 0.0, $mul54 = 0, $mul58 = 0, $mul7 = 0.0; var $mul79 = 0.0, $mul8 = 0.0, $mul9 = 0.0, $mul92 = 0.0, $mul93 = 0.0, $nSamples = 0, $nSegs = 0, $nb_subfr = 0, $nb_subfr104 = 0, $nb_subfr208 = 0, $nb_subfr244 = 0, $nb_subfr287 = 0, $nb_subfr326 = 0, $nrg = 0.0, $pitchL = 0, $pitch_res$addr = 0, $pitch_res_ptr = 0, $predGain = 0, $psEnc$addr = 0, $psEncCtrl$addr = 0; var $psShapeSt = 0, $quantOffsetType = 0, $quantOffsetType85 = 0, $rc = 0, $sShape = 0, $shapeWinLength = 0, $shapeWinLength132 = 0, $shapeWinLength138 = 0, $shapingLPCOrder = 0, $shapingLPCOrder140 = 0, $shapingLPCOrder151 = 0, $shapingLPCOrder157 = 0, $shapingLPCOrder171 = 0, $shapingLPCOrder181 = 0, $shapingLPCOrder191 = 0, $shapingLPCOrder197 = 0, $shift = 0, $signalType = 0, $signalType237 = 0, $signalType305 = 0; var $signalType45 = 0, $slope_part = 0, $speech_activity_Q8 = 0, $speech_activity_Q8231 = 0, $speech_activity_Q8266 = 0, $strength = 0.0, $sub = 0.0, $sub112 = 0, $sub15 = 0.0, $sub226 = 0.0, $sub24 = 0.0, $sub258 = 0.0, $sub260 = 0.0, $sub270 = 0.0, $sub279 = 0.0, $sub282 = 0.0, $sub311 = 0.0, $sub314 = 0.0, $sub330 = 0.0, $sub337 = 0.0; var $sub39 = 0.0, $sub70 = 0.0, $sub77 = 0, $subfr_length = 0, $useCBR = 0, $warping = 0.0, $warping_Q16 = 0, $warping_Q16125 = 0, $warping_Q16163 = 0, $warping_Q16183 = 0, $x$addr = 0, $x_ptr = 0, $x_windowed = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 1280|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(1280|0); $x_windowed = sp + 224|0; $auto_corr = sp + 120|0; $rc = sp + 20|0; $psEnc$addr = $psEnc; $psEncCtrl$addr = $psEncCtrl; $pitch_res$addr = $pitch_res; $x$addr = $x; $0 = $psEnc$addr; $sShape = ((($0)) + 7164|0); $psShapeSt = $sShape; $1 = $x$addr; $2 = $psEnc$addr; $la_shape = ((($2)) + 4596|0); $3 = HEAP32[$la_shape>>2]|0; $idx$neg = (0 - ($3))|0; $add$ptr = (($1) + ($idx$neg<<2)|0); $x_ptr = $add$ptr; $4 = $psEnc$addr; $SNR_dB_Q7 = ((($4)) + 4712|0); $5 = HEAP32[$SNR_dB_Q7>>2]|0; $conv = (+($5|0)); $mul = $conv * 0.0078125; $SNR_adj_dB = $mul; $6 = $psEnc$addr; $input_quality_bands_Q15 = ((($6)) + 4692|0); $7 = HEAP32[$input_quality_bands_Q15>>2]|0; $8 = $psEnc$addr; $input_quality_bands_Q154 = ((($8)) + 4692|0); $arrayidx5 = ((($input_quality_bands_Q154)) + 4|0); $9 = HEAP32[$arrayidx5>>2]|0; $add = (($7) + ($9))|0; $conv6 = (+($add|0)); $mul7 = 0.5 * $conv6; $mul8 = $mul7 * 3.0517578125E-5; $10 = $psEncCtrl$addr; $input_quality = ((($10)) + 696|0); HEAPF32[$input_quality>>2] = $mul8; $11 = $SNR_adj_dB; $sub = $11 - 20.0; $mul9 = 0.25 * $sub; $call = (+_silk_sigmoid($mul9)); $12 = $psEncCtrl$addr; $coding_quality = ((($12)) + 700|0); HEAPF32[$coding_quality>>2] = $call; $13 = $psEnc$addr; $useCBR = ((($13)) + 4672|0); $14 = HEAP32[$useCBR>>2]|0; $cmp = ($14|0)==(0); if ($cmp) { $15 = $psEnc$addr; $speech_activity_Q8 = ((($15)) + 4528|0); $16 = HEAP32[$speech_activity_Q8>>2]|0; $conv13 = (+($16|0)); $mul14 = $conv13 * 0.00390625; $sub15 = 1.0 - $mul14; $b = $sub15; $17 = $psEncCtrl$addr; $coding_quality16 = ((($17)) + 700|0); $18 = +HEAPF32[$coding_quality16>>2]; $mul17 = 2.0 * $18; $19 = $psEncCtrl$addr; $input_quality18 = ((($19)) + 696|0); $20 = +HEAPF32[$input_quality18>>2]; $mul19 = 0.5 * $20; $add20 = 0.5 + $mul19; $mul21 = $mul17 * $add20; $21 = $b; $mul22 = $mul21 * $21; $22 = $b; $mul23 = $mul22 * $22; $23 = $SNR_adj_dB; $sub24 = $23 - $mul23; $SNR_adj_dB = $sub24; } $24 = $psEnc$addr; $indices = ((($24)) + 4732|0); $signalType = ((($indices)) + 29|0); $25 = HEAP8[$signalType>>0]|0; $conv26 = $25 << 24 >> 24; $cmp27 = ($conv26|0)==(2); $26 = $psEnc$addr; if ($cmp27) { $LTPCorr = ((($26)) + 10056|0); $27 = +HEAPF32[$LTPCorr>>2]; $mul30 = 2.0 * $27; $28 = $SNR_adj_dB; $add31 = $28 + $mul30; $SNR_adj_dB = $add31; } else { $SNR_dB_Q733 = ((($26)) + 4712|0); $29 = HEAP32[$SNR_dB_Q733>>2]|0; $conv34 = (+($29|0)); $mul35 = -0.40000000596046448 * $conv34; $mul36 = $mul35 * 0.0078125; $add37 = $mul36 + 6.0; $30 = $psEncCtrl$addr; $input_quality38 = ((($30)) + 696|0); $31 = +HEAPF32[$input_quality38>>2]; $sub39 = 1.0 - $31; $mul40 = $add37 * $sub39; $32 = $SNR_adj_dB; $add41 = $32 + $mul40; $SNR_adj_dB = $add41; } $33 = $psEnc$addr; $indices44 = ((($33)) + 4732|0); $signalType45 = ((($indices44)) + 29|0); $34 = HEAP8[$signalType45>>0]|0; $conv46 = $34 << 24 >> 24; $cmp47 = ($conv46|0)==(2); $35 = $psEnc$addr; if ($cmp47) { $indices51 = ((($35)) + 4732|0); $quantOffsetType = ((($indices51)) + 30|0); HEAP8[$quantOffsetType>>0] = 0; } else { $fs_kHz = ((($35)) + 4572|0); $36 = HEAP32[$fs_kHz>>2]|0; $mul54 = $36<<1; $nSamples = $mul54; $energy_variation = 0.0; $log_energy_prev = 0.0; $37 = $pitch_res$addr; $pitch_res_ptr = $37; $38 = $psEnc$addr; $nb_subfr = ((($38)) + 4576|0); $39 = HEAP32[$nb_subfr>>2]|0; $conv56 = $39&65535; $conv57 = $conv56 << 16 >> 16; $mul58 = ($conv57*5)|0; $div = (($mul58|0) / 2)&-1; $nSegs = $div; $k = 0; while(1) { $40 = $k; $41 = $nSegs; $cmp59 = ($40|0)<($41|0); if (!($cmp59)) { break; } $42 = $nSamples; $conv61 = (+($42|0)); $43 = $pitch_res_ptr; $44 = $nSamples; $call62 = (+_silk_energy_FLP($43,$44)); $conv63 = $call62; $add64 = $conv61 + $conv63; $nrg = $add64; $45 = $nrg; $conv65 = $45; $call66 = (+_silk_log2($conv65)); $log_energy = $call66; $46 = $k; $cmp67 = ($46|0)>(0); if ($cmp67) { $47 = $log_energy; $48 = $log_energy_prev; $sub70 = $47 - $48; $conv71 = $sub70; $call72 = (+Math_abs((+$conv71))); $conv73 = $call72; $49 = $energy_variation; $add74 = $49 + $conv73; $energy_variation = $add74; } $50 = $log_energy; $log_energy_prev = $50; $51 = $nSamples; $52 = $pitch_res_ptr; $add$ptr76 = (($52) + ($51<<2)|0); $pitch_res_ptr = $add$ptr76; $53 = $k; $inc = (($53) + 1)|0; $k = $inc; } $54 = $energy_variation; $55 = $nSegs; $sub77 = (($55) - 1)|0; $conv78 = (+($sub77|0)); $mul79 = 0.60000002384185791 * $conv78; $cmp80 = $54 > $mul79; $56 = $psEnc$addr; $indices84 = ((($56)) + 4732|0); $quantOffsetType85 = ((($indices84)) + 30|0); $$sink = $cmp80 ? 0 : 1; HEAP8[$quantOffsetType85>>0] = $$sink; } $57 = $psEncCtrl$addr; $predGain = ((($57)) + 704|0); $58 = +HEAPF32[$predGain>>2]; $mul92 = 0.0010000000474974513 * $58; $strength = $mul92; $59 = $strength; $60 = $strength; $mul93 = $59 * $60; $add94 = 1.0 + $mul93; $div95 = 0.93999999761581421 / $add94; $BWExp = $div95; $61 = $psEnc$addr; $warping_Q16 = ((($61)) + 4668|0); $62 = HEAP32[$warping_Q16>>2]|0; $conv97 = (+($62|0)); $div98 = $conv97 / 65536.0; $63 = $psEncCtrl$addr; $coding_quality99 = ((($63)) + 700|0); $64 = +HEAPF32[$coding_quality99>>2]; $mul100 = 0.0099999997764825821 * $64; $add101 = $div98 + $mul100; $warping = $add101; $k = 0; while(1) { $65 = $k; $66 = $psEnc$addr; $nb_subfr104 = ((($66)) + 4576|0); $67 = HEAP32[$nb_subfr104>>2]|0; $cmp105 = ($65|0)<($67|0); if (!($cmp105)) { break; } $68 = $psEnc$addr; $fs_kHz109 = ((($68)) + 4572|0); $69 = HEAP32[$fs_kHz109>>2]|0; $mul110 = ($69*3)|0; $flat_part = $mul110; $70 = $psEnc$addr; $shapeWinLength = ((($70)) + 4600|0); $71 = HEAP32[$shapeWinLength>>2]|0; $72 = $flat_part; $sub112 = (($71) - ($72))|0; $div113 = (($sub112|0) / 2)&-1; $slope_part = $div113; $73 = $x_ptr; $74 = $slope_part; _silk_apply_sine_window_FLP($x_windowed,$73,1,$74); $75 = $slope_part; $shift = $75; $76 = $shift; $add$ptr115 = (($x_windowed) + ($76<<2)|0); $77 = $x_ptr; $78 = $shift; $add$ptr116 = (($77) + ($78<<2)|0); $79 = $flat_part; $mul117 = $79<<2; _memcpy(($add$ptr115|0),($add$ptr116|0),($mul117|0))|0; $80 = $flat_part; $81 = $shift; $add118 = (($81) + ($80))|0; $shift = $add118; $82 = $shift; $add$ptr120 = (($x_windowed) + ($82<<2)|0); $83 = $x_ptr; $84 = $shift; $add$ptr121 = (($83) + ($84<<2)|0); $85 = $slope_part; _silk_apply_sine_window_FLP($add$ptr120,$add$ptr121,2,$85); $86 = $psEnc$addr; $subfr_length = ((($86)) + 4584|0); $87 = HEAP32[$subfr_length>>2]|0; $88 = $x_ptr; $add$ptr123 = (($88) + ($87<<2)|0); $x_ptr = $add$ptr123; $89 = $psEnc$addr; $warping_Q16125 = ((($89)) + 4668|0); $90 = HEAP32[$warping_Q16125>>2]|0; $cmp126 = ($90|0)>(0); if ($cmp126) { $91 = $warping; $92 = $psEnc$addr; $shapeWinLength132 = ((($92)) + 4600|0); $93 = HEAP32[$shapeWinLength132>>2]|0; $94 = $psEnc$addr; $shapingLPCOrder = ((($94)) + 4632|0); $95 = HEAP32[$shapingLPCOrder>>2]|0; _silk_warped_autocorrelation_FLP($auto_corr,$x_windowed,$91,$93,$95); } else { $96 = $psEnc$addr; $shapeWinLength138 = ((($96)) + 4600|0); $97 = HEAP32[$shapeWinLength138>>2]|0; $98 = $psEnc$addr; $shapingLPCOrder140 = ((($98)) + 4632|0); $99 = HEAP32[$shapingLPCOrder140>>2]|0; $add141 = (($99) + 1)|0; _silk_autocorrelation_FLP($auto_corr,$x_windowed,$97,$add141); } $100 = +HEAPF32[$auto_corr>>2]; $mul144 = $100 * 2.9999999242136255E-5; $add145 = $mul144 + 1.0; $101 = +HEAPF32[$auto_corr>>2]; $add147 = $101 + $add145; HEAPF32[$auto_corr>>2] = $add147; $102 = $psEnc$addr; $shapingLPCOrder151 = ((($102)) + 4632|0); $103 = HEAP32[$shapingLPCOrder151>>2]|0; $call152 = (+_silk_schur_FLP($rc,$auto_corr,$103)); $nrg = $call152; $104 = $psEncCtrl$addr; $AR = ((($104)) + 244|0); $105 = $k; $mul153 = ($105*24)|0; $arrayidx154 = (($AR) + ($mul153<<2)|0); $106 = $psEnc$addr; $shapingLPCOrder157 = ((($106)) + 4632|0); $107 = HEAP32[$shapingLPCOrder157>>2]|0; _silk_k2a_FLP($arrayidx154,$rc,$107); $108 = $nrg; $conv158 = $108; $call159 = (+Math_sqrt((+$conv158))); $conv160 = $call159; $109 = $psEncCtrl$addr; $110 = $k; $arrayidx161 = (($109) + ($110<<2)|0); HEAPF32[$arrayidx161>>2] = $conv160; $111 = $psEnc$addr; $warping_Q16163 = ((($111)) + 4668|0); $112 = HEAP32[$warping_Q16163>>2]|0; $cmp164 = ($112|0)>(0); if ($cmp164) { $113 = $psEncCtrl$addr; $AR167 = ((($113)) + 244|0); $114 = $k; $mul168 = ($114*24)|0; $arrayidx169 = (($AR167) + ($mul168<<2)|0); $115 = $warping; $116 = $psEnc$addr; $shapingLPCOrder171 = ((($116)) + 4632|0); $117 = HEAP32[$shapingLPCOrder171>>2]|0; $call172 = (+_warped_gain($arrayidx169,$115,$117)); $118 = $psEncCtrl$addr; $119 = $k; $arrayidx174 = (($118) + ($119<<2)|0); $120 = +HEAPF32[$arrayidx174>>2]; $mul175 = $120 * $call172; HEAPF32[$arrayidx174>>2] = $mul175; } $121 = $psEncCtrl$addr; $AR177 = ((($121)) + 244|0); $122 = $k; $mul178 = ($122*24)|0; $arrayidx179 = (($AR177) + ($mul178<<2)|0); $123 = $psEnc$addr; $shapingLPCOrder181 = ((($123)) + 4632|0); $124 = HEAP32[$shapingLPCOrder181>>2]|0; $125 = $BWExp; _silk_bwexpander_FLP($arrayidx179,$124,$125); $126 = $psEnc$addr; $warping_Q16183 = ((($126)) + 4668|0); $127 = HEAP32[$warping_Q16183>>2]|0; $cmp184 = ($127|0)>(0); $128 = $psEncCtrl$addr; $AR187 = ((($128)) + 244|0); $129 = $k; $mul188 = ($129*24)|0; $arrayidx189 = (($AR187) + ($mul188<<2)|0); if ($cmp184) { $130 = $warping; $131 = $psEnc$addr; $shapingLPCOrder191 = ((($131)) + 4632|0); $132 = HEAP32[$shapingLPCOrder191>>2]|0; _warped_true2monic_coefs($arrayidx189,$130,3.999000072479248,$132); } else { $133 = $psEnc$addr; $shapingLPCOrder197 = ((($133)) + 4632|0); $134 = HEAP32[$shapingLPCOrder197>>2]|0; _limit_coefs($arrayidx189,3.999000072479248,$134); } $135 = $k; $inc200 = (($135) + 1)|0; $k = $inc200; } $136 = $SNR_adj_dB; $mul202 = -0.15999999642372131 * $136; $conv203 = $mul202; $137 = (+Math_pow(2.0,(+$conv203))); $conv204 = $137; $gain_mult = $conv204; $138 = (+Math_pow(2.0,0.31999999284744263)); $conv205 = $138; $gain_add = $conv205; $k = 0; while(1) { $139 = $k; $140 = $psEnc$addr; $nb_subfr208 = ((($140)) + 4576|0); $141 = HEAP32[$nb_subfr208>>2]|0; $cmp209 = ($139|0)<($141|0); if (!($cmp209)) { break; } $142 = $gain_mult; $143 = $psEncCtrl$addr; $144 = $k; $arrayidx213 = (($143) + ($144<<2)|0); $145 = +HEAPF32[$arrayidx213>>2]; $mul214 = $145 * $142; HEAPF32[$arrayidx213>>2] = $mul214; $146 = $gain_add; $147 = $psEncCtrl$addr; $148 = $k; $arrayidx216 = (($147) + ($148<<2)|0); $149 = +HEAPF32[$arrayidx216>>2]; $add217 = $149 + $146; HEAPF32[$arrayidx216>>2] = $add217; $150 = $k; $inc219 = (($150) + 1)|0; $k = $inc219; } $151 = $psEnc$addr; $input_quality_bands_Q15222 = ((($151)) + 4692|0); $152 = HEAP32[$input_quality_bands_Q15222>>2]|0; $conv224 = (+($152|0)); $mul225 = $conv224 * 3.0517578125E-5; $sub226 = $mul225 - 1.0; $mul227 = 0.5 * $sub226; $add228 = 1.0 + $mul227; $mul229 = 4.0 * $add228; $strength = $mul229; $153 = $psEnc$addr; $speech_activity_Q8231 = ((($153)) + 4528|0); $154 = HEAP32[$speech_activity_Q8231>>2]|0; $conv232 = (+($154|0)); $mul233 = $conv232 * 0.00390625; $155 = $strength; $mul234 = $155 * $mul233; $strength = $mul234; $156 = $psEnc$addr; $indices236 = ((($156)) + 4732|0); $signalType237 = ((($indices236)) + 29|0); $157 = HEAP8[$signalType237>>0]|0; $conv238 = $157 << 24 >> 24; $cmp239 = ($conv238|0)==(2); if ($cmp239) { $k = 0; while(1) { $158 = $k; $159 = $psEnc$addr; $nb_subfr244 = ((($159)) + 4576|0); $160 = HEAP32[$nb_subfr244>>2]|0; $cmp245 = ($158|0)<($160|0); $161 = $psEnc$addr; if (!($cmp245)) { break; } $fs_kHz249 = ((($161)) + 4572|0); $162 = HEAP32[$fs_kHz249>>2]|0; $conv250 = (+($162|0)); $div251 = 0.20000000298023224 / $conv250; $163 = $psEncCtrl$addr; $pitchL = ((($163)) + 228|0); $164 = $k; $arrayidx252 = (($pitchL) + ($164<<2)|0); $165 = HEAP32[$arrayidx252>>2]|0; $conv253 = (+($165|0)); $div254 = 3.0 / $conv253; $add255 = $div251 + $div254; $b = $add255; $166 = $b; $add256 = -1.0 + $166; $167 = $psEncCtrl$addr; $LF_MA_shp = ((($167)) + 628|0); $168 = $k; $arrayidx257 = (($LF_MA_shp) + ($168<<2)|0); HEAPF32[$arrayidx257>>2] = $add256; $169 = $b; $sub258 = 1.0 - $169; $170 = $b; $171 = $strength; $mul259 = $170 * $171; $sub260 = $sub258 - $mul259; $172 = $psEncCtrl$addr; $LF_AR_shp = ((($172)) + 644|0); $173 = $k; $arrayidx261 = (($LF_AR_shp) + ($173<<2)|0); HEAPF32[$arrayidx261>>2] = $sub260; $174 = $k; $inc263 = (($174) + 1)|0; $k = $inc263; } $speech_activity_Q8266 = ((($161)) + 4528|0); $175 = HEAP32[$speech_activity_Q8266>>2]|0; $conv267 = (+($175|0)); $mul268 = 0.26249998807907104 * $conv267; $mul269 = $mul268 * 0.00390625; $sub270 = -0.25 - $mul269; $Tilt = $sub270; } else { $176 = $psEnc$addr; $fs_kHz273 = ((($176)) + 4572|0); $177 = HEAP32[$fs_kHz273>>2]|0; $conv274 = (+($177|0)); $div275 = 1.2999999523162842 / $conv274; $b = $div275; $178 = $b; $add276 = -1.0 + $178; $179 = $psEncCtrl$addr; $LF_MA_shp277 = ((($179)) + 628|0); HEAPF32[$LF_MA_shp277>>2] = $add276; $180 = $b; $sub279 = 1.0 - $180; $181 = $b; $182 = $strength; $mul280 = $181 * $182; $mul281 = $mul280 * 0.60000002384185791; $sub282 = $sub279 - $mul281; $183 = $psEncCtrl$addr; $LF_AR_shp283 = ((($183)) + 644|0); HEAPF32[$LF_AR_shp283>>2] = $sub282; $k = 1; while(1) { $184 = $k; $185 = $psEnc$addr; $nb_subfr287 = ((($185)) + 4576|0); $186 = HEAP32[$nb_subfr287>>2]|0; $cmp288 = ($184|0)<($186|0); if (!($cmp288)) { break; } $187 = $psEncCtrl$addr; $LF_MA_shp291 = ((($187)) + 628|0); $188 = +HEAPF32[$LF_MA_shp291>>2]; $189 = $psEncCtrl$addr; $LF_MA_shp293 = ((($189)) + 628|0); $190 = $k; $arrayidx294 = (($LF_MA_shp293) + ($190<<2)|0); HEAPF32[$arrayidx294>>2] = $188; $191 = $psEncCtrl$addr; $LF_AR_shp295 = ((($191)) + 644|0); $192 = +HEAPF32[$LF_AR_shp295>>2]; $193 = $psEncCtrl$addr; $LF_AR_shp297 = ((($193)) + 644|0); $194 = $k; $arrayidx298 = (($LF_AR_shp297) + ($194<<2)|0); HEAPF32[$arrayidx298>>2] = $192; $195 = $k; $inc300 = (($195) + 1)|0; $k = $inc300; } $Tilt = -0.25; } $196 = $psEnc$addr; $indices304 = ((($196)) + 4732|0); $signalType305 = ((($indices304)) + 29|0); $197 = HEAP8[$signalType305>>0]|0; $conv306 = $197 << 24 >> 24; $cmp307 = ($conv306|0)==(2); if ($cmp307) { $HarmShapeGain = 0.30000001192092896; $198 = $psEncCtrl$addr; $coding_quality310 = ((($198)) + 700|0); $199 = +HEAPF32[$coding_quality310>>2]; $sub311 = 1.0 - $199; $200 = $psEncCtrl$addr; $input_quality312 = ((($200)) + 696|0); $201 = +HEAPF32[$input_quality312>>2]; $mul313 = $sub311 * $201; $sub314 = 1.0 - $mul313; $mul315 = 0.20000000298023224 * $sub314; $202 = $HarmShapeGain; $add316 = $202 + $mul315; $HarmShapeGain = $add316; $203 = $psEnc$addr; $LTPCorr317 = ((($203)) + 10056|0); $204 = +HEAPF32[$LTPCorr317>>2]; $conv318 = $204; $call319 = (+Math_sqrt((+$conv318))); $conv320 = $call319; $205 = $HarmShapeGain; $mul321 = $205 * $conv320; $HarmShapeGain = $mul321; } else { $HarmShapeGain = 0.0; } $k = 0; while(1) { $206 = $k; $207 = $psEnc$addr; $nb_subfr326 = ((($207)) + 4576|0); $208 = HEAP32[$nb_subfr326>>2]|0; $cmp327 = ($206|0)<($208|0); if (!($cmp327)) { break; } $209 = $HarmShapeGain; $210 = $psShapeSt; $HarmShapeGain_smth = ((($210)) + 4|0); $211 = +HEAPF32[$HarmShapeGain_smth>>2]; $sub330 = $209 - $211; $mul331 = 0.40000000596046448 * $sub330; $212 = $psShapeSt; $HarmShapeGain_smth332 = ((($212)) + 4|0); $213 = +HEAPF32[$HarmShapeGain_smth332>>2]; $add333 = $213 + $mul331; HEAPF32[$HarmShapeGain_smth332>>2] = $add333; $214 = $psShapeSt; $HarmShapeGain_smth334 = ((($214)) + 4|0); $215 = +HEAPF32[$HarmShapeGain_smth334>>2]; $216 = $psEncCtrl$addr; $HarmShapeGain335 = ((($216)) + 676|0); $217 = $k; $arrayidx336 = (($HarmShapeGain335) + ($217<<2)|0); HEAPF32[$arrayidx336>>2] = $215; $218 = $Tilt; $219 = $psShapeSt; $Tilt_smth = ((($219)) + 8|0); $220 = +HEAPF32[$Tilt_smth>>2]; $sub337 = $218 - $220; $mul338 = 0.40000000596046448 * $sub337; $221 = $psShapeSt; $Tilt_smth339 = ((($221)) + 8|0); $222 = +HEAPF32[$Tilt_smth339>>2]; $add340 = $222 + $mul338; HEAPF32[$Tilt_smth339>>2] = $add340; $223 = $psShapeSt; $Tilt_smth341 = ((($223)) + 8|0); $224 = +HEAPF32[$Tilt_smth341>>2]; $225 = $psEncCtrl$addr; $Tilt342 = ((($225)) + 660|0); $226 = $k; $arrayidx343 = (($Tilt342) + ($226<<2)|0); HEAPF32[$arrayidx343>>2] = $224; $227 = $k; $inc345 = (($227) + 1)|0; $k = $inc345; } STACKTOP = sp;return; } function _silk_sigmoid($x) { $x = +$x; var $0 = 0.0, $add = 0.0, $call = 0.0, $conv = 0.0, $conv1 = 0.0, $div = 0.0, $sub = 0.0, $x$addr = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $x$addr = $x; $0 = $x$addr; $sub = - $0; $conv = $sub; $call = (+Math_exp((+$conv))); $add = 1.0 + $call; $div = 1.0 / $add; $conv1 = $div; STACKTOP = sp;return (+$conv1); } function _silk_log2($x) { $x = +$x; var $0 = 0.0, $call = 0.0, $conv = 0.0, $mul = 0.0, $x$addr = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $x$addr = $x; $0 = $x$addr; $call = (+_log10($0)); $mul = 3.32192809488736 * $call; $conv = $mul; STACKTOP = sp;return (+$conv); } function _warped_gain($coefs,$lambda,$order) { $coefs = $coefs|0; $lambda = +$lambda; $order = $order|0; var $0 = 0.0, $1 = 0, $10 = 0.0, $11 = 0, $2 = 0, $3 = 0.0, $4 = 0, $5 = 0, $6 = 0.0, $7 = 0.0, $8 = 0, $9 = 0, $add = 0.0, $arrayidx = 0, $arrayidx3 = 0, $cmp = 0, $coefs$addr = 0, $dec = 0, $div = 0.0, $gain = 0.0; var $i = 0, $lambda$addr = 0.0, $mul = 0.0, $order$addr = 0, $sub = 0.0, $sub1 = 0, $sub2 = 0, $sub5 = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $coefs$addr = $coefs; $lambda$addr = $lambda; $order$addr = $order; $0 = $lambda$addr; $sub = - $0; $lambda$addr = $sub; $1 = $coefs$addr; $2 = $order$addr; $sub1 = (($2) - 1)|0; $arrayidx = (($1) + ($sub1<<2)|0); $3 = +HEAPF32[$arrayidx>>2]; $gain = $3; $4 = $order$addr; $sub2 = (($4) - 2)|0; $i = $sub2; while(1) { $5 = $i; $cmp = ($5|0)>=(0); $6 = $lambda$addr; $7 = $gain; $mul = $6 * $7; if (!($cmp)) { break; } $8 = $coefs$addr; $9 = $i; $arrayidx3 = (($8) + ($9<<2)|0); $10 = +HEAPF32[$arrayidx3>>2]; $add = $mul + $10; $gain = $add; $11 = $i; $dec = (($11) + -1)|0; $i = $dec; } $sub5 = 1.0 - $mul; $div = 1.0 / $sub5; STACKTOP = sp;return (+$div); } function _warped_true2monic_coefs($coefs,$lambda,$limit,$order) { $coefs = $coefs|0; $lambda = +$lambda; $limit = +$limit; $order = $order|0; var $0 = 0, $1 = 0, $10 = 0.0, $11 = 0.0, $12 = 0, $13 = 0.0, $14 = 0, $15 = 0, $16 = 0.0, $17 = 0, $18 = 0, $19 = 0.0, $2 = 0.0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0.0; var $27 = 0.0, $28 = 0.0, $29 = 0.0, $3 = 0, $30 = 0, $31 = 0, $32 = 0.0, $33 = 0.0, $34 = 0, $35 = 0, $36 = 0.0, $37 = 0, $38 = 0, $39 = 0.0, $4 = 0, $40 = 0, $41 = 0, $42 = 0.0, $43 = 0, $44 = 0.0; var $45 = 0, $46 = 0, $47 = 0.0, $48 = 0, $49 = 0, $5 = 0.0, $50 = 0.0, $51 = 0, $52 = 0, $53 = 0.0, $54 = 0.0, $55 = 0.0, $56 = 0, $57 = 0, $58 = 0, $59 = 0.0, $6 = 0, $60 = 0, $61 = 0, $62 = 0.0; var $63 = 0, $64 = 0, $65 = 0.0, $66 = 0, $67 = 0, $68 = 0.0, $69 = 0, $7 = 0, $70 = 0.0, $71 = 0.0, $72 = 0, $73 = 0.0, $74 = 0, $75 = 0, $76 = 0.0, $77 = 0, $78 = 0, $79 = 0.0, $8 = 0.0, $80 = 0; var $81 = 0, $9 = 0, $add = 0.0, $add40 = 0.0, $add56 = 0.0, $add59 = 0, $add81 = 0.0, $arrayidx = 0, $arrayidx11 = 0, $arrayidx2 = 0, $arrayidx21 = 0, $arrayidx36 = 0, $arrayidx39 = 0, $arrayidx49 = 0, $arrayidx69 = 0, $arrayidx72 = 0, $arrayidx87 = 0, $call = 0.0, $chirp = 0.0, $cmp = 0; var $cmp16 = 0, $cmp19 = 0, $cmp23 = 0, $cmp28 = 0, $cmp33 = 0, $cmp46 = 0, $cmp66 = 0, $cmp84 = 0, $cmp9 = 0, $coefs$addr = 0, $conv = 0.0, $conv22 = 0.0, $conv54 = 0.0, $conv60 = 0.0, $dec = 0, $dec75 = 0, $div = 0.0, $div44 = 0.0, $div62 = 0.0, $div82 = 0.0; var $gain = 0.0, $i = 0, $inc = 0, $inc26 = 0, $inc42 = 0, $inc52 = 0, $inc90 = 0, $inc93 = 0, $ind = 0, $iter = 0, $lambda$addr = 0.0, $limit$addr = 0.0, $maxabs = 0.0, $mul = 0.0, $mul12 = 0.0, $mul37 = 0.0, $mul4 = 0.0, $mul50 = 0.0, $mul55 = 0.0, $mul58 = 0.0; var $mul61 = 0.0, $mul7 = 0.0, $mul70 = 0.0, $mul77 = 0.0, $mul80 = 0.0, $mul88 = 0.0, $order$addr = 0, $sub = 0, $sub1 = 0, $sub3 = 0.0, $sub38 = 0, $sub5 = 0.0, $sub57 = 0.0, $sub63 = 0.0, $sub64 = 0, $sub71 = 0, $sub73 = 0.0, $sub78 = 0.0, $tmp = 0.0, label = 0; var sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $coefs$addr = $coefs; $lambda$addr = $lambda; $limit$addr = $limit; $order$addr = $order; $ind = 0; $0 = $order$addr; $sub = (($0) - 1)|0; $i = $sub; while(1) { $1 = $i; $cmp = ($1|0)>(0); $2 = $lambda$addr; if (!($cmp)) { break; } $3 = $coefs$addr; $4 = $i; $arrayidx = (($3) + ($4<<2)|0); $5 = +HEAPF32[$arrayidx>>2]; $mul = $2 * $5; $6 = $coefs$addr; $7 = $i; $sub1 = (($7) - 1)|0; $arrayidx2 = (($6) + ($sub1<<2)|0); $8 = +HEAPF32[$arrayidx2>>2]; $sub3 = $8 - $mul; HEAPF32[$arrayidx2>>2] = $sub3; $9 = $i; $dec = (($9) + -1)|0; $i = $dec; } $10 = $lambda$addr; $mul4 = $2 * $10; $sub5 = 1.0 - $mul4; $11 = $lambda$addr; $12 = $coefs$addr; $13 = +HEAPF32[$12>>2]; $mul7 = $11 * $13; $add = 1.0 + $mul7; $div = $sub5 / $add; $gain = $div; $i = 0; while(1) { $14 = $i; $15 = $order$addr; $cmp9 = ($14|0)<($15|0); if (!($cmp9)) { break; } $16 = $gain; $17 = $coefs$addr; $18 = $i; $arrayidx11 = (($17) + ($18<<2)|0); $19 = +HEAPF32[$arrayidx11>>2]; $mul12 = $19 * $16; HEAPF32[$arrayidx11>>2] = $mul12; $20 = $i; $inc = (($20) + 1)|0; $i = $inc; } $iter = 0; while(1) { $21 = $iter; $cmp16 = ($21|0)<(10); if (!($cmp16)) { label = 28; break; } $maxabs = -1.0; $i = 0; while(1) { $22 = $i; $23 = $order$addr; $cmp19 = ($22|0)<($23|0); if (!($cmp19)) { break; } $24 = $coefs$addr; $25 = $i; $arrayidx21 = (($24) + ($25<<2)|0); $26 = +HEAPF32[$arrayidx21>>2]; $conv = $26; $call = (+Math_abs((+$conv))); $conv22 = $call; $tmp = $conv22; $27 = $tmp; $28 = $maxabs; $cmp23 = $27 > $28; if ($cmp23) { $29 = $tmp; $maxabs = $29; $30 = $i; $ind = $30; } $31 = $i; $inc26 = (($31) + 1)|0; $i = $inc26; } $32 = $maxabs; $33 = $limit$addr; $cmp28 = $32 <= $33; if ($cmp28) { label = 28; break; } $i = 1; while(1) { $34 = $i; $35 = $order$addr; $cmp33 = ($34|0)<($35|0); if (!($cmp33)) { break; } $36 = $lambda$addr; $37 = $coefs$addr; $38 = $i; $arrayidx36 = (($37) + ($38<<2)|0); $39 = +HEAPF32[$arrayidx36>>2]; $mul37 = $36 * $39; $40 = $coefs$addr; $41 = $i; $sub38 = (($41) - 1)|0; $arrayidx39 = (($40) + ($sub38<<2)|0); $42 = +HEAPF32[$arrayidx39>>2]; $add40 = $42 + $mul37; HEAPF32[$arrayidx39>>2] = $add40; $43 = $i; $inc42 = (($43) + 1)|0; $i = $inc42; } $44 = $gain; $div44 = 1.0 / $44; $gain = $div44; $i = 0; while(1) { $45 = $i; $46 = $order$addr; $cmp46 = ($45|0)<($46|0); if (!($cmp46)) { break; } $47 = $gain; $48 = $coefs$addr; $49 = $i; $arrayidx49 = (($48) + ($49<<2)|0); $50 = +HEAPF32[$arrayidx49>>2]; $mul50 = $50 * $47; HEAPF32[$arrayidx49>>2] = $mul50; $51 = $i; $inc52 = (($51) + 1)|0; $i = $inc52; } $52 = $iter; $conv54 = (+($52|0)); $mul55 = 0.10000000149011612 * $conv54; $add56 = 0.80000001192092896 + $mul55; $53 = $maxabs; $54 = $limit$addr; $sub57 = $53 - $54; $mul58 = $add56 * $sub57; $55 = $maxabs; $56 = $ind; $add59 = (($56) + 1)|0; $conv60 = (+($add59|0)); $mul61 = $55 * $conv60; $div62 = $mul58 / $mul61; $sub63 = 0.99000000953674316 - $div62; $chirp = $sub63; $57 = $coefs$addr; $58 = $order$addr; $59 = $chirp; _silk_bwexpander_FLP($57,$58,$59); $60 = $order$addr; $sub64 = (($60) - 1)|0; $i = $sub64; while(1) { $61 = $i; $cmp66 = ($61|0)>(0); $62 = $lambda$addr; if (!($cmp66)) { break; } $63 = $coefs$addr; $64 = $i; $arrayidx69 = (($63) + ($64<<2)|0); $65 = +HEAPF32[$arrayidx69>>2]; $mul70 = $62 * $65; $66 = $coefs$addr; $67 = $i; $sub71 = (($67) - 1)|0; $arrayidx72 = (($66) + ($sub71<<2)|0); $68 = +HEAPF32[$arrayidx72>>2]; $sub73 = $68 - $mul70; HEAPF32[$arrayidx72>>2] = $sub73; $69 = $i; $dec75 = (($69) + -1)|0; $i = $dec75; } $70 = $lambda$addr; $mul77 = $62 * $70; $sub78 = 1.0 - $mul77; $71 = $lambda$addr; $72 = $coefs$addr; $73 = +HEAPF32[$72>>2]; $mul80 = $71 * $73; $add81 = 1.0 + $mul80; $div82 = $sub78 / $add81; $gain = $div82; $i = 0; while(1) { $74 = $i; $75 = $order$addr; $cmp84 = ($74|0)<($75|0); if (!($cmp84)) { break; } $76 = $gain; $77 = $coefs$addr; $78 = $i; $arrayidx87 = (($77) + ($78<<2)|0); $79 = +HEAPF32[$arrayidx87>>2]; $mul88 = $79 * $76; HEAPF32[$arrayidx87>>2] = $mul88; $80 = $i; $inc90 = (($80) + 1)|0; $i = $inc90; } $81 = $iter; $inc93 = (($81) + 1)|0; $iter = $inc93; } if ((label|0) == 28) { STACKTOP = sp;return; } } function _limit_coefs($coefs,$limit,$order) { $coefs = $coefs|0; $limit = +$limit; $order = $order|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0.0, $12 = 0.0, $13 = 0, $14 = 0.0, $15 = 0.0, $16 = 0.0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0.0, $21 = 0, $3 = 0, $4 = 0, $5 = 0.0, $6 = 0.0, $7 = 0.0; var $8 = 0.0, $9 = 0, $add = 0.0, $add13 = 0, $arrayidx = 0, $call = 0.0, $chirp = 0.0, $cmp = 0, $cmp2 = 0, $cmp5 = 0, $cmp7 = 0, $coefs$addr = 0, $conv = 0.0, $conv11 = 0.0, $conv14 = 0.0, $conv4 = 0.0, $div = 0.0, $i = 0, $inc = 0, $inc18 = 0; var $ind = 0, $iter = 0, $limit$addr = 0.0, $maxabs = 0.0, $mul = 0.0, $mul12 = 0.0, $mul15 = 0.0, $order$addr = 0, $sub = 0.0, $sub16 = 0.0, $tmp = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $coefs$addr = $coefs; $limit$addr = $limit; $order$addr = $order; $ind = 0; $iter = 0; while(1) { $0 = $iter; $cmp = ($0|0)<(10); if (!($cmp)) { label = 10; break; } $maxabs = -1.0; $i = 0; while(1) { $1 = $i; $2 = $order$addr; $cmp2 = ($1|0)<($2|0); if (!($cmp2)) { break; } $3 = $coefs$addr; $4 = $i; $arrayidx = (($3) + ($4<<2)|0); $5 = +HEAPF32[$arrayidx>>2]; $conv = $5; $call = (+Math_abs((+$conv))); $conv4 = $call; $tmp = $conv4; $6 = $tmp; $7 = $maxabs; $cmp5 = $6 > $7; if ($cmp5) { $8 = $tmp; $maxabs = $8; $9 = $i; $ind = $9; } $10 = $i; $inc = (($10) + 1)|0; $i = $inc; } $11 = $maxabs; $12 = $limit$addr; $cmp7 = $11 <= $12; if ($cmp7) { label = 10; break; } $13 = $iter; $conv11 = (+($13|0)); $mul = 0.10000000149011612 * $conv11; $add = 0.80000001192092896 + $mul; $14 = $maxabs; $15 = $limit$addr; $sub = $14 - $15; $mul12 = $add * $sub; $16 = $maxabs; $17 = $ind; $add13 = (($17) + 1)|0; $conv14 = (+($add13|0)); $mul15 = $16 * $conv14; $div = $mul12 / $mul15; $sub16 = 0.99000000953674316 - $div; $chirp = $sub16; $18 = $coefs$addr; $19 = $order$addr; $20 = $chirp; _silk_bwexpander_FLP($18,$19,$20); $21 = $iter; $inc18 = (($21) + 1)|0; $iter = $inc18; } if ((label|0) == 10) { STACKTOP = sp;return; } } function _silk_process_gains_FLP($psEnc,$psEncCtrl,$condCoding) { $psEnc = $psEnc|0; $psEncCtrl = $psEncCtrl|0; $condCoding = $condCoding|0; var $$sink = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0.0, $12 = 0, $13 = 0, $14 = 0, $15 = 0.0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0.0, $24 = 0.0, $25 = 0.0; var $26 = 0, $27 = 0, $28 = 0.0, $29 = 0.0, $3 = 0, $30 = 0.0, $31 = 0.0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0.0, $40 = 0.0, $41 = 0, $42 = 0, $43 = 0; var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; var $62 = 0, $63 = 0, $64 = 0.0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0.0, $79 = 0, $8 = 0.0; var $80 = 0.0, $81 = 0.0, $82 = 0, $9 = 0, $GainsUnq_Q16 = 0, $InvMaxSqrVal = 0.0, $LTPredCodGain = 0, $LTPredCodGain86 = 0, $Lambda = 0, $ResNrg = 0, $SNR_dB_Q7 = 0, $add = 0.0, $add116 = 0.0, $add121 = 0.0, $add123 = 0.0, $add125 = 0.0, $add127 = 0.0, $add90 = 0.0, $arrayidx = 0, $arrayidx105 = 0; var $arrayidx109 = 0, $arrayidx24 = 0, $arrayidx26 = 0, $arrayidx34 = 0, $arrayidx45 = 0, $arrayidx48 = 0, $arrayidx71 = 0, $arrayidx75 = 0, $call = 0.0, $call29 = 0.0, $cmp = 0, $cmp20 = 0, $cmp31 = 0, $cmp41 = 0, $cmp5 = 0, $cmp61 = 0, $cmp68 = 0, $cmp83 = 0, $cmp91 = 0, $coding_quality = 0; var $cond = 0.0, $condCoding$addr = 0, $conv = 0, $conv104 = 0, $conv110 = 0, $conv111 = 0.0, $conv114 = 0.0, $conv118 = 0.0, $conv13 = 0.0, $conv15 = 0.0, $conv16 = 0.0, $conv28 = 0.0, $conv30 = 0.0, $conv47 = 0, $conv62 = 0, $conv72 = 0.0, $conv82 = 0, $conv88 = 0.0, $conv9 = 0.0, $div = 0.0; var $div112 = 0.0, $div73 = 0.0, $gain = 0.0, $idxprom = 0, $inc = 0, $inc36 = 0, $inc50 = 0, $inc77 = 0, $indices = 0, $indices102 = 0, $indices107 = 0, $indices57 = 0, $indices80 = 0, $indices95 = 0, $input_quality = 0, $input_tilt_Q15 = 0, $k = 0, $lastGainIndexPrev = 0, $mul = 0.0, $mul10 = 0.0; var $mul115 = 0.0, $mul119 = 0.0, $mul12 = 0.0, $mul120 = 0.0, $mul122 = 0.0, $mul124 = 0.0, $mul126 = 0.0, $mul2 = 0.0, $mul25 = 0.0, $mul27 = 0.0, $mul46 = 0.0, $mul55 = 0, $mul7 = 0.0, $mul89 = 0.0, $nStatesDelayedDecision = 0, $nb_subfr = 0, $nb_subfr19 = 0, $nb_subfr40 = 0, $nb_subfr54 = 0, $nb_subfr64 = 0; var $nb_subfr67 = 0, $pGains_Q16 = 0, $psEnc$addr = 0, $psEncCtrl$addr = 0, $psShapeSt = 0, $quantOffsetType = 0, $quantOffsetType108 = 0, $quant_offset = 0.0, $s = 0.0, $sShape = 0, $shr = 0, $signalType = 0, $signalType103 = 0, $signalType81 = 0, $speech_activity_Q8 = 0, $sub = 0.0, $sub11 = 0.0, $sub3 = 0.0, $subfr_length = 0, label = 0; var sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $pGains_Q16 = sp + 16|0; $psEnc$addr = $psEnc; $psEncCtrl$addr = $psEncCtrl; $condCoding$addr = $condCoding; $0 = $psEnc$addr; $sShape = ((($0)) + 7164|0); $psShapeSt = $sShape; $1 = $psEnc$addr; $indices = ((($1)) + 4732|0); $signalType = ((($indices)) + 29|0); $2 = HEAP8[$signalType>>0]|0; $conv = $2 << 24 >> 24; $cmp = ($conv|0)==(2); L1: do { if ($cmp) { $3 = $psEncCtrl$addr; $LTPredCodGain = ((($3)) + 708|0); $4 = +HEAPF32[$LTPredCodGain>>2]; $sub = $4 - 12.0; $mul = 0.25 * $sub; $call = (+_silk_sigmoid_302($mul)); $mul2 = 0.5 * $call; $sub3 = 1.0 - $mul2; $s = $sub3; $k = 0; while(1) { $5 = $k; $6 = $psEnc$addr; $nb_subfr = ((($6)) + 4576|0); $7 = HEAP32[$nb_subfr>>2]|0; $cmp5 = ($5|0)<($7|0); if (!($cmp5)) { break L1; } $8 = $s; $9 = $psEncCtrl$addr; $10 = $k; $arrayidx = (($9) + ($10<<2)|0); $11 = +HEAPF32[$arrayidx>>2]; $mul7 = $11 * $8; HEAPF32[$arrayidx>>2] = $mul7; $12 = $k; $inc = (($12) + 1)|0; $k = $inc; } } } while(0); $13 = $psEnc$addr; $SNR_dB_Q7 = ((($13)) + 4712|0); $14 = HEAP32[$SNR_dB_Q7>>2]|0; $conv9 = (+($14|0)); $mul10 = $conv9 * 0.0078125; $sub11 = 21.0 - $mul10; $mul12 = 0.33000001311302185 * $sub11; $conv13 = $mul12; $15 = (+Math_pow(2.0,(+$conv13))); $16 = $psEnc$addr; $subfr_length = ((($16)) + 4584|0); $17 = HEAP32[$subfr_length>>2]|0; $conv15 = (+($17|0)); $div = $15 / $conv15; $conv16 = $div; $InvMaxSqrVal = $conv16; $k = 0; while(1) { $18 = $k; $19 = $psEnc$addr; $nb_subfr19 = ((($19)) + 4576|0); $20 = HEAP32[$nb_subfr19>>2]|0; $cmp20 = ($18|0)<($20|0); if (!($cmp20)) { break; } $21 = $psEncCtrl$addr; $22 = $k; $arrayidx24 = (($21) + ($22<<2)|0); $23 = +HEAPF32[$arrayidx24>>2]; $gain = $23; $24 = $gain; $25 = $gain; $mul25 = $24 * $25; $26 = $psEncCtrl$addr; $ResNrg = ((($26)) + 712|0); $27 = $k; $arrayidx26 = (($ResNrg) + ($27<<2)|0); $28 = +HEAPF32[$arrayidx26>>2]; $29 = $InvMaxSqrVal; $mul27 = $28 * $29; $add = $mul25 + $mul27; $conv28 = $add; $call29 = (+Math_sqrt((+$conv28))); $conv30 = $call29; $gain = $conv30; $30 = $gain; $cmp31 = $30 < 32767.0; $31 = $gain; $cond = $cmp31 ? $31 : 32767.0; $32 = $psEncCtrl$addr; $33 = $k; $arrayidx34 = (($32) + ($33<<2)|0); HEAPF32[$arrayidx34>>2] = $cond; $34 = $k; $inc36 = (($34) + 1)|0; $k = $inc36; } $k = 0; while(1) { $35 = $k; $36 = $psEnc$addr; $nb_subfr40 = ((($36)) + 4576|0); $37 = HEAP32[$nb_subfr40>>2]|0; $cmp41 = ($35|0)<($37|0); $38 = $psEncCtrl$addr; if (!($cmp41)) { break; } $39 = $k; $arrayidx45 = (($38) + ($39<<2)|0); $40 = +HEAPF32[$arrayidx45>>2]; $mul46 = $40 * 65536.0; $conv47 = (~~(($mul46))); $41 = $k; $arrayidx48 = (($pGains_Q16) + ($41<<2)|0); HEAP32[$arrayidx48>>2] = $conv47; $42 = $k; $inc50 = (($42) + 1)|0; $k = $inc50; } $GainsUnq_Q16 = ((($38)) + 728|0); $43 = $psEnc$addr; $nb_subfr54 = ((($43)) + 4576|0); $44 = HEAP32[$nb_subfr54>>2]|0; $mul55 = $44<<2; _memcpy(($GainsUnq_Q16|0),($pGains_Q16|0),($mul55|0))|0; $45 = $psShapeSt; $46 = HEAP8[$45>>0]|0; $47 = $psEncCtrl$addr; $lastGainIndexPrev = ((($47)) + 744|0); HEAP8[$lastGainIndexPrev>>0] = $46; $48 = $psEnc$addr; $indices57 = ((($48)) + 4732|0); $49 = $psShapeSt; $50 = $condCoding$addr; $cmp61 = ($50|0)==(2); $conv62 = $cmp61&1; $51 = $psEnc$addr; $nb_subfr64 = ((($51)) + 4576|0); $52 = HEAP32[$nb_subfr64>>2]|0; _silk_gains_quant($indices57,$pGains_Q16,$49,$conv62,$52); $k = 0; while(1) { $53 = $k; $54 = $psEnc$addr; $nb_subfr67 = ((($54)) + 4576|0); $55 = HEAP32[$nb_subfr67>>2]|0; $cmp68 = ($53|0)<($55|0); if (!($cmp68)) { break; } $56 = $k; $arrayidx71 = (($pGains_Q16) + ($56<<2)|0); $57 = HEAP32[$arrayidx71>>2]|0; $conv72 = (+($57|0)); $div73 = $conv72 / 65536.0; $58 = $psEncCtrl$addr; $59 = $k; $arrayidx75 = (($58) + ($59<<2)|0); HEAPF32[$arrayidx75>>2] = $div73; $60 = $k; $inc77 = (($60) + 1)|0; $k = $inc77; } $61 = $psEnc$addr; $indices80 = ((($61)) + 4732|0); $signalType81 = ((($indices80)) + 29|0); $62 = HEAP8[$signalType81>>0]|0; $conv82 = $62 << 24 >> 24; $cmp83 = ($conv82|0)==(2); if ($cmp83) { $63 = $psEncCtrl$addr; $LTPredCodGain86 = ((($63)) + 708|0); $64 = +HEAPF32[$LTPredCodGain86>>2]; $65 = $psEnc$addr; $input_tilt_Q15 = ((($65)) + 4708|0); $66 = HEAP32[$input_tilt_Q15>>2]|0; $conv88 = (+($66|0)); $mul89 = $conv88 * 3.0517578125E-5; $add90 = $64 + $mul89; $cmp91 = $add90 > 1.0; $67 = $psEnc$addr; $indices95 = ((($67)) + 4732|0); $quantOffsetType = ((($indices95)) + 30|0); $$sink = $cmp91 ? 0 : 1; HEAP8[$quantOffsetType>>0] = $$sink; } $68 = $psEnc$addr; $indices102 = ((($68)) + 4732|0); $signalType103 = ((($indices102)) + 29|0); $69 = HEAP8[$signalType103>>0]|0; $conv104 = $69 << 24 >> 24; $shr = $conv104 >> 1; $arrayidx105 = (23512 + ($shr<<2)|0); $70 = $psEnc$addr; $indices107 = ((($70)) + 4732|0); $quantOffsetType108 = ((($indices107)) + 30|0); $71 = HEAP8[$quantOffsetType108>>0]|0; $idxprom = $71 << 24 >> 24; $arrayidx109 = (($arrayidx105) + ($idxprom<<1)|0); $72 = HEAP16[$arrayidx109>>1]|0; $conv110 = $72 << 16 >> 16; $conv111 = (+($conv110|0)); $div112 = $conv111 / 1024.0; $quant_offset = $div112; $73 = $psEnc$addr; $nStatesDelayedDecision = ((($73)) + 4624|0); $74 = HEAP32[$nStatesDelayedDecision>>2]|0; $conv114 = (+($74|0)); $mul115 = -0.05000000074505806 * $conv114; $add116 = 1.2000000476837158 + $mul115; $75 = $psEnc$addr; $speech_activity_Q8 = ((($75)) + 4528|0); $76 = HEAP32[$speech_activity_Q8>>2]|0; $conv118 = (+($76|0)); $mul119 = -0.20000000298023224 * $conv118; $mul120 = $mul119 * 0.00390625; $add121 = $add116 + $mul120; $77 = $psEncCtrl$addr; $input_quality = ((($77)) + 696|0); $78 = +HEAPF32[$input_quality>>2]; $mul122 = -0.10000000149011612 * $78; $add123 = $add121 + $mul122; $79 = $psEncCtrl$addr; $coding_quality = ((($79)) + 700|0); $80 = +HEAPF32[$coding_quality>>2]; $mul124 = -0.20000000298023224 * $80; $add125 = $add123 + $mul124; $81 = $quant_offset; $mul126 = 0.80000001192092896 * $81; $add127 = $add125 + $mul126; $82 = $psEncCtrl$addr; $Lambda = ((($82)) + 692|0); HEAPF32[$Lambda>>2] = $add127; STACKTOP = sp;return; } function _silk_sigmoid_302($x) { $x = +$x; var $0 = 0.0, $add = 0.0, $call = 0.0, $conv = 0.0, $conv1 = 0.0, $div = 0.0, $sub = 0.0, $x$addr = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $x$addr = $x; $0 = $x$addr; $sub = - $0; $conv = $sub; $call = (+Math_exp((+$conv))); $add = 1.0 + $call; $div = 1.0 / $add; $conv1 = $div; STACKTOP = sp;return (+$conv1); } function _silk_residual_energy_FLP($nrgs,$x,$a,$gains,$subfr_length,$nb_subfr,$LPC_order) { $nrgs = $nrgs|0; $x = $x|0; $a = $a|0; $gains = $gains|0; $subfr_length = $subfr_length|0; $nb_subfr = $nb_subfr|0; $LPC_order = $LPC_order|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0.0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0.0, $18 = 0, $19 = 0.0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0.0, $32 = 0, $33 = 0.0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0.0, $4 = 0, $40 = 0, $41 = 0.0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0.0, $LPC_order$addr = 0, $LPC_res = 0, $LPC_res_ptr = 0, $a$addr = 0, $add = 0, $add$ptr = 0, $add$ptr18 = 0, $add$ptr28 = 0, $add$ptr3 = 0, $add$ptr35 = 0, $add$ptr45 = 0, $add$ptr9 = 0, $arrayidx13 = 0, $arrayidx14 = 0; var $arrayidx22 = 0, $arrayidx25 = 0, $arrayidx30 = 0, $arrayidx31 = 0, $arrayidx39 = 0, $arrayidx40 = 0, $arrayidx41 = 0, $arrayidx49 = 0, $call = 0.0, $call19 = 0.0, $call36 = 0.0, $call46 = 0.0, $cmp = 0, $conv = 0.0, $conv11 = 0.0, $conv16 = 0.0, $conv21 = 0.0, $conv33 = 0.0, $conv38 = 0.0, $conv43 = 0.0; var $conv48 = 0.0, $gains$addr = 0, $mul = 0, $mul10 = 0.0, $mul15 = 0.0, $mul17 = 0, $mul20 = 0.0, $mul27 = 0, $mul29 = 0, $mul32 = 0.0, $mul34 = 0, $mul37 = 0.0, $mul4 = 0, $mul42 = 0.0, $mul44 = 0, $mul47 = 0.0, $mul7 = 0.0, $mul8 = 0, $nb_subfr$addr = 0, $nrgs$addr = 0; var $shift = 0, $subfr_length$addr = 0, $x$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 816|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(816|0); $LPC_res = sp; $nrgs$addr = $nrgs; $x$addr = $x; $a$addr = $a; $gains$addr = $gains; $subfr_length$addr = $subfr_length; $nb_subfr$addr = $nb_subfr; $LPC_order$addr = $LPC_order; $0 = $LPC_order$addr; $add$ptr = (($LPC_res) + ($0<<2)|0); $LPC_res_ptr = $add$ptr; $1 = $LPC_order$addr; $2 = $subfr_length$addr; $add = (($1) + ($2))|0; $shift = $add; $3 = $a$addr; $4 = $x$addr; $5 = $shift; $mul = 0; $add$ptr3 = (($4) + ($mul<<2)|0); $6 = $shift; $mul4 = $6<<1; $7 = $LPC_order$addr; _silk_LPC_analysis_filter_FLP($LPC_res,$3,$add$ptr3,$mul4,$7); $8 = $gains$addr; $9 = +HEAPF32[$8>>2]; $10 = $gains$addr; $11 = +HEAPF32[$10>>2]; $mul7 = $9 * $11; $conv = $mul7; $12 = $LPC_res_ptr; $13 = $shift; $mul8 = 0; $add$ptr9 = (($12) + ($mul8<<2)|0); $14 = $subfr_length$addr; $call = (+_silk_energy_FLP($add$ptr9,$14)); $mul10 = $conv * $call; $conv11 = $mul10; $15 = $nrgs$addr; HEAPF32[$15>>2] = $conv11; $16 = $gains$addr; $arrayidx13 = ((($16)) + 4|0); $17 = +HEAPF32[$arrayidx13>>2]; $18 = $gains$addr; $arrayidx14 = ((($18)) + 4|0); $19 = +HEAPF32[$arrayidx14>>2]; $mul15 = $17 * $19; $conv16 = $mul15; $20 = $LPC_res_ptr; $21 = $shift; $mul17 = $21; $add$ptr18 = (($20) + ($mul17<<2)|0); $22 = $subfr_length$addr; $call19 = (+_silk_energy_FLP($add$ptr18,$22)); $mul20 = $conv16 * $call19; $conv21 = $mul20; $23 = $nrgs$addr; $arrayidx22 = ((($23)) + 4|0); HEAPF32[$arrayidx22>>2] = $conv21; $24 = $nb_subfr$addr; $cmp = ($24|0)==(4); if (!($cmp)) { STACKTOP = sp;return; } $25 = $a$addr; $arrayidx25 = ((($25)) + 64|0); $26 = $x$addr; $27 = $shift; $mul27 = $27<<1; $add$ptr28 = (($26) + ($mul27<<2)|0); $28 = $shift; $mul29 = $28<<1; $29 = $LPC_order$addr; _silk_LPC_analysis_filter_FLP($LPC_res,$arrayidx25,$add$ptr28,$mul29,$29); $30 = $gains$addr; $arrayidx30 = ((($30)) + 8|0); $31 = +HEAPF32[$arrayidx30>>2]; $32 = $gains$addr; $arrayidx31 = ((($32)) + 8|0); $33 = +HEAPF32[$arrayidx31>>2]; $mul32 = $31 * $33; $conv33 = $mul32; $34 = $LPC_res_ptr; $35 = $shift; $mul34 = 0; $add$ptr35 = (($34) + ($mul34<<2)|0); $36 = $subfr_length$addr; $call36 = (+_silk_energy_FLP($add$ptr35,$36)); $mul37 = $conv33 * $call36; $conv38 = $mul37; $37 = $nrgs$addr; $arrayidx39 = ((($37)) + 8|0); HEAPF32[$arrayidx39>>2] = $conv38; $38 = $gains$addr; $arrayidx40 = ((($38)) + 12|0); $39 = +HEAPF32[$arrayidx40>>2]; $40 = $gains$addr; $arrayidx41 = ((($40)) + 12|0); $41 = +HEAPF32[$arrayidx41>>2]; $mul42 = $39 * $41; $conv43 = $mul42; $42 = $LPC_res_ptr; $43 = $shift; $mul44 = $43; $add$ptr45 = (($42) + ($mul44<<2)|0); $44 = $subfr_length$addr; $call46 = (+_silk_energy_FLP($add$ptr45,$44)); $mul47 = $conv43 * $call46; $conv48 = $mul47; $45 = $nrgs$addr; $arrayidx49 = ((($45)) + 12|0); HEAPF32[$arrayidx49>>2] = $conv48; STACKTOP = sp;return; } function _silk_warped_autocorrelation_FLP($corr,$input,$warping,$length,$order) { $corr = $corr|0; $input = $input|0; $warping = +$warping; $length = $length|0; $order = $order|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0.0, $12 = 0.0, $13 = 0.0, $14 = 0, $15 = 0.0, $16 = 0.0, $17 = 0, $18 = 0.0, $19 = 0, $2 = 0, $20 = 0.0, $21 = 0.0, $22 = 0, $23 = 0.0, $24 = 0.0, $25 = 0.0, $26 = 0; var $27 = 0.0, $28 = 0.0, $29 = 0, $3 = 0, $30 = 0.0, $31 = 0, $32 = 0.0, $33 = 0, $34 = 0.0, $35 = 0.0, $36 = 0, $37 = 0.0, $38 = 0, $39 = 0, $4 = 0.0, $40 = 0, $41 = 0, $42 = 0.0, $43 = 0, $44 = 0; var $45 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0.0, $9 = 0.0, $C = 0, $add = 0, $add13 = 0.0, $add14 = 0, $add17 = 0, $add21 = 0.0, $add22 = 0, $add26 = 0, $add28 = 0.0, $add29 = 0, $add34 = 0.0, $add38 = 0, $add8 = 0.0, $arrayidx = 0; var $arrayidx12 = 0, $arrayidx15 = 0, $arrayidx18 = 0, $arrayidx23 = 0, $arrayidx27 = 0, $arrayidx30 = 0, $arrayidx33 = 0, $arrayidx42 = 0, $arrayidx44 = 0, $arrayidx5 = 0, $arrayidx7 = 0, $arrayidx9 = 0, $cmp = 0, $cmp2 = 0, $cmp39 = 0, $conv = 0.0, $conv16 = 0.0, $conv43 = 0.0, $conv6 = 0.0, $corr$addr = 0; var $i = 0, $inc = 0, $inc46 = 0, $input$addr = 0, $length$addr = 0, $mul = 0.0, $mul11 = 0.0, $mul20 = 0.0, $mul25 = 0.0, $mul32 = 0.0, $n = 0, $order$addr = 0, $state = 0, $sub = 0.0, $sub19 = 0.0, $tmp1 = 0.0, $tmp2 = 0.0, $warping$addr = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 448|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(448|0); $state = sp + 200|0; $C = sp; $corr$addr = $corr; $input$addr = $input; $warping$addr = $warping; $length$addr = $length; $order$addr = $order; _memset(($state|0),0,200)|0; _memset(($C|0),0,200)|0; $n = 0; while(1) { $0 = $n; $1 = $length$addr; $cmp = ($0|0)<($1|0); if (!($cmp)) { break; } $2 = $input$addr; $3 = $n; $arrayidx = (($2) + ($3<<2)|0); $4 = +HEAPF32[$arrayidx>>2]; $conv = $4; $tmp1 = $conv; $i = 0; while(1) { $5 = $i; $6 = $order$addr; $cmp2 = ($5|0)<($6|0); if (!($cmp2)) { break; } $7 = $i; $arrayidx5 = (($state) + ($7<<3)|0); $8 = +HEAPF64[$arrayidx5>>3]; $9 = $warping$addr; $conv6 = $9; $10 = $i; $add = (($10) + 1)|0; $arrayidx7 = (($state) + ($add<<3)|0); $11 = +HEAPF64[$arrayidx7>>3]; $12 = $tmp1; $sub = $11 - $12; $mul = $conv6 * $sub; $add8 = $8 + $mul; $tmp2 = $add8; $13 = $tmp1; $14 = $i; $arrayidx9 = (($state) + ($14<<3)|0); HEAPF64[$arrayidx9>>3] = $13; $15 = +HEAPF64[$state>>3]; $16 = $tmp1; $mul11 = $15 * $16; $17 = $i; $arrayidx12 = (($C) + ($17<<3)|0); $18 = +HEAPF64[$arrayidx12>>3]; $add13 = $18 + $mul11; HEAPF64[$arrayidx12>>3] = $add13; $19 = $i; $add14 = (($19) + 1)|0; $arrayidx15 = (($state) + ($add14<<3)|0); $20 = +HEAPF64[$arrayidx15>>3]; $21 = $warping$addr; $conv16 = $21; $22 = $i; $add17 = (($22) + 2)|0; $arrayidx18 = (($state) + ($add17<<3)|0); $23 = +HEAPF64[$arrayidx18>>3]; $24 = $tmp2; $sub19 = $23 - $24; $mul20 = $conv16 * $sub19; $add21 = $20 + $mul20; $tmp1 = $add21; $25 = $tmp2; $26 = $i; $add22 = (($26) + 1)|0; $arrayidx23 = (($state) + ($add22<<3)|0); HEAPF64[$arrayidx23>>3] = $25; $27 = +HEAPF64[$state>>3]; $28 = $tmp2; $mul25 = $27 * $28; $29 = $i; $add26 = (($29) + 1)|0; $arrayidx27 = (($C) + ($add26<<3)|0); $30 = +HEAPF64[$arrayidx27>>3]; $add28 = $30 + $mul25; HEAPF64[$arrayidx27>>3] = $add28; $31 = $i; $add29 = (($31) + 2)|0; $i = $add29; } $32 = $tmp1; $33 = $order$addr; $arrayidx30 = (($state) + ($33<<3)|0); HEAPF64[$arrayidx30>>3] = $32; $34 = +HEAPF64[$state>>3]; $35 = $tmp1; $mul32 = $34 * $35; $36 = $order$addr; $arrayidx33 = (($C) + ($36<<3)|0); $37 = +HEAPF64[$arrayidx33>>3]; $add34 = $37 + $mul32; HEAPF64[$arrayidx33>>3] = $add34; $38 = $n; $inc = (($38) + 1)|0; $n = $inc; } $i = 0; while(1) { $39 = $i; $40 = $order$addr; $add38 = (($40) + 1)|0; $cmp39 = ($39|0)<($add38|0); if (!($cmp39)) { break; } $41 = $i; $arrayidx42 = (($C) + ($41<<3)|0); $42 = +HEAPF64[$arrayidx42>>3]; $conv43 = $42; $43 = $corr$addr; $44 = $i; $arrayidx44 = (($43) + ($44<<2)|0); HEAPF32[$arrayidx44>>2] = $conv43; $45 = $i; $inc46 = (($45) + 1)|0; $i = $inc46; } STACKTOP = sp;return; } function _silk_A2NLSF_FLP($NLSF_Q15,$pAR,$LPC_order) { $NLSF_Q15 = $NLSF_Q15|0; $pAR = $pAR|0; $LPC_order = $LPC_order|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0.0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $LPC_order$addr = 0, $NLSF_Q15$addr = 0, $a_fix_Q16 = 0, $arrayidx = 0, $arrayidx1 = 0, $call = 0, $cmp = 0, $i = 0, $inc = 0, $mul = 0.0, $pAR$addr = 0; var label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(80|0); $a_fix_Q16 = sp; $NLSF_Q15$addr = $NLSF_Q15; $pAR$addr = $pAR; $LPC_order$addr = $LPC_order; $i = 0; while(1) { $0 = $i; $1 = $LPC_order$addr; $cmp = ($0|0)<($1|0); if (!($cmp)) { break; } $2 = $pAR$addr; $3 = $i; $arrayidx = (($2) + ($3<<2)|0); $4 = +HEAPF32[$arrayidx>>2]; $mul = $4 * 65536.0; $call = (_silk_float2int($mul)|0); $5 = $i; $arrayidx1 = (($a_fix_Q16) + ($5<<2)|0); HEAP32[$arrayidx1>>2] = $call; $6 = $i; $inc = (($6) + 1)|0; $i = $inc; } $7 = $NLSF_Q15$addr; $8 = $LPC_order$addr; _silk_A2NLSF($7,$a_fix_Q16,$8); STACKTOP = sp;return; } function _silk_float2int($x) { $x = +$x; var $0 = 0.0, $call = 0, $x$addr = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $x$addr = $x; $0 = $x$addr; $call = (_lrintf($0)|0); STACKTOP = sp;return ($call|0); } function _silk_NLSF2A_FLP($pAR,$NLSF_Q15,$LPC_order,$arch) { $pAR = $pAR|0; $NLSF_Q15 = $NLSF_Q15|0; $LPC_order = $LPC_order|0; $arch = $arch|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $LPC_order$addr = 0, $NLSF_Q15$addr = 0, $a_fix_Q12 = 0, $arch$addr = 0, $arrayidx = 0, $arrayidx1 = 0, $cmp = 0, $conv = 0.0, $i = 0, $inc = 0; var $mul = 0.0, $pAR$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $a_fix_Q12 = sp + 24|0; $pAR$addr = $pAR; $NLSF_Q15$addr = $NLSF_Q15; $LPC_order$addr = $LPC_order; $arch$addr = $arch; $0 = $NLSF_Q15$addr; $1 = $LPC_order$addr; $2 = $arch$addr; _silk_NLSF2A($a_fix_Q12,$0,$1,$2); $i = 0; while(1) { $3 = $i; $4 = $LPC_order$addr; $cmp = ($3|0)<($4|0); if (!($cmp)) { break; } $5 = $i; $arrayidx = (($a_fix_Q12) + ($5<<1)|0); $6 = HEAP16[$arrayidx>>1]|0; $conv = (+($6<<16>>16)); $mul = $conv * 2.44140625E-4; $7 = $pAR$addr; $8 = $i; $arrayidx1 = (($7) + ($8<<2)|0); HEAPF32[$arrayidx1>>2] = $mul; $9 = $i; $inc = (($9) + 1)|0; $i = $inc; } STACKTOP = sp;return; } function _silk_process_NLSFs_FLP($psEncC,$PredCoef,$NLSF_Q15,$prev_NLSF_Q15) { $psEncC = $psEncC|0; $PredCoef = $PredCoef|0; $NLSF_Q15 = $NLSF_Q15|0; $prev_NLSF_Q15 = $prev_NLSF_Q15|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $NLSF_Q15$addr = 0, $PredCoef$addr = 0, $PredCoef_Q12 = 0, $arrayidx = 0, $arrayidx4 = 0, $arrayidx5 = 0; var $arrayidx6 = 0, $cmp = 0, $cmp2 = 0, $conv = 0.0, $i = 0, $inc = 0, $inc8 = 0, $j = 0, $mul = 0.0, $predictLPCOrder = 0, $prev_NLSF_Q15$addr = 0, $psEncC$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 96|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(96|0); $PredCoef_Q12 = sp + 24|0; $psEncC$addr = $psEncC; $PredCoef$addr = $PredCoef; $NLSF_Q15$addr = $NLSF_Q15; $prev_NLSF_Q15$addr = $prev_NLSF_Q15; $0 = $psEncC$addr; $1 = $NLSF_Q15$addr; $2 = $prev_NLSF_Q15$addr; _silk_process_NLSFs($0,$PredCoef_Q12,$1,$2); $j = 0; while(1) { $3 = $j; $cmp = ($3|0)<(2); if (!($cmp)) { break; } $i = 0; while(1) { $4 = $i; $5 = $psEncC$addr; $predictLPCOrder = ((($5)) + 4636|0); $6 = HEAP32[$predictLPCOrder>>2]|0; $cmp2 = ($4|0)<($6|0); $7 = $j; if (!($cmp2)) { break; } $arrayidx = (($PredCoef_Q12) + ($7<<5)|0); $8 = $i; $arrayidx4 = (($arrayidx) + ($8<<1)|0); $9 = HEAP16[$arrayidx4>>1]|0; $conv = (+($9<<16>>16)); $mul = $conv * 2.44140625E-4; $10 = $PredCoef$addr; $11 = $j; $arrayidx5 = (($10) + ($11<<6)|0); $12 = $i; $arrayidx6 = (($arrayidx5) + ($12<<2)|0); HEAPF32[$arrayidx6>>2] = $mul; $13 = $i; $inc = (($13) + 1)|0; $i = $inc; } $inc8 = (($7) + 1)|0; $j = $inc8; } STACKTOP = sp;return; } function _silk_NSQ_wrapper_FLP($psEnc,$psEncCtrl,$psIndices,$psNSQ,$pulses,$x) { $psEnc = $psEnc|0; $psEncCtrl = $psEncCtrl|0; $psIndices = $psIndices|0; $psNSQ = $psNSQ|0; $pulses = $pulses|0; $x = $x|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0.0, $2 = 0, $20 = 0, $21 = 0, $22 = 0.0, $23 = 0, $24 = 0, $25 = 0, $26 = 0.0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0.0, $31 = 0, $32 = 0, $33 = 0.0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0.0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0.0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0.0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0.0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0.0, $90 = 0, $91 = 0, $92 = 0, $AR = 0, $AR_Q13 = 0, $Gains_Q16 = 0, $HarmShapeGain = 0, $HarmShapeGain_Q14 = 0, $LF_AR_shp = 0, $LF_MA_shp = 0; var $LF_shp_Q14 = 0, $LTPCoef = 0, $LTPCoef_Q14 = 0, $LTP_scaleIndex = 0, $LTP_scale_Q14 = 0, $Lambda = 0, $Lambda_Q10 = 0, $PredCoef = 0, $PredCoef_Q12 = 0, $Tilt = 0, $Tilt_Q14 = 0, $add = 0, $add7 = 0, $arrayidx = 0, $arrayidx100 = 0, $arrayidx103 = 0, $arrayidx18 = 0, $arrayidx21 = 0, $arrayidx26 = 0, $arrayidx27 = 0; var $arrayidx30 = 0, $arrayidx31 = 0, $arrayidx34 = 0, $arrayidx47 = 0, $arrayidx51 = 0, $arrayidx64 = 0, $arrayidx65 = 0, $arrayidx69 = 0, $arrayidx70 = 0, $arrayidx8 = 0, $arrayidx83 = 0, $arrayidx86 = 0, $arrayidx93 = 0, $call = 0, $call101 = 0, $call20 = 0, $call23 = 0, $call29 = 0, $call33 = 0, $call39 = 0; var $call49 = 0, $call67 = 0, $call85 = 0, $cmp = 0, $cmp108 = 0, $cmp111 = 0, $cmp15 = 0, $cmp3 = 0, $cmp44 = 0, $cmp56 = 0, $cmp61 = 0, $cmp80 = 0, $cmp91 = 0, $cmp97 = 0, $conv = 0, $conv102 = 0, $conv24 = 0, $conv25 = 0, $conv50 = 0, $conv68 = 0; var $conv90 = 0, $conv94 = 0, $frame_length = 0, $i = 0, $idxprom = 0, $inc = 0, $inc10 = 0, $inc105 = 0, $inc36 = 0, $inc53 = 0, $inc72 = 0, $inc75 = 0, $inc88 = 0, $j = 0, $mul = 0, $mul19 = 0.0, $mul22 = 0.0, $mul28 = 0.0, $mul32 = 0.0, $mul38 = 0.0; var $mul43 = 0, $mul48 = 0.0, $mul5 = 0.0, $mul6 = 0, $mul66 = 0.0, $mul84 = 0.0, $nStatesDelayedDecision = 0, $nb_subfr = 0, $nb_subfr14 = 0, $nb_subfr42 = 0, $nb_subfr79 = 0, $or = 0, $pitchL = 0, $pitchL138 = 0, $predictLPCOrder = 0, $psEnc$addr = 0, $psEncCtrl$addr = 0, $psIndices$addr = 0, $psNSQ$addr = 0, $pulses$addr = 0; var $shapingLPCOrder = 0, $shl = 0, $signalType = 0, $warping_Q16 = 0, $x$addr = 0, $x16 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 1056|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(1056|0); $x16 = sp + 408|0; $Gains_Q16 = sp + 64|0; $PredCoef_Q12 = sp + 344|0; $LTPCoef_Q14 = sp + 304|0; $AR_Q13 = sp + 112|0; $LF_shp_Q14 = sp + 40|0; $Tilt_Q14 = sp + 16|0; $HarmShapeGain_Q14 = sp; $psEnc$addr = $psEnc; $psEncCtrl$addr = $psEncCtrl; $psIndices$addr = $psIndices; $psNSQ$addr = $psNSQ; $pulses$addr = $pulses; $x$addr = $x; $i = 0; while(1) { $0 = $i; $1 = $psEnc$addr; $nb_subfr = ((($1)) + 4576|0); $2 = HEAP32[$nb_subfr>>2]|0; $cmp = ($0|0)<($2|0); if (!($cmp)) { break; } $j = 0; while(1) { $3 = $j; $4 = $psEnc$addr; $shapingLPCOrder = ((($4)) + 4632|0); $5 = HEAP32[$shapingLPCOrder>>2]|0; $cmp3 = ($3|0)<($5|0); if (!($cmp3)) { break; } $6 = $psEncCtrl$addr; $AR = ((($6)) + 244|0); $7 = $i; $mul = ($7*24)|0; $8 = $j; $add = (($mul) + ($8))|0; $arrayidx = (($AR) + ($add<<2)|0); $9 = +HEAPF32[$arrayidx>>2]; $mul5 = $9 * 8192.0; $call = (_silk_float2int($mul5)|0); $conv = $call&65535; $10 = $i; $mul6 = ($10*24)|0; $11 = $j; $add7 = (($mul6) + ($11))|0; $arrayidx8 = (($AR_Q13) + ($add7<<1)|0); HEAP16[$arrayidx8>>1] = $conv; $12 = $j; $inc = (($12) + 1)|0; $j = $inc; } $13 = $i; $inc10 = (($13) + 1)|0; $i = $inc10; } $i = 0; while(1) { $14 = $i; $15 = $psEnc$addr; $nb_subfr14 = ((($15)) + 4576|0); $16 = HEAP32[$nb_subfr14>>2]|0; $cmp15 = ($14|0)<($16|0); $17 = $psEncCtrl$addr; if (!($cmp15)) { break; } $LF_AR_shp = ((($17)) + 644|0); $18 = $i; $arrayidx18 = (($LF_AR_shp) + ($18<<2)|0); $19 = +HEAPF32[$arrayidx18>>2]; $mul19 = $19 * 16384.0; $call20 = (_silk_float2int($mul19)|0); $shl = $call20 << 16; $20 = $psEncCtrl$addr; $LF_MA_shp = ((($20)) + 628|0); $21 = $i; $arrayidx21 = (($LF_MA_shp) + ($21<<2)|0); $22 = +HEAPF32[$arrayidx21>>2]; $mul22 = $22 * 16384.0; $call23 = (_silk_float2int($mul22)|0); $conv24 = $call23&65535; $conv25 = $conv24&65535; $or = $shl | $conv25; $23 = $i; $arrayidx26 = (($LF_shp_Q14) + ($23<<2)|0); HEAP32[$arrayidx26>>2] = $or; $24 = $psEncCtrl$addr; $Tilt = ((($24)) + 660|0); $25 = $i; $arrayidx27 = (($Tilt) + ($25<<2)|0); $26 = +HEAPF32[$arrayidx27>>2]; $mul28 = $26 * 16384.0; $call29 = (_silk_float2int($mul28)|0); $27 = $i; $arrayidx30 = (($Tilt_Q14) + ($27<<2)|0); HEAP32[$arrayidx30>>2] = $call29; $28 = $psEncCtrl$addr; $HarmShapeGain = ((($28)) + 676|0); $29 = $i; $arrayidx31 = (($HarmShapeGain) + ($29<<2)|0); $30 = +HEAPF32[$arrayidx31>>2]; $mul32 = $30 * 16384.0; $call33 = (_silk_float2int($mul32)|0); $31 = $i; $arrayidx34 = (($HarmShapeGain_Q14) + ($31<<2)|0); HEAP32[$arrayidx34>>2] = $call33; $32 = $i; $inc36 = (($32) + 1)|0; $i = $inc36; } $Lambda = ((($17)) + 692|0); $33 = +HEAPF32[$Lambda>>2]; $mul38 = $33 * 1024.0; $call39 = (_silk_float2int($mul38)|0); $Lambda_Q10 = $call39; $i = 0; while(1) { $34 = $i; $35 = $psEnc$addr; $nb_subfr42 = ((($35)) + 4576|0); $36 = HEAP32[$nb_subfr42>>2]|0; $mul43 = ($36*5)|0; $cmp44 = ($34|0)<($mul43|0); if (!($cmp44)) { break; } $37 = $psEncCtrl$addr; $LTPCoef = ((($37)) + 144|0); $38 = $i; $arrayidx47 = (($LTPCoef) + ($38<<2)|0); $39 = +HEAPF32[$arrayidx47>>2]; $mul48 = $39 * 16384.0; $call49 = (_silk_float2int($mul48)|0); $conv50 = $call49&65535; $40 = $i; $arrayidx51 = (($LTPCoef_Q14) + ($40<<1)|0); HEAP16[$arrayidx51>>1] = $conv50; $41 = $i; $inc53 = (($41) + 1)|0; $i = $inc53; } $j = 0; while(1) { $42 = $j; $cmp56 = ($42|0)<(2); $i = 0; if (!($cmp56)) { break; } while(1) { $43 = $i; $44 = $psEnc$addr; $predictLPCOrder = ((($44)) + 4636|0); $45 = HEAP32[$predictLPCOrder>>2]|0; $cmp61 = ($43|0)<($45|0); if (!($cmp61)) { break; } $46 = $psEncCtrl$addr; $PredCoef = ((($46)) + 16|0); $47 = $j; $arrayidx64 = (($PredCoef) + ($47<<6)|0); $48 = $i; $arrayidx65 = (($arrayidx64) + ($48<<2)|0); $49 = +HEAPF32[$arrayidx65>>2]; $mul66 = $49 * 4096.0; $call67 = (_silk_float2int($mul66)|0); $conv68 = $call67&65535; $50 = $j; $arrayidx69 = (($PredCoef_Q12) + ($50<<5)|0); $51 = $i; $arrayidx70 = (($arrayidx69) + ($51<<1)|0); HEAP16[$arrayidx70>>1] = $conv68; $52 = $i; $inc72 = (($52) + 1)|0; $i = $inc72; } $53 = $j; $inc75 = (($53) + 1)|0; $j = $inc75; } while(1) { $54 = $i; $55 = $psEnc$addr; $nb_subfr79 = ((($55)) + 4576|0); $56 = HEAP32[$nb_subfr79>>2]|0; $cmp80 = ($54|0)<($56|0); if (!($cmp80)) { break; } $57 = $psEncCtrl$addr; $58 = $i; $arrayidx83 = (($57) + ($58<<2)|0); $59 = +HEAPF32[$arrayidx83>>2]; $mul84 = $59 * 65536.0; $call85 = (_silk_float2int($mul84)|0); $60 = $i; $arrayidx86 = (($Gains_Q16) + ($60<<2)|0); HEAP32[$arrayidx86>>2] = $call85; $61 = $i; $inc88 = (($61) + 1)|0; $i = $inc88; } $62 = $psIndices$addr; $signalType = ((($62)) + 29|0); $63 = HEAP8[$signalType>>0]|0; $conv90 = $63 << 24 >> 24; $cmp91 = ($conv90|0)==(2); if ($cmp91) { $64 = $psIndices$addr; $LTP_scaleIndex = ((($64)) + 33|0); $65 = HEAP8[$LTP_scaleIndex>>0]|0; $idxprom = $65 << 24 >> 24; $arrayidx93 = (23520 + ($idxprom<<1)|0); $66 = HEAP16[$arrayidx93>>1]|0; $conv94 = $66 << 16 >> 16; $LTP_scale_Q14 = $conv94; } else { $LTP_scale_Q14 = 0; } $i = 0; while(1) { $67 = $i; $68 = $psEnc$addr; $frame_length = ((($68)) + 4580|0); $69 = HEAP32[$frame_length>>2]|0; $cmp97 = ($67|0)<($69|0); if (!($cmp97)) { break; } $70 = $x$addr; $71 = $i; $arrayidx100 = (($70) + ($71<<2)|0); $72 = +HEAPF32[$arrayidx100>>2]; $call101 = (_silk_float2int($72)|0); $conv102 = $call101&65535; $73 = $i; $arrayidx103 = (($x16) + ($73<<1)|0); HEAP16[$arrayidx103>>1] = $conv102; $74 = $i; $inc105 = (($74) + 1)|0; $i = $inc105; } $75 = $psEnc$addr; $nStatesDelayedDecision = ((($75)) + 4624|0); $76 = HEAP32[$nStatesDelayedDecision>>2]|0; $cmp108 = ($76|0)>(1); if (!($cmp108)) { $77 = $psEnc$addr; $warping_Q16 = ((($77)) + 4668|0); $78 = HEAP32[$warping_Q16>>2]|0; $cmp111 = ($78|0)>(0); if (!($cmp111)) { $86 = $psEnc$addr; $87 = $psNSQ$addr; $88 = $psIndices$addr; $89 = $pulses$addr; $90 = $psEncCtrl$addr; $pitchL138 = ((($90)) + 228|0); $91 = $Lambda_Q10; $92 = $LTP_scale_Q14; _silk_NSQ_c($86,$87,$88,$x16,$89,$PredCoef_Q12,$LTPCoef_Q14,$AR_Q13,$HarmShapeGain_Q14,$Tilt_Q14,$LF_shp_Q14,$Gains_Q16,$pitchL138,$91,$92); STACKTOP = sp;return; } } $79 = $psEnc$addr; $80 = $psNSQ$addr; $81 = $psIndices$addr; $82 = $pulses$addr; $83 = $psEncCtrl$addr; $pitchL = ((($83)) + 228|0); $84 = $Lambda_Q10; $85 = $LTP_scale_Q14; _silk_NSQ_del_dec_c($79,$80,$81,$x16,$82,$PredCoef_Q12,$LTPCoef_Q14,$AR_Q13,$HarmShapeGain_Q14,$Tilt_Q14,$LF_shp_Q14,$Gains_Q16,$pitchL,$84,$85); STACKTOP = sp;return; } function _silk_quant_LTP_gains_FLP($B,$cbk_index,$periodicity_index,$sum_log_gain_Q7,$pred_gain_dB,$XX,$xX,$subfr_len,$nb_subfr,$arch) { $B = $B|0; $cbk_index = $cbk_index|0; $periodicity_index = $periodicity_index|0; $sum_log_gain_Q7 = $sum_log_gain_Q7|0; $pred_gain_dB = $pred_gain_dB|0; $XX = $XX|0; $xX = $xX|0; $subfr_len = $subfr_len|0; $nb_subfr = $nb_subfr|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0.0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $3 = 0, $4 = 0.0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $B$addr = 0, $B_Q14 = 0, $XX$addr = 0, $XX_Q17 = 0, $arch$addr = 0, $arrayidx = 0, $arrayidx11 = 0, $arrayidx21 = 0, $arrayidx23 = 0, $arrayidx3 = 0, $arrayidx8 = 0; var $call = 0, $call10 = 0, $cbk_index$addr = 0, $cmp = 0, $cmp19 = 0, $cmp6 = 0, $conv = 0.0, $conv27 = 0.0, $i = 0, $inc = 0, $inc13 = 0, $inc25 = 0, $mul = 0, $mul1 = 0, $mul18 = 0, $mul2 = 0.0, $mul22 = 0.0, $mul28 = 0.0, $mul5 = 0, $mul9 = 0.0; var $nb_subfr$addr = 0, $periodicity_index$addr = 0, $pred_gain_dB$addr = 0, $pred_gain_dB_Q7 = 0, $subfr_len$addr = 0, $sum_log_gain_Q7$addr = 0, $xX$addr = 0, $xX_Q17 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 576|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(576|0); $pred_gain_dB_Q7 = sp + 480|0; $B_Q14 = sp + 528|0; $XX_Q17 = sp + 80|0; $xX_Q17 = sp; $B$addr = $B; $cbk_index$addr = $cbk_index; $periodicity_index$addr = $periodicity_index; $sum_log_gain_Q7$addr = $sum_log_gain_Q7; $pred_gain_dB$addr = $pred_gain_dB; $XX$addr = $XX; $xX$addr = $xX; $subfr_len$addr = $subfr_len; $nb_subfr$addr = $nb_subfr; $arch$addr = $arch; $i = 0; while(1) { $0 = $i; $1 = $nb_subfr$addr; $mul = ($1*5)|0; $mul1 = ($mul*5)|0; $cmp = ($0|0)<($mul1|0); if (!($cmp)) { break; } $2 = $XX$addr; $3 = $i; $arrayidx = (($2) + ($3<<2)|0); $4 = +HEAPF32[$arrayidx>>2]; $mul2 = $4 * 131072.0; $call = (_silk_float2int($mul2)|0); $5 = $i; $arrayidx3 = (($XX_Q17) + ($5<<2)|0); HEAP32[$arrayidx3>>2] = $call; $6 = $i; $inc = (($6) + 1)|0; $i = $inc; } $i = 0; while(1) { $7 = $i; $8 = $nb_subfr$addr; $mul5 = ($8*5)|0; $cmp6 = ($7|0)<($mul5|0); if (!($cmp6)) { break; } $9 = $xX$addr; $10 = $i; $arrayidx8 = (($9) + ($10<<2)|0); $11 = +HEAPF32[$arrayidx8>>2]; $mul9 = $11 * 131072.0; $call10 = (_silk_float2int($mul9)|0); $12 = $i; $arrayidx11 = (($xX_Q17) + ($12<<2)|0); HEAP32[$arrayidx11>>2] = $call10; $13 = $i; $inc13 = (($13) + 1)|0; $i = $inc13; } $14 = $cbk_index$addr; $15 = $periodicity_index$addr; $16 = $sum_log_gain_Q7$addr; $17 = $subfr_len$addr; $18 = $nb_subfr$addr; $19 = $arch$addr; _silk_quant_LTP_gains($B_Q14,$14,$15,$16,$pred_gain_dB_Q7,$XX_Q17,$xX_Q17,$17,$18,$19); $i = 0; while(1) { $20 = $i; $21 = $nb_subfr$addr; $mul18 = ($21*5)|0; $cmp19 = ($20|0)<($mul18|0); if (!($cmp19)) { break; } $22 = $i; $arrayidx21 = (($B_Q14) + ($22<<1)|0); $23 = HEAP16[$arrayidx21>>1]|0; $conv = (+($23<<16>>16)); $mul22 = $conv * 6.103515625E-5; $24 = $B$addr; $25 = $i; $arrayidx23 = (($24) + ($25<<2)|0); HEAPF32[$arrayidx23>>2] = $mul22; $26 = $i; $inc25 = (($26) + 1)|0; $i = $inc25; } $27 = HEAP32[$pred_gain_dB_Q7>>2]|0; $conv27 = (+($27|0)); $mul28 = $conv27 * 0.0078125; $28 = $pred_gain_dB$addr; HEAPF32[$28>>2] = $mul28; STACKTOP = sp;return; } function _silk_autocorrelation_FLP($results,$inputData,$inputDataSize,$correlationCount) { $results = $results|0; $inputData = $inputData|0; $inputDataSize = $inputDataSize|0; $correlationCount = $correlationCount|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add$ptr = 0, $arrayidx = 0, $call = 0.0, $cmp = 0, $cmp1 = 0, $conv = 0.0, $correlationCount$addr = 0; var $i = 0, $inc = 0, $inputData$addr = 0, $inputDataSize$addr = 0, $results$addr = 0, $sub = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $results$addr = $results; $inputData$addr = $inputData; $inputDataSize$addr = $inputDataSize; $correlationCount$addr = $correlationCount; $0 = $correlationCount$addr; $1 = $inputDataSize$addr; $cmp = ($0|0)>($1|0); if ($cmp) { $2 = $inputDataSize$addr; $correlationCount$addr = $2; } $i = 0; while(1) { $3 = $i; $4 = $correlationCount$addr; $cmp1 = ($3|0)<($4|0); if (!($cmp1)) { break; } $5 = $inputData$addr; $6 = $inputData$addr; $7 = $i; $add$ptr = (($6) + ($7<<2)|0); $8 = $inputDataSize$addr; $9 = $i; $sub = (($8) - ($9))|0; $call = (+_silk_inner_product_FLP($5,$add$ptr,$sub)); $conv = $call; $10 = $results$addr; $11 = $i; $arrayidx = (($10) + ($11<<2)|0); HEAPF32[$arrayidx>>2] = $conv; $12 = $i; $inc = (($12) + 1)|0; $i = $inc; } STACKTOP = sp;return; } function _silk_bwexpander_FLP($ar,$d,$chirp) { $ar = $ar|0; $d = $d|0; $chirp = +$chirp; var $0 = 0.0, $1 = 0, $10 = 0, $11 = 0.0, $2 = 0, $3 = 0.0, $4 = 0, $5 = 0, $6 = 0.0, $7 = 0.0, $8 = 0.0, $9 = 0, $ar$addr = 0, $arrayidx = 0, $arrayidx3 = 0, $cfac = 0.0, $chirp$addr = 0.0, $cmp = 0, $d$addr = 0, $i = 0; var $inc = 0, $mul = 0.0, $mul1 = 0.0, $mul4 = 0.0, $sub = 0, $sub2 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $ar$addr = $ar; $d$addr = $d; $chirp$addr = $chirp; $0 = $chirp$addr; $cfac = $0; $i = 0; while(1) { $1 = $i; $2 = $d$addr; $sub = (($2) - 1)|0; $cmp = ($1|0)<($sub|0); $3 = $cfac; $4 = $ar$addr; if (!($cmp)) { break; } $5 = $i; $arrayidx = (($4) + ($5<<2)|0); $6 = +HEAPF32[$arrayidx>>2]; $mul = $6 * $3; HEAPF32[$arrayidx>>2] = $mul; $7 = $chirp$addr; $8 = $cfac; $mul1 = $8 * $7; $cfac = $mul1; $9 = $i; $inc = (($9) + 1)|0; $i = $inc; } $10 = $d$addr; $sub2 = (($10) - 1)|0; $arrayidx3 = (($4) + ($sub2<<2)|0); $11 = +HEAPF32[$arrayidx3>>2]; $mul4 = $11 * $3; HEAPF32[$arrayidx3>>2] = $mul4; STACKTOP = sp;return; } function _silk_energy_FLP($data,$dataSize) { $data = $data|0; $dataSize = $dataSize|0; var $0 = 0, $1 = 0, $10 = 0.0, $11 = 0, $12 = 0, $13 = 0.0, $14 = 0, $15 = 0, $16 = 0.0, $17 = 0, $18 = 0, $19 = 0.0, $2 = 0, $20 = 0, $21 = 0, $22 = 0.0, $23 = 0, $24 = 0, $25 = 0.0, $26 = 0.0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0.0, $33 = 0, $34 = 0, $35 = 0.0, $36 = 0.0, $37 = 0, $38 = 0.0, $4 = 0.0, $5 = 0, $6 = 0, $7 = 0.0, $8 = 0, $9 = 0, $add = 0; var $add1 = 0, $add11 = 0.0, $add12 = 0, $add15 = 0, $add19 = 0.0, $add20 = 0, $add23 = 0, $add27 = 0.0, $add28 = 0.0, $add29 = 0, $add39 = 0.0, $add4 = 0, $add7 = 0, $arrayidx = 0, $arrayidx13 = 0, $arrayidx16 = 0, $arrayidx2 = 0, $arrayidx21 = 0, $arrayidx24 = 0, $arrayidx34 = 0; var $arrayidx36 = 0, $arrayidx5 = 0, $arrayidx8 = 0, $cmp = 0, $cmp31 = 0, $conv = 0.0, $conv14 = 0.0, $conv17 = 0.0, $conv22 = 0.0, $conv25 = 0.0, $conv3 = 0.0, $conv35 = 0.0, $conv37 = 0.0, $conv6 = 0.0, $conv9 = 0.0, $data$addr = 0, $dataSize$addr = 0, $i = 0, $inc = 0, $mul = 0.0; var $mul10 = 0.0, $mul18 = 0.0, $mul26 = 0.0, $mul38 = 0.0, $result = 0.0, $sub = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $data$addr = $data; $dataSize$addr = $dataSize; $result = 0.0; $i = 0; while(1) { $0 = $i; $1 = $dataSize$addr; $sub = (($1) - 3)|0; $cmp = ($0|0)<($sub|0); if (!($cmp)) { break; } $2 = $data$addr; $3 = $i; $add = (($3) + 0)|0; $arrayidx = (($2) + ($add<<2)|0); $4 = +HEAPF32[$arrayidx>>2]; $conv = $4; $5 = $data$addr; $6 = $i; $add1 = (($6) + 0)|0; $arrayidx2 = (($5) + ($add1<<2)|0); $7 = +HEAPF32[$arrayidx2>>2]; $conv3 = $7; $mul = $conv * $conv3; $8 = $data$addr; $9 = $i; $add4 = (($9) + 1)|0; $arrayidx5 = (($8) + ($add4<<2)|0); $10 = +HEAPF32[$arrayidx5>>2]; $conv6 = $10; $11 = $data$addr; $12 = $i; $add7 = (($12) + 1)|0; $arrayidx8 = (($11) + ($add7<<2)|0); $13 = +HEAPF32[$arrayidx8>>2]; $conv9 = $13; $mul10 = $conv6 * $conv9; $add11 = $mul + $mul10; $14 = $data$addr; $15 = $i; $add12 = (($15) + 2)|0; $arrayidx13 = (($14) + ($add12<<2)|0); $16 = +HEAPF32[$arrayidx13>>2]; $conv14 = $16; $17 = $data$addr; $18 = $i; $add15 = (($18) + 2)|0; $arrayidx16 = (($17) + ($add15<<2)|0); $19 = +HEAPF32[$arrayidx16>>2]; $conv17 = $19; $mul18 = $conv14 * $conv17; $add19 = $add11 + $mul18; $20 = $data$addr; $21 = $i; $add20 = (($21) + 3)|0; $arrayidx21 = (($20) + ($add20<<2)|0); $22 = +HEAPF32[$arrayidx21>>2]; $conv22 = $22; $23 = $data$addr; $24 = $i; $add23 = (($24) + 3)|0; $arrayidx24 = (($23) + ($add23<<2)|0); $25 = +HEAPF32[$arrayidx24>>2]; $conv25 = $25; $mul26 = $conv22 * $conv25; $add27 = $add19 + $mul26; $26 = $result; $add28 = $26 + $add27; $result = $add28; $27 = $i; $add29 = (($27) + 4)|0; $i = $add29; } while(1) { $28 = $i; $29 = $dataSize$addr; $cmp31 = ($28|0)<($29|0); if (!($cmp31)) { break; } $30 = $data$addr; $31 = $i; $arrayidx34 = (($30) + ($31<<2)|0); $32 = +HEAPF32[$arrayidx34>>2]; $conv35 = $32; $33 = $data$addr; $34 = $i; $arrayidx36 = (($33) + ($34<<2)|0); $35 = +HEAPF32[$arrayidx36>>2]; $conv37 = $35; $mul38 = $conv35 * $conv37; $36 = $result; $add39 = $36 + $mul38; $result = $add39; $37 = $i; $inc = (($37) + 1)|0; $i = $inc; } $38 = $result; STACKTOP = sp;return (+$38); } function _silk_inner_product_FLP($data1,$data2,$dataSize) { $data1 = $data1|0; $data2 = $data2|0; $dataSize = $dataSize|0; var $0 = 0, $1 = 0, $10 = 0.0, $11 = 0, $12 = 0, $13 = 0.0, $14 = 0, $15 = 0, $16 = 0.0, $17 = 0, $18 = 0, $19 = 0.0, $2 = 0, $20 = 0, $21 = 0, $22 = 0.0, $23 = 0, $24 = 0, $25 = 0.0, $26 = 0.0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0.0, $33 = 0, $34 = 0, $35 = 0.0, $36 = 0.0, $37 = 0, $38 = 0.0, $4 = 0.0, $5 = 0, $6 = 0, $7 = 0.0, $8 = 0, $9 = 0, $add = 0; var $add1 = 0, $add11 = 0.0, $add12 = 0, $add15 = 0, $add19 = 0.0, $add20 = 0, $add23 = 0, $add27 = 0.0, $add28 = 0.0, $add29 = 0, $add39 = 0.0, $add4 = 0, $add7 = 0, $arrayidx = 0, $arrayidx13 = 0, $arrayidx16 = 0, $arrayidx2 = 0, $arrayidx21 = 0, $arrayidx24 = 0, $arrayidx34 = 0; var $arrayidx36 = 0, $arrayidx5 = 0, $arrayidx8 = 0, $cmp = 0, $cmp31 = 0, $conv = 0.0, $conv14 = 0.0, $conv17 = 0.0, $conv22 = 0.0, $conv25 = 0.0, $conv3 = 0.0, $conv35 = 0.0, $conv37 = 0.0, $conv6 = 0.0, $conv9 = 0.0, $data1$addr = 0, $data2$addr = 0, $dataSize$addr = 0, $i = 0, $inc = 0; var $mul = 0.0, $mul10 = 0.0, $mul18 = 0.0, $mul26 = 0.0, $mul38 = 0.0, $result = 0.0, $sub = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $data1$addr = $data1; $data2$addr = $data2; $dataSize$addr = $dataSize; $result = 0.0; $i = 0; while(1) { $0 = $i; $1 = $dataSize$addr; $sub = (($1) - 3)|0; $cmp = ($0|0)<($sub|0); if (!($cmp)) { break; } $2 = $data1$addr; $3 = $i; $add = (($3) + 0)|0; $arrayidx = (($2) + ($add<<2)|0); $4 = +HEAPF32[$arrayidx>>2]; $conv = $4; $5 = $data2$addr; $6 = $i; $add1 = (($6) + 0)|0; $arrayidx2 = (($5) + ($add1<<2)|0); $7 = +HEAPF32[$arrayidx2>>2]; $conv3 = $7; $mul = $conv * $conv3; $8 = $data1$addr; $9 = $i; $add4 = (($9) + 1)|0; $arrayidx5 = (($8) + ($add4<<2)|0); $10 = +HEAPF32[$arrayidx5>>2]; $conv6 = $10; $11 = $data2$addr; $12 = $i; $add7 = (($12) + 1)|0; $arrayidx8 = (($11) + ($add7<<2)|0); $13 = +HEAPF32[$arrayidx8>>2]; $conv9 = $13; $mul10 = $conv6 * $conv9; $add11 = $mul + $mul10; $14 = $data1$addr; $15 = $i; $add12 = (($15) + 2)|0; $arrayidx13 = (($14) + ($add12<<2)|0); $16 = +HEAPF32[$arrayidx13>>2]; $conv14 = $16; $17 = $data2$addr; $18 = $i; $add15 = (($18) + 2)|0; $arrayidx16 = (($17) + ($add15<<2)|0); $19 = +HEAPF32[$arrayidx16>>2]; $conv17 = $19; $mul18 = $conv14 * $conv17; $add19 = $add11 + $mul18; $20 = $data1$addr; $21 = $i; $add20 = (($21) + 3)|0; $arrayidx21 = (($20) + ($add20<<2)|0); $22 = +HEAPF32[$arrayidx21>>2]; $conv22 = $22; $23 = $data2$addr; $24 = $i; $add23 = (($24) + 3)|0; $arrayidx24 = (($23) + ($add23<<2)|0); $25 = +HEAPF32[$arrayidx24>>2]; $conv25 = $25; $mul26 = $conv22 * $conv25; $add27 = $add19 + $mul26; $26 = $result; $add28 = $26 + $add27; $result = $add28; $27 = $i; $add29 = (($27) + 4)|0; $i = $add29; } while(1) { $28 = $i; $29 = $dataSize$addr; $cmp31 = ($28|0)<($29|0); if (!($cmp31)) { break; } $30 = $data1$addr; $31 = $i; $arrayidx34 = (($30) + ($31<<2)|0); $32 = +HEAPF32[$arrayidx34>>2]; $conv35 = $32; $33 = $data2$addr; $34 = $i; $arrayidx36 = (($33) + ($34<<2)|0); $35 = +HEAPF32[$arrayidx36>>2]; $conv37 = $35; $mul38 = $conv35 * $conv37; $36 = $result; $add39 = $36 + $mul38; $result = $add39; $37 = $i; $inc = (($37) + 1)|0; $i = $inc; } $38 = $result; STACKTOP = sp;return (+$38); } function _silk_k2a_FLP($A,$rc,$order) { $A = $A|0; $rc = $rc|0; $order = $order|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0.0, $14 = 0.0, $15 = 0.0, $16 = 0.0, $17 = 0, $18 = 0, $19 = 0.0, $2 = 0, $20 = 0.0, $21 = 0.0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0.0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $4 = 0.0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0.0, $A$addr = 0, $add = 0, $add10 = 0.0, $add7 = 0.0, $arrayidx = 0, $arrayidx13 = 0, $arrayidx15 = 0, $arrayidx4 = 0, $arrayidx6 = 0, $arrayidx8 = 0; var $cmp = 0, $cmp2 = 0, $inc = 0, $inc17 = 0, $k = 0, $mul = 0.0, $mul9 = 0.0, $n = 0, $order$addr = 0, $rc$addr = 0, $rck = 0.0, $shr = 0, $sub = 0, $sub11 = 0, $sub12 = 0, $sub14 = 0.0, $sub5 = 0, $tmp1 = 0.0, $tmp2 = 0.0, label = 0; var sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $A$addr = $A; $rc$addr = $rc; $order$addr = $order; $k = 0; while(1) { $0 = $k; $1 = $order$addr; $cmp = ($0|0)<($1|0); if (!($cmp)) { break; } $2 = $rc$addr; $3 = $k; $arrayidx = (($2) + ($3<<2)|0); $4 = +HEAPF32[$arrayidx>>2]; $rck = $4; $n = 0; while(1) { $5 = $n; $6 = $k; $add = (($6) + 1)|0; $shr = $add >> 1; $cmp2 = ($5|0)<($shr|0); if (!($cmp2)) { break; } $7 = $A$addr; $8 = $n; $arrayidx4 = (($7) + ($8<<2)|0); $9 = +HEAPF32[$arrayidx4>>2]; $tmp1 = $9; $10 = $A$addr; $11 = $k; $12 = $n; $sub = (($11) - ($12))|0; $sub5 = (($sub) - 1)|0; $arrayidx6 = (($10) + ($sub5<<2)|0); $13 = +HEAPF32[$arrayidx6>>2]; $tmp2 = $13; $14 = $tmp1; $15 = $tmp2; $16 = $rck; $mul = $15 * $16; $add7 = $14 + $mul; $17 = $A$addr; $18 = $n; $arrayidx8 = (($17) + ($18<<2)|0); HEAPF32[$arrayidx8>>2] = $add7; $19 = $tmp2; $20 = $tmp1; $21 = $rck; $mul9 = $20 * $21; $add10 = $19 + $mul9; $22 = $A$addr; $23 = $k; $24 = $n; $sub11 = (($23) - ($24))|0; $sub12 = (($sub11) - 1)|0; $arrayidx13 = (($22) + ($sub12<<2)|0); HEAPF32[$arrayidx13>>2] = $add10; $25 = $n; $inc = (($25) + 1)|0; $n = $inc; } $26 = $rck; $sub14 = - $26; $27 = $A$addr; $28 = $k; $arrayidx15 = (($27) + ($28<<2)|0); HEAPF32[$arrayidx15>>2] = $sub14; $29 = $k; $inc17 = (($29) + 1)|0; $k = $inc17; } STACKTOP = sp;return; } function _silk_pitch_analysis_core_FLP($frame,$pitch_out,$lagIndex,$contourIndex,$LTPCorr,$prevLag,$search_thres1,$search_thres2,$Fs_kHz,$complexity,$nb_subfr,$arch) { $frame = $frame|0; $pitch_out = $pitch_out|0; $lagIndex = $lagIndex|0; $contourIndex = $contourIndex|0; $LTPCorr = $LTPCorr|0; $prevLag = $prevLag|0; $search_thres1 = +$search_thres1; $search_thres2 = +$search_thres2; $Fs_kHz = $Fs_kHz|0; $complexity = $complexity|0; $nb_subfr = $nb_subfr|0; $arch = $arch|0; var $$sink = 0.0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0.0, $104 = 0.0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0.0, $111 = 0.0, $112 = 0, $113 = 0, $114 = 0; var $115 = 0, $116 = 0.0, $117 = 0.0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0; var $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0; var $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0; var $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0; var $188 = 0.0, $189 = 0, $19 = 0, $190 = 0, $191 = 0.0, $192 = 0.0, $193 = 0.0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0; var $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0; var $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0.0, $228 = 0, $229 = 0.0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0.0, $236 = 0.0, $237 = 0, $238 = 0.0, $239 = 0, $24 = 0.0, $240 = 0; var $241 = 0, $242 = 0.0, $243 = 0, $244 = 0.0, $245 = 0, $246 = 0.0, $247 = 0.0, $248 = 0.0, $249 = 0.0, $25 = 0, $250 = 0, $251 = 0, $252 = 0.0, $253 = 0.0, $254 = 0.0, $255 = 0.0, $256 = 0.0, $257 = 0.0, $258 = 0.0, $259 = 0; var $26 = 0.0, $260 = 0.0, $261 = 0.0, $262 = 0.0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0.0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0; var $278 = 0, $279 = 0, $28 = 0.0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0; var $296 = 0, $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0.0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0; var $313 = 0, $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0.0, $320 = 0, $321 = 0, $322 = 0, $323 = 0.0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0.0, $33 = 0, $330 = 0.0; var $331 = 0, $332 = 0, $333 = 0, $334 = 0.0, $335 = 0.0, $336 = 0, $337 = 0.0, $338 = 0.0, $339 = 0.0, $34 = 0.0, $340 = 0.0, $341 = 0, $342 = 0.0, $343 = 0.0, $344 = 0.0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0.0; var $35 = 0, $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0; var $368 = 0, $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0; var $386 = 0, $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0; var $403 = 0, $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0; var $421 = 0, $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0; var $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0.0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0.0, $59 = 0.0, $6 = 0, $60 = 0, $61 = 0.0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0; var $67 = 0, $68 = 0.0, $69 = 0, $7 = 0, $70 = 0.0, $71 = 0, $72 = 0.0, $73 = 0, $74 = 0, $75 = 0.0, $76 = 0, $77 = 0, $78 = 0.0, $79 = 0.0, $8 = 0, $80 = 0.0, $81 = 0.0, $82 = 0, $83 = 0.0, $84 = 0; var $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0.0, $93 = 0, $94 = 0, $95 = 0.0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $C = 0, $CBimax = 0, $CBimax_new = 0, $CC = 0; var $CCmax = 0.0, $CCmax_b = 0.0, $CCmax_new = 0.0, $CCmax_new_b = 0.0, $Cmax = 0.0, $Fs_kHz$addr = 0, $LTPCorr$addr = 0, $Lag_CB_ptr = 0, $add = 0, $add$ptr = 0, $add$ptr119 = 0, $add$ptr289 = 0, $add$ptr308 = 0, $add$ptr361 = 0, $add$ptr551 = 0, $add$ptr610 = 0, $add$ptr73 = 0, $add110 = 0.0, $add116 = 0.0, $add139 = 0; var $add144 = 0, $add158 = 0, $add164 = 0, $add174 = 0, $add191 = 0, $add202 = 0, $add205 = 0, $add211 = 0, $add215 = 0, $add227 = 0, $add238 = 0, $add242 = 0, $add245 = 0, $add251 = 0, $add281 = 0.0, $add296 = 0.0, $add3 = 0, $add360 = 0, $add363 = 0, $add366 = 0.0; var $add40 = 0.0, $add402 = 0.0, $add437 = 0, $add473 = 0, $add48 = 0.0, $add490 = 0.0, $add507 = 0.0, $add512 = 0.0, $add533 = 0, $add550 = 0, $add553 = 0, $add58 = 0.0, $add6 = 0, $add609 = 0, $add612 = 0, $add76 = 0, $add81 = 0.0, $add85 = 0.0, $add90 = 0.0, $add91 = 0; var $and = 0, $arch$addr = 0, $arrayidx = 0, $arrayidx104 = 0, $arrayidx106 = 0, $arrayidx115 = 0, $arrayidx128 = 0, $arrayidx133 = 0, $arrayidx141 = 0, $arrayidx146 = 0, $arrayidx159 = 0, $arrayidx163 = 0, $arrayidx166 = 0, $arrayidx178 = 0, $arrayidx186 = 0, $arrayidx187 = 0, $arrayidx197 = 0, $arrayidx200 = 0, $arrayidx203 = 0, $arrayidx216 = 0; var $arrayidx221 = 0, $arrayidx233 = 0, $arrayidx236 = 0, $arrayidx240 = 0, $arrayidx243 = 0, $arrayidx255 = 0, $arrayidx262 = 0, $arrayidx272 = 0, $arrayidx274 = 0, $arrayidx286 = 0, $arrayidx299 = 0, $arrayidx300 = 0, $arrayidx302 = 0, $arrayidx303 = 0, $arrayidx303$sink = 0, $arrayidx348 = 0, $arrayidx353 = 0, $arrayidx358 = 0, $arrayidx364 = 0, $arrayidx365 = 0; var $arrayidx377 = 0, $arrayidx381 = 0, $arrayidx39 = 0, $arrayidx43 = 0, $arrayidx47 = 0, $arrayidx482 = 0, $arrayidx487 = 0, $arrayidx503 = 0, $arrayidx504 = 0, $arrayidx505 = 0, $arrayidx508 = 0, $arrayidx509 = 0, $arrayidx510 = 0, $arrayidx53 = 0, $arrayidx531 = 0, $arrayidx554 = 0, $arrayidx559 = 0, $arrayidx564 = 0, $arrayidx57 = 0, $arrayidx571 = 0; var $arrayidx584 = 0, $arrayidx589 = 0, $arrayidx596 = 0, $arrayidx613 = 0, $arrayidx617 = 0, $arrayidx622 = 0, $arrayidx627 = 0, $arrayidx63 = 0, $arrayidx638 = 0, $arrayidx643 = 0, $arrayidx650 = 0, $arrayidx67 = 0, $arrayidx78 = 0, $arrayidx89 = 0, $arrayidx97 = 0, $basis_ptr = 0, $call = 0.0, $call280 = 0.0, $call290 = 0.0, $call294 = 0.0; var $call329 = 0.0, $call388 = 0.0, $call472 = 0, $call474 = 0, $call489 = 0.0, $call80 = 0.0, $cbk_size = 0, $cmp = 0, $cmp124 = 0, $cmp147 = 0, $cmp154 = 0, $cmp160 = 0, $cmp17 = 0, $cmp175 = 0, $cmp183 = 0, $cmp193 = 0, $cmp212 = 0, $cmp218 = 0, $cmp229 = 0, $cmp252 = 0; var $cmp257 = 0, $cmp269 = 0, $cmp277 = 0, $cmp283 = 0, $cmp291 = 0, $cmp312 = 0, $cmp315 = 0, $cmp321 = 0, $cmp332 = 0, $cmp335 = 0, $cmp337 = 0, $cmp345 = 0, $cmp350 = 0, $cmp355 = 0, $cmp36 = 0, $cmp374 = 0, $cmp378 = 0, $cmp393 = 0, $cmp406 = 0, $cmp41 = 0; var $cmp411 = 0, $cmp418 = 0, $cmp424 = 0, $cmp427 = 0, $cmp441 = 0, $cmp444 = 0, $cmp448 = 0, $cmp457 = 0, $cmp461 = 0, $cmp479 = 0, $cmp49 = 0, $cmp492 = 0, $cmp496 = 0, $cmp500 = 0, $cmp516 = 0, $cmp528 = 0, $cmp534 = 0, $cmp546 = 0, $cmp556 = 0, $cmp560 = 0; var $cmp566 = 0, $cmp579 = 0, $cmp585 = 0, $cmp605 = 0, $cmp614 = 0, $cmp618 = 0, $cmp623 = 0, $cmp634 = 0, $cmp639 = 0, $cmp69 = 0, $cmp93 = 0, $complexity$addr = 0, $cond453 = 0, $cond466 = 0, $cond470 = 0, $cond595 = 0, $cond60 = 0.0, $cond649 = 0, $contourIndex$addr = 0, $contour_bias = 0.0; var $conv = 0, $conv100 = 0.0, $conv102 = 0.0, $conv105 = 0.0, $conv107 = 0.0, $conv113 = 0.0, $conv129 = 0.0, $conv198 = 0, $conv201 = 0, $conv204 = 0, $conv206 = 0, $conv217 = 0, $conv234 = 0, $conv237 = 0, $conv241 = 0, $conv244 = 0, $conv246 = 0, $conv256 = 0, $conv261 = 0, $conv287 = 0; var $conv298 = 0.0, $conv327 = 0.0, $conv328 = 0.0, $conv362 = 0, $conv37 = 0.0, $conv386 = 0.0, $conv387 = 0.0, $conv389 = 0.0, $conv398 = 0.0, $conv409 = 0.0, $conv422 = 0.0, $conv430 = 0, $conv431 = 0, $conv434 = 0, $conv435 = 0, $conv44 = 0, $conv45 = 0.0, $conv477 = 0.0, $conv483 = 0, $conv506 = 0.0; var $conv511 = 0.0, $conv521 = 0.0, $conv522 = 0.0, $conv532 = 0, $conv54 = 0, $conv55 = 0.0, $conv552 = 0, $conv601 = 0, $conv602 = 0, $conv61 = 0, $conv611 = 0, $conv62 = 0.0, $conv655 = 0, $conv656 = 0, $conv79 = 0.0, $conv82 = 0.0, $conv84 = 0.0, $conv87 = 0.0, $conv98 = 0.0, $cross_corr = 0.0; var $cross_corr_st3 = 0, $d = 0, $d_comp = 0, $d_srch = 0, $dec = 0, $dec136 = 0, $dec208 = 0, $dec248 = 0, $delta_lag_log2_sqr = 0.0, $div = 0.0, $div112 = 0.0, $div131 = 0.0, $div297 = 0.0, $div319 = 0, $div403 = 0.0, $div423 = 0.0, $div478 = 0.0, $div520 = 0.0, $end_lag = 0, $energies_st3 = 0; var $energy = 0.0, $energy_tmp = 0.0, $filt_state = 0, $frame$addr = 0, $frame_12_FIX = 0, $frame_16_FIX = 0, $frame_4_FIX = 0, $frame_4kHz = 0, $frame_8_FIX = 0, $frame_8kHz = 0, $frame_length = 0, $frame_length_4kHz = 0, $frame_length_8kHz = 0, $i = 0, $idx$neg = 0, $idx$neg288 = 0, $idx$neg72 = 0, $inc = 0, $inc121 = 0, $inc170 = 0; var $inc180 = 0, $inc189 = 0, $inc222 = 0, $inc225 = 0, $inc263 = 0, $inc266 = 0, $inc306 = 0, $inc310 = 0, $inc368 = 0, $inc371 = 0, $inc384 = 0, $inc416 = 0, $inc514 = 0, $inc539 = 0, $inc541 = 0, $inc543 = 0, $inc598 = 0, $inc652 = 0, $incdec$ptr = 0, $j = 0; var $k = 0, $lag = 0, $lagIndex$addr = 0, $lag_counter = 0, $lag_log2 = 0.0, $lag_new = 0, $length_d_comp = 0, $length_d_srch = 0, $max_lag = 0, $max_lag_4kHz = 0, $max_lag_8kHz = 0, $min_lag = 0, $min_lag_4kHz = 0, $min_lag_8kHz = 0, $mul = 0, $mul1 = 0, $mul10 = 0, $mul103 = 0.0, $mul108 = 0.0, $mul111 = 0.0; var $mul130 = 0.0, $mul138 = 0, $mul150 = 0, $mul152 = 0.0, $mul2 = 0, $mul295 = 0.0, $mul359 = 0, $mul390 = 0.0, $mul391 = 0.0, $mul397 = 0.0, $mul399 = 0.0, $mul4 = 0, $mul400 = 0.0, $mul401 = 0.0, $mul410 = 0.0, $mul432 = 0, $mul436 = 0, $mul486 = 0, $mul488 = 0, $mul5 = 0; var $mul519 = 0.0, $mul523 = 0.0, $mul525 = 0.0, $mul549 = 0, $mul555 = 0, $mul565 = 0, $mul569 = 0, $mul578 = 0, $mul582 = 0, $mul608 = 0, $mul65 = 0, $mul66 = 0, $mul7 = 0, $mul8 = 0, $mul83 = 0.0, $mul86 = 0.0, $mul9 = 0, $nb_cbk_search = 0, $nb_subfr$addr = 0, $normalizer = 0.0; var $or$cond = 0, $pitch_out$addr = 0, $prevLag$addr = 0, $prevLag_log2 = 0.0, $retval = 0, $search_thres1$addr = 0.0, $search_thres2$addr = 0.0, $sf_length = 0, $sf_length_4kHz = 0, $sf_length_8kHz = 0, $shl = 0, $shl165 = 0, $shl318 = 0, $shl439 = 0, $shr = 0, $shr324 = 0, $shr433 = 0, $start_lag = 0, $sub = 0, $sub109 = 0.0; var $sub134 = 0.0, $sub143 = 0, $sub172 = 0, $sub196 = 0, $sub199 = 0, $sub232 = 0, $sub235 = 0, $sub239 = 0, $sub260 = 0, $sub35 = 0, $sub38 = 0, $sub392 = 0.0, $sub396 = 0.0, $sub404 = 0.0, $sub46 = 0, $sub471 = 0, $sub524 = 0.0, $sub56 = 0, $sub600 = 0, $sub654 = 0; var $sub75 = 0, $sub77 = 0, $sub96 = 0, $target_ptr = 0, $threshold = 0.0, $xcorr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 13936|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(13936|0); $frame_8kHz = sp + 9072|0; $frame_4kHz = sp + 8432|0; $frame_8_FIX = sp + 13288|0; $frame_4_FIX = sp + 12968|0; $filt_state = sp + 8408|0; $C = sp + 6016|0; $xcorr = sp + 5756|0; $CC = sp + 5712|0; $d_srch = sp + 5608|0; $d_comp = sp + 12664|0; $energies_st3 = sp + 2816|0; $cross_corr_st3 = sp + 96|0; $frame_16_FIX = sp + 11384|0; $frame_12_FIX = sp + 10424|0; $frame$addr = $frame; $pitch_out$addr = $pitch_out; $lagIndex$addr = $lagIndex; $contourIndex$addr = $contourIndex; $LTPCorr$addr = $LTPCorr; $prevLag$addr = $prevLag; $search_thres1$addr = $search_thres1; $search_thres2$addr = $search_thres2; $Fs_kHz$addr = $Fs_kHz; $complexity$addr = $complexity; $nb_subfr$addr = $nb_subfr; $arch$addr = $arch; $0 = $nb_subfr$addr; $mul = ($0*5)|0; $add = (20 + ($mul))|0; $1 = $Fs_kHz$addr; $mul1 = Math_imul($add, $1)|0; $frame_length = $mul1; $2 = $nb_subfr$addr; $mul2 = ($2*5)|0; $add3 = (20 + ($mul2))|0; $mul4 = $add3<<2; $frame_length_4kHz = $mul4; $3 = $nb_subfr$addr; $mul5 = ($3*5)|0; $add6 = (20 + ($mul5))|0; $mul7 = $add6<<3; $frame_length_8kHz = $mul7; $4 = $Fs_kHz$addr; $mul8 = ($4*5)|0; $sf_length = $mul8; $sf_length_4kHz = 20; $sf_length_8kHz = 40; $5 = $Fs_kHz$addr; $mul9 = $5<<1; $min_lag = $mul9; $min_lag_4kHz = 8; $min_lag_8kHz = 16; $6 = $Fs_kHz$addr; $mul10 = ($6*18)|0; $sub = (($mul10) - 1)|0; $max_lag = $sub; $max_lag_4kHz = 72; $max_lag_8kHz = 143; $7 = $Fs_kHz$addr; $cmp = ($7|0)==(16); do { if ($cmp) { $8 = $frame$addr; $9 = $frame_length; _silk_float2short_array_325($frame_16_FIX,$8,$9); ;HEAP32[$filt_state>>2]=0|0;HEAP32[$filt_state+4>>2]=0|0; $10 = $frame_length; _silk_resampler_down2($filt_state,$frame_8_FIX,$frame_16_FIX,$10); $11 = $frame_length_8kHz; _silk_short2float_array_326($frame_8kHz,$frame_8_FIX,$11); } else { $12 = $Fs_kHz$addr; $cmp17 = ($12|0)==(12); if ($cmp17) { $13 = $frame$addr; $14 = $frame_length; _silk_float2short_array_325($frame_12_FIX,$13,$14); ;HEAP32[$filt_state>>2]=0|0;HEAP32[$filt_state+4>>2]=0|0;HEAP32[$filt_state+8>>2]=0|0;HEAP32[$filt_state+12>>2]=0|0;HEAP32[$filt_state+16>>2]=0|0;HEAP32[$filt_state+20>>2]=0|0; $15 = $frame_length; _silk_resampler_down2_3($filt_state,$frame_8_FIX,$frame_12_FIX,$15); $16 = $frame_length_8kHz; _silk_short2float_array_326($frame_8kHz,$frame_8_FIX,$16); break; } else { $17 = $frame$addr; $18 = $frame_length_8kHz; _silk_float2short_array_325($frame_8_FIX,$17,$18); break; } } } while(0); ;HEAP32[$filt_state>>2]=0|0;HEAP32[$filt_state+4>>2]=0|0; $19 = $frame_length_8kHz; _silk_resampler_down2($filt_state,$frame_4_FIX,$frame_8_FIX,$19); $20 = $frame_length_4kHz; _silk_short2float_array_326($frame_4kHz,$frame_4_FIX,$20); $21 = $frame_length_4kHz; $sub35 = (($21) - 1)|0; $i = $sub35; while(1) { $22 = $i; $cmp36 = ($22|0)>(0); if (!($cmp36)) { break; } $23 = $i; $arrayidx = (($frame_4kHz) + ($23<<2)|0); $24 = +HEAPF32[$arrayidx>>2]; $conv = (~~(($24))); $conv37 = (+($conv|0)); $25 = $i; $sub38 = (($25) - 1)|0; $arrayidx39 = (($frame_4kHz) + ($sub38<<2)|0); $26 = +HEAPF32[$arrayidx39>>2]; $add40 = $conv37 + $26; $cmp41 = $add40 > 32767.0; if ($cmp41) { $cond60 = 32767.0; } else { $27 = $i; $arrayidx43 = (($frame_4kHz) + ($27<<2)|0); $28 = +HEAPF32[$arrayidx43>>2]; $conv44 = (~~(($28))); $conv45 = (+($conv44|0)); $29 = $i; $sub46 = (($29) - 1)|0; $arrayidx47 = (($frame_4kHz) + ($sub46<<2)|0); $30 = +HEAPF32[$arrayidx47>>2]; $add48 = $conv45 + $30; $cmp49 = $add48 < -32768.0; if ($cmp49) { $cond60 = -32768.0; } else { $31 = $i; $arrayidx53 = (($frame_4kHz) + ($31<<2)|0); $32 = +HEAPF32[$arrayidx53>>2]; $conv54 = (~~(($32))); $conv55 = (+($conv54|0)); $33 = $i; $sub56 = (($33) - 1)|0; $arrayidx57 = (($frame_4kHz) + ($sub56<<2)|0); $34 = +HEAPF32[$arrayidx57>>2]; $add58 = $conv55 + $34; $cond60 = $add58; } } $conv61 = (~~(($cond60))); $conv62 = (+($conv61<<16>>16)); $35 = $i; $arrayidx63 = (($frame_4kHz) + ($35<<2)|0); HEAPF32[$arrayidx63>>2] = $conv62; $36 = $i; $dec = (($36) + -1)|0; $i = $dec; } $37 = $nb_subfr$addr; $mul65 = $37<<2; $mul66 = ($mul65*149)|0; _memset(($C|0),0,($mul66|0))|0; $38 = $sf_length_4kHz; $shl = $38 << 2; $arrayidx67 = (($frame_4kHz) + ($shl<<2)|0); $target_ptr = $arrayidx67; $k = 0; while(1) { $39 = $k; $40 = $nb_subfr$addr; $shr = $40 >> 1; $cmp69 = ($39|0)<($shr|0); if (!($cmp69)) { break; } $41 = $target_ptr; $42 = $min_lag_4kHz; $idx$neg = (0 - ($42))|0; $add$ptr = (($41) + ($idx$neg<<2)|0); $basis_ptr = $add$ptr; $43 = $target_ptr; $44 = $target_ptr; $45 = $max_lag_4kHz; $idx$neg72 = (0 - ($45))|0; $add$ptr73 = (($44) + ($idx$neg72<<2)|0); $46 = $sf_length_8kHz; $47 = $max_lag_4kHz; $48 = $min_lag_4kHz; $sub75 = (($47) - ($48))|0; $add76 = (($sub75) + 1)|0; $49 = $arch$addr; _celt_pitch_xcorr_c($43,$add$ptr73,$xcorr,$46,$add76,$49); $50 = $max_lag_4kHz; $51 = $min_lag_4kHz; $sub77 = (($50) - ($51))|0; $arrayidx78 = (($xcorr) + ($sub77<<2)|0); $52 = +HEAPF32[$arrayidx78>>2]; $conv79 = $52; $cross_corr = $conv79; $53 = $target_ptr; $54 = $sf_length_8kHz; $call = (+_silk_energy_FLP($53,$54)); $55 = $basis_ptr; $56 = $sf_length_8kHz; $call80 = (+_silk_energy_FLP($55,$56)); $add81 = $call + $call80; $57 = $sf_length_8kHz; $conv82 = (+($57|0)); $mul83 = $conv82 * 4000.0; $conv84 = $mul83; $add85 = $add81 + $conv84; $normalizer = $add85; $58 = $cross_corr; $mul86 = 2.0 * $58; $59 = $normalizer; $div = $mul86 / $59; $conv87 = $div; $60 = $min_lag_4kHz; $arrayidx89 = (($C) + ($60<<2)|0); $61 = +HEAPF32[$arrayidx89>>2]; $add90 = $61 + $conv87; HEAPF32[$arrayidx89>>2] = $add90; $62 = $min_lag_4kHz; $add91 = (($62) + 1)|0; $d = $add91; while(1) { $63 = $d; $64 = $max_lag_4kHz; $cmp93 = ($63|0)<=($64|0); if (!($cmp93)) { break; } $65 = $basis_ptr; $incdec$ptr = ((($65)) + -4|0); $basis_ptr = $incdec$ptr; $66 = $max_lag_4kHz; $67 = $d; $sub96 = (($66) - ($67))|0; $arrayidx97 = (($xcorr) + ($sub96<<2)|0); $68 = +HEAPF32[$arrayidx97>>2]; $conv98 = $68; $cross_corr = $conv98; $69 = $basis_ptr; $70 = +HEAPF32[$69>>2]; $conv100 = $70; $71 = $basis_ptr; $72 = +HEAPF32[$71>>2]; $conv102 = $72; $mul103 = $conv100 * $conv102; $73 = $basis_ptr; $74 = $sf_length_8kHz; $arrayidx104 = (($73) + ($74<<2)|0); $75 = +HEAPF32[$arrayidx104>>2]; $conv105 = $75; $76 = $basis_ptr; $77 = $sf_length_8kHz; $arrayidx106 = (($76) + ($77<<2)|0); $78 = +HEAPF32[$arrayidx106>>2]; $conv107 = $78; $mul108 = $conv105 * $conv107; $sub109 = $mul103 - $mul108; $79 = $normalizer; $add110 = $79 + $sub109; $normalizer = $add110; $80 = $cross_corr; $mul111 = 2.0 * $80; $81 = $normalizer; $div112 = $mul111 / $81; $conv113 = $div112; $82 = $d; $arrayidx115 = (($C) + ($82<<2)|0); $83 = +HEAPF32[$arrayidx115>>2]; $add116 = $83 + $conv113; HEAPF32[$arrayidx115>>2] = $add116; $84 = $d; $inc = (($84) + 1)|0; $d = $inc; } $85 = $sf_length_8kHz; $86 = $target_ptr; $add$ptr119 = (($86) + ($85<<2)|0); $target_ptr = $add$ptr119; $87 = $k; $inc121 = (($87) + 1)|0; $k = $inc121; } $88 = $max_lag_4kHz; $i = $88; while(1) { $89 = $i; $90 = $min_lag_4kHz; $cmp124 = ($89|0)>=($90|0); if (!($cmp124)) { break; } $91 = $i; $arrayidx128 = (($C) + ($91<<2)|0); $92 = +HEAPF32[$arrayidx128>>2]; $93 = $i; $conv129 = (+($93|0)); $mul130 = $92 * $conv129; $div131 = $mul130 / 4096.0; $94 = $i; $arrayidx133 = (($C) + ($94<<2)|0); $95 = +HEAPF32[$arrayidx133>>2]; $sub134 = $95 - $div131; HEAPF32[$arrayidx133>>2] = $sub134; $96 = $i; $dec136 = (($96) + -1)|0; $i = $dec136; } $97 = $complexity$addr; $mul138 = $97<<1; $add139 = (4 + ($mul138))|0; $length_d_srch = $add139; $98 = $min_lag_4kHz; $arrayidx141 = (($C) + ($98<<2)|0); $99 = $max_lag_4kHz; $100 = $min_lag_4kHz; $sub143 = (($99) - ($100))|0; $add144 = (($sub143) + 1)|0; $101 = $length_d_srch; _silk_insertion_sort_decreasing_FLP($arrayidx141,$d_srch,$add144,$101); $102 = $min_lag_4kHz; $arrayidx146 = (($C) + ($102<<2)|0); $103 = +HEAPF32[$arrayidx146>>2]; $Cmax = $103; $104 = $Cmax; $cmp147 = $104 < 0.20000000298023224; if ($cmp147) { $105 = $pitch_out$addr; $106 = $nb_subfr$addr; $mul150 = $106<<2; _memset(($105|0),0,($mul150|0))|0; $107 = $LTPCorr$addr; HEAPF32[$107>>2] = 0.0; $108 = $lagIndex$addr; HEAP16[$108>>1] = 0; $109 = $contourIndex$addr; HEAP8[$109>>0] = 0; $retval = 1; $434 = $retval; STACKTOP = sp;return ($434|0); } $110 = $search_thres1$addr; $111 = $Cmax; $mul152 = $110 * $111; $threshold = $mul152; $i = 0; while(1) { $112 = $i; $113 = $length_d_srch; $cmp154 = ($112|0)<($113|0); if (!($cmp154)) { break; } $114 = $min_lag_4kHz; $115 = $i; $add158 = (($114) + ($115))|0; $arrayidx159 = (($C) + ($add158<<2)|0); $116 = +HEAPF32[$arrayidx159>>2]; $117 = $threshold; $cmp160 = $116 > $117; $118 = $i; if (!($cmp160)) { label = 27; break; } $arrayidx163 = (($d_srch) + ($118<<2)|0); $119 = HEAP32[$arrayidx163>>2]|0; $120 = $min_lag_4kHz; $add164 = (($119) + ($120))|0; $shl165 = $add164 << 1; $121 = $i; $arrayidx166 = (($d_srch) + ($121<<2)|0); HEAP32[$arrayidx166>>2] = $shl165; $122 = $i; $inc170 = (($122) + 1)|0; $i = $inc170; } if ((label|0) == 27) { $length_d_srch = $118; } $123 = $min_lag_8kHz; $sub172 = (($123) - 5)|0; $i = $sub172; while(1) { $124 = $i; $125 = $max_lag_8kHz; $add174 = (($125) + 5)|0; $cmp175 = ($124|0)<($add174|0); if (!($cmp175)) { break; } $126 = $i; $arrayidx178 = (($d_comp) + ($126<<1)|0); HEAP16[$arrayidx178>>1] = 0; $127 = $i; $inc180 = (($127) + 1)|0; $i = $inc180; } $i = 0; while(1) { $128 = $i; $129 = $length_d_srch; $cmp183 = ($128|0)<($129|0); if (!($cmp183)) { break; } $130 = $i; $arrayidx186 = (($d_srch) + ($130<<2)|0); $131 = HEAP32[$arrayidx186>>2]|0; $arrayidx187 = (($d_comp) + ($131<<1)|0); HEAP16[$arrayidx187>>1] = 1; $132 = $i; $inc189 = (($132) + 1)|0; $i = $inc189; } $133 = $max_lag_8kHz; $add191 = (($133) + 3)|0; $i = $add191; while(1) { $134 = $i; $135 = $min_lag_8kHz; $cmp193 = ($134|0)>=($135|0); if (!($cmp193)) { break; } $136 = $i; $sub196 = (($136) - 1)|0; $arrayidx197 = (($d_comp) + ($sub196<<1)|0); $137 = HEAP16[$arrayidx197>>1]|0; $conv198 = $137 << 16 >> 16; $138 = $i; $sub199 = (($138) - 2)|0; $arrayidx200 = (($d_comp) + ($sub199<<1)|0); $139 = HEAP16[$arrayidx200>>1]|0; $conv201 = $139 << 16 >> 16; $add202 = (($conv198) + ($conv201))|0; $140 = $i; $arrayidx203 = (($d_comp) + ($140<<1)|0); $141 = HEAP16[$arrayidx203>>1]|0; $conv204 = $141 << 16 >> 16; $add205 = (($conv204) + ($add202))|0; $conv206 = $add205&65535; HEAP16[$arrayidx203>>1] = $conv206; $142 = $i; $dec208 = (($142) + -1)|0; $i = $dec208; } $length_d_srch = 0; $143 = $min_lag_8kHz; $i = $143; while(1) { $144 = $i; $145 = $max_lag_8kHz; $add211 = (($145) + 1)|0; $cmp212 = ($144|0)<($add211|0); if (!($cmp212)) { break; } $146 = $i; $add215 = (($146) + 1)|0; $arrayidx216 = (($d_comp) + ($add215<<1)|0); $147 = HEAP16[$arrayidx216>>1]|0; $conv217 = $147 << 16 >> 16; $cmp218 = ($conv217|0)>(0); if ($cmp218) { $148 = $i; $149 = $length_d_srch; $arrayidx221 = (($d_srch) + ($149<<2)|0); HEAP32[$arrayidx221>>2] = $148; $150 = $length_d_srch; $inc222 = (($150) + 1)|0; $length_d_srch = $inc222; } $151 = $i; $inc225 = (($151) + 1)|0; $i = $inc225; } $152 = $max_lag_8kHz; $add227 = (($152) + 3)|0; $i = $add227; while(1) { $153 = $i; $154 = $min_lag_8kHz; $cmp229 = ($153|0)>=($154|0); if (!($cmp229)) { break; } $155 = $i; $sub232 = (($155) - 1)|0; $arrayidx233 = (($d_comp) + ($sub232<<1)|0); $156 = HEAP16[$arrayidx233>>1]|0; $conv234 = $156 << 16 >> 16; $157 = $i; $sub235 = (($157) - 2)|0; $arrayidx236 = (($d_comp) + ($sub235<<1)|0); $158 = HEAP16[$arrayidx236>>1]|0; $conv237 = $158 << 16 >> 16; $add238 = (($conv234) + ($conv237))|0; $159 = $i; $sub239 = (($159) - 3)|0; $arrayidx240 = (($d_comp) + ($sub239<<1)|0); $160 = HEAP16[$arrayidx240>>1]|0; $conv241 = $160 << 16 >> 16; $add242 = (($add238) + ($conv241))|0; $161 = $i; $arrayidx243 = (($d_comp) + ($161<<1)|0); $162 = HEAP16[$arrayidx243>>1]|0; $conv244 = $162 << 16 >> 16; $add245 = (($conv244) + ($add242))|0; $conv246 = $add245&65535; HEAP16[$arrayidx243>>1] = $conv246; $163 = $i; $dec248 = (($163) + -1)|0; $i = $dec248; } $length_d_comp = 0; $164 = $min_lag_8kHz; $i = $164; while(1) { $165 = $i; $166 = $max_lag_8kHz; $add251 = (($166) + 4)|0; $cmp252 = ($165|0)<($add251|0); if (!($cmp252)) { break; } $167 = $i; $arrayidx255 = (($d_comp) + ($167<<1)|0); $168 = HEAP16[$arrayidx255>>1]|0; $conv256 = $168 << 16 >> 16; $cmp257 = ($conv256|0)>(0); if ($cmp257) { $169 = $i; $sub260 = (($169) - 2)|0; $conv261 = $sub260&65535; $170 = $length_d_comp; $arrayidx262 = (($d_comp) + ($170<<1)|0); HEAP16[$arrayidx262>>1] = $conv261; $171 = $length_d_comp; $inc263 = (($171) + 1)|0; $length_d_comp = $inc263; } $172 = $i; $inc266 = (($172) + 1)|0; $i = $inc266; } _memset(($C|0),0,2384)|0; $173 = $Fs_kHz$addr; $cmp269 = ($173|0)==(8); if ($cmp269) { $174 = $frame$addr; $arrayidx272 = ((($174)) + 640|0); $target_ptr = $arrayidx272; } else { $arrayidx274 = ((($frame_8kHz)) + 640|0); $target_ptr = $arrayidx274; } $k = 0; while(1) { $175 = $k; $176 = $nb_subfr$addr; $cmp277 = ($175|0)<($176|0); if (!($cmp277)) { break; } $177 = $target_ptr; $178 = $sf_length_8kHz; $call280 = (+_silk_energy_FLP($177,$178)); $add281 = $call280 + 1.0; $energy_tmp = $add281; $j = 0; while(1) { $179 = $j; $180 = $length_d_comp; $cmp283 = ($179|0)<($180|0); if (!($cmp283)) { break; } $181 = $j; $arrayidx286 = (($d_comp) + ($181<<1)|0); $182 = HEAP16[$arrayidx286>>1]|0; $conv287 = $182 << 16 >> 16; $d = $conv287; $183 = $target_ptr; $184 = $d; $idx$neg288 = (0 - ($184))|0; $add$ptr289 = (($183) + ($idx$neg288<<2)|0); $basis_ptr = $add$ptr289; $185 = $basis_ptr; $186 = $target_ptr; $187 = $sf_length_8kHz; $call290 = (+_silk_inner_product_FLP($185,$186,$187)); $cross_corr = $call290; $188 = $cross_corr; $cmp291 = $188 > 0.0; if ($cmp291) { $189 = $basis_ptr; $190 = $sf_length_8kHz; $call294 = (+_silk_energy_FLP($189,$190)); $energy = $call294; $191 = $cross_corr; $mul295 = 2.0 * $191; $192 = $energy; $193 = $energy_tmp; $add296 = $192 + $193; $div297 = $mul295 / $add296; $conv298 = $div297; $194 = $k; $arrayidx299 = (($C) + (($194*596)|0)|0); $195 = $d; $arrayidx300 = (($arrayidx299) + ($195<<2)|0); $$sink = $conv298;$arrayidx303$sink = $arrayidx300; } else { $196 = $k; $arrayidx302 = (($C) + (($196*596)|0)|0); $197 = $d; $arrayidx303 = (($arrayidx302) + ($197<<2)|0); $$sink = 0.0;$arrayidx303$sink = $arrayidx303; } HEAPF32[$arrayidx303$sink>>2] = $$sink; $198 = $j; $inc306 = (($198) + 1)|0; $j = $inc306; } $199 = $sf_length_8kHz; $200 = $target_ptr; $add$ptr308 = (($200) + ($199<<2)|0); $target_ptr = $add$ptr308; $201 = $k; $inc310 = (($201) + 1)|0; $k = $inc310; } $CCmax = 0.0; $CCmax_b = -1000.0; $CBimax = 0; $lag = -1; $202 = $prevLag$addr; $cmp312 = ($202|0)>(0); if ($cmp312) { $203 = $Fs_kHz$addr; $cmp315 = ($203|0)==(12); if ($cmp315) { $204 = $prevLag$addr; $shl318 = $204 << 1; $div319 = (($shl318|0) / 3)&-1; $prevLag$addr = $div319; } else { $205 = $Fs_kHz$addr; $cmp321 = ($205|0)==(16); if ($cmp321) { $206 = $prevLag$addr; $shr324 = $206 >> 1; $prevLag$addr = $shr324; } } $207 = $prevLag$addr; $conv327 = (+($207|0)); $conv328 = $conv327; $call329 = (+_silk_log2_327($conv328)); $prevLag_log2 = $call329; } else { $prevLag_log2 = 0.0; } $208 = $nb_subfr$addr; $cmp332 = ($208|0)==(4); do { if ($cmp332) { $cbk_size = 11; $Lag_CB_ptr = 35890; $209 = $Fs_kHz$addr; $cmp335 = ($209|0)==(8); $210 = $complexity$addr; $cmp337 = ($210|0)>(0); $or$cond = $cmp335 & $cmp337; if ($or$cond) { $nb_cbk_search = 11; break; } else { $nb_cbk_search = 3; break; } } else { $cbk_size = 3; $Lag_CB_ptr = 35856; $nb_cbk_search = 3; } } while(0); $k = 0; while(1) { $211 = $k; $212 = $length_d_srch; $cmp345 = ($211|0)<($212|0); if (!($cmp345)) { break; } $213 = $k; $arrayidx348 = (($d_srch) + ($213<<2)|0); $214 = HEAP32[$arrayidx348>>2]|0; $d = $214; $j = 0; while(1) { $215 = $j; $216 = $nb_cbk_search; $cmp350 = ($215|0)<($216|0); if (!($cmp350)) { break; } $217 = $j; $arrayidx353 = (($CC) + ($217<<2)|0); HEAPF32[$arrayidx353>>2] = 0.0; $i = 0; while(1) { $218 = $i; $219 = $nb_subfr$addr; $cmp355 = ($218|0)<($219|0); if (!($cmp355)) { break; } $220 = $i; $arrayidx358 = (($C) + (($220*596)|0)|0); $221 = $d; $222 = $Lag_CB_ptr; $223 = $i; $224 = $cbk_size; $mul359 = Math_imul($223, $224)|0; $225 = $j; $add360 = (($mul359) + ($225))|0; $add$ptr361 = (($222) + ($add360)|0); $226 = HEAP8[$add$ptr361>>0]|0; $conv362 = $226 << 24 >> 24; $add363 = (($221) + ($conv362))|0; $arrayidx364 = (($arrayidx358) + ($add363<<2)|0); $227 = +HEAPF32[$arrayidx364>>2]; $228 = $j; $arrayidx365 = (($CC) + ($228<<2)|0); $229 = +HEAPF32[$arrayidx365>>2]; $add366 = $229 + $227; HEAPF32[$arrayidx365>>2] = $add366; $230 = $i; $inc368 = (($230) + 1)|0; $i = $inc368; } $231 = $j; $inc371 = (($231) + 1)|0; $j = $inc371; } $CCmax_new = -1000.0; $CBimax_new = 0; $i = 0; while(1) { $232 = $i; $233 = $nb_cbk_search; $cmp374 = ($232|0)<($233|0); if (!($cmp374)) { break; } $234 = $i; $arrayidx377 = (($CC) + ($234<<2)|0); $235 = +HEAPF32[$arrayidx377>>2]; $236 = $CCmax_new; $cmp378 = $235 > $236; if ($cmp378) { $237 = $i; $arrayidx381 = (($CC) + ($237<<2)|0); $238 = +HEAPF32[$arrayidx381>>2]; $CCmax_new = $238; $239 = $i; $CBimax_new = $239; } $240 = $i; $inc384 = (($240) + 1)|0; $i = $inc384; } $241 = $d; $conv386 = (+($241|0)); $conv387 = $conv386; $call388 = (+_silk_log2_327($conv387)); $lag_log2 = $call388; $242 = $CCmax_new; $243 = $nb_subfr$addr; $conv389 = (+($243|0)); $mul390 = 0.20000000298023224 * $conv389; $244 = $lag_log2; $mul391 = $mul390 * $244; $sub392 = $242 - $mul391; $CCmax_new_b = $sub392; $245 = $prevLag$addr; $cmp393 = ($245|0)>(0); if ($cmp393) { $246 = $lag_log2; $247 = $prevLag_log2; $sub396 = $246 - $247; $delta_lag_log2_sqr = $sub396; $248 = $delta_lag_log2_sqr; $249 = $delta_lag_log2_sqr; $mul397 = $249 * $248; $delta_lag_log2_sqr = $mul397; $250 = $nb_subfr$addr; $conv398 = (+($250|0)); $mul399 = 0.20000000298023224 * $conv398; $251 = $LTPCorr$addr; $252 = +HEAPF32[$251>>2]; $mul400 = $mul399 * $252; $253 = $delta_lag_log2_sqr; $mul401 = $mul400 * $253; $254 = $delta_lag_log2_sqr; $add402 = $254 + 0.5; $div403 = $mul401 / $add402; $255 = $CCmax_new_b; $sub404 = $255 - $div403; $CCmax_new_b = $sub404; } $256 = $CCmax_new_b; $257 = $CCmax_b; $cmp406 = $256 > $257; if ($cmp406) { $258 = $CCmax_new; $259 = $nb_subfr$addr; $conv409 = (+($259|0)); $260 = $search_thres2$addr; $mul410 = $conv409 * $260; $cmp411 = $258 > $mul410; if ($cmp411) { $261 = $CCmax_new_b; $CCmax_b = $261; $262 = $CCmax_new; $CCmax = $262; $263 = $d; $lag = $263; $264 = $CBimax_new; $CBimax = $264; } } $265 = $k; $inc416 = (($265) + 1)|0; $k = $inc416; } $266 = $lag; $cmp418 = ($266|0)==(-1); if ($cmp418) { $267 = $pitch_out$addr; ;HEAP32[$267>>2]=0|0;HEAP32[$267+4>>2]=0|0;HEAP32[$267+8>>2]=0|0;HEAP32[$267+12>>2]=0|0; $268 = $LTPCorr$addr; HEAPF32[$268>>2] = 0.0; $269 = $lagIndex$addr; HEAP16[$269>>1] = 0; $270 = $contourIndex$addr; HEAP8[$270>>0] = 0; $retval = 1; $434 = $retval; STACKTOP = sp;return ($434|0); } $271 = $CCmax; $272 = $nb_subfr$addr; $conv422 = (+($272|0)); $div423 = $271 / $conv422; $273 = $LTPCorr$addr; HEAPF32[$273>>2] = $div423; $274 = $Fs_kHz$addr; $cmp424 = ($274|0)>(8); if ($cmp424) { $275 = $Fs_kHz$addr; $cmp427 = ($275|0)==(12); $276 = $lag; if ($cmp427) { $conv430 = $276&65535; $conv431 = $conv430 << 16 >> 16; $mul432 = ($conv431*3)|0; $shr433 = $mul432 >> 1; $277 = $lag; $conv434 = $277&65535; $conv435 = $conv434 << 16 >> 16; $mul436 = ($conv435*3)|0; $and = $mul436 & 1; $add437 = (($shr433) + ($and))|0; $lag = $add437; } else { $shl439 = $276 << 1; $lag = $shl439; } $278 = $min_lag; $279 = $max_lag; $cmp441 = ($278|0)>($279|0); $280 = $lag; do { if ($cmp441) { $281 = $min_lag; $cmp444 = ($280|0)>($281|0); if ($cmp444) { $282 = $min_lag; $cond470 = $282; break; } else { $283 = $lag; $284 = $max_lag; $cmp448 = ($283|0)<($284|0); $285 = $max_lag; $286 = $lag; $cond453 = $cmp448 ? $285 : $286; $cond470 = $cond453; break; } } else { $287 = $max_lag; $cmp457 = ($280|0)>($287|0); if ($cmp457) { $288 = $max_lag; $cond470 = $288; break; } else { $289 = $lag; $290 = $min_lag; $cmp461 = ($289|0)<($290|0); $291 = $min_lag; $292 = $lag; $cond466 = $cmp461 ? $291 : $292; $cond470 = $cond466; break; } } } while(0); $lag = $cond470; $293 = $lag; $sub471 = (($293) - 2)|0; $294 = $min_lag; $call472 = (_silk_max_int_328($sub471,$294)|0); $start_lag = $call472; $295 = $lag; $add473 = (($295) + 2)|0; $296 = $max_lag; $call474 = (_silk_min_int_329($add473,$296)|0); $end_lag = $call474; $297 = $lag; $lag_new = $297; $CBimax = 0; $CCmax = -1000.0; $298 = $frame$addr; $299 = $start_lag; $300 = $sf_length; $301 = $nb_subfr$addr; $302 = $complexity$addr; $303 = $arch$addr; _silk_P_Ana_calc_corr_st3($cross_corr_st3,$298,$299,$300,$301,$302,$303); $304 = $frame$addr; $305 = $start_lag; $306 = $sf_length; $307 = $nb_subfr$addr; $308 = $complexity$addr; _silk_P_Ana_calc_energy_st3($energies_st3,$304,$305,$306,$307,$308); $lag_counter = 0; $309 = $lag; $conv477 = (+($309|0)); $div478 = 0.05000000074505806 / $conv477; $contour_bias = $div478; $310 = $nb_subfr$addr; $cmp479 = ($310|0)==(4); if ($cmp479) { $311 = $complexity$addr; $arrayidx482 = (36094 + ($311)|0); $312 = HEAP8[$arrayidx482>>0]|0; $conv483 = $312 << 24 >> 24; $nb_cbk_search = $conv483; $cbk_size = 34; $Lag_CB_ptr = 35934; } else { $nb_cbk_search = 12; $cbk_size = 12; $Lag_CB_ptr = 35862; } $313 = $frame$addr; $314 = $Fs_kHz$addr; $mul486 = ($314*20)|0; $arrayidx487 = (($313) + ($mul486<<2)|0); $target_ptr = $arrayidx487; $315 = $target_ptr; $316 = $nb_subfr$addr; $317 = $sf_length; $mul488 = Math_imul($316, $317)|0; $call489 = (+_silk_energy_FLP($315,$mul488)); $add490 = $call489 + 1.0; $energy_tmp = $add490; $318 = $start_lag; $d = $318; while(1) { $319 = $d; $320 = $end_lag; $cmp492 = ($319|0)<=($320|0); if (!($cmp492)) { break; } $j = 0; while(1) { $321 = $j; $322 = $nb_cbk_search; $cmp496 = ($321|0)<($322|0); if (!($cmp496)) { break; } $cross_corr = 0.0; $323 = $energy_tmp; $energy = $323; $k = 0; while(1) { $324 = $k; $325 = $nb_subfr$addr; $cmp500 = ($324|0)<($325|0); if (!($cmp500)) { break; } $326 = $k; $arrayidx503 = (($cross_corr_st3) + (($326*680)|0)|0); $327 = $j; $arrayidx504 = (($arrayidx503) + (($327*20)|0)|0); $328 = $lag_counter; $arrayidx505 = (($arrayidx504) + ($328<<2)|0); $329 = +HEAPF32[$arrayidx505>>2]; $conv506 = $329; $330 = $cross_corr; $add507 = $330 + $conv506; $cross_corr = $add507; $331 = $k; $arrayidx508 = (($energies_st3) + (($331*680)|0)|0); $332 = $j; $arrayidx509 = (($arrayidx508) + (($332*20)|0)|0); $333 = $lag_counter; $arrayidx510 = (($arrayidx509) + ($333<<2)|0); $334 = +HEAPF32[$arrayidx510>>2]; $conv511 = $334; $335 = $energy; $add512 = $335 + $conv511; $energy = $add512; $336 = $k; $inc514 = (($336) + 1)|0; $k = $inc514; } $337 = $cross_corr; $cmp516 = $337 > 0.0; if ($cmp516) { $338 = $cross_corr; $mul519 = 2.0 * $338; $339 = $energy; $div520 = $mul519 / $339; $conv521 = $div520; $CCmax_new = $conv521; $340 = $contour_bias; $341 = $j; $conv522 = (+($341|0)); $mul523 = $340 * $conv522; $sub524 = 1.0 - $mul523; $342 = $CCmax_new; $mul525 = $342 * $sub524; $CCmax_new = $mul525; } else { $CCmax_new = 0.0; } $343 = $CCmax_new; $344 = $CCmax; $cmp528 = $343 > $344; if ($cmp528) { $345 = $d; $346 = $j; $arrayidx531 = (35934 + ($346)|0); $347 = HEAP8[$arrayidx531>>0]|0; $conv532 = $347 << 24 >> 24; $add533 = (($345) + ($conv532))|0; $348 = $max_lag; $cmp534 = ($add533|0)<=($348|0); if ($cmp534) { $349 = $CCmax_new; $CCmax = $349; $350 = $d; $lag_new = $350; $351 = $j; $CBimax = $351; } } $352 = $j; $inc539 = (($352) + 1)|0; $j = $inc539; } $353 = $lag_counter; $inc541 = (($353) + 1)|0; $lag_counter = $inc541; $354 = $d; $inc543 = (($354) + 1)|0; $d = $inc543; } $k = 0; while(1) { $355 = $k; $356 = $nb_subfr$addr; $cmp546 = ($355|0)<($356|0); $357 = $lag_new; if (!($cmp546)) { break; } $358 = $Lag_CB_ptr; $359 = $k; $360 = $cbk_size; $mul549 = Math_imul($359, $360)|0; $361 = $CBimax; $add550 = (($mul549) + ($361))|0; $add$ptr551 = (($358) + ($add550)|0); $362 = HEAP8[$add$ptr551>>0]|0; $conv552 = $362 << 24 >> 24; $add553 = (($357) + ($conv552))|0; $363 = $pitch_out$addr; $364 = $k; $arrayidx554 = (($363) + ($364<<2)|0); HEAP32[$arrayidx554>>2] = $add553; $365 = $min_lag; $366 = $Fs_kHz$addr; $mul555 = ($366*18)|0; $cmp556 = ($365|0)>($mul555|0); $367 = $pitch_out$addr; $368 = $k; $arrayidx559 = (($367) + ($368<<2)|0); $369 = HEAP32[$arrayidx559>>2]|0; do { if ($cmp556) { $370 = $min_lag; $cmp560 = ($369|0)>($370|0); if ($cmp560) { $371 = $min_lag; $cond595 = $371; break; } $372 = $pitch_out$addr; $373 = $k; $arrayidx564 = (($372) + ($373<<2)|0); $374 = HEAP32[$arrayidx564>>2]|0; $375 = $Fs_kHz$addr; $mul565 = ($375*18)|0; $cmp566 = ($374|0)<($mul565|0); if ($cmp566) { $376 = $Fs_kHz$addr; $mul569 = ($376*18)|0; $cond595 = $mul569; break; } else { $377 = $pitch_out$addr; $378 = $k; $arrayidx571 = (($377) + ($378<<2)|0); $379 = HEAP32[$arrayidx571>>2]|0; $cond595 = $379; break; } } else { $380 = $Fs_kHz$addr; $mul578 = ($380*18)|0; $cmp579 = ($369|0)>($mul578|0); if ($cmp579) { $381 = $Fs_kHz$addr; $mul582 = ($381*18)|0; $cond595 = $mul582; break; } $382 = $pitch_out$addr; $383 = $k; $arrayidx584 = (($382) + ($383<<2)|0); $384 = HEAP32[$arrayidx584>>2]|0; $385 = $min_lag; $cmp585 = ($384|0)<($385|0); if ($cmp585) { $386 = $min_lag; $cond595 = $386; break; } else { $387 = $pitch_out$addr; $388 = $k; $arrayidx589 = (($387) + ($388<<2)|0); $389 = HEAP32[$arrayidx589>>2]|0; $cond595 = $389; break; } } } while(0); $390 = $pitch_out$addr; $391 = $k; $arrayidx596 = (($390) + ($391<<2)|0); HEAP32[$arrayidx596>>2] = $cond595; $392 = $k; $inc598 = (($392) + 1)|0; $k = $inc598; } $393 = $min_lag; $sub600 = (($357) - ($393))|0; $conv601 = $sub600&65535; $394 = $lagIndex$addr; HEAP16[$394>>1] = $conv601; $395 = $CBimax; $conv602 = $395&255; $396 = $contourIndex$addr; HEAP8[$396>>0] = $conv602; } else { $k = 0; while(1) { $397 = $k; $398 = $nb_subfr$addr; $cmp605 = ($397|0)<($398|0); $399 = $lag; if (!($cmp605)) { break; } $400 = $Lag_CB_ptr; $401 = $k; $402 = $cbk_size; $mul608 = Math_imul($401, $402)|0; $403 = $CBimax; $add609 = (($mul608) + ($403))|0; $add$ptr610 = (($400) + ($add609)|0); $404 = HEAP8[$add$ptr610>>0]|0; $conv611 = $404 << 24 >> 24; $add612 = (($399) + ($conv611))|0; $405 = $pitch_out$addr; $406 = $k; $arrayidx613 = (($405) + ($406<<2)|0); HEAP32[$arrayidx613>>2] = $add612; $407 = $min_lag_8kHz; $cmp614 = ($407|0)>(144); $408 = $pitch_out$addr; $409 = $k; $arrayidx617 = (($408) + ($409<<2)|0); $410 = HEAP32[$arrayidx617>>2]|0; do { if ($cmp614) { $411 = $min_lag_8kHz; $cmp618 = ($410|0)>($411|0); if ($cmp618) { $412 = $min_lag_8kHz; $cond649 = $412; break; } $413 = $pitch_out$addr; $414 = $k; $arrayidx622 = (($413) + ($414<<2)|0); $415 = HEAP32[$arrayidx622>>2]|0; $cmp623 = ($415|0)<(144); if ($cmp623) { $cond649 = 144; } else { $416 = $pitch_out$addr; $417 = $k; $arrayidx627 = (($416) + ($417<<2)|0); $418 = HEAP32[$arrayidx627>>2]|0; $cond649 = $418; } } else { $cmp634 = ($410|0)>(144); if ($cmp634) { $cond649 = 144; } else { $419 = $pitch_out$addr; $420 = $k; $arrayidx638 = (($419) + ($420<<2)|0); $421 = HEAP32[$arrayidx638>>2]|0; $422 = $min_lag_8kHz; $cmp639 = ($421|0)<($422|0); if ($cmp639) { $423 = $min_lag_8kHz; $cond649 = $423; break; } else { $424 = $pitch_out$addr; $425 = $k; $arrayidx643 = (($424) + ($425<<2)|0); $426 = HEAP32[$arrayidx643>>2]|0; $cond649 = $426; break; } } } } while(0); $427 = $pitch_out$addr; $428 = $k; $arrayidx650 = (($427) + ($428<<2)|0); HEAP32[$arrayidx650>>2] = $cond649; $429 = $k; $inc652 = (($429) + 1)|0; $k = $inc652; } $430 = $min_lag_8kHz; $sub654 = (($399) - ($430))|0; $conv655 = $sub654&65535; $431 = $lagIndex$addr; HEAP16[$431>>1] = $conv655; $432 = $CBimax; $conv656 = $432&255; $433 = $contourIndex$addr; HEAP8[$433>>0] = $conv656; } $retval = 0; $434 = $retval; STACKTOP = sp;return ($434|0); } function _silk_float2short_array_325($out,$in,$length) { $out = $out|0; $in = $in|0; $length = $length|0; var $0 = 0, $1 = 0, $10 = 0.0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0.0, $5 = 0, $6 = 0, $7 = 0.0, $8 = 0, $9 = 0, $arrayidx = 0, $arrayidx11 = 0, $arrayidx2 = 0, $arrayidx7 = 0, $call = 0, $call3 = 0; var $call8 = 0, $cmp = 0, $cmp1 = 0, $cmp4 = 0, $cond10 = 0, $conv = 0, $dec = 0, $in$addr = 0, $k = 0, $length$addr = 0, $out$addr = 0, $sub = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $out$addr = $out; $in$addr = $in; $length$addr = $length; $0 = $length$addr; $sub = (($0) - 1)|0; $k = $sub; while(1) { $1 = $k; $cmp = ($1|0)>=(0); if (!($cmp)) { break; } $2 = $in$addr; $3 = $k; $arrayidx = (($2) + ($3<<2)|0); $4 = +HEAPF32[$arrayidx>>2]; $call = (_lrintf($4)|0); $cmp1 = ($call|0)>(32767); if ($cmp1) { $cond10 = 32767; } else { $5 = $in$addr; $6 = $k; $arrayidx2 = (($5) + ($6<<2)|0); $7 = +HEAPF32[$arrayidx2>>2]; $call3 = (_lrintf($7)|0); $cmp4 = ($call3|0)<(-32768); if ($cmp4) { $cond10 = -32768; } else { $8 = $in$addr; $9 = $k; $arrayidx7 = (($8) + ($9<<2)|0); $10 = +HEAPF32[$arrayidx7>>2]; $call8 = (_lrintf($10)|0); $cond10 = $call8; } } $conv = $cond10&65535; $11 = $out$addr; $12 = $k; $arrayidx11 = (($11) + ($12<<1)|0); HEAP16[$arrayidx11>>1] = $conv; $13 = $k; $dec = (($13) + -1)|0; $k = $dec; } STACKTOP = sp;return; } function _silk_short2float_array_326($out,$in,$length) { $out = $out|0; $in = $in|0; $length = $length|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $arrayidx = 0, $arrayidx1 = 0, $cmp = 0, $conv = 0.0, $dec = 0, $in$addr = 0, $k = 0, $length$addr = 0, $out$addr = 0, $sub = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $out$addr = $out; $in$addr = $in; $length$addr = $length; $0 = $length$addr; $sub = (($0) - 1)|0; $k = $sub; while(1) { $1 = $k; $cmp = ($1|0)>=(0); if (!($cmp)) { break; } $2 = $in$addr; $3 = $k; $arrayidx = (($2) + ($3<<1)|0); $4 = HEAP16[$arrayidx>>1]|0; $conv = (+($4<<16>>16)); $5 = $out$addr; $6 = $k; $arrayidx1 = (($5) + ($6<<2)|0); HEAPF32[$arrayidx1>>2] = $conv; $7 = $k; $dec = (($7) + -1)|0; $k = $dec; } STACKTOP = sp;return; } function _silk_log2_327($x) { $x = +$x; var $0 = 0.0, $call = 0.0, $conv = 0.0, $mul = 0.0, $x$addr = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $x$addr = $x; $0 = $x$addr; $call = (+_log10($0)); $mul = 3.32192809488736 * $call; $conv = $mul; STACKTOP = sp;return (+$conv); } function _silk_max_int_328($a,$b) { $a = $a|0; $b = $b|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $a$addr = 0, $b$addr = 0, $cmp = 0, $cond = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $a$addr = $a; $b$addr = $b; $0 = $a$addr; $1 = $b$addr; $cmp = ($0|0)>($1|0); $2 = $a$addr; $3 = $b$addr; $cond = $cmp ? $2 : $3; STACKTOP = sp;return ($cond|0); } function _silk_min_int_329($a,$b) { $a = $a|0; $b = $b|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $a$addr = 0, $b$addr = 0, $cmp = 0, $cond = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $a$addr = $a; $b$addr = $b; $0 = $a$addr; $1 = $b$addr; $cmp = ($0|0)<($1|0); $2 = $a$addr; $3 = $b$addr; $cond = $cmp ? $2 : $3; STACKTOP = sp;return ($cond|0); } function _silk_P_Ana_calc_corr_st3($cross_corr_st3,$frame,$start_lag,$sf_length,$nb_subfr,$complexity,$arch) { $cross_corr_st3 = $cross_corr_st3|0; $frame = $frame|0; $start_lag = $start_lag|0; $sf_length = $sf_length|0; $nb_subfr = $nb_subfr|0; $complexity = $complexity|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0.0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0.0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $Lag_CB_ptr = 0, $Lag_range_ptr = 0, $add = 0, $add$ptr = 0, $add$ptr10 = 0; var $add$ptr12 = 0, $add$ptr14 = 0, $add$ptr26 = 0, $add$ptr34 = 0, $add$ptr52 = 0, $add15 = 0, $add25 = 0, $add33 = 0, $add41 = 0, $add9 = 0, $arch$addr = 0, $arrayidx = 0, $arrayidx21 = 0, $arrayidx22 = 0, $arrayidx3 = 0, $arrayidx4 = 0, $arrayidx42 = 0, $arrayidx43 = 0, $arrayidx44 = 0, $arrayidx45 = 0; var $cbk_size = 0, $cmp = 0, $cmp17 = 0, $cmp29 = 0, $cmp38 = 0, $cmp5 = 0, $complexity$addr = 0, $conv = 0, $conv11 = 0, $conv27 = 0, $conv35 = 0, $conv7 = 0, $cross_corr_st3$addr = 0, $delta = 0, $frame$addr = 0, $i = 0, $idx = 0, $idx$neg = 0, $idx$neg13 = 0, $inc = 0; var $inc23 = 0, $inc47 = 0, $inc50 = 0, $inc54 = 0, $j = 0, $k = 0, $lag_counter = 0, $lag_high = 0, $lag_low = 0, $mul = 0, $mul24 = 0, $mul32 = 0, $mul8 = 0, $nb_cbk_search = 0, $nb_subfr$addr = 0, $scratch_mem = 0, $sf_length$addr = 0, $shl = 0, $start_lag$addr = 0, $sub = 0; var $sub20 = 0, $sub36 = 0, $target_ptr = 0, $xcorr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 256|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(256|0); $scratch_mem = sp + 96|0; $xcorr = sp + 8|0; $cross_corr_st3$addr = $cross_corr_st3; $frame$addr = $frame; $start_lag$addr = $start_lag; $sf_length$addr = $sf_length; $nb_subfr$addr = $nb_subfr; $complexity$addr = $complexity; $arch$addr = $arch; $0 = $nb_subfr$addr; $cmp = ($0|0)==(4); if ($cmp) { $1 = $complexity$addr; $arrayidx = (36070 + ($1<<3)|0); $Lag_range_ptr = $arrayidx; $Lag_CB_ptr = 35934; $2 = $complexity$addr; $arrayidx3 = (36094 + ($2)|0); $3 = HEAP8[$arrayidx3>>0]|0; $conv = $3 << 24 >> 24; $nb_cbk_search = $conv; $cbk_size = 34; } else { $Lag_range_ptr = 35886; $Lag_CB_ptr = 35862; $nb_cbk_search = 12; $cbk_size = 12; } $4 = $frame$addr; $5 = $sf_length$addr; $shl = $5 << 2; $arrayidx4 = (($4) + ($shl<<2)|0); $target_ptr = $arrayidx4; $k = 0; while(1) { $6 = $k; $7 = $nb_subfr$addr; $cmp5 = ($6|0)<($7|0); if (!($cmp5)) { break; } $lag_counter = 0; $8 = $Lag_range_ptr; $9 = $k; $mul = $9<<1; $add = (($mul) + 0)|0; $add$ptr = (($8) + ($add)|0); $10 = HEAP8[$add$ptr>>0]|0; $conv7 = $10 << 24 >> 24; $lag_low = $conv7; $11 = $Lag_range_ptr; $12 = $k; $mul8 = $12<<1; $add9 = (($mul8) + 1)|0; $add$ptr10 = (($11) + ($add9)|0); $13 = HEAP8[$add$ptr10>>0]|0; $conv11 = $13 << 24 >> 24; $lag_high = $conv11; $14 = $target_ptr; $15 = $target_ptr; $16 = $start_lag$addr; $idx$neg = (0 - ($16))|0; $add$ptr12 = (($15) + ($idx$neg<<2)|0); $17 = $lag_high; $idx$neg13 = (0 - ($17))|0; $add$ptr14 = (($add$ptr12) + ($idx$neg13<<2)|0); $18 = $sf_length$addr; $19 = $lag_high; $20 = $lag_low; $sub = (($19) - ($20))|0; $add15 = (($sub) + 1)|0; $21 = $arch$addr; _celt_pitch_xcorr_c($14,$add$ptr14,$xcorr,$18,$add15,$21); $22 = $lag_low; $j = $22; while(1) { $23 = $j; $24 = $lag_high; $cmp17 = ($23|0)<=($24|0); if (!($cmp17)) { break; } $25 = $lag_high; $26 = $j; $sub20 = (($25) - ($26))|0; $arrayidx21 = (($xcorr) + ($sub20<<2)|0); $27 = +HEAPF32[$arrayidx21>>2]; $28 = $lag_counter; $arrayidx22 = (($scratch_mem) + ($28<<2)|0); HEAPF32[$arrayidx22>>2] = $27; $29 = $lag_counter; $inc = (($29) + 1)|0; $lag_counter = $inc; $30 = $j; $inc23 = (($30) + 1)|0; $j = $inc23; } $31 = $Lag_range_ptr; $32 = $k; $mul24 = $32<<1; $add25 = (($mul24) + 0)|0; $add$ptr26 = (($31) + ($add25)|0); $33 = HEAP8[$add$ptr26>>0]|0; $conv27 = $33 << 24 >> 24; $delta = $conv27; $i = 0; while(1) { $34 = $i; $35 = $nb_cbk_search; $cmp29 = ($34|0)<($35|0); if (!($cmp29)) { break; } $36 = $Lag_CB_ptr; $37 = $k; $38 = $cbk_size; $mul32 = Math_imul($37, $38)|0; $39 = $i; $add33 = (($mul32) + ($39))|0; $add$ptr34 = (($36) + ($add33)|0); $40 = HEAP8[$add$ptr34>>0]|0; $conv35 = $40 << 24 >> 24; $41 = $delta; $sub36 = (($conv35) - ($41))|0; $idx = $sub36; $j = 0; while(1) { $42 = $j; $cmp38 = ($42|0)<(5); if (!($cmp38)) { break; } $43 = $idx; $44 = $j; $add41 = (($43) + ($44))|0; $arrayidx42 = (($scratch_mem) + ($add41<<2)|0); $45 = +HEAPF32[$arrayidx42>>2]; $46 = $cross_corr_st3$addr; $47 = $k; $arrayidx43 = (($46) + (($47*680)|0)|0); $48 = $i; $arrayidx44 = (($arrayidx43) + (($48*20)|0)|0); $49 = $j; $arrayidx45 = (($arrayidx44) + ($49<<2)|0); HEAPF32[$arrayidx45>>2] = $45; $50 = $j; $inc47 = (($50) + 1)|0; $j = $inc47; } $51 = $i; $inc50 = (($51) + 1)|0; $i = $inc50; } $52 = $sf_length$addr; $53 = $target_ptr; $add$ptr52 = (($53) + ($52<<2)|0); $target_ptr = $add$ptr52; $54 = $k; $inc54 = (($54) + 1)|0; $k = $inc54; } STACKTOP = sp;return; } function _silk_P_Ana_calc_energy_st3($energies_st3,$frame,$start_lag,$sf_length,$nb_subfr,$complexity) { $energies_st3 = $energies_st3|0; $frame = $frame|0; $start_lag = $start_lag|0; $sf_length = $sf_length|0; $nb_subfr = $nb_subfr|0; $complexity = $complexity|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0.0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0.0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0.0, $34 = 0.0, $35 = 0, $36 = 0, $37 = 0.0, $38 = 0, $39 = 0, $4 = 0, $40 = 0.0, $41 = 0.0, $42 = 0.0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0.0, $61 = 0, $62 = 0; var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $8 = 0, $9 = 0, $Lag_CB_ptr = 0, $Lag_range_ptr = 0, $add = 0, $add$ptr = 0, $add$ptr15 = 0, $add$ptr19 = 0, $add$ptr48 = 0, $add$ptr56 = 0, $add$ptr74 = 0, $add$ptr9 = 0; var $add10 = 0.0, $add14 = 0, $add18 = 0, $add21 = 0, $add41 = 0.0, $add47 = 0, $add55 = 0, $add63 = 0, $add8 = 0, $arrayidx = 0, $arrayidx12 = 0, $arrayidx27 = 0, $arrayidx3 = 0, $arrayidx30 = 0, $arrayidx35 = 0, $arrayidx38 = 0, $arrayidx4 = 0, $arrayidx43 = 0, $arrayidx64 = 0, $arrayidx65 = 0; var $arrayidx66 = 0, $arrayidx67 = 0, $basis_ptr = 0, $call = 0.0, $cbk_size = 0, $cmp = 0, $cmp23 = 0, $cmp5 = 0, $cmp51 = 0, $cmp60 = 0, $complexity$addr = 0, $conv = 0, $conv11 = 0.0, $conv16 = 0, $conv20 = 0, $conv28 = 0.0, $conv31 = 0.0, $conv36 = 0.0, $conv39 = 0.0, $conv42 = 0.0; var $conv49 = 0, $conv57 = 0, $conv7 = 0, $delta = 0, $energies_st3$addr = 0, $energy = 0.0, $frame$addr = 0, $i = 0, $idx = 0, $idx$neg = 0, $inc = 0, $inc44 = 0, $inc45 = 0, $inc69 = 0, $inc72 = 0, $inc76 = 0, $j = 0, $k = 0, $lag_counter = 0, $lag_diff = 0; var $mul = 0, $mul13 = 0, $mul17 = 0, $mul32 = 0.0, $mul40 = 0.0, $mul46 = 0, $mul54 = 0, $nb_cbk_search = 0, $nb_subfr$addr = 0, $scratch_mem = 0, $sf_length$addr = 0, $shl = 0, $start_lag$addr = 0, $sub = 0, $sub26 = 0, $sub29 = 0, $sub33 = 0.0, $sub34 = 0, $sub37 = 0, $sub58 = 0; var $target_ptr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 176|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(176|0); $scratch_mem = sp + 16|0; $energies_st3$addr = $energies_st3; $frame$addr = $frame; $start_lag$addr = $start_lag; $sf_length$addr = $sf_length; $nb_subfr$addr = $nb_subfr; $complexity$addr = $complexity; $0 = $nb_subfr$addr; $cmp = ($0|0)==(4); if ($cmp) { $1 = $complexity$addr; $arrayidx = (36070 + ($1<<3)|0); $Lag_range_ptr = $arrayidx; $Lag_CB_ptr = 35934; $2 = $complexity$addr; $arrayidx3 = (36094 + ($2)|0); $3 = HEAP8[$arrayidx3>>0]|0; $conv = $3 << 24 >> 24; $nb_cbk_search = $conv; $cbk_size = 34; } else { $Lag_range_ptr = 35886; $Lag_CB_ptr = 35862; $nb_cbk_search = 12; $cbk_size = 12; } $4 = $frame$addr; $5 = $sf_length$addr; $shl = $5 << 2; $arrayidx4 = (($4) + ($shl<<2)|0); $target_ptr = $arrayidx4; $k = 0; while(1) { $6 = $k; $7 = $nb_subfr$addr; $cmp5 = ($6|0)<($7|0); if (!($cmp5)) { break; } $lag_counter = 0; $8 = $target_ptr; $9 = $start_lag$addr; $10 = $Lag_range_ptr; $11 = $k; $mul = $11<<1; $add = (($mul) + 0)|0; $add$ptr = (($10) + ($add)|0); $12 = HEAP8[$add$ptr>>0]|0; $conv7 = $12 << 24 >> 24; $add8 = (($9) + ($conv7))|0; $idx$neg = (0 - ($add8))|0; $add$ptr9 = (($8) + ($idx$neg<<2)|0); $basis_ptr = $add$ptr9; $13 = $basis_ptr; $14 = $sf_length$addr; $call = (+_silk_energy_FLP($13,$14)); $add10 = $call + 0.001; $energy = $add10; $15 = $energy; $conv11 = $15; $16 = $lag_counter; $arrayidx12 = (($scratch_mem) + ($16<<2)|0); HEAPF32[$arrayidx12>>2] = $conv11; $17 = $lag_counter; $inc = (($17) + 1)|0; $lag_counter = $inc; $18 = $Lag_range_ptr; $19 = $k; $mul13 = $19<<1; $add14 = (($mul13) + 1)|0; $add$ptr15 = (($18) + ($add14)|0); $20 = HEAP8[$add$ptr15>>0]|0; $conv16 = $20 << 24 >> 24; $21 = $Lag_range_ptr; $22 = $k; $mul17 = $22<<1; $add18 = (($mul17) + 0)|0; $add$ptr19 = (($21) + ($add18)|0); $23 = HEAP8[$add$ptr19>>0]|0; $conv20 = $23 << 24 >> 24; $sub = (($conv16) - ($conv20))|0; $add21 = (($sub) + 1)|0; $lag_diff = $add21; $i = 1; while(1) { $24 = $i; $25 = $lag_diff; $cmp23 = ($24|0)<($25|0); if (!($cmp23)) { break; } $26 = $basis_ptr; $27 = $sf_length$addr; $28 = $i; $sub26 = (($27) - ($28))|0; $arrayidx27 = (($26) + ($sub26<<2)|0); $29 = +HEAPF32[$arrayidx27>>2]; $conv28 = $29; $30 = $basis_ptr; $31 = $sf_length$addr; $32 = $i; $sub29 = (($31) - ($32))|0; $arrayidx30 = (($30) + ($sub29<<2)|0); $33 = +HEAPF32[$arrayidx30>>2]; $conv31 = $33; $mul32 = $conv28 * $conv31; $34 = $energy; $sub33 = $34 - $mul32; $energy = $sub33; $35 = $basis_ptr; $36 = $i; $sub34 = (0 - ($36))|0; $arrayidx35 = (($35) + ($sub34<<2)|0); $37 = +HEAPF32[$arrayidx35>>2]; $conv36 = $37; $38 = $basis_ptr; $39 = $i; $sub37 = (0 - ($39))|0; $arrayidx38 = (($38) + ($sub37<<2)|0); $40 = +HEAPF32[$arrayidx38>>2]; $conv39 = $40; $mul40 = $conv36 * $conv39; $41 = $energy; $add41 = $41 + $mul40; $energy = $add41; $42 = $energy; $conv42 = $42; $43 = $lag_counter; $arrayidx43 = (($scratch_mem) + ($43<<2)|0); HEAPF32[$arrayidx43>>2] = $conv42; $44 = $lag_counter; $inc44 = (($44) + 1)|0; $lag_counter = $inc44; $45 = $i; $inc45 = (($45) + 1)|0; $i = $inc45; } $46 = $Lag_range_ptr; $47 = $k; $mul46 = $47<<1; $add47 = (($mul46) + 0)|0; $add$ptr48 = (($46) + ($add47)|0); $48 = HEAP8[$add$ptr48>>0]|0; $conv49 = $48 << 24 >> 24; $delta = $conv49; $i = 0; while(1) { $49 = $i; $50 = $nb_cbk_search; $cmp51 = ($49|0)<($50|0); if (!($cmp51)) { break; } $51 = $Lag_CB_ptr; $52 = $k; $53 = $cbk_size; $mul54 = Math_imul($52, $53)|0; $54 = $i; $add55 = (($mul54) + ($54))|0; $add$ptr56 = (($51) + ($add55)|0); $55 = HEAP8[$add$ptr56>>0]|0; $conv57 = $55 << 24 >> 24; $56 = $delta; $sub58 = (($conv57) - ($56))|0; $idx = $sub58; $j = 0; while(1) { $57 = $j; $cmp60 = ($57|0)<(5); if (!($cmp60)) { break; } $58 = $idx; $59 = $j; $add63 = (($58) + ($59))|0; $arrayidx64 = (($scratch_mem) + ($add63<<2)|0); $60 = +HEAPF32[$arrayidx64>>2]; $61 = $energies_st3$addr; $62 = $k; $arrayidx65 = (($61) + (($62*680)|0)|0); $63 = $i; $arrayidx66 = (($arrayidx65) + (($63*20)|0)|0); $64 = $j; $arrayidx67 = (($arrayidx66) + ($64<<2)|0); HEAPF32[$arrayidx67>>2] = $60; $65 = $j; $inc69 = (($65) + 1)|0; $j = $inc69; } $66 = $i; $inc72 = (($66) + 1)|0; $i = $inc72; } $67 = $sf_length$addr; $68 = $target_ptr; $add$ptr74 = (($68) + ($67<<2)|0); $target_ptr = $add$ptr74; $69 = $k; $inc76 = (($69) + 1)|0; $k = $inc76; } STACKTOP = sp;return; } function _silk_scale_copy_vector_FLP($data_out,$data_in,$gain,$dataSize) { $data_out = $data_out|0; $data_in = $data_in|0; $gain = +$gain; $dataSize = $dataSize|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0.0, $13 = 0, $14 = 0, $15 = 0.0, $16 = 0, $17 = 0, $18 = 0.0, $19 = 0, $2 = 0, $20 = 0, $21 = 0.0, $22 = 0, $23 = 0, $24 = 0.0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0.0, $30 = 0.0, $31 = 0, $32 = 0, $33 = 0.0, $34 = 0, $35 = 0, $36 = 0, $4 = 0, $5 = 0, $6 = 0.0, $7 = 0, $8 = 0, $9 = 0.0, $add = 0, $add1 = 0, $add11 = 0; var $add13 = 0, $add16 = 0, $add18 = 0, $add3 = 0, $add6 = 0, $add8 = 0, $and = 0, $arrayidx = 0, $arrayidx12 = 0, $arrayidx14 = 0, $arrayidx17 = 0, $arrayidx2 = 0, $arrayidx22 = 0, $arrayidx24 = 0, $arrayidx4 = 0, $arrayidx7 = 0, $arrayidx9 = 0, $cmp = 0, $cmp20 = 0, $dataSize$addr = 0; var $dataSize4 = 0, $data_in$addr = 0, $data_out$addr = 0, $gain$addr = 0.0, $i = 0, $inc = 0, $mul = 0.0, $mul10 = 0.0, $mul15 = 0.0, $mul23 = 0.0, $mul5 = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $data_out$addr = $data_out; $data_in$addr = $data_in; $gain$addr = $gain; $dataSize$addr = $dataSize; $0 = $dataSize$addr; $and = $0 & 65532; $dataSize4 = $and; $i = 0; while(1) { $1 = $i; $2 = $dataSize4; $cmp = ($1|0)<($2|0); if (!($cmp)) { break; } $3 = $gain$addr; $4 = $data_in$addr; $5 = $i; $add = (($5) + 0)|0; $arrayidx = (($4) + ($add<<2)|0); $6 = +HEAPF32[$arrayidx>>2]; $mul = $3 * $6; $7 = $data_out$addr; $8 = $i; $add1 = (($8) + 0)|0; $arrayidx2 = (($7) + ($add1<<2)|0); HEAPF32[$arrayidx2>>2] = $mul; $9 = $gain$addr; $10 = $data_in$addr; $11 = $i; $add3 = (($11) + 1)|0; $arrayidx4 = (($10) + ($add3<<2)|0); $12 = +HEAPF32[$arrayidx4>>2]; $mul5 = $9 * $12; $13 = $data_out$addr; $14 = $i; $add6 = (($14) + 1)|0; $arrayidx7 = (($13) + ($add6<<2)|0); HEAPF32[$arrayidx7>>2] = $mul5; $15 = $gain$addr; $16 = $data_in$addr; $17 = $i; $add8 = (($17) + 2)|0; $arrayidx9 = (($16) + ($add8<<2)|0); $18 = +HEAPF32[$arrayidx9>>2]; $mul10 = $15 * $18; $19 = $data_out$addr; $20 = $i; $add11 = (($20) + 2)|0; $arrayidx12 = (($19) + ($add11<<2)|0); HEAPF32[$arrayidx12>>2] = $mul10; $21 = $gain$addr; $22 = $data_in$addr; $23 = $i; $add13 = (($23) + 3)|0; $arrayidx14 = (($22) + ($add13<<2)|0); $24 = +HEAPF32[$arrayidx14>>2]; $mul15 = $21 * $24; $25 = $data_out$addr; $26 = $i; $add16 = (($26) + 3)|0; $arrayidx17 = (($25) + ($add16<<2)|0); HEAPF32[$arrayidx17>>2] = $mul15; $27 = $i; $add18 = (($27) + 4)|0; $i = $add18; } while(1) { $28 = $i; $29 = $dataSize$addr; $cmp20 = ($28|0)<($29|0); if (!($cmp20)) { break; } $30 = $gain$addr; $31 = $data_in$addr; $32 = $i; $arrayidx22 = (($31) + ($32<<2)|0); $33 = +HEAPF32[$arrayidx22>>2]; $mul23 = $30 * $33; $34 = $data_out$addr; $35 = $i; $arrayidx24 = (($34) + ($35<<2)|0); HEAPF32[$arrayidx24>>2] = $mul23; $36 = $i; $inc = (($36) + 1)|0; $i = $inc; } STACKTOP = sp;return; } function _silk_schur_FLP($refl_coef,$auto_corr,$order) { $refl_coef = $refl_coef|0; $auto_corr = $auto_corr|0; $order = $order|0; var $0 = 0, $1 = 0, $10 = 0.0, $11 = 0.0, $12 = 0.0, $13 = 0.0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0.0, $20 = 0, $21 = 0.0, $22 = 0, $23 = 0.0, $24 = 0.0, $25 = 0.0, $26 = 0.0; var $27 = 0, $28 = 0, $29 = 0.0, $3 = 0, $30 = 0.0, $31 = 0.0, $32 = 0, $33 = 0, $34 = 0, $35 = 0.0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $C = 0, $Ctmp1 = 0.0, $Ctmp2 = 0.0, $add = 0; var $add23 = 0, $add24 = 0, $add29 = 0.0, $add30 = 0, $add31 = 0, $add35 = 0.0, $arrayidx = 0, $arrayidx1 = 0, $arrayidx11 = 0, $arrayidx15 = 0, $arrayidx17 = 0, $arrayidx2 = 0, $arrayidx25 = 0, $arrayidx27 = 0, $arrayidx28 = 0, $arrayidx3 = 0, $arrayidx32 = 0, $arrayidx36 = 0, $arrayidx37 = 0, $arrayidx43 = 0; var $arrayidx8 = 0, $auto_corr$addr = 0, $cmp = 0, $cmp12 = 0, $cmp20 = 0, $cmp6 = 0, $cond = 0.0, $conv = 0.0, $conv16 = 0.0, $conv44 = 0.0, $div = 0.0, $inc = 0, $inc38 = 0, $inc40 = 0, $k = 0, $mul = 0.0, $mul34 = 0.0, $n = 0, $order$addr = 0, $rc_tmp = 0.0; var $refl_coef$addr = 0, $sub = 0.0, $sub19 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 448|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(448|0); $C = sp + 24|0; $refl_coef$addr = $refl_coef; $auto_corr$addr = $auto_corr; $order$addr = $order; $k = 0; while(1) { $0 = $auto_corr$addr; $1 = $k; $arrayidx = (($0) + ($1<<2)|0); $2 = +HEAPF32[$arrayidx>>2]; $conv = $2; $3 = $k; $arrayidx1 = (($C) + ($3<<4)|0); $arrayidx2 = ((($arrayidx1)) + 8|0); HEAPF64[$arrayidx2>>3] = $conv; $4 = $k; $arrayidx3 = (($C) + ($4<<4)|0); HEAPF64[$arrayidx3>>3] = $conv; $5 = $k; $inc = (($5) + 1)|0; $k = $inc; $6 = $order$addr; $cmp = ($inc|0)<=($6|0); if (!($cmp)) { break; } } $k = 0; while(1) { $7 = $k; $8 = $order$addr; $cmp6 = ($7|0)<($8|0); if (!($cmp6)) { break; } $9 = $k; $add = (($9) + 1)|0; $arrayidx8 = (($C) + ($add<<4)|0); $10 = +HEAPF64[$arrayidx8>>3]; $sub = - $10; $arrayidx11 = ((($C)) + 8|0); $11 = +HEAPF64[$arrayidx11>>3]; $cmp12 = $11 > 9.9999997171806853E-10; $arrayidx15 = ((($C)) + 8|0); $12 = +HEAPF64[$arrayidx15>>3]; $cond = $cmp12 ? $12 : 9.9999997171806853E-10; $div = $sub / $cond; $rc_tmp = $div; $13 = $rc_tmp; $conv16 = $13; $14 = $refl_coef$addr; $15 = $k; $arrayidx17 = (($14) + ($15<<2)|0); HEAPF32[$arrayidx17>>2] = $conv16; $n = 0; while(1) { $16 = $n; $17 = $order$addr; $18 = $k; $sub19 = (($17) - ($18))|0; $cmp20 = ($16|0)<($sub19|0); if (!($cmp20)) { break; } $19 = $n; $20 = $k; $add23 = (($19) + ($20))|0; $add24 = (($add23) + 1)|0; $arrayidx25 = (($C) + ($add24<<4)|0); $21 = +HEAPF64[$arrayidx25>>3]; $Ctmp1 = $21; $22 = $n; $arrayidx27 = (($C) + ($22<<4)|0); $arrayidx28 = ((($arrayidx27)) + 8|0); $23 = +HEAPF64[$arrayidx28>>3]; $Ctmp2 = $23; $24 = $Ctmp1; $25 = $Ctmp2; $26 = $rc_tmp; $mul = $25 * $26; $add29 = $24 + $mul; $27 = $n; $28 = $k; $add30 = (($27) + ($28))|0; $add31 = (($add30) + 1)|0; $arrayidx32 = (($C) + ($add31<<4)|0); HEAPF64[$arrayidx32>>3] = $add29; $29 = $Ctmp2; $30 = $Ctmp1; $31 = $rc_tmp; $mul34 = $30 * $31; $add35 = $29 + $mul34; $32 = $n; $arrayidx36 = (($C) + ($32<<4)|0); $arrayidx37 = ((($arrayidx36)) + 8|0); HEAPF64[$arrayidx37>>3] = $add35; $33 = $n; $inc38 = (($33) + 1)|0; $n = $inc38; } $34 = $k; $inc40 = (($34) + 1)|0; $k = $inc40; } $arrayidx43 = ((($C)) + 8|0); $35 = +HEAPF64[$arrayidx43>>3]; $conv44 = $35; STACKTOP = sp;return (+$conv44); } function _silk_insertion_sort_decreasing_FLP($a,$idx,$L,$K) { $a = $a|0; $idx = $idx|0; $L = $L|0; $K = $K|0; var $0 = 0, $1 = 0, $10 = 0.0, $11 = 0, $12 = 0, $13 = 0.0, $14 = 0, $15 = 0, $16 = 0.0, $17 = 0, $18 = 0, $19 = 0.0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0.0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0.0, $41 = 0.0, $42 = 0, $43 = 0, $44 = 0.0; var $45 = 0, $46 = 0, $47 = 0.0, $48 = 0, $49 = 0, $5 = 0, $50 = 0.0, $51 = 0, $52 = 0, $53 = 0.0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0.0; var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $7 = 0, $8 = 0, $9 = 0, $K$addr = 0, $L$addr = 0, $a$addr = 0, $add = 0, $add13 = 0, $add17 = 0, $add19 = 0, $add40 = 0, $add43 = 0, $add48 = 0, $add50 = 0; var $arrayidx = 0, $arrayidx10 = 0, $arrayidx11 = 0, $arrayidx12 = 0, $arrayidx14 = 0, $arrayidx18 = 0, $arrayidx20 = 0, $arrayidx27 = 0, $arrayidx29 = 0, $arrayidx35 = 0, $arrayidx39 = 0, $arrayidx4 = 0, $arrayidx41 = 0, $arrayidx42 = 0, $arrayidx44 = 0, $arrayidx49 = 0, $arrayidx51 = 0, $arrayidx7 = 0, $cmp = 0, $cmp2 = 0; var $cmp25 = 0, $cmp30 = 0, $cmp33 = 0, $cmp36 = 0, $cmp6 = 0, $cmp8 = 0, $dec = 0, $dec46 = 0, $i = 0, $idx$addr = 0, $inc = 0, $inc22 = 0, $inc53 = 0, $j = 0, $sub = 0, $sub28 = 0, $sub31 = 0, $value = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $a$addr = $a; $idx$addr = $idx; $L$addr = $L; $K$addr = $K; $i = 0; while(1) { $0 = $i; $1 = $K$addr; $cmp = ($0|0)<($1|0); if (!($cmp)) { break; } $2 = $i; $3 = $idx$addr; $4 = $i; $arrayidx = (($3) + ($4<<2)|0); HEAP32[$arrayidx>>2] = $2; $5 = $i; $inc = (($5) + 1)|0; $i = $inc; } $i = 1; while(1) { $6 = $i; $7 = $K$addr; $cmp2 = ($6|0)<($7|0); if (!($cmp2)) { break; } $8 = $a$addr; $9 = $i; $arrayidx4 = (($8) + ($9<<2)|0); $10 = +HEAPF32[$arrayidx4>>2]; $value = $10; $11 = $i; $sub = (($11) - 1)|0; $j = $sub; while(1) { $12 = $j; $cmp6 = ($12|0)>=(0); if (!($cmp6)) { break; } $13 = $value; $14 = $a$addr; $15 = $j; $arrayidx7 = (($14) + ($15<<2)|0); $16 = +HEAPF32[$arrayidx7>>2]; $cmp8 = $13 > $16; if (!($cmp8)) { break; } $17 = $a$addr; $18 = $j; $arrayidx10 = (($17) + ($18<<2)|0); $19 = +HEAPF32[$arrayidx10>>2]; $20 = $a$addr; $21 = $j; $add = (($21) + 1)|0; $arrayidx11 = (($20) + ($add<<2)|0); HEAPF32[$arrayidx11>>2] = $19; $22 = $idx$addr; $23 = $j; $arrayidx12 = (($22) + ($23<<2)|0); $24 = HEAP32[$arrayidx12>>2]|0; $25 = $idx$addr; $26 = $j; $add13 = (($26) + 1)|0; $arrayidx14 = (($25) + ($add13<<2)|0); HEAP32[$arrayidx14>>2] = $24; $27 = $j; $dec = (($27) + -1)|0; $j = $dec; } $28 = $value; $29 = $a$addr; $30 = $j; $add17 = (($30) + 1)|0; $arrayidx18 = (($29) + ($add17<<2)|0); HEAPF32[$arrayidx18>>2] = $28; $31 = $i; $32 = $idx$addr; $33 = $j; $add19 = (($33) + 1)|0; $arrayidx20 = (($32) + ($add19<<2)|0); HEAP32[$arrayidx20>>2] = $31; $34 = $i; $inc22 = (($34) + 1)|0; $i = $inc22; } $35 = $K$addr; $i = $35; while(1) { $36 = $i; $37 = $L$addr; $cmp25 = ($36|0)<($37|0); if (!($cmp25)) { break; } $38 = $a$addr; $39 = $i; $arrayidx27 = (($38) + ($39<<2)|0); $40 = +HEAPF32[$arrayidx27>>2]; $value = $40; $41 = $value; $42 = $a$addr; $43 = $K$addr; $sub28 = (($43) - 1)|0; $arrayidx29 = (($42) + ($sub28<<2)|0); $44 = +HEAPF32[$arrayidx29>>2]; $cmp30 = $41 > $44; if ($cmp30) { $45 = $K$addr; $sub31 = (($45) - 2)|0; $j = $sub31; while(1) { $46 = $j; $cmp33 = ($46|0)>=(0); if (!($cmp33)) { break; } $47 = $value; $48 = $a$addr; $49 = $j; $arrayidx35 = (($48) + ($49<<2)|0); $50 = +HEAPF32[$arrayidx35>>2]; $cmp36 = $47 > $50; if (!($cmp36)) { break; } $51 = $a$addr; $52 = $j; $arrayidx39 = (($51) + ($52<<2)|0); $53 = +HEAPF32[$arrayidx39>>2]; $54 = $a$addr; $55 = $j; $add40 = (($55) + 1)|0; $arrayidx41 = (($54) + ($add40<<2)|0); HEAPF32[$arrayidx41>>2] = $53; $56 = $idx$addr; $57 = $j; $arrayidx42 = (($56) + ($57<<2)|0); $58 = HEAP32[$arrayidx42>>2]|0; $59 = $idx$addr; $60 = $j; $add43 = (($60) + 1)|0; $arrayidx44 = (($59) + ($add43<<2)|0); HEAP32[$arrayidx44>>2] = $58; $61 = $j; $dec46 = (($61) + -1)|0; $j = $dec46; } $62 = $value; $63 = $a$addr; $64 = $j; $add48 = (($64) + 1)|0; $arrayidx49 = (($63) + ($add48<<2)|0); HEAPF32[$arrayidx49>>2] = $62; $65 = $i; $66 = $idx$addr; $67 = $j; $add50 = (($67) + 1)|0; $arrayidx51 = (($66) + ($add50<<2)|0); HEAP32[$arrayidx51>>2] = $65; } $68 = $i; $inc53 = (($68) + 1)|0; $i = $inc53; } STACKTOP = sp;return; } function _silk_VAD_GetSA_Q8_sse4_1($psEncC,$pIn) { $psEncC = $psEncC|0; $pIn = $pIn|0; var $$compoundliteral$i = 0, $$compoundliteral$i391 = 0, $$sink = 0, $$sink1 = 0, $0 = 0, $1 = 0, $10 = 0, $100 = SIMD_Int32x4(0,0,0,0), $101 = SIMD_Int32x4(0,0,0,0), $102 = SIMD_Int16x8(0,0,0,0,0,0,0,0), $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = SIMD_Int16x8(0,0,0,0,0,0,0,0); var $112 = SIMD_Int32x4(0,0,0,0), $113 = SIMD_Int16x8(0,0,0,0,0,0,0,0), $114 = SIMD_Int32x4(0,0,0,0), $115 = SIMD_Int32x4(0,0,0,0), $116 = SIMD_Int32x4(0,0,0,0), $117 = SIMD_Int32x4(0,0,0,0), $118 = SIMD_Int32x4(0,0,0,0), $119 = SIMD_Int32x4(0,0,0,0), $12 = 0, $120 = SIMD_Int32x4(0,0,0,0), $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0; var $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0; var $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0; var $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0; var $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0; var $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0; var $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0; var $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0; var $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0; var $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0; var $56 = 0, $57 = SIMD_Int32x4(0,0,0,0), $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = SIMD_Int32x4(0,0,0,0), $66 = SIMD_Int32x4(0,0,0,0), $67 = SIMD_Int32x4(0,0,0,0), $68 = SIMD_Int16x8(0,0,0,0,0,0,0,0), $69 = 0, $7 = 0, $70 = 0, $71 = SIMD_Int32x4(0,0,0,0), $72 = SIMD_Int32x4(0,0,0,0), $73 = SIMD_Int32x4(0,0,0,0); var $74 = SIMD_Int32x4(0,0,0,0), $75 = SIMD_Int32x4(0,0,0,0), $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = SIMD_Int32x4(0,0,0,0), $88 = SIMD_Int32x4(0,0,0,0), $89 = SIMD_Int32x4(0,0,0,0), $9 = 0, $90 = SIMD_Int32x4(0,0,0,0), $91 = SIMD_Int32x4(0,0,0,0); var $92 = 0, $93 = SIMD_Int32x4(0,0,0,0), $94 = SIMD_Int32x4(0,0,0,0), $95 = SIMD_Int32x4(0,0,0,0), $96 = SIMD_Int32x4(0,0,0,0), $97 = SIMD_Int32x4(0,0,0,0), $98 = SIMD_Int32x4(0,0,0,0), $99 = SIMD_Int32x4(0,0,0,0), $AnaState1 = 0, $AnaState2 = 0, $HPstate = 0, $HPstate52 = 0, $HPstateTmp = 0, $NL = 0, $NL153 = 0, $NL159 = 0, $NL236 = 0, $NrgRatioSmth_Q8 = 0, $NrgRatioSmth_Q8345 = 0, $NrgRatioSmth_Q8353 = 0; var $NrgRatioSmth_Q8363 = 0, $NrgRatioSmth_Q8365 = 0, $NrgToNoiseRatio_Q8 = 0, $SA_Q15 = 0, $SNR_Q7 = 0, $X_offset = 0, $Xnrg = 0, $XnrgSubfr = 0, $XnrgSubfr131 = 0, $__a$addr$i = 0, $__a$addr$i377 = 0, $__a$addr$i379 = 0, $__a$addr$i382 = 0, $__a$addr$i384 = 0, $__a$addr$i387 = 0, $__a$addr$i388 = 0, $__b$addr$i = 0, $__b$addr$i380 = 0, $__b$addr$i383 = 0, $__b$addr$i385 = 0; var $__b$addr$i389 = 0, $__b$i = 0, $__count$addr$i = 0, $__p$addr$i = 0, $__w$addr$i = 0, $add = 0, $add$i = 0, $add$i381 = SIMD_Int32x4(0,0,0,0), $add$i386 = SIMD_Int32x4(0,0,0,0), $add$i390 = SIMD_Int32x4(0,0,0,0), $add10 = 0, $add104 = 0, $add110 = 0, $add112 = 0, $add116 = 0, $add123 = 0, $add127 = 0, $add13 = 0, $add13$i = 0, $add155 = 0; var $add162 = 0, $add17$i = 0, $add174 = 0, $add191 = 0, $add204 = 0, $add205 = 0, $add224 = 0, $add234 = 0, $add241 = 0, $add287 = 0, $add292 = 0, $add298 = 0, $add312 = 0, $add325 = 0, $add330 = 0, $add361 = 0, $add362 = 0, $add7 = 0, $add74 = 0, $add75 = 0; var $add82 = 0, $add89 = 0, $add95 = 0, $add96 = 0, $and = 0, $and117 = 0, $and148 = 0, $and186 = 0, $and199 = 0, $and293 = 0, $and307 = 0, $and320 = 0, $and356 = 0, $arrayidx$i = 0, $arrayidx109 = 0, $arrayidx11 = 0, $arrayidx111 = 0, $arrayidx12 = 0, $arrayidx121 = 0, $arrayidx126 = 0; var $arrayidx132 = 0, $arrayidx14$i = 0, $arrayidx141 = 0, $arrayidx142 = 0, $arrayidx147 = 0, $arrayidx15 = 0, $arrayidx152 = 0, $arrayidx154 = 0, $arrayidx16 = 0, $arrayidx160 = 0, $arrayidx164 = 0, $arrayidx166 = 0, $arrayidx19 = 0, $arrayidx19$i = 0, $arrayidx193 = 0, $arrayidx198 = 0, $arrayidx20 = 0, $arrayidx207 = 0, $arrayidx22 = 0, $arrayidx23 = 0; var $arrayidx235 = 0, $arrayidx237 = 0, $arrayidx24 = 0, $arrayidx28 = 0, $arrayidx30 = 0, $arrayidx34 = 0, $arrayidx343 = 0, $arrayidx344 = 0, $arrayidx346 = 0, $arrayidx352 = 0, $arrayidx354 = 0, $arrayidx364 = 0, $arrayidx366 = 0, $arrayidx373 = 0, $arrayidx39 = 0, $arrayidx4$i = 0, $arrayidx41 = 0, $arrayidx43 = 0, $arrayidx5 = 0, $arrayidx6 = 0; var $arrayidx61 = 0, $arrayidx62 = 0, $arrayidx73 = 0, $arrayidx76 = 0, $arrayidx8 = 0, $arrayidx9 = 0, $arrayidx9$i = 0, $arrayidx94 = 0, $arrayidx97 = 0, $b = 0, $call = 0, $call$i = SIMD_Int16x8(0,0,0,0,0,0,0,0), $call167 = 0, $call178 = 0, $call184 = 0, $call213 = 0, $call226 = 0, $call227 = 0, $call286 = 0, $call302 = 0; var $call367 = 0, $call372 = 0, $cmp = 0, $cmp$i = 0, $cmp$i378 = 0, $cmp107 = 0, $cmp138 = 0, $cmp144 = 0, $cmp149 = 0, $cmp175 = 0, $cmp231 = 0, $cmp245 = 0, $cmp250 = 0, $cmp255 = 0, $cmp258 = 0, $cmp262 = 0, $cmp272 = 0, $cmp276 = 0, $cmp334 = 0, $cmp340 = 0; var $cmp54 = 0, $cmp64 = 0, $cmp70 = 0, $cmp91 = 0, $cond = 0, $cond$i = 0, $cond125 = 0, $cond125$sink = 0, $cond267 = 0, $cond269 = 0, $cond281 = 0, $cond283 = 0, $conv = 0, $conv$i = 0, $conv10$i = 0, $conv100 = 0, $conv101 = 0, $conv102 = 0, $conv103 = 0, $conv15$i = 0; var $conv169 = 0, $conv170 = 0, $conv171 = 0, $conv172 = 0, $conv181 = 0, $conv182 = 0, $conv187 = 0, $conv188 = 0, $conv195 = 0, $conv196 = 0, $conv200 = 0, $conv201 = 0, $conv215 = 0, $conv216 = 0, $conv217 = 0, $conv218 = 0, $conv220 = 0, $conv221 = 0, $conv26 = 0, $conv289 = 0; var $conv290 = 0, $conv294 = 0, $conv295 = 0, $conv304 = 0, $conv305 = 0, $conv308 = 0, $conv309 = 0, $conv313 = 0, $conv314 = 0, $conv317 = 0, $conv318 = 0, $conv321 = 0, $conv322 = 0, $conv326 = 0, $conv327 = 0, $conv349 = 0, $conv35 = 0, $conv350 = 0, $conv357 = 0, $conv358 = 0; var $conv37 = 0, $conv42 = 0, $conv44 = 0, $conv46 = 0, $conv47 = 0, $conv49 = 0, $conv5$i = 0, $conv51 = 0, $conv98 = 0, $dec = 0, $dec_subframe_length = 0, $dec_subframe_offset = 0, $decimated_framelength = 0, $decimated_framelength1 = 0, $decimated_framelength2 = 0, $div = 0, $div163 = 0, $div163$sink = 0, $div212 = 0, $dst$i = 0; var $frame_length = 0, $frame_length1 = 0, $frame_length17 = 0, $frame_length253 = 0, $frame_length3 = 0, $frame_length331 = 0, $frame_length57 = 0, $fs_kHz = 0, $fs_kHz332 = 0, $i = 0, $i$i = 0, $inc = 0, $inc$i = 0, $inc129 = 0, $inc134 = 0, $inc210 = 0, $inc243 = 0, $inc375 = 0, $input_quality_bands_Q15 = 0, $input_tilt = 0; var $input_tilt_Q15 = 0, $mul = 0, $mul$i = 0, $mul12$i = 0, $mul16$i = 0, $mul173 = 0, $mul183 = 0, $mul189 = 0, $mul197 = 0, $mul202 = 0, $mul214 = 0, $mul219 = 0, $mul222 = 0, $mul240 = 0, $mul254 = 0, $mul291 = 0, $mul296 = 0, $mul3$i = 0, $mul306 = 0, $mul310 = 0; var $mul315 = 0, $mul319 = 0, $mul323 = 0, $mul328 = 0, $mul333 = 0, $mul351 = 0, $mul359 = 0, $mul369 = 0, $mul6$i = 0, $mul8$i = 0, $pIn$addr = 0, $pSNR_dB_Q7 = 0, $psEncC$addr = 0, $psSilk_VAD = 0, $ret = 0, $s = 0, $sVAD = 0, $saved_stack = 0, $shl = 0, $shl179 = 0; var $shl185 = 0, $shl229 = 0, $shl270 = 0, $shl284 = 0, $shr = 0, $shr115 = 0, $shr122 = 0, $shr161 = 0, $shr180 = 0, $shr190 = 0, $shr194 = 0, $shr2 = 0, $shr203 = 0, $shr223 = 0, $shr239 = 0, $shr248 = 0, $shr25 = 0, $shr288 = 0, $shr297 = 0, $shr301 = 0; var $shr303 = 0, $shr311 = 0, $shr316 = 0, $shr324 = 0, $shr329 = 0, $shr337 = 0, $shr348 = 0, $shr36 = 0, $shr360 = 0, $shr371 = 0, $shr4 = 0, $shr59 = 0, $shr60 = 0, $shr99 = 0, $shuffle = SIMD_Int16x8(0,0,0,0,0,0,0,0), $shuffle$i = SIMD_Int32x4(0,0,0,0), $smooth_coef_Q16 = 0, $speech_activity_Q8 = 0, $speech_nrg = 0, $src$i = 0; var $src2$i = 0, $sub = 0, $sub143 = 0, $sub168 = 0, $sub225 = 0, $sub228 = 0, $sub238 = 0, $sub27 = 0, $sub29 = 0, $sub31 = 0, $sub33 = 0, $sub347 = 0, $sub355 = 0, $sub368 = 0, $sub370 = 0, $sub38 = 0, $sub40 = 0, $sub45 = 0, $sub50 = 0, $sub58 = 0; var $sub69 = 0, $sumSquared = 0, $tmp = 0, $tobool = 0, $tobool118 = 0, $vecext$i = 0, $vecinit7$i = SIMD_Int16x8(0,0,0,0,0,0,0,0), $vla = 0, $vla$alloca_mul = 0, $x_tmp = 0, $xmm_X = 0, $xmm_acc = 0, label = 0, sp = 0, temp_Int16x8_ptr = 0, temp_Int32x4_ptr = 0; sp = STACKTOP; STACKTOP = STACKTOP + 496|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(496|0); $$compoundliteral$i391 = sp + 320|0; $__a$addr$i388 = sp + 304|0; $__b$addr$i389 = sp + 288|0; $__a$addr$i387 = sp + 272|0; $__b$i = sp + 256|0; $__a$addr$i384 = sp + 240|0; $__b$addr$i385 = sp + 224|0; $__a$addr$i382 = sp + 208|0; $__b$addr$i383 = sp + 192|0; $__a$addr$i379 = sp + 176|0; $__b$addr$i380 = sp + 160|0; $__a$addr$i377 = sp + 144|0; $__b$addr$i = sp + 128|0; $src$i = sp + 112|0; $src2$i = sp + 96|0; $dst$i = sp + 80|0; $__a$addr$i = sp + 64|0; $$compoundliteral$i = sp + 48|0; $Xnrg = sp + 392|0; $NrgToNoiseRatio_Q8 = sp + 376|0; $X_offset = sp + 352|0; $xmm_X = sp + 32|0; $xmm_acc = sp + 16|0; $tmp = sp; $psEncC$addr = $psEncC; $pIn$addr = $pIn; $ret = 0; $0 = $psEncC$addr; $sVAD = ((($0)) + 32|0); $psSilk_VAD = $sVAD; $1 = $psEncC$addr; $frame_length = ((($1)) + 4580|0); $2 = HEAP32[$frame_length>>2]|0; $shr = $2 >> 1; $decimated_framelength1 = $shr; $3 = $psEncC$addr; $frame_length1 = ((($3)) + 4580|0); $4 = HEAP32[$frame_length1>>2]|0; $shr2 = $4 >> 2; $decimated_framelength2 = $shr2; $5 = $psEncC$addr; $frame_length3 = ((($5)) + 4580|0); $6 = HEAP32[$frame_length3>>2]|0; $shr4 = $6 >> 3; $decimated_framelength = $shr4; HEAP32[$X_offset>>2] = 0; $7 = $decimated_framelength; $8 = $decimated_framelength2; $add = (($7) + ($8))|0; $arrayidx5 = ((($X_offset)) + 4|0); HEAP32[$arrayidx5>>2] = $add; $arrayidx6 = ((($X_offset)) + 4|0); $9 = HEAP32[$arrayidx6>>2]|0; $10 = $decimated_framelength; $add7 = (($9) + ($10))|0; $arrayidx8 = ((($X_offset)) + 8|0); HEAP32[$arrayidx8>>2] = $add7; $arrayidx9 = ((($X_offset)) + 8|0); $11 = HEAP32[$arrayidx9>>2]|0; $12 = $decimated_framelength2; $add10 = (($11) + ($12))|0; $arrayidx11 = ((($X_offset)) + 12|0); HEAP32[$arrayidx11>>2] = $add10; $arrayidx12 = ((($X_offset)) + 12|0); $13 = HEAP32[$arrayidx12>>2]|0; $14 = $decimated_framelength1; $add13 = (($13) + ($14))|0; $15 = (_llvm_stacksave()|0); $saved_stack = $15; $vla$alloca_mul = $add13<<1; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $16 = $pIn$addr; $17 = $psSilk_VAD; $arrayidx15 = ((($X_offset)) + 12|0); $18 = HEAP32[$arrayidx15>>2]|0; $arrayidx16 = (($vla) + ($18<<1)|0); $19 = $psEncC$addr; $frame_length17 = ((($19)) + 4580|0); $20 = HEAP32[$frame_length17>>2]|0; _silk_ana_filt_bank_1($16,$17,$vla,$arrayidx16,$20); $21 = $psSilk_VAD; $AnaState1 = ((($21)) + 8|0); $arrayidx19 = ((($X_offset)) + 8|0); $22 = HEAP32[$arrayidx19>>2]|0; $arrayidx20 = (($vla) + ($22<<1)|0); $23 = $decimated_framelength1; _silk_ana_filt_bank_1($vla,$AnaState1,$vla,$arrayidx20,$23); $24 = $psSilk_VAD; $AnaState2 = ((($24)) + 16|0); $arrayidx22 = ((($X_offset)) + 4|0); $25 = HEAP32[$arrayidx22>>2]|0; $arrayidx23 = (($vla) + ($25<<1)|0); $26 = $decimated_framelength2; _silk_ana_filt_bank_1($vla,$AnaState2,$vla,$arrayidx23,$26); $27 = $decimated_framelength; $sub = (($27) - 1)|0; $arrayidx24 = (($vla) + ($sub<<1)|0); $28 = HEAP16[$arrayidx24>>1]|0; $conv = $28 << 16 >> 16; $shr25 = $conv >> 1; $conv26 = $shr25&65535; $29 = $decimated_framelength; $sub27 = (($29) - 1)|0; $arrayidx28 = (($vla) + ($sub27<<1)|0); HEAP16[$arrayidx28>>1] = $conv26; $30 = $decimated_framelength; $sub29 = (($30) - 1)|0; $arrayidx30 = (($vla) + ($sub29<<1)|0); $31 = HEAP16[$arrayidx30>>1]|0; $HPstateTmp = $31; $32 = $decimated_framelength; $sub31 = (($32) - 1)|0; $i = $sub31; while(1) { $33 = $i; $cmp = ($33|0)>(0); if (!($cmp)) { break; } $34 = $i; $sub33 = (($34) - 1)|0; $arrayidx34 = (($vla) + ($sub33<<1)|0); $35 = HEAP16[$arrayidx34>>1]|0; $conv35 = $35 << 16 >> 16; $shr36 = $conv35 >> 1; $conv37 = $shr36&65535; $36 = $i; $sub38 = (($36) - 1)|0; $arrayidx39 = (($vla) + ($sub38<<1)|0); HEAP16[$arrayidx39>>1] = $conv37; $37 = $i; $sub40 = (($37) - 1)|0; $arrayidx41 = (($vla) + ($sub40<<1)|0); $38 = HEAP16[$arrayidx41>>1]|0; $conv42 = $38 << 16 >> 16; $39 = $i; $arrayidx43 = (($vla) + ($39<<1)|0); $40 = HEAP16[$arrayidx43>>1]|0; $conv44 = $40 << 16 >> 16; $sub45 = (($conv44) - ($conv42))|0; $conv46 = $sub45&65535; HEAP16[$arrayidx43>>1] = $conv46; $41 = $i; $dec = (($41) + -1)|0; $i = $dec; } $42 = $psSilk_VAD; $HPstate = ((($42)) + 56|0); $43 = HEAP16[$HPstate>>1]|0; $conv47 = $43 << 16 >> 16; $44 = HEAP16[$vla>>1]|0; $conv49 = $44 << 16 >> 16; $sub50 = (($conv49) - ($conv47))|0; $conv51 = $sub50&65535; HEAP16[$vla>>1] = $conv51; $45 = $HPstateTmp; $46 = $psSilk_VAD; $HPstate52 = ((($46)) + 56|0); HEAP16[$HPstate52>>1] = $45; $b = 0; while(1) { $47 = $b; $cmp54 = ($47|0)<(4); if (!($cmp54)) { break; } $48 = $psEncC$addr; $frame_length57 = ((($48)) + 4580|0); $49 = HEAP32[$frame_length57>>2]|0; $50 = $b; $sub58 = (4 - ($50))|0; $call = (_silk_min_int_340($sub58,3)|0); $shr59 = $49 >> $call; $decimated_framelength = $shr59; $51 = $decimated_framelength; $shr60 = $51 >> 2; $dec_subframe_length = $shr60; $dec_subframe_offset = 0; $52 = $psSilk_VAD; $XnrgSubfr = ((($52)) + 24|0); $53 = $b; $arrayidx61 = (($XnrgSubfr) + ($53<<2)|0); $54 = HEAP32[$arrayidx61>>2]|0; $55 = $b; $arrayidx62 = (($Xnrg) + ($55<<2)|0); HEAP32[$arrayidx62>>2] = $54; $s = 0; while(1) { $56 = $s; $cmp64 = ($56|0)<(4); if (!($cmp64)) { break; } $sumSquared = 0; temp_Int32x4_ptr = $$compoundliteral$i;SIMD_Int32x4_store(HEAPU8, temp_Int32x4_ptr, SIMD_Int32x4_splat(0)); $57 = SIMD_Int32x4_load(HEAPU8, $$compoundliteral$i); temp_Int32x4_ptr = $xmm_acc;SIMD_Int32x4_store(HEAPU8, temp_Int32x4_ptr, $57); $i = 0; while(1) { $58 = $i; $59 = $dec_subframe_length; $sub69 = (($59) - 7)|0; $cmp70 = ($58|0)<($sub69|0); if (!($cmp70)) { break; } $60 = $b; $arrayidx73 = (($X_offset) + ($60<<2)|0); $61 = HEAP32[$arrayidx73>>2]|0; $62 = $i; $add74 = (($61) + ($62))|0; $63 = $dec_subframe_offset; $add75 = (($add74) + ($63))|0; $arrayidx76 = (($vla) + ($add75<<1)|0); $__p$addr$i = $arrayidx76; $64 = $__p$addr$i; $65 = SIMD_Int32x4_load(HEAPU8, $64); temp_Int32x4_ptr = $xmm_X;SIMD_Int32x4_store(HEAPU8, temp_Int32x4_ptr, $65); $66 = SIMD_Int32x4_load(HEAPU8, $xmm_X); temp_Int32x4_ptr = $__a$addr$i;SIMD_Int32x4_store(HEAPU8, temp_Int32x4_ptr, $66); $__count$addr$i = 3; $67 = SIMD_Int32x4_load(HEAPU8, $__a$addr$i); $68 = SIMD_Int16x8_fromInt32x4Bits($67); $69 = $__count$addr$i; $cmp$i = ($69>>>0)<(15); $70 = $__count$addr$i; $cond$i = $cmp$i ? $70 : 15; $call$i = (SIMD_Int16x8_check(SIMD_Int16x8_shiftRightByScalar((SIMD_Int16x8_check($68)),($cond$i|0)))); $71 = SIMD_Int32x4_fromInt16x8Bits($call$i); temp_Int32x4_ptr = $xmm_X;SIMD_Int32x4_store(HEAPU8, temp_Int32x4_ptr, $71); $72 = SIMD_Int32x4_load(HEAPU8, $xmm_X); $73 = SIMD_Int32x4_load(HEAPU8, $xmm_X); temp_Int32x4_ptr = $__a$addr$i377;SIMD_Int32x4_store(HEAPU8, temp_Int32x4_ptr, $72); temp_Int32x4_ptr = $__b$addr$i;SIMD_Int32x4_store(HEAPU8, temp_Int32x4_ptr, $73); $74 = SIMD_Int32x4_load(HEAPU8, $__a$addr$i377); temp_Int32x4_ptr = $src$i;SIMD_Int32x4_store(HEAPU8, temp_Int32x4_ptr, $74); $75 = SIMD_Int32x4_load(HEAPU8, $__b$addr$i); temp_Int32x4_ptr = $src2$i;SIMD_Int32x4_store(HEAPU8, temp_Int32x4_ptr, $75); $i$i = 0; while(1) { $76 = $i$i; $cmp$i378 = ($76|0)<(4); if (!($cmp$i378)) { break; } $77 = $i$i; $mul$i = $77<<1; $arrayidx$i = (($src$i) + ($mul$i<<1)|0); $78 = HEAP16[$arrayidx$i>>1]|0; $conv$i = $78 << 16 >> 16; $79 = $i$i; $mul3$i = $79<<1; $arrayidx4$i = (($src2$i) + ($mul3$i<<1)|0); $80 = HEAP16[$arrayidx4$i>>1]|0; $conv5$i = $80 << 16 >> 16; $mul6$i = Math_imul($conv$i, $conv5$i)|0; $81 = $i$i; $mul8$i = $81<<1; $add$i = (($mul8$i) + 1)|0; $arrayidx9$i = (($src$i) + ($add$i<<1)|0); $82 = HEAP16[$arrayidx9$i>>1]|0; $conv10$i = $82 << 16 >> 16; $83 = $i$i; $mul12$i = $83<<1; $add13$i = (($mul12$i) + 1)|0; $arrayidx14$i = (($src2$i) + ($add13$i<<1)|0); $84 = HEAP16[$arrayidx14$i>>1]|0; $conv15$i = $84 << 16 >> 16; $mul16$i = Math_imul($conv10$i, $conv15$i)|0; $add17$i = (($mul6$i) + ($mul16$i))|0; $85 = $i$i; $arrayidx19$i = (($dst$i) + ($85<<2)|0); HEAP32[$arrayidx19$i>>2] = $add17$i; $86 = $i$i; $inc$i = (($86) + 1)|0; $i$i = $inc$i; } $87 = SIMD_Int32x4_load(HEAPU8, $dst$i); temp_Int32x4_ptr = $xmm_X;SIMD_Int32x4_store(HEAPU8, temp_Int32x4_ptr, $87); $88 = SIMD_Int32x4_load(HEAPU8, $xmm_acc); $89 = SIMD_Int32x4_load(HEAPU8, $xmm_X); temp_Int32x4_ptr = $__a$addr$i379;SIMD_Int32x4_store(HEAPU8, temp_Int32x4_ptr, $88); temp_Int32x4_ptr = $__b$addr$i380;SIMD_Int32x4_store(HEAPU8, temp_Int32x4_ptr, $89); $90 = SIMD_Int32x4_load(HEAPU8, $__a$addr$i379); $91 = SIMD_Int32x4_load(HEAPU8, $__b$addr$i380); $add$i381 = SIMD_Int32x4_add($90,$91); temp_Int32x4_ptr = $xmm_acc;SIMD_Int32x4_store(HEAPU8, temp_Int32x4_ptr, $add$i381); $92 = $i; $add82 = (($92) + 8)|0; $i = $add82; } $93 = SIMD_Int32x4_load(HEAPU8, $xmm_acc); $94 = SIMD_Int32x4_load(HEAPU8, $xmm_acc); $95 = SIMD_Int32x4_load(HEAPU8, $xmm_acc); temp_Int32x4_ptr = $__a$addr$i382;SIMD_Int32x4_store(HEAPU8, temp_Int32x4_ptr, $94); temp_Int32x4_ptr = $__b$addr$i383;SIMD_Int32x4_store(HEAPU8, temp_Int32x4_ptr, $95); $96 = SIMD_Int32x4_load(HEAPU8, $__a$addr$i382); $97 = SIMD_Int32x4_load(HEAPU8, $__b$addr$i383); $shuffle$i = SIMD_Int32x4_shuffle($96, $97, 2, 3, 6, 7); temp_Int32x4_ptr = $__a$addr$i384;SIMD_Int32x4_store(HEAPU8, temp_Int32x4_ptr, $93); temp_Int32x4_ptr = $__b$addr$i385;SIMD_Int32x4_store(HEAPU8, temp_Int32x4_ptr, $shuffle$i); $98 = SIMD_Int32x4_load(HEAPU8, $__a$addr$i384); $99 = SIMD_Int32x4_load(HEAPU8, $__b$addr$i385); $add$i386 = SIMD_Int32x4_add($98,$99); temp_Int32x4_ptr = $xmm_acc;SIMD_Int32x4_store(HEAPU8, temp_Int32x4_ptr, $add$i386); $100 = SIMD_Int32x4_load(HEAPU8, $xmm_acc); $101 = SIMD_Int32x4_load(HEAPU8, $xmm_acc); $102 = SIMD_Int16x8_fromInt32x4Bits($101); $__w$addr$i = 0; $103 = $__w$addr$i; ; $104 = $__w$addr$i; ; $105 = $__w$addr$i; ; $106 = $__w$addr$i; ; $107 = $__w$addr$i; ; $108 = $__w$addr$i; ; $109 = $__w$addr$i; ; $110 = $__w$addr$i; $vecinit7$i = SIMD_Int16x8($103, $104, $105, $106, $107, $108, $109, $110); temp_Int16x8_ptr = $$compoundliteral$i391;SIMD_Int16x8_store(HEAPU8, temp_Int16x8_ptr, $vecinit7$i); $111 = SIMD_Int16x8_load(HEAPU8, $$compoundliteral$i391); $112 = SIMD_Int32x4_fromInt16x8Bits($111); $113 = SIMD_Int16x8_fromInt32x4Bits($112); $shuffle = SIMD_Int16x8_swizzle($102, 2, 3, 0, 0, 4, 5, 6, 7); $114 = SIMD_Int32x4_fromInt16x8Bits($shuffle); temp_Int32x4_ptr = $tmp;SIMD_Int32x4_store(HEAPU8, temp_Int32x4_ptr, $114); $115 = SIMD_Int32x4_load(HEAPU8, $tmp); temp_Int32x4_ptr = $__a$addr$i388;SIMD_Int32x4_store(HEAPU8, temp_Int32x4_ptr, $100); temp_Int32x4_ptr = $__b$addr$i389;SIMD_Int32x4_store(HEAPU8, temp_Int32x4_ptr, $115); $116 = SIMD_Int32x4_load(HEAPU8, $__a$addr$i388); $117 = SIMD_Int32x4_load(HEAPU8, $__b$addr$i389); $add$i390 = SIMD_Int32x4_add($116,$117); temp_Int32x4_ptr = $xmm_acc;SIMD_Int32x4_store(HEAPU8, temp_Int32x4_ptr, $add$i390); $118 = SIMD_Int32x4_load(HEAPU8, $xmm_acc); temp_Int32x4_ptr = $__a$addr$i387;SIMD_Int32x4_store(HEAPU8, temp_Int32x4_ptr, $118); $119 = SIMD_Int32x4_load(HEAPU8, $__a$addr$i387); temp_Int32x4_ptr = $__b$i;SIMD_Int32x4_store(HEAPU8, temp_Int32x4_ptr, $119); $120 = SIMD_Int32x4_load(HEAPU8, $__b$i); $vecext$i = SIMD_Int32x4_extractLane($120,0)|0; $121 = $sumSquared; $add89 = (($121) + ($vecext$i))|0; $sumSquared = $add89; while(1) { $122 = $i; $123 = $dec_subframe_length; $cmp91 = ($122|0)<($123|0); if (!($cmp91)) { break; } $124 = $b; $arrayidx94 = (($X_offset) + ($124<<2)|0); $125 = HEAP32[$arrayidx94>>2]|0; $126 = $i; $add95 = (($125) + ($126))|0; $127 = $dec_subframe_offset; $add96 = (($add95) + ($127))|0; $arrayidx97 = (($vla) + ($add96<<1)|0); $128 = HEAP16[$arrayidx97>>1]|0; $conv98 = $128 << 16 >> 16; $shr99 = $conv98 >> 3; $x_tmp = $shr99; $129 = $sumSquared; $130 = $x_tmp; $conv100 = $130&65535; $conv101 = $conv100 << 16 >> 16; $131 = $x_tmp; $conv102 = $131&65535; $conv103 = $conv102 << 16 >> 16; $mul = Math_imul($conv101, $conv103)|0; $add104 = (($129) + ($mul))|0; $sumSquared = $add104; $132 = $i; $inc = (($132) + 1)|0; $i = $inc; } $133 = $s; $cmp107 = ($133|0)<(3); $134 = $b; $arrayidx109 = (($Xnrg) + ($134<<2)|0); $135 = HEAP32[$arrayidx109>>2]|0; $136 = $sumSquared; if ($cmp107) { $add110 = (($135) + ($136))|0; $and = $add110 & -2147483648; $tobool = ($and|0)!=(0); if ($tobool) { $cond = 2147483647; } else { $137 = $b; $arrayidx111 = (($Xnrg) + ($137<<2)|0); $138 = HEAP32[$arrayidx111>>2]|0; $139 = $sumSquared; $add112 = (($138) + ($139))|0; $cond = $add112; } $140 = $b; $$sink = $140;$cond125$sink = $cond; } else { $shr115 = $136 >> 1; $add116 = (($135) + ($shr115))|0; $and117 = $add116 & -2147483648; $tobool118 = ($and117|0)!=(0); if ($tobool118) { $cond125 = 2147483647; } else { $141 = $b; $arrayidx121 = (($Xnrg) + ($141<<2)|0); $142 = HEAP32[$arrayidx121>>2]|0; $143 = $sumSquared; $shr122 = $143 >> 1; $add123 = (($142) + ($shr122))|0; $cond125 = $add123; } $144 = $b; $$sink = $144;$cond125$sink = $cond125; } $arrayidx126 = (($Xnrg) + ($$sink<<2)|0); HEAP32[$arrayidx126>>2] = $cond125$sink; $145 = $dec_subframe_length; $146 = $dec_subframe_offset; $add127 = (($146) + ($145))|0; $dec_subframe_offset = $add127; $147 = $s; $inc129 = (($147) + 1)|0; $s = $inc129; } $148 = $sumSquared; $149 = $psSilk_VAD; $XnrgSubfr131 = ((($149)) + 24|0); $150 = $b; $arrayidx132 = (($XnrgSubfr131) + ($150<<2)|0); HEAP32[$arrayidx132>>2] = $148; $151 = $b; $inc134 = (($151) + 1)|0; $b = $inc134; } $152 = $psSilk_VAD; _silk_VAD_GetNoiseLevels($Xnrg,$152); $sumSquared = 0; $input_tilt = 0; $b = 0; while(1) { $153 = $b; $cmp138 = ($153|0)<(4); if (!($cmp138)) { break; } $154 = $b; $arrayidx141 = (($Xnrg) + ($154<<2)|0); $155 = HEAP32[$arrayidx141>>2]|0; $156 = $psSilk_VAD; $NL = ((($156)) + 60|0); $157 = $b; $arrayidx142 = (($NL) + ($157<<2)|0); $158 = HEAP32[$arrayidx142>>2]|0; $sub143 = (($155) - ($158))|0; $speech_nrg = $sub143; $159 = $speech_nrg; $cmp144 = ($159|0)>(0); $160 = $b; if ($cmp144) { $arrayidx147 = (($Xnrg) + ($160<<2)|0); $161 = HEAP32[$arrayidx147>>2]|0; $and148 = $161 & -8388608; $cmp149 = ($and148|0)==(0); $162 = $b; $arrayidx152 = (($Xnrg) + ($162<<2)|0); $163 = HEAP32[$arrayidx152>>2]|0; if ($cmp149) { $shl = $163 << 8; $164 = $psSilk_VAD; $NL153 = ((($164)) + 60|0); $165 = $b; $arrayidx154 = (($NL153) + ($165<<2)|0); $166 = HEAP32[$arrayidx154>>2]|0; $add155 = (($166) + 1)|0; $div = (($shl|0) / ($add155|0))&-1; $167 = $b; $$sink1 = $167;$div163$sink = $div; } else { $168 = $psSilk_VAD; $NL159 = ((($168)) + 60|0); $169 = $b; $arrayidx160 = (($NL159) + ($169<<2)|0); $170 = HEAP32[$arrayidx160>>2]|0; $shr161 = $170 >> 8; $add162 = (($shr161) + 1)|0; $div163 = (($163|0) / ($add162|0))&-1; $171 = $b; $$sink1 = $171;$div163$sink = $div163; } $arrayidx164 = (($NrgToNoiseRatio_Q8) + ($$sink1<<2)|0); HEAP32[$arrayidx164>>2] = $div163$sink; $172 = $b; $arrayidx166 = (($NrgToNoiseRatio_Q8) + ($172<<2)|0); $173 = HEAP32[$arrayidx166>>2]|0; $call167 = (_silk_lin2log($173)|0); $sub168 = (($call167) - 1024)|0; $SNR_Q7 = $sub168; $174 = $sumSquared; $175 = $SNR_Q7; $conv169 = $175&65535; $conv170 = $conv169 << 16 >> 16; $176 = $SNR_Q7; $conv171 = $176&65535; $conv172 = $conv171 << 16 >> 16; $mul173 = Math_imul($conv170, $conv172)|0; $add174 = (($174) + ($mul173))|0; $sumSquared = $add174; $177 = $speech_nrg; $cmp175 = ($177|0)<(1048576); if ($cmp175) { $178 = $speech_nrg; $call178 = (_silk_SQRT_APPROX_341($178)|0); $shl179 = $call178 << 6; $shr180 = $shl179 >> 16; $179 = $SNR_Q7; $conv181 = $179&65535; $conv182 = $conv181 << 16 >> 16; $mul183 = Math_imul($shr180, $conv182)|0; $180 = $speech_nrg; $call184 = (_silk_SQRT_APPROX_341($180)|0); $shl185 = $call184 << 6; $and186 = $shl185 & 65535; $181 = $SNR_Q7; $conv187 = $181&65535; $conv188 = $conv187 << 16 >> 16; $mul189 = Math_imul($and186, $conv188)|0; $shr190 = $mul189 >> 16; $add191 = (($mul183) + ($shr190))|0; $SNR_Q7 = $add191; } $182 = $input_tilt; $183 = $b; $arrayidx193 = (20804 + ($183<<2)|0); $184 = HEAP32[$arrayidx193>>2]|0; $shr194 = $184 >> 16; $185 = $SNR_Q7; $conv195 = $185&65535; $conv196 = $conv195 << 16 >> 16; $mul197 = Math_imul($shr194, $conv196)|0; $186 = $b; $arrayidx198 = (20804 + ($186<<2)|0); $187 = HEAP32[$arrayidx198>>2]|0; $and199 = $187 & 65535; $188 = $SNR_Q7; $conv200 = $188&65535; $conv201 = $conv200 << 16 >> 16; $mul202 = Math_imul($and199, $conv201)|0; $shr203 = $mul202 >> 16; $add204 = (($mul197) + ($shr203))|0; $add205 = (($182) + ($add204))|0; $input_tilt = $add205; } else { $arrayidx207 = (($NrgToNoiseRatio_Q8) + ($160<<2)|0); HEAP32[$arrayidx207>>2] = 256; } $189 = $b; $inc210 = (($189) + 1)|0; $b = $inc210; } $190 = $sumSquared; $div212 = (($190|0) / 4)&-1; $sumSquared = $div212; $191 = $sumSquared; $call213 = (_silk_SQRT_APPROX_341($191)|0); $mul214 = ($call213*3)|0; $conv215 = $mul214&65535; $conv216 = $conv215 << 16 >> 16; $pSNR_dB_Q7 = $conv216; $192 = $pSNR_dB_Q7; $conv217 = $192&65535; $conv218 = $conv217 << 16 >> 16; $mul219 = 0; $193 = $pSNR_dB_Q7; $conv220 = $193&65535; $conv221 = $conv220 << 16 >> 16; $mul222 = ($conv221*45000)|0; $shr223 = $mul222 >> 16; $add224 = (($mul219) + ($shr223))|0; $sub225 = (($add224) - 128)|0; $call226 = (_silk_sigm_Q15($sub225)|0); $SA_Q15 = $call226; $194 = $input_tilt; $call227 = (_silk_sigm_Q15($194)|0); $sub228 = (($call227) - 16384)|0; $shl229 = $sub228 << 1; $195 = $psEncC$addr; $input_tilt_Q15 = ((($195)) + 4708|0); HEAP32[$input_tilt_Q15>>2] = $shl229; $speech_nrg = 0; $b = 0; while(1) { $196 = $b; $cmp231 = ($196|0)<(4); if (!($cmp231)) { break; } $197 = $b; $add234 = (($197) + 1)|0; $198 = $b; $arrayidx235 = (($Xnrg) + ($198<<2)|0); $199 = HEAP32[$arrayidx235>>2]|0; $200 = $psSilk_VAD; $NL236 = ((($200)) + 60|0); $201 = $b; $arrayidx237 = (($NL236) + ($201<<2)|0); $202 = HEAP32[$arrayidx237>>2]|0; $sub238 = (($199) - ($202))|0; $shr239 = $sub238 >> 4; $mul240 = Math_imul($add234, $shr239)|0; $203 = $speech_nrg; $add241 = (($203) + ($mul240))|0; $speech_nrg = $add241; $204 = $b; $inc243 = (($204) + 1)|0; $b = $inc243; } $205 = $speech_nrg; $cmp245 = ($205|0)<=(0); if ($cmp245) { $206 = $SA_Q15; $shr248 = $206 >> 1; $SA_Q15 = $shr248; } else { $207 = $speech_nrg; $cmp250 = ($207|0)<(32768); if ($cmp250) { $208 = $psEncC$addr; $frame_length253 = ((($208)) + 4580|0); $209 = HEAP32[$frame_length253>>2]|0; $210 = $psEncC$addr; $fs_kHz = ((($210)) + 4572|0); $211 = HEAP32[$fs_kHz>>2]|0; $mul254 = ($211*10)|0; $cmp255 = ($209|0)==($mul254|0); $212 = $speech_nrg; if ($cmp255) { $cmp258 = ($212|0)>(32767); if ($cmp258) { $cond269 = 32767; } else { $213 = $speech_nrg; $cmp262 = ($213|0)<(-32768); $214 = $speech_nrg; $cond267 = $cmp262 ? -32768 : $214; $cond269 = $cond267; } $shl270 = $cond269 << 16; $speech_nrg = $shl270; } else { $cmp272 = ($212|0)>(65535); if ($cmp272) { $cond283 = 65535; } else { $215 = $speech_nrg; $cmp276 = ($215|0)<(-65536); $216 = $speech_nrg; $cond281 = $cmp276 ? -65536 : $216; $cond283 = $cond281; } $shl284 = $cond283 << 15; $speech_nrg = $shl284; } $217 = $speech_nrg; $call286 = (_silk_SQRT_APPROX_341($217)|0); $speech_nrg = $call286; $218 = $speech_nrg; $add287 = (32768 + ($218))|0; $shr288 = $add287 >> 16; $219 = $SA_Q15; $conv289 = $219&65535; $conv290 = $conv289 << 16 >> 16; $mul291 = Math_imul($shr288, $conv290)|0; $220 = $speech_nrg; $add292 = (32768 + ($220))|0; $and293 = $add292 & 65535; $221 = $SA_Q15; $conv294 = $221&65535; $conv295 = $conv294 << 16 >> 16; $mul296 = Math_imul($and293, $conv295)|0; $shr297 = $mul296 >> 16; $add298 = (($mul291) + ($shr297))|0; $SA_Q15 = $add298; } } $222 = $SA_Q15; $shr301 = $222 >> 7; $call302 = (_silk_min_int_340($shr301,255)|0); $223 = $psEncC$addr; $speech_activity_Q8 = ((($223)) + 4528|0); HEAP32[$speech_activity_Q8>>2] = $call302; $224 = $SA_Q15; $shr303 = $224 >> 16; $225 = $SA_Q15; $conv304 = $225&65535; $conv305 = $conv304 << 16 >> 16; $mul306 = Math_imul($shr303, $conv305)|0; $226 = $SA_Q15; $and307 = $226 & 65535; $227 = $SA_Q15; $conv308 = $227&65535; $conv309 = $conv308 << 16 >> 16; $mul310 = Math_imul($and307, $conv309)|0; $shr311 = $mul310 >> 16; $add312 = (($mul306) + ($shr311))|0; $conv313 = $add312&65535; $conv314 = $conv313 << 16 >> 16; $mul315 = 0; $228 = $SA_Q15; $shr316 = $228 >> 16; $229 = $SA_Q15; $conv317 = $229&65535; $conv318 = $conv317 << 16 >> 16; $mul319 = Math_imul($shr316, $conv318)|0; $230 = $SA_Q15; $and320 = $230 & 65535; $231 = $SA_Q15; $conv321 = $231&65535; $conv322 = $conv321 << 16 >> 16; $mul323 = Math_imul($and320, $conv322)|0; $shr324 = $mul323 >> 16; $add325 = (($mul319) + ($shr324))|0; $conv326 = $add325&65535; $conv327 = $conv326 << 16 >> 16; $mul328 = $conv327<<12; $shr329 = $mul328 >> 16; $add330 = (($mul315) + ($shr329))|0; $smooth_coef_Q16 = $add330; $232 = $psEncC$addr; $frame_length331 = ((($232)) + 4580|0); $233 = HEAP32[$frame_length331>>2]|0; $234 = $psEncC$addr; $fs_kHz332 = ((($234)) + 4572|0); $235 = HEAP32[$fs_kHz332>>2]|0; $mul333 = ($235*10)|0; $cmp334 = ($233|0)==($mul333|0); if ($cmp334) { $236 = $smooth_coef_Q16; $shr337 = $236 >> 1; $smooth_coef_Q16 = $shr337; } $b = 0; while(1) { $237 = $b; $cmp340 = ($237|0)<(4); if (!($cmp340)) { break; } $238 = $psSilk_VAD; $NrgRatioSmth_Q8 = ((($238)) + 40|0); $239 = $b; $arrayidx343 = (($NrgRatioSmth_Q8) + ($239<<2)|0); $240 = HEAP32[$arrayidx343>>2]|0; $241 = $b; $arrayidx344 = (($NrgToNoiseRatio_Q8) + ($241<<2)|0); $242 = HEAP32[$arrayidx344>>2]|0; $243 = $psSilk_VAD; $NrgRatioSmth_Q8345 = ((($243)) + 40|0); $244 = $b; $arrayidx346 = (($NrgRatioSmth_Q8345) + ($244<<2)|0); $245 = HEAP32[$arrayidx346>>2]|0; $sub347 = (($242) - ($245))|0; $shr348 = $sub347 >> 16; $246 = $smooth_coef_Q16; $conv349 = $246&65535; $conv350 = $conv349 << 16 >> 16; $mul351 = Math_imul($shr348, $conv350)|0; $247 = $b; $arrayidx352 = (($NrgToNoiseRatio_Q8) + ($247<<2)|0); $248 = HEAP32[$arrayidx352>>2]|0; $249 = $psSilk_VAD; $NrgRatioSmth_Q8353 = ((($249)) + 40|0); $250 = $b; $arrayidx354 = (($NrgRatioSmth_Q8353) + ($250<<2)|0); $251 = HEAP32[$arrayidx354>>2]|0; $sub355 = (($248) - ($251))|0; $and356 = $sub355 & 65535; $252 = $smooth_coef_Q16; $conv357 = $252&65535; $conv358 = $conv357 << 16 >> 16; $mul359 = Math_imul($and356, $conv358)|0; $shr360 = $mul359 >> 16; $add361 = (($mul351) + ($shr360))|0; $add362 = (($240) + ($add361))|0; $253 = $psSilk_VAD; $NrgRatioSmth_Q8363 = ((($253)) + 40|0); $254 = $b; $arrayidx364 = (($NrgRatioSmth_Q8363) + ($254<<2)|0); HEAP32[$arrayidx364>>2] = $add362; $255 = $psSilk_VAD; $NrgRatioSmth_Q8365 = ((($255)) + 40|0); $256 = $b; $arrayidx366 = (($NrgRatioSmth_Q8365) + ($256<<2)|0); $257 = HEAP32[$arrayidx366>>2]|0; $call367 = (_silk_lin2log($257)|0); $sub368 = (($call367) - 1024)|0; $mul369 = ($sub368*3)|0; $SNR_Q7 = $mul369; $258 = $SNR_Q7; $sub370 = (($258) - 2048)|0; $shr371 = $sub370 >> 4; $call372 = (_silk_sigm_Q15($shr371)|0); $259 = $psEncC$addr; $input_quality_bands_Q15 = ((($259)) + 4692|0); $260 = $b; $arrayidx373 = (($input_quality_bands_Q15) + ($260<<2)|0); HEAP32[$arrayidx373>>2] = $call372; $261 = $b; $inc375 = (($261) + 1)|0; $b = $inc375; } $262 = $ret; $263 = $saved_stack; _llvm_stackrestore(($263|0)); STACKTOP = sp;return ($262|0); } function _silk_min_int_340($a,$b) { $a = $a|0; $b = $b|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $a$addr = 0, $b$addr = 0, $cmp = 0, $cond = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $a$addr = $a; $b$addr = $b; $0 = $a$addr; $1 = $b$addr; $cmp = ($0|0)<($1|0); $2 = $a$addr; $3 = $b$addr; $cond = $cmp ? $2 : $3; STACKTOP = sp;return ($cond|0); } function _silk_SQRT_APPROX_341($x) { $x = $x|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $add17 = 0, $and = 0, $and9 = 0, $cmp = 0, $conv = 0, $conv10 = 0, $conv11 = 0; var $conv13 = 0, $conv14 = 0, $conv5 = 0, $conv6 = 0, $conv7 = 0, $frac_Q7 = 0, $lz = 0, $mul = 0, $mul12 = 0, $mul15 = 0, $mul8 = 0, $retval = 0, $shr = 0, $shr16 = 0, $shr3 = 0, $shr4 = 0, $tobool = 0, $x$addr = 0, $y = 0, label = 0; var sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $lz = sp + 4|0; $frac_Q7 = sp; $x$addr = $x; $0 = $x$addr; $cmp = ($0|0)<=(0); if ($cmp) { $retval = 0; $11 = $retval; STACKTOP = sp;return ($11|0); } $1 = $x$addr; _silk_CLZ_FRAC_342($1,$lz,$frac_Q7); $2 = HEAP32[$lz>>2]|0; $and = $2 & 1; $tobool = ($and|0)!=(0); if ($tobool) { $y = 32768; } else { $y = 46214; } $3 = HEAP32[$lz>>2]|0; $shr = $3 >> 1; $4 = $y; $shr3 = $4 >> $shr; $y = $shr3; $5 = $y; $6 = $y; $shr4 = $6 >> 16; $7 = HEAP32[$frac_Q7>>2]|0; $conv = $7&65535; $conv5 = $conv << 16 >> 16; $mul = ($conv5*213)|0; $conv6 = $mul&65535; $conv7 = $conv6 << 16 >> 16; $mul8 = Math_imul($shr4, $conv7)|0; $8 = $y; $and9 = $8 & 65535; $9 = HEAP32[$frac_Q7>>2]|0; $conv10 = $9&65535; $conv11 = $conv10 << 16 >> 16; $mul12 = ($conv11*213)|0; $conv13 = $mul12&65535; $conv14 = $conv13 << 16 >> 16; $mul15 = Math_imul($and9, $conv14)|0; $shr16 = $mul15 >> 16; $add = (($mul8) + ($shr16))|0; $add17 = (($5) + ($add))|0; $y = $add17; $10 = $y; $retval = $10; $11 = $retval; STACKTOP = sp;return ($11|0); } function _silk_CLZ_FRAC_342($in,$lz,$frac_Q7) { $in = $in|0; $lz = $lz|0; $frac_Q7 = $frac_Q7|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $and = 0, $call = 0, $call1 = 0, $frac_Q7$addr = 0, $in$addr = 0, $lz$addr = 0, $lzeros = 0, $sub = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $in$addr = $in; $lz$addr = $lz; $frac_Q7$addr = $frac_Q7; $0 = $in$addr; $call = (_silk_CLZ32_343($0)|0); $lzeros = $call; $1 = $lzeros; $2 = $lz$addr; HEAP32[$2>>2] = $1; $3 = $in$addr; $4 = $lzeros; $sub = (24 - ($4))|0; $call1 = (_silk_ROR32_344($3,$sub)|0); $and = $call1 & 127; $5 = $frac_Q7$addr; HEAP32[$5>>2] = $and; STACKTOP = sp;return; } function _silk_CLZ32_343($in32) { $in32 = $in32|0; var $0 = 0, $1 = 0, $2 = 0, $cond = 0, $in32$addr = 0, $sub = 0, $sub1 = 0, $tobool = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $in32$addr = $in32; $0 = $in32$addr; $tobool = ($0|0)!=(0); if (!($tobool)) { $cond = 32; STACKTOP = sp;return ($cond|0); } $1 = $in32$addr; $2 = (Math_clz32(($1|0))|0); $sub = (32 - ($2))|0; $sub1 = (32 - ($sub))|0; $cond = $sub1; STACKTOP = sp;return ($cond|0); } function _silk_ROR32_344($a32,$rot) { $a32 = $a32|0; $rot = $rot|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $a32$addr = 0, $cmp = 0, $cmp1 = 0, $m = 0, $or = 0, $or8 = 0; var $r = 0, $retval = 0, $rot$addr = 0, $shl = 0, $shl6 = 0, $shr = 0, $shr7 = 0, $sub = 0, $sub3 = 0, $sub5 = 0, $x = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $a32$addr = $a32; $rot$addr = $rot; $0 = $a32$addr; $x = $0; $1 = $rot$addr; $r = $1; $2 = $rot$addr; $sub = (0 - ($2))|0; $m = $sub; $3 = $rot$addr; $cmp = ($3|0)==(0); if ($cmp) { $4 = $a32$addr; $retval = $4; $13 = $retval; STACKTOP = sp;return ($13|0); } $5 = $rot$addr; $cmp1 = ($5|0)<(0); $6 = $x; if ($cmp1) { $7 = $m; $shl = $6 << $7; $8 = $x; $9 = $m; $sub3 = (32 - ($9))|0; $shr = $8 >>> $sub3; $or = $shl | $shr; $retval = $or; $13 = $retval; STACKTOP = sp;return ($13|0); } else { $10 = $r; $sub5 = (32 - ($10))|0; $shl6 = $6 << $sub5; $11 = $x; $12 = $r; $shr7 = $11 >>> $12; $or8 = $shl6 | $shr7; $retval = $or8; $13 = $retval; STACKTOP = sp;return ($13|0); } return (0)|0; } function _opus_pcm_soft_clip($_x,$N,$C,$declip_mem) { $_x = $_x|0; $N = $N|0; $C = $C|0; $declip_mem = $declip_mem|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0.0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0.0, $111 = 0, $112 = 0.0, $113 = 0, $114 = 0.0, $115 = 0.0; var $116 = 0.0, $117 = 0.0, $118 = 0.0, $119 = 0, $12 = 0.0, $120 = 0, $121 = 0, $122 = 0.0, $123 = 0.0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0.0, $131 = 0.0, $132 = 0, $133 = 0; var $134 = 0, $135 = 0.0, $136 = 0, $137 = 0, $138 = 0, $139 = 0.0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0.0, $147 = 0, $148 = 0.0, $149 = 0.0, $15 = 0.0, $150 = 0, $151 = 0; var $152 = 0, $153 = 0, $154 = 0.0, $155 = 0.0, $156 = 0.0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0.0, $161 = 0, $162 = 0, $163 = 0, $164 = 0.0, $165 = 0, $166 = 0, $167 = 0, $168 = 0.0, $169 = 0, $17 = 0; var $170 = 0, $171 = 0, $172 = 0.0, $173 = 0, $174 = 0, $175 = 0, $176 = 0.0, $177 = 0, $178 = 0, $179 = 0, $18 = 0.0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0.0, $185 = 0, $186 = 0, $187 = 0, $19 = 0; var $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0.0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0.0, $35 = 0.0, $36 = 0, $37 = 0; var $38 = 0, $39 = 0.0, $4 = 0, $40 = 0.0, $41 = 0, $42 = 0, $43 = 0, $44 = 0.0, $45 = 0, $46 = 0, $47 = 0, $48 = 0.0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0.0, $55 = 0; var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0.0, $62 = 0, $63 = 0, $64 = 0, $65 = 0.0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0; var $74 = 0.0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0.0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0.0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0.0, $90 = 0.0, $91 = 0; var $92 = 0, $93 = 0, $94 = 0.0, $95 = 0, $96 = 0, $97 = 0, $98 = 0.0, $99 = 0.0, $C$addr = 0, $N$addr = 0, $_x$addr = 0, $a = 0.0, $add = 0.0, $add$ptr = 0, $add122 = 0.0, $add142 = 0.0, $add163 = 0.0, $arrayidx = 0, $arrayidx102 = 0, $arrayidx11 = 0; var $arrayidx113 = 0, $arrayidx124 = 0, $arrayidx135 = 0, $arrayidx137 = 0, $arrayidx140 = 0, $arrayidx144 = 0, $arrayidx15 = 0, $arrayidx162 = 0, $arrayidx165 = 0, $arrayidx171 = 0, $arrayidx179 = 0, $arrayidx185 = 0, $arrayidx191 = 0, $arrayidx20 = 0, $arrayidx201 = 0, $arrayidx24 = 0, $arrayidx29 = 0, $arrayidx35 = 0, $arrayidx37 = 0, $arrayidx40 = 0; var $arrayidx43 = 0, $arrayidx52 = 0, $arrayidx56 = 0, $arrayidx67 = 0, $arrayidx7 = 0, $arrayidx73 = 0, $arrayidx75 = 0, $arrayidx85 = 0, $arrayidx87 = 0, $arrayidx94 = 0, $c = 0, $call = 0.0, $call104 = 0.0, $call96 = 0.0, $cmp = 0, $cmp1 = 0, $cmp109 = 0, $cmp116 = 0, $cmp12 = 0, $cmp125 = 0; var $cmp131 = 0, $cmp149 = 0, $cmp157 = 0, $cmp166 = 0, $cmp174 = 0, $cmp180 = 0, $cmp196 = 0, $cmp22 = 0, $cmp26 = 0, $cmp31 = 0, $cmp49 = 0, $cmp5 = 0, $cmp53 = 0, $cmp57 = 0, $cmp6 = 0, $cmp63 = 0, $cmp70 = 0, $cmp77 = 0, $cmp8 = 0, $cmp81 = 0; var $cmp89 = 0, $cmp98 = 0, $cond = 0.0, $cond173 = 0.0, $cond189 = 0.0, $cond19 = 0.0, $conv = 0.0, $conv103 = 0.0, $conv105 = 0.0, $conv154 = 0.0, $conv68 = 0.0, $conv95 = 0.0, $conv97 = 0.0, $curr = 0, $dec = 0, $declip_mem$addr = 0, $delta = 0.0, $div = 0.0, $div155 = 0.0, $end = 0; var $i = 0, $inc = 0, $inc107 = 0, $inc146 = 0, $inc193 = 0, $inc203 = 0, $inc45 = 0, $inc61 = 0, $land$ext = 0, $maxval = 0.0, $mul = 0, $mul101 = 0, $mul112 = 0, $mul115 = 0.0, $mul120 = 0.0, $mul121 = 0.0, $mul123 = 0, $mul134 = 0, $mul136 = 0, $mul138 = 0.0; var $mul139 = 0, $mul141 = 0.0, $mul143 = 0, $mul161 = 0, $mul164 = 0, $mul170 = 0, $mul178 = 0, $mul184 = 0, $mul190 = 0, $mul28 = 0, $mul30 = 0.0, $mul34 = 0, $mul36 = 0, $mul38 = 0.0, $mul39 = 0, $mul41 = 0.0, $mul42 = 0, $mul51 = 0, $mul55 = 0, $mul66 = 0; var $mul72 = 0, $mul74 = 0, $mul76 = 0.0, $mul84 = 0, $mul86 = 0, $mul88 = 0.0, $mul93 = 0, $offset = 0.0, $or$cond = 0, $or$cond$not = 0, $or$cond1 = 0, $or$cond2 = 0, $or$cond3 = 0, $peak_pos = 0, $special = 0, $start = 0, $sub = 0, $sub119 = 0.0, $sub128 = 0.0, $sub153 = 0.0; var $sub160 = 0.0, $tobool = 0, $tobool148 = 0, $tobool4 = 0, $x = 0, $x0 = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(80|0); $_x$addr = $_x; $N$addr = $N; $C$addr = $C; $declip_mem$addr = $declip_mem; $0 = $C$addr; $cmp = ($0|0)<(1); $1 = $N$addr; $cmp1 = ($1|0)<(1); $or$cond = $cmp | $cmp1; $or$cond$not = $or$cond ^ 1; $2 = $_x$addr; $tobool = ($2|0)!=(0|0); $or$cond1 = $or$cond$not & $tobool; $3 = $declip_mem$addr; $tobool4 = ($3|0)!=(0|0); $or$cond2 = $or$cond1 & $tobool4; if (!($or$cond2)) { STACKTOP = sp;return; } $i = 0; while(1) { $4 = $i; $5 = $N$addr; $6 = $C$addr; $mul = Math_imul($5, $6)|0; $cmp5 = ($4|0)<($mul|0); if (!($cmp5)) { break; } $7 = $_x$addr; $8 = $i; $arrayidx = (($7) + ($8<<2)|0); $9 = +HEAPF32[$arrayidx>>2]; $cmp6 = 2.0 < $9; if ($cmp6) { $cond = 2.0; } else { $10 = $_x$addr; $11 = $i; $arrayidx7 = (($10) + ($11<<2)|0); $12 = +HEAPF32[$arrayidx7>>2]; $cond = $12; } $cmp8 = -2.0 > $cond; if ($cmp8) { $cond19 = -2.0; } else { $13 = $_x$addr; $14 = $i; $arrayidx11 = (($13) + ($14<<2)|0); $15 = +HEAPF32[$arrayidx11>>2]; $cmp12 = 2.0 < $15; if ($cmp12) { $cond19 = 2.0; } else { $16 = $_x$addr; $17 = $i; $arrayidx15 = (($16) + ($17<<2)|0); $18 = +HEAPF32[$arrayidx15>>2]; $cond19 = $18; } } $19 = $_x$addr; $20 = $i; $arrayidx20 = (($19) + ($20<<2)|0); HEAPF32[$arrayidx20>>2] = $cond19; $21 = $i; $inc = (($21) + 1)|0; $i = $inc; } $c = 0; while(1) { $22 = $c; $23 = $C$addr; $cmp22 = ($22|0)<($23|0); if (!($cmp22)) { break; } $24 = $_x$addr; $25 = $c; $add$ptr = (($24) + ($25<<2)|0); $x = $add$ptr; $26 = $declip_mem$addr; $27 = $c; $arrayidx24 = (($26) + ($27<<2)|0); $28 = +HEAPF32[$arrayidx24>>2]; $a = $28; $i = 0; while(1) { $29 = $i; $30 = $N$addr; $cmp26 = ($29|0)<($30|0); if (!($cmp26)) { break; } $31 = $x; $32 = $i; $33 = $C$addr; $mul28 = Math_imul($32, $33)|0; $arrayidx29 = (($31) + ($mul28<<2)|0); $34 = +HEAPF32[$arrayidx29>>2]; $35 = $a; $mul30 = $34 * $35; $cmp31 = $mul30 >= 0.0; if ($cmp31) { break; } $36 = $x; $37 = $i; $38 = $C$addr; $mul34 = Math_imul($37, $38)|0; $arrayidx35 = (($36) + ($mul34<<2)|0); $39 = +HEAPF32[$arrayidx35>>2]; $40 = $a; $41 = $x; $42 = $i; $43 = $C$addr; $mul36 = Math_imul($42, $43)|0; $arrayidx37 = (($41) + ($mul36<<2)|0); $44 = +HEAPF32[$arrayidx37>>2]; $mul38 = $40 * $44; $45 = $x; $46 = $i; $47 = $C$addr; $mul39 = Math_imul($46, $47)|0; $arrayidx40 = (($45) + ($mul39<<2)|0); $48 = +HEAPF32[$arrayidx40>>2]; $mul41 = $mul38 * $48; $add = $39 + $mul41; $49 = $x; $50 = $i; $51 = $C$addr; $mul42 = Math_imul($50, $51)|0; $arrayidx43 = (($49) + ($mul42<<2)|0); HEAPF32[$arrayidx43>>2] = $add; $52 = $i; $inc45 = (($52) + 1)|0; $i = $inc45; } $curr = 0; $53 = $x; $54 = +HEAPF32[$53>>2]; $x0 = $54; while(1) { $special = 0; $55 = $curr; $i = $55; while(1) { $56 = $i; $57 = $N$addr; $cmp49 = ($56|0)<($57|0); if (!($cmp49)) { break; } $58 = $x; $59 = $i; $60 = $C$addr; $mul51 = Math_imul($59, $60)|0; $arrayidx52 = (($58) + ($mul51<<2)|0); $61 = +HEAPF32[$arrayidx52>>2]; $cmp53 = $61 > 1.0; if ($cmp53) { break; } $62 = $x; $63 = $i; $64 = $C$addr; $mul55 = Math_imul($63, $64)|0; $arrayidx56 = (($62) + ($mul55<<2)|0); $65 = +HEAPF32[$arrayidx56>>2]; $cmp57 = $65 < -1.0; if ($cmp57) { break; } $66 = $i; $inc61 = (($66) + 1)|0; $i = $inc61; } $67 = $i; $68 = $N$addr; $cmp63 = ($67|0)==($68|0); if ($cmp63) { label = 23; break; } $69 = $i; $peak_pos = $69; $70 = $i; $end = $70; $start = $70; $71 = $x; $72 = $i; $73 = $C$addr; $mul66 = Math_imul($72, $73)|0; $arrayidx67 = (($71) + ($mul66<<2)|0); $74 = +HEAPF32[$arrayidx67>>2]; $conv = $74; $call = (+Math_abs((+$conv))); $conv68 = $call; $maxval = $conv68; while(1) { $75 = $start; $cmp70 = ($75|0)>(0); if (!($cmp70)) { break; } $76 = $x; $77 = $i; $78 = $C$addr; $mul72 = Math_imul($77, $78)|0; $arrayidx73 = (($76) + ($mul72<<2)|0); $79 = +HEAPF32[$arrayidx73>>2]; $80 = $x; $81 = $start; $sub = (($81) - 1)|0; $82 = $C$addr; $mul74 = Math_imul($sub, $82)|0; $arrayidx75 = (($80) + ($mul74<<2)|0); $83 = +HEAPF32[$arrayidx75>>2]; $mul76 = $79 * $83; $cmp77 = $mul76 >= 0.0; if (!($cmp77)) { break; } $84 = $start; $dec = (($84) + -1)|0; $start = $dec; } while(1) { $85 = $end; $86 = $N$addr; $cmp81 = ($85|0)<($86|0); if (!($cmp81)) { break; } $87 = $x; $88 = $i; $89 = $C$addr; $mul84 = Math_imul($88, $89)|0; $arrayidx85 = (($87) + ($mul84<<2)|0); $90 = +HEAPF32[$arrayidx85>>2]; $91 = $x; $92 = $end; $93 = $C$addr; $mul86 = Math_imul($92, $93)|0; $arrayidx87 = (($91) + ($mul86<<2)|0); $94 = +HEAPF32[$arrayidx87>>2]; $mul88 = $90 * $94; $cmp89 = $mul88 >= 0.0; if (!($cmp89)) { break; } $95 = $x; $96 = $end; $97 = $C$addr; $mul93 = Math_imul($96, $97)|0; $arrayidx94 = (($95) + ($mul93<<2)|0); $98 = +HEAPF32[$arrayidx94>>2]; $conv95 = $98; $call96 = (+Math_abs((+$conv95))); $conv97 = $call96; $99 = $maxval; $cmp98 = $conv97 > $99; if ($cmp98) { $100 = $x; $101 = $end; $102 = $C$addr; $mul101 = Math_imul($101, $102)|0; $arrayidx102 = (($100) + ($mul101<<2)|0); $103 = +HEAPF32[$arrayidx102>>2]; $conv103 = $103; $call104 = (+Math_abs((+$conv103))); $conv105 = $call104; $maxval = $conv105; $104 = $end; $peak_pos = $104; } $105 = $end; $inc107 = (($105) + 1)|0; $end = $inc107; } $106 = $start; $cmp109 = ($106|0)==(0); if ($cmp109) { $107 = $x; $108 = $i; $109 = $C$addr; $mul112 = Math_imul($108, $109)|0; $arrayidx113 = (($107) + ($mul112<<2)|0); $110 = +HEAPF32[$arrayidx113>>2]; $111 = $x; $112 = +HEAPF32[$111>>2]; $mul115 = $110 * $112; $cmp116 = $mul115 >= 0.0; $113 = $cmp116; } else { $113 = 0; } $land$ext = $113&1; $special = $land$ext; $114 = $maxval; $sub119 = $114 - 1.0; $115 = $maxval; $116 = $maxval; $mul120 = $115 * $116; $div = $sub119 / $mul120; $a = $div; $117 = $a; $mul121 = $117 * 2.3999999143597961E-7; $118 = $a; $add122 = $118 + $mul121; $a = $add122; $119 = $x; $120 = $i; $121 = $C$addr; $mul123 = Math_imul($120, $121)|0; $arrayidx124 = (($119) + ($mul123<<2)|0); $122 = +HEAPF32[$arrayidx124>>2]; $cmp125 = $122 > 0.0; if ($cmp125) { $123 = $a; $sub128 = - $123; $a = $sub128; } $124 = $start; $i = $124; while(1) { $125 = $i; $126 = $end; $cmp131 = ($125|0)<($126|0); if (!($cmp131)) { break; } $127 = $x; $128 = $i; $129 = $C$addr; $mul134 = Math_imul($128, $129)|0; $arrayidx135 = (($127) + ($mul134<<2)|0); $130 = +HEAPF32[$arrayidx135>>2]; $131 = $a; $132 = $x; $133 = $i; $134 = $C$addr; $mul136 = Math_imul($133, $134)|0; $arrayidx137 = (($132) + ($mul136<<2)|0); $135 = +HEAPF32[$arrayidx137>>2]; $mul138 = $131 * $135; $136 = $x; $137 = $i; $138 = $C$addr; $mul139 = Math_imul($137, $138)|0; $arrayidx140 = (($136) + ($mul139<<2)|0); $139 = +HEAPF32[$arrayidx140>>2]; $mul141 = $mul138 * $139; $add142 = $130 + $mul141; $140 = $x; $141 = $i; $142 = $C$addr; $mul143 = Math_imul($141, $142)|0; $arrayidx144 = (($140) + ($mul143<<2)|0); HEAPF32[$arrayidx144>>2] = $add142; $143 = $i; $inc146 = (($143) + 1)|0; $i = $inc146; } $144 = $special; $tobool148 = ($144|0)!=(0); $145 = $peak_pos; $cmp149 = ($145|0)>=(2); $or$cond3 = $tobool148 & $cmp149; L54: do { if ($or$cond3) { $146 = $x0; $147 = $x; $148 = +HEAPF32[$147>>2]; $sub153 = $146 - $148; $offset = $sub153; $149 = $offset; $150 = $peak_pos; $conv154 = (+($150|0)); $div155 = $149 / $conv154; $delta = $div155; $151 = $curr; $i = $151; while(1) { $152 = $i; $153 = $peak_pos; $cmp157 = ($152|0)<($153|0); if (!($cmp157)) { break L54; } $154 = $delta; $155 = $offset; $sub160 = $155 - $154; $offset = $sub160; $156 = $offset; $157 = $x; $158 = $i; $159 = $C$addr; $mul161 = Math_imul($158, $159)|0; $arrayidx162 = (($157) + ($mul161<<2)|0); $160 = +HEAPF32[$arrayidx162>>2]; $add163 = $160 + $156; HEAPF32[$arrayidx162>>2] = $add163; $161 = $x; $162 = $i; $163 = $C$addr; $mul164 = Math_imul($162, $163)|0; $arrayidx165 = (($161) + ($mul164<<2)|0); $164 = +HEAPF32[$arrayidx165>>2]; $cmp166 = 1.0 < $164; if ($cmp166) { $cond173 = 1.0; } else { $165 = $x; $166 = $i; $167 = $C$addr; $mul170 = Math_imul($166, $167)|0; $arrayidx171 = (($165) + ($mul170<<2)|0); $168 = +HEAPF32[$arrayidx171>>2]; $cond173 = $168; } $cmp174 = -1.0 > $cond173; if ($cmp174) { $cond189 = -1.0; } else { $169 = $x; $170 = $i; $171 = $C$addr; $mul178 = Math_imul($170, $171)|0; $arrayidx179 = (($169) + ($mul178<<2)|0); $172 = +HEAPF32[$arrayidx179>>2]; $cmp180 = 1.0 < $172; if ($cmp180) { $cond189 = 1.0; } else { $173 = $x; $174 = $i; $175 = $C$addr; $mul184 = Math_imul($174, $175)|0; $arrayidx185 = (($173) + ($mul184<<2)|0); $176 = +HEAPF32[$arrayidx185>>2]; $cond189 = $176; } } $177 = $x; $178 = $i; $179 = $C$addr; $mul190 = Math_imul($178, $179)|0; $arrayidx191 = (($177) + ($mul190<<2)|0); HEAPF32[$arrayidx191>>2] = $cond189; $180 = $i; $inc193 = (($180) + 1)|0; $i = $inc193; } } } while(0); $181 = $end; $curr = $181; $182 = $curr; $183 = $N$addr; $cmp196 = ($182|0)==($183|0); if ($cmp196) { break; } } if ((label|0) == 23) { label = 0; $a = 0.0; } $184 = $a; $185 = $declip_mem$addr; $186 = $c; $arrayidx201 = (($185) + ($186<<2)|0); HEAPF32[$arrayidx201>>2] = $184; $187 = $c; $inc203 = (($187) + 1)|0; $c = $inc203; } STACKTOP = sp;return; } function _encode_size($size,$data) { $size = $size|0; $data = $data|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $add = 0, $and = 0, $arrayidx6 = 0, $cmp = 0, $conv = 0, $conv1 = 0, $conv4 = 0, $conv5 = 0, $data$addr = 0, $retval = 0, $shr = 0; var $size$addr = 0, $sub = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $size$addr = $size; $data$addr = $data; $0 = $size$addr; $cmp = ($0|0)<(252); $1 = $size$addr; if ($cmp) { $conv = $1&255; $2 = $data$addr; HEAP8[$2>>0] = $conv; $retval = 1; $8 = $retval; STACKTOP = sp;return ($8|0); } else { $and = $1 & 3; $add = (252 + ($and))|0; $conv1 = $add&255; $3 = $data$addr; HEAP8[$3>>0] = $conv1; $4 = $size$addr; $5 = $data$addr; $6 = HEAP8[$5>>0]|0; $conv4 = $6&255; $sub = (($4) - ($conv4))|0; $shr = $sub >> 2; $conv5 = $shr&255; $7 = $data$addr; $arrayidx6 = ((($7)) + 1|0); HEAP8[$arrayidx6>>0] = $conv5; $retval = 2; $8 = $retval; STACKTOP = sp;return ($8|0); } return (0)|0; } function _opus_packet_get_samples_per_frame($data,$Fs) { $data = $data|0; $Fs = $Fs|0; var $$sink = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $Fs$addr = 0, $and = 0, $and11 = 0, $and19 = 0, $and3 = 0, $and6 = 0; var $audiosize = 0, $cmp = 0, $cmp20 = 0, $conv = 0, $conv10 = 0, $conv2 = 0, $data$addr = 0, $div = 0, $div14 = 0, $div23 = 0, $div26 = 0, $mul = 0, $shl = 0, $shl25 = 0, $shr = 0, $shr18 = 0, $tobool = 0, $tobool12 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $data$addr = $data; $Fs$addr = $Fs; $0 = $data$addr; $1 = HEAP8[$0>>0]|0; $conv = $1&255; $and = $conv & 128; $tobool = ($and|0)!=(0); $2 = $data$addr; $3 = HEAP8[$2>>0]|0; $conv2 = $3&255; if ($tobool) { $shr = $conv2 >> 3; $and3 = $shr & 3; $audiosize = $and3; $4 = $Fs$addr; $5 = $audiosize; $shl = $4 << $5; $div = (($shl|0) / 400)&-1; $audiosize = $div; $12 = $audiosize; STACKTOP = sp;return ($12|0); } $and6 = $conv2 & 96; $cmp = ($and6|0)==(96); $6 = $data$addr; $7 = HEAP8[$6>>0]|0; $conv10 = $7&255; if ($cmp) { $and11 = $conv10 & 8; $tobool12 = ($and11|0)!=(0); $8 = $Fs$addr; $$sink = $tobool12 ? 50 : 100; $div14 = (($8|0) / ($$sink|0))&-1; $audiosize = $div14; $12 = $audiosize; STACKTOP = sp;return ($12|0); } $shr18 = $conv10 >> 3; $and19 = $shr18 & 3; $audiosize = $and19; $9 = $audiosize; $cmp20 = ($9|0)==(3); $10 = $Fs$addr; if ($cmp20) { $mul = ($10*60)|0; $div23 = (($mul|0) / 1000)&-1; $audiosize = $div23; $12 = $audiosize; STACKTOP = sp;return ($12|0); } else { $11 = $audiosize; $shl25 = $10 << $11; $div26 = (($shl25|0) / 100)&-1; $audiosize = $div26; $12 = $audiosize; STACKTOP = sp;return ($12|0); } return (0)|0; } function _opus_packet_parse_impl($data,$len,$self_delimited,$out_toc,$frames,$size,$payload_offset,$packet_offset) { $data = $data|0; $len = $len|0; $self_delimited = $self_delimited|0; $out_toc = $out_toc|0; $frames = $frames|0; $size = $size|0; $payload_offset = $payload_offset|0; $packet_offset = $packet_offset|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; var $152 = 0, $153 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0; var $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0; var $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0; var $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0; var $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $add = 0, $add$ptr = 0, $add$ptr118 = 0, $add$ptr119 = 0, $add$ptr135 = 0, $add$ptr189 = 0; var $add$ptr73 = 0, $add$ptr87 = 0, $add161 = 0, $add198 = 0, $add90 = 0, $and = 0, $and35 = 0, $and45 = 0, $and66 = 0, $and7 = 0, $arrayidx110 = 0, $arrayidx123 = 0, $arrayidx129 = 0, $arrayidx139 = 0, $arrayidx152 = 0, $arrayidx153 = 0, $arrayidx159 = 0, $arrayidx174 = 0, $arrayidx185 = 0, $arrayidx187 = 0; var $arrayidx76 = 0, $arrayidx81 = 0, $arrayidx88 = 0, $bytes = 0, $call = 0, $call120 = 0, $call14 = 0, $call74 = 0, $cbr = 0, $ch = 0, $cmp = 0, $cmp1 = 0, $cmp100 = 0, $cmp106 = 0, $cmp125 = 0, $cmp131 = 0, $cmp142 = 0, $cmp148 = 0, $cmp162 = 0, $cmp168 = 0; var $cmp17 = 0, $cmp180 = 0, $cmp2 = 0, $cmp22 = 0, $cmp29 = 0, $cmp36 = 0, $cmp39 = 0, $cmp48 = 0, $cmp55 = 0, $cmp58 = 0, $cmp61 = 0, $cmp71 = 0, $cmp78 = 0, $cmp83 = 0, $cmp92 = 0, $cond = 0, $conv = 0, $conv109 = 0, $conv11 = 0, $conv124 = 0; var $conv130 = 0, $conv140 = 0, $conv16 = 0, $conv160 = 0, $conv172 = 0, $conv188 = 0, $conv21 = 0, $conv27 = 0, $conv34 = 0, $conv44 = 0, $conv53 = 0, $conv65 = 0, $conv77 = 0, $conv82 = 0, $conv89 = 0, $count = 0, $data$addr = 0, $data0 = 0, $dec = 0, $dec43 = 0; var $dec54 = 0, $div = 0, $div98 = 0, $frames$addr = 0, $framesize = 0, $i = 0, $inc = 0, $inc112 = 0, $inc155 = 0, $inc191 = 0, $incdec$ptr = 0, $incdec$ptr33 = 0, $incdec$ptr52 = 0, $last_size = 0, $len$addr = 0, $lnot = 0, $lnot$ext = 0, $mul = 0, $mul141 = 0, $mul99 = 0; var $or$cond = 0, $out_toc$addr = 0, $p = 0, $packet_offset$addr = 0, $pad = 0, $payload_offset$addr = 0, $retval = 0, $self_delimited$addr = 0, $size$addr = 0, $sub = 0, $sub$ptr$lhs$cast = 0, $sub$ptr$lhs$cast195 = 0, $sub$ptr$rhs$cast = 0, $sub$ptr$rhs$cast196 = 0, $sub$ptr$sub = 0, $sub$ptr$sub197 = 0, $sub105 = 0, $sub121 = 0, $sub122 = 0, $sub128 = 0; var $sub138 = 0, $sub147 = 0, $sub151 = 0, $sub158 = 0, $sub173 = 0, $sub28 = 0, $sub57 = 0, $sub70 = 0, $sub75 = 0, $sub91 = 0, $tmp = 0, $tobool = 0, $tobool116 = 0, $tobool136 = 0, $tobool176 = 0, $tobool183 = 0, $tobool193 = 0, $tobool200 = 0, $tobool46 = 0, $tobool67 = 0; var $tobool68 = 0, $tobool8 = 0, $tobool96 = 0, $toc = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(80|0); $data$addr = $data; $len$addr = $len; $self_delimited$addr = $self_delimited; $out_toc$addr = $out_toc; $frames$addr = $frames; $size$addr = $size; $payload_offset$addr = $payload_offset; $packet_offset$addr = $packet_offset; $pad = 0; $0 = $data$addr; $data0 = $0; $1 = $size$addr; $cmp = ($1|0)==(0|0); $2 = $len$addr; $cmp1 = ($2|0)<(0); $or$cond = $cmp | $cmp1; if ($or$cond) { $retval = -1; $153 = $retval; STACKTOP = sp;return ($153|0); } $3 = $len$addr; $cmp2 = ($3|0)==(0); if ($cmp2) { $retval = -4; $153 = $retval; STACKTOP = sp;return ($153|0); } $4 = $data$addr; $call = (_opus_packet_get_samples_per_frame($4,48000)|0); $framesize = $call; $cbr = 0; $5 = $data$addr; $incdec$ptr = ((($5)) + 1|0); $data$addr = $incdec$ptr; $6 = HEAP8[$5>>0]|0; $toc = $6; $7 = $len$addr; $dec = (($7) + -1)|0; $len$addr = $dec; $8 = $len$addr; $last_size = $8; $9 = $toc; $conv = $9&255; $and = $conv & 3; L9: do { switch ($and|0) { case 0: { $count = 1; break; } case 1: { $count = 2; $cbr = 1; $10 = $self_delimited$addr; $tobool = ($10|0)!=(0); if (!($tobool)) { $11 = $len$addr; $and7 = $11 & 1; $tobool8 = ($and7|0)!=(0); if (!($tobool8)) { $12 = $len$addr; $div = (($12|0) / 2)&-1; $last_size = $div; $13 = $last_size; $conv11 = $13&65535; $14 = $size$addr; HEAP16[$14>>1] = $conv11; break L9; } $retval = -4; $153 = $retval; STACKTOP = sp;return ($153|0); } break; } case 2: { $count = 2; $15 = $data$addr; $16 = $len$addr; $17 = $size$addr; $call14 = (_parse_size($15,$16,$17)|0); $bytes = $call14; $18 = $bytes; $19 = $len$addr; $sub = (($19) - ($18))|0; $len$addr = $sub; $20 = $size$addr; $21 = HEAP16[$20>>1]|0; $conv16 = $21 << 16 >> 16; $cmp17 = ($conv16|0)<(0); if (!($cmp17)) { $22 = $size$addr; $23 = HEAP16[$22>>1]|0; $conv21 = $23 << 16 >> 16; $24 = $len$addr; $cmp22 = ($conv21|0)>($24|0); if (!($cmp22)) { $25 = $bytes; $26 = $data$addr; $add$ptr = (($26) + ($25)|0); $data$addr = $add$ptr; $27 = $len$addr; $28 = $size$addr; $29 = HEAP16[$28>>1]|0; $conv27 = $29 << 16 >> 16; $sub28 = (($27) - ($conv27))|0; $last_size = $sub28; break L9; } } $retval = -4; $153 = $retval; STACKTOP = sp;return ($153|0); break; } default: { $30 = $len$addr; $cmp29 = ($30|0)<(1); if ($cmp29) { $retval = -4; $153 = $retval; STACKTOP = sp;return ($153|0); } $31 = $data$addr; $incdec$ptr33 = ((($31)) + 1|0); $data$addr = $incdec$ptr33; $32 = HEAP8[$31>>0]|0; $ch = $32; $33 = $ch; $conv34 = $33&255; $and35 = $conv34 & 63; $count = $and35; $34 = $count; $cmp36 = ($34|0)<=(0); if (!($cmp36)) { $35 = $framesize; $36 = $count; $mul = Math_imul($35, $36)|0; $cmp39 = ($mul|0)>(5760); if (!($cmp39)) { $37 = $len$addr; $dec43 = (($37) + -1)|0; $len$addr = $dec43; $38 = $ch; $conv44 = $38&255; $and45 = $conv44 & 64; $tobool46 = ($and45|0)!=(0); L18: do { if ($tobool46) { while(1) { $39 = $len$addr; $cmp48 = ($39|0)<=(0); if ($cmp48) { break; } $40 = $data$addr; $incdec$ptr52 = ((($40)) + 1|0); $data$addr = $incdec$ptr52; $41 = HEAP8[$40>>0]|0; $conv53 = $41&255; $p = $conv53; $42 = $len$addr; $dec54 = (($42) + -1)|0; $len$addr = $dec54; $43 = $p; $cmp55 = ($43|0)==(255); $44 = $p; $cond = $cmp55 ? 254 : $44; $tmp = $cond; $45 = $tmp; $46 = $len$addr; $sub57 = (($46) - ($45))|0; $len$addr = $sub57; $47 = $tmp; $48 = $pad; $add = (($48) + ($47))|0; $pad = $add; $49 = $p; $cmp58 = ($49|0)==(255); if (!($cmp58)) { break L18; } } $retval = -4; $153 = $retval; STACKTOP = sp;return ($153|0); } } while(0); $50 = $len$addr; $cmp61 = ($50|0)<(0); if ($cmp61) { $retval = -4; $153 = $retval; STACKTOP = sp;return ($153|0); } $51 = $ch; $conv65 = $51&255; $and66 = $conv65 & 128; $tobool67 = ($and66|0)!=(0); $lnot = $tobool67 ^ 1; $lnot$ext = $lnot&1; $cbr = $lnot$ext; $52 = $cbr; $tobool68 = ($52|0)!=(0); if ($tobool68) { $78 = $self_delimited$addr; $tobool96 = ($78|0)!=(0); if ($tobool96) { break L9; } $79 = $len$addr; $80 = $count; $div98 = (($79|0) / ($80|0))&-1; $last_size = $div98; $81 = $last_size; $82 = $count; $mul99 = Math_imul($81, $82)|0; $83 = $len$addr; $cmp100 = ($mul99|0)!=($83|0); if ($cmp100) { $retval = -4; $153 = $retval; STACKTOP = sp;return ($153|0); } $i = 0; while(1) { $84 = $i; $85 = $count; $sub105 = (($85) - 1)|0; $cmp106 = ($84|0)<($sub105|0); if (!($cmp106)) { break L9; } $86 = $last_size; $conv109 = $86&65535; $87 = $size$addr; $88 = $i; $arrayidx110 = (($87) + ($88<<1)|0); HEAP16[$arrayidx110>>1] = $conv109; $89 = $i; $inc112 = (($89) + 1)|0; $i = $inc112; } } $53 = $len$addr; $last_size = $53; $i = 0; while(1) { $54 = $i; $55 = $count; $sub70 = (($55) - 1)|0; $cmp71 = ($54|0)<($sub70|0); if (!($cmp71)) { break; } $56 = $data$addr; $57 = $len$addr; $58 = $size$addr; $59 = $i; $add$ptr73 = (($58) + ($59<<1)|0); $call74 = (_parse_size($56,$57,$add$ptr73)|0); $bytes = $call74; $60 = $bytes; $61 = $len$addr; $sub75 = (($61) - ($60))|0; $len$addr = $sub75; $62 = $size$addr; $63 = $i; $arrayidx76 = (($62) + ($63<<1)|0); $64 = HEAP16[$arrayidx76>>1]|0; $conv77 = $64 << 16 >> 16; $cmp78 = ($conv77|0)<(0); if ($cmp78) { label = 31; break; } $65 = $size$addr; $66 = $i; $arrayidx81 = (($65) + ($66<<1)|0); $67 = HEAP16[$arrayidx81>>1]|0; $conv82 = $67 << 16 >> 16; $68 = $len$addr; $cmp83 = ($conv82|0)>($68|0); if ($cmp83) { label = 31; break; } $69 = $bytes; $70 = $data$addr; $add$ptr87 = (($70) + ($69)|0); $data$addr = $add$ptr87; $71 = $bytes; $72 = $size$addr; $73 = $i; $arrayidx88 = (($72) + ($73<<1)|0); $74 = HEAP16[$arrayidx88>>1]|0; $conv89 = $74 << 16 >> 16; $add90 = (($71) + ($conv89))|0; $75 = $last_size; $sub91 = (($75) - ($add90))|0; $last_size = $sub91; $76 = $i; $inc = (($76) + 1)|0; $i = $inc; } if ((label|0) == 31) { $retval = -4; $153 = $retval; STACKTOP = sp;return ($153|0); } $77 = $last_size; $cmp92 = ($77|0)<(0); if (!($cmp92)) { break L9; } $retval = -4; $153 = $retval; STACKTOP = sp;return ($153|0); } } $retval = -4; $153 = $retval; STACKTOP = sp;return ($153|0); } } } while(0); $90 = $self_delimited$addr; $tobool116 = ($90|0)!=(0); L67: do { if ($tobool116) { $91 = $data$addr; $92 = $len$addr; $93 = $size$addr; $94 = $count; $add$ptr118 = (($93) + ($94<<1)|0); $add$ptr119 = ((($add$ptr118)) + -2|0); $call120 = (_parse_size($91,$92,$add$ptr119)|0); $bytes = $call120; $95 = $bytes; $96 = $len$addr; $sub121 = (($96) - ($95))|0; $len$addr = $sub121; $97 = $size$addr; $98 = $count; $sub122 = (($98) - 1)|0; $arrayidx123 = (($97) + ($sub122<<1)|0); $99 = HEAP16[$arrayidx123>>1]|0; $conv124 = $99 << 16 >> 16; $cmp125 = ($conv124|0)<(0); if (!($cmp125)) { $100 = $size$addr; $101 = $count; $sub128 = (($101) - 1)|0; $arrayidx129 = (($100) + ($sub128<<1)|0); $102 = HEAP16[$arrayidx129>>1]|0; $conv130 = $102 << 16 >> 16; $103 = $len$addr; $cmp131 = ($conv130|0)>($103|0); if (!($cmp131)) { $104 = $bytes; $105 = $data$addr; $add$ptr135 = (($105) + ($104)|0); $data$addr = $add$ptr135; $106 = $cbr; $tobool136 = ($106|0)!=(0); if (!($tobool136)) { $120 = $bytes; $121 = $size$addr; $122 = $count; $sub158 = (($122) - 1)|0; $arrayidx159 = (($121) + ($sub158<<1)|0); $123 = HEAP16[$arrayidx159>>1]|0; $conv160 = $123 << 16 >> 16; $add161 = (($120) + ($conv160))|0; $124 = $last_size; $cmp162 = ($add161|0)>($124|0); if (!($cmp162)) { break; } $retval = -4; $153 = $retval; STACKTOP = sp;return ($153|0); } $107 = $size$addr; $108 = $count; $sub138 = (($108) - 1)|0; $arrayidx139 = (($107) + ($sub138<<1)|0); $109 = HEAP16[$arrayidx139>>1]|0; $conv140 = $109 << 16 >> 16; $110 = $count; $mul141 = Math_imul($conv140, $110)|0; $111 = $len$addr; $cmp142 = ($mul141|0)>($111|0); if ($cmp142) { $retval = -4; $153 = $retval; STACKTOP = sp;return ($153|0); } $i = 0; while(1) { $112 = $i; $113 = $count; $sub147 = (($113) - 1)|0; $cmp148 = ($112|0)<($sub147|0); if (!($cmp148)) { break L67; } $114 = $size$addr; $115 = $count; $sub151 = (($115) - 1)|0; $arrayidx152 = (($114) + ($sub151<<1)|0); $116 = HEAP16[$arrayidx152>>1]|0; $117 = $size$addr; $118 = $i; $arrayidx153 = (($117) + ($118<<1)|0); HEAP16[$arrayidx153>>1] = $116; $119 = $i; $inc155 = (($119) + 1)|0; $i = $inc155; } } } $retval = -4; $153 = $retval; STACKTOP = sp;return ($153|0); } else { $125 = $last_size; $cmp168 = ($125|0)>(1275); if (!($cmp168)) { $126 = $last_size; $conv172 = $126&65535; $127 = $size$addr; $128 = $count; $sub173 = (($128) - 1)|0; $arrayidx174 = (($127) + ($sub173<<1)|0); HEAP16[$arrayidx174>>1] = $conv172; break; } $retval = -4; $153 = $retval; STACKTOP = sp;return ($153|0); } } while(0); $129 = $payload_offset$addr; $tobool176 = ($129|0)!=(0|0); if ($tobool176) { $130 = $data$addr; $131 = $data0; $sub$ptr$lhs$cast = $130; $sub$ptr$rhs$cast = $131; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $132 = $payload_offset$addr; HEAP32[$132>>2] = $sub$ptr$sub; } $i = 0; while(1) { $133 = $i; $134 = $count; $cmp180 = ($133|0)<($134|0); if (!($cmp180)) { break; } $135 = $frames$addr; $tobool183 = ($135|0)!=(0|0); if ($tobool183) { $136 = $data$addr; $137 = $frames$addr; $138 = $i; $arrayidx185 = (($137) + ($138<<2)|0); HEAP32[$arrayidx185>>2] = $136; } $139 = $size$addr; $140 = $i; $arrayidx187 = (($139) + ($140<<1)|0); $141 = HEAP16[$arrayidx187>>1]|0; $conv188 = $141 << 16 >> 16; $142 = $data$addr; $add$ptr189 = (($142) + ($conv188)|0); $data$addr = $add$ptr189; $143 = $i; $inc191 = (($143) + 1)|0; $i = $inc191; } $144 = $packet_offset$addr; $tobool193 = ($144|0)!=(0|0); if ($tobool193) { $145 = $pad; $146 = $data$addr; $147 = $data0; $sub$ptr$lhs$cast195 = $146; $sub$ptr$rhs$cast196 = $147; $sub$ptr$sub197 = (($sub$ptr$lhs$cast195) - ($sub$ptr$rhs$cast196))|0; $add198 = (($145) + ($sub$ptr$sub197))|0; $148 = $packet_offset$addr; HEAP32[$148>>2] = $add198; } $149 = $out_toc$addr; $tobool200 = ($149|0)!=(0|0); if ($tobool200) { $150 = $toc; $151 = $out_toc$addr; HEAP8[$151>>0] = $150; } $152 = $count; $retval = $152; $153 = $retval; STACKTOP = sp;return ($153|0); } function _parse_size($data,$len,$size) { $data = $data|0; $len = $len|0; $size = $size|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $arrayidx11 = 0, $cmp = 0, $cmp1 = 0, $cmp7 = 0; var $conv = 0, $conv12 = 0, $conv14 = 0, $conv15 = 0, $conv5 = 0, $data$addr = 0, $len$addr = 0, $mul = 0, $retval = 0, $size$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $data$addr = $data; $len$addr = $len; $size$addr = $size; $0 = $len$addr; $cmp = ($0|0)<(1); if ($cmp) { $1 = $size$addr; HEAP16[$1>>1] = -1; $retval = -1; $14 = $retval; STACKTOP = sp;return ($14|0); } $2 = $data$addr; $3 = HEAP8[$2>>0]|0; $conv = $3&255; $cmp1 = ($conv|0)<(252); if ($cmp1) { $4 = $data$addr; $5 = HEAP8[$4>>0]|0; $conv5 = $5&255; $6 = $size$addr; HEAP16[$6>>1] = $conv5; $retval = 1; $14 = $retval; STACKTOP = sp;return ($14|0); } $7 = $len$addr; $cmp7 = ($7|0)<(2); if ($cmp7) { $8 = $size$addr; HEAP16[$8>>1] = -1; $retval = -1; $14 = $retval; STACKTOP = sp;return ($14|0); } else { $9 = $data$addr; $arrayidx11 = ((($9)) + 1|0); $10 = HEAP8[$arrayidx11>>0]|0; $conv12 = $10&255; $mul = $conv12<<2; $11 = $data$addr; $12 = HEAP8[$11>>0]|0; $conv14 = $12&255; $add = (($mul) + ($conv14))|0; $conv15 = $add&65535; $13 = $size$addr; HEAP16[$13>>1] = $conv15; $retval = 2; $14 = $retval; STACKTOP = sp;return ($14|0); } return (0)|0; } function _hysteresis_decision($val,$thresholds,$hysteresis,$N,$prev) { $val = +$val; $thresholds = $thresholds|0; $hysteresis = $hysteresis|0; $N = $N|0; $prev = $prev|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0.0, $13 = 0, $14 = 0, $15 = 0.0, $16 = 0, $17 = 0, $18 = 0, $19 = 0.0, $2 = 0.0, $20 = 0, $21 = 0, $22 = 0.0, $23 = 0, $24 = 0, $25 = 0.0, $26 = 0; var $27 = 0, $3 = 0, $4 = 0, $5 = 0.0, $6 = 0, $7 = 0, $8 = 0, $9 = 0.0, $N$addr = 0, $add = 0.0, $arrayidx = 0, $arrayidx10 = 0, $arrayidx12 = 0, $arrayidx3 = 0, $arrayidx4 = 0, $cmp = 0, $cmp1 = 0, $cmp14 = 0, $cmp2 = 0, $cmp5 = 0; var $cmp8 = 0, $hysteresis$addr = 0, $i = 0, $inc = 0, $prev$addr = 0, $sub = 0, $sub11 = 0, $sub13 = 0.0, $thresholds$addr = 0, $val$addr = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $val$addr = $val; $thresholds$addr = $thresholds; $hysteresis$addr = $hysteresis; $N$addr = $N; $prev$addr = $prev; $i = 0; while(1) { $0 = $i; $1 = $N$addr; $cmp = ($0|0)<($1|0); if (!($cmp)) { break; } $2 = $val$addr; $3 = $thresholds$addr; $4 = $i; $arrayidx = (($3) + ($4<<2)|0); $5 = +HEAPF32[$arrayidx>>2]; $cmp1 = $2 < $5; if ($cmp1) { break; } $6 = $i; $inc = (($6) + 1)|0; $i = $inc; } $7 = $i; $8 = $prev$addr; $cmp2 = ($7|0)>($8|0); if ($cmp2) { $9 = $val$addr; $10 = $thresholds$addr; $11 = $prev$addr; $arrayidx3 = (($10) + ($11<<2)|0); $12 = +HEAPF32[$arrayidx3>>2]; $13 = $hysteresis$addr; $14 = $prev$addr; $arrayidx4 = (($13) + ($14<<2)|0); $15 = +HEAPF32[$arrayidx4>>2]; $add = $12 + $15; $cmp5 = $9 < $add; if ($cmp5) { $16 = $prev$addr; $i = $16; } } $17 = $i; $18 = $prev$addr; $cmp8 = ($17|0)<($18|0); if (!($cmp8)) { $27 = $i; STACKTOP = sp;return ($27|0); } $19 = $val$addr; $20 = $thresholds$addr; $21 = $prev$addr; $sub = (($21) - 1)|0; $arrayidx10 = (($20) + ($sub<<2)|0); $22 = +HEAPF32[$arrayidx10>>2]; $23 = $hysteresis$addr; $24 = $prev$addr; $sub11 = (($24) - 1)|0; $arrayidx12 = (($23) + ($sub11<<2)|0); $25 = +HEAPF32[$arrayidx12>>2]; $sub13 = $22 - $25; $cmp14 = $19 > $sub13; if (!($cmp14)) { $27 = $i; STACKTOP = sp;return ($27|0); } $26 = $prev$addr; $i = $26; $27 = $i; STACKTOP = sp;return ($27|0); } function _celt_lcg_rand($seed) { $seed = $seed|0; var $0 = 0, $add = 0, $mul = 0, $seed$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $seed$addr = $seed; $0 = $seed$addr; $mul = Math_imul(1664525, $0)|0; $add = (($mul) + 1013904223)|0; STACKTOP = sp;return ($add|0); } function _bitexact_cos($x) { $x = $x|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $add = 0, $add10 = 0, $add14 = 0, $add16 = 0, $add20 = 0, $add22 = 0, $add25 = 0, $add8 = 0, $conv = 0, $conv1 = 0, $conv11 = 0, $conv12 = 0; var $conv17 = 0, $conv18 = 0, $conv2 = 0, $conv23 = 0, $conv24 = 0, $conv26 = 0, $conv3 = 0, $conv4 = 0, $conv5 = 0, $conv6 = 0, $mul = 0, $mul13 = 0, $mul19 = 0, $mul7 = 0, $shr = 0, $shr15 = 0, $shr21 = 0, $shr9 = 0, $sub = 0, $tmp = 0; var $x$addr = 0, $x2 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $x$addr = $x; $0 = $x$addr; $conv = $0 << 16 >> 16; $1 = $x$addr; $conv1 = $1 << 16 >> 16; $mul = Math_imul($conv, $conv1)|0; $add = (4096 + ($mul))|0; $shr = $add >> 13; $tmp = $shr; $2 = $tmp; $conv2 = $2&65535; $x2 = $conv2; $3 = $x2; $conv3 = $3 << 16 >> 16; $sub = (32767 - ($conv3))|0; $4 = $x2; $conv4 = $4 << 16 >> 16; $5 = $x2; $conv5 = $5 << 16 >> 16; $6 = $x2; $conv6 = $6 << 16 >> 16; $mul7 = Math_imul(-626, $conv6)|0; $add8 = (16384 + ($mul7))|0; $shr9 = $add8 >> 15; $add10 = (8277 + ($shr9))|0; $conv11 = $add10&65535; $conv12 = $conv11 << 16 >> 16; $mul13 = Math_imul($conv5, $conv12)|0; $add14 = (16384 + ($mul13))|0; $shr15 = $add14 >> 15; $add16 = (-7651 + ($shr15))|0; $conv17 = $add16&65535; $conv18 = $conv17 << 16 >> 16; $mul19 = Math_imul($conv4, $conv18)|0; $add20 = (16384 + ($mul19))|0; $shr21 = $add20 >> 15; $add22 = (($sub) + ($shr21))|0; $conv23 = $add22&65535; $x2 = $conv23; $7 = $x2; $conv24 = $7 << 16 >> 16; $add25 = (1 + ($conv24))|0; $conv26 = $add25&65535; STACKTOP = sp;return ($conv26|0); } function _bitexact_log2tan($isin,$icos) { $isin = $isin|0; $icos = $icos|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $add10 = 0, $add14 = 0, $add16 = 0, $add22 = 0, $add24 = 0; var $add28 = 0, $conv = 0, $conv11 = 0, $conv12 = 0, $conv17 = 0, $conv18 = 0, $conv19 = 0, $conv20 = 0, $conv25 = 0, $conv26 = 0, $conv6 = 0, $conv7 = 0, $conv8 = 0, $icos$addr = 0, $isin$addr = 0, $lc = 0, $ls = 0, $mul = 0, $mul13 = 0, $mul21 = 0; var $mul27 = 0, $mul9 = 0, $shl = 0, $shl4 = 0, $shr = 0, $shr15 = 0, $shr23 = 0, $shr29 = 0, $sub = 0, $sub1 = 0, $sub2 = 0, $sub3 = 0, $sub30 = 0, $sub5 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $isin$addr = $isin; $icos$addr = $icos; $0 = $icos$addr; $1 = (Math_clz32(($0|0))|0); $sub = (32 - ($1))|0; $lc = $sub; $2 = $isin$addr; $3 = (Math_clz32(($2|0))|0); $sub1 = (32 - ($3))|0; $ls = $sub1; $4 = $lc; $sub2 = (15 - ($4))|0; $5 = $icos$addr; $shl = $5 << $sub2; $icos$addr = $shl; $6 = $ls; $sub3 = (15 - ($6))|0; $7 = $isin$addr; $shl4 = $7 << $sub3; $isin$addr = $shl4; $8 = $ls; $9 = $lc; $sub5 = (($8) - ($9))|0; $mul = $sub5<<11; $10 = $isin$addr; $conv = $10&65535; $conv6 = $conv << 16 >> 16; $11 = $isin$addr; $conv7 = $11&65535; $conv8 = $conv7 << 16 >> 16; $mul9 = Math_imul($conv8, -2597)|0; $add = (16384 + ($mul9))|0; $shr = $add >> 15; $add10 = (($shr) + 7932)|0; $conv11 = $add10&65535; $conv12 = $conv11 << 16 >> 16; $mul13 = Math_imul($conv6, $conv12)|0; $add14 = (16384 + ($mul13))|0; $shr15 = $add14 >> 15; $add16 = (($mul) + ($shr15))|0; $12 = $icos$addr; $conv17 = $12&65535; $conv18 = $conv17 << 16 >> 16; $13 = $icos$addr; $conv19 = $13&65535; $conv20 = $conv19 << 16 >> 16; $mul21 = Math_imul($conv20, -2597)|0; $add22 = (16384 + ($mul21))|0; $shr23 = $add22 >> 15; $add24 = (($shr23) + 7932)|0; $conv25 = $add24&65535; $conv26 = $conv25 << 16 >> 16; $mul27 = Math_imul($conv18, $conv26)|0; $add28 = (16384 + ($mul27))|0; $shr29 = $add28 >> 15; $sub30 = (($add16) - ($shr29))|0; STACKTOP = sp;return ($sub30|0); } function _compute_band_energies($m,$X,$bandE,$end,$C,$LM,$arch) { $m = $m|0; $X = $X|0; $bandE = $bandE|0; $end = $end|0; $C = $C|0; $LM = $LM|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0.0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $C$addr = 0; var $LM$addr = 0, $N = 0, $X$addr = 0, $add = 0, $add11 = 0, $add17 = 0.0, $add22 = 0, $add9 = 0, $and = 0, $arch$addr = 0, $arrayidx = 0, $arrayidx10 = 0, $arrayidx12 = 0, $arrayidx14 = 0, $arrayidx2 = 0, $arrayidx23 = 0, $arrayidx4 = 0, $arrayidx6 = 0, $bandE$addr = 0, $c = 0; var $call = 0.0, $call19 = 0.0, $cmp = 0, $cmp25 = 0, $conv = 0, $conv13 = 0, $conv15 = 0, $conv18 = 0.0, $conv20 = 0.0, $conv7 = 0, $eBands = 0, $eBands1 = 0, $end$addr = 0, $i = 0, $inc = 0, $inc24 = 0, $m$addr = 0, $mul = 0, $mul21 = 0, $mul5 = 0; var $nbEBands = 0, $shl = 0, $shl16 = 0, $shl3 = 0, $shl8 = 0, $shortMdctSize = 0, $sub = 0, $sum = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $m$addr = $m; $X$addr = $X; $bandE$addr = $bandE; $end$addr = $end; $C$addr = $C; $LM$addr = $LM; $arch$addr = $arch; $0 = $m$addr; $eBands1 = ((($0)) + 32|0); $1 = HEAP32[$eBands1>>2]|0; $eBands = $1; $2 = $m$addr; $shortMdctSize = ((($2)) + 44|0); $3 = HEAP32[$shortMdctSize>>2]|0; $4 = $LM$addr; $shl = $3 << $4; $N = $shl; $c = 0; while(1) { $i = 0; while(1) { $5 = $i; $6 = $end$addr; $cmp = ($5|0)<($6|0); if (!($cmp)) { break; } $7 = $arch$addr; $and = $7 & 7; $arrayidx = (_CELT_INNER_PROD_IMPL + ($and<<2)|0); $8 = HEAP32[$arrayidx>>2]|0; $9 = $X$addr; $10 = $c; $11 = $N; $mul = Math_imul($10, $11)|0; $12 = $eBands; $13 = $i; $arrayidx2 = (($12) + ($13<<1)|0); $14 = HEAP16[$arrayidx2>>1]|0; $conv = $14 << 16 >> 16; $15 = $LM$addr; $shl3 = $conv << $15; $add = (($mul) + ($shl3))|0; $arrayidx4 = (($9) + ($add<<2)|0); $16 = $X$addr; $17 = $c; $18 = $N; $mul5 = Math_imul($17, $18)|0; $19 = $eBands; $20 = $i; $arrayidx6 = (($19) + ($20<<1)|0); $21 = HEAP16[$arrayidx6>>1]|0; $conv7 = $21 << 16 >> 16; $22 = $LM$addr; $shl8 = $conv7 << $22; $add9 = (($mul5) + ($shl8))|0; $arrayidx10 = (($16) + ($add9<<2)|0); $23 = $eBands; $24 = $i; $add11 = (($24) + 1)|0; $arrayidx12 = (($23) + ($add11<<1)|0); $25 = HEAP16[$arrayidx12>>1]|0; $conv13 = $25 << 16 >> 16; $26 = $eBands; $27 = $i; $arrayidx14 = (($26) + ($27<<1)|0); $28 = HEAP16[$arrayidx14>>1]|0; $conv15 = $28 << 16 >> 16; $sub = (($conv13) - ($conv15))|0; $29 = $LM$addr; $shl16 = $sub << $29; $call = (+FUNCTION_TABLE_diii[$8 & 0]($arrayidx4,$arrayidx10,$shl16)); $add17 = 1.0000000272452012E-27 + $call; $sum = $add17; $30 = $sum; $conv18 = $30; $call19 = (+Math_sqrt((+$conv18))); $conv20 = $call19; $31 = $bandE$addr; $32 = $i; $33 = $c; $34 = $m$addr; $nbEBands = ((($34)) + 8|0); $35 = HEAP32[$nbEBands>>2]|0; $mul21 = Math_imul($33, $35)|0; $add22 = (($32) + ($mul21))|0; $arrayidx23 = (($31) + ($add22<<2)|0); HEAPF32[$arrayidx23>>2] = $conv20; $36 = $i; $inc = (($36) + 1)|0; $i = $inc; } $37 = $c; $inc24 = (($37) + 1)|0; $c = $inc24; $38 = $C$addr; $cmp25 = ($inc24|0)<($38|0); if (!($cmp25)) { break; } } STACKTOP = sp;return; } function _normalise_bands($m,$freq,$X,$bandE,$end,$C,$M) { $m = $m|0; $freq = $freq|0; $X = $X|0; $bandE = $bandE|0; $end = $end|0; $C = $C|0; $M = $M|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0.0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0.0; var $27 = 0.0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $C$addr = 0, $M$addr = 0, $N = 0, $X$addr = 0; var $add = 0, $add15 = 0, $add19 = 0, $add3 = 0.0, $add7 = 0, $arrayidx = 0, $arrayidx16 = 0, $arrayidx20 = 0, $arrayidx4 = 0, $arrayidx8 = 0, $bandE$addr = 0, $c = 0, $cmp = 0, $cmp11 = 0, $cmp25 = 0, $conv = 0, $conv9 = 0, $div = 0.0, $eBands = 0, $eBands1 = 0; var $end$addr = 0, $freq$addr = 0, $g = 0.0, $i = 0, $inc = 0, $inc22 = 0, $inc24 = 0, $j = 0, $m$addr = 0, $mul = 0, $mul10 = 0, $mul14 = 0, $mul17 = 0.0, $mul18 = 0, $mul2 = 0, $mul5 = 0, $nbEBands = 0, $shortMdctSize = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $m$addr = $m; $freq$addr = $freq; $X$addr = $X; $bandE$addr = $bandE; $end$addr = $end; $C$addr = $C; $M$addr = $M; $0 = $m$addr; $eBands1 = ((($0)) + 32|0); $1 = HEAP32[$eBands1>>2]|0; $eBands = $1; $2 = $M$addr; $3 = $m$addr; $shortMdctSize = ((($3)) + 44|0); $4 = HEAP32[$shortMdctSize>>2]|0; $mul = Math_imul($2, $4)|0; $N = $mul; $c = 0; while(1) { $i = 0; while(1) { $5 = $i; $6 = $end$addr; $cmp = ($5|0)<($6|0); if (!($cmp)) { break; } $7 = $bandE$addr; $8 = $i; $9 = $c; $10 = $m$addr; $nbEBands = ((($10)) + 8|0); $11 = HEAP32[$nbEBands>>2]|0; $mul2 = Math_imul($9, $11)|0; $add = (($8) + ($mul2))|0; $arrayidx = (($7) + ($add<<2)|0); $12 = +HEAPF32[$arrayidx>>2]; $add3 = 1.0000000272452012E-27 + $12; $div = 1.0 / $add3; $g = $div; $13 = $M$addr; $14 = $eBands; $15 = $i; $arrayidx4 = (($14) + ($15<<1)|0); $16 = HEAP16[$arrayidx4>>1]|0; $conv = $16 << 16 >> 16; $mul5 = Math_imul($13, $conv)|0; $j = $mul5; while(1) { $17 = $j; $18 = $M$addr; $19 = $eBands; $20 = $i; $add7 = (($20) + 1)|0; $arrayidx8 = (($19) + ($add7<<1)|0); $21 = HEAP16[$arrayidx8>>1]|0; $conv9 = $21 << 16 >> 16; $mul10 = Math_imul($18, $conv9)|0; $cmp11 = ($17|0)<($mul10|0); if (!($cmp11)) { break; } $22 = $freq$addr; $23 = $j; $24 = $c; $25 = $N; $mul14 = Math_imul($24, $25)|0; $add15 = (($23) + ($mul14))|0; $arrayidx16 = (($22) + ($add15<<2)|0); $26 = +HEAPF32[$arrayidx16>>2]; $27 = $g; $mul17 = $26 * $27; $28 = $X$addr; $29 = $j; $30 = $c; $31 = $N; $mul18 = Math_imul($30, $31)|0; $add19 = (($29) + ($mul18))|0; $arrayidx20 = (($28) + ($add19<<2)|0); HEAPF32[$arrayidx20>>2] = $mul17; $32 = $j; $inc = (($32) + 1)|0; $j = $inc; } $33 = $i; $inc22 = (($33) + 1)|0; $i = $inc22; } $34 = $c; $inc24 = (($34) + 1)|0; $c = $inc24; $35 = $C$addr; $cmp25 = ($inc24|0)<($35|0); if (!($cmp25)) { break; } } STACKTOP = sp;return; } function _denormalise_bands($m,$X,$freq,$bandLogE,$start,$end,$M,$downsample,$silence) { $m = $m|0; $X = $X|0; $freq = $freq|0; $bandLogE = $bandLogE|0; $start = $start|0; $end = $end|0; $M = $M|0; $downsample = $downsample|0; $silence = $silence|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0.0, $44 = 0; var $45 = 0.0, $46 = 0.0, $47 = 0.0, $48 = 0, $49 = 0.0, $5 = 0, $50 = 0.0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $M$addr = 0; var $N = 0, $X$addr = 0, $add = 0, $add$ptr = 0, $add29 = 0.0, $arrayidx = 0, $arrayidx12 = 0, $arrayidx21 = 0, $arrayidx24 = 0, $arrayidx27 = 0, $arrayidx28 = 0, $arrayidx48 = 0, $arrayidx9 = 0, $bandLogE$addr = 0, $band_end = 0, $bound = 0, $call = 0.0, $cmp = 0, $cmp15 = 0, $cmp18 = 0; var $cmp30 = 0, $cmp4 = 0, $cmp43 = 0, $cond = 0, $cond35 = 0.0, $conv = 0, $conv10 = 0, $conv13 = 0, $conv22 = 0, $conv25 = 0, $conv36 = 0.0, $conv38 = 0.0, $div = 0, $div6 = 0, $downsample$addr = 0, $eBands = 0, $eBands1 = 0, $end$addr = 0, $f = 0, $freq$addr = 0; var $g = 0.0, $i = 0, $inc = 0, $inc42 = 0, $inc46 = 0, $incdec$ptr = 0, $incdec$ptr39 = 0, $incdec$ptr41 = 0, $j = 0, $lg = 0.0, $m$addr = 0, $mul = 0, $mul11 = 0, $mul14 = 0, $mul2 = 0, $mul23 = 0, $mul26 = 0, $mul37 = 0.0, $mul40 = 0.0, $mul49 = 0; var $shortMdctSize = 0, $silence$addr = 0, $start$addr = 0, $sub = 0, $tobool = 0, $x = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(80|0); $m$addr = $m; $X$addr = $X; $freq$addr = $freq; $bandLogE$addr = $bandLogE; $start$addr = $start; $end$addr = $end; $M$addr = $M; $downsample$addr = $downsample; $silence$addr = $silence; $0 = $m$addr; $eBands1 = ((($0)) + 32|0); $1 = HEAP32[$eBands1>>2]|0; $eBands = $1; $2 = $M$addr; $3 = $m$addr; $shortMdctSize = ((($3)) + 44|0); $4 = HEAP32[$shortMdctSize>>2]|0; $mul = Math_imul($2, $4)|0; $N = $mul; $5 = $M$addr; $6 = $eBands; $7 = $end$addr; $arrayidx = (($6) + ($7<<1)|0); $8 = HEAP16[$arrayidx>>1]|0; $conv = $8 << 16 >> 16; $mul2 = Math_imul($5, $conv)|0; $bound = $mul2; $9 = $downsample$addr; $cmp = ($9|0)!=(1); if ($cmp) { $10 = $bound; $11 = $N; $12 = $downsample$addr; $div = (($11|0) / ($12|0))&-1; $cmp4 = ($10|0)<($div|0); if ($cmp4) { $13 = $bound; $cond = $13; } else { $14 = $N; $15 = $downsample$addr; $div6 = (($14|0) / ($15|0))&-1; $cond = $div6; } $bound = $cond; } $16 = $silence$addr; $tobool = ($16|0)!=(0); if ($tobool) { $bound = 0; $end$addr = 0; $start$addr = 0; } $17 = $freq$addr; $f = $17; $18 = $X$addr; $19 = $M$addr; $20 = $eBands; $21 = $start$addr; $arrayidx9 = (($20) + ($21<<1)|0); $22 = HEAP16[$arrayidx9>>1]|0; $conv10 = $22 << 16 >> 16; $mul11 = Math_imul($19, $conv10)|0; $add$ptr = (($18) + ($mul11<<2)|0); $x = $add$ptr; $i = 0; while(1) { $23 = $i; $24 = $M$addr; $25 = $eBands; $26 = $start$addr; $arrayidx12 = (($25) + ($26<<1)|0); $27 = HEAP16[$arrayidx12>>1]|0; $conv13 = $27 << 16 >> 16; $mul14 = Math_imul($24, $conv13)|0; $cmp15 = ($23|0)<($mul14|0); if (!($cmp15)) { break; } $28 = $f; $incdec$ptr = ((($28)) + 4|0); $f = $incdec$ptr; HEAPF32[$28>>2] = 0.0; $29 = $i; $inc = (($29) + 1)|0; $i = $inc; } $30 = $start$addr; $i = $30; while(1) { $31 = $i; $32 = $end$addr; $cmp18 = ($31|0)<($32|0); if (!($cmp18)) { break; } $33 = $M$addr; $34 = $eBands; $35 = $i; $arrayidx21 = (($34) + ($35<<1)|0); $36 = HEAP16[$arrayidx21>>1]|0; $conv22 = $36 << 16 >> 16; $mul23 = Math_imul($33, $conv22)|0; $j = $mul23; $37 = $M$addr; $38 = $eBands; $39 = $i; $add = (($39) + 1)|0; $arrayidx24 = (($38) + ($add<<1)|0); $40 = HEAP16[$arrayidx24>>1]|0; $conv25 = $40 << 16 >> 16; $mul26 = Math_imul($37, $conv25)|0; $band_end = $mul26; $41 = $bandLogE$addr; $42 = $i; $arrayidx27 = (($41) + ($42<<2)|0); $43 = +HEAPF32[$arrayidx27>>2]; $44 = $i; $arrayidx28 = (14980 + ($44<<2)|0); $45 = +HEAPF32[$arrayidx28>>2]; $add29 = $43 + $45; $lg = $add29; $46 = $lg; $cmp30 = 32.0 < $46; $47 = $lg; $cond35 = $cmp30 ? 32.0 : $47; $conv36 = $cond35; $mul37 = 0.69314718055994529 * $conv36; $call = (+Math_exp((+$mul37))); $conv38 = $call; $g = $conv38; while(1) { $48 = $x; $incdec$ptr39 = ((($48)) + 4|0); $x = $incdec$ptr39; $49 = +HEAPF32[$48>>2]; $50 = $g; $mul40 = $49 * $50; $51 = $f; $incdec$ptr41 = ((($51)) + 4|0); $f = $incdec$ptr41; HEAPF32[$51>>2] = $mul40; $52 = $j; $inc42 = (($52) + 1)|0; $j = $inc42; $53 = $band_end; $cmp43 = ($inc42|0)<($53|0); if (!($cmp43)) { break; } } $54 = $i; $inc46 = (($54) + 1)|0; $i = $inc46; } $55 = $freq$addr; $56 = $bound; $arrayidx48 = (($55) + ($56<<2)|0); $57 = $N; $58 = $bound; $sub = (($57) - ($58))|0; $mul49 = $sub<<2; _memset(($arrayidx48|0),0,($mul49|0))|0; STACKTOP = sp;return; } function _anti_collapse($m,$X_,$collapse_masks,$LM,$C,$size,$start,$end,$logE,$prev1logE,$prev2logE,$pulses,$seed,$arch) { $m = $m|0; $X_ = $X_|0; $collapse_masks = $collapse_masks|0; $LM = $LM|0; $C = $C|0; $size = $size|0; $start = $start|0; $end = $end|0; $logE = $logE|0; $prev1logE = $prev1logE|0; $prev2logE = $prev2logE|0; $pulses = $pulses|0; $seed = $seed|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0.0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0; var $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0.0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0.0, $38 = 0, $39 = 0.0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0.0, $45 = 0.0; var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0.0, $51 = 0.0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0.0, $57 = 0.0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0.0, $63 = 0; var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0.0, $69 = 0.0, $7 = 0, $70 = 0.0, $71 = 0.0, $72 = 0.0, $73 = 0.0, $74 = 0.0, $75 = 0.0, $76 = 0, $77 = 0.0, $78 = 0.0, $79 = 0.0, $8 = 0, $80 = 0.0, $81 = 0.0; var $82 = 0.0, $83 = 0.0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $C$addr = 0; var $Ediff = 0.0, $LM$addr = 0, $N0 = 0, $X = 0, $X_$addr = 0, $add = 0, $add$ptr = 0, $add$ptr92 = 0, $add117 = 0, $add24 = 0, $add28 = 0, $add33 = 0, $add38 = 0, $add41 = 0, $add48 = 0, $add5 = 0, $add54 = 0, $add7 = 0, $add99 = 0, $and = 0; var $and109 = 0, $arch$addr = 0, $arrayidx = 0, $arrayidx100 = 0, $arrayidx11 = 0, $arrayidx118 = 0, $arrayidx2 = 0, $arrayidx25 = 0, $arrayidx29 = 0, $arrayidx34 = 0, $arrayidx39 = 0, $arrayidx4 = 0, $arrayidx42 = 0, $arrayidx49 = 0, $arrayidx55 = 0, $arrayidx8 = 0, $arrayidx89 = 0, $c = 0, $call = 0, $call108 = 0; var $call17 = 0.0, $call21 = 0.0, $call72 = 0.0, $cmp = 0, $cmp105 = 0, $cmp128 = 0, $cmp30 = 0, $cmp35 = 0, $cmp43 = 0, $cmp56 = 0, $cmp63 = 0, $cmp75 = 0, $cmp80 = 0, $cmp95 = 0, $collapse_masks$addr = 0, $cond = 0.0, $cond115 = 0.0, $cond51 = 0.0, $cond61 = 0.0, $cond68 = 0.0; var $cond85 = 0.0, $conv = 0, $conv101 = 0, $conv12 = 0, $conv14 = 0.0, $conv15 = 0.0, $conv18 = 0.0, $conv20 = 0.0, $conv22 = 0.0, $conv3 = 0, $conv70 = 0.0, $conv73 = 0.0, $conv9 = 0, $conv90 = 0, $depth = 0, $div = 0.0, $eBands = 0, $eBands1 = 0, $eBands10 = 0, $eBands6 = 0; var $eBands88 = 0, $end$addr = 0, $i = 0, $inc = 0, $inc121 = 0, $inc127 = 0, $inc131 = 0, $j = 0, $k = 0, $logE$addr = 0, $m$addr = 0, $mul = 0.0, $mul16 = 0.0, $mul19 = 0.0, $mul23 = 0, $mul27 = 0, $mul53 = 0, $mul71 = 0.0, $mul74 = 0.0, $mul78 = 0.0; var $mul86 = 0.0, $mul87 = 0, $mul98 = 0, $nbEBands = 0, $nbEBands26 = 0, $nbEBands32 = 0, $nbEBands37 = 0, $nbEBands40 = 0, $nbEBands47 = 0, $nbEBands52 = 0, $prev1 = 0.0, $prev1logE$addr = 0, $prev2 = 0.0, $prev2logE$addr = 0, $pulses$addr = 0, $r = 0.0, $renormalize = 0, $seed$addr = 0, $shl = 0, $shl102 = 0; var $shl116 = 0, $shl125 = 0, $shl91 = 0, $shl94 = 0, $shr = 0, $size$addr = 0, $sqrt_1 = 0.0, $start$addr = 0, $sub = 0, $sub113 = 0.0, $sub13 = 0, $sub62 = 0.0, $sub69 = 0.0, $thresh = 0.0, $tobool = 0, $tobool110 = 0, $tobool123 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 112|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(112|0); $m$addr = $m; $X_$addr = $X_; $collapse_masks$addr = $collapse_masks; $LM$addr = $LM; $C$addr = $C; $size$addr = $size; $start$addr = $start; $end$addr = $end; $logE$addr = $logE; $prev1logE$addr = $prev1logE; $prev2logE$addr = $prev2logE; $pulses$addr = $pulses; $seed$addr = $seed; $arch$addr = $arch; $0 = $start$addr; $i = $0; while(1) { $1 = $i; $2 = $end$addr; $cmp = ($1|0)<($2|0); if (!($cmp)) { break; } $3 = $m$addr; $eBands = ((($3)) + 32|0); $4 = HEAP32[$eBands>>2]|0; $5 = $i; $add = (($5) + 1)|0; $arrayidx = (($4) + ($add<<1)|0); $6 = HEAP16[$arrayidx>>1]|0; $conv = $6 << 16 >> 16; $7 = $m$addr; $eBands1 = ((($7)) + 32|0); $8 = HEAP32[$eBands1>>2]|0; $9 = $i; $arrayidx2 = (($8) + ($9<<1)|0); $10 = HEAP16[$arrayidx2>>1]|0; $conv3 = $10 << 16 >> 16; $sub = (($conv) - ($conv3))|0; $N0 = $sub; $11 = $pulses$addr; $12 = $i; $arrayidx4 = (($11) + ($12<<2)|0); $13 = HEAP32[$arrayidx4>>2]|0; $add5 = (1 + ($13))|0; $14 = $m$addr; $eBands6 = ((($14)) + 32|0); $15 = HEAP32[$eBands6>>2]|0; $16 = $i; $add7 = (($16) + 1)|0; $arrayidx8 = (($15) + ($add7<<1)|0); $17 = HEAP16[$arrayidx8>>1]|0; $conv9 = $17 << 16 >> 16; $18 = $m$addr; $eBands10 = ((($18)) + 32|0); $19 = HEAP32[$eBands10>>2]|0; $20 = $i; $arrayidx11 = (($19) + ($20<<1)|0); $21 = HEAP16[$arrayidx11>>1]|0; $conv12 = $21 << 16 >> 16; $sub13 = (($conv9) - ($conv12))|0; $call = (_celt_udiv_365($add5,$sub13)|0); $22 = $LM$addr; $shr = $call >>> $22; $depth = $shr; $23 = $depth; $conv14 = (+($23|0)); $mul = -0.125 * $conv14; $conv15 = $mul; $mul16 = 0.69314718055994529 * $conv15; $call17 = (+Math_exp((+$mul16))); $conv18 = $call17; $mul19 = 0.5 * $conv18; $thresh = $mul19; $24 = $N0; $25 = $LM$addr; $shl = $24 << $25; $conv20 = (+($shl|0)); $call21 = (+Math_sqrt((+$conv20))); $conv22 = $call21; $div = 1.0 / $conv22; $sqrt_1 = $div; $c = 0; while(1) { $renormalize = 0; $26 = $prev1logE$addr; $27 = $c; $28 = $m$addr; $nbEBands = ((($28)) + 8|0); $29 = HEAP32[$nbEBands>>2]|0; $mul23 = Math_imul($27, $29)|0; $30 = $i; $add24 = (($mul23) + ($30))|0; $arrayidx25 = (($26) + ($add24<<2)|0); $31 = +HEAPF32[$arrayidx25>>2]; $prev1 = $31; $32 = $prev2logE$addr; $33 = $c; $34 = $m$addr; $nbEBands26 = ((($34)) + 8|0); $35 = HEAP32[$nbEBands26>>2]|0; $mul27 = Math_imul($33, $35)|0; $36 = $i; $add28 = (($mul27) + ($36))|0; $arrayidx29 = (($32) + ($add28<<2)|0); $37 = +HEAPF32[$arrayidx29>>2]; $prev2 = $37; $38 = $C$addr; $cmp30 = ($38|0)==(1); if ($cmp30) { $39 = $prev1; $40 = $prev1logE$addr; $41 = $m$addr; $nbEBands32 = ((($41)) + 8|0); $42 = HEAP32[$nbEBands32>>2]|0; $43 = $i; $add33 = (($42) + ($43))|0; $arrayidx34 = (($40) + ($add33<<2)|0); $44 = +HEAPF32[$arrayidx34>>2]; $cmp35 = $39 > $44; if ($cmp35) { $45 = $prev1; $cond = $45; } else { $46 = $prev1logE$addr; $47 = $m$addr; $nbEBands37 = ((($47)) + 8|0); $48 = HEAP32[$nbEBands37>>2]|0; $49 = $i; $add38 = (($48) + ($49))|0; $arrayidx39 = (($46) + ($add38<<2)|0); $50 = +HEAPF32[$arrayidx39>>2]; $cond = $50; } $prev1 = $cond; $51 = $prev2; $52 = $prev2logE$addr; $53 = $m$addr; $nbEBands40 = ((($53)) + 8|0); $54 = HEAP32[$nbEBands40>>2]|0; $55 = $i; $add41 = (($54) + ($55))|0; $arrayidx42 = (($52) + ($add41<<2)|0); $56 = +HEAPF32[$arrayidx42>>2]; $cmp43 = $51 > $56; if ($cmp43) { $57 = $prev2; $cond51 = $57; } else { $58 = $prev2logE$addr; $59 = $m$addr; $nbEBands47 = ((($59)) + 8|0); $60 = HEAP32[$nbEBands47>>2]|0; $61 = $i; $add48 = (($60) + ($61))|0; $arrayidx49 = (($58) + ($add48<<2)|0); $62 = +HEAPF32[$arrayidx49>>2]; $cond51 = $62; } $prev2 = $cond51; } $63 = $logE$addr; $64 = $c; $65 = $m$addr; $nbEBands52 = ((($65)) + 8|0); $66 = HEAP32[$nbEBands52>>2]|0; $mul53 = Math_imul($64, $66)|0; $67 = $i; $add54 = (($mul53) + ($67))|0; $arrayidx55 = (($63) + ($add54<<2)|0); $68 = +HEAPF32[$arrayidx55>>2]; $69 = $prev1; $70 = $prev2; $cmp56 = $69 < $70; $71 = $prev1; $72 = $prev2; $cond61 = $cmp56 ? $71 : $72; $sub62 = $68 - $cond61; $Ediff = $sub62; $73 = $Ediff; $cmp63 = 0.0 > $73; $74 = $Ediff; $cond68 = $cmp63 ? 0.0 : $74; $Ediff = $cond68; $75 = $Ediff; $sub69 = - $75; $conv70 = $sub69; $mul71 = 0.69314718055994529 * $conv70; $call72 = (+Math_exp((+$mul71))); $conv73 = $call72; $mul74 = 2.0 * $conv73; $r = $mul74; $76 = $LM$addr; $cmp75 = ($76|0)==(3); if ($cmp75) { $77 = $r; $mul78 = $77 * 1.4142135381698608; $r = $mul78; } $78 = $thresh; $79 = $r; $cmp80 = $78 < $79; $80 = $thresh; $81 = $r; $cond85 = $cmp80 ? $80 : $81; $r = $cond85; $82 = $r; $83 = $sqrt_1; $mul86 = $82 * $83; $r = $mul86; $84 = $X_$addr; $85 = $c; $86 = $size$addr; $mul87 = Math_imul($85, $86)|0; $add$ptr = (($84) + ($mul87<<2)|0); $87 = $m$addr; $eBands88 = ((($87)) + 32|0); $88 = HEAP32[$eBands88>>2]|0; $89 = $i; $arrayidx89 = (($88) + ($89<<1)|0); $90 = HEAP16[$arrayidx89>>1]|0; $conv90 = $90 << 16 >> 16; $91 = $LM$addr; $shl91 = $conv90 << $91; $add$ptr92 = (($add$ptr) + ($shl91<<2)|0); $X = $add$ptr92; $k = 0; while(1) { $92 = $k; $93 = $LM$addr; $shl94 = 1 << $93; $cmp95 = ($92|0)<($shl94|0); if (!($cmp95)) { break; } $94 = $collapse_masks$addr; $95 = $i; $96 = $C$addr; $mul98 = Math_imul($95, $96)|0; $97 = $c; $add99 = (($mul98) + ($97))|0; $arrayidx100 = (($94) + ($add99)|0); $98 = HEAP8[$arrayidx100>>0]|0; $conv101 = $98&255; $99 = $k; $shl102 = 1 << $99; $and = $conv101 & $shl102; $tobool = ($and|0)!=(0); if (!($tobool)) { $j = 0; while(1) { $100 = $j; $101 = $N0; $cmp105 = ($100|0)<($101|0); if (!($cmp105)) { break; } $102 = $seed$addr; $call108 = (_celt_lcg_rand($102)|0); $seed$addr = $call108; $103 = $seed$addr; $and109 = $103 & 32768; $tobool110 = ($and109|0)!=(0); $104 = $r; $sub113 = - $104; $cond115 = $tobool110 ? $104 : $sub113; $105 = $X; $106 = $j; $107 = $LM$addr; $shl116 = $106 << $107; $108 = $k; $add117 = (($shl116) + ($108))|0; $arrayidx118 = (($105) + ($add117<<2)|0); HEAPF32[$arrayidx118>>2] = $cond115; $109 = $j; $inc = (($109) + 1)|0; $j = $inc; } $renormalize = 1; } $110 = $k; $inc121 = (($110) + 1)|0; $k = $inc121; } $111 = $renormalize; $tobool123 = ($111|0)!=(0); if ($tobool123) { $112 = $X; $113 = $N0; $114 = $LM$addr; $shl125 = $113 << $114; $115 = $arch$addr; _renormalise_vector($112,$shl125,1.0,$115); } $116 = $c; $inc127 = (($116) + 1)|0; $c = $inc127; $117 = $C$addr; $cmp128 = ($inc127|0)<($117|0); if (!($cmp128)) { break; } } $118 = $i; $inc131 = (($118) + 1)|0; $i = $inc131; } STACKTOP = sp;return; } function _celt_udiv_365($n,$d) { $n = $n|0; $d = $d|0; var $0 = 0, $1 = 0, $d$addr = 0, $div = 0, $n$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $n$addr = $n; $d$addr = $d; $0 = $n$addr; $1 = $d$addr; $div = (($0>>>0) / ($1>>>0))&-1; STACKTOP = sp;return ($div|0); } function _spreading_decision($m,$X,$average,$last_decision,$hf_average,$tapset_decision,$update_hf,$end,$C,$M,$spread_weight) { $m = $m|0; $X = $X|0; $average = $average|0; $last_decision = $last_decision|0; $hf_average = $hf_average|0; $tapset_decision = $tapset_decision|0; $update_hf = $update_hf|0; $end = $end|0; $C = $C|0; $M = $M|0; $spread_weight = $spread_weight|0; var $$sink = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0; var $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0.0, $34 = 0, $35 = 0, $36 = 0.0, $37 = 0; var $38 = 0.0, $39 = 0, $4 = 0, $40 = 0.0, $41 = 0, $42 = 0.0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0; var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0; var $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0; var $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $C$addr = 0, $M$addr = 0, $N = 0, $N0 = 0, $X$addr = 0, $add = 0, $add$ptr = 0, $add$ptr13 = 0, $add118 = 0, $add123 = 0, $add124 = 0, $add125 = 0; var $add57 = 0, $add59 = 0, $add69 = 0, $add74 = 0, $add77 = 0, $add79 = 0, $add91 = 0, $add95 = 0, $add99 = 0, $arrayidx = 0, $arrayidx14 = 0, $arrayidx16 = 0, $arrayidx2 = 0, $arrayidx28 = 0, $arrayidx29 = 0, $arrayidx41 = 0, $arrayidx47 = 0, $arrayidx55 = 0, $arrayidx61 = 0, $arrayidx65 = 0; var $arrayidx75 = 0, $arrayidx78 = 0, $arrayidx9 = 0, $average$addr = 0, $c = 0, $call = 0, $call117 = 0, $call93 = 0, $cmp = 0, $cmp100 = 0, $cmp106 = 0, $cmp110 = 0, $cmp127 = 0, $cmp131 = 0, $cmp135 = 0, $cmp20 = 0, $cmp25 = 0, $cmp33 = 0, $cmp38 = 0, $cmp44 = 0; var $cmp52 = 0, $cmp63 = 0, $cmp67 = 0, $cmp7 = 0, $cmp72 = 0, $cmp84 = 0, $cmp96 = 0, $conv = 0, $conv10 = 0, $conv15 = 0, $conv17 = 0, $conv3 = 0, $conv31 = 0.0, $conv64 = 0, $conv68 = 0, $conv73 = 0, $decision = 0, $eBands = 0, $eBands1 = 0, $end$addr = 0; var $hf_average$addr = 0, $hf_sum = 0, $i = 0, $inc = 0, $inc42 = 0, $inc48 = 0, $inc50 = 0, $inc81 = 0, $inc83 = 0, $j = 0, $last_decision$addr = 0, $m$addr = 0, $mul = 0, $mul11 = 0, $mul12 = 0, $mul120 = 0, $mul19 = 0, $mul30 = 0.0, $mul32 = 0.0, $mul5 = 0; var $mul58 = 0, $mul62 = 0, $mul66 = 0, $mul71 = 0, $mul76 = 0, $mul92 = 0, $nbBands = 0, $nbEBands = 0, $nbEBands89 = 0, $retval = 0, $shl = 0, $shl122 = 0, $shortMdctSize = 0, $shr = 0, $shr119 = 0, $shr126 = 0, $spread_weight$addr = 0, $sub = 0, $sub103 = 0, $sub121 = 0; var $sub18 = 0, $sub4 = 0, $sub51 = 0, $sub90 = 0, $sum = 0, $tapset_decision$addr = 0, $tcount = 0, $tmp = 0, $tobool = 0, $tobool87 = 0, $update_hf$addr = 0, $x = 0, $x2N = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 112|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(112|0); $tcount = sp + 8|0; $m$addr = $m; $X$addr = $X; $average$addr = $average; $last_decision$addr = $last_decision; $hf_average$addr = $hf_average; $tapset_decision$addr = $tapset_decision; $update_hf$addr = $update_hf; $end$addr = $end; $C$addr = $C; $M$addr = $M; $spread_weight$addr = $spread_weight; $sum = 0; $nbBands = 0; $0 = $m$addr; $eBands1 = ((($0)) + 32|0); $1 = HEAP32[$eBands1>>2]|0; $eBands = $1; $hf_sum = 0; $2 = $M$addr; $3 = $m$addr; $shortMdctSize = ((($3)) + 44|0); $4 = HEAP32[$shortMdctSize>>2]|0; $mul = Math_imul($2, $4)|0; $N0 = $mul; $5 = $M$addr; $6 = $eBands; $7 = $end$addr; $arrayidx = (($6) + ($7<<1)|0); $8 = HEAP16[$arrayidx>>1]|0; $conv = $8 << 16 >> 16; $9 = $eBands; $10 = $end$addr; $sub = (($10) - 1)|0; $arrayidx2 = (($9) + ($sub<<1)|0); $11 = HEAP16[$arrayidx2>>1]|0; $conv3 = $11 << 16 >> 16; $sub4 = (($conv) - ($conv3))|0; $mul5 = Math_imul($5, $sub4)|0; $cmp = ($mul5|0)<=(8); if ($cmp) { $retval = 0; $106 = $retval; STACKTOP = sp;return ($106|0); } $c = 0; while(1) { $i = 0; while(1) { $12 = $i; $13 = $end$addr; $cmp7 = ($12|0)<($13|0); if (!($cmp7)) { break; } $tmp = 0; ;HEAP32[$tcount>>2]=0|0;HEAP32[$tcount+4>>2]=0|0;HEAP32[$tcount+8>>2]=0|0; $14 = $X$addr; $15 = $M$addr; $16 = $eBands; $17 = $i; $arrayidx9 = (($16) + ($17<<1)|0); $18 = HEAP16[$arrayidx9>>1]|0; $conv10 = $18 << 16 >> 16; $mul11 = Math_imul($15, $conv10)|0; $add$ptr = (($14) + ($mul11<<2)|0); $19 = $c; $20 = $N0; $mul12 = Math_imul($19, $20)|0; $add$ptr13 = (($add$ptr) + ($mul12<<2)|0); $x = $add$ptr13; $21 = $M$addr; $22 = $eBands; $23 = $i; $add = (($23) + 1)|0; $arrayidx14 = (($22) + ($add<<1)|0); $24 = HEAP16[$arrayidx14>>1]|0; $conv15 = $24 << 16 >> 16; $25 = $eBands; $26 = $i; $arrayidx16 = (($25) + ($26<<1)|0); $27 = HEAP16[$arrayidx16>>1]|0; $conv17 = $27 << 16 >> 16; $sub18 = (($conv15) - ($conv17))|0; $mul19 = Math_imul($21, $sub18)|0; $N = $mul19; $28 = $N; $cmp20 = ($28|0)<=(8); if (!($cmp20)) { $j = 0; while(1) { $29 = $j; $30 = $N; $cmp25 = ($29|0)<($30|0); if (!($cmp25)) { break; } $31 = $x; $32 = $j; $arrayidx28 = (($31) + ($32<<2)|0); $33 = +HEAPF32[$arrayidx28>>2]; $34 = $x; $35 = $j; $arrayidx29 = (($34) + ($35<<2)|0); $36 = +HEAPF32[$arrayidx29>>2]; $mul30 = $33 * $36; $37 = $N; $conv31 = (+($37|0)); $mul32 = $mul30 * $conv31; $x2N = $mul32; $38 = $x2N; $cmp33 = $38 < 0.25; if ($cmp33) { $39 = HEAP32[$tcount>>2]|0; $inc = (($39) + 1)|0; HEAP32[$tcount>>2] = $inc; } $40 = $x2N; $cmp38 = $40 < 0.0625; if ($cmp38) { $arrayidx41 = ((($tcount)) + 4|0); $41 = HEAP32[$arrayidx41>>2]|0; $inc42 = (($41) + 1)|0; HEAP32[$arrayidx41>>2] = $inc42; } $42 = $x2N; $cmp44 = $42 < 0.015625; if ($cmp44) { $arrayidx47 = ((($tcount)) + 8|0); $43 = HEAP32[$arrayidx47>>2]|0; $inc48 = (($43) + 1)|0; HEAP32[$arrayidx47>>2] = $inc48; } $44 = $j; $inc50 = (($44) + 1)|0; $j = $inc50; } $45 = $i; $46 = $m$addr; $nbEBands = ((($46)) + 8|0); $47 = HEAP32[$nbEBands>>2]|0; $sub51 = (($47) - 4)|0; $cmp52 = ($45|0)>($sub51|0); if ($cmp52) { $arrayidx55 = ((($tcount)) + 4|0); $48 = HEAP32[$arrayidx55>>2]|0; $49 = HEAP32[$tcount>>2]|0; $add57 = (($48) + ($49))|0; $mul58 = $add57<<5; $50 = $N; $call = (_celt_udiv_365($mul58,$50)|0); $51 = $hf_sum; $add59 = (($51) + ($call))|0; $hf_sum = $add59; } $arrayidx61 = ((($tcount)) + 8|0); $52 = HEAP32[$arrayidx61>>2]|0; $mul62 = $52<<1; $53 = $N; $cmp63 = ($mul62|0)>=($53|0); $conv64 = $cmp63&1; $arrayidx65 = ((($tcount)) + 4|0); $54 = HEAP32[$arrayidx65>>2]|0; $mul66 = $54<<1; $55 = $N; $cmp67 = ($mul66|0)>=($55|0); $conv68 = $cmp67&1; $add69 = (($conv64) + ($conv68))|0; $56 = HEAP32[$tcount>>2]|0; $mul71 = $56<<1; $57 = $N; $cmp72 = ($mul71|0)>=($57|0); $conv73 = $cmp72&1; $add74 = (($add69) + ($conv73))|0; $tmp = $add74; $58 = $tmp; $59 = $spread_weight$addr; $60 = $i; $arrayidx75 = (($59) + ($60<<2)|0); $61 = HEAP32[$arrayidx75>>2]|0; $mul76 = Math_imul($58, $61)|0; $62 = $sum; $add77 = (($62) + ($mul76))|0; $sum = $add77; $63 = $spread_weight$addr; $64 = $i; $arrayidx78 = (($63) + ($64<<2)|0); $65 = HEAP32[$arrayidx78>>2]|0; $66 = $nbBands; $add79 = (($66) + ($65))|0; $nbBands = $add79; } $67 = $i; $inc81 = (($67) + 1)|0; $i = $inc81; } $68 = $c; $inc83 = (($68) + 1)|0; $c = $inc83; $69 = $C$addr; $cmp84 = ($inc83|0)<($69|0); if (!($cmp84)) { break; } } $70 = $update_hf$addr; $tobool = ($70|0)!=(0); do { if ($tobool) { $71 = $hf_sum; $tobool87 = ($71|0)!=(0); if ($tobool87) { $72 = $hf_sum; $73 = $C$addr; $74 = $m$addr; $nbEBands89 = ((($74)) + 8|0); $75 = HEAP32[$nbEBands89>>2]|0; $sub90 = (4 - ($75))|0; $76 = $end$addr; $add91 = (($sub90) + ($76))|0; $mul92 = Math_imul($73, $add91)|0; $call93 = (_celt_udiv_365($72,$mul92)|0); $hf_sum = $call93; } $77 = $hf_average$addr; $78 = HEAP32[$77>>2]|0; $79 = $hf_sum; $add95 = (($78) + ($79))|0; $shr = $add95 >> 1; $80 = $hf_average$addr; HEAP32[$80>>2] = $shr; $81 = $hf_average$addr; $82 = HEAP32[$81>>2]|0; $hf_sum = $82; $83 = $tapset_decision$addr; $84 = HEAP32[$83>>2]|0; $cmp96 = ($84|0)==(2); if ($cmp96) { $85 = $hf_sum; $add99 = (($85) + 4)|0; $hf_sum = $add99; } else { $86 = $tapset_decision$addr; $87 = HEAP32[$86>>2]|0; $cmp100 = ($87|0)==(0); if ($cmp100) { $88 = $hf_sum; $sub103 = (($88) - 4)|0; $hf_sum = $sub103; } } $89 = $hf_sum; $cmp106 = ($89|0)>(22); if ($cmp106) { $90 = $tapset_decision$addr; HEAP32[$90>>2] = 2; break; } else { $91 = $hf_sum; $cmp110 = ($91|0)>(18); $92 = $tapset_decision$addr; $$sink = $cmp110 ? 1 : 0; HEAP32[$92>>2] = $$sink; break; } } } while(0); $93 = $sum; $shl = $93 << 8; $94 = $nbBands; $call117 = (_celt_udiv_365($shl,$94)|0); $sum = $call117; $95 = $sum; $96 = $average$addr; $97 = HEAP32[$96>>2]|0; $add118 = (($95) + ($97))|0; $shr119 = $add118 >> 1; $sum = $shr119; $98 = $sum; $99 = $average$addr; HEAP32[$99>>2] = $98; $100 = $sum; $mul120 = ($100*3)|0; $101 = $last_decision$addr; $sub121 = (3 - ($101))|0; $shl122 = $sub121 << 7; $add123 = (($shl122) + 64)|0; $add124 = (($mul120) + ($add123))|0; $add125 = (($add124) + 2)|0; $shr126 = $add125 >> 2; $sum = $shr126; $102 = $sum; $cmp127 = ($102|0)<(80); do { if ($cmp127) { $decision = 3; } else { $103 = $sum; $cmp131 = ($103|0)<(256); if ($cmp131) { $decision = 2; break; } $104 = $sum; $cmp135 = ($104|0)<(384); if ($cmp135) { $decision = 1; break; } else { $decision = 0; break; } } } while(0); $105 = $decision; $retval = $105; $106 = $retval; STACKTOP = sp;return ($106|0); } function _haar1($X,$N0,$stride) { $X = $X|0; $N0 = $N0|0; $stride = $stride|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0.0, $15 = 0.0, $16 = 0.0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0.0, $22 = 0.0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0.0, $N0$addr = 0, $X$addr = 0, $add = 0, $add12 = 0.0, $add15 = 0, $add18 = 0, $add20 = 0, $add7 = 0, $add9 = 0, $arrayidx = 0, $arrayidx10 = 0; var $arrayidx16 = 0, $arrayidx21 = 0, $cmp = 0, $cmp2 = 0, $i = 0, $inc = 0, $inc23 = 0, $j = 0, $mul = 0, $mul11 = 0.0, $mul13 = 0, $mul14 = 0, $mul17 = 0, $mul19 = 0, $mul4 = 0, $mul5 = 0.0, $mul6 = 0, $mul8 = 0, $shr = 0, $stride$addr = 0; var $sub = 0.0, $tmp1 = 0.0, $tmp2 = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $X$addr = $X; $N0$addr = $N0; $stride$addr = $stride; $0 = $N0$addr; $shr = $0 >> 1; $N0$addr = $shr; $i = 0; while(1) { $1 = $i; $2 = $stride$addr; $cmp = ($1|0)<($2|0); if (!($cmp)) { break; } $j = 0; while(1) { $3 = $j; $4 = $N0$addr; $cmp2 = ($3|0)<($4|0); if (!($cmp2)) { break; } $5 = $X$addr; $6 = $stride$addr; $mul = $6<<1; $7 = $j; $mul4 = Math_imul($mul, $7)|0; $8 = $i; $add = (($mul4) + ($8))|0; $arrayidx = (($5) + ($add<<2)|0); $9 = +HEAPF32[$arrayidx>>2]; $mul5 = 0.70710676908493042 * $9; $tmp1 = $mul5; $10 = $X$addr; $11 = $stride$addr; $12 = $j; $mul6 = $12<<1; $add7 = (($mul6) + 1)|0; $mul8 = Math_imul($11, $add7)|0; $13 = $i; $add9 = (($mul8) + ($13))|0; $arrayidx10 = (($10) + ($add9<<2)|0); $14 = +HEAPF32[$arrayidx10>>2]; $mul11 = 0.70710676908493042 * $14; $tmp2 = $mul11; $15 = $tmp1; $16 = $tmp2; $add12 = $15 + $16; $17 = $X$addr; $18 = $stride$addr; $mul13 = $18<<1; $19 = $j; $mul14 = Math_imul($mul13, $19)|0; $20 = $i; $add15 = (($mul14) + ($20))|0; $arrayidx16 = (($17) + ($add15<<2)|0); HEAPF32[$arrayidx16>>2] = $add12; $21 = $tmp1; $22 = $tmp2; $sub = $21 - $22; $23 = $X$addr; $24 = $stride$addr; $25 = $j; $mul17 = $25<<1; $add18 = (($mul17) + 1)|0; $mul19 = Math_imul($24, $add18)|0; $26 = $i; $add20 = (($mul19) + ($26))|0; $arrayidx21 = (($23) + ($add20<<2)|0); HEAPF32[$arrayidx21>>2] = $sub; $27 = $j; $inc = (($27) + 1)|0; $j = $inc; } $28 = $i; $inc23 = (($28) + 1)|0; $i = $inc23; } STACKTOP = sp;return; } function _quant_all_bands($encode,$m,$start,$end,$X_,$Y_,$collapse_masks,$bandE,$pulses,$shortBlocks,$spread,$dual_stereo,$intensity,$tf_res,$total_bits,$balance,$ec,$LM,$codedBands,$seed,$complexity,$arch,$disable_inv) { $encode = $encode|0; $m = $m|0; $start = $start|0; $end = $end|0; $X_ = $X_|0; $Y_ = $Y_|0; $collapse_masks = $collapse_masks|0; $bandE = $bandE|0; $pulses = $pulses|0; $shortBlocks = $shortBlocks|0; $spread = $spread|0; $dual_stereo = $dual_stereo|0; $intensity = $intensity|0; $tf_res = $tf_res|0; $total_bits = $total_bits|0; $balance = $balance|0; $ec = $ec|0; $LM = $LM|0; $codedBands = $codedBands|0; $seed = $seed|0; $complexity = $complexity|0; $arch = $arch|0; $disable_inv = $disable_inv|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; var $242 = 0, $243 = 0, $244 = 0, $245 = 0.0, $246 = 0, $247 = 0, $248 = 0.0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0.0, $294 = 0, $295 = 0, $296 = 0; var $297 = 0, $298 = 0.0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0.0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0.0; var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0.0, $401 = 0, $402 = 0, $403 = 0; var $404 = 0, $405 = 0.0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0.0, $411 = 0.0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0; var $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0; var $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0; var $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0; var $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $B = 0, $C = 0, $LM$addr = 0, $M = 0, $N = 0; var $X = 0, $X_$addr = 0, $Y = 0, $Y_$addr = 0, $add = 0, $add$ptr = 0, $add$ptr20 = 0, $add$ptr314 = 0, $add$ptr324 = 0, $add$ptr326 = 0, $add$ptr334 = 0, $add$ptr344 = 0, $add$ptr346 = 0, $add$ptr378 = 0, $add$ptr388 = 0, $add$ptr390 = 0, $add$ptr423 = 0, $add$ptr425 = 0, $add$ptr430 = 0, $add$ptr432 = 0; var $add$ptr44 = 0, $add$ptr440 = 0, $add$ptr473 = 0, $add$ptr483 = 0, $add$ptr485 = 0, $add$ptr522 = 0, $add$ptr524 = 0, $add$ptr529 = 0, $add$ptr531 = 0, $add$ptr553 = 0, $add$ptr563 = 0, $add$ptr565 = 0, $add$ptr575 = 0, $add$ptr585 = 0, $add$ptr587 = 0, $add$ptr72 = 0, $add$ptr79 = 0, $add110 = 0, $add112 = 0, $add116 = 0; var $add119 = 0, $add126 = 0, $add128 = 0, $add132 = 0, $add135 = 0, $add144 = 0, $add146 = 0, $add150 = 0, $add153 = 0, $add160 = 0, $add162 = 0, $add166 = 0, $add169 = 0, $add189 = 0, $add199 = 0, $add250 = 0, $add261 = 0, $add262 = 0, $add270 = 0, $add274 = 0; var $add303 = 0.0, $add361 = 0, $add366 = 0, $add373 = 0, $add403 = 0.0, $add410 = 0, $add417 = 0, $add438 = 0, $add449 = 0, $add456 = 0, $add463 = 0, $add464 = 0, $add499 = 0.0, $add509 = 0, $add516 = 0, $add537 = 0, $add546 = 0, $add596 = 0, $add600 = 0, $add604 = 0; var $add605 = 0, $and = 0, $and399 = 0, $and490 = 0, $and495 = 0, $arch$addr = 0, $arch58 = 0, $arrayidx = 0, $arrayidx10 = 0, $arrayidx111 = 0, $arrayidx118 = 0, $arrayidx127 = 0, $arrayidx134 = 0, $arrayidx145 = 0, $arrayidx152 = 0, $arrayidx161 = 0, $arrayidx168 = 0, $arrayidx17 = 0, $arrayidx180 = 0, $arrayidx184 = 0; var $arrayidx204 = 0, $arrayidx231 = 0, $arrayidx240 = 0, $arrayidx247 = 0, $arrayidx25 = 0, $arrayidx258 = 0, $arrayidx271 = 0, $arrayidx276 = 0, $arrayidx29 = 0, $arrayidx294 = 0, $arrayidx301 = 0, $arrayidx302 = 0, $arrayidx305 = 0, $arrayidx321 = 0, $arrayidx341 = 0, $arrayidx359 = 0, $arrayidx362 = 0, $arrayidx385 = 0, $arrayidx395 = 0, $arrayidx398 = 0; var $arrayidx400 = 0, $arrayidx41 = 0, $arrayidx420 = 0, $arrayidx427 = 0, $arrayidx480 = 0, $arrayidx491 = 0, $arrayidx494 = 0, $arrayidx496 = 0, $arrayidx519 = 0, $arrayidx526 = 0, $arrayidx560 = 0, $arrayidx582 = 0, $arrayidx597 = 0, $arrayidx602 = 0, $arrayidx603 = 0, $arrayidx69 = 0, $arrayidx76 = 0, $arrayidx82 = 0, $arrayidx85 = 0, $avoid_split_noise = 0; var $avoid_split_noise609 = 0, $b = 0, $balance$addr = 0, $bandE$addr = 0, $bandE51 = 0, $bytes_buf = 0, $bytes_save = 0, $call = 0, $call109 = 0, $call329 = 0, $call349 = 0, $call393 = 0, $call396 = 0.0, $call401 = 0.0, $call488 = 0, $call492 = 0.0, $call497 = 0.0, $call569 = 0, $call591 = 0, $cm = 0; var $cm2 = 0, $cmp = 0, $cmp102 = 0, $cmp113 = 0, $cmp122 = 0, $cmp129 = 0, $cmp140 = 0, $cmp147 = 0, $cmp156 = 0, $cmp163 = 0, $cmp187 = 0, $cmp190 = 0, $cmp195 = 0, $cmp2 = 0, $cmp200 = 0, $cmp206 = 0, $cmp209 = 0, $cmp219 = 0, $cmp222 = 0, $cmp225 = 0; var $cmp228 = 0, $cmp236 = 0, $cmp251 = 0, $cmp255 = 0, $cmp263 = 0, $cmp280 = 0, $cmp288 = 0, $cmp298 = 0, $cmp311 = 0, $cmp331 = 0, $cmp351 = 0, $cmp356 = 0, $cmp375 = 0, $cmp465 = 0, $cmp470 = 0, $cmp5 = 0, $cmp500 = 0, $cmp550 = 0, $cmp572 = 0, $cmp607 = 0; var $cmp61 = 0, $cmp63 = 0, $cmp67 = 0, $cmp73 = 0, $cmp89 = 0, $cmp98 = 0, $codedBands$addr = 0, $collapse_masks$addr = 0, $complexity$addr = 0, $cond = 0, $cond108 = 0, $cond121 = 0, $cond139 = 0, $cond155 = 0, $cond175 = 0, $cond246 = 0, $cond317 = 0, $cond328 = 0, $cond337 = 0, $cond348 = 0; var $cond381 = 0, $cond392 = 0, $cond476 = 0, $cond487 = 0, $cond556 = 0, $cond567 = 0, $cond578 = 0, $cond589 = 0, $cond9 = 0, $conv = 0, $conv11 = 0, $conv18 = 0, $conv181 = 0, $conv185 = 0, $conv232 = 0, $conv241 = 0, $conv248 = 0, $conv259 = 0, $conv26 = 0, $conv272 = 0; var $conv277 = 0, $conv295 = 0, $conv30 = 0, $conv322 = 0, $conv342 = 0, $conv386 = 0, $conv42 = 0, $conv421 = 0, $conv428 = 0, $conv481 = 0, $conv520 = 0, $conv527 = 0, $conv561 = 0, $conv583 = 0, $conv594 = 0, $conv598 = 0, $conv608 = 0, $conv62 = 0, $conv68 = 0, $conv70 = 0; var $conv77 = 0, $conv83 = 0, $conv86 = 0, $ctx = 0, $ctx_save = 0, $ctx_save2 = 0, $curr_balance = 0, $dec = 0, $disable_inv$addr = 0, $disable_inv59 = 0, $dist0 = 0.0, $dist1 = 0.0, $div = 0, $div330 = 0, $dual_stereo$addr = 0, $eBands = 0, $eBands1 = 0, $ec$addr = 0, $ec52 = 0, $ec_save = 0; var $ec_save2 = 0, $effEBands = 0, $effective_lowband = 0, $encode$addr = 0, $end$addr = 0, $fold_end = 0, $fold_i = 0, $fold_start = 0, $i = 0, $i65 = 0, $idx$neg = 0, $idx$neg325 = 0, $idx$neg345 = 0, $idx$neg389 = 0, $idx$neg424 = 0, $idx$neg431 = 0, $idx$neg484 = 0, $idx$neg523 = 0, $idx$neg530 = 0, $idx$neg564 = 0; var $idx$neg586 = 0, $inc = 0, $inc279 = 0, $inc306 = 0, $inc611 = 0, $intensity$addr = 0, $intensity54 = 0, $j = 0, $land$ext = 0, $last = 0, $lor$ext = 0, $lowband_offset = 0, $lowband_scratch = 0, $m$addr = 0, $m55 = 0, $mul = 0, $mul12 = 0, $mul14 = 0, $mul182 = 0, $mul186 = 0; var $mul19 = 0, $mul233 = 0, $mul242 = 0, $mul249 = 0, $mul260 = 0, $mul269 = 0, $mul273 = 0, $mul296 = 0, $mul304 = 0.0, $mul32 = 0, $mul323 = 0, $mul343 = 0, $mul364 = 0, $mul365 = 0, $mul367 = 0, $mul372 = 0, $mul387 = 0, $mul397 = 0.0, $mul402 = 0.0, $mul404 = 0; var $mul409 = 0, $mul411 = 0, $mul416 = 0, $mul422 = 0, $mul426 = 0, $mul429 = 0, $mul43 = 0, $mul437 = 0, $mul443 = 0, $mul448 = 0, $mul450 = 0, $mul455 = 0, $mul457 = 0, $mul462 = 0, $mul482 = 0, $mul493 = 0.0, $mul498 = 0.0, $mul503 = 0, $mul508 = 0, $mul510 = 0; var $mul515 = 0, $mul521 = 0, $mul525 = 0, $mul528 = 0, $mul536 = 0, $mul540 = 0, $mul545 = 0, $mul562 = 0, $mul584 = 0, $mul595 = 0, $mul599 = 0, $mul71 = 0, $mul78 = 0, $mul84 = 0, $mul87 = 0, $nbEBands = 0, $nbEBands15 = 0, $nbEBands24 = 0, $nbEBands27 = 0, $nbEBands360 = 0; var $nbEBands39 = 0, $nend_bytes = 0, $norm = 0, $norm2 = 0, $norm_offset = 0, $nstart_bytes = 0, $offs = 0, $or = 0, $or$cond = 0, $or$cond$not = 0, $or$cond1 = 0, $or$cond2 = 0, $or$cond3 = 0, $or$cond4 = 0, $or$cond5 = 0, $or$cond6 = 0, $or$cond7 = 0, $or278 = 0, $or363 = 0, $or568 = 0; var $or590 = 0, $pulses$addr = 0, $remaining_bits = 0, $remaining_bits96 = 0, $resynth = 0, $resynth60 = 0, $resynth_alloc = 0, $save_bytes = 0, $saved_stack = 0, $seed$addr = 0, $seed56 = 0, $seed613 = 0, $shl = 0, $shl283 = 0, $shl606 = 0, $shortBlocks$addr = 0, $spread$addr = 0, $spread57 = 0, $start$addr = 0, $storage = 0; var $sub = 0, $sub$ptr$div = 0, $sub$ptr$div371 = 0, $sub$ptr$div408 = 0, $sub$ptr$div415 = 0, $sub$ptr$div436 = 0, $sub$ptr$div454 = 0, $sub$ptr$div461 = 0, $sub$ptr$div507 = 0, $sub$ptr$div514 = 0, $sub$ptr$div535 = 0, $sub$ptr$lhs$cast = 0, $sub$ptr$lhs$cast368 = 0, $sub$ptr$lhs$cast405 = 0, $sub$ptr$lhs$cast412 = 0, $sub$ptr$lhs$cast433 = 0, $sub$ptr$lhs$cast445 = 0, $sub$ptr$lhs$cast451 = 0, $sub$ptr$lhs$cast458 = 0, $sub$ptr$lhs$cast504 = 0; var $sub$ptr$lhs$cast511 = 0, $sub$ptr$lhs$cast532 = 0, $sub$ptr$lhs$cast542 = 0, $sub$ptr$rhs$cast = 0, $sub$ptr$rhs$cast369 = 0, $sub$ptr$rhs$cast406 = 0, $sub$ptr$rhs$cast413 = 0, $sub$ptr$rhs$cast434 = 0, $sub$ptr$rhs$cast446 = 0, $sub$ptr$rhs$cast452 = 0, $sub$ptr$rhs$cast459 = 0, $sub$ptr$rhs$cast505 = 0, $sub$ptr$rhs$cast512 = 0, $sub$ptr$rhs$cast533 = 0, $sub$ptr$rhs$cast543 = 0, $sub$ptr$sub = 0, $sub$ptr$sub370 = 0, $sub$ptr$sub407 = 0, $sub$ptr$sub414 = 0, $sub$ptr$sub435 = 0; var $sub$ptr$sub447 = 0, $sub$ptr$sub453 = 0, $sub$ptr$sub460 = 0, $sub$ptr$sub506 = 0, $sub$ptr$sub513 = 0, $sub$ptr$sub534 = 0, $sub$ptr$sub544 = 0, $sub101 = 0, $sub106 = 0, $sub13 = 0, $sub16 = 0, $sub183 = 0, $sub234 = 0, $sub235 = 0, $sub243 = 0, $sub244 = 0, $sub253 = 0, $sub275 = 0, $sub28 = 0, $sub284 = 0; var $sub297 = 0, $sub31 = 0, $sub40 = 0, $sub441 = 0, $sub601 = 0, $sub66 = 0, $sub88 = 0, $sub92 = 0, $sub94 = 0, $sub95 = 0, $sub97 = 0, $tell = 0, $tf_change = 0, $tf_change205 = 0, $tf_res$addr = 0, $theta_rdo = 0, $theta_round = 0, $theta_round374 = 0, $theta_round469 = 0, $theta_round549 = 0; var $tobool = 0, $tobool178 = 0, $tobool193 = 0, $tobool21 = 0, $tobool214 = 0, $tobool216 = 0, $tobool23 = 0, $tobool286 = 0, $tobool291 = 0, $tobool309 = 0, $tobool318 = 0, $tobool338 = 0, $tobool34 = 0, $tobool354 = 0, $tobool36 = 0, $tobool382 = 0, $tobool4 = 0, $tobool418 = 0, $tobool477 = 0, $tobool517 = 0; var $tobool557 = 0, $tobool579 = 0, $tobool6 = 0, $tobool7 = 0, $tobool8 = 0, $total_bits$addr = 0, $update_lowband = 0, $vla = 0, $vla$alloca_mul = 0, $vla33 = 0, $vla33$alloca_mul = 0, $vla46 = 0, $vla46$alloca_mul = 0, $vla47 = 0, $vla47$alloca_mul = 0, $vla48 = 0, $vla48$alloca_mul = 0, $vla49 = 0, $vla49$alloca_mul = 0, $vla50 = 0; var $vla50$alloca_mul = 0, $w = 0, $x_cm = 0, $y_cm = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; sp = STACKTOP; STACKTOP = STACKTOP + 1808|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(1808|0); $ctx = sp + 320|0; $ec_save = sp + 208|0; $ec_save2 = sp + 160|0; $ctx_save = sp + 100|0; $ctx_save2 = sp + 40|0; $bytes_save = sp + 532|0; $w = sp; $encode$addr = $encode; $m$addr = $m; $start$addr = $start; $end$addr = $end; $X_$addr = $X_; $Y_$addr = $Y_; $collapse_masks$addr = $collapse_masks; $bandE$addr = $bandE; $pulses$addr = $pulses; $shortBlocks$addr = $shortBlocks; $spread$addr = $spread; $dual_stereo$addr = $dual_stereo; $intensity$addr = $intensity; $tf_res$addr = $tf_res; $total_bits$addr = $total_bits; $balance$addr = $balance; $ec$addr = $ec; $LM$addr = $LM; $codedBands$addr = $codedBands; $seed$addr = $seed; $complexity$addr = $complexity; $arch$addr = $arch; $disable_inv$addr = $disable_inv; $0 = $m$addr; $eBands1 = ((($0)) + 32|0); $1 = HEAP32[$eBands1>>2]|0; $eBands = $1; $update_lowband = 1; $2 = $Y_$addr; $cmp = ($2|0)!=(0|0); $cond = $cmp ? 2 : 1; $C = $cond; $3 = $encode$addr; $tobool = ($3|0)!=(0); $4 = $Y_$addr; $cmp2 = ($4|0)!=(0|0); $or$cond = $tobool & $cmp2; $or$cond$not = $or$cond ^ 1; $5 = $dual_stereo$addr; $tobool4 = ($5|0)!=(0); $or$cond1 = $or$cond$not | $tobool4; if ($or$cond1) { $7 = 0; } else { $6 = $complexity$addr; $cmp5 = ($6|0)>=(8); $7 = $cmp5; } $land$ext = $7&1; $theta_rdo = $land$ext; $8 = $encode$addr; $tobool6 = ($8|0)!=(0); $9 = $theta_rdo; $tobool7 = ($9|0)!=(0); $10 = $tobool6 ? $tobool7 : 1; $lor$ext = $10&1; $resynth = $lor$ext; $11 = $LM$addr; $shl = 1 << $11; $M = $shl; $12 = $shortBlocks$addr; $tobool8 = ($12|0)!=(0); $13 = $M; $cond9 = $tobool8 ? $13 : 1; $B = $cond9; $14 = $M; $15 = $eBands; $16 = $start$addr; $arrayidx = (($15) + ($16<<1)|0); $17 = HEAP16[$arrayidx>>1]|0; $conv = $17 << 16 >> 16; $mul = Math_imul($14, $conv)|0; $norm_offset = $mul; $18 = $C; $19 = $M; $20 = $eBands; $21 = $m$addr; $nbEBands = ((($21)) + 8|0); $22 = HEAP32[$nbEBands>>2]|0; $sub = (($22) - 1)|0; $arrayidx10 = (($20) + ($sub<<1)|0); $23 = HEAP16[$arrayidx10>>1]|0; $conv11 = $23 << 16 >> 16; $mul12 = Math_imul($19, $conv11)|0; $24 = $norm_offset; $sub13 = (($mul12) - ($24))|0; $mul14 = Math_imul($18, $sub13)|0; $25 = (_llvm_stacksave()|0); $saved_stack = $25; $vla$alloca_mul = $mul14<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $norm = $vla; $26 = $norm; $27 = $M; $28 = $eBands; $29 = $m$addr; $nbEBands15 = ((($29)) + 8|0); $30 = HEAP32[$nbEBands15>>2]|0; $sub16 = (($30) - 1)|0; $arrayidx17 = (($28) + ($sub16<<1)|0); $31 = HEAP16[$arrayidx17>>1]|0; $conv18 = $31 << 16 >> 16; $mul19 = Math_imul($27, $conv18)|0; $add$ptr = (($26) + ($mul19<<2)|0); $32 = $norm_offset; $idx$neg = (0 - ($32))|0; $add$ptr20 = (($add$ptr) + ($idx$neg<<2)|0); $norm2 = $add$ptr20; $33 = $encode$addr; $tobool21 = ($33|0)!=(0); $34 = $resynth; $tobool23 = ($34|0)!=(0); $or$cond2 = $tobool21 & $tobool23; if ($or$cond2) { $35 = $M; $36 = $eBands; $37 = $m$addr; $nbEBands24 = ((($37)) + 8|0); $38 = HEAP32[$nbEBands24>>2]|0; $arrayidx25 = (($36) + ($38<<1)|0); $39 = HEAP16[$arrayidx25>>1]|0; $conv26 = $39 << 16 >> 16; $40 = $eBands; $41 = $m$addr; $nbEBands27 = ((($41)) + 8|0); $42 = HEAP32[$nbEBands27>>2]|0; $sub28 = (($42) - 1)|0; $arrayidx29 = (($40) + ($sub28<<1)|0); $43 = HEAP16[$arrayidx29>>1]|0; $conv30 = $43 << 16 >> 16; $sub31 = (($conv26) - ($conv30))|0; $mul32 = Math_imul($35, $sub31)|0; $resynth_alloc = $mul32; } else { $resynth_alloc = 1; } $44 = $resynth_alloc; $vla33$alloca_mul = $44<<2; $vla33 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla33$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla33$alloca_mul)|0)+15)&-16)|0);; $45 = $encode$addr; $tobool34 = ($45|0)!=(0); $46 = $resynth; $tobool36 = ($46|0)!=(0); $or$cond3 = $tobool34 & $tobool36; if ($or$cond3) { $lowband_scratch = $vla33; } else { $47 = $X_$addr; $48 = $M; $49 = $eBands; $50 = $m$addr; $nbEBands39 = ((($50)) + 8|0); $51 = HEAP32[$nbEBands39>>2]|0; $sub40 = (($51) - 1)|0; $arrayidx41 = (($49) + ($sub40<<1)|0); $52 = HEAP16[$arrayidx41>>1]|0; $conv42 = $52 << 16 >> 16; $mul43 = Math_imul($48, $conv42)|0; $add$ptr44 = (($47) + ($mul43<<2)|0); $lowband_scratch = $add$ptr44; } $53 = $resynth_alloc; $vla46$alloca_mul = $53<<2; $vla46 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla46$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla46$alloca_mul)|0)+15)&-16)|0);; $54 = $resynth_alloc; $vla47$alloca_mul = $54<<2; $vla47 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla47$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla47$alloca_mul)|0)+15)&-16)|0);; $55 = $resynth_alloc; $vla48$alloca_mul = $55<<2; $vla48 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla48$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla48$alloca_mul)|0)+15)&-16)|0);; $56 = $resynth_alloc; $vla49$alloca_mul = $56<<2; $vla49 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla49$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla49$alloca_mul)|0)+15)&-16)|0);; $57 = $resynth_alloc; $vla50$alloca_mul = $57<<2; $vla50 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla50$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla50$alloca_mul)|0)+15)&-16)|0);; $lowband_offset = 0; $58 = $bandE$addr; $bandE51 = ((($ctx)) + 36|0); HEAP32[$bandE51>>2] = $58; $59 = $ec$addr; $ec52 = ((($ctx)) + 28|0); HEAP32[$ec52>>2] = $59; $60 = $encode$addr; HEAP32[$ctx>>2] = $60; $61 = $intensity$addr; $intensity54 = ((($ctx)) + 16|0); HEAP32[$intensity54>>2] = $61; $62 = $m$addr; $m55 = ((($ctx)) + 8|0); HEAP32[$m55>>2] = $62; $63 = $seed$addr; $64 = HEAP32[$63>>2]|0; $seed56 = ((($ctx)) + 40|0); HEAP32[$seed56>>2] = $64; $65 = $spread$addr; $spread57 = ((($ctx)) + 20|0); HEAP32[$spread57>>2] = $65; $66 = $arch$addr; $arch58 = ((($ctx)) + 44|0); HEAP32[$arch58>>2] = $66; $67 = $disable_inv$addr; $disable_inv59 = ((($ctx)) + 52|0); HEAP32[$disable_inv59>>2] = $67; $68 = $resynth; $resynth60 = ((($ctx)) + 4|0); HEAP32[$resynth60>>2] = $68; $theta_round = ((($ctx)) + 48|0); HEAP32[$theta_round>>2] = 0; $69 = $B; $cmp61 = ($69|0)>(1); $conv62 = $cmp61&1; $avoid_split_noise = ((($ctx)) + 56|0); HEAP32[$avoid_split_noise>>2] = $conv62; $70 = $start$addr; $i = $70; while(1) { $71 = $i; $72 = $end$addr; $cmp63 = ($71|0)<($72|0); if (!($cmp63)) { break; } $effective_lowband = -1; $tf_change = 0; $73 = $i; $i65 = ((($ctx)) + 12|0); HEAP32[$i65>>2] = $73; $74 = $i; $75 = $end$addr; $sub66 = (($75) - 1)|0; $cmp67 = ($74|0)==($sub66|0); $conv68 = $cmp67&1; $last = $conv68; $76 = $X_$addr; $77 = $M; $78 = $eBands; $79 = $i; $arrayidx69 = (($78) + ($79<<1)|0); $80 = HEAP16[$arrayidx69>>1]|0; $conv70 = $80 << 16 >> 16; $mul71 = Math_imul($77, $conv70)|0; $add$ptr72 = (($76) + ($mul71<<2)|0); $X = $add$ptr72; $81 = $Y_$addr; $cmp73 = ($81|0)!=(0|0); if ($cmp73) { $82 = $Y_$addr; $83 = $M; $84 = $eBands; $85 = $i; $arrayidx76 = (($84) + ($85<<1)|0); $86 = HEAP16[$arrayidx76>>1]|0; $conv77 = $86 << 16 >> 16; $mul78 = Math_imul($83, $conv77)|0; $add$ptr79 = (($82) + ($mul78<<2)|0); $Y = $add$ptr79; } else { $Y = 0; } $87 = $M; $88 = $eBands; $89 = $i; $add = (($89) + 1)|0; $arrayidx82 = (($88) + ($add<<1)|0); $90 = HEAP16[$arrayidx82>>1]|0; $conv83 = $90 << 16 >> 16; $mul84 = Math_imul($87, $conv83)|0; $91 = $M; $92 = $eBands; $93 = $i; $arrayidx85 = (($92) + ($93<<1)|0); $94 = HEAP16[$arrayidx85>>1]|0; $conv86 = $94 << 16 >> 16; $mul87 = Math_imul($91, $conv86)|0; $sub88 = (($mul84) - ($mul87))|0; $N = $sub88; $95 = $ec$addr; $call = (_ec_tell_frac($95)|0); $tell = $call; $96 = $i; $97 = $start$addr; $cmp89 = ($96|0)!=($97|0); if ($cmp89) { $98 = $tell; $99 = $balance$addr; $sub92 = (($99) - ($98))|0; $balance$addr = $sub92; } $100 = $total_bits$addr; $101 = $tell; $sub94 = (($100) - ($101))|0; $sub95 = (($sub94) - 1)|0; $remaining_bits = $sub95; $102 = $remaining_bits; $remaining_bits96 = ((($ctx)) + 32|0); HEAP32[$remaining_bits96>>2] = $102; $103 = $i; $104 = $codedBands$addr; $sub97 = (($104) - 1)|0; $cmp98 = ($103|0)<=($sub97|0); if ($cmp98) { $105 = $balance$addr; $106 = $codedBands$addr; $107 = $i; $sub101 = (($106) - ($107))|0; $cmp102 = (3)<($sub101|0); if ($cmp102) { $cond108 = 3; } else { $108 = $codedBands$addr; $109 = $i; $sub106 = (($108) - ($109))|0; $cond108 = $sub106; } $call109 = (_celt_sudiv($105,$cond108)|0); $curr_balance = $call109; $110 = $remaining_bits; $add110 = (($110) + 1)|0; $111 = $pulses$addr; $112 = $i; $arrayidx111 = (($111) + ($112<<2)|0); $113 = HEAP32[$arrayidx111>>2]|0; $114 = $curr_balance; $add112 = (($113) + ($114))|0; $cmp113 = ($add110|0)<($add112|0); if ($cmp113) { $115 = $remaining_bits; $add116 = (($115) + 1)|0; $cond121 = $add116; } else { $116 = $pulses$addr; $117 = $i; $arrayidx118 = (($116) + ($117<<2)|0); $118 = HEAP32[$arrayidx118>>2]|0; $119 = $curr_balance; $add119 = (($118) + ($119))|0; $cond121 = $add119; } $cmp122 = (16383)<($cond121|0); do { if ($cmp122) { $cond139 = 16383; } else { $120 = $remaining_bits; $add126 = (($120) + 1)|0; $121 = $pulses$addr; $122 = $i; $arrayidx127 = (($121) + ($122<<2)|0); $123 = HEAP32[$arrayidx127>>2]|0; $124 = $curr_balance; $add128 = (($123) + ($124))|0; $cmp129 = ($add126|0)<($add128|0); if ($cmp129) { $125 = $remaining_bits; $add132 = (($125) + 1)|0; $cond139 = $add132; break; } else { $126 = $pulses$addr; $127 = $i; $arrayidx134 = (($126) + ($127<<2)|0); $128 = HEAP32[$arrayidx134>>2]|0; $129 = $curr_balance; $add135 = (($128) + ($129))|0; $cond139 = $add135; break; } } } while(0); $cmp140 = (0)>($cond139|0); do { if ($cmp140) { $cond175 = 0; } else { $130 = $remaining_bits; $add144 = (($130) + 1)|0; $131 = $pulses$addr; $132 = $i; $arrayidx145 = (($131) + ($132<<2)|0); $133 = HEAP32[$arrayidx145>>2]|0; $134 = $curr_balance; $add146 = (($133) + ($134))|0; $cmp147 = ($add144|0)<($add146|0); if ($cmp147) { $135 = $remaining_bits; $add150 = (($135) + 1)|0; $cond155 = $add150; } else { $136 = $pulses$addr; $137 = $i; $arrayidx152 = (($136) + ($137<<2)|0); $138 = HEAP32[$arrayidx152>>2]|0; $139 = $curr_balance; $add153 = (($138) + ($139))|0; $cond155 = $add153; } $cmp156 = (16383)<($cond155|0); if ($cmp156) { $cond175 = 16383; } else { $140 = $remaining_bits; $add160 = (($140) + 1)|0; $141 = $pulses$addr; $142 = $i; $arrayidx161 = (($141) + ($142<<2)|0); $143 = HEAP32[$arrayidx161>>2]|0; $144 = $curr_balance; $add162 = (($143) + ($144))|0; $cmp163 = ($add160|0)<($add162|0); if ($cmp163) { $145 = $remaining_bits; $add166 = (($145) + 1)|0; $cond175 = $add166; break; } else { $146 = $pulses$addr; $147 = $i; $arrayidx168 = (($146) + ($147<<2)|0); $148 = HEAP32[$arrayidx168>>2]|0; $149 = $curr_balance; $add169 = (($148) + ($149))|0; $cond175 = $add169; break; } } } } while(0); $b = $cond175; } else { $b = 0; } $150 = $resynth; $tobool178 = ($150|0)!=(0); do { if ($tobool178) { $151 = $M; $152 = $eBands; $153 = $i; $arrayidx180 = (($152) + ($153<<1)|0); $154 = HEAP16[$arrayidx180>>1]|0; $conv181 = $154 << 16 >> 16; $mul182 = Math_imul($151, $conv181)|0; $155 = $N; $sub183 = (($mul182) - ($155))|0; $156 = $M; $157 = $eBands; $158 = $start$addr; $arrayidx184 = (($157) + ($158<<1)|0); $159 = HEAP16[$arrayidx184>>1]|0; $conv185 = $159 << 16 >> 16; $mul186 = Math_imul($156, $conv185)|0; $cmp187 = ($sub183|0)>=($mul186|0); if (!($cmp187)) { $160 = $i; $161 = $start$addr; $add189 = (($161) + 1)|0; $cmp190 = ($160|0)==($add189|0); if (!($cmp190)) { break; } } $162 = $update_lowband; $tobool193 = ($162|0)!=(0); $163 = $lowband_offset; $cmp195 = ($163|0)==(0); $or$cond4 = $tobool193 | $cmp195; if ($or$cond4) { $164 = $i; $lowband_offset = $164; } } } while(0); $165 = $i; $166 = $start$addr; $add199 = (($166) + 1)|0; $cmp200 = ($165|0)==($add199|0); if ($cmp200) { $167 = $m$addr; $168 = $norm; $169 = $norm2; $170 = $start$addr; $171 = $M; $172 = $dual_stereo$addr; _special_hybrid_folding($167,$168,$169,$170,$171,$172); } $173 = $tf_res$addr; $174 = $i; $arrayidx204 = (($173) + ($174<<2)|0); $175 = HEAP32[$arrayidx204>>2]|0; $tf_change = $175; $176 = $tf_change; $tf_change205 = ((($ctx)) + 24|0); HEAP32[$tf_change205>>2] = $176; $177 = $i; $178 = $m$addr; $effEBands = ((($178)) + 12|0); $179 = HEAP32[$effEBands>>2]|0; $cmp206 = ($177|0)>=($179|0); if ($cmp206) { $180 = $norm; $X = $180; $181 = $Y_$addr; $cmp209 = ($181|0)!=(0|0); if ($cmp209) { $182 = $norm; $Y = $182; } $lowband_scratch = 0; } $183 = $last; $tobool214 = ($183|0)==(0); $184 = $theta_rdo; $tobool216 = ($184|0)!=(0); $or$cond5 = $tobool214 | $tobool216; if (!($or$cond5)) { $lowband_scratch = 0; } $185 = $lowband_offset; $cmp219 = ($185|0)!=(0); if ($cmp219) { $186 = $spread$addr; $cmp222 = ($186|0)!=(3); $187 = $B; $cmp225 = ($187|0)>(1); $or$cond6 = $cmp222 | $cmp225; $188 = $tf_change; $cmp228 = ($188|0)<(0); $or$cond7 = $or$cond6 | $cmp228; if ($or$cond7) { $189 = $M; $190 = $eBands; $191 = $lowband_offset; $arrayidx231 = (($190) + ($191<<1)|0); $192 = HEAP16[$arrayidx231>>1]|0; $conv232 = $192 << 16 >> 16; $mul233 = Math_imul($189, $conv232)|0; $193 = $norm_offset; $sub234 = (($mul233) - ($193))|0; $194 = $N; $sub235 = (($sub234) - ($194))|0; $cmp236 = (0)>($sub235|0); if ($cmp236) { $cond246 = 0; } else { $195 = $M; $196 = $eBands; $197 = $lowband_offset; $arrayidx240 = (($196) + ($197<<1)|0); $198 = HEAP16[$arrayidx240>>1]|0; $conv241 = $198 << 16 >> 16; $mul242 = Math_imul($195, $conv241)|0; $199 = $norm_offset; $sub243 = (($mul242) - ($199))|0; $200 = $N; $sub244 = (($sub243) - ($200))|0; $cond246 = $sub244; } $effective_lowband = $cond246; $201 = $lowband_offset; $fold_start = $201; while(1) { $202 = $M; $203 = $eBands; $204 = $fold_start; $dec = (($204) + -1)|0; $fold_start = $dec; $arrayidx247 = (($203) + ($dec<<1)|0); $205 = HEAP16[$arrayidx247>>1]|0; $conv248 = $205 << 16 >> 16; $mul249 = Math_imul($202, $conv248)|0; $206 = $effective_lowband; $207 = $norm_offset; $add250 = (($206) + ($207))|0; $cmp251 = ($mul249|0)>($add250|0); if (!($cmp251)) { break; } } $208 = $lowband_offset; $sub253 = (($208) - 1)|0; $fold_end = $sub253; while(1) { $209 = $fold_end; $inc = (($209) + 1)|0; $fold_end = $inc; $210 = $i; $cmp255 = ($inc|0)<($210|0); if (!($cmp255)) { break; } $211 = $M; $212 = $eBands; $213 = $fold_end; $arrayidx258 = (($212) + ($213<<1)|0); $214 = HEAP16[$arrayidx258>>1]|0; $conv259 = $214 << 16 >> 16; $mul260 = Math_imul($211, $conv259)|0; $215 = $effective_lowband; $216 = $norm_offset; $add261 = (($215) + ($216))|0; $217 = $N; $add262 = (($add261) + ($217))|0; $cmp263 = ($mul260|0)<($add262|0); if (!($cmp263)) { break; } } $y_cm = 0; $x_cm = 0; $218 = $fold_start; $fold_i = $218; while(1) { $219 = $collapse_masks$addr; $220 = $fold_i; $221 = $C; $mul269 = Math_imul($220, $221)|0; $add270 = (($mul269) + 0)|0; $arrayidx271 = (($219) + ($add270)|0); $222 = HEAP8[$arrayidx271>>0]|0; $conv272 = $222&255; $223 = $x_cm; $or = $223 | $conv272; $x_cm = $or; $224 = $collapse_masks$addr; $225 = $fold_i; $226 = $C; $mul273 = Math_imul($225, $226)|0; $227 = $C; $add274 = (($mul273) + ($227))|0; $sub275 = (($add274) - 1)|0; $arrayidx276 = (($224) + ($sub275)|0); $228 = HEAP8[$arrayidx276>>0]|0; $conv277 = $228&255; $229 = $y_cm; $or278 = $229 | $conv277; $y_cm = $or278; $230 = $fold_i; $inc279 = (($230) + 1)|0; $fold_i = $inc279; $231 = $fold_end; $cmp280 = ($inc279|0)<($231|0); if (!($cmp280)) { break; } } } else { label = 60; } } else { label = 60; } if ((label|0) == 60) { label = 0; $232 = $B; $shl283 = 1 << $232; $sub284 = (($shl283) - 1)|0; $y_cm = $sub284; $x_cm = $sub284; } $233 = $dual_stereo$addr; $tobool286 = ($233|0)!=(0); L87: do { if ($tobool286) { $234 = $i; $235 = $intensity$addr; $cmp288 = ($234|0)==($235|0); if ($cmp288) { $dual_stereo$addr = 0; $236 = $resynth; $tobool291 = ($236|0)!=(0); if ($tobool291) { $j = 0; while(1) { $237 = $j; $238 = $M; $239 = $eBands; $240 = $i; $arrayidx294 = (($239) + ($240<<1)|0); $241 = HEAP16[$arrayidx294>>1]|0; $conv295 = $241 << 16 >> 16; $mul296 = Math_imul($238, $conv295)|0; $242 = $norm_offset; $sub297 = (($mul296) - ($242))|0; $cmp298 = ($237|0)<($sub297|0); if (!($cmp298)) { break L87; } $243 = $norm; $244 = $j; $arrayidx301 = (($243) + ($244<<2)|0); $245 = +HEAPF32[$arrayidx301>>2]; $246 = $norm2; $247 = $j; $arrayidx302 = (($246) + ($247<<2)|0); $248 = +HEAPF32[$arrayidx302>>2]; $add303 = $245 + $248; $mul304 = 0.5 * $add303; $249 = $norm; $250 = $j; $arrayidx305 = (($249) + ($250<<2)|0); HEAPF32[$arrayidx305>>2] = $mul304; $251 = $j; $inc306 = (($251) + 1)|0; $j = $inc306; } } } } } while(0); $252 = $dual_stereo$addr; $tobool309 = ($252|0)!=(0); if ($tobool309) { $253 = $X; $254 = $N; $255 = $b; $div = (($255|0) / 2)&-1; $256 = $B; $257 = $effective_lowband; $cmp311 = ($257|0)!=(-1); if ($cmp311) { $258 = $norm; $259 = $effective_lowband; $add$ptr314 = (($258) + ($259<<2)|0); $cond317 = $add$ptr314; } else { $cond317 = 0; } $260 = $LM$addr; $261 = $last; $tobool318 = ($261|0)!=(0); if ($tobool318) { $cond328 = 0; } else { $262 = $norm; $263 = $M; $264 = $eBands; $265 = $i; $arrayidx321 = (($264) + ($265<<1)|0); $266 = HEAP16[$arrayidx321>>1]|0; $conv322 = $266 << 16 >> 16; $mul323 = Math_imul($263, $conv322)|0; $add$ptr324 = (($262) + ($mul323<<2)|0); $267 = $norm_offset; $idx$neg325 = (0 - ($267))|0; $add$ptr326 = (($add$ptr324) + ($idx$neg325<<2)|0); $cond328 = $add$ptr326; } $268 = $lowband_scratch; $269 = $x_cm; $call329 = (_quant_band($ctx,$253,$254,$div,$256,$cond317,$260,$cond328,1.0,$268,$269)|0); $x_cm = $call329; $270 = $Y; $271 = $N; $272 = $b; $div330 = (($272|0) / 2)&-1; $273 = $B; $274 = $effective_lowband; $cmp331 = ($274|0)!=(-1); if ($cmp331) { $275 = $norm2; $276 = $effective_lowband; $add$ptr334 = (($275) + ($276<<2)|0); $cond337 = $add$ptr334; } else { $cond337 = 0; } $277 = $LM$addr; $278 = $last; $tobool338 = ($278|0)!=(0); if ($tobool338) { $cond348 = 0; } else { $279 = $norm2; $280 = $M; $281 = $eBands; $282 = $i; $arrayidx341 = (($281) + ($282<<1)|0); $283 = HEAP16[$arrayidx341>>1]|0; $conv342 = $283 << 16 >> 16; $mul343 = Math_imul($280, $conv342)|0; $add$ptr344 = (($279) + ($mul343<<2)|0); $284 = $norm_offset; $idx$neg345 = (0 - ($284))|0; $add$ptr346 = (($add$ptr344) + ($idx$neg345<<2)|0); $cond348 = $add$ptr346; } $285 = $lowband_scratch; $286 = $y_cm; $call349 = (_quant_band($ctx,$270,$271,$div330,$273,$cond337,$277,$cond348,1.0,$285,$286)|0); $y_cm = $call349; } else { $287 = $Y; $cmp351 = ($287|0)!=(0|0); L110: do { if ($cmp351) { $288 = $theta_rdo; $tobool354 = ($288|0)!=(0); do { if ($tobool354) { $289 = $i; $290 = $intensity$addr; $cmp356 = ($289|0)<($290|0); if (!($cmp356)) { break; } $291 = $bandE$addr; $292 = $i; $arrayidx359 = (($291) + ($292<<2)|0); $293 = +HEAPF32[$arrayidx359>>2]; $294 = $bandE$addr; $295 = $i; $296 = $m$addr; $nbEBands360 = ((($296)) + 8|0); $297 = HEAP32[$nbEBands360>>2]|0; $add361 = (($295) + ($297))|0; $arrayidx362 = (($294) + ($add361<<2)|0); $298 = +HEAPF32[$arrayidx362>>2]; _compute_channel_weights($293,$298,$w); $299 = $x_cm; $300 = $y_cm; $or363 = $299 | $300; $cm = $or363; $301 = $ec$addr; dest=$ec_save; src=$301; stop=dest+48|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); dest=$ctx_save; src=$ctx; stop=dest+60|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); $302 = $X; $303 = $N; $mul364 = $303<<2; $304 = $X; $sub$ptr$lhs$cast = $vla46; $sub$ptr$rhs$cast = $304; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $sub$ptr$div = (($sub$ptr$sub|0) / 4)&-1; $mul365 = 0; $add366 = (($mul364) + ($mul365))|0; _memcpy(($vla46|0),($302|0),($add366|0))|0; $305 = $Y; $306 = $N; $mul367 = $306<<2; $307 = $Y; $sub$ptr$lhs$cast368 = $vla47; $sub$ptr$rhs$cast369 = $307; $sub$ptr$sub370 = (($sub$ptr$lhs$cast368) - ($sub$ptr$rhs$cast369))|0; $sub$ptr$div371 = (($sub$ptr$sub370|0) / 4)&-1; $mul372 = 0; $add373 = (($mul367) + ($mul372))|0; _memcpy(($vla47|0),($305|0),($add373|0))|0; $theta_round374 = ((($ctx)) + 48|0); HEAP32[$theta_round374>>2] = -1; $308 = $X; $309 = $Y; $310 = $N; $311 = $b; $312 = $B; $313 = $effective_lowband; $cmp375 = ($313|0)!=(-1); if ($cmp375) { $314 = $norm; $315 = $effective_lowband; $add$ptr378 = (($314) + ($315<<2)|0); $cond381 = $add$ptr378; } else { $cond381 = 0; } $316 = $LM$addr; $317 = $last; $tobool382 = ($317|0)!=(0); if ($tobool382) { $cond392 = 0; } else { $318 = $norm; $319 = $M; $320 = $eBands; $321 = $i; $arrayidx385 = (($320) + ($321<<1)|0); $322 = HEAP16[$arrayidx385>>1]|0; $conv386 = $322 << 16 >> 16; $mul387 = Math_imul($319, $conv386)|0; $add$ptr388 = (($318) + ($mul387<<2)|0); $323 = $norm_offset; $idx$neg389 = (0 - ($323))|0; $add$ptr390 = (($add$ptr388) + ($idx$neg389<<2)|0); $cond392 = $add$ptr390; } $324 = $lowband_scratch; $325 = $cm; $call393 = (_quant_band_stereo($ctx,$308,$309,$310,$311,$312,$cond381,$316,$cond392,$324,$325)|0); $x_cm = $call393; $326 = +HEAPF32[$w>>2]; $327 = $arch$addr; $and = $327 & 7; $arrayidx395 = (_CELT_INNER_PROD_IMPL + ($and<<2)|0); $328 = HEAP32[$arrayidx395>>2]|0; $329 = $X; $330 = $N; $call396 = (+FUNCTION_TABLE_diii[$328 & 0]($vla46,$329,$330)); $mul397 = $326 * $call396; $arrayidx398 = ((($w)) + 4|0); $331 = +HEAPF32[$arrayidx398>>2]; $332 = $arch$addr; $and399 = $332 & 7; $arrayidx400 = (_CELT_INNER_PROD_IMPL + ($and399<<2)|0); $333 = HEAP32[$arrayidx400>>2]|0; $334 = $Y; $335 = $N; $call401 = (+FUNCTION_TABLE_diii[$333 & 0]($vla47,$334,$335)); $mul402 = $331 * $call401; $add403 = $mul397 + $mul402; $dist0 = $add403; $336 = $x_cm; $cm2 = $336; $337 = $ec$addr; dest=$ec_save2; src=$337; stop=dest+48|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); dest=$ctx_save2; src=$ctx; stop=dest+60|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); $338 = $X; $339 = $N; $mul404 = $339<<2; $340 = $X; $sub$ptr$lhs$cast405 = $vla48; $sub$ptr$rhs$cast406 = $340; $sub$ptr$sub407 = (($sub$ptr$lhs$cast405) - ($sub$ptr$rhs$cast406))|0; $sub$ptr$div408 = (($sub$ptr$sub407|0) / 4)&-1; $mul409 = 0; $add410 = (($mul404) + ($mul409))|0; _memcpy(($vla48|0),($338|0),($add410|0))|0; $341 = $Y; $342 = $N; $mul411 = $342<<2; $343 = $Y; $sub$ptr$lhs$cast412 = $vla49; $sub$ptr$rhs$cast413 = $343; $sub$ptr$sub414 = (($sub$ptr$lhs$cast412) - ($sub$ptr$rhs$cast413))|0; $sub$ptr$div415 = (($sub$ptr$sub414|0) / 4)&-1; $mul416 = 0; $add417 = (($mul411) + ($mul416))|0; _memcpy(($vla49|0),($341|0),($add417|0))|0; $344 = $last; $tobool418 = ($344|0)!=(0); if (!($tobool418)) { $345 = $norm; $346 = $M; $347 = $eBands; $348 = $i; $arrayidx420 = (($347) + ($348<<1)|0); $349 = HEAP16[$arrayidx420>>1]|0; $conv421 = $349 << 16 >> 16; $mul422 = Math_imul($346, $conv421)|0; $add$ptr423 = (($345) + ($mul422<<2)|0); $350 = $norm_offset; $idx$neg424 = (0 - ($350))|0; $add$ptr425 = (($add$ptr423) + ($idx$neg424<<2)|0); $351 = $N; $mul426 = $351<<2; $352 = $norm; $353 = $M; $354 = $eBands; $355 = $i; $arrayidx427 = (($354) + ($355<<1)|0); $356 = HEAP16[$arrayidx427>>1]|0; $conv428 = $356 << 16 >> 16; $mul429 = Math_imul($353, $conv428)|0; $add$ptr430 = (($352) + ($mul429<<2)|0); $357 = $norm_offset; $idx$neg431 = (0 - ($357))|0; $add$ptr432 = (($add$ptr430) + ($idx$neg431<<2)|0); $sub$ptr$lhs$cast433 = $vla50; $sub$ptr$rhs$cast434 = $add$ptr432; $sub$ptr$sub435 = (($sub$ptr$lhs$cast433) - ($sub$ptr$rhs$cast434))|0; $sub$ptr$div436 = (($sub$ptr$sub435|0) / 4)&-1; $mul437 = 0; $add438 = (($mul426) + ($mul437))|0; _memcpy(($vla50|0),($add$ptr425|0),($add438|0))|0; } $offs = ((($ec_save)) + 24|0); $358 = HEAP32[$offs>>2]|0; $nstart_bytes = $358; $storage = ((($ec_save)) + 4|0); $359 = HEAP32[$storage>>2]|0; $nend_bytes = $359; $360 = HEAP32[$ec_save>>2]|0; $361 = $nstart_bytes; $add$ptr440 = (($360) + ($361)|0); $bytes_buf = $add$ptr440; $362 = $nend_bytes; $363 = $nstart_bytes; $sub441 = (($362) - ($363))|0; $save_bytes = $sub441; $364 = $bytes_buf; $365 = $save_bytes; $mul443 = $365; $366 = $bytes_buf; $sub$ptr$lhs$cast445 = $bytes_save; $sub$ptr$rhs$cast446 = $366; $sub$ptr$sub447 = (($sub$ptr$lhs$cast445) - ($sub$ptr$rhs$cast446))|0; $mul448 = 0; $add449 = (($mul443) + ($mul448))|0; _memcpy(($bytes_save|0),($364|0),($add449|0))|0; $367 = $ec$addr; dest=$367; src=$ec_save; stop=dest+48|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); dest=$ctx; src=$ctx_save; stop=dest+60|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); $368 = $X; $369 = $N; $mul450 = $369<<2; $370 = $X; $sub$ptr$lhs$cast451 = $370; $sub$ptr$rhs$cast452 = $vla46; $sub$ptr$sub453 = (($sub$ptr$lhs$cast451) - ($sub$ptr$rhs$cast452))|0; $sub$ptr$div454 = (($sub$ptr$sub453|0) / 4)&-1; $mul455 = 0; $add456 = (($mul450) + ($mul455))|0; _memcpy(($368|0),($vla46|0),($add456|0))|0; $371 = $Y; $372 = $N; $mul457 = $372<<2; $373 = $Y; $sub$ptr$lhs$cast458 = $373; $sub$ptr$rhs$cast459 = $vla47; $sub$ptr$sub460 = (($sub$ptr$lhs$cast458) - ($sub$ptr$rhs$cast459))|0; $sub$ptr$div461 = (($sub$ptr$sub460|0) / 4)&-1; $mul462 = 0; $add463 = (($mul457) + ($mul462))|0; _memcpy(($371|0),($vla47|0),($add463|0))|0; $374 = $i; $375 = $start$addr; $add464 = (($375) + 1)|0; $cmp465 = ($374|0)==($add464|0); if ($cmp465) { $376 = $m$addr; $377 = $norm; $378 = $norm2; $379 = $start$addr; $380 = $M; $381 = $dual_stereo$addr; _special_hybrid_folding($376,$377,$378,$379,$380,$381); } $theta_round469 = ((($ctx)) + 48|0); HEAP32[$theta_round469>>2] = 1; $382 = $X; $383 = $Y; $384 = $N; $385 = $b; $386 = $B; $387 = $effective_lowband; $cmp470 = ($387|0)!=(-1); if ($cmp470) { $388 = $norm; $389 = $effective_lowband; $add$ptr473 = (($388) + ($389<<2)|0); $cond476 = $add$ptr473; } else { $cond476 = 0; } $390 = $LM$addr; $391 = $last; $tobool477 = ($391|0)!=(0); if ($tobool477) { $cond487 = 0; } else { $392 = $norm; $393 = $M; $394 = $eBands; $395 = $i; $arrayidx480 = (($394) + ($395<<1)|0); $396 = HEAP16[$arrayidx480>>1]|0; $conv481 = $396 << 16 >> 16; $mul482 = Math_imul($393, $conv481)|0; $add$ptr483 = (($392) + ($mul482<<2)|0); $397 = $norm_offset; $idx$neg484 = (0 - ($397))|0; $add$ptr485 = (($add$ptr483) + ($idx$neg484<<2)|0); $cond487 = $add$ptr485; } $398 = $lowband_scratch; $399 = $cm; $call488 = (_quant_band_stereo($ctx,$382,$383,$384,$385,$386,$cond476,$390,$cond487,$398,$399)|0); $x_cm = $call488; $400 = +HEAPF32[$w>>2]; $401 = $arch$addr; $and490 = $401 & 7; $arrayidx491 = (_CELT_INNER_PROD_IMPL + ($and490<<2)|0); $402 = HEAP32[$arrayidx491>>2]|0; $403 = $X; $404 = $N; $call492 = (+FUNCTION_TABLE_diii[$402 & 0]($vla46,$403,$404)); $mul493 = $400 * $call492; $arrayidx494 = ((($w)) + 4|0); $405 = +HEAPF32[$arrayidx494>>2]; $406 = $arch$addr; $and495 = $406 & 7; $arrayidx496 = (_CELT_INNER_PROD_IMPL + ($and495<<2)|0); $407 = HEAP32[$arrayidx496>>2]|0; $408 = $Y; $409 = $N; $call497 = (+FUNCTION_TABLE_diii[$407 & 0]($vla47,$408,$409)); $mul498 = $405 * $call497; $add499 = $mul493 + $mul498; $dist1 = $add499; $410 = $dist0; $411 = $dist1; $cmp500 = $410 >= $411; if (!($cmp500)) { break L110; } $412 = $cm2; $x_cm = $412; $413 = $ec$addr; dest=$413; src=$ec_save2; stop=dest+48|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); dest=$ctx; src=$ctx_save2; stop=dest+60|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); $414 = $X; $415 = $N; $mul503 = $415<<2; $416 = $X; $sub$ptr$lhs$cast504 = $416; $sub$ptr$rhs$cast505 = $vla48; $sub$ptr$sub506 = (($sub$ptr$lhs$cast504) - ($sub$ptr$rhs$cast505))|0; $sub$ptr$div507 = (($sub$ptr$sub506|0) / 4)&-1; $mul508 = 0; $add509 = (($mul503) + ($mul508))|0; _memcpy(($414|0),($vla48|0),($add509|0))|0; $417 = $Y; $418 = $N; $mul510 = $418<<2; $419 = $Y; $sub$ptr$lhs$cast511 = $419; $sub$ptr$rhs$cast512 = $vla49; $sub$ptr$sub513 = (($sub$ptr$lhs$cast511) - ($sub$ptr$rhs$cast512))|0; $sub$ptr$div514 = (($sub$ptr$sub513|0) / 4)&-1; $mul515 = 0; $add516 = (($mul510) + ($mul515))|0; _memcpy(($417|0),($vla49|0),($add516|0))|0; $420 = $last; $tobool517 = ($420|0)!=(0); if (!($tobool517)) { $421 = $norm; $422 = $M; $423 = $eBands; $424 = $i; $arrayidx519 = (($423) + ($424<<1)|0); $425 = HEAP16[$arrayidx519>>1]|0; $conv520 = $425 << 16 >> 16; $mul521 = Math_imul($422, $conv520)|0; $add$ptr522 = (($421) + ($mul521<<2)|0); $426 = $norm_offset; $idx$neg523 = (0 - ($426))|0; $add$ptr524 = (($add$ptr522) + ($idx$neg523<<2)|0); $427 = $N; $mul525 = $427<<2; $428 = $norm; $429 = $M; $430 = $eBands; $431 = $i; $arrayidx526 = (($430) + ($431<<1)|0); $432 = HEAP16[$arrayidx526>>1]|0; $conv527 = $432 << 16 >> 16; $mul528 = Math_imul($429, $conv527)|0; $add$ptr529 = (($428) + ($mul528<<2)|0); $433 = $norm_offset; $idx$neg530 = (0 - ($433))|0; $add$ptr531 = (($add$ptr529) + ($idx$neg530<<2)|0); $sub$ptr$lhs$cast532 = $add$ptr531; $sub$ptr$rhs$cast533 = $vla50; $sub$ptr$sub534 = (($sub$ptr$lhs$cast532) - ($sub$ptr$rhs$cast533))|0; $sub$ptr$div535 = (($sub$ptr$sub534|0) / 4)&-1; $mul536 = 0; $add537 = (($mul525) + ($mul536))|0; _memcpy(($add$ptr524|0),($vla50|0),($add537|0))|0; } $434 = $bytes_buf; $435 = $save_bytes; $mul540 = $435; $436 = $bytes_buf; $sub$ptr$lhs$cast542 = $436; $sub$ptr$rhs$cast543 = $bytes_save; $sub$ptr$sub544 = (($sub$ptr$lhs$cast542) - ($sub$ptr$rhs$cast543))|0; $mul545 = 0; $add546 = (($mul540) + ($mul545))|0; _memcpy(($434|0),($bytes_save|0),($add546|0))|0; break L110; } } while(0); $theta_round549 = ((($ctx)) + 48|0); HEAP32[$theta_round549>>2] = 0; $437 = $X; $438 = $Y; $439 = $N; $440 = $b; $441 = $B; $442 = $effective_lowband; $cmp550 = ($442|0)!=(-1); if ($cmp550) { $443 = $norm; $444 = $effective_lowband; $add$ptr553 = (($443) + ($444<<2)|0); $cond556 = $add$ptr553; } else { $cond556 = 0; } $445 = $LM$addr; $446 = $last; $tobool557 = ($446|0)!=(0); if ($tobool557) { $cond567 = 0; } else { $447 = $norm; $448 = $M; $449 = $eBands; $450 = $i; $arrayidx560 = (($449) + ($450<<1)|0); $451 = HEAP16[$arrayidx560>>1]|0; $conv561 = $451 << 16 >> 16; $mul562 = Math_imul($448, $conv561)|0; $add$ptr563 = (($447) + ($mul562<<2)|0); $452 = $norm_offset; $idx$neg564 = (0 - ($452))|0; $add$ptr565 = (($add$ptr563) + ($idx$neg564<<2)|0); $cond567 = $add$ptr565; } $453 = $lowband_scratch; $454 = $x_cm; $455 = $y_cm; $or568 = $454 | $455; $call569 = (_quant_band_stereo($ctx,$437,$438,$439,$440,$441,$cond556,$445,$cond567,$453,$or568)|0); $x_cm = $call569; } else { $456 = $X; $457 = $N; $458 = $b; $459 = $B; $460 = $effective_lowband; $cmp572 = ($460|0)!=(-1); if ($cmp572) { $461 = $norm; $462 = $effective_lowband; $add$ptr575 = (($461) + ($462<<2)|0); $cond578 = $add$ptr575; } else { $cond578 = 0; } $463 = $LM$addr; $464 = $last; $tobool579 = ($464|0)!=(0); if ($tobool579) { $cond589 = 0; } else { $465 = $norm; $466 = $M; $467 = $eBands; $468 = $i; $arrayidx582 = (($467) + ($468<<1)|0); $469 = HEAP16[$arrayidx582>>1]|0; $conv583 = $469 << 16 >> 16; $mul584 = Math_imul($466, $conv583)|0; $add$ptr585 = (($465) + ($mul584<<2)|0); $470 = $norm_offset; $idx$neg586 = (0 - ($470))|0; $add$ptr587 = (($add$ptr585) + ($idx$neg586<<2)|0); $cond589 = $add$ptr587; } $471 = $lowband_scratch; $472 = $x_cm; $473 = $y_cm; $or590 = $472 | $473; $call591 = (_quant_band($ctx,$456,$457,$458,$459,$cond578,$463,$cond589,1.0,$471,$or590)|0); $x_cm = $call591; } } while(0); $474 = $x_cm; $y_cm = $474; } $475 = $x_cm; $conv594 = $475&255; $476 = $collapse_masks$addr; $477 = $i; $478 = $C; $mul595 = Math_imul($477, $478)|0; $add596 = (($mul595) + 0)|0; $arrayidx597 = (($476) + ($add596)|0); HEAP8[$arrayidx597>>0] = $conv594; $479 = $y_cm; $conv598 = $479&255; $480 = $collapse_masks$addr; $481 = $i; $482 = $C; $mul599 = Math_imul($481, $482)|0; $483 = $C; $add600 = (($mul599) + ($483))|0; $sub601 = (($add600) - 1)|0; $arrayidx602 = (($480) + ($sub601)|0); HEAP8[$arrayidx602>>0] = $conv598; $484 = $pulses$addr; $485 = $i; $arrayidx603 = (($484) + ($485<<2)|0); $486 = HEAP32[$arrayidx603>>2]|0; $487 = $tell; $add604 = (($486) + ($487))|0; $488 = $balance$addr; $add605 = (($488) + ($add604))|0; $balance$addr = $add605; $489 = $b; $490 = $N; $shl606 = $490 << 3; $cmp607 = ($489|0)>($shl606|0); $conv608 = $cmp607&1; $update_lowband = $conv608; $avoid_split_noise609 = ((($ctx)) + 56|0); HEAP32[$avoid_split_noise609>>2] = 0; $491 = $i; $inc611 = (($491) + 1)|0; $i = $inc611; } $seed613 = ((($ctx)) + 40|0); $492 = HEAP32[$seed613>>2]|0; $493 = $seed$addr; HEAP32[$493>>2] = $492; $494 = $saved_stack; _llvm_stackrestore(($494|0)); STACKTOP = sp;return; } function _celt_sudiv($n,$d) { $n = $n|0; $d = $d|0; var $0 = 0, $1 = 0, $d$addr = 0, $div = 0, $n$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $n$addr = $n; $d$addr = $d; $0 = $n$addr; $1 = $d$addr; $div = (($0|0) / ($1|0))&-1; STACKTOP = sp;return ($div|0); } function _special_hybrid_folding($m,$norm,$norm2,$start,$M,$dual_stereo) { $m = $m|0; $norm = $norm|0; $norm2 = $norm2|0; $start = $start|0; $M = $M|0; $dual_stereo = $dual_stereo|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; var $9 = 0, $M$addr = 0, $add = 0, $add23 = 0, $add39 = 0, $add4 = 0, $add7 = 0, $arrayidx = 0, $arrayidx12 = 0, $arrayidx15 = 0, $arrayidx18 = 0, $arrayidx2 = 0, $arrayidx21 = 0, $arrayidx24 = 0, $arrayidx27 = 0, $arrayidx30 = 0, $arrayidx33 = 0, $arrayidx5 = 0, $arrayidx8 = 0, $conv = 0; var $conv3 = 0, $conv6 = 0, $conv9 = 0, $dual_stereo$addr = 0, $eBands = 0, $eBands1 = 0, $m$addr = 0, $mul = 0, $mul11 = 0, $mul13 = 0, $mul17 = 0, $mul19 = 0, $mul22 = 0, $mul25 = 0, $mul29 = 0, $mul31 = 0, $mul38 = 0, $n1 = 0, $n2 = 0, $norm$addr = 0; var $norm2$addr = 0, $start$addr = 0, $sub = 0, $sub$ptr$div = 0, $sub$ptr$div37 = 0, $sub$ptr$lhs$cast = 0, $sub$ptr$lhs$cast34 = 0, $sub$ptr$rhs$cast = 0, $sub$ptr$rhs$cast35 = 0, $sub$ptr$sub = 0, $sub$ptr$sub36 = 0, $sub10 = 0, $sub14 = 0, $sub16 = 0, $sub20 = 0, $sub26 = 0, $sub28 = 0, $sub32 = 0, $tobool = 0, label = 0; var sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $m$addr = $m; $norm$addr = $norm; $norm2$addr = $norm2; $start$addr = $start; $M$addr = $M; $dual_stereo$addr = $dual_stereo; $0 = $m$addr; $eBands1 = ((($0)) + 32|0); $1 = HEAP32[$eBands1>>2]|0; $eBands = $1; $2 = $M$addr; $3 = $eBands; $4 = $start$addr; $add = (($4) + 1)|0; $arrayidx = (($3) + ($add<<1)|0); $5 = HEAP16[$arrayidx>>1]|0; $conv = $5 << 16 >> 16; $6 = $eBands; $7 = $start$addr; $arrayidx2 = (($6) + ($7<<1)|0); $8 = HEAP16[$arrayidx2>>1]|0; $conv3 = $8 << 16 >> 16; $sub = (($conv) - ($conv3))|0; $mul = Math_imul($2, $sub)|0; $n1 = $mul; $9 = $M$addr; $10 = $eBands; $11 = $start$addr; $add4 = (($11) + 2)|0; $arrayidx5 = (($10) + ($add4<<1)|0); $12 = HEAP16[$arrayidx5>>1]|0; $conv6 = $12 << 16 >> 16; $13 = $eBands; $14 = $start$addr; $add7 = (($14) + 1)|0; $arrayidx8 = (($13) + ($add7<<1)|0); $15 = HEAP16[$arrayidx8>>1]|0; $conv9 = $15 << 16 >> 16; $sub10 = (($conv6) - ($conv9))|0; $mul11 = Math_imul($9, $sub10)|0; $n2 = $mul11; $16 = $norm$addr; $17 = $n1; $arrayidx12 = (($16) + ($17<<2)|0); $18 = $norm$addr; $19 = $n1; $mul13 = $19<<1; $20 = $n2; $sub14 = (($mul13) - ($20))|0; $arrayidx15 = (($18) + ($sub14<<2)|0); $21 = $n2; $22 = $n1; $sub16 = (($21) - ($22))|0; $mul17 = $sub16<<2; $23 = $norm$addr; $24 = $n1; $arrayidx18 = (($23) + ($24<<2)|0); $25 = $norm$addr; $26 = $n1; $mul19 = $26<<1; $27 = $n2; $sub20 = (($mul19) - ($27))|0; $arrayidx21 = (($25) + ($sub20<<2)|0); $sub$ptr$lhs$cast = $arrayidx18; $sub$ptr$rhs$cast = $arrayidx21; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $sub$ptr$div = (($sub$ptr$sub|0) / 4)&-1; $mul22 = 0; $add23 = (($mul17) + ($mul22))|0; _memcpy(($arrayidx12|0),($arrayidx15|0),($add23|0))|0; $28 = $dual_stereo$addr; $tobool = ($28|0)!=(0); if (!($tobool)) { STACKTOP = sp;return; } $29 = $norm2$addr; $30 = $n1; $arrayidx24 = (($29) + ($30<<2)|0); $31 = $norm2$addr; $32 = $n1; $mul25 = $32<<1; $33 = $n2; $sub26 = (($mul25) - ($33))|0; $arrayidx27 = (($31) + ($sub26<<2)|0); $34 = $n2; $35 = $n1; $sub28 = (($34) - ($35))|0; $mul29 = $sub28<<2; $36 = $norm2$addr; $37 = $n1; $arrayidx30 = (($36) + ($37<<2)|0); $38 = $norm2$addr; $39 = $n1; $mul31 = $39<<1; $40 = $n2; $sub32 = (($mul31) - ($40))|0; $arrayidx33 = (($38) + ($sub32<<2)|0); $sub$ptr$lhs$cast34 = $arrayidx30; $sub$ptr$rhs$cast35 = $arrayidx33; $sub$ptr$sub36 = (($sub$ptr$lhs$cast34) - ($sub$ptr$rhs$cast35))|0; $sub$ptr$div37 = (($sub$ptr$sub36|0) / 4)&-1; $mul38 = 0; $add39 = (($mul29) + ($mul38))|0; _memcpy(($arrayidx24|0),($arrayidx27|0),($add39|0))|0; STACKTOP = sp;return; } function _quant_band($ctx,$X,$N,$b,$B,$lowband,$LM,$lowband_out,$gain,$lowband_scratch,$fill) { $ctx = $ctx|0; $X = $X|0; $N = $N|0; $b = $b|0; $B = $B|0; $lowband = $lowband|0; $LM = $LM|0; $lowband_out = $lowband_out|0; $gain = +$gain; $lowband_scratch = $lowband_scratch|0; $fill = $fill|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0.0, $132 = 0, $133 = 0; var $134 = 0.0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0; var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0; var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0; var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0; var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0.0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0; var $98 = 0, $99 = 0, $B$addr = 0, $B0 = 0, $LM$addr = 0, $N$addr = 0, $N0 = 0, $N_B = 0, $N_B0 = 0, $X$addr = 0, $add = 0, $and = 0, $and122 = 0, $and34 = 0, $and42 = 0, $arrayidx = 0, $arrayidx114 = 0, $arrayidx116 = 0, $arrayidx37 = 0, $arrayidx97 = 0; var $b$addr = 0, $call = 0, $call108 = 0.0, $call5 = 0, $call73 = 0, $cm = 0, $cmp = 0, $cmp111 = 0, $cmp13 = 0, $cmp16 = 0, $cmp19 = 0, $cmp24 = 0, $cmp3 = 0, $cmp43 = 0, $cmp45 = 0, $cmp59 = 0, $cmp6 = 0, $cmp76 = 0, $cmp83 = 0, $cmp94 = 0; var $conv = 0, $conv107 = 0.0, $conv109 = 0.0, $conv35 = 0, $conv38 = 0, $conv98 = 0, $ctx$addr = 0, $encode = 0, $fill$addr = 0, $gain$addr = 0.0, $inc = 0, $inc102 = 0, $inc118 = 0, $inc57 = 0, $inc58 = 0, $inc91 = 0, $j = 0, $k = 0, $longBlocks = 0, $lowband$addr = 0; var $lowband_out$addr = 0, $lowband_scratch$addr = 0, $mul = 0, $mul115 = 0.0, $mul22 = 0, $n = 0.0, $or = 0, $or$cond = 0, $or$cond1 = 0, $or$cond2 = 0, $or54 = 0, $or89 = 0, $recombine = 0, $resynth = 0, $retval = 0, $shl = 0, $shl100 = 0, $shl104 = 0, $shl121 = 0, $shl32 = 0; var $shl39 = 0, $shl41 = 0, $shl53 = 0, $shl55 = 0, $shl65 = 0, $shl70 = 0, $shl80 = 0, $shl87 = 0, $shr = 0, $shr31 = 0, $shr36 = 0, $shr40 = 0, $shr56 = 0, $shr64 = 0, $shr69 = 0, $shr79 = 0, $shr86 = 0, $shr88 = 0, $shr99 = 0, $sub = 0; var $sub$ptr$div = 0, $sub$ptr$lhs$cast = 0, $sub$ptr$rhs$cast = 0, $sub$ptr$sub = 0, $tf_change = 0, $tf_change2 = 0, $time_divide = 0, $tobool = 0, $tobool10 = 0, $tobool105 = 0, $tobool12 = 0, $tobool26 = 0, $tobool29 = 0, $tobool47 = 0, $tobool50 = 0, $tobool62 = 0, $tobool67 = 0, $tobool74 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 112|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(112|0); $ctx$addr = $ctx; $X$addr = $X; $N$addr = $N; $b$addr = $b; $B$addr = $B; $lowband$addr = $lowband; $LM$addr = $LM; $lowband_out$addr = $lowband_out; $gain$addr = $gain; $lowband_scratch$addr = $lowband_scratch; $fill$addr = $fill; $0 = $N$addr; $N0 = $0; $1 = $N$addr; $N_B = $1; $2 = $B$addr; $B0 = $2; $time_divide = 0; $recombine = 0; $cm = 0; $3 = $ctx$addr; $4 = HEAP32[$3>>2]|0; $encode = $4; $5 = $ctx$addr; $tf_change2 = ((($5)) + 24|0); $6 = HEAP32[$tf_change2>>2]|0; $tf_change = $6; $7 = $B0; $cmp = ($7|0)==(1); $conv = $cmp&1; $longBlocks = $conv; $8 = $N_B; $9 = $B$addr; $call = (_celt_udiv_365($8,$9)|0); $N_B = $call; $10 = $N$addr; $cmp3 = ($10|0)==(1); if ($cmp3) { $11 = $ctx$addr; $12 = $X$addr; $13 = $b$addr; $14 = $lowband_out$addr; $call5 = (_quant_band_n1($11,$12,0,$13,$14)|0); $retval = $call5; $141 = $retval; STACKTOP = sp;return ($141|0); } $15 = $tf_change; $cmp6 = ($15|0)>(0); if ($cmp6) { $16 = $tf_change; $recombine = $16; } $17 = $lowband_scratch$addr; $tobool = ($17|0)!=(0|0); $18 = $lowband$addr; $tobool10 = ($18|0)!=(0|0); $or$cond = $tobool & $tobool10; do { if ($or$cond) { $19 = $recombine; $tobool12 = ($19|0)!=(0); if (!($tobool12)) { $20 = $N_B; $and = $20 & 1; $cmp13 = ($and|0)==(0); $21 = $tf_change; $cmp16 = ($21|0)<(0); $or$cond1 = $cmp13 & $cmp16; $22 = $B0; $cmp19 = ($22|0)>(1); $or$cond2 = $or$cond1 | $cmp19; if (!($or$cond2)) { break; } } $23 = $lowband_scratch$addr; $24 = $lowband$addr; $25 = $N$addr; $mul = $25<<2; $26 = $lowband_scratch$addr; $27 = $lowband$addr; $sub$ptr$lhs$cast = $26; $sub$ptr$rhs$cast = $27; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $sub$ptr$div = (($sub$ptr$sub|0) / 4)&-1; $mul22 = 0; $add = (($mul) + ($mul22))|0; _memcpy(($23|0),($24|0),($add|0))|0; $28 = $lowband_scratch$addr; $lowband$addr = $28; } } while(0); $k = 0; while(1) { $29 = $k; $30 = $recombine; $cmp24 = ($29|0)<($30|0); if (!($cmp24)) { break; } $31 = $encode; $tobool26 = ($31|0)!=(0); if ($tobool26) { $32 = $X$addr; $33 = $N$addr; $34 = $k; $shr = $33 >> $34; $35 = $k; $shl = 1 << $35; _haar1($32,$shr,$shl); } $36 = $lowband$addr; $tobool29 = ($36|0)!=(0|0); if ($tobool29) { $37 = $lowband$addr; $38 = $N$addr; $39 = $k; $shr31 = $38 >> $39; $40 = $k; $shl32 = 1 << $40; _haar1($37,$shr31,$shl32); } $41 = $fill$addr; $and34 = $41 & 15; $arrayidx = (34054 + ($and34)|0); $42 = HEAP8[$arrayidx>>0]|0; $conv35 = $42&255; $43 = $fill$addr; $shr36 = $43 >> 4; $arrayidx37 = (34054 + ($shr36)|0); $44 = HEAP8[$arrayidx37>>0]|0; $conv38 = $44&255; $shl39 = $conv38 << 2; $or = $conv35 | $shl39; $fill$addr = $or; $45 = $k; $inc = (($45) + 1)|0; $k = $inc; } $46 = $recombine; $47 = $B$addr; $shr40 = $47 >> $46; $B$addr = $shr40; $48 = $recombine; $49 = $N_B; $shl41 = $49 << $48; $N_B = $shl41; while(1) { $50 = $N_B; $and42 = $50 & 1; $cmp43 = ($and42|0)==(0); $51 = $tf_change; $cmp45 = ($51|0)<(0); $52 = $cmp43 ? $cmp45 : 0; if (!($52)) { break; } $53 = $encode; $tobool47 = ($53|0)!=(0); if ($tobool47) { $54 = $X$addr; $55 = $N_B; $56 = $B$addr; _haar1($54,$55,$56); } $57 = $lowband$addr; $tobool50 = ($57|0)!=(0|0); if ($tobool50) { $58 = $lowband$addr; $59 = $N_B; $60 = $B$addr; _haar1($58,$59,$60); } $61 = $fill$addr; $62 = $B$addr; $shl53 = $61 << $62; $63 = $fill$addr; $or54 = $63 | $shl53; $fill$addr = $or54; $64 = $B$addr; $shl55 = $64 << 1; $B$addr = $shl55; $65 = $N_B; $shr56 = $65 >> 1; $N_B = $shr56; $66 = $time_divide; $inc57 = (($66) + 1)|0; $time_divide = $inc57; $67 = $tf_change; $inc58 = (($67) + 1)|0; $tf_change = $inc58; } $68 = $B$addr; $B0 = $68; $69 = $N_B; $N_B0 = $69; $70 = $B0; $cmp59 = ($70|0)>(1); if ($cmp59) { $71 = $encode; $tobool62 = ($71|0)!=(0); if ($tobool62) { $72 = $X$addr; $73 = $N_B; $74 = $recombine; $shr64 = $73 >> $74; $75 = $B0; $76 = $recombine; $shl65 = $75 << $76; $77 = $longBlocks; _deinterleave_hadamard($72,$shr64,$shl65,$77); } $78 = $lowband$addr; $tobool67 = ($78|0)!=(0|0); if ($tobool67) { $79 = $lowband$addr; $80 = $N_B; $81 = $recombine; $shr69 = $80 >> $81; $82 = $B0; $83 = $recombine; $shl70 = $82 << $83; $84 = $longBlocks; _deinterleave_hadamard($79,$shr69,$shl70,$84); } } $85 = $ctx$addr; $86 = $X$addr; $87 = $N$addr; $88 = $b$addr; $89 = $B$addr; $90 = $lowband$addr; $91 = $LM$addr; $92 = $gain$addr; $93 = $fill$addr; $call73 = (_quant_partition($85,$86,$87,$88,$89,$90,$91,$92,$93)|0); $cm = $call73; $94 = $ctx$addr; $resynth = ((($94)) + 4|0); $95 = HEAP32[$resynth>>2]|0; $tobool74 = ($95|0)!=(0); if ($tobool74) { $96 = $B0; $cmp76 = ($96|0)>(1); if ($cmp76) { $97 = $X$addr; $98 = $N_B; $99 = $recombine; $shr79 = $98 >> $99; $100 = $B0; $101 = $recombine; $shl80 = $100 << $101; $102 = $longBlocks; _interleave_hadamard($97,$shr79,$shl80,$102); } $103 = $N_B0; $N_B = $103; $104 = $B0; $B$addr = $104; $k = 0; while(1) { $105 = $k; $106 = $time_divide; $cmp83 = ($105|0)<($106|0); if (!($cmp83)) { break; } $107 = $B$addr; $shr86 = $107 >> 1; $B$addr = $shr86; $108 = $N_B; $shl87 = $108 << 1; $N_B = $shl87; $109 = $cm; $110 = $B$addr; $shr88 = $109 >>> $110; $111 = $cm; $or89 = $111 | $shr88; $cm = $or89; $112 = $X$addr; $113 = $N_B; $114 = $B$addr; _haar1($112,$113,$114); $115 = $k; $inc91 = (($115) + 1)|0; $k = $inc91; } $k = 0; while(1) { $116 = $k; $117 = $recombine; $cmp94 = ($116|0)<($117|0); if (!($cmp94)) { break; } $118 = $cm; $arrayidx97 = (34070 + ($118)|0); $119 = HEAP8[$arrayidx97>>0]|0; $conv98 = $119&255; $cm = $conv98; $120 = $X$addr; $121 = $N0; $122 = $k; $shr99 = $121 >> $122; $123 = $k; $shl100 = 1 << $123; _haar1($120,$shr99,$shl100); $124 = $k; $inc102 = (($124) + 1)|0; $k = $inc102; } $125 = $recombine; $126 = $B$addr; $shl104 = $126 << $125; $B$addr = $shl104; $127 = $lowband_out$addr; $tobool105 = ($127|0)!=(0|0); L54: do { if ($tobool105) { $128 = $N0; $conv107 = (+($128|0)); $call108 = (+Math_sqrt((+$conv107))); $conv109 = $call108; $n = $conv109; $j = 0; while(1) { $129 = $j; $130 = $N0; $cmp111 = ($129|0)<($130|0); if (!($cmp111)) { break L54; } $131 = $n; $132 = $X$addr; $133 = $j; $arrayidx114 = (($132) + ($133<<2)|0); $134 = +HEAPF32[$arrayidx114>>2]; $mul115 = $131 * $134; $135 = $lowband_out$addr; $136 = $j; $arrayidx116 = (($135) + ($136<<2)|0); HEAPF32[$arrayidx116>>2] = $mul115; $137 = $j; $inc118 = (($137) + 1)|0; $j = $inc118; } } } while(0); $138 = $B$addr; $shl121 = 1 << $138; $sub = (($shl121) - 1)|0; $139 = $cm; $and122 = $139 & $sub; $cm = $and122; } $140 = $cm; $retval = $140; $141 = $retval; STACKTOP = sp;return ($141|0); } function _compute_channel_weights($Ex,$Ey,$w) { $Ex = +$Ex; $Ey = +$Ey; $w = $w|0; var $0 = 0.0, $1 = 0.0, $10 = 0.0, $11 = 0, $2 = 0.0, $3 = 0.0, $4 = 0.0, $5 = 0.0, $6 = 0.0, $7 = 0.0, $8 = 0.0, $9 = 0, $Ex$addr = 0.0, $Ey$addr = 0.0, $add = 0.0, $add2 = 0.0, $arrayidx3 = 0, $cmp = 0, $cond = 0.0, $div = 0.0; var $div1 = 0.0, $minE = 0.0, $w$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $Ex$addr = $Ex; $Ey$addr = $Ey; $w$addr = $w; $0 = $Ex$addr; $1 = $Ey$addr; $cmp = $0 < $1; $2 = $Ex$addr; $3 = $Ey$addr; $cond = $cmp ? $2 : $3; $minE = $cond; $4 = $Ex$addr; $5 = $minE; $div = $5 / 3.0; $add = $4 + $div; $Ex$addr = $add; $6 = $Ey$addr; $7 = $minE; $div1 = $7 / 3.0; $add2 = $6 + $div1; $Ey$addr = $add2; $8 = $Ex$addr; $9 = $w$addr; HEAPF32[$9>>2] = $8; $10 = $Ey$addr; $11 = $w$addr; $arrayidx3 = ((($11)) + 4|0); HEAPF32[$arrayidx3>>2] = $10; STACKTOP = sp;return; } function _quant_band_stereo($ctx,$X,$Y,$N,$b,$B,$lowband,$LM,$lowband_out,$lowband_scratch,$fill) { $ctx = $ctx|0; $X = $X|0; $Y = $Y|0; $N = $N|0; $b = $b|0; $B = $B|0; $lowband = $lowband|0; $LM = $LM|0; $lowband_out = $lowband_out|0; $lowband_scratch = $lowband_scratch|0; $fill = $fill|0; var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0.0, $102 = 0, $103 = 0, $104 = 0.0, $105 = 0.0, $106 = 0, $107 = 0.0, $108 = 0, $109 = 0.0, $11 = 0, $110 = 0, $111 = 0.0, $112 = 0, $113 = 0, $114 = 0; var $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0; var $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0; var $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0.0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0.0, $166 = 0, $167 = 0, $168 = 0, $169 = 0; var $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0; var $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0.0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0.0, $202 = 0, $203 = 0, $204 = 0; var $205 = 0, $206 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0; var $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0.0, $47 = 0, $48 = 0.0, $49 = 0, $5 = 0, $50 = 0.0, $51 = 0, $52 = 0.0, $53 = 0, $54 = 0, $55 = 0; var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0.0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0.0; var $74 = 0, $75 = 0, $76 = 0, $77 = 0.0, $78 = 0, $79 = 0.0, $8 = 0, $80 = 0, $81 = 0.0, $82 = 0, $83 = 0.0, $84 = 0, $85 = 0.0, $86 = 0, $87 = 0.0, $88 = 0, $89 = 0.0, $9 = 0, $90 = 0, $91 = 0.0; var $92 = 0, $93 = 0, $94 = 0.0, $95 = 0.0, $96 = 0, $97 = 0.0, $98 = 0, $99 = 0.0, $B$addr = 0, $LM$addr = 0, $N$addr = 0, $X$addr = 0, $Y$addr = 0, $add = 0, $add128 = 0, $add144 = 0, $add74 = 0.0, $add81 = 0.0, $arch = 0, $arrayidx161 = 0; var $arrayidx163 = 0, $arrayidx32 = 0, $arrayidx34 = 0, $arrayidx48 = 0, $arrayidx54 = 0, $arrayidx60 = 0, $arrayidx62 = 0, $arrayidx66 = 0, $arrayidx68 = 0, $arrayidx76 = 0, $arrayidx77 = 0, $arrayidx79 = 0, $arrayidx80 = 0, $arrayidx82 = 0, $b$addr = 0, $c = 0, $call = 0, $call117 = 0, $call130 = 0, $call133 = 0; var $call146 = 0, $call40 = 0, $call45 = 0, $cm = 0, $cmp = 0, $cmp100 = 0, $cmp11 = 0, $cmp114 = 0, $cmp121 = 0, $cmp124 = 0, $cmp137 = 0, $cmp14 = 0, $cmp140 = 0, $cmp153 = 0, $cmp159 = 0, $cmp16 = 0, $cmp20 = 0, $cmp38 = 0, $cmp86 = 0, $cmp94 = 0; var $cond = 0, $cond109 = 0, $cond27 = 0, $cond93 = 0, $conv = 0.0, $conv21 = 0, $conv39 = 0, $conv47 = 0.0, $conv51 = 0.0, $conv9 = 0.0, $ctx$addr = 0, $delta = 0, $delta6 = 0, $div = 0, $div105 = 0, $div91 = 0, $div99 = 0, $ec = 0, $ec2 = 0, $encode = 0; var $fill$addr = 0, $imid = 0, $imid4 = 0, $inc = 0, $inv = 0, $iside = 0, $iside5 = 0, $itheta = 0, $itheta7 = 0, $j = 0, $lowband$addr = 0, $lowband_out$addr = 0, $lowband_scratch$addr = 0, $mbits = 0, $mid = 0.0, $mul = 0.0, $mul10 = 0.0, $mul33 = 0.0, $mul36 = 0.0, $mul43 = 0; var $mul49 = 0.0, $mul53 = 0.0, $mul58 = 0.0, $mul61 = 0.0, $mul64 = 0.0, $mul67 = 0.0, $or = 0, $or$cond = 0, $or$cond1 = 0, $or$cond2 = 0, $or147 = 0, $orig_fill = 0, $qalloc = 0, $qalloc8 = 0, $rebalance = 0, $remaining_bits = 0, $remaining_bits111 = 0, $remaining_bits113 = 0, $remaining_bits118 = 0, $remaining_bits134 = 0; var $resynth = 0, $resynth150 = 0, $retval = 0, $sbits = 0, $sctx = 0, $shr = 0, $shr132 = 0, $side = 0.0, $sign = 0, $sub = 0, $sub104 = 0, $sub110 = 0, $sub112 = 0, $sub119 = 0, $sub120 = 0, $sub127 = 0, $sub135 = 0, $sub136 = 0, $sub143 = 0, $sub162 = 0.0; var $sub22 = 0, $sub37 = 0.0, $sub44 = 0, $sub46 = 0, $sub71 = 0.0, $sub78 = 0.0, $sub85 = 0, $sub90 = 0, $sub98 = 0, $tmp = 0.0, $tobool = 0, $tobool151 = 0, $tobool157 = 0, $tobool23 = 0, $tobool28 = 0, $tobool30 = 0, $tobool55 = 0, $x2 = 0, $y2 = 0, label = 0; var sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 160|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(160|0); $b$addr = sp + 132|0; $fill$addr = sp + 108|0; $sctx = sp + 40|0; $ctx$addr = $ctx; $X$addr = $X; $Y$addr = $Y; $N$addr = $N; HEAP32[$b$addr>>2] = $b; $B$addr = $B; $lowband$addr = $lowband; $LM$addr = $LM; $lowband_out$addr = $lowband_out; $lowband_scratch$addr = $lowband_scratch; HEAP32[$fill$addr>>2] = $fill; $imid = 0; $iside = 0; $inv = 0; $mid = 0.0; $side = 0.0; $cm = 0; $0 = $ctx$addr; $1 = HEAP32[$0>>2]|0; $encode = $1; $2 = $ctx$addr; $ec2 = ((($2)) + 28|0); $3 = HEAP32[$ec2>>2]|0; $ec = $3; $4 = $N$addr; $cmp = ($4|0)==(1); if ($cmp) { $5 = $ctx$addr; $6 = $X$addr; $7 = $Y$addr; $8 = HEAP32[$b$addr>>2]|0; $9 = $lowband_out$addr; $call = (_quant_band_n1($5,$6,$7,$8,$9)|0); $retval = $call; $206 = $retval; STACKTOP = sp;return ($206|0); } $10 = HEAP32[$fill$addr>>2]|0; $orig_fill = $10; $11 = $ctx$addr; $12 = $X$addr; $13 = $Y$addr; $14 = $N$addr; $15 = $B$addr; $16 = $B$addr; $17 = $LM$addr; _compute_theta($11,$sctx,$12,$13,$14,$b$addr,$15,$16,$17,1,$fill$addr); $18 = HEAP32[$sctx>>2]|0; $inv = $18; $imid4 = ((($sctx)) + 4|0); $19 = HEAP32[$imid4>>2]|0; $imid = $19; $iside5 = ((($sctx)) + 8|0); $20 = HEAP32[$iside5>>2]|0; $iside = $20; $delta6 = ((($sctx)) + 12|0); $21 = HEAP32[$delta6>>2]|0; $delta = $21; $itheta7 = ((($sctx)) + 16|0); $22 = HEAP32[$itheta7>>2]|0; $itheta = $22; $qalloc8 = ((($sctx)) + 20|0); $23 = HEAP32[$qalloc8>>2]|0; $qalloc = $23; $24 = $imid; $conv = (+($24|0)); $mul = 3.0517578125E-5 * $conv; $mid = $mul; $25 = $iside; $conv9 = (+($25|0)); $mul10 = 3.0517578125E-5 * $conv9; $side = $mul10; $26 = $N$addr; $cmp11 = ($26|0)==(2); do { if ($cmp11) { $sign = 0; $27 = HEAP32[$b$addr>>2]|0; $mbits = $27; $sbits = 0; $28 = $itheta; $cmp14 = ($28|0)!=(0); $29 = $itheta; $cmp16 = ($29|0)!=(16384); $or$cond = $cmp14 & $cmp16; $$ = $or$cond ? 8 : 0; $sbits = $$; $30 = $sbits; $31 = $mbits; $sub = (($31) - ($30))|0; $mbits = $sub; $32 = $itheta; $cmp20 = ($32|0)>(8192); $conv21 = $cmp20&1; $c = $conv21; $33 = $qalloc; $34 = $sbits; $add = (($33) + ($34))|0; $35 = $ctx$addr; $remaining_bits = ((($35)) + 32|0); $36 = HEAP32[$remaining_bits>>2]|0; $sub22 = (($36) - ($add))|0; HEAP32[$remaining_bits>>2] = $sub22; $37 = $c; $tobool = ($37|0)!=(0); $38 = $Y$addr; $39 = $X$addr; $cond = $tobool ? $38 : $39; $x2 = $cond; $40 = $c; $tobool23 = ($40|0)!=(0); $41 = $X$addr; $42 = $Y$addr; $cond27 = $tobool23 ? $41 : $42; $y2 = $cond27; $43 = $sbits; $tobool28 = ($43|0)!=(0); do { if ($tobool28) { $44 = $encode; $tobool30 = ($44|0)!=(0); if ($tobool30) { $45 = $x2; $46 = +HEAPF32[$45>>2]; $47 = $y2; $arrayidx32 = ((($47)) + 4|0); $48 = +HEAPF32[$arrayidx32>>2]; $mul33 = $46 * $48; $49 = $x2; $arrayidx34 = ((($49)) + 4|0); $50 = +HEAPF32[$arrayidx34>>2]; $51 = $y2; $52 = +HEAPF32[$51>>2]; $mul36 = $50 * $52; $sub37 = $mul33 - $mul36; $cmp38 = $sub37 < 0.0; $conv39 = $cmp38&1; $sign = $conv39; $53 = $ec; $54 = $sign; _ec_enc_bits($53,$54,1); break; } else { $55 = $ec; $call40 = (_ec_dec_bits($55,1)|0); $sign = $call40; break; } } } while(0); $56 = $sign; $mul43 = $56<<1; $sub44 = (1 - ($mul43))|0; $sign = $sub44; $57 = $ctx$addr; $58 = $x2; $59 = $N$addr; $60 = $mbits; $61 = $B$addr; $62 = $lowband$addr; $63 = $LM$addr; $64 = $lowband_out$addr; $65 = $lowband_scratch$addr; $66 = $orig_fill; $call45 = (_quant_band($57,$58,$59,$60,$61,$62,$63,$64,1.0,$65,$66)|0); $cm = $call45; $67 = $sign; $sub46 = (0 - ($67))|0; $conv47 = (+($sub46|0)); $68 = $x2; $arrayidx48 = ((($68)) + 4|0); $69 = +HEAPF32[$arrayidx48>>2]; $mul49 = $conv47 * $69; $70 = $y2; HEAPF32[$70>>2] = $mul49; $71 = $sign; $conv51 = (+($71|0)); $72 = $x2; $73 = +HEAPF32[$72>>2]; $mul53 = $conv51 * $73; $74 = $y2; $arrayidx54 = ((($74)) + 4|0); HEAPF32[$arrayidx54>>2] = $mul53; $75 = $ctx$addr; $resynth = ((($75)) + 4|0); $76 = HEAP32[$resynth>>2]|0; $tobool55 = ($76|0)!=(0); if ($tobool55) { $77 = $mid; $78 = $X$addr; $79 = +HEAPF32[$78>>2]; $mul58 = $77 * $79; $80 = $X$addr; HEAPF32[$80>>2] = $mul58; $81 = $mid; $82 = $X$addr; $arrayidx60 = ((($82)) + 4|0); $83 = +HEAPF32[$arrayidx60>>2]; $mul61 = $81 * $83; $84 = $X$addr; $arrayidx62 = ((($84)) + 4|0); HEAPF32[$arrayidx62>>2] = $mul61; $85 = $side; $86 = $Y$addr; $87 = +HEAPF32[$86>>2]; $mul64 = $85 * $87; $88 = $Y$addr; HEAPF32[$88>>2] = $mul64; $89 = $side; $90 = $Y$addr; $arrayidx66 = ((($90)) + 4|0); $91 = +HEAPF32[$arrayidx66>>2]; $mul67 = $89 * $91; $92 = $Y$addr; $arrayidx68 = ((($92)) + 4|0); HEAPF32[$arrayidx68>>2] = $mul67; $93 = $X$addr; $94 = +HEAPF32[$93>>2]; $tmp = $94; $95 = $tmp; $96 = $Y$addr; $97 = +HEAPF32[$96>>2]; $sub71 = $95 - $97; $98 = $X$addr; HEAPF32[$98>>2] = $sub71; $99 = $tmp; $100 = $Y$addr; $101 = +HEAPF32[$100>>2]; $add74 = $99 + $101; $102 = $Y$addr; HEAPF32[$102>>2] = $add74; $103 = $X$addr; $arrayidx76 = ((($103)) + 4|0); $104 = +HEAPF32[$arrayidx76>>2]; $tmp = $104; $105 = $tmp; $106 = $Y$addr; $arrayidx77 = ((($106)) + 4|0); $107 = +HEAPF32[$arrayidx77>>2]; $sub78 = $105 - $107; $108 = $X$addr; $arrayidx79 = ((($108)) + 4|0); HEAPF32[$arrayidx79>>2] = $sub78; $109 = $tmp; $110 = $Y$addr; $arrayidx80 = ((($110)) + 4|0); $111 = +HEAPF32[$arrayidx80>>2]; $add81 = $109 + $111; $112 = $Y$addr; $arrayidx82 = ((($112)) + 4|0); HEAPF32[$arrayidx82>>2] = $add81; } } else { $113 = HEAP32[$b$addr>>2]|0; $114 = HEAP32[$b$addr>>2]|0; $115 = $delta; $sub85 = (($114) - ($115))|0; $div = (($sub85|0) / 2)&-1; $cmp86 = ($113|0)<($div|0); $116 = HEAP32[$b$addr>>2]|0; if ($cmp86) { $cond93 = $116; } else { $117 = $delta; $sub90 = (($116) - ($117))|0; $div91 = (($sub90|0) / 2)&-1; $cond93 = $div91; } $cmp94 = (0)>($cond93|0); if ($cmp94) { $cond109 = 0; } else { $118 = HEAP32[$b$addr>>2]|0; $119 = HEAP32[$b$addr>>2]|0; $120 = $delta; $sub98 = (($119) - ($120))|0; $div99 = (($sub98|0) / 2)&-1; $cmp100 = ($118|0)<($div99|0); $121 = HEAP32[$b$addr>>2]|0; if ($cmp100) { $cond109 = $121; } else { $122 = $delta; $sub104 = (($121) - ($122))|0; $div105 = (($sub104|0) / 2)&-1; $cond109 = $div105; } } $mbits = $cond109; $123 = HEAP32[$b$addr>>2]|0; $124 = $mbits; $sub110 = (($123) - ($124))|0; $sbits = $sub110; $125 = $qalloc; $126 = $ctx$addr; $remaining_bits111 = ((($126)) + 32|0); $127 = HEAP32[$remaining_bits111>>2]|0; $sub112 = (($127) - ($125))|0; HEAP32[$remaining_bits111>>2] = $sub112; $128 = $ctx$addr; $remaining_bits113 = ((($128)) + 32|0); $129 = HEAP32[$remaining_bits113>>2]|0; $rebalance = $129; $130 = $mbits; $131 = $sbits; $cmp114 = ($130|0)>=($131|0); $132 = $ctx$addr; if ($cmp114) { $133 = $X$addr; $134 = $N$addr; $135 = $mbits; $136 = $B$addr; $137 = $lowband$addr; $138 = $LM$addr; $139 = $lowband_out$addr; $140 = $lowband_scratch$addr; $141 = HEAP32[$fill$addr>>2]|0; $call117 = (_quant_band($132,$133,$134,$135,$136,$137,$138,$139,1.0,$140,$141)|0); $cm = $call117; $142 = $mbits; $143 = $rebalance; $144 = $ctx$addr; $remaining_bits118 = ((($144)) + 32|0); $145 = HEAP32[$remaining_bits118>>2]|0; $sub119 = (($143) - ($145))|0; $sub120 = (($142) - ($sub119))|0; $rebalance = $sub120; $146 = $rebalance; $cmp121 = ($146|0)>(24); $147 = $itheta; $cmp124 = ($147|0)!=(0); $or$cond1 = $cmp121 & $cmp124; if ($or$cond1) { $148 = $rebalance; $sub127 = (($148) - 24)|0; $149 = $sbits; $add128 = (($149) + ($sub127))|0; $sbits = $add128; } $150 = $ctx$addr; $151 = $Y$addr; $152 = $N$addr; $153 = $sbits; $154 = $B$addr; $155 = $LM$addr; $156 = $side; $157 = HEAP32[$fill$addr>>2]|0; $158 = $B$addr; $shr = $157 >> $158; $call130 = (_quant_band($150,$151,$152,$153,$154,0,$155,0,$156,0,$shr)|0); $159 = $cm; $or = $159 | $call130; $cm = $or; break; } else { $160 = $Y$addr; $161 = $N$addr; $162 = $sbits; $163 = $B$addr; $164 = $LM$addr; $165 = $side; $166 = HEAP32[$fill$addr>>2]|0; $167 = $B$addr; $shr132 = $166 >> $167; $call133 = (_quant_band($132,$160,$161,$162,$163,0,$164,0,$165,0,$shr132)|0); $cm = $call133; $168 = $sbits; $169 = $rebalance; $170 = $ctx$addr; $remaining_bits134 = ((($170)) + 32|0); $171 = HEAP32[$remaining_bits134>>2]|0; $sub135 = (($169) - ($171))|0; $sub136 = (($168) - ($sub135))|0; $rebalance = $sub136; $172 = $rebalance; $cmp137 = ($172|0)>(24); $173 = $itheta; $cmp140 = ($173|0)!=(16384); $or$cond2 = $cmp137 & $cmp140; if ($or$cond2) { $174 = $rebalance; $sub143 = (($174) - 24)|0; $175 = $mbits; $add144 = (($175) + ($sub143))|0; $mbits = $add144; } $176 = $ctx$addr; $177 = $X$addr; $178 = $N$addr; $179 = $mbits; $180 = $B$addr; $181 = $lowband$addr; $182 = $LM$addr; $183 = $lowband_out$addr; $184 = $lowband_scratch$addr; $185 = HEAP32[$fill$addr>>2]|0; $call146 = (_quant_band($176,$177,$178,$179,$180,$181,$182,$183,1.0,$184,$185)|0); $186 = $cm; $or147 = $186 | $call146; $cm = $or147; break; } } } while(0); $187 = $ctx$addr; $resynth150 = ((($187)) + 4|0); $188 = HEAP32[$resynth150>>2]|0; $tobool151 = ($188|0)!=(0); L32: do { if ($tobool151) { $189 = $N$addr; $cmp153 = ($189|0)!=(2); if ($cmp153) { $190 = $X$addr; $191 = $Y$addr; $192 = $mid; $193 = $N$addr; $194 = $ctx$addr; $arch = ((($194)) + 44|0); $195 = HEAP32[$arch>>2]|0; _stereo_merge($190,$191,$192,$193,$195); } $196 = $inv; $tobool157 = ($196|0)!=(0); if ($tobool157) { $j = 0; while(1) { $197 = $j; $198 = $N$addr; $cmp159 = ($197|0)<($198|0); if (!($cmp159)) { break L32; } $199 = $Y$addr; $200 = $j; $arrayidx161 = (($199) + ($200<<2)|0); $201 = +HEAPF32[$arrayidx161>>2]; $sub162 = - $201; $202 = $Y$addr; $203 = $j; $arrayidx163 = (($202) + ($203<<2)|0); HEAPF32[$arrayidx163>>2] = $sub162; $204 = $j; $inc = (($204) + 1)|0; $j = $inc; } } } } while(0); $205 = $cm; $retval = $205; $206 = $retval; STACKTOP = sp;return ($206|0); } function _quant_band_n1($ctx,$X,$Y,$b,$lowband_out) { $ctx = $ctx|0; $X = $X|0; $Y = $Y|0; $b = $b|0; $lowband_out = $lowband_out|0; var $0 = 0, $1 = 0, $10 = 0.0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0.0; var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $X$addr = 0, $Y$addr = 0, $add = 0, $b$addr = 0, $c = 0, $call = 0, $cmp = 0, $cmp16 = 0, $cmp3 = 0, $cmp6 = 0, $cond = 0.0, $conv = 0; var $conv7 = 0, $ctx$addr = 0, $ec = 0, $ec2 = 0, $encode = 0, $inc = 0, $lowband_out$addr = 0, $remaining_bits = 0, $remaining_bits8 = 0, $resynth = 0, $sign = 0, $stereo = 0, $sub = 0, $sub9 = 0, $tobool = 0, $tobool11 = 0, $tobool13 = 0, $tobool18 = 0, $x = 0, label = 0; var sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $ctx$addr = $ctx; $X$addr = $X; $Y$addr = $Y; $b$addr = $b; $lowband_out$addr = $lowband_out; $0 = $X$addr; $x = $0; $1 = $ctx$addr; $2 = HEAP32[$1>>2]|0; $encode = $2; $3 = $ctx$addr; $ec2 = ((($3)) + 28|0); $4 = HEAP32[$ec2>>2]|0; $ec = $4; $5 = $Y$addr; $cmp = ($5|0)!=(0|0); $conv = $cmp&1; $stereo = $conv; $c = 0; while(1) { $sign = 0; $6 = $ctx$addr; $remaining_bits = ((($6)) + 32|0); $7 = HEAP32[$remaining_bits>>2]|0; $cmp3 = ($7|0)>=(8); if ($cmp3) { $8 = $encode; $tobool = ($8|0)!=(0); if ($tobool) { $9 = $x; $10 = +HEAPF32[$9>>2]; $cmp6 = $10 < 0.0; $conv7 = $cmp6&1; $sign = $conv7; $11 = $ec; $12 = $sign; _ec_enc_bits($11,$12,1); } else { $13 = $ec; $call = (_ec_dec_bits($13,1)|0); $sign = $call; } $14 = $ctx$addr; $remaining_bits8 = ((($14)) + 32|0); $15 = HEAP32[$remaining_bits8>>2]|0; $sub = (($15) - 8)|0; HEAP32[$remaining_bits8>>2] = $sub; $16 = $b$addr; $sub9 = (($16) - 8)|0; $b$addr = $sub9; } $17 = $ctx$addr; $resynth = ((($17)) + 4|0); $18 = HEAP32[$resynth>>2]|0; $tobool11 = ($18|0)!=(0); if ($tobool11) { $19 = $sign; $tobool13 = ($19|0)!=(0); $cond = $tobool13 ? -1.0 : 1.0; $20 = $x; HEAPF32[$20>>2] = $cond; } $21 = $Y$addr; $x = $21; $22 = $c; $inc = (($22) + 1)|0; $c = $inc; $23 = $stereo; $add = (1 + ($23))|0; $cmp16 = ($inc|0)<($add|0); if (!($cmp16)) { break; } } $24 = $lowband_out$addr; $tobool18 = ($24|0)!=(0|0); if (!($tobool18)) { STACKTOP = sp;return 1; } $25 = $X$addr; $26 = +HEAPF32[$25>>2]; $27 = $lowband_out$addr; HEAPF32[$27>>2] = $26; STACKTOP = sp;return 1; } function _compute_theta($ctx,$sctx,$X,$Y,$N,$b,$B,$B0,$LM,$stereo,$fill) { $ctx = $ctx|0; $sctx = $sctx|0; $X = $X|0; $Y = $Y|0; $N = $N|0; $b = $b|0; $B = $B|0; $B0 = $B0|0; $LM = $LM|0; $stereo = $stereo|0; $fill = $fill|0; var $$sink = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0; var $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0; var $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0; var $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0; var $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0; var $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0; var $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0.0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0; var $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0; var $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0; var $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0; var $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0; var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0; var $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0; var $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $B$addr = 0, $B0$addr = 0, $LM$addr = 0, $N$addr = 0, $X$addr = 0, $Y$addr = 0, $add = 0, $add108 = 0, $add118 = 0, $add120 = 0, $add130 = 0, $add132 = 0; var $add138 = 0, $add142 = 0, $add144 = 0, $add149 = 0, $add156 = 0, $add157 = 0, $add160 = 0, $add169 = 0, $add171 = 0, $add177 = 0, $add181 = 0, $add183 = 0, $add195 = 0, $add197 = 0, $add204 = 0, $add206 = 0, $add214 = 0, $add216 = 0, $add224 = 0, $add228 = 0; var $add230 = 0, $add237 = 0, $add243 = 0, $add250 = 0, $add254 = 0, $add255 = 0, $add259 = 0, $add26 = 0, $add264 = 0, $add268 = 0, $add270 = 0, $add272 = 0, $add278 = 0, $add364 = 0, $add54 = 0, $add73 = 0, $add80 = 0, $add90 = 0, $add97 = 0, $and = 0; var $and347 = 0, $arch = 0, $arrayidx = 0, $arrayidx308 = 0, $arrayidx310 = 0, $avoid_split_noise = 0, $b$addr = 0, $bandE = 0, $bandE6 = 0, $bias = 0, $call = 0, $call13 = 0, $call148 = 0, $call15 = 0, $call198 = 0, $call240 = 0, $call251 = 0, $call265 = 0, $call283 = 0, $call322 = 0; var $call332 = 0, $call350 = 0, $call354 = 0, $call360 = 0, $call39 = 0, $call41 = 0, $call45 = 0, $call50 = 0, $cmp = 0, $cmp104 = 0, $cmp114 = 0, $cmp123 = 0, $cmp135 = 0, $cmp151 = 0, $cmp16 = 0, $cmp162 = 0, $cmp174 = 0, $cmp188 = 0, $cmp211 = 0, $cmp22 = 0; var $cmp221 = 0, $cmp246 = 0, $cmp288 = 0, $cmp299 = 0, $cmp306 = 0, $cmp313 = 0, $cmp316 = 0, $cmp32 = 0, $cmp335 = 0, $cmp341 = 0, $cmp35 = 0, $cmp56 = 0, $cmp60 = 0, $cmp67 = 0, $cmp75 = 0, $cmp84 = 0, $cmp9 = 0, $cmp92 = 0, $cond = 0, $cond102 = 0; var $cond134 = 0, $cond146 = 0, $cond173 = 0, $cond185 = 0, $cond219 = 0, $cond236 = 0, $cond83 = 0, $conv = 0, $conv349 = 0, $conv351 = 0, $conv353 = 0, $conv355 = 0, $conv358 = 0, $conv359 = 0, $conv361 = 0, $conv362 = 0, $conv40 = 0, $conv42 = 0, $conv44 = 0, $conv46 = 0; var $conv48 = 0, $conv49 = 0, $conv51 = 0, $conv52 = 0, $ctx$addr = 0, $delta = 0, $delta371 = 0, $disable_inv = 0, $disable_inv326 = 0, $div117 = 0, $div154 = 0, $div69 = 0, $down = 0, $ec = 0, $ec5 = 0, $encode = 0, $fill$addr = 0, $fl = 0, $fl239 = 0, $fm = 0; var $fs = 0, $fs201 = 0, $ft = 0, $ft202 = 0, $i = 0, $i3 = 0, $imid = 0, $imid369 = 0, $inc = 0, $intensity = 0, $intensity4 = 0, $inv = 0, $iside = 0, $iside370 = 0, $itheta = 0, $itheta372 = 0, $j = 0, $land$ext = 0, $lnot = 0, $logN = 0; var $m = 0, $m2 = 0, $mul = 0, $mul119 = 0, $mul126 = 0, $mul131 = 0, $mul139 = 0, $mul143 = 0, $mul150 = 0, $mul158 = 0, $mul165 = 0, $mul170 = 0, $mul178 = 0, $mul182 = 0, $mul207 = 0, $mul225 = 0, $mul232 = 0, $mul244 = 0, $mul249 = 0, $mul25 = 0; var $mul256 = 0, $mul260 = 0, $mul263 = 0, $mul274 = 0, $mul282 = 0, $mul363 = 0, $mul38 = 0, $mul53 = 0, $mul72 = 0, $mul79 = 0, $mul89 = 0, $mul96 = 0, $offset = 0, $or$cond = 0, $or$cond1 = 0, $or$cond2 = 0, $or$cond3 = 0, $p0 = 0, $pulse_cap = 0, $qalloc = 0; var $qalloc373 = 0, $qn = 0, $remaining_bits = 0, $sctx$addr = 0, $shl = 0, $shl338 = 0, $shl344 = 0, $shl346 = 0, $shl357 = 0, $shr = 0, $shr203 = 0, $shr205 = 0, $shr210 = 0, $shr220 = 0, $shr226 = 0, $shr233 = 0, $shr241 = 0, $shr242 = 0, $shr245 = 0, $shr253 = 0; var $shr257 = 0, $shr267 = 0, $shr27 = 0, $shr275 = 0, $shr365 = 0, $shr55 = 0, $shr74 = 0, $shr81 = 0, $shr91 = 0, $shr98 = 0, $stereo$addr = 0, $sub = 0, $sub128 = 0, $sub129 = 0, $sub141 = 0, $sub159 = 0, $sub167 = 0, $sub168 = 0, $sub180 = 0, $sub217 = 0; var $sub229 = 0, $sub231 = 0, $sub234 = 0, $sub252 = 0, $sub261 = 0, $sub262 = 0, $sub266 = 0, $sub269 = 0, $sub271 = 0, $sub273 = 0, $sub276 = 0, $sub309 = 0.0, $sub333 = 0, $sub334 = 0, $sub339 = 0, $sub345 = 0, $sub352 = 0, $sub356 = 0, $sub43 = 0, $sub47 = 0; var $sub59 = 0, $sub71 = 0, $sub87 = 0, $tell = 0, $theta_round = 0, $theta_round103 = 0, $tobool = 0, $tobool11 = 0, $tobool112 = 0, $tobool121 = 0, $tobool19 = 0, $tobool191 = 0, $tobool193 = 0, $tobool208 = 0, $tobool21 = 0, $tobool28 = 0, $tobool284 = 0, $tobool286 = 0, $tobool295 = 0, $tobool297 = 0; var $tobool30 = 0, $tobool302 = 0, $tobool304 = 0, $tobool319 = 0, $tobool327 = 0, $tobool8 = 0, $unquantized = 0, $x = 0, $x0 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 176|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(176|0); $ctx$addr = $ctx; $sctx$addr = $sctx; $X$addr = $X; $Y$addr = $Y; $N$addr = $N; $b$addr = $b; $B$addr = $B; $B0$addr = $B0; $LM$addr = $LM; $stereo$addr = $stereo; $fill$addr = $fill; $itheta = 0; $inv = 0; $0 = $ctx$addr; $1 = HEAP32[$0>>2]|0; $encode = $1; $2 = $ctx$addr; $m2 = ((($2)) + 8|0); $3 = HEAP32[$m2>>2]|0; $m = $3; $4 = $ctx$addr; $i3 = ((($4)) + 12|0); $5 = HEAP32[$i3>>2]|0; $i = $5; $6 = $ctx$addr; $intensity4 = ((($6)) + 16|0); $7 = HEAP32[$intensity4>>2]|0; $intensity = $7; $8 = $ctx$addr; $ec5 = ((($8)) + 28|0); $9 = HEAP32[$ec5>>2]|0; $ec = $9; $10 = $ctx$addr; $bandE6 = ((($10)) + 36|0); $11 = HEAP32[$bandE6>>2]|0; $bandE = $11; $12 = $m; $logN = ((($12)) + 56|0); $13 = HEAP32[$logN>>2]|0; $14 = $i; $arrayidx = (($13) + ($14<<1)|0); $15 = HEAP16[$arrayidx>>1]|0; $conv = $15 << 16 >> 16; $16 = $LM$addr; $mul = $16<<3; $add = (($conv) + ($mul))|0; $pulse_cap = $add; $17 = $pulse_cap; $shr = $17 >> 1; $18 = $stereo$addr; $tobool = ($18|0)!=(0); $19 = $N$addr; $cmp = ($19|0)==(2); $20 = $tobool ? $cmp : 0; $cond = $20 ? 16 : 4; $sub = (($shr) - ($cond))|0; $offset = $sub; $21 = $N$addr; $22 = $b$addr; $23 = HEAP32[$22>>2]|0; $24 = $offset; $25 = $pulse_cap; $26 = $stereo$addr; $call = (_compute_qn($21,$23,$24,$25,$26)|0); $qn = $call; $27 = $stereo$addr; $tobool8 = ($27|0)!=(0); if ($tobool8) { $28 = $i; $29 = $intensity; $cmp9 = ($28|0)>=($29|0); if ($cmp9) { $qn = 1; } } $30 = $encode; $tobool11 = ($30|0)!=(0); if ($tobool11) { $31 = $X$addr; $32 = $Y$addr; $33 = $stereo$addr; $34 = $N$addr; $35 = $ctx$addr; $arch = ((($35)) + 44|0); $36 = HEAP32[$arch>>2]|0; $call13 = (_stereo_itheta($31,$32,$33,$34,$36)|0); $itheta = $call13; } $37 = $ec; $call15 = (_ec_tell_frac($37)|0); $tell = $call15; $38 = $qn; $cmp16 = ($38|0)!=(1); do { if ($cmp16) { $39 = $encode; $tobool19 = ($39|0)!=(0); do { if ($tobool19) { $40 = $stereo$addr; $tobool21 = ($40|0)!=(0); if ($tobool21) { $41 = $ctx$addr; $theta_round = ((($41)) + 48|0); $42 = HEAP32[$theta_round>>2]|0; $cmp22 = ($42|0)==(0); if (!($cmp22)) { $65 = $itheta; $cmp67 = ($65|0)>(8192); $66 = $qn; $$sink = $cmp67 ? 32767 : -32767; $div69 = (($$sink|0) / ($66|0))&-1; $bias = $div69; $67 = $qn; $sub71 = (($67) - 1)|0; $68 = $itheta; $69 = $qn; $mul72 = Math_imul($68, $69)|0; $70 = $bias; $add73 = (($mul72) + ($70))|0; $shr74 = $add73 >> 14; $cmp75 = (0)>($shr74|0); if ($cmp75) { $cond83 = 0; } else { $71 = $itheta; $72 = $qn; $mul79 = Math_imul($71, $72)|0; $73 = $bias; $add80 = (($mul79) + ($73))|0; $shr81 = $add80 >> 14; $cond83 = $shr81; } $cmp84 = ($sub71|0)<($cond83|0); if ($cmp84) { $74 = $qn; $sub87 = (($74) - 1)|0; $cond102 = $sub87; } else { $75 = $itheta; $76 = $qn; $mul89 = Math_imul($75, $76)|0; $77 = $bias; $add90 = (($mul89) + ($77))|0; $shr91 = $add90 >> 14; $cmp92 = (0)>($shr91|0); if ($cmp92) { $cond102 = 0; } else { $78 = $itheta; $79 = $qn; $mul96 = Math_imul($78, $79)|0; $80 = $bias; $add97 = (($mul96) + ($80))|0; $shr98 = $add97 >> 14; $cond102 = $shr98; } } $down = $cond102; $81 = $ctx$addr; $theta_round103 = ((($81)) + 48|0); $82 = HEAP32[$theta_round103>>2]|0; $cmp104 = ($82|0)<(0); $83 = $down; if ($cmp104) { $itheta = $83; break; } else { $add108 = (($83) + 1)|0; $itheta = $add108; break; } } } $43 = $itheta; $44 = $qn; $mul25 = Math_imul($43, $44)|0; $add26 = (($mul25) + 8192)|0; $shr27 = $add26 >> 14; $itheta = $shr27; $45 = $stereo$addr; $tobool28 = ($45|0)!=(0); if (!($tobool28)) { $46 = $ctx$addr; $avoid_split_noise = ((($46)) + 56|0); $47 = HEAP32[$avoid_split_noise>>2]|0; $tobool30 = ($47|0)!=(0); $48 = $itheta; $cmp32 = ($48|0)>(0); $or$cond = $tobool30 & $cmp32; if ($or$cond) { $49 = $itheta; $50 = $qn; $cmp35 = ($49|0)<($50|0); if ($cmp35) { $51 = $itheta; $mul38 = $51<<14; $52 = $qn; $call39 = (_celt_udiv_365($mul38,$52)|0); $unquantized = $call39; $53 = $unquantized; $conv40 = $53&65535; $call41 = (_bitexact_cos($conv40)|0); $conv42 = $call41 << 16 >> 16; $imid = $conv42; $54 = $unquantized; $sub43 = (16384 - ($54))|0; $conv44 = $sub43&65535; $call45 = (_bitexact_cos($conv44)|0); $conv46 = $call45 << 16 >> 16; $iside = $conv46; $55 = $N$addr; $sub47 = (($55) - 1)|0; $shl = $sub47 << 7; $conv48 = $shl&65535; $conv49 = $conv48 << 16 >> 16; $56 = $iside; $57 = $imid; $call50 = (_bitexact_log2tan($56,$57)|0); $conv51 = $call50&65535; $conv52 = $conv51 << 16 >> 16; $mul53 = Math_imul($conv49, $conv52)|0; $add54 = (16384 + ($mul53))|0; $shr55 = $add54 >> 15; $delta = $shr55; $58 = $delta; $59 = $b$addr; $60 = HEAP32[$59>>2]|0; $cmp56 = ($58|0)>($60|0); if ($cmp56) { $61 = $qn; $itheta = $61; break; } $62 = $delta; $63 = $b$addr; $64 = HEAP32[$63>>2]|0; $sub59 = (0 - ($64))|0; $cmp60 = ($62|0)<($sub59|0); if ($cmp60) { $itheta = 0; } } } } } } while(0); $84 = $stereo$addr; $tobool112 = ($84|0)!=(0); $85 = $N$addr; $cmp114 = ($85|0)>(2); $or$cond1 = $tobool112 & $cmp114; do { if ($or$cond1) { $p0 = 3; $86 = $itheta; $x = $86; $87 = $qn; $div117 = (($87|0) / 2)&-1; $x0 = $div117; $88 = $p0; $89 = $x0; $add118 = (($89) + 1)|0; $mul119 = Math_imul($88, $add118)|0; $90 = $x0; $add120 = (($mul119) + ($90))|0; $ft = $add120; $91 = $encode; $tobool121 = ($91|0)!=(0); $92 = $ec; if ($tobool121) { $93 = $x; $94 = $x0; $cmp123 = ($93|0)<=($94|0); if ($cmp123) { $95 = $p0; $96 = $x; $mul126 = Math_imul($95, $96)|0; $cond134 = $mul126; } else { $97 = $x; $sub128 = (($97) - 1)|0; $98 = $x0; $sub129 = (($sub128) - ($98))|0; $99 = $x0; $add130 = (($99) + 1)|0; $100 = $p0; $mul131 = Math_imul($add130, $100)|0; $add132 = (($sub129) + ($mul131))|0; $cond134 = $add132; } $101 = $x; $102 = $x0; $cmp135 = ($101|0)<=($102|0); if ($cmp135) { $103 = $p0; $104 = $x; $add138 = (($104) + 1)|0; $mul139 = Math_imul($103, $add138)|0; $cond146 = $mul139; } else { $105 = $x; $106 = $x0; $sub141 = (($105) - ($106))|0; $107 = $x0; $add142 = (($107) + 1)|0; $108 = $p0; $mul143 = Math_imul($add142, $108)|0; $add144 = (($sub141) + ($mul143))|0; $cond146 = $add144; } $109 = $ft; _ec_encode($92,$cond134,$cond146,$109); break; } $110 = $ft; $call148 = (_ec_decode($92,$110)|0); $fs = $call148; $111 = $fs; $112 = $x0; $add149 = (($112) + 1)|0; $113 = $p0; $mul150 = Math_imul($add149, $113)|0; $cmp151 = ($111|0)<($mul150|0); if ($cmp151) { $114 = $fs; $115 = $p0; $div154 = (($114|0) / ($115|0))&-1; $x = $div154; } else { $116 = $x0; $add156 = (($116) + 1)|0; $117 = $fs; $118 = $x0; $add157 = (($118) + 1)|0; $119 = $p0; $mul158 = Math_imul($add157, $119)|0; $sub159 = (($117) - ($mul158))|0; $add160 = (($add156) + ($sub159))|0; $x = $add160; } $120 = $ec; $121 = $x; $122 = $x0; $cmp162 = ($121|0)<=($122|0); if ($cmp162) { $123 = $p0; $124 = $x; $mul165 = Math_imul($123, $124)|0; $cond173 = $mul165; } else { $125 = $x; $sub167 = (($125) - 1)|0; $126 = $x0; $sub168 = (($sub167) - ($126))|0; $127 = $x0; $add169 = (($127) + 1)|0; $128 = $p0; $mul170 = Math_imul($add169, $128)|0; $add171 = (($sub168) + ($mul170))|0; $cond173 = $add171; } $129 = $x; $130 = $x0; $cmp174 = ($129|0)<=($130|0); if ($cmp174) { $131 = $p0; $132 = $x; $add177 = (($132) + 1)|0; $mul178 = Math_imul($131, $add177)|0; $cond185 = $mul178; } else { $133 = $x; $134 = $x0; $sub180 = (($133) - ($134))|0; $135 = $x0; $add181 = (($135) + 1)|0; $136 = $p0; $mul182 = Math_imul($add181, $136)|0; $add183 = (($sub180) + ($mul182))|0; $cond185 = $add183; } $137 = $ft; _ec_dec_update($120,$cond173,$cond185,$137); $138 = $x; $itheta = $138; } else { $139 = $B0$addr; $cmp188 = ($139|0)>(1); $140 = $stereo$addr; $tobool191 = ($140|0)!=(0); $or$cond2 = $cmp188 | $tobool191; if ($or$cond2) { $141 = $encode; $tobool193 = ($141|0)!=(0); $142 = $ec; if ($tobool193) { $143 = $itheta; $144 = $qn; $add195 = (($144) + 1)|0; _ec_enc_uint($142,$143,$add195); break; } else { $145 = $qn; $add197 = (($145) + 1)|0; $call198 = (_ec_dec_uint($142,$add197)|0); $itheta = $call198; break; } } $fs201 = 1; $146 = $qn; $shr203 = $146 >> 1; $add204 = (($shr203) + 1)|0; $147 = $qn; $shr205 = $147 >> 1; $add206 = (($shr205) + 1)|0; $mul207 = Math_imul($add204, $add206)|0; $ft202 = $mul207; $148 = $encode; $tobool208 = ($148|0)!=(0); if (!($tobool208)) { $fl239 = 0; $168 = $ec; $169 = $ft202; $call240 = (_ec_decode($168,$169)|0); $fm = $call240; $170 = $fm; $171 = $qn; $shr241 = $171 >> 1; $172 = $qn; $shr242 = $172 >> 1; $add243 = (($shr242) + 1)|0; $mul244 = Math_imul($shr241, $add243)|0; $shr245 = $mul244 >> 1; $cmp246 = ($170|0)<($shr245|0); if ($cmp246) { $173 = $fm; $mul249 = $173<<3; $add250 = (($mul249) + 1)|0; $call251 = (_isqrt32($add250)|0); $sub252 = (($call251) - 1)|0; $shr253 = $sub252 >>> 1; $itheta = $shr253; $174 = $itheta; $add254 = (($174) + 1)|0; $fs201 = $add254; $175 = $itheta; $176 = $itheta; $add255 = (($176) + 1)|0; $mul256 = Math_imul($175, $add255)|0; $shr257 = $mul256 >> 1; $fl239 = $shr257; } else { $177 = $qn; $add259 = (($177) + 1)|0; $mul260 = $add259<<1; $178 = $ft202; $179 = $fm; $sub261 = (($178) - ($179))|0; $sub262 = (($sub261) - 1)|0; $mul263 = $sub262<<3; $add264 = (($mul263) + 1)|0; $call265 = (_isqrt32($add264)|0); $sub266 = (($mul260) - ($call265))|0; $shr267 = $sub266 >>> 1; $itheta = $shr267; $180 = $qn; $add268 = (($180) + 1)|0; $181 = $itheta; $sub269 = (($add268) - ($181))|0; $fs201 = $sub269; $182 = $ft202; $183 = $qn; $add270 = (($183) + 1)|0; $184 = $itheta; $sub271 = (($add270) - ($184))|0; $185 = $qn; $add272 = (($185) + 2)|0; $186 = $itheta; $sub273 = (($add272) - ($186))|0; $mul274 = Math_imul($sub271, $sub273)|0; $shr275 = $mul274 >> 1; $sub276 = (($182) - ($shr275))|0; $fl239 = $sub276; } $187 = $ec; $188 = $fl239; $189 = $fl239; $190 = $fs201; $add278 = (($189) + ($190))|0; $191 = $ft202; _ec_dec_update($187,$188,$add278,$191); break; } $149 = $itheta; $150 = $qn; $shr210 = $150 >> 1; $cmp211 = ($149|0)<=($shr210|0); if ($cmp211) { $151 = $itheta; $add214 = (($151) + 1)|0; $cond219 = $add214; } else { $152 = $qn; $add216 = (($152) + 1)|0; $153 = $itheta; $sub217 = (($add216) - ($153))|0; $cond219 = $sub217; } $fs201 = $cond219; $154 = $itheta; $155 = $qn; $shr220 = $155 >> 1; $cmp221 = ($154|0)<=($shr220|0); if ($cmp221) { $156 = $itheta; $157 = $itheta; $add224 = (($157) + 1)|0; $mul225 = Math_imul($156, $add224)|0; $shr226 = $mul225 >> 1; $cond236 = $shr226; } else { $158 = $ft202; $159 = $qn; $add228 = (($159) + 1)|0; $160 = $itheta; $sub229 = (($add228) - ($160))|0; $161 = $qn; $add230 = (($161) + 2)|0; $162 = $itheta; $sub231 = (($add230) - ($162))|0; $mul232 = Math_imul($sub229, $sub231)|0; $shr233 = $mul232 >> 1; $sub234 = (($158) - ($shr233))|0; $cond236 = $sub234; } $fl = $cond236; $163 = $ec; $164 = $fl; $165 = $fl; $166 = $fs201; $add237 = (($165) + ($166))|0; $167 = $ft202; _ec_encode($163,$164,$add237,$167); } } while(0); $192 = $itheta; $mul282 = $192<<14; $193 = $qn; $call283 = (_celt_udiv_365($mul282,$193)|0); $itheta = $call283; $194 = $encode; $tobool284 = ($194|0)!=(0); $195 = $stereo$addr; $tobool286 = ($195|0)!=(0); $or$cond3 = $tobool284 & $tobool286; if ($or$cond3) { $196 = $itheta; $cmp288 = ($196|0)==(0); if ($cmp288) { $197 = $m; $198 = $X$addr; $199 = $Y$addr; $200 = $bandE; $201 = $i; $202 = $N$addr; _intensity_stereo($197,$198,$199,$200,$201,$202); break; } else { $203 = $X$addr; $204 = $Y$addr; $205 = $N$addr; _stereo_split($203,$204,$205); break; } } } else { $206 = $stereo$addr; $tobool295 = ($206|0)!=(0); if ($tobool295) { $207 = $encode; $tobool297 = ($207|0)!=(0); if ($tobool297) { $208 = $itheta; $cmp299 = ($208|0)>(8192); if ($cmp299) { $209 = $ctx$addr; $disable_inv = ((($209)) + 52|0); $210 = HEAP32[$disable_inv>>2]|0; $tobool302 = ($210|0)!=(0); $lnot = $tobool302 ^ 1; $211 = $lnot; } else { $211 = 0; } $land$ext = $211&1; $inv = $land$ext; $212 = $inv; $tobool304 = ($212|0)!=(0); L94: do { if ($tobool304) { $j = 0; while(1) { $213 = $j; $214 = $N$addr; $cmp306 = ($213|0)<($214|0); if (!($cmp306)) { break L94; } $215 = $Y$addr; $216 = $j; $arrayidx308 = (($215) + ($216<<2)|0); $217 = +HEAPF32[$arrayidx308>>2]; $sub309 = - $217; $218 = $Y$addr; $219 = $j; $arrayidx310 = (($218) + ($219<<2)|0); HEAPF32[$arrayidx310>>2] = $sub309; $220 = $j; $inc = (($220) + 1)|0; $j = $inc; } } } while(0); $221 = $m; $222 = $X$addr; $223 = $Y$addr; $224 = $bandE; $225 = $i; $226 = $N$addr; _intensity_stereo($221,$222,$223,$224,$225,$226); } $227 = $b$addr; $228 = HEAP32[$227>>2]|0; $cmp313 = ($228|0)>(16); do { if ($cmp313) { $229 = $ctx$addr; $remaining_bits = ((($229)) + 32|0); $230 = HEAP32[$remaining_bits>>2]|0; $cmp316 = ($230|0)>(16); if ($cmp316) { $231 = $encode; $tobool319 = ($231|0)!=(0); $232 = $ec; if ($tobool319) { $233 = $inv; _ec_enc_bit_logp($232,$233,2); break; } else { $call322 = (_ec_dec_bit_logp($232,2)|0); $inv = $call322; break; } } else { label = 79; } } else { label = 79; } } while(0); if ((label|0) == 79) { $inv = 0; } $234 = $ctx$addr; $disable_inv326 = ((($234)) + 52|0); $235 = HEAP32[$disable_inv326>>2]|0; $tobool327 = ($235|0)!=(0); if ($tobool327) { $inv = 0; } $itheta = 0; } } } while(0); $236 = $ec; $call332 = (_ec_tell_frac($236)|0); $237 = $tell; $sub333 = (($call332) - ($237))|0; $qalloc = $sub333; $238 = $qalloc; $239 = $b$addr; $240 = HEAP32[$239>>2]|0; $sub334 = (($240) - ($238))|0; HEAP32[$239>>2] = $sub334; $241 = $itheta; $cmp335 = ($241|0)==(0); if ($cmp335) { $imid = 32767; $iside = 0; $242 = $B$addr; $shl338 = 1 << $242; $sub339 = (($shl338) - 1)|0; $243 = $fill$addr; $244 = HEAP32[$243>>2]|0; $and = $244 & $sub339; HEAP32[$243>>2] = $and; $delta = -16384; $255 = $inv; $256 = $sctx$addr; HEAP32[$256>>2] = $255; $257 = $imid; $258 = $sctx$addr; $imid369 = ((($258)) + 4|0); HEAP32[$imid369>>2] = $257; $259 = $iside; $260 = $sctx$addr; $iside370 = ((($260)) + 8|0); HEAP32[$iside370>>2] = $259; $261 = $delta; $262 = $sctx$addr; $delta371 = ((($262)) + 12|0); HEAP32[$delta371>>2] = $261; $263 = $itheta; $264 = $sctx$addr; $itheta372 = ((($264)) + 16|0); HEAP32[$itheta372>>2] = $263; $265 = $qalloc; $266 = $sctx$addr; $qalloc373 = ((($266)) + 20|0); HEAP32[$qalloc373>>2] = $265; STACKTOP = sp;return; } $245 = $itheta; $cmp341 = ($245|0)==(16384); if ($cmp341) { $imid = 0; $iside = 32767; $246 = $B$addr; $shl344 = 1 << $246; $sub345 = (($shl344) - 1)|0; $247 = $B$addr; $shl346 = $sub345 << $247; $248 = $fill$addr; $249 = HEAP32[$248>>2]|0; $and347 = $249 & $shl346; HEAP32[$248>>2] = $and347; $delta = 16384; $255 = $inv; $256 = $sctx$addr; HEAP32[$256>>2] = $255; $257 = $imid; $258 = $sctx$addr; $imid369 = ((($258)) + 4|0); HEAP32[$imid369>>2] = $257; $259 = $iside; $260 = $sctx$addr; $iside370 = ((($260)) + 8|0); HEAP32[$iside370>>2] = $259; $261 = $delta; $262 = $sctx$addr; $delta371 = ((($262)) + 12|0); HEAP32[$delta371>>2] = $261; $263 = $itheta; $264 = $sctx$addr; $itheta372 = ((($264)) + 16|0); HEAP32[$itheta372>>2] = $263; $265 = $qalloc; $266 = $sctx$addr; $qalloc373 = ((($266)) + 20|0); HEAP32[$qalloc373>>2] = $265; STACKTOP = sp;return; } else { $250 = $itheta; $conv349 = $250&65535; $call350 = (_bitexact_cos($conv349)|0); $conv351 = $call350 << 16 >> 16; $imid = $conv351; $251 = $itheta; $sub352 = (16384 - ($251))|0; $conv353 = $sub352&65535; $call354 = (_bitexact_cos($conv353)|0); $conv355 = $call354 << 16 >> 16; $iside = $conv355; $252 = $N$addr; $sub356 = (($252) - 1)|0; $shl357 = $sub356 << 7; $conv358 = $shl357&65535; $conv359 = $conv358 << 16 >> 16; $253 = $iside; $254 = $imid; $call360 = (_bitexact_log2tan($253,$254)|0); $conv361 = $call360&65535; $conv362 = $conv361 << 16 >> 16; $mul363 = Math_imul($conv359, $conv362)|0; $add364 = (16384 + ($mul363))|0; $shr365 = $add364 >> 15; $delta = $shr365; $255 = $inv; $256 = $sctx$addr; HEAP32[$256>>2] = $255; $257 = $imid; $258 = $sctx$addr; $imid369 = ((($258)) + 4|0); HEAP32[$imid369>>2] = $257; $259 = $iside; $260 = $sctx$addr; $iside370 = ((($260)) + 8|0); HEAP32[$iside370>>2] = $259; $261 = $delta; $262 = $sctx$addr; $delta371 = ((($262)) + 12|0); HEAP32[$delta371>>2] = $261; $263 = $itheta; $264 = $sctx$addr; $itheta372 = ((($264)) + 16|0); HEAP32[$itheta372>>2] = $263; $265 = $qalloc; $266 = $sctx$addr; $qalloc373 = ((($266)) + 20|0); HEAP32[$qalloc373>>2] = $265; STACKTOP = sp;return; } } function _stereo_merge($X,$Y,$mid,$N,$arch) { $X = $X|0; $Y = $Y|0; $mid = +$mid; $N = $N|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0.0, $11 = 0.0, $12 = 0.0, $13 = 0.0, $14 = 0.0, $15 = 0.0, $16 = 0.0, $17 = 0.0, $18 = 0.0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0.0, $25 = 0.0, $26 = 0.0; var $27 = 0.0, $28 = 0, $29 = 0, $3 = 0, $30 = 0.0, $31 = 0, $32 = 0, $33 = 0.0, $34 = 0, $35 = 0, $36 = 0.0, $37 = 0.0, $38 = 0.0, $39 = 0.0, $4 = 0, $40 = 0, $41 = 0, $42 = 0.0, $43 = 0.0, $44 = 0.0; var $45 = 0, $46 = 0, $47 = 0, $5 = 0, $6 = 0.0, $7 = 0.0, $8 = 0.0, $9 = 0.0, $El = 0.0, $Er = 0.0, $N$addr = 0, $X$addr = 0, $Y$addr = 0, $add = 0.0, $add10 = 0, $add24 = 0.0, $add4 = 0.0, $add6 = 0.0, $and = 0, $arch$addr = 0; var $arrayidx = 0, $arrayidx18 = 0, $arrayidx20 = 0, $arrayidx23 = 0, $arrayidx26 = 0, $call = 0.0, $call13 = 0.0, $cmp = 0, $cmp16 = 0, $cmp7 = 0, $conv = 0.0, $conv11 = 0.0, $conv12 = 0.0, $conv14 = 0.0, $div = 0.0, $div15 = 0.0, $inc = 0, $j = 0, $l = 0.0, $lgain = 0.0; var $mid$addr = 0.0, $mid2 = 0.0, $mul = 0.0, $mul1 = 0.0, $mul19 = 0.0, $mul2 = 0.0, $mul22 = 0.0, $mul25 = 0.0, $mul3 = 0.0, $mul5 = 0.0, $mul8 = 0, $mul9 = 0, $or$cond = 0, $r = 0.0, $rgain = 0.0, $side = 0, $sub = 0.0, $sub$ptr$div = 0, $sub$ptr$lhs$cast = 0, $sub$ptr$rhs$cast = 0; var $sub$ptr$sub = 0, $sub21 = 0.0, $t = 0.0, $xp = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $xp = sp + 36|0; $side = sp + 32|0; $X$addr = $X; $Y$addr = $Y; $mid$addr = $mid; $N$addr = $N; $arch$addr = $arch; HEAPF32[$xp>>2] = 0.0; HEAPF32[$side>>2] = 0.0; $0 = $arch$addr; $and = $0 & 7; $arrayidx = (_DUAL_INNER_PROD_IMPL + ($and<<2)|0); $1 = HEAP32[$arrayidx>>2]|0; $2 = $Y$addr; $3 = $X$addr; $4 = $Y$addr; $5 = $N$addr; FUNCTION_TABLE_viiiiii[$1 & 15]($2,$3,$4,$5,$xp,$side); $6 = $mid$addr; $7 = +HEAPF32[$xp>>2]; $mul = $6 * $7; HEAPF32[$xp>>2] = $mul; $8 = $mid$addr; $mid2 = $8; $9 = $mid2; $10 = $mid2; $mul1 = $9 * $10; $11 = +HEAPF32[$side>>2]; $add = $mul1 + $11; $12 = +HEAPF32[$xp>>2]; $mul2 = 2.0 * $12; $sub = $add - $mul2; $El = $sub; $13 = $mid2; $14 = $mid2; $mul3 = $13 * $14; $15 = +HEAPF32[$side>>2]; $add4 = $mul3 + $15; $16 = +HEAPF32[$xp>>2]; $mul5 = 2.0 * $16; $add6 = $add4 + $mul5; $Er = $add6; $17 = $Er; $cmp = $17 < 6.0000002849847078E-4; $18 = $El; $cmp7 = $18 < 6.0000002849847078E-4; $or$cond = $cmp | $cmp7; if ($or$cond) { $19 = $Y$addr; $20 = $X$addr; $21 = $N$addr; $mul8 = $21<<2; $22 = $Y$addr; $23 = $X$addr; $sub$ptr$lhs$cast = $22; $sub$ptr$rhs$cast = $23; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $sub$ptr$div = (($sub$ptr$sub|0) / 4)&-1; $mul9 = 0; $add10 = (($mul8) + ($mul9))|0; _memcpy(($19|0),($20|0),($add10|0))|0; STACKTOP = sp;return; } $24 = $El; $t = $24; $25 = $t; $conv = $25; $call = (+Math_sqrt((+$conv))); $conv11 = $call; $div = 1.0 / $conv11; $lgain = $div; $26 = $Er; $t = $26; $27 = $t; $conv12 = $27; $call13 = (+Math_sqrt((+$conv12))); $conv14 = $call13; $div15 = 1.0 / $conv14; $rgain = $div15; $j = 0; while(1) { $28 = $j; $29 = $N$addr; $cmp16 = ($28|0)<($29|0); if (!($cmp16)) { break; } $30 = $mid$addr; $31 = $X$addr; $32 = $j; $arrayidx18 = (($31) + ($32<<2)|0); $33 = +HEAPF32[$arrayidx18>>2]; $mul19 = $30 * $33; $l = $mul19; $34 = $Y$addr; $35 = $j; $arrayidx20 = (($34) + ($35<<2)|0); $36 = +HEAPF32[$arrayidx20>>2]; $r = $36; $37 = $lgain; $38 = $l; $39 = $r; $sub21 = $38 - $39; $mul22 = $37 * $sub21; $40 = $X$addr; $41 = $j; $arrayidx23 = (($40) + ($41<<2)|0); HEAPF32[$arrayidx23>>2] = $mul22; $42 = $rgain; $43 = $l; $44 = $r; $add24 = $43 + $44; $mul25 = $42 * $add24; $45 = $Y$addr; $46 = $j; $arrayidx26 = (($45) + ($46<<2)|0); HEAPF32[$arrayidx26>>2] = $mul25; $47 = $j; $inc = (($47) + 1)|0; $j = $inc; } STACKTOP = sp;return; } function _compute_qn($N,$b,$offset,$pulse_cap,$stereo) { $N = $N|0; $b = $b|0; $offset = $offset|0; $pulse_cap = $pulse_cap|0; $stereo = $stereo|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; var $8 = 0, $9 = 0, $N$addr = 0, $N2 = 0, $add = 0, $add16 = 0, $and = 0, $arrayidx = 0, $b$addr = 0, $call = 0, $cmp = 0, $cmp12 = 0, $cmp4 = 0, $cmp7 = 0, $cond = 0, $cond11 = 0, $conv = 0, $dec = 0, $mul = 0, $mul1 = 0; var $offset$addr = 0, $or$cond = 0, $pulse_cap$addr = 0, $qb = 0, $qn = 0, $shl = 0, $shr = 0, $shr15 = 0, $shr17 = 0, $stereo$addr = 0, $sub = 0, $sub14 = 0, $sub2 = 0, $sub3 = 0, $sub5 = 0, $sub6 = 0, $tobool = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $N$addr = $N; $b$addr = $b; $offset$addr = $offset; $pulse_cap$addr = $pulse_cap; $stereo$addr = $stereo; $0 = $N$addr; $mul = $0<<1; $sub = (($mul) - 1)|0; $N2 = $sub; $1 = $stereo$addr; $tobool = ($1|0)!=(0); $2 = $N$addr; $cmp = ($2|0)==(2); $or$cond = $tobool & $cmp; if ($or$cond) { $3 = $N2; $dec = (($3) + -1)|0; $N2 = $dec; } $4 = $b$addr; $5 = $N2; $6 = $offset$addr; $mul1 = Math_imul($5, $6)|0; $add = (($4) + ($mul1))|0; $7 = $N2; $call = (_celt_sudiv($add,$7)|0); $qb = $call; $8 = $b$addr; $9 = $pulse_cap$addr; $sub2 = (($8) - ($9))|0; $sub3 = (($sub2) - 32)|0; $10 = $qb; $cmp4 = ($sub3|0)<($10|0); if ($cmp4) { $11 = $b$addr; $12 = $pulse_cap$addr; $sub5 = (($11) - ($12))|0; $sub6 = (($sub5) - 32)|0; $cond = $sub6; } else { $13 = $qb; $cond = $13; } $qb = $cond; $14 = $qb; $cmp7 = (64)<($14|0); $15 = $qb; $cond11 = $cmp7 ? 64 : $15; $qb = $cond11; $16 = $qb; $cmp12 = ($16|0)<(4); if ($cmp12) { $qn = 1; $21 = $qn; STACKTOP = sp;return ($21|0); } else { $17 = $qb; $and = $17 & 7; $arrayidx = (23892 + ($and<<1)|0); $18 = HEAP16[$arrayidx>>1]|0; $conv = $18 << 16 >> 16; $19 = $qb; $shr = $19 >> 3; $sub14 = (14 - ($shr))|0; $shr15 = $conv >> $sub14; $qn = $shr15; $20 = $qn; $add16 = (($20) + 1)|0; $shr17 = $add16 >> 1; $shl = $shr17 << 1; $qn = $shl; $21 = $qn; STACKTOP = sp;return ($21|0); } return (0)|0; } function _intensity_stereo($m,$X,$Y,$bandE,$bandID,$N) { $m = $m|0; $X = $X|0; $Y = $Y|0; $bandE = $bandE|0; $bandID = $bandID|0; $N = $N|0; var $0 = 0, $1 = 0, $10 = 0.0, $11 = 0.0, $12 = 0.0, $13 = 0.0, $14 = 0.0, $15 = 0.0, $16 = 0.0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0.0, $22 = 0, $23 = 0, $24 = 0.0, $25 = 0.0, $26 = 0.0; var $27 = 0.0, $28 = 0.0, $29 = 0, $3 = 0.0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0.0, $9 = 0.0, $N$addr = 0, $X$addr = 0, $Y$addr = 0, $a1 = 0.0, $a2 = 0.0, $add = 0, $add13 = 0.0, $add2 = 0.0; var $add4 = 0.0, $add6 = 0.0, $arrayidx = 0, $arrayidx1 = 0, $arrayidx10 = 0, $arrayidx14 = 0, $arrayidx9 = 0, $bandE$addr = 0, $bandID$addr = 0, $call = 0.0, $cmp = 0, $conv = 0.0, $conv5 = 0.0, $div = 0.0, $div7 = 0.0, $i = 0, $inc = 0, $j = 0, $l = 0.0, $left = 0.0; var $m$addr = 0, $mul = 0.0, $mul11 = 0.0, $mul12 = 0.0, $mul3 = 0.0, $nbEBands = 0, $norm = 0.0, $r = 0.0, $right = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $m$addr = $m; $X$addr = $X; $Y$addr = $Y; $bandE$addr = $bandE; $bandID$addr = $bandID; $N$addr = $N; $0 = $bandID$addr; $i = $0; $1 = $bandE$addr; $2 = $i; $arrayidx = (($1) + ($2<<2)|0); $3 = +HEAPF32[$arrayidx>>2]; $left = $3; $4 = $bandE$addr; $5 = $i; $6 = $m$addr; $nbEBands = ((($6)) + 8|0); $7 = HEAP32[$nbEBands>>2]|0; $add = (($5) + ($7))|0; $arrayidx1 = (($4) + ($add<<2)|0); $8 = +HEAPF32[$arrayidx1>>2]; $right = $8; $9 = $left; $10 = $left; $mul = $9 * $10; $add2 = 1.0000000036274937E-15 + $mul; $11 = $right; $12 = $right; $mul3 = $11 * $12; $add4 = $add2 + $mul3; $conv = $add4; $call = (+Math_sqrt((+$conv))); $conv5 = $call; $add6 = 1.0000000036274937E-15 + $conv5; $norm = $add6; $13 = $left; $14 = $norm; $div = $13 / $14; $a1 = $div; $15 = $right; $16 = $norm; $div7 = $15 / $16; $a2 = $div7; $j = 0; while(1) { $17 = $j; $18 = $N$addr; $cmp = ($17|0)<($18|0); if (!($cmp)) { break; } $19 = $X$addr; $20 = $j; $arrayidx9 = (($19) + ($20<<2)|0); $21 = +HEAPF32[$arrayidx9>>2]; $l = $21; $22 = $Y$addr; $23 = $j; $arrayidx10 = (($22) + ($23<<2)|0); $24 = +HEAPF32[$arrayidx10>>2]; $r = $24; $25 = $a1; $26 = $l; $mul11 = $25 * $26; $27 = $a2; $28 = $r; $mul12 = $27 * $28; $add13 = $mul11 + $mul12; $29 = $X$addr; $30 = $j; $arrayidx14 = (($29) + ($30<<2)|0); HEAPF32[$arrayidx14>>2] = $add13; $31 = $j; $inc = (($31) + 1)|0; $j = $inc; } STACKTOP = sp;return; } function _stereo_split($X,$Y,$N) { $X = $X|0; $Y = $Y|0; $N = $N|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0.0, $13 = 0.0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0.0, $5 = 0, $6 = 0, $7 = 0.0, $8 = 0.0, $9 = 0.0, $N$addr = 0, $X$addr = 0, $Y$addr = 0; var $add = 0.0, $arrayidx = 0, $arrayidx1 = 0, $arrayidx3 = 0, $arrayidx4 = 0, $cmp = 0, $inc = 0, $j = 0, $l = 0.0, $mul = 0.0, $mul2 = 0.0, $r = 0.0, $sub = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $X$addr = $X; $Y$addr = $Y; $N$addr = $N; $j = 0; while(1) { $0 = $j; $1 = $N$addr; $cmp = ($0|0)<($1|0); if (!($cmp)) { break; } $2 = $X$addr; $3 = $j; $arrayidx = (($2) + ($3<<2)|0); $4 = +HEAPF32[$arrayidx>>2]; $mul = 0.70710676908493042 * $4; $l = $mul; $5 = $Y$addr; $6 = $j; $arrayidx1 = (($5) + ($6<<2)|0); $7 = +HEAPF32[$arrayidx1>>2]; $mul2 = 0.70710676908493042 * $7; $r = $mul2; $8 = $l; $9 = $r; $add = $8 + $9; $10 = $X$addr; $11 = $j; $arrayidx3 = (($10) + ($11<<2)|0); HEAPF32[$arrayidx3>>2] = $add; $12 = $r; $13 = $l; $sub = $12 - $13; $14 = $Y$addr; $15 = $j; $arrayidx4 = (($14) + ($15<<2)|0); HEAPF32[$arrayidx4>>2] = $sub; $16 = $j; $inc = (($16) + 1)|0; $j = $inc; } STACKTOP = sp;return; } function _deinterleave_hadamard($X,$N0,$stride,$hadamard) { $X = $X|0; $N0 = $N0|0; $stride = $stride|0; $hadamard = $hadamard|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0.0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0.0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; var $N = 0, $N0$addr = 0, $X$addr = 0, $add = 0, $add$ptr = 0, $add$ptr1 = 0, $add20 = 0, $add23 = 0, $add33 = 0, $add8 = 0, $arrayidx = 0, $arrayidx21 = 0, $arrayidx24 = 0, $arrayidx6 = 0, $arrayidx9 = 0, $cmp = 0, $cmp14 = 0, $cmp17 = 0, $cmp3 = 0, $hadamard$addr = 0; var $i = 0, $inc = 0, $inc11 = 0, $inc26 = 0, $inc29 = 0, $j = 0, $mul = 0, $mul19 = 0, $mul22 = 0, $mul31 = 0, $mul32 = 0, $mul5 = 0, $mul7 = 0, $ordery = 0, $saved_stack = 0, $stride$addr = 0, $sub$ptr$div = 0, $sub$ptr$lhs$cast = 0, $sub$ptr$rhs$cast = 0, $sub$ptr$sub = 0; var $tobool = 0, $vla = 0, $vla$alloca_mul = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $X$addr = $X; $N0$addr = $N0; $stride$addr = $stride; $hadamard$addr = $hadamard; $0 = $N0$addr; $1 = $stride$addr; $mul = Math_imul($0, $1)|0; $N = $mul; $2 = $N; $3 = (_llvm_stacksave()|0); $saved_stack = $3; $vla$alloca_mul = $2<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $4 = $hadamard$addr; $tobool = ($4|0)!=(0); if ($tobool) { $5 = $stride$addr; $add$ptr = (15420 + ($5<<2)|0); $add$ptr1 = ((($add$ptr)) + -8|0); $ordery = $add$ptr1; $i = 0; while(1) { $6 = $i; $7 = $stride$addr; $cmp = ($6|0)<($7|0); if (!($cmp)) { break; } $j = 0; while(1) { $8 = $j; $9 = $N0$addr; $cmp3 = ($8|0)<($9|0); if (!($cmp3)) { break; } $10 = $X$addr; $11 = $j; $12 = $stride$addr; $mul5 = Math_imul($11, $12)|0; $13 = $i; $add = (($mul5) + ($13))|0; $arrayidx = (($10) + ($add<<2)|0); $14 = +HEAPF32[$arrayidx>>2]; $15 = $ordery; $16 = $i; $arrayidx6 = (($15) + ($16<<2)|0); $17 = HEAP32[$arrayidx6>>2]|0; $18 = $N0$addr; $mul7 = Math_imul($17, $18)|0; $19 = $j; $add8 = (($mul7) + ($19))|0; $arrayidx9 = (($vla) + ($add8<<2)|0); HEAPF32[$arrayidx9>>2] = $14; $20 = $j; $inc = (($20) + 1)|0; $j = $inc; } $21 = $i; $inc11 = (($21) + 1)|0; $i = $inc11; } $36 = $X$addr; $37 = $N; $mul31 = $37<<2; $38 = $X$addr; $sub$ptr$lhs$cast = $38; $sub$ptr$rhs$cast = $vla; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $sub$ptr$div = (($sub$ptr$sub|0) / 4)&-1; $mul32 = 0; $add33 = (($mul31) + ($mul32))|0; _memcpy(($36|0),($vla|0),($add33|0))|0; $39 = $saved_stack; _llvm_stackrestore(($39|0)); STACKTOP = sp;return; } else { $i = 0; while(1) { $22 = $i; $23 = $stride$addr; $cmp14 = ($22|0)<($23|0); if (!($cmp14)) { break; } $j = 0; while(1) { $24 = $j; $25 = $N0$addr; $cmp17 = ($24|0)<($25|0); if (!($cmp17)) { break; } $26 = $X$addr; $27 = $j; $28 = $stride$addr; $mul19 = Math_imul($27, $28)|0; $29 = $i; $add20 = (($mul19) + ($29))|0; $arrayidx21 = (($26) + ($add20<<2)|0); $30 = +HEAPF32[$arrayidx21>>2]; $31 = $i; $32 = $N0$addr; $mul22 = Math_imul($31, $32)|0; $33 = $j; $add23 = (($mul22) + ($33))|0; $arrayidx24 = (($vla) + ($add23<<2)|0); HEAPF32[$arrayidx24>>2] = $30; $34 = $j; $inc26 = (($34) + 1)|0; $j = $inc26; } $35 = $i; $inc29 = (($35) + 1)|0; $i = $inc29; } $36 = $X$addr; $37 = $N; $mul31 = $37<<2; $38 = $X$addr; $sub$ptr$lhs$cast = $38; $sub$ptr$rhs$cast = $vla; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $sub$ptr$div = (($sub$ptr$sub|0) / 4)&-1; $mul32 = 0; $add33 = (($mul31) + ($mul32))|0; _memcpy(($36|0),($vla|0),($add33|0))|0; $39 = $saved_stack; _llvm_stackrestore(($39|0)); STACKTOP = sp;return; } } function _quant_partition($ctx,$X,$N,$b,$B,$lowband,$LM,$gain,$fill) { $ctx = $ctx|0; $X = $X|0; $N = $N|0; $b = $b|0; $B = $B|0; $lowband = $lowband|0; $LM = $LM|0; $gain = +$gain; $fill = $fill|0; var $$sink = 0, $$sink3 = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0.0, $108 = 0.0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0; var $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0.0, $12 = 0, $120 = 0.0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0; var $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0.0, $14 = 0, $140 = 0.0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0; var $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0; var $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0.0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0; var $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0; var $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0.0, $21 = 0, $210 = 0, $211 = 0, $212 = 0.0, $213 = 0.0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0.0, $221 = 0; var $222 = 0, $223 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0; var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0; var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0; var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0.0, $9 = 0, $90 = 0.0, $91 = 0, $92 = 0, $93 = 0; var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $B$addr = 0, $B0 = 0, $K = 0, $LM$addr = 0, $N$addr = 0, $X$addr = 0, $Y = 0, $add = 0, $add$ptr = 0, $add$ptr19 = 0, $add$ptr86 = 0, $add103 = 0, $add127 = 0, $add13 = 0; var $add144 = 0, $add197 = 0.0, $add23 = 0, $add48 = 0, $add54 = 0, $add8 = 0, $and = 0, $and164 = 0, $and189 = 0, $and37 = 0, $arch = 0, $arch203 = 0, $arrayidx = 0, $arrayidx11 = 0, $arrayidx179 = 0, $arrayidx196 = 0, $arrayidx198 = 0, $b$addr = 0, $bits = 0, $cache = 0; var $cache6 = 0, $cache7 = 0, $call = 0, $call107 = 0, $call114 = 0, $call130 = 0, $call134 = 0, $call135 = 0, $call145 = 0, $call151 = 0, $call154 = 0, $call156 = 0, $call174 = 0, $call186 = 0, $cm = 0, $cm_mask = 0, $cmp = 0, $cmp120 = 0, $cmp123 = 0, $cmp139 = 0; var $cmp14 = 0, $cmp141 = 0, $cmp148 = 0, $cmp169 = 0, $cmp17 = 0, $cmp172 = 0, $cmp182 = 0, $cmp20 = 0, $cmp34 = 0, $cmp39 = 0, $cmp49 = 0, $cmp58 = 0, $cmp66 = 0, $cmp72 = 0, $cmp89 = 0, $cmp96 = 0, $cmp99 = 0, $cond = 0, $cond195 = 0.0, $cond65 = 0; var $cond81 = 0, $conv = 0, $conv12 = 0, $conv178 = 0.0, $conv30 = 0.0, $conv32 = 0.0, $ctx$addr = 0, $curr_bits = 0, $dec = 0, $delta = 0, $delta27 = 0, $div = 0, $div63 = 0, $div71 = 0, $div77 = 0, $ec = 0, $ec5 = 0, $encode = 0, $fill$addr = 0, $gain$addr = 0.0; var $i = 0, $i3 = 0, $idxprom = 0, $imid = 0, $imid25 = 0, $inc = 0, $inc200 = 0, $index = 0, $iside = 0, $iside26 = 0, $itheta = 0, $itheta28 = 0, $j = 0, $lowband$addr = 0, $m = 0, $m2 = 0, $mbits = 0, $mid = 0.0, $mul = 0, $mul105 = 0.0; var $mul112 = 0.0, $mul129 = 0.0, $mul167 = 0, $mul31 = 0.0, $mul33 = 0.0, $mul92 = 0.0, $nbEBands = 0, $next_lowband2 = 0, $or = 0, $or$cond = 0, $or$cond1 = 0, $or$cond2 = 0, $or110 = 0, $or131 = 0, $q = 0, $qalloc = 0, $qalloc29 = 0, $rebalance = 0, $remaining_bits = 0, $remaining_bits117 = 0; var $remaining_bits138 = 0, $remaining_bits143 = 0, $remaining_bits146 = 0, $remaining_bits88 = 0, $remaining_bits93 = 0, $resynth = 0, $resynth159 = 0, $sbits = 0, $sctx = 0, $seed = 0, $seed175 = 0, $seed176 = 0, $seed185 = 0, $seed187 = 0, $seed188 = 0, $shl = 0, $shl109 = 0, $shl116 = 0, $shl162 = 0, $shl45 = 0; var $shl51 = 0, $shr = 0, $shr106 = 0, $shr108 = 0, $shr113 = 0, $shr115 = 0, $shr177 = 0, $shr24 = 0, $shr43 = 0, $shr47 = 0, $shr53 = 0, $side = 0.0, $spread = 0, $spread4 = 0, $sub = 0, $sub102 = 0, $sub118 = 0, $sub119 = 0, $sub126 = 0, $sub147 = 0; var $sub163 = 0, $sub193 = 0.0, $sub42 = 0, $sub44 = 0, $sub46 = 0, $sub52 = 0, $sub57 = 0, $sub62 = 0, $sub70 = 0, $sub76 = 0, $sub82 = 0, $sub83 = 0, $sub94 = 0, $sub95 = 0, $tmp = 0.0, $tobool = 0, $tobool152 = 0, $tobool160 = 0, $tobool165 = 0, $tobool190 = 0; var $tobool84 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 176|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(176|0); $b$addr = sp + 148|0; $fill$addr = sp + 128|0; $sctx = sp + 24|0; $ctx$addr = $ctx; $X$addr = $X; $N$addr = $N; HEAP32[$b$addr>>2] = $b; $B$addr = $B; $lowband$addr = $lowband; $LM$addr = $LM; $gain$addr = $gain; HEAP32[$fill$addr>>2] = $fill; $imid = 0; $iside = 0; $0 = $B$addr; $B0 = $0; $mid = 0.0; $side = 0.0; $cm = 0; $Y = 0; $1 = $ctx$addr; $2 = HEAP32[$1>>2]|0; $encode = $2; $3 = $ctx$addr; $m2 = ((($3)) + 8|0); $4 = HEAP32[$m2>>2]|0; $m = $4; $5 = $ctx$addr; $i3 = ((($5)) + 12|0); $6 = HEAP32[$i3>>2]|0; $i = $6; $7 = $ctx$addr; $spread4 = ((($7)) + 20|0); $8 = HEAP32[$spread4>>2]|0; $spread = $8; $9 = $ctx$addr; $ec5 = ((($9)) + 28|0); $10 = HEAP32[$ec5>>2]|0; $ec = $10; $11 = $m; $cache6 = ((($11)) + 92|0); $bits = ((($cache6)) + 8|0); $12 = HEAP32[$bits>>2]|0; $13 = $m; $cache7 = ((($13)) + 92|0); $index = ((($cache7)) + 4|0); $14 = HEAP32[$index>>2]|0; $15 = $LM$addr; $add = (($15) + 1)|0; $16 = $m; $nbEBands = ((($16)) + 8|0); $17 = HEAP32[$nbEBands>>2]|0; $mul = Math_imul($add, $17)|0; $18 = $i; $add8 = (($mul) + ($18))|0; $arrayidx = (($14) + ($add8<<1)|0); $19 = HEAP16[$arrayidx>>1]|0; $conv = $19 << 16 >> 16; $add$ptr = (($12) + ($conv)|0); $cache = $add$ptr; $20 = $LM$addr; $cmp = ($20|0)!=(-1); if ($cmp) { $21 = HEAP32[$b$addr>>2]|0; $22 = $cache; $23 = $cache; $24 = HEAP8[$23>>0]|0; $idxprom = $24&255; $arrayidx11 = (($22) + ($idxprom)|0); $25 = HEAP8[$arrayidx11>>0]|0; $conv12 = $25&255; $add13 = (($conv12) + 12)|0; $cmp14 = ($21|0)>($add13|0); $26 = $N$addr; $cmp17 = ($26|0)>(2); $or$cond = $cmp14 & $cmp17; if ($or$cond) { $next_lowband2 = 0; $27 = $N$addr; $shr = $27 >> 1; $N$addr = $shr; $28 = $X$addr; $29 = $N$addr; $add$ptr19 = (($28) + ($29<<2)|0); $Y = $add$ptr19; $30 = $LM$addr; $sub = (($30) - 1)|0; $LM$addr = $sub; $31 = $B$addr; $cmp20 = ($31|0)==(1); if ($cmp20) { $32 = HEAP32[$fill$addr>>2]|0; $and = $32 & 1; $33 = HEAP32[$fill$addr>>2]|0; $shl = $33 << 1; $or = $and | $shl; HEAP32[$fill$addr>>2] = $or; } $34 = $B$addr; $add23 = (($34) + 1)|0; $shr24 = $add23 >> 1; $B$addr = $shr24; $35 = $ctx$addr; $36 = $X$addr; $37 = $Y; $38 = $N$addr; $39 = $B$addr; $40 = $B0; $41 = $LM$addr; _compute_theta($35,$sctx,$36,$37,$38,$b$addr,$39,$40,$41,0,$fill$addr); $imid25 = ((($sctx)) + 4|0); $42 = HEAP32[$imid25>>2]|0; $imid = $42; $iside26 = ((($sctx)) + 8|0); $43 = HEAP32[$iside26>>2]|0; $iside = $43; $delta27 = ((($sctx)) + 12|0); $44 = HEAP32[$delta27>>2]|0; $delta = $44; $itheta28 = ((($sctx)) + 16|0); $45 = HEAP32[$itheta28>>2]|0; $itheta = $45; $qalloc29 = ((($sctx)) + 20|0); $46 = HEAP32[$qalloc29>>2]|0; $qalloc = $46; $47 = $imid; $conv30 = (+($47|0)); $mul31 = 3.0517578125E-5 * $conv30; $mid = $mul31; $48 = $iside; $conv32 = (+($48|0)); $mul33 = 3.0517578125E-5 * $conv32; $side = $mul33; $49 = $B0; $cmp34 = ($49|0)>(1); do { if ($cmp34) { $50 = $itheta; $and37 = $50 & 16383; $tobool = ($and37|0)!=(0); if ($tobool) { $51 = $itheta; $cmp39 = ($51|0)>(8192); $52 = $delta; if ($cmp39) { $53 = $LM$addr; $sub42 = (4 - ($53))|0; $shr43 = $52 >> $sub42; $54 = $delta; $sub44 = (($54) - ($shr43))|0; $delta = $sub44; break; } $55 = $N$addr; $shl45 = $55 << 3; $56 = $LM$addr; $sub46 = (5 - ($56))|0; $shr47 = $shl45 >> $sub46; $add48 = (($52) + ($shr47))|0; $cmp49 = (0)<($add48|0); if ($cmp49) { $cond = 0; } else { $57 = $delta; $58 = $N$addr; $shl51 = $58 << 3; $59 = $LM$addr; $sub52 = (5 - ($59))|0; $shr53 = $shl51 >> $sub52; $add54 = (($57) + ($shr53))|0; $cond = $add54; } $delta = $cond; } } } while(0); $60 = HEAP32[$b$addr>>2]|0; $61 = HEAP32[$b$addr>>2]|0; $62 = $delta; $sub57 = (($61) - ($62))|0; $div = (($sub57|0) / 2)&-1; $cmp58 = ($60|0)<($div|0); $63 = HEAP32[$b$addr>>2]|0; if ($cmp58) { $cond65 = $63; } else { $64 = $delta; $sub62 = (($63) - ($64))|0; $div63 = (($sub62|0) / 2)&-1; $cond65 = $div63; } $cmp66 = (0)>($cond65|0); if ($cmp66) { $cond81 = 0; } else { $65 = HEAP32[$b$addr>>2]|0; $66 = HEAP32[$b$addr>>2]|0; $67 = $delta; $sub70 = (($66) - ($67))|0; $div71 = (($sub70|0) / 2)&-1; $cmp72 = ($65|0)<($div71|0); $68 = HEAP32[$b$addr>>2]|0; if ($cmp72) { $cond81 = $68; } else { $69 = $delta; $sub76 = (($68) - ($69))|0; $div77 = (($sub76|0) / 2)&-1; $cond81 = $div77; } } $mbits = $cond81; $70 = HEAP32[$b$addr>>2]|0; $71 = $mbits; $sub82 = (($70) - ($71))|0; $sbits = $sub82; $72 = $qalloc; $73 = $ctx$addr; $remaining_bits = ((($73)) + 32|0); $74 = HEAP32[$remaining_bits>>2]|0; $sub83 = (($74) - ($72))|0; HEAP32[$remaining_bits>>2] = $sub83; $75 = $lowband$addr; $tobool84 = ($75|0)!=(0|0); if ($tobool84) { $76 = $lowband$addr; $77 = $N$addr; $add$ptr86 = (($76) + ($77<<2)|0); $next_lowband2 = $add$ptr86; } $78 = $ctx$addr; $remaining_bits88 = ((($78)) + 32|0); $79 = HEAP32[$remaining_bits88>>2]|0; $rebalance = $79; $80 = $mbits; $81 = $sbits; $cmp89 = ($80|0)>=($81|0); $82 = $ctx$addr; if ($cmp89) { $83 = $X$addr; $84 = $N$addr; $85 = $mbits; $86 = $B$addr; $87 = $lowband$addr; $88 = $LM$addr; $89 = $gain$addr; $90 = $mid; $mul92 = $89 * $90; $91 = HEAP32[$fill$addr>>2]|0; $call = (_quant_partition($82,$83,$84,$85,$86,$87,$88,$mul92,$91)|0); $cm = $call; $92 = $mbits; $93 = $rebalance; $94 = $ctx$addr; $remaining_bits93 = ((($94)) + 32|0); $95 = HEAP32[$remaining_bits93>>2]|0; $sub94 = (($93) - ($95))|0; $sub95 = (($92) - ($sub94))|0; $rebalance = $sub95; $96 = $rebalance; $cmp96 = ($96|0)>(24); $97 = $itheta; $cmp99 = ($97|0)!=(0); $or$cond1 = $cmp96 & $cmp99; if ($or$cond1) { $98 = $rebalance; $sub102 = (($98) - 24)|0; $99 = $sbits; $add103 = (($99) + ($sub102))|0; $sbits = $add103; } $100 = $ctx$addr; $101 = $Y; $102 = $N$addr; $103 = $sbits; $104 = $B$addr; $105 = $next_lowband2; $106 = $LM$addr; $107 = $gain$addr; $108 = $side; $mul105 = $107 * $108; $109 = HEAP32[$fill$addr>>2]|0; $110 = $B$addr; $shr106 = $109 >> $110; $call107 = (_quant_partition($100,$101,$102,$103,$104,$105,$106,$mul105,$shr106)|0); $111 = $B0; $shr108 = $111 >> 1; $shl109 = $call107 << $shr108; $112 = $cm; $or110 = $112 | $shl109; $cm = $or110; $223 = $cm; STACKTOP = sp;return ($223|0); } else { $113 = $Y; $114 = $N$addr; $115 = $sbits; $116 = $B$addr; $117 = $next_lowband2; $118 = $LM$addr; $119 = $gain$addr; $120 = $side; $mul112 = $119 * $120; $121 = HEAP32[$fill$addr>>2]|0; $122 = $B$addr; $shr113 = $121 >> $122; $call114 = (_quant_partition($82,$113,$114,$115,$116,$117,$118,$mul112,$shr113)|0); $123 = $B0; $shr115 = $123 >> 1; $shl116 = $call114 << $shr115; $cm = $shl116; $124 = $sbits; $125 = $rebalance; $126 = $ctx$addr; $remaining_bits117 = ((($126)) + 32|0); $127 = HEAP32[$remaining_bits117>>2]|0; $sub118 = (($125) - ($127))|0; $sub119 = (($124) - ($sub118))|0; $rebalance = $sub119; $128 = $rebalance; $cmp120 = ($128|0)>(24); $129 = $itheta; $cmp123 = ($129|0)!=(16384); $or$cond2 = $cmp120 & $cmp123; if ($or$cond2) { $130 = $rebalance; $sub126 = (($130) - 24)|0; $131 = $mbits; $add127 = (($131) + ($sub126))|0; $mbits = $add127; } $132 = $ctx$addr; $133 = $X$addr; $134 = $N$addr; $135 = $mbits; $136 = $B$addr; $137 = $lowband$addr; $138 = $LM$addr; $139 = $gain$addr; $140 = $mid; $mul129 = $139 * $140; $141 = HEAP32[$fill$addr>>2]|0; $call130 = (_quant_partition($132,$133,$134,$135,$136,$137,$138,$mul129,$141)|0); $142 = $cm; $or131 = $142 | $call130; $cm = $or131; $223 = $cm; STACKTOP = sp;return ($223|0); } } } $143 = $m; $144 = $i; $145 = $LM$addr; $146 = HEAP32[$b$addr>>2]|0; $call134 = (_bits2pulses($143,$144,$145,$146)|0); $q = $call134; $147 = $m; $148 = $i; $149 = $LM$addr; $150 = $q; $call135 = (_pulses2bits($147,$148,$149,$150)|0); $curr_bits = $call135; $151 = $curr_bits; $152 = $ctx$addr; $$sink = $152;$$sink3 = $151; while(1) { $remaining_bits146 = ((($$sink)) + 32|0); $153 = HEAP32[$remaining_bits146>>2]|0; $sub147 = (($153) - ($$sink3))|0; HEAP32[$remaining_bits146>>2] = $sub147; $154 = $ctx$addr; $remaining_bits138 = ((($154)) + 32|0); $155 = HEAP32[$remaining_bits138>>2]|0; $cmp139 = ($155|0)<(0); $156 = $q; $cmp141 = ($156|0)>(0); $157 = $cmp139 ? $cmp141 : 0; if (!($157)) { break; } $158 = $curr_bits; $159 = $ctx$addr; $remaining_bits143 = ((($159)) + 32|0); $160 = HEAP32[$remaining_bits143>>2]|0; $add144 = (($160) + ($158))|0; HEAP32[$remaining_bits143>>2] = $add144; $161 = $q; $dec = (($161) + -1)|0; $q = $dec; $162 = $m; $163 = $i; $164 = $LM$addr; $165 = $q; $call145 = (_pulses2bits($162,$163,$164,$165)|0); $curr_bits = $call145; $166 = $curr_bits; $167 = $ctx$addr; $$sink = $167;$$sink3 = $166; } $168 = $q; $cmp148 = ($168|0)!=(0); if ($cmp148) { $169 = $q; $call151 = (_get_pulses($169)|0); $K = $call151; $170 = $encode; $tobool152 = ($170|0)!=(0); $171 = $X$addr; $172 = $N$addr; $173 = $K; $174 = $spread; $175 = $B$addr; $176 = $ec; $177 = $gain$addr; if ($tobool152) { $178 = $ctx$addr; $resynth = ((($178)) + 4|0); $179 = HEAP32[$resynth>>2]|0; $180 = $ctx$addr; $arch = ((($180)) + 44|0); $181 = HEAP32[$arch>>2]|0; $call154 = (_alg_quant($171,$172,$173,$174,$175,$176,$177,$179,$181)|0); $cm = $call154; $223 = $cm; STACKTOP = sp;return ($223|0); } else { $call156 = (_alg_unquant($171,$172,$173,$174,$175,$176,$177)|0); $cm = $call156; $223 = $cm; STACKTOP = sp;return ($223|0); } } $182 = $ctx$addr; $resynth159 = ((($182)) + 4|0); $183 = HEAP32[$resynth159>>2]|0; $tobool160 = ($183|0)!=(0); if (!($tobool160)) { $223 = $cm; STACKTOP = sp;return ($223|0); } $184 = $B$addr; $shl162 = 1 << $184; $sub163 = (($shl162) - 1)|0; $cm_mask = $sub163; $185 = $cm_mask; $186 = HEAP32[$fill$addr>>2]|0; $and164 = $186 & $185; HEAP32[$fill$addr>>2] = $and164; $187 = HEAP32[$fill$addr>>2]|0; $tobool165 = ($187|0)!=(0); if (!($tobool165)) { $188 = $X$addr; $189 = $N$addr; $mul167 = $189<<2; _memset(($188|0),0,($mul167|0))|0; $223 = $cm; STACKTOP = sp;return ($223|0); } $190 = $lowband$addr; $cmp169 = ($190|0)==(0|0); $j = 0; if ($cmp169) { while(1) { $191 = $j; $192 = $N$addr; $cmp172 = ($191|0)<($192|0); if (!($cmp172)) { break; } $193 = $ctx$addr; $seed = ((($193)) + 40|0); $194 = HEAP32[$seed>>2]|0; $call174 = (_celt_lcg_rand($194)|0); $195 = $ctx$addr; $seed175 = ((($195)) + 40|0); HEAP32[$seed175>>2] = $call174; $196 = $ctx$addr; $seed176 = ((($196)) + 40|0); $197 = HEAP32[$seed176>>2]|0; $shr177 = $197 >> 20; $conv178 = (+($shr177|0)); $198 = $X$addr; $199 = $j; $arrayidx179 = (($198) + ($199<<2)|0); HEAPF32[$arrayidx179>>2] = $conv178; $200 = $j; $inc = (($200) + 1)|0; $j = $inc; } $201 = $cm_mask; $cm = $201; } else { while(1) { $202 = $j; $203 = $N$addr; $cmp182 = ($202|0)<($203|0); if (!($cmp182)) { break; } $204 = $ctx$addr; $seed185 = ((($204)) + 40|0); $205 = HEAP32[$seed185>>2]|0; $call186 = (_celt_lcg_rand($205)|0); $206 = $ctx$addr; $seed187 = ((($206)) + 40|0); HEAP32[$seed187>>2] = $call186; $tmp = 0.00390625; $207 = $ctx$addr; $seed188 = ((($207)) + 40|0); $208 = HEAP32[$seed188>>2]|0; $and189 = $208 & 32768; $tobool190 = ($and189|0)!=(0); $209 = $tmp; $sub193 = - $209; $cond195 = $tobool190 ? $209 : $sub193; $tmp = $cond195; $210 = $lowband$addr; $211 = $j; $arrayidx196 = (($210) + ($211<<2)|0); $212 = +HEAPF32[$arrayidx196>>2]; $213 = $tmp; $add197 = $212 + $213; $214 = $X$addr; $215 = $j; $arrayidx198 = (($214) + ($215<<2)|0); HEAPF32[$arrayidx198>>2] = $add197; $216 = $j; $inc200 = (($216) + 1)|0; $j = $inc200; } $217 = HEAP32[$fill$addr>>2]|0; $cm = $217; } $218 = $X$addr; $219 = $N$addr; $220 = $gain$addr; $221 = $ctx$addr; $arch203 = ((($221)) + 44|0); $222 = HEAP32[$arch203>>2]|0; _renormalise_vector($218,$219,$220,$222); $223 = $cm; STACKTOP = sp;return ($223|0); } function _interleave_hadamard($X,$N0,$stride,$hadamard) { $X = $X|0; $N0 = $N0|0; $stride = $stride|0; $hadamard = $hadamard|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0.0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0.0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; var $N = 0, $N0$addr = 0, $X$addr = 0, $add = 0, $add$ptr = 0, $add$ptr1 = 0, $add20 = 0, $add23 = 0, $add33 = 0, $add8 = 0, $arrayidx = 0, $arrayidx21 = 0, $arrayidx24 = 0, $arrayidx6 = 0, $arrayidx9 = 0, $cmp = 0, $cmp14 = 0, $cmp17 = 0, $cmp3 = 0, $hadamard$addr = 0; var $i = 0, $inc = 0, $inc11 = 0, $inc26 = 0, $inc29 = 0, $j = 0, $mul = 0, $mul19 = 0, $mul22 = 0, $mul31 = 0, $mul32 = 0, $mul5 = 0, $mul7 = 0, $ordery = 0, $saved_stack = 0, $stride$addr = 0, $sub$ptr$div = 0, $sub$ptr$lhs$cast = 0, $sub$ptr$rhs$cast = 0, $sub$ptr$sub = 0; var $tobool = 0, $vla = 0, $vla$alloca_mul = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $X$addr = $X; $N0$addr = $N0; $stride$addr = $stride; $hadamard$addr = $hadamard; $0 = $N0$addr; $1 = $stride$addr; $mul = Math_imul($0, $1)|0; $N = $mul; $2 = $N; $3 = (_llvm_stacksave()|0); $saved_stack = $3; $vla$alloca_mul = $2<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $4 = $hadamard$addr; $tobool = ($4|0)!=(0); if ($tobool) { $5 = $stride$addr; $add$ptr = (15420 + ($5<<2)|0); $add$ptr1 = ((($add$ptr)) + -8|0); $ordery = $add$ptr1; $i = 0; while(1) { $6 = $i; $7 = $stride$addr; $cmp = ($6|0)<($7|0); if (!($cmp)) { break; } $j = 0; while(1) { $8 = $j; $9 = $N0$addr; $cmp3 = ($8|0)<($9|0); if (!($cmp3)) { break; } $10 = $X$addr; $11 = $ordery; $12 = $i; $arrayidx = (($11) + ($12<<2)|0); $13 = HEAP32[$arrayidx>>2]|0; $14 = $N0$addr; $mul5 = Math_imul($13, $14)|0; $15 = $j; $add = (($mul5) + ($15))|0; $arrayidx6 = (($10) + ($add<<2)|0); $16 = +HEAPF32[$arrayidx6>>2]; $17 = $j; $18 = $stride$addr; $mul7 = Math_imul($17, $18)|0; $19 = $i; $add8 = (($mul7) + ($19))|0; $arrayidx9 = (($vla) + ($add8<<2)|0); HEAPF32[$arrayidx9>>2] = $16; $20 = $j; $inc = (($20) + 1)|0; $j = $inc; } $21 = $i; $inc11 = (($21) + 1)|0; $i = $inc11; } $36 = $X$addr; $37 = $N; $mul31 = $37<<2; $38 = $X$addr; $sub$ptr$lhs$cast = $38; $sub$ptr$rhs$cast = $vla; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $sub$ptr$div = (($sub$ptr$sub|0) / 4)&-1; $mul32 = 0; $add33 = (($mul31) + ($mul32))|0; _memcpy(($36|0),($vla|0),($add33|0))|0; $39 = $saved_stack; _llvm_stackrestore(($39|0)); STACKTOP = sp;return; } else { $i = 0; while(1) { $22 = $i; $23 = $stride$addr; $cmp14 = ($22|0)<($23|0); if (!($cmp14)) { break; } $j = 0; while(1) { $24 = $j; $25 = $N0$addr; $cmp17 = ($24|0)<($25|0); if (!($cmp17)) { break; } $26 = $X$addr; $27 = $i; $28 = $N0$addr; $mul19 = Math_imul($27, $28)|0; $29 = $j; $add20 = (($mul19) + ($29))|0; $arrayidx21 = (($26) + ($add20<<2)|0); $30 = +HEAPF32[$arrayidx21>>2]; $31 = $j; $32 = $stride$addr; $mul22 = Math_imul($31, $32)|0; $33 = $i; $add23 = (($mul22) + ($33))|0; $arrayidx24 = (($vla) + ($add23<<2)|0); HEAPF32[$arrayidx24>>2] = $30; $34 = $j; $inc26 = (($34) + 1)|0; $j = $inc26; } $35 = $i; $inc29 = (($35) + 1)|0; $i = $inc29; } $36 = $X$addr; $37 = $N; $mul31 = $37<<2; $38 = $X$addr; $sub$ptr$lhs$cast = $38; $sub$ptr$rhs$cast = $vla; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $sub$ptr$div = (($sub$ptr$sub|0) / 4)&-1; $mul32 = 0; $add33 = (($mul31) + ($mul32))|0; _memcpy(($36|0),($vla|0),($add33|0))|0; $39 = $saved_stack; _llvm_stackrestore(($39|0)); STACKTOP = sp;return; } } function _bits2pulses($m,$band,$LM,$bits) { $m = $m|0; $band = $band|0; $LM = $LM|0; $bits = $bits|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $LM$addr = 0, $add = 0, $add$ptr = 0, $add7 = 0, $add8 = 0, $arrayidx = 0; var $arrayidx16 = 0, $arrayidx18 = 0, $arrayidx9 = 0, $band$addr = 0, $bits$addr = 0, $bits2 = 0, $cache = 0, $cache1 = 0, $cache3 = 0, $cmp = 0, $cmp11 = 0, $cmp14 = 0, $cmp21 = 0, $cond = 0, $conv = 0, $conv10 = 0, $conv17 = 0, $conv19 = 0, $conv5 = 0, $dec = 0; var $hi = 0, $i = 0, $inc = 0, $inc13 = 0, $index = 0, $lo = 0, $m$addr = 0, $mid = 0, $mul = 0, $nbEBands = 0, $retval = 0, $shr = 0, $sub = 0, $sub20 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $m$addr = $m; $band$addr = $band; $LM$addr = $LM; $bits$addr = $bits; $0 = $LM$addr; $inc = (($0) + 1)|0; $LM$addr = $inc; $1 = $m$addr; $cache1 = ((($1)) + 92|0); $bits2 = ((($cache1)) + 8|0); $2 = HEAP32[$bits2>>2]|0; $3 = $m$addr; $cache3 = ((($3)) + 92|0); $index = ((($cache3)) + 4|0); $4 = HEAP32[$index>>2]|0; $5 = $LM$addr; $6 = $m$addr; $nbEBands = ((($6)) + 8|0); $7 = HEAP32[$nbEBands>>2]|0; $mul = Math_imul($5, $7)|0; $8 = $band$addr; $add = (($mul) + ($8))|0; $arrayidx = (($4) + ($add<<1)|0); $9 = HEAP16[$arrayidx>>1]|0; $conv = $9 << 16 >> 16; $add$ptr = (($2) + ($conv)|0); $cache = $add$ptr; $lo = 0; $10 = $cache; $11 = HEAP8[$10>>0]|0; $conv5 = $11&255; $hi = $conv5; $12 = $bits$addr; $dec = (($12) + -1)|0; $bits$addr = $dec; $i = 0; while(1) { $13 = $i; $cmp = ($13|0)<(6); if (!($cmp)) { break; } $14 = $lo; $15 = $hi; $add7 = (($14) + ($15))|0; $add8 = (($add7) + 1)|0; $shr = $add8 >> 1; $mid = $shr; $16 = $cache; $17 = $mid; $arrayidx9 = (($16) + ($17)|0); $18 = HEAP8[$arrayidx9>>0]|0; $conv10 = $18&255; $19 = $bits$addr; $cmp11 = ($conv10|0)>=($19|0); $20 = $mid; if ($cmp11) { $hi = $20; } else { $lo = $20; } $21 = $i; $inc13 = (($21) + 1)|0; $i = $inc13; } $22 = $bits$addr; $23 = $lo; $cmp14 = ($23|0)==(0); if ($cmp14) { $cond = -1; } else { $24 = $cache; $25 = $lo; $arrayidx16 = (($24) + ($25)|0); $26 = HEAP8[$arrayidx16>>0]|0; $conv17 = $26&255; $cond = $conv17; } $sub = (($22) - ($cond))|0; $27 = $cache; $28 = $hi; $arrayidx18 = (($27) + ($28)|0); $29 = HEAP8[$arrayidx18>>0]|0; $conv19 = $29&255; $30 = $bits$addr; $sub20 = (($conv19) - ($30))|0; $cmp21 = ($sub|0)<=($sub20|0); if ($cmp21) { $31 = $lo; $retval = $31; $33 = $retval; STACKTOP = sp;return ($33|0); } else { $32 = $hi; $retval = $32; $33 = $retval; STACKTOP = sp;return ($33|0); } return (0)|0; } function _pulses2bits($m,$band,$LM,$pulses) { $m = $m|0; $band = $band|0; $LM = $LM|0; $pulses = $pulses|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $LM$addr = 0, $add = 0, $add$ptr = 0, $add6 = 0, $arrayidx = 0, $arrayidx4 = 0; var $band$addr = 0, $bits = 0, $cache = 0, $cache1 = 0, $cache2 = 0, $cmp = 0, $cond = 0, $conv = 0, $conv5 = 0, $inc = 0, $index = 0, $m$addr = 0, $mul = 0, $nbEBands = 0, $pulses$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $m$addr = $m; $band$addr = $band; $LM$addr = $LM; $pulses$addr = $pulses; $0 = $LM$addr; $inc = (($0) + 1)|0; $LM$addr = $inc; $1 = $m$addr; $cache1 = ((($1)) + 92|0); $bits = ((($cache1)) + 8|0); $2 = HEAP32[$bits>>2]|0; $3 = $m$addr; $cache2 = ((($3)) + 92|0); $index = ((($cache2)) + 4|0); $4 = HEAP32[$index>>2]|0; $5 = $LM$addr; $6 = $m$addr; $nbEBands = ((($6)) + 8|0); $7 = HEAP32[$nbEBands>>2]|0; $mul = Math_imul($5, $7)|0; $8 = $band$addr; $add = (($mul) + ($8))|0; $arrayidx = (($4) + ($add<<1)|0); $9 = HEAP16[$arrayidx>>1]|0; $conv = $9 << 16 >> 16; $add$ptr = (($2) + ($conv)|0); $cache = $add$ptr; $10 = $pulses$addr; $cmp = ($10|0)==(0); if ($cmp) { $cond = 0; STACKTOP = sp;return ($cond|0); } $11 = $cache; $12 = $pulses$addr; $arrayidx4 = (($11) + ($12)|0); $13 = HEAP8[$arrayidx4>>0]|0; $conv5 = $13&255; $add6 = (($conv5) + 1)|0; $cond = $add6; STACKTOP = sp;return ($cond|0); } function _get_pulses($i) { $i = $i|0; var $0 = 0, $1 = 0, $2 = 0, $add = 0, $and = 0, $cmp = 0, $cond = 0, $i$addr = 0, $shl = 0, $shr = 0, $sub = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $i$addr = $i; $0 = $i$addr; $cmp = ($0|0)<(8); $1 = $i$addr; if ($cmp) { $cond = $1; STACKTOP = sp;return ($cond|0); } $and = $1 & 7; $add = (8 + ($and))|0; $2 = $i$addr; $shr = $2 >> 3; $sub = (($shr) - 1)|0; $shl = $add << $sub; $cond = $shl; STACKTOP = sp;return ($cond|0); } function _resampling_factor($rate) { $rate = $rate|0; var $0 = 0, $1 = 0, $rate$addr = 0, $ret = 0, $switch$split12D = 0, $switch$split2D = 0, $switch$split42D = 0, $switch$split72D = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $rate$addr = $rate; $0 = $rate$addr; $switch$split2D = ($0|0)<(16000); L1: do { if ($switch$split2D) { $switch$split12D = ($0|0)<(12000); if ($switch$split12D) { switch ($0|0) { case 8000: { break; } default: { label = 7; break L1; } } $ret = 6; break; } else { switch ($0|0) { case 12000: { break; } default: { label = 7; break L1; } } $ret = 4; break; } } else { $switch$split42D = ($0|0)<(24000); if ($switch$split42D) { switch ($0|0) { case 16000: { break; } default: { label = 7; break L1; } } $ret = 3; break; } $switch$split72D = ($0|0)<(48000); if ($switch$split72D) { switch ($0|0) { case 24000: { break; } default: { label = 7; break L1; } } $ret = 2; break; } else { switch ($0|0) { case 48000: { break; } default: { label = 7; break L1; } } $ret = 1; break; } } } while(0); if ((label|0) == 7) { $ret = 0; } $1 = $ret; STACKTOP = sp;return ($1|0); } function _comb_filter($y,$x,$T0,$T1,$N,$g0,$g1,$tapset0,$tapset1,$window,$overlap,$arch) { $y = $y|0; $x = $x|0; $T0 = $T0|0; $T1 = $T1|0; $N = $N|0; $g0 = +$g0; $g1 = +$g1; $tapset0 = $tapset0|0; $tapset1 = $tapset1|0; $window = $window|0; $overlap = $overlap|0; $arch = $arch|0; var $0 = 0.0, $1 = 0.0, $10 = 0, $100 = 0.0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0.0, $106 = 0, $107 = 0, $108 = 0.0, $109 = 0.0, $11 = 0, $110 = 0.0, $111 = 0.0, $112 = 0, $113 = 0.0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0.0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0, $135 = 0.0, $136 = 0.0, $137 = 0.0, $14 = 0, $15 = 0.0, $16 = 0.0, $17 = 0, $18 = 0.0, $19 = 0.0, $2 = 0, $20 = 0, $21 = 0.0, $22 = 0.0, $23 = 0, $24 = 0.0, $25 = 0.0, $26 = 0, $27 = 0.0, $28 = 0.0; var $29 = 0, $3 = 0, $30 = 0.0, $31 = 0, $32 = 0, $33 = 0.0, $34 = 0, $35 = 0, $36 = 0.0, $37 = 0, $38 = 0, $39 = 0.0, $4 = 0, $40 = 0, $41 = 0, $42 = 0.0, $43 = 0.0, $44 = 0.0, $45 = 0, $46 = 0; var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0.0, $55 = 0, $56 = 0, $57 = 0.0, $58 = 0, $59 = 0, $6 = 0, $60 = 0.0, $61 = 0, $62 = 0, $63 = 0.0, $64 = 0.0; var $65 = 0.0, $66 = 0, $67 = 0, $68 = 0, $69 = 0.0, $7 = 0, $70 = 0.0, $71 = 0.0, $72 = 0, $73 = 0, $74 = 0, $75 = 0.0, $76 = 0, $77 = 0, $78 = 0, $79 = 0.0, $8 = 0, $80 = 0.0, $81 = 0.0, $82 = 0; var $83 = 0, $84 = 0, $85 = 0.0, $86 = 0, $87 = 0, $88 = 0, $89 = 0.0, $9 = 0, $90 = 0.0, $91 = 0.0, $92 = 0.0, $93 = 0.0, $94 = 0.0, $95 = 0.0, $96 = 0.0, $97 = 0.0, $98 = 0.0, $99 = 0.0, $N$addr = 0, $T0$addr = 0; var $T1$addr = 0, $add = 0, $add$ptr = 0, $add$ptr100 = 0, $add$ptr103 = 0, $add$ptr104 = 0, $add$ptr114 = 0, $add$ptr115 = 0, $add110 = 0, $add29 = 0, $add48 = 0, $add59 = 0.0, $add63 = 0, $add68 = 0.0, $add70 = 0.0, $add74 = 0, $add79 = 0.0, $add81 = 0.0, $add84 = 0.0, $add86 = 0.0; var $add88 = 0.0, $add90 = 0.0, $add92 = 0.0, $and = 0, $arch$addr = 0, $arrayidx = 0, $arrayidx113 = 0, $arrayidx14 = 0, $arrayidx15 = 0, $arrayidx17 = 0, $arrayidx18 = 0, $arrayidx20 = 0, $arrayidx23 = 0, $arrayidx24 = 0, $arrayidx26 = 0, $arrayidx27 = 0, $arrayidx30 = 0, $arrayidx32 = 0, $arrayidx35 = 0, $arrayidx38 = 0; var $arrayidx49 = 0, $arrayidx50 = 0, $arrayidx51 = 0, $arrayidx53 = 0, $arrayidx57 = 0, $arrayidx64 = 0, $arrayidx67 = 0, $arrayidx75 = 0, $arrayidx78 = 0, $arrayidx93 = 0, $arrayidx94 = 0, $arrayidx95 = 0, $cmp = 0, $cmp1 = 0, $cmp2 = 0, $cmp39 = 0, $cmp41 = 0, $cmp43 = 0, $cmp46 = 0, $cmp6 = 0; var $cmp7 = 0, $cmp96 = 0, $cmp98 = 0, $cond = 0, $cond11 = 0, $f = 0.0, $g0$addr = 0.0, $g00 = 0.0, $g01 = 0.0, $g02 = 0.0, $g1$addr = 0.0, $g10 = 0.0, $g11 = 0.0, $g12 = 0.0, $i = 0, $inc = 0, $mul = 0, $mul102 = 0, $mul109 = 0, $mul13 = 0.0; var $mul16 = 0.0, $mul19 = 0.0, $mul22 = 0.0, $mul25 = 0.0, $mul28 = 0.0, $mul4 = 0, $mul52 = 0.0, $mul55 = 0.0, $mul58 = 0.0, $mul61 = 0.0, $mul69 = 0.0, $mul72 = 0.0, $mul80 = 0.0, $mul82 = 0.0, $mul83 = 0.0, $mul85 = 0.0, $mul87 = 0.0, $mul89 = 0.0, $mul91 = 0.0, $or$cond = 0; var $overlap$addr = 0, $sub = 0, $sub$ptr$div = 0, $sub$ptr$div108 = 0, $sub$ptr$lhs$cast = 0, $sub$ptr$lhs$cast105 = 0, $sub$ptr$rhs$cast = 0, $sub$ptr$rhs$cast106 = 0, $sub$ptr$sub = 0, $sub$ptr$sub107 = 0, $sub101 = 0, $sub116 = 0, $sub31 = 0, $sub33 = 0, $sub34 = 0, $sub36 = 0, $sub37 = 0, $sub47 = 0, $sub54 = 0.0, $sub56 = 0; var $sub60 = 0.0, $sub62 = 0, $sub65 = 0, $sub66 = 0, $sub71 = 0.0, $sub73 = 0, $sub76 = 0, $sub77 = 0, $tapset0$addr = 0, $tapset1$addr = 0, $window$addr = 0, $x$addr = 0, $x0 = 0.0, $x1 = 0.0, $x2 = 0.0, $x3 = 0.0, $x4 = 0.0, $y$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 112|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(112|0); $y$addr = $y; $x$addr = $x; $T0$addr = $T0; $T1$addr = $T1; $N$addr = $N; $g0$addr = $g0; $g1$addr = $g1; $tapset0$addr = $tapset0; $tapset1$addr = $tapset1; $window$addr = $window; $overlap$addr = $overlap; $arch$addr = $arch; $0 = $g0$addr; $cmp = $0 == 0.0; $1 = $g1$addr; $cmp1 = $1 == 0.0; $or$cond = $cmp & $cmp1; if ($or$cond) { $2 = $x$addr; $3 = $y$addr; $cmp2 = ($2|0)!=($3|0); if (!($cmp2)) { STACKTOP = sp;return; } $4 = $y$addr; $5 = $x$addr; $6 = $N$addr; $mul = $6<<2; $7 = $y$addr; $8 = $x$addr; $sub$ptr$lhs$cast = $7; $sub$ptr$rhs$cast = $8; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $sub$ptr$div = (($sub$ptr$sub|0) / 4)&-1; $mul4 = 0; $add = (($mul) + ($mul4))|0; _memmove(($4|0),($5|0),($add|0))|0; STACKTOP = sp;return; } $9 = $T0$addr; $cmp6 = ($9|0)>(15); $10 = $T0$addr; $cond = $cmp6 ? $10 : 15; $T0$addr = $cond; $11 = $T1$addr; $cmp7 = ($11|0)>(15); $12 = $T1$addr; $cond11 = $cmp7 ? $12 : 15; $T1$addr = $cond11; $13 = $g0$addr; $14 = $tapset0$addr; $arrayidx = (15540 + (($14*12)|0)|0); $15 = +HEAPF32[$arrayidx>>2]; $mul13 = $13 * $15; $g00 = $mul13; $16 = $g0$addr; $17 = $tapset0$addr; $arrayidx14 = (15540 + (($17*12)|0)|0); $arrayidx15 = ((($arrayidx14)) + 4|0); $18 = +HEAPF32[$arrayidx15>>2]; $mul16 = $16 * $18; $g01 = $mul16; $19 = $g0$addr; $20 = $tapset0$addr; $arrayidx17 = (15540 + (($20*12)|0)|0); $arrayidx18 = ((($arrayidx17)) + 8|0); $21 = +HEAPF32[$arrayidx18>>2]; $mul19 = $19 * $21; $g02 = $mul19; $22 = $g1$addr; $23 = $tapset1$addr; $arrayidx20 = (15540 + (($23*12)|0)|0); $24 = +HEAPF32[$arrayidx20>>2]; $mul22 = $22 * $24; $g10 = $mul22; $25 = $g1$addr; $26 = $tapset1$addr; $arrayidx23 = (15540 + (($26*12)|0)|0); $arrayidx24 = ((($arrayidx23)) + 4|0); $27 = +HEAPF32[$arrayidx24>>2]; $mul25 = $25 * $27; $g11 = $mul25; $28 = $g1$addr; $29 = $tapset1$addr; $arrayidx26 = (15540 + (($29*12)|0)|0); $arrayidx27 = ((($arrayidx26)) + 8|0); $30 = +HEAPF32[$arrayidx27>>2]; $mul28 = $28 * $30; $g12 = $mul28; $31 = $x$addr; $32 = $T1$addr; $sub = (0 - ($32))|0; $add29 = (($sub) + 1)|0; $arrayidx30 = (($31) + ($add29<<2)|0); $33 = +HEAPF32[$arrayidx30>>2]; $x1 = $33; $34 = $x$addr; $35 = $T1$addr; $sub31 = (0 - ($35))|0; $arrayidx32 = (($34) + ($sub31<<2)|0); $36 = +HEAPF32[$arrayidx32>>2]; $x2 = $36; $37 = $x$addr; $38 = $T1$addr; $sub33 = (0 - ($38))|0; $sub34 = (($sub33) - 1)|0; $arrayidx35 = (($37) + ($sub34<<2)|0); $39 = +HEAPF32[$arrayidx35>>2]; $x3 = $39; $40 = $x$addr; $41 = $T1$addr; $sub36 = (0 - ($41))|0; $sub37 = (($sub36) - 2)|0; $arrayidx38 = (($40) + ($sub37<<2)|0); $42 = +HEAPF32[$arrayidx38>>2]; $x4 = $42; $43 = $g0$addr; $44 = $g1$addr; $cmp39 = $43 == $44; if ($cmp39) { $45 = $T0$addr; $46 = $T1$addr; $cmp41 = ($45|0)==($46|0); if ($cmp41) { $47 = $tapset0$addr; $48 = $tapset1$addr; $cmp43 = ($47|0)==($48|0); if ($cmp43) { $overlap$addr = 0; } } } $i = 0; while(1) { $49 = $i; $50 = $overlap$addr; $cmp46 = ($49|0)<($50|0); if (!($cmp46)) { break; } $51 = $x$addr; $52 = $i; $53 = $T1$addr; $sub47 = (($52) - ($53))|0; $add48 = (($sub47) + 2)|0; $arrayidx49 = (($51) + ($add48<<2)|0); $54 = +HEAPF32[$arrayidx49>>2]; $x0 = $54; $55 = $window$addr; $56 = $i; $arrayidx50 = (($55) + ($56<<2)|0); $57 = +HEAPF32[$arrayidx50>>2]; $58 = $window$addr; $59 = $i; $arrayidx51 = (($58) + ($59<<2)|0); $60 = +HEAPF32[$arrayidx51>>2]; $mul52 = $57 * $60; $f = $mul52; $61 = $x$addr; $62 = $i; $arrayidx53 = (($61) + ($62<<2)|0); $63 = +HEAPF32[$arrayidx53>>2]; $64 = $f; $sub54 = 1.0 - $64; $65 = $g00; $mul55 = $sub54 * $65; $66 = $x$addr; $67 = $i; $68 = $T0$addr; $sub56 = (($67) - ($68))|0; $arrayidx57 = (($66) + ($sub56<<2)|0); $69 = +HEAPF32[$arrayidx57>>2]; $mul58 = $mul55 * $69; $add59 = $63 + $mul58; $70 = $f; $sub60 = 1.0 - $70; $71 = $g01; $mul61 = $sub60 * $71; $72 = $x$addr; $73 = $i; $74 = $T0$addr; $sub62 = (($73) - ($74))|0; $add63 = (($sub62) + 1)|0; $arrayidx64 = (($72) + ($add63<<2)|0); $75 = +HEAPF32[$arrayidx64>>2]; $76 = $x$addr; $77 = $i; $78 = $T0$addr; $sub65 = (($77) - ($78))|0; $sub66 = (($sub65) - 1)|0; $arrayidx67 = (($76) + ($sub66<<2)|0); $79 = +HEAPF32[$arrayidx67>>2]; $add68 = $75 + $79; $mul69 = $mul61 * $add68; $add70 = $add59 + $mul69; $80 = $f; $sub71 = 1.0 - $80; $81 = $g02; $mul72 = $sub71 * $81; $82 = $x$addr; $83 = $i; $84 = $T0$addr; $sub73 = (($83) - ($84))|0; $add74 = (($sub73) + 2)|0; $arrayidx75 = (($82) + ($add74<<2)|0); $85 = +HEAPF32[$arrayidx75>>2]; $86 = $x$addr; $87 = $i; $88 = $T0$addr; $sub76 = (($87) - ($88))|0; $sub77 = (($sub76) - 2)|0; $arrayidx78 = (($86) + ($sub77<<2)|0); $89 = +HEAPF32[$arrayidx78>>2]; $add79 = $85 + $89; $mul80 = $mul72 * $add79; $add81 = $add70 + $mul80; $90 = $f; $91 = $g10; $mul82 = $90 * $91; $92 = $x2; $mul83 = $mul82 * $92; $add84 = $add81 + $mul83; $93 = $f; $94 = $g11; $mul85 = $93 * $94; $95 = $x1; $96 = $x3; $add86 = $95 + $96; $mul87 = $mul85 * $add86; $add88 = $add84 + $mul87; $97 = $f; $98 = $g12; $mul89 = $97 * $98; $99 = $x0; $100 = $x4; $add90 = $99 + $100; $mul91 = $mul89 * $add90; $add92 = $add88 + $mul91; $101 = $y$addr; $102 = $i; $arrayidx93 = (($101) + ($102<<2)|0); HEAPF32[$arrayidx93>>2] = $add92; $103 = $y$addr; $104 = $i; $arrayidx94 = (($103) + ($104<<2)|0); $105 = +HEAPF32[$arrayidx94>>2]; $106 = $y$addr; $107 = $i; $arrayidx95 = (($106) + ($107<<2)|0); HEAPF32[$arrayidx95>>2] = $105; $108 = $x3; $x4 = $108; $109 = $x2; $x3 = $109; $110 = $x1; $x2 = $110; $111 = $x0; $x1 = $111; $112 = $i; $inc = (($112) + 1)|0; $i = $inc; } $113 = $g1$addr; $cmp96 = $113 == 0.0; if (!($cmp96)) { $126 = $arch$addr; $and = $126 & 7; $arrayidx113 = (_COMB_FILTER_CONST_IMPL + ($and<<2)|0); $127 = HEAP32[$arrayidx113>>2]|0; $128 = $y$addr; $129 = $i; $add$ptr114 = (($128) + ($129<<2)|0); $130 = $x$addr; $131 = $i; $add$ptr115 = (($130) + ($131<<2)|0); $132 = $T1$addr; $133 = $N$addr; $134 = $i; $sub116 = (($133) - ($134))|0; $135 = $g10; $136 = $g11; $137 = $g12; FUNCTION_TABLE_viiiiddd[$127 & 0]($add$ptr114,$add$ptr115,$132,$sub116,$135,$136,$137); STACKTOP = sp;return; } $114 = $x$addr; $115 = $y$addr; $cmp98 = ($114|0)!=($115|0); if (!($cmp98)) { STACKTOP = sp;return; } $116 = $y$addr; $117 = $overlap$addr; $add$ptr = (($116) + ($117<<2)|0); $118 = $x$addr; $119 = $overlap$addr; $add$ptr100 = (($118) + ($119<<2)|0); $120 = $N$addr; $121 = $overlap$addr; $sub101 = (($120) - ($121))|0; $mul102 = $sub101<<2; $122 = $y$addr; $123 = $overlap$addr; $add$ptr103 = (($122) + ($123<<2)|0); $124 = $x$addr; $125 = $overlap$addr; $add$ptr104 = (($124) + ($125<<2)|0); $sub$ptr$lhs$cast105 = $add$ptr103; $sub$ptr$rhs$cast106 = $add$ptr104; $sub$ptr$sub107 = (($sub$ptr$lhs$cast105) - ($sub$ptr$rhs$cast106))|0; $sub$ptr$div108 = (($sub$ptr$sub107|0) / 4)&-1; $mul109 = 0; $add110 = (($mul102) + ($mul109))|0; _memmove(($add$ptr|0),($add$ptr100|0),($add110|0))|0; STACKTOP = sp;return; } function _init_caps($m,$cap,$LM,$C) { $m = $m|0; $cap = $cap|0; $LM = $LM|0; $C = $C|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $C$addr = 0, $LM$addr = 0, $N = 0, $add = 0, $add11 = 0, $add5 = 0, $add8 = 0, $arrayidx = 0, $arrayidx14 = 0, $arrayidx2 = 0, $arrayidx9 = 0, $cache = 0, $cap$addr = 0, $caps = 0, $cmp = 0; var $conv = 0, $conv10 = 0, $conv3 = 0, $eBands = 0, $eBands1 = 0, $i = 0, $inc = 0, $m$addr = 0, $mul = 0, $mul12 = 0, $mul13 = 0, $mul7 = 0, $nbEBands = 0, $nbEBands4 = 0, $shl = 0, $shr = 0, $sub = 0, $sub6 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $m$addr = $m; $cap$addr = $cap; $LM$addr = $LM; $C$addr = $C; $i = 0; while(1) { $0 = $i; $1 = $m$addr; $nbEBands = ((($1)) + 8|0); $2 = HEAP32[$nbEBands>>2]|0; $cmp = ($0|0)<($2|0); if (!($cmp)) { break; } $3 = $m$addr; $eBands = ((($3)) + 32|0); $4 = HEAP32[$eBands>>2]|0; $5 = $i; $add = (($5) + 1)|0; $arrayidx = (($4) + ($add<<1)|0); $6 = HEAP16[$arrayidx>>1]|0; $conv = $6 << 16 >> 16; $7 = $m$addr; $eBands1 = ((($7)) + 32|0); $8 = HEAP32[$eBands1>>2]|0; $9 = $i; $arrayidx2 = (($8) + ($9<<1)|0); $10 = HEAP16[$arrayidx2>>1]|0; $conv3 = $10 << 16 >> 16; $sub = (($conv) - ($conv3))|0; $11 = $LM$addr; $shl = $sub << $11; $N = $shl; $12 = $m$addr; $cache = ((($12)) + 92|0); $caps = ((($cache)) + 12|0); $13 = HEAP32[$caps>>2]|0; $14 = $m$addr; $nbEBands4 = ((($14)) + 8|0); $15 = HEAP32[$nbEBands4>>2]|0; $16 = $LM$addr; $mul = $16<<1; $17 = $C$addr; $add5 = (($mul) + ($17))|0; $sub6 = (($add5) - 1)|0; $mul7 = Math_imul($15, $sub6)|0; $18 = $i; $add8 = (($mul7) + ($18))|0; $arrayidx9 = (($13) + ($add8)|0); $19 = HEAP8[$arrayidx9>>0]|0; $conv10 = $19&255; $add11 = (($conv10) + 64)|0; $20 = $C$addr; $mul12 = Math_imul($add11, $20)|0; $21 = $N; $mul13 = Math_imul($mul12, $21)|0; $shr = $mul13 >> 2; $22 = $cap$addr; $23 = $i; $arrayidx14 = (($22) + ($23<<2)|0); HEAP32[$arrayidx14>>2] = $shr; $24 = $i; $inc = (($24) + 1)|0; $i = $inc; } STACKTOP = sp;return; } function _encode_pulses($_y,$_n,$_k,$_enc) { $_y = $_y|0; $_n = $_n|0; $_k = $_k|0; $_enc = $_enc|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; var $7 = 0, $8 = 0, $9 = 0, $_enc$addr = 0, $_k$addr = 0, $_n$addr = 0, $_y$addr = 0, $add = 0, $add10 = 0, $add14 = 0, $add18 = 0, $add22 = 0, $arrayidx = 0, $arrayidx13 = 0, $arrayidx21 = 0, $arrayidx6 = 0, $call = 0, $cmp = 0, $cmp1 = 0, $cmp15 = 0; var $cmp7 = 0, $cond = 0, $cond12 = 0, $cond20 = 0, $cond5 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $_y$addr = $_y; $_n$addr = $_n; $_k$addr = $_k; $_enc$addr = $_enc; $0 = $_enc$addr; $1 = $_n$addr; $2 = $_y$addr; $call = (_icwrs($1,$2)|0); $3 = $_n$addr; $4 = $_k$addr; $cmp = ($3|0)<($4|0); $5 = $_n$addr; $6 = $_k$addr; $cond = $cmp ? $5 : $6; $arrayidx = (15576 + ($cond<<2)|0); $7 = HEAP32[$arrayidx>>2]|0; $8 = $_n$addr; $9 = $_k$addr; $cmp1 = ($8|0)>($9|0); $10 = $_n$addr; $11 = $_k$addr; $cond5 = $cmp1 ? $10 : $11; $arrayidx6 = (($7) + ($cond5<<2)|0); $12 = HEAP32[$arrayidx6>>2]|0; $13 = $_n$addr; $14 = $_k$addr; $add = (($14) + 1)|0; $cmp7 = ($13|0)<($add|0); $15 = $_n$addr; $16 = $_k$addr; $add10 = (($16) + 1)|0; $cond12 = $cmp7 ? $15 : $add10; $arrayidx13 = (15576 + ($cond12<<2)|0); $17 = HEAP32[$arrayidx13>>2]|0; $18 = $_n$addr; $19 = $_k$addr; $add14 = (($19) + 1)|0; $cmp15 = ($18|0)>($add14|0); $20 = $_n$addr; $21 = $_k$addr; $add18 = (($21) + 1)|0; $cond20 = $cmp15 ? $20 : $add18; $arrayidx21 = (($17) + ($cond20<<2)|0); $22 = HEAP32[$arrayidx21>>2]|0; $add22 = (($12) + ($22))|0; _ec_enc_uint($0,$call,$add22); STACKTOP = sp;return; } function _icwrs($_n,$_y) { $_n = $_n|0; $_y = $_y|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $_n$addr = 0, $_y$addr = 0, $add = 0, $add18 = 0, $add23 = 0, $add29 = 0, $add34 = 0, $add40 = 0, $add44 = 0, $arrayidx = 0, $arrayidx1 = 0, $arrayidx15 = 0, $arrayidx16 = 0; var $arrayidx19 = 0, $arrayidx32 = 0, $arrayidx43 = 0, $arrayidx6 = 0, $call = 0, $call17 = 0, $cmp = 0, $cmp20 = 0, $cmp24 = 0, $cmp3 = 0, $cmp35 = 0, $cmp45 = 0, $cmp8 = 0, $cond = 0, $cond14 = 0, $cond31 = 0, $cond42 = 0, $conv = 0, $dec = 0, $i = 0; var $j = 0, $k = 0, $sub = 0, $sub11 = 0, $sub2 = 0, $sub22 = 0, $sub27 = 0, $sub33 = 0, $sub38 = 0, $sub5 = 0, $sub7 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $_n$addr = $_n; $_y$addr = $_y; $0 = $_n$addr; $sub = (($0) - 1)|0; $j = $sub; $1 = $_y$addr; $2 = $j; $arrayidx = (($1) + ($2<<2)|0); $3 = HEAP32[$arrayidx>>2]|0; $cmp = ($3|0)<(0); $conv = $cmp&1; $i = $conv; $4 = $_y$addr; $5 = $j; $arrayidx1 = (($4) + ($5<<2)|0); $6 = HEAP32[$arrayidx1>>2]|0; $call = (Math_abs(($6|0))|0); $k = $call; while(1) { $7 = $j; $dec = (($7) + -1)|0; $j = $dec; $8 = $_n$addr; $9 = $j; $sub2 = (($8) - ($9))|0; $10 = $k; $cmp3 = ($sub2|0)<($10|0); if ($cmp3) { $11 = $_n$addr; $12 = $j; $sub5 = (($11) - ($12))|0; $cond = $sub5; } else { $13 = $k; $cond = $13; } $arrayidx6 = (15576 + ($cond<<2)|0); $14 = HEAP32[$arrayidx6>>2]|0; $15 = $_n$addr; $16 = $j; $sub7 = (($15) - ($16))|0; $17 = $k; $cmp8 = ($sub7|0)>($17|0); if ($cmp8) { $18 = $_n$addr; $19 = $j; $sub11 = (($18) - ($19))|0; $cond14 = $sub11; } else { $20 = $k; $cond14 = $20; } $arrayidx15 = (($14) + ($cond14<<2)|0); $21 = HEAP32[$arrayidx15>>2]|0; $22 = $i; $add = (($22) + ($21))|0; $i = $add; $23 = $_y$addr; $24 = $j; $arrayidx16 = (($23) + ($24<<2)|0); $25 = HEAP32[$arrayidx16>>2]|0; $call17 = (Math_abs(($25|0))|0); $26 = $k; $add18 = (($26) + ($call17))|0; $k = $add18; $27 = $_y$addr; $28 = $j; $arrayidx19 = (($27) + ($28<<2)|0); $29 = HEAP32[$arrayidx19>>2]|0; $cmp20 = ($29|0)<(0); if ($cmp20) { $30 = $_n$addr; $31 = $j; $sub22 = (($30) - ($31))|0; $32 = $k; $add23 = (($32) + 1)|0; $cmp24 = ($sub22|0)<($add23|0); if ($cmp24) { $33 = $_n$addr; $34 = $j; $sub27 = (($33) - ($34))|0; $cond31 = $sub27; } else { $35 = $k; $add29 = (($35) + 1)|0; $cond31 = $add29; } $arrayidx32 = (15576 + ($cond31<<2)|0); $36 = HEAP32[$arrayidx32>>2]|0; $37 = $_n$addr; $38 = $j; $sub33 = (($37) - ($38))|0; $39 = $k; $add34 = (($39) + 1)|0; $cmp35 = ($sub33|0)>($add34|0); if ($cmp35) { $40 = $_n$addr; $41 = $j; $sub38 = (($40) - ($41))|0; $cond42 = $sub38; } else { $42 = $k; $add40 = (($42) + 1)|0; $cond42 = $add40; } $arrayidx43 = (($36) + ($cond42<<2)|0); $43 = HEAP32[$arrayidx43>>2]|0; $44 = $i; $add44 = (($44) + ($43))|0; $i = $add44; } $45 = $j; $cmp45 = ($45|0)>(0); if (!($cmp45)) { break; } } $46 = $i; STACKTOP = sp;return ($46|0); } function _decode_pulses($_y,$_n,$_k,$_dec) { $_y = $_y|0; $_n = $_n|0; $_k = $_k|0; $_dec = $_dec|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $_dec$addr = 0, $_k$addr = 0, $_n$addr = 0, $_y$addr = 0, $add = 0, $add10 = 0, $add14 = 0, $add18 = 0, $add22 = 0, $arrayidx = 0, $arrayidx13 = 0, $arrayidx21 = 0, $arrayidx6 = 0, $call = 0, $call23 = 0.0, $cmp = 0; var $cmp1 = 0, $cmp15 = 0, $cmp7 = 0, $cond = 0, $cond12 = 0, $cond20 = 0, $cond5 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $_y$addr = $_y; $_n$addr = $_n; $_k$addr = $_k; $_dec$addr = $_dec; $0 = $_n$addr; $1 = $_k$addr; $2 = $_dec$addr; $3 = $_n$addr; $4 = $_k$addr; $cmp = ($3|0)<($4|0); $5 = $_n$addr; $6 = $_k$addr; $cond = $cmp ? $5 : $6; $arrayidx = (15576 + ($cond<<2)|0); $7 = HEAP32[$arrayidx>>2]|0; $8 = $_n$addr; $9 = $_k$addr; $cmp1 = ($8|0)>($9|0); $10 = $_n$addr; $11 = $_k$addr; $cond5 = $cmp1 ? $10 : $11; $arrayidx6 = (($7) + ($cond5<<2)|0); $12 = HEAP32[$arrayidx6>>2]|0; $13 = $_n$addr; $14 = $_k$addr; $add = (($14) + 1)|0; $cmp7 = ($13|0)<($add|0); $15 = $_n$addr; $16 = $_k$addr; $add10 = (($16) + 1)|0; $cond12 = $cmp7 ? $15 : $add10; $arrayidx13 = (15576 + ($cond12<<2)|0); $17 = HEAP32[$arrayidx13>>2]|0; $18 = $_n$addr; $19 = $_k$addr; $add14 = (($19) + 1)|0; $cmp15 = ($18|0)>($add14|0); $20 = $_n$addr; $21 = $_k$addr; $add18 = (($21) + 1)|0; $cond20 = $cmp15 ? $20 : $add18; $arrayidx21 = (($17) + ($cond20<<2)|0); $22 = HEAP32[$arrayidx21>>2]|0; $add22 = (($12) + ($22))|0; $call = (_ec_dec_uint($2,$add22)|0); $23 = $_y$addr; $call23 = (+_cwrsi($0,$1,$call,$23)); STACKTOP = sp;return (+$call23); } function _cwrsi($_n,$_k,$_i,$_y) { $_n = $_n|0; $_k = $_k|0; $_i = $_i|0; $_y = $_y|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0.0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0.0, $111 = 0, $112 = 0, $113 = 0.0, $12 = 0, $13 = 0; var $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0; var $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0.0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0; var $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0; var $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0.0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0; var $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $_i$addr = 0, $_k$addr = 0, $_n$addr = 0, $_y$addr = 0, $add = 0, $add20 = 0; var $add25 = 0.0, $add29 = 0, $add55 = 0, $add63 = 0.0, $add68 = 0, $add74 = 0, $add81 = 0, $add89 = 0.0, $add91 = 0, $add98 = 0.0, $and = 0, $and43 = 0, $and72 = 0, $arrayidx = 0, $arrayidx10 = 0, $arrayidx13 = 0, $arrayidx17 = 0, $arrayidx2 = 0, $arrayidx27 = 0, $arrayidx28 = 0; var $arrayidx30 = 0, $arrayidx31 = 0, $arrayidx47 = 0, $arrayidx48 = 0, $arrayidx5 = 0, $arrayidx9 = 0, $cmp = 0, $cmp1 = 0, $cmp11 = 0, $cmp14 = 0, $cmp3 = 0, $cmp32 = 0, $cmp34 = 0, $cmp40 = 0, $cmp50 = 0, $cmp6 = 0, $cmp69 = 0, $conv = 0, $conv21 = 0, $conv22 = 0; var $conv23 = 0.0, $conv24 = 0.0, $conv41 = 0, $conv57 = 0, $conv58 = 0, $conv60 = 0.0, $conv61 = 0.0, $conv70 = 0, $conv83 = 0, $conv84 = 0, $conv86 = 0.0, $conv87 = 0.0, $conv93 = 0, $conv94 = 0, $conv95 = 0.0, $conv96 = 0.0, $dec = 0, $dec16 = 0, $dec46 = 0, $dec66 = 0; var $incdec$ptr = 0, $incdec$ptr38 = 0, $incdec$ptr59 = 0, $incdec$ptr85 = 0, $k0 = 0, $mul = 0.0, $mul62 = 0.0, $mul67 = 0, $mul76 = 0, $mul88 = 0.0, $mul97 = 0.0, $p = 0, $q = 0, $row = 0, $s = 0, $shr = 0, $sub = 0, $sub18 = 0, $sub19 = 0, $sub37 = 0; var $sub4 = 0, $sub42 = 0, $sub44 = 0, $sub53 = 0, $sub54 = 0, $sub71 = 0, $sub73 = 0, $sub77 = 0, $sub78 = 0, $sub80 = 0, $sub90 = 0, $tobool = 0, $val = 0, $xor = 0, $xor56 = 0, $xor82 = 0, $xor92 = 0, $yy = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $_n$addr = $_n; $_k$addr = $_k; $_i$addr = $_i; $_y$addr = $_y; $yy = 0.0; while(1) { $0 = $_n$addr; $cmp = ($0|0)>(2); $1 = $_k$addr; if (!($cmp)) { break; } $2 = $_n$addr; $cmp1 = ($1|0)>=($2|0); do { if ($cmp1) { $3 = $_n$addr; $arrayidx = (15576 + ($3<<2)|0); $4 = HEAP32[$arrayidx>>2]|0; $row = $4; $5 = $row; $6 = $_k$addr; $add = (($6) + 1)|0; $arrayidx2 = (($5) + ($add<<2)|0); $7 = HEAP32[$arrayidx2>>2]|0; $p = $7; $8 = $_i$addr; $9 = $p; $cmp3 = ($8>>>0)>=($9>>>0); $conv = $cmp3&1; $sub = (0 - ($conv))|0; $s = $sub; $10 = $p; $11 = $s; $and = $10 & $11; $12 = $_i$addr; $sub4 = (($12) - ($and))|0; $_i$addr = $sub4; $13 = $_k$addr; $k0 = $13; $14 = $row; $15 = $_n$addr; $arrayidx5 = (($14) + ($15<<2)|0); $16 = HEAP32[$arrayidx5>>2]|0; $q = $16; $17 = $q; $18 = $_i$addr; $cmp6 = ($17>>>0)>($18>>>0); L6: do { if ($cmp6) { $19 = $_n$addr; $_k$addr = $19; while(1) { $20 = $_k$addr; $dec = (($20) + -1)|0; $_k$addr = $dec; $arrayidx9 = (15576 + ($dec<<2)|0); $21 = HEAP32[$arrayidx9>>2]|0; $22 = $_n$addr; $arrayidx10 = (($21) + ($22<<2)|0); $23 = HEAP32[$arrayidx10>>2]|0; $p = $23; $24 = $p; $25 = $_i$addr; $cmp11 = ($24>>>0)>($25>>>0); if (!($cmp11)) { break; } } } else { $26 = $row; $27 = $_k$addr; $arrayidx13 = (($26) + ($27<<2)|0); $28 = HEAP32[$arrayidx13>>2]|0; $p = $28; while(1) { $29 = $p; $30 = $_i$addr; $cmp14 = ($29>>>0)>($30>>>0); if (!($cmp14)) { break L6; } $31 = $_k$addr; $dec16 = (($31) + -1)|0; $_k$addr = $dec16; $32 = $row; $33 = $_k$addr; $arrayidx17 = (($32) + ($33<<2)|0); $34 = HEAP32[$arrayidx17>>2]|0; $p = $34; } } } while(0); $35 = $p; $36 = $_i$addr; $sub18 = (($36) - ($35))|0; $_i$addr = $sub18; $37 = $k0; $38 = $_k$addr; $sub19 = (($37) - ($38))|0; $39 = $s; $add20 = (($sub19) + ($39))|0; $40 = $s; $xor = $add20 ^ $40; $conv21 = $xor&65535; $val = $conv21; $41 = $val; $conv22 = $41 << 16 >> 16; $42 = $_y$addr; $incdec$ptr = ((($42)) + 4|0); $_y$addr = $incdec$ptr; HEAP32[$42>>2] = $conv22; $43 = $yy; $44 = $val; $conv23 = (+($44<<16>>16)); $45 = $val; $conv24 = (+($45<<16>>16)); $mul = $conv23 * $conv24; $add25 = $43 + $mul; $yy = $add25; } else { $46 = $_k$addr; $arrayidx27 = (15576 + ($46<<2)|0); $47 = HEAP32[$arrayidx27>>2]|0; $48 = $_n$addr; $arrayidx28 = (($47) + ($48<<2)|0); $49 = HEAP32[$arrayidx28>>2]|0; $p = $49; $50 = $_k$addr; $add29 = (($50) + 1)|0; $arrayidx30 = (15576 + ($add29<<2)|0); $51 = HEAP32[$arrayidx30>>2]|0; $52 = $_n$addr; $arrayidx31 = (($51) + ($52<<2)|0); $53 = HEAP32[$arrayidx31>>2]|0; $q = $53; $54 = $p; $55 = $_i$addr; $cmp32 = ($54>>>0)<=($55>>>0); if ($cmp32) { $56 = $_i$addr; $57 = $q; $cmp34 = ($56>>>0)<($57>>>0); if ($cmp34) { $58 = $p; $59 = $_i$addr; $sub37 = (($59) - ($58))|0; $_i$addr = $sub37; $60 = $_y$addr; $incdec$ptr38 = ((($60)) + 4|0); $_y$addr = $incdec$ptr38; HEAP32[$60>>2] = 0; break; } } $61 = $_i$addr; $62 = $q; $cmp40 = ($61>>>0)>=($62>>>0); $conv41 = $cmp40&1; $sub42 = (0 - ($conv41))|0; $s = $sub42; $63 = $q; $64 = $s; $and43 = $63 & $64; $65 = $_i$addr; $sub44 = (($65) - ($and43))|0; $_i$addr = $sub44; $66 = $_k$addr; $k0 = $66; while(1) { $67 = $_k$addr; $dec46 = (($67) + -1)|0; $_k$addr = $dec46; $arrayidx47 = (15576 + ($dec46<<2)|0); $68 = HEAP32[$arrayidx47>>2]|0; $69 = $_n$addr; $arrayidx48 = (($68) + ($69<<2)|0); $70 = HEAP32[$arrayidx48>>2]|0; $p = $70; $71 = $p; $72 = $_i$addr; $cmp50 = ($71>>>0)>($72>>>0); if (!($cmp50)) { break; } } $73 = $p; $74 = $_i$addr; $sub53 = (($74) - ($73))|0; $_i$addr = $sub53; $75 = $k0; $76 = $_k$addr; $sub54 = (($75) - ($76))|0; $77 = $s; $add55 = (($sub54) + ($77))|0; $78 = $s; $xor56 = $add55 ^ $78; $conv57 = $xor56&65535; $val = $conv57; $79 = $val; $conv58 = $79 << 16 >> 16; $80 = $_y$addr; $incdec$ptr59 = ((($80)) + 4|0); $_y$addr = $incdec$ptr59; HEAP32[$80>>2] = $conv58; $81 = $yy; $82 = $val; $conv60 = (+($82<<16>>16)); $83 = $val; $conv61 = (+($83<<16>>16)); $mul62 = $conv60 * $conv61; $add63 = $81 + $mul62; $yy = $add63; } } while(0); $84 = $_n$addr; $dec66 = (($84) + -1)|0; $_n$addr = $dec66; } $mul67 = $1<<1; $add68 = (($mul67) + 1)|0; $p = $add68; $85 = $_i$addr; $86 = $p; $cmp69 = ($85>>>0)>=($86>>>0); $conv70 = $cmp69&1; $sub71 = (0 - ($conv70))|0; $s = $sub71; $87 = $p; $88 = $s; $and72 = $87 & $88; $89 = $_i$addr; $sub73 = (($89) - ($and72))|0; $_i$addr = $sub73; $90 = $_k$addr; $k0 = $90; $91 = $_i$addr; $add74 = (($91) + 1)|0; $shr = $add74 >>> 1; $_k$addr = $shr; $92 = $_k$addr; $tobool = ($92|0)!=(0); if (!($tobool)) { $95 = $k0; $96 = $_k$addr; $sub80 = (($95) - ($96))|0; $97 = $s; $add81 = (($sub80) + ($97))|0; $98 = $s; $xor82 = $add81 ^ $98; $conv83 = $xor82&65535; $val = $conv83; $99 = $val; $conv84 = $99 << 16 >> 16; $100 = $_y$addr; $incdec$ptr85 = ((($100)) + 4|0); $_y$addr = $incdec$ptr85; HEAP32[$100>>2] = $conv84; $101 = $yy; $102 = $val; $conv86 = (+($102<<16>>16)); $103 = $val; $conv87 = (+($103<<16>>16)); $mul88 = $conv86 * $conv87; $add89 = $101 + $mul88; $yy = $add89; $104 = $_i$addr; $sub90 = (0 - ($104))|0; $s = $sub90; $105 = $_k$addr; $106 = $s; $add91 = (($105) + ($106))|0; $107 = $s; $xor92 = $add91 ^ $107; $conv93 = $xor92&65535; $val = $conv93; $108 = $val; $conv94 = $108 << 16 >> 16; $109 = $_y$addr; HEAP32[$109>>2] = $conv94; $110 = $yy; $111 = $val; $conv95 = (+($111<<16>>16)); $112 = $val; $conv96 = (+($112<<16>>16)); $mul97 = $conv95 * $conv96; $add98 = $110 + $mul97; $yy = $add98; $113 = $yy; STACKTOP = sp;return (+$113); } $93 = $_k$addr; $mul76 = $93<<1; $sub77 = (($mul76) - 1)|0; $94 = $_i$addr; $sub78 = (($94) - ($sub77))|0; $_i$addr = $sub78; $95 = $k0; $96 = $_k$addr; $sub80 = (($95) - ($96))|0; $97 = $s; $add81 = (($sub80) + ($97))|0; $98 = $s; $xor82 = $add81 ^ $98; $conv83 = $xor82&65535; $val = $conv83; $99 = $val; $conv84 = $99 << 16 >> 16; $100 = $_y$addr; $incdec$ptr85 = ((($100)) + 4|0); $_y$addr = $incdec$ptr85; HEAP32[$100>>2] = $conv84; $101 = $yy; $102 = $val; $conv86 = (+($102<<16>>16)); $103 = $val; $conv87 = (+($103<<16>>16)); $mul88 = $conv86 * $conv87; $add89 = $101 + $mul88; $yy = $add89; $104 = $_i$addr; $sub90 = (0 - ($104))|0; $s = $sub90; $105 = $_k$addr; $106 = $s; $add91 = (($105) + ($106))|0; $107 = $s; $xor92 = $add91 ^ $107; $conv93 = $xor92&65535; $val = $conv93; $108 = $val; $conv94 = $108 << 16 >> 16; $109 = $_y$addr; HEAP32[$109>>2] = $conv94; $110 = $yy; $111 = $val; $conv95 = (+($111<<16>>16)); $112 = $val; $conv96 = (+($112<<16>>16)); $mul97 = $conv95 * $conv96; $add98 = $110 + $mul97; $yy = $add98; $113 = $yy; STACKTOP = sp;return (+$113); } function _ec_laplace_encode($enc,$value,$fs,$decay) { $enc = $enc|0; $value = $value|0; $fs = $fs|0; $decay = $decay|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $add11 = 0, $add23 = 0, $add24 = 0, $add26 = 0, $add35 = 0, $add36 = 0, $add38 = 0, $add39 = 0, $add41 = 0, $add5 = 0, $add6 = 0, $and = 0; var $call = 0, $cmp = 0, $cmp1 = 0, $cmp18 = 0, $cmp28 = 0, $cmp3 = 0, $cond = 0, $cond34 = 0, $conv = 0, $decay$addr = 0, $di = 0, $enc$addr = 0, $fl = 0, $fs$addr = 0, $i = 0, $inc = 0, $mul = 0, $mul22 = 0, $mul25 = 0, $mul7 = 0; var $ndi_max = 0, $neg = 0, $s = 0, $shr = 0, $shr13 = 0, $shr15 = 0, $sub = 0, $sub10 = 0, $sub12 = 0, $sub14 = 0, $sub16 = 0, $sub17 = 0, $sub20 = 0, $sub21 = 0, $sub27 = 0, $sub32 = 0, $tobool = 0, $tobool8 = 0, $val = 0, $value$addr = 0; var $xor = 0, $xor37 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $enc$addr = $enc; $value$addr = $value; $fs$addr = $fs; $decay$addr = $decay; $0 = $value$addr; $1 = HEAP32[$0>>2]|0; $val = $1; $fl = 0; $2 = $val; $tobool = ($2|0)!=(0); if (!($tobool)) { $42 = $enc$addr; $43 = $fl; $44 = $fl; $45 = $fs$addr; $add41 = (($44) + ($45))|0; _ec_encode_bin($42,$43,$add41,15); STACKTOP = sp;return; } $3 = $val; $cmp = ($3|0)<(0); $conv = $cmp&1; $sub = (0 - ($conv))|0; $s = $sub; $4 = $val; $5 = $s; $add = (($4) + ($5))|0; $6 = $s; $xor = $add ^ $6; $val = $xor; $7 = $fs$addr; $fl = $7; $8 = $fs$addr; $9 = $decay$addr; $call = (_ec_laplace_get_freq1($8,$9)|0); $fs$addr = $call; $i = 1; while(1) { $10 = $fs$addr; $cmp1 = ($10>>>0)>(0); if ($cmp1) { $11 = $i; $12 = $val; $cmp3 = ($11|0)<($12|0); $46 = $cmp3; } else { $46 = 0; } $13 = $fs$addr; if (!($46)) { break; } $mul = $13<<1; $fs$addr = $mul; $14 = $fs$addr; $add5 = (($14) + 2)|0; $15 = $fl; $add6 = (($15) + ($add5))|0; $fl = $add6; $16 = $fs$addr; $17 = $decay$addr; $mul7 = Math_imul($16, $17)|0; $shr = $mul7 >>> 15; $fs$addr = $shr; $18 = $i; $inc = (($18) + 1)|0; $i = $inc; } $tobool8 = ($13|0)!=(0); if ($tobool8) { $38 = $fs$addr; $add38 = (($38) + 1)|0; $fs$addr = $add38; $39 = $fs$addr; $40 = $s; $neg = $40 ^ -1; $and = $39 & $neg; $41 = $fl; $add39 = (($41) + ($and))|0; $fl = $add39; $42 = $enc$addr; $43 = $fl; $44 = $fl; $45 = $fs$addr; $add41 = (($44) + ($45))|0; _ec_encode_bin($42,$43,$add41,15); STACKTOP = sp;return; } $19 = $fl; $sub10 = (32768 - ($19))|0; $add11 = (($sub10) + 1)|0; $sub12 = (($add11) - 1)|0; $shr13 = $sub12 >>> 0; $ndi_max = $shr13; $20 = $ndi_max; $21 = $s; $sub14 = (($20) - ($21))|0; $shr15 = $sub14 >> 1; $ndi_max = $shr15; $22 = $val; $23 = $i; $sub16 = (($22) - ($23))|0; $24 = $ndi_max; $sub17 = (($24) - 1)|0; $cmp18 = ($sub16|0)<($sub17|0); if ($cmp18) { $25 = $val; $26 = $i; $sub20 = (($25) - ($26))|0; $cond = $sub20; } else { $27 = $ndi_max; $sub21 = (($27) - 1)|0; $cond = $sub21; } $di = $cond; $28 = $di; $mul22 = $28<<1; $add23 = (($mul22) + 1)|0; $29 = $s; $add24 = (($add23) + ($29))|0; $mul25 = $add24; $30 = $fl; $add26 = (($30) + ($mul25))|0; $fl = $add26; $31 = $fl; $sub27 = (32768 - ($31))|0; $cmp28 = (1)<($sub27>>>0); $32 = $fl; $sub32 = (32768 - ($32))|0; $cond34 = $cmp28 ? 1 : $sub32; $fs$addr = $cond34; $33 = $i; $34 = $di; $add35 = (($33) + ($34))|0; $35 = $s; $add36 = (($add35) + ($35))|0; $36 = $s; $xor37 = $add36 ^ $36; $37 = $value$addr; HEAP32[$37>>2] = $xor37; $42 = $enc$addr; $43 = $fl; $44 = $fl; $45 = $fs$addr; $add41 = (($44) + ($45))|0; _ec_encode_bin($42,$43,$add41,15); STACKTOP = sp;return; } function _ec_laplace_get_freq1($fs0,$decay) { $fs0 = $fs0|0; $decay = $decay|0; var $0 = 0, $1 = 0, $2 = 0, $decay$addr = 0, $fs0$addr = 0, $ft = 0, $mul = 0, $shr = 0, $sub = 0, $sub1 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $fs0$addr = $fs0; $decay$addr = $decay; $0 = $fs0$addr; $sub = (32736 - ($0))|0; $ft = $sub; $1 = $ft; $2 = $decay$addr; $sub1 = (16384 - ($2))|0; $mul = Math_imul($1, $sub1)|0; $shr = $mul >>> 15; STACKTOP = sp;return ($shr|0); } function _ec_laplace_decode($dec,$fs,$decay) { $dec = $dec|0; $fs = $fs|0; $decay = $decay|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $add14 = 0; var $add17 = 0, $add18 = 0, $add22 = 0, $add25 = 0, $add27 = 0, $add3 = 0, $add6 = 0, $add8 = 0, $call = 0, $call1 = 0, $cmp = 0, $cmp10 = 0, $cmp19 = 0, $cmp2 = 0, $cmp26 = 0, $cmp4 = 0, $cond = 0, $dec$addr = 0, $decay$addr = 0, $di = 0; var $fl = 0, $fm = 0, $fs$addr = 0, $inc = 0, $inc9 = 0, $mul = 0, $mul15 = 0, $mul16 = 0, $mul5 = 0, $mul7 = 0, $shr = 0, $shr13 = 0, $sub = 0, $sub12 = 0, $sub21 = 0, $val = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $dec$addr = $dec; $fs$addr = $fs; $decay$addr = $decay; $val = 0; $0 = $dec$addr; $call = (_ec_decode_bin($0,15)|0); $fm = $call; $fl = 0; $1 = $fm; $2 = $fs$addr; $cmp = ($1>>>0)>=($2>>>0); do { if ($cmp) { $3 = $val; $inc = (($3) + 1)|0; $val = $inc; $4 = $fs$addr; $fl = $4; $5 = $fs$addr; $6 = $decay$addr; $call1 = (_ec_laplace_get_freq1($5,$6)|0); $add = (($call1) + 1)|0; $fs$addr = $add; while(1) { $7 = $fs$addr; $cmp2 = ($7>>>0)>(1); if ($cmp2) { $8 = $fm; $9 = $fl; $10 = $fs$addr; $mul = $10<<1; $add3 = (($9) + ($mul))|0; $cmp4 = ($8>>>0)>=($add3>>>0); $37 = $cmp4; } else { $37 = 0; } $11 = $fs$addr; if (!($37)) { break; } $mul5 = $11<<1; $fs$addr = $mul5; $12 = $fs$addr; $13 = $fl; $add6 = (($13) + ($12))|0; $fl = $add6; $14 = $fs$addr; $sub = (($14) - 2)|0; $15 = $decay$addr; $mul7 = Math_imul($sub, $15)|0; $shr = $mul7 >>> 15; $fs$addr = $shr; $16 = $fs$addr; $add8 = (($16) + 1)|0; $fs$addr = $add8; $17 = $val; $inc9 = (($17) + 1)|0; $val = $inc9; } $cmp10 = ($11>>>0)<=(1); if ($cmp10) { $18 = $fm; $19 = $fl; $sub12 = (($18) - ($19))|0; $shr13 = $sub12 >>> 1; $di = $shr13; $20 = $di; $21 = $val; $add14 = (($21) + ($20))|0; $val = $add14; $22 = $di; $mul15 = $22<<1; $mul16 = $mul15; $23 = $fl; $add17 = (($23) + ($mul16))|0; $fl = $add17; } $24 = $fm; $25 = $fl; $26 = $fs$addr; $add18 = (($25) + ($26))|0; $cmp19 = ($24>>>0)<($add18>>>0); if ($cmp19) { $27 = $val; $sub21 = (0 - ($27))|0; $val = $sub21; break; } else { $28 = $fs$addr; $29 = $fl; $add22 = (($29) + ($28))|0; $fl = $add22; break; } } } while(0); $30 = $dec$addr; $31 = $fl; $32 = $fl; $33 = $fs$addr; $add25 = (($32) + ($33))|0; $cmp26 = ($add25>>>0)<(32768); if (!($cmp26)) { $cond = 32768; _ec_dec_update($30,$31,$cond,32768); $36 = $val; STACKTOP = sp;return ($36|0); } $34 = $fl; $35 = $fs$addr; $add27 = (($34) + ($35))|0; $cond = $add27; _ec_dec_update($30,$31,$cond,32768); $36 = $val; STACKTOP = sp;return ($36|0); } function _isqrt32($_val) { $_val = $_val|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $_val$addr = 0, $add = 0, $add4 = 0, $b = 0; var $bshift = 0, $cmp = 0, $cmp7 = 0, $dec = 0, $g = 0, $shl = 0, $shl2 = 0, $shl3 = 0, $shr = 0, $shr6 = 0, $sub = 0, $sub1 = 0, $sub5 = 0, $t = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $_val$addr = $_val; $g = 0; $0 = $_val$addr; $1 = (Math_clz32(($0|0))|0); $sub = (32 - ($1))|0; $sub1 = (($sub) - 1)|0; $shr = $sub1 >> 1; $bshift = $shr; $2 = $bshift; $shl = 1 << $2; $b = $shl; while(1) { $3 = $g; $shl2 = $3 << 1; $4 = $b; $add = (($shl2) + ($4))|0; $5 = $bshift; $shl3 = $add << $5; $t = $shl3; $6 = $t; $7 = $_val$addr; $cmp = ($6>>>0)<=($7>>>0); if ($cmp) { $8 = $b; $9 = $g; $add4 = (($9) + ($8))|0; $g = $add4; $10 = $t; $11 = $_val$addr; $sub5 = (($11) - ($10))|0; $_val$addr = $sub5; } $12 = $b; $shr6 = $12 >>> 1; $b = $shr6; $13 = $bshift; $dec = (($13) + -1)|0; $bshift = $dec; $14 = $bshift; $cmp7 = ($14|0)>=(0); if (!($cmp7)) { break; } } $15 = $g; STACKTOP = sp;return ($15|0); } function _silk_encode_signs($psRangeEnc,$pulses,$length,$signalType,$quantOffsetType,$sum_pulses) { $psRangeEnc = $psRangeEnc|0; $pulses = $pulses|0; $length = $length|0; $signalType = $signalType|0; $quantOffsetType = $quantOffsetType|0; $sum_pulses = $sum_pulses|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $add$ptr = 0, $add25 = 0, $add3 = 0, $and = 0, $and10 = 0, $arrayidx = 0, $arrayidx11 = 0, $arrayidx17 = 0, $arrayidx2 = 0, $arrayidx22 = 0, $arrayidx5 = 0, $cmp = 0, $cmp14 = 0; var $cmp19 = 0, $cmp6 = 0, $cmp8 = 0, $cond = 0, $conv = 0, $conv1 = 0, $conv18 = 0, $conv23 = 0, $i = 0, $icdf = 0, $icdf_ptr = 0, $inc = 0, $inc28 = 0, $j = 0, $length$addr = 0, $mul = 0, $p = 0, $psRangeEnc$addr = 0, $pulses$addr = 0, $q_ptr = 0; var $quantOffsetType$addr = 0, $shl = 0, $shr = 0, $shr24 = 0, $signalType$addr = 0, $sum_pulses$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $icdf = sp + 44|0; $psRangeEnc$addr = $psRangeEnc; $pulses$addr = $pulses; $length$addr = $length; $signalType$addr = $signalType; $quantOffsetType$addr = $quantOffsetType; $sum_pulses$addr = $sum_pulses; $arrayidx = ((($icdf)) + 1|0); HEAP8[$arrayidx>>0] = 0; $0 = $pulses$addr; $q_ptr = $0; $1 = $quantOffsetType$addr; $2 = $signalType$addr; $shl = $2 << 1; $add = (($1) + ($shl))|0; $conv = $add&65535; $conv1 = $conv << 16 >> 16; $mul = ($conv1*7)|0; $i = $mul; $3 = $i; $arrayidx2 = (33982 + ($3)|0); $icdf_ptr = $arrayidx2; $4 = $length$addr; $add3 = (($4) + 8)|0; $shr = $add3 >> 4; $length$addr = $shr; $i = 0; while(1) { $5 = $i; $6 = $length$addr; $cmp = ($5|0)<($6|0); if (!($cmp)) { break; } $7 = $sum_pulses$addr; $8 = $i; $arrayidx5 = (($7) + ($8<<2)|0); $9 = HEAP32[$arrayidx5>>2]|0; $p = $9; $10 = $p; $cmp6 = ($10|0)>(0); L4: do { if ($cmp6) { $11 = $icdf_ptr; $12 = $p; $and = $12 & 31; $cmp8 = ($and|0)<(6); $13 = $p; $and10 = $13 & 31; $cond = $cmp8 ? $and10 : 6; $arrayidx11 = (($11) + ($cond)|0); $14 = HEAP8[$arrayidx11>>0]|0; HEAP8[$icdf>>0] = $14; $j = 0; while(1) { $15 = $j; $cmp14 = ($15|0)<(16); if (!($cmp14)) { break L4; } $16 = $q_ptr; $17 = $j; $arrayidx17 = (($16) + ($17)|0); $18 = HEAP8[$arrayidx17>>0]|0; $conv18 = $18 << 24 >> 24; $cmp19 = ($conv18|0)!=(0); if ($cmp19) { $19 = $psRangeEnc$addr; $20 = $q_ptr; $21 = $j; $arrayidx22 = (($20) + ($21)|0); $22 = HEAP8[$arrayidx22>>0]|0; $conv23 = $22 << 24 >> 24; $shr24 = $conv23 >> 15; $add25 = (($shr24) + 1)|0; _ec_enc_icdf($19,$add25,$icdf,8); } $23 = $j; $inc = (($23) + 1)|0; $j = $inc; } } } while(0); $24 = $q_ptr; $add$ptr = ((($24)) + 16|0); $q_ptr = $add$ptr; $25 = $i; $inc28 = (($25) + 1)|0; $i = $inc28; } STACKTOP = sp;return; } function _silk_decode_signs($psRangeDec,$pulses,$length,$signalType,$quantOffsetType,$sum_pulses) { $psRangeDec = $psRangeDec|0; $pulses = $pulses|0; $length = $length|0; $signalType = $signalType|0; $quantOffsetType = $quantOffsetType|0; $sum_pulses = $sum_pulses|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $add$ptr = 0, $add3 = 0, $and = 0, $and10 = 0, $arrayidx = 0, $arrayidx11 = 0, $arrayidx17 = 0, $arrayidx2 = 0, $arrayidx23 = 0, $arrayidx5 = 0, $call = 0, $cmp = 0, $cmp14 = 0; var $cmp19 = 0, $cmp6 = 0, $cmp8 = 0, $cond = 0, $conv = 0, $conv1 = 0, $conv18 = 0, $conv24 = 0, $conv26 = 0, $i = 0, $icdf = 0, $icdf_ptr = 0, $inc = 0, $inc29 = 0, $j = 0, $length$addr = 0, $mul = 0, $mul25 = 0, $p = 0, $psRangeDec$addr = 0; var $pulses$addr = 0, $q_ptr = 0, $quantOffsetType$addr = 0, $shl = 0, $shl22 = 0, $shr = 0, $signalType$addr = 0, $sub = 0, $sum_pulses$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $icdf = sp + 44|0; $psRangeDec$addr = $psRangeDec; $pulses$addr = $pulses; $length$addr = $length; $signalType$addr = $signalType; $quantOffsetType$addr = $quantOffsetType; $sum_pulses$addr = $sum_pulses; $arrayidx = ((($icdf)) + 1|0); HEAP8[$arrayidx>>0] = 0; $0 = $pulses$addr; $q_ptr = $0; $1 = $quantOffsetType$addr; $2 = $signalType$addr; $shl = $2 << 1; $add = (($1) + ($shl))|0; $conv = $add&65535; $conv1 = $conv << 16 >> 16; $mul = ($conv1*7)|0; $i = $mul; $3 = $i; $arrayidx2 = (33982 + ($3)|0); $icdf_ptr = $arrayidx2; $4 = $length$addr; $add3 = (($4) + 8)|0; $shr = $add3 >> 4; $length$addr = $shr; $i = 0; while(1) { $5 = $i; $6 = $length$addr; $cmp = ($5|0)<($6|0); if (!($cmp)) { break; } $7 = $sum_pulses$addr; $8 = $i; $arrayidx5 = (($7) + ($8<<2)|0); $9 = HEAP32[$arrayidx5>>2]|0; $p = $9; $10 = $p; $cmp6 = ($10|0)>(0); L4: do { if ($cmp6) { $11 = $icdf_ptr; $12 = $p; $and = $12 & 31; $cmp8 = ($and|0)<(6); $13 = $p; $and10 = $13 & 31; $cond = $cmp8 ? $and10 : 6; $arrayidx11 = (($11) + ($cond)|0); $14 = HEAP8[$arrayidx11>>0]|0; HEAP8[$icdf>>0] = $14; $j = 0; while(1) { $15 = $j; $cmp14 = ($15|0)<(16); if (!($cmp14)) { break L4; } $16 = $q_ptr; $17 = $j; $arrayidx17 = (($16) + ($17<<1)|0); $18 = HEAP16[$arrayidx17>>1]|0; $conv18 = $18 << 16 >> 16; $cmp19 = ($conv18|0)>(0); if ($cmp19) { $19 = $psRangeDec$addr; $call = (_ec_dec_icdf($19,$icdf,8)|0); $shl22 = $call << 1; $sub = (($shl22) - 1)|0; $20 = $q_ptr; $21 = $j; $arrayidx23 = (($20) + ($21<<1)|0); $22 = HEAP16[$arrayidx23>>1]|0; $conv24 = $22 << 16 >> 16; $mul25 = Math_imul($conv24, $sub)|0; $conv26 = $mul25&65535; HEAP16[$arrayidx23>>1] = $conv26; } $23 = $j; $inc = (($23) + 1)|0; $j = $inc; } } } while(0); $24 = $q_ptr; $add$ptr = ((($24)) + 32|0); $q_ptr = $add$ptr; $25 = $i; $inc29 = (($25) + 1)|0; $i = $inc29; } STACKTOP = sp;return; } function _silk_init_decoder($psDec) { $psDec = $psDec|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $arch = 0, $call = 0, $first_frame_after_reset = 0, $psDec$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $psDec$addr = $psDec; $0 = $psDec$addr; _memset(($0|0),0,4264)|0; $1 = $psDec$addr; $first_frame_after_reset = ((($1)) + 2376|0); HEAP32[$first_frame_after_reset>>2] = 1; $2 = $psDec$addr; HEAP32[$2>>2] = 65536; $call = (_opus_select_arch()|0); $3 = $psDec$addr; $arch = ((($3)) + 4168|0); HEAP32[$arch>>2] = $call; $4 = $psDec$addr; _silk_CNG_Reset($4); $5 = $psDec$addr; _silk_PLC_Reset($5); STACKTOP = sp;return 0; } function _silk_decode_frame($psDec,$psRangeDec,$pOut,$pN,$lostFlag,$condCoding,$arch) { $psDec = $psDec|0; $psRangeDec = $psRangeDec|0; $pOut = $pOut|0; $pN = $pN|0; $lostFlag = $lostFlag|0; $condCoding = $condCoding|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $8 = 0, $9 = 0, $L = 0, $LBRR_flags = 0, $LTP_scale_Q14 = 0, $add = 0, $and = 0, $arch$addr = 0, $arrayidx = 0, $arrayidx23 = 0, $arrayidx25 = 0, $arrayidx31 = 0; var $cmp = 0, $cmp1 = 0, $cmp2 = 0, $condCoding$addr = 0, $conv = 0, $conv12 = 0, $conv14 = 0, $conv5 = 0, $first_frame_after_reset = 0, $frame_length = 0, $frame_length18 = 0, $frame_length22 = 0, $frame_length26 = 0, $frame_length6 = 0, $indices = 0, $indices10 = 0, $indices15 = 0, $indices4 = 0, $lagPrev = 0, $lossCnt = 0; var $lostFlag$addr = 0, $ltp_mem_length = 0, $mul = 0, $mul27 = 0, $mv_len = 0, $nFramesDecoded = 0, $nFramesDecoded3 = 0, $nb_subfr = 0, $outBuf = 0, $outBuf21 = 0, $outBuf24 = 0, $pN$addr = 0, $pOut$addr = 0, $prevSignalType = 0, $prevSignalType13 = 0, $psDec$addr = 0, $psDecCtrl = 0, $psRangeDec$addr = 0, $quantOffsetType = 0, $ret = 0; var $saved_stack = 0, $signalType = 0, $signalType11 = 0, $signalType16 = 0, $sub = 0, $sub19 = 0, $sub30 = 0, $vla = 0, $vla$alloca_mul = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 192|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(192|0); $psDecCtrl = sp + 4|0; $psDec$addr = $psDec; $psRangeDec$addr = $psRangeDec; $pOut$addr = $pOut; $pN$addr = $pN; $lostFlag$addr = $lostFlag; $condCoding$addr = $condCoding; $arch$addr = $arch; $ret = 0; $0 = $psDec$addr; $frame_length = ((($0)) + 2328|0); $1 = HEAP32[$frame_length>>2]|0; $L = $1; $LTP_scale_Q14 = ((($psDecCtrl)) + 136|0); HEAP32[$LTP_scale_Q14>>2] = 0; $2 = $lostFlag$addr; $cmp = ($2|0)==(0); do { if ($cmp) { label = 4; } else { $3 = $lostFlag$addr; $cmp1 = ($3|0)==(2); if ($cmp1) { $4 = $psDec$addr; $LBRR_flags = ((($4)) + 2420|0); $5 = $psDec$addr; $nFramesDecoded = ((($5)) + 2388|0); $6 = HEAP32[$nFramesDecoded>>2]|0; $arrayidx = (($LBRR_flags) + ($6<<2)|0); $7 = HEAP32[$arrayidx>>2]|0; $cmp2 = ($7|0)==(1); if ($cmp2) { label = 4; break; } } $37 = $psDec$addr; $prevSignalType13 = ((($37)) + 4164|0); $38 = HEAP32[$prevSignalType13>>2]|0; $conv14 = $38&255; $39 = $psDec$addr; $indices15 = ((($39)) + 2736|0); $signalType16 = ((($indices15)) + 29|0); HEAP8[$signalType16>>0] = $conv14; $40 = $psDec$addr; $41 = $pOut$addr; $42 = $arch$addr; _silk_PLC($40,$psDecCtrl,$41,1,$42); } } while(0); if ((label|0) == 4) { $8 = $L; $add = (($8) + 16)|0; $sub = (($add) - 1)|0; $and = $sub & -16; $9 = (_llvm_stacksave()|0); $saved_stack = $9; $vla$alloca_mul = $and<<1; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $10 = $psDec$addr; $11 = $psRangeDec$addr; $12 = $psDec$addr; $nFramesDecoded3 = ((($12)) + 2388|0); $13 = HEAP32[$nFramesDecoded3>>2]|0; $14 = $lostFlag$addr; $15 = $condCoding$addr; _silk_decode_indices($10,$11,$13,$14,$15); $16 = $psRangeDec$addr; $17 = $psDec$addr; $indices = ((($17)) + 2736|0); $signalType = ((($indices)) + 29|0); $18 = HEAP8[$signalType>>0]|0; $conv = $18 << 24 >> 24; $19 = $psDec$addr; $indices4 = ((($19)) + 2736|0); $quantOffsetType = ((($indices4)) + 30|0); $20 = HEAP8[$quantOffsetType>>0]|0; $conv5 = $20 << 24 >> 24; $21 = $psDec$addr; $frame_length6 = ((($21)) + 2328|0); $22 = HEAP32[$frame_length6>>2]|0; _silk_decode_pulses($16,$vla,$conv,$conv5,$22); $23 = $psDec$addr; $24 = $condCoding$addr; _silk_decode_parameters($23,$psDecCtrl,$24); $25 = $psDec$addr; $26 = $pOut$addr; $27 = $arch$addr; _silk_decode_core($25,$psDecCtrl,$26,$vla,$27); $28 = $psDec$addr; $29 = $pOut$addr; $30 = $arch$addr; _silk_PLC($28,$psDecCtrl,$29,0,$30); $31 = $psDec$addr; $lossCnt = ((($31)) + 4160|0); HEAP32[$lossCnt>>2] = 0; $32 = $psDec$addr; $indices10 = ((($32)) + 2736|0); $signalType11 = ((($indices10)) + 29|0); $33 = HEAP8[$signalType11>>0]|0; $conv12 = $33 << 24 >> 24; $34 = $psDec$addr; $prevSignalType = ((($34)) + 4164|0); HEAP32[$prevSignalType>>2] = $conv12; $35 = $psDec$addr; $first_frame_after_reset = ((($35)) + 2376|0); HEAP32[$first_frame_after_reset>>2] = 0; $36 = $saved_stack; _llvm_stackrestore(($36|0)); } $43 = $psDec$addr; $ltp_mem_length = ((($43)) + 2336|0); $44 = HEAP32[$ltp_mem_length>>2]|0; $45 = $psDec$addr; $frame_length18 = ((($45)) + 2328|0); $46 = HEAP32[$frame_length18>>2]|0; $sub19 = (($44) - ($46))|0; $mv_len = $sub19; $47 = $psDec$addr; $outBuf = ((($47)) + 1348|0); $48 = $psDec$addr; $outBuf21 = ((($48)) + 1348|0); $49 = $psDec$addr; $frame_length22 = ((($49)) + 2328|0); $50 = HEAP32[$frame_length22>>2]|0; $arrayidx23 = (($outBuf21) + ($50<<1)|0); $51 = $mv_len; $mul = $51<<1; _memmove(($outBuf|0),($arrayidx23|0),($mul|0))|0; $52 = $psDec$addr; $outBuf24 = ((($52)) + 1348|0); $53 = $mv_len; $arrayidx25 = (($outBuf24) + ($53<<1)|0); $54 = $pOut$addr; $55 = $psDec$addr; $frame_length26 = ((($55)) + 2328|0); $56 = HEAP32[$frame_length26>>2]|0; $mul27 = $56<<1; _memcpy(($arrayidx25|0),($54|0),($mul27|0))|0; $57 = $psDec$addr; $58 = $pOut$addr; $59 = $L; _silk_CNG($57,$psDecCtrl,$58,$59); $60 = $psDec$addr; $61 = $pOut$addr; $62 = $L; _silk_PLC_glue_frames($60,$61,$62); $63 = $psDec$addr; $nb_subfr = ((($63)) + 2324|0); $64 = HEAP32[$nb_subfr>>2]|0; $sub30 = (($64) - 1)|0; $arrayidx31 = (($psDecCtrl) + ($sub30<<2)|0); $65 = HEAP32[$arrayidx31>>2]|0; $66 = $psDec$addr; $lagPrev = ((($66)) + 2308|0); HEAP32[$lagPrev>>2] = $65; $67 = $L; $68 = $pN$addr; HEAP32[$68>>2] = $67; $69 = $ret; STACKTOP = sp;return ($69|0); } function _silk_decode_parameters($psDec,$psDecCtrl,$condCoding) { $psDec = $psDec|0; $psDecCtrl = $psDecCtrl|0; $condCoding = $condCoding|0; var $$sink = 0, $$sink1 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0; var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0; var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0; var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0; var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $Gains_Q16 = 0, $Ix = 0; var $LPC_order = 0, $LPC_order16 = 0, $LPC_order35 = 0, $LPC_order43 = 0, $LPC_order49 = 0, $LPC_order55 = 0, $LPC_order59 = 0, $LTPCoef_Q14 = 0, $LTPCoef_Q14107 = 0, $LTPIndex = 0, $LTP_scaleIndex = 0, $LTP_scale_Q14114 = 0, $LastGainIndex = 0, $NLSFIndices = 0, $NLSFInterpCoef_Q2 = 0, $NLSFInterpCoef_Q211 = 0, $NLSFInterpCoef_Q222 = 0, $PERIndex = 0, $PERIndex113 = 0, $PredCoef_Q12 = 0; var $PredCoef_Q1231 = 0, $PredCoef_Q1237 = 0, $PredCoef_Q1240 = 0, $PredCoef_Q1252 = 0, $PredCoef_Q1256 = 0, $add = 0, $add85 = 0, $add90 = 0, $arch = 0, $arch36 = 0, $arrayidx = 0, $arrayidx100 = 0, $arrayidx19 = 0, $arrayidx24 = 0, $arrayidx27 = 0, $arrayidx30 = 0, $arrayidx41 = 0, $arrayidx57 = 0, $arrayidx71 = 0, $arrayidx78 = 0; var $arrayidx86 = 0, $arrayidx91 = 0, $cbk_ptr_Q7 = 0, $cmp = 0, $cmp13 = 0, $cmp17 = 0, $cmp63 = 0, $cmp7 = 0, $cmp74 = 0, $cmp81 = 0, $condCoding$addr = 0, $contourIndex = 0, $conv = 0, $conv101 = 0, $conv12 = 0, $conv20 = 0, $conv23 = 0, $conv25 = 0, $conv28 = 0, $conv29 = 0; var $conv62 = 0, $conv79 = 0, $conv87 = 0, $conv88 = 0, $conv99 = 0, $first_frame_after_reset = 0, $fs_kHz = 0, $i = 0, $idxprom = 0, $inc = 0, $inc93 = 0, $inc96 = 0, $indices = 0, $indices10 = 0, $indices112 = 0, $indices21 = 0, $indices3 = 0, $indices61 = 0, $indices66 = 0, $indices67 = 0; var $indices70 = 0, $indices77 = 0, $indices9 = 0, $k = 0, $lagIndex = 0, $lossCnt = 0, $mul = 0, $mul106 = 0, $mul110 = 0, $mul111 = 0, $mul44 = 0, $mul50 = 0, $mul84 = 0, $mul89 = 0, $nb_subfr = 0, $nb_subfr105 = 0, $nb_subfr109 = 0, $nb_subfr69 = 0, $nb_subfr73 = 0, $pNLSF0_Q15 = 0; var $pNLSF_Q15 = 0, $prevNLSF_Q15 = 0, $prevNLSF_Q1526 = 0, $prevNLSF_Q1546 = 0, $psDec$addr = 0, $psDecCtrl$addr = 0, $psNLSF_CB = 0, $shl = 0, $shr = 0, $signalType = 0, $sub = 0, $tobool = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 96|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(96|0); $pNLSF_Q15 = sp + 64|0; $pNLSF0_Q15 = sp + 32|0; $psDec$addr = $psDec; $psDecCtrl$addr = $psDecCtrl; $condCoding$addr = $condCoding; $0 = $psDecCtrl$addr; $Gains_Q16 = ((($0)) + 16|0); $1 = $psDec$addr; $indices = ((($1)) + 2736|0); $2 = $psDec$addr; $LastGainIndex = ((($2)) + 2312|0); $3 = $condCoding$addr; $cmp = ($3|0)==(2); $conv = $cmp&1; $4 = $psDec$addr; $nb_subfr = ((($4)) + 2324|0); $5 = HEAP32[$nb_subfr>>2]|0; _silk_gains_dequant($Gains_Q16,$indices,$LastGainIndex,$conv,$5); $6 = $psDec$addr; $indices3 = ((($6)) + 2736|0); $NLSFIndices = ((($indices3)) + 8|0); $7 = $psDec$addr; $psNLSF_CB = ((($7)) + 2732|0); $8 = HEAP32[$psNLSF_CB>>2]|0; _silk_NLSF_decode($pNLSF_Q15,$NLSFIndices,$8); $9 = $psDecCtrl$addr; $PredCoef_Q12 = ((($9)) + 32|0); $arrayidx = ((($PredCoef_Q12)) + 32|0); $10 = $psDec$addr; $LPC_order = ((($10)) + 2340|0); $11 = HEAP32[$LPC_order>>2]|0; $12 = $psDec$addr; $arch = ((($12)) + 4168|0); $13 = HEAP32[$arch>>2]|0; _silk_NLSF2A($arrayidx,$pNLSF_Q15,$11,$13); $14 = $psDec$addr; $first_frame_after_reset = ((($14)) + 2376|0); $15 = HEAP32[$first_frame_after_reset>>2]|0; $cmp7 = ($15|0)==(1); if ($cmp7) { $16 = $psDec$addr; $indices9 = ((($16)) + 2736|0); $NLSFInterpCoef_Q2 = ((($indices9)) + 31|0); HEAP8[$NLSFInterpCoef_Q2>>0] = 4; } $17 = $psDec$addr; $indices10 = ((($17)) + 2736|0); $NLSFInterpCoef_Q211 = ((($indices10)) + 31|0); $18 = HEAP8[$NLSFInterpCoef_Q211>>0]|0; $conv12 = $18 << 24 >> 24; $cmp13 = ($conv12|0)<(4); if ($cmp13) { $i = 0; while(1) { $19 = $i; $20 = $psDec$addr; $LPC_order16 = ((($20)) + 2340|0); $21 = HEAP32[$LPC_order16>>2]|0; $cmp17 = ($19|0)<($21|0); if (!($cmp17)) { break; } $22 = $psDec$addr; $prevNLSF_Q15 = ((($22)) + 2344|0); $23 = $i; $arrayidx19 = (($prevNLSF_Q15) + ($23<<1)|0); $24 = HEAP16[$arrayidx19>>1]|0; $conv20 = $24 << 16 >> 16; $25 = $psDec$addr; $indices21 = ((($25)) + 2736|0); $NLSFInterpCoef_Q222 = ((($indices21)) + 31|0); $26 = HEAP8[$NLSFInterpCoef_Q222>>0]|0; $conv23 = $26 << 24 >> 24; $27 = $i; $arrayidx24 = (($pNLSF_Q15) + ($27<<1)|0); $28 = HEAP16[$arrayidx24>>1]|0; $conv25 = $28 << 16 >> 16; $29 = $psDec$addr; $prevNLSF_Q1526 = ((($29)) + 2344|0); $30 = $i; $arrayidx27 = (($prevNLSF_Q1526) + ($30<<1)|0); $31 = HEAP16[$arrayidx27>>1]|0; $conv28 = $31 << 16 >> 16; $sub = (($conv25) - ($conv28))|0; $mul = Math_imul($conv23, $sub)|0; $shr = $mul >> 2; $add = (($conv20) + ($shr))|0; $conv29 = $add&65535; $32 = $i; $arrayidx30 = (($pNLSF0_Q15) + ($32<<1)|0); HEAP16[$arrayidx30>>1] = $conv29; $33 = $i; $inc = (($33) + 1)|0; $i = $inc; } $34 = $psDecCtrl$addr; $PredCoef_Q1231 = ((($34)) + 32|0); $35 = $psDec$addr; $LPC_order35 = ((($35)) + 2340|0); $36 = HEAP32[$LPC_order35>>2]|0; $37 = $psDec$addr; $arch36 = ((($37)) + 4168|0); $38 = HEAP32[$arch36>>2]|0; _silk_NLSF2A($PredCoef_Q1231,$pNLSF0_Q15,$36,$38); } else { $39 = $psDecCtrl$addr; $PredCoef_Q1237 = ((($39)) + 32|0); $40 = $psDecCtrl$addr; $PredCoef_Q1240 = ((($40)) + 32|0); $arrayidx41 = ((($PredCoef_Q1240)) + 32|0); $41 = $psDec$addr; $LPC_order43 = ((($41)) + 2340|0); $42 = HEAP32[$LPC_order43>>2]|0; $mul44 = $42<<1; _memcpy(($PredCoef_Q1237|0),($arrayidx41|0),($mul44|0))|0; } $43 = $psDec$addr; $prevNLSF_Q1546 = ((($43)) + 2344|0); $44 = $psDec$addr; $LPC_order49 = ((($44)) + 2340|0); $45 = HEAP32[$LPC_order49>>2]|0; $mul50 = $45<<1; _memcpy(($prevNLSF_Q1546|0),($pNLSF_Q15|0),($mul50|0))|0; $46 = $psDec$addr; $lossCnt = ((($46)) + 4160|0); $47 = HEAP32[$lossCnt>>2]|0; $tobool = ($47|0)!=(0); if ($tobool) { $48 = $psDecCtrl$addr; $PredCoef_Q1252 = ((($48)) + 32|0); $49 = $psDec$addr; $LPC_order55 = ((($49)) + 2340|0); $50 = HEAP32[$LPC_order55>>2]|0; _silk_bwexpander($PredCoef_Q1252,$50,63570); $51 = $psDecCtrl$addr; $PredCoef_Q1256 = ((($51)) + 32|0); $arrayidx57 = ((($PredCoef_Q1256)) + 32|0); $52 = $psDec$addr; $LPC_order59 = ((($52)) + 2340|0); $53 = HEAP32[$LPC_order59>>2]|0; _silk_bwexpander($arrayidx57,$53,63570); } $54 = $psDec$addr; $indices61 = ((($54)) + 2736|0); $signalType = ((($indices61)) + 29|0); $55 = HEAP8[$signalType>>0]|0; $conv62 = $55 << 24 >> 24; $cmp63 = ($conv62|0)==(2); if (!($cmp63)) { $88 = $psDecCtrl$addr; $89 = $psDec$addr; $nb_subfr105 = ((($89)) + 2324|0); $90 = HEAP32[$nb_subfr105>>2]|0; $mul106 = $90<<2; _memset(($88|0),0,($mul106|0))|0; $91 = $psDecCtrl$addr; $LTPCoef_Q14107 = ((($91)) + 96|0); $92 = $psDec$addr; $nb_subfr109 = ((($92)) + 2324|0); $93 = HEAP32[$nb_subfr109>>2]|0; $mul110 = ($93*5)|0; $mul111 = $mul110<<1; _memset(($LTPCoef_Q14107|0),0,($mul111|0))|0; $94 = $psDec$addr; $indices112 = ((($94)) + 2736|0); $PERIndex113 = ((($indices112)) + 32|0); HEAP8[$PERIndex113>>0] = 0; $95 = $psDecCtrl$addr; $$sink = 0;$$sink1 = $95; $LTP_scale_Q14114 = ((($$sink1)) + 136|0); HEAP32[$LTP_scale_Q14114>>2] = $$sink; STACKTOP = sp;return; } $56 = $psDec$addr; $indices66 = ((($56)) + 2736|0); $lagIndex = ((($indices66)) + 26|0); $57 = HEAP16[$lagIndex>>1]|0; $58 = $psDec$addr; $indices67 = ((($58)) + 2736|0); $contourIndex = ((($indices67)) + 28|0); $59 = HEAP8[$contourIndex>>0]|0; $60 = $psDecCtrl$addr; $61 = $psDec$addr; $fs_kHz = ((($61)) + 2316|0); $62 = HEAP32[$fs_kHz>>2]|0; $63 = $psDec$addr; $nb_subfr69 = ((($63)) + 2324|0); $64 = HEAP32[$nb_subfr69>>2]|0; _silk_decode_pitch($57,$59,$60,$62,$64); $65 = $psDec$addr; $indices70 = ((($65)) + 2736|0); $PERIndex = ((($indices70)) + 32|0); $66 = HEAP8[$PERIndex>>0]|0; $idxprom = $66 << 24 >> 24; $arrayidx71 = (15160 + ($idxprom<<2)|0); $67 = HEAP32[$arrayidx71>>2]|0; $cbk_ptr_Q7 = $67; $k = 0; while(1) { $68 = $k; $69 = $psDec$addr; $nb_subfr73 = ((($69)) + 2324|0); $70 = HEAP32[$nb_subfr73>>2]|0; $cmp74 = ($68|0)<($70|0); $71 = $psDec$addr; $indices77 = ((($71)) + 2736|0); if (!($cmp74)) { break; } $LTPIndex = ((($indices77)) + 4|0); $72 = $k; $arrayidx78 = (($LTPIndex) + ($72)|0); $73 = HEAP8[$arrayidx78>>0]|0; $conv79 = $73 << 24 >> 24; $Ix = $conv79; $i = 0; while(1) { $74 = $i; $cmp81 = ($74|0)<(5); if (!($cmp81)) { break; } $75 = $cbk_ptr_Q7; $76 = $Ix; $mul84 = ($76*5)|0; $77 = $i; $add85 = (($mul84) + ($77))|0; $arrayidx86 = (($75) + ($add85)|0); $78 = HEAP8[$arrayidx86>>0]|0; $conv87 = $78 << 24 >> 24; $shl = $conv87 << 7; $conv88 = $shl&65535; $79 = $psDecCtrl$addr; $LTPCoef_Q14 = ((($79)) + 96|0); $80 = $k; $mul89 = ($80*5)|0; $81 = $i; $add90 = (($mul89) + ($81))|0; $arrayidx91 = (($LTPCoef_Q14) + ($add90<<1)|0); HEAP16[$arrayidx91>>1] = $conv88; $82 = $i; $inc93 = (($82) + 1)|0; $i = $inc93; } $83 = $k; $inc96 = (($83) + 1)|0; $k = $inc96; } $LTP_scaleIndex = ((($indices77)) + 33|0); $84 = HEAP8[$LTP_scaleIndex>>0]|0; $conv99 = $84 << 24 >> 24; $Ix = $conv99; $85 = $Ix; $arrayidx100 = (23520 + ($85<<1)|0); $86 = HEAP16[$arrayidx100>>1]|0; $conv101 = $86 << 16 >> 16; $87 = $psDecCtrl$addr; $$sink = $conv101;$$sink1 = $87; $LTP_scale_Q14114 = ((($$sink1)) + 136|0); HEAP32[$LTP_scale_Q14114>>2] = $$sink; STACKTOP = sp;return; } function _silk_decode_indices($psDec,$psRangeDec,$FrameIndex,$decode_LBRR,$condCoding) { $psDec = $psDec|0; $psRangeDec = $psRangeDec|0; $FrameIndex = $FrameIndex|0; $decode_LBRR = $decode_LBRR|0; $condCoding = $condCoding|0; var $$sink = 0, $$sink1 = 0, $$sink2 = 0, $$sink3 = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0; var $112 = 0, $113 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $CB1_iCDF = 0, $FrameIndex$addr = 0; var $Ix = 0, $LTPIndex = 0, $LTP_scaleIndex174 = 0, $NLSFIndices = 0, $NLSFIndices52 = 0, $NLSFIndices81 = 0, $NLSFInterpCoef_Q296 = 0, $PERIndex = 0, $PERIndex156 = 0, $Seed = 0, $VAD_flags = 0, $add = 0, $add117 = 0, $add138 = 0, $add27 = 0, $add75 = 0, $add82 = 0, $and = 0, $arrayidx = 0, $arrayidx14 = 0; var $arrayidx158 = 0, $arrayidx162 = 0, $arrayidx36 = 0, $arrayidx43 = 0, $arrayidx62 = 0, $arrayidx64 = 0, $arrayidx83 = 0, $call = 0, $call109 = 0, $call124 = 0, $call132 = 0, $call144 = 0, $call147 = 0, $call15 = 0, $call159 = 0, $call169 = 0, $call181 = 0, $call2 = 0, $call20 = 0, $call32 = 0; var $call44 = 0, $call65 = 0, $call69 = 0, $call7 = 0, $call74 = 0, $call91 = 0, $cmp = 0, $cmp101 = 0, $cmp104 = 0, $cmp106 = 0, $cmp112 = 0, $cmp152 = 0, $cmp166 = 0, $cmp30 = 0, $cmp58 = 0, $cmp66 = 0, $cmp71 = 0, $cmp88 = 0, $condCoding$addr = 0, $contourIndex = 0; var $conv = 0, $conv100 = 0, $conv110 = 0, $conv111 = 0, $conv116 = 0, $conv118 = 0, $conv125 = 0, $conv126 = 0, $conv129 = 0, $conv133 = 0, $conv134 = 0, $conv137 = 0, $conv139 = 0, $conv145 = 0, $conv148 = 0, $conv16 = 0, $conv160 = 0, $conv170 = 0, $conv179 = 0, $conv182 = 0; var $conv21 = 0, $conv22 = 0, $conv26 = 0, $conv28 = 0, $conv3 = 0, $conv33 = 0, $conv39 = 0, $conv42 = 0, $conv45 = 0, $conv54 = 0, $conv57 = 0, $conv79 = 0, $conv8 = 0, $conv92 = 0, $decode_LBRR$addr = 0, $decode_absolute_lagIndex = 0, $delta_lagIndex = 0, $ec_iCDF = 0, $ec_ix = 0, $ec_prevLagIndex = 0; var $ec_prevLagIndex143 = 0, $ec_prevSignalType = 0, $ec_prevSignalType180 = 0, $fs_kHz = 0, $i = 0, $idxprom = 0, $idxprom157 = 0, $idxprom63 = 0, $inc = 0, $inc164 = 0, $inc85 = 0, $indices = 0, $indices119 = 0, $indices12 = 0, $indices130 = 0, $indices135 = 0, $indices141 = 0, $indices146 = 0, $indices149 = 0, $indices155 = 0; var $indices161 = 0, $indices17 = 0, $indices173 = 0, $indices177 = 0, $indices183 = 0, $indices23 = 0, $indices34 = 0, $indices37 = 0, $indices4 = 0, $indices46 = 0, $indices51 = 0, $indices80 = 0, $indices9 = 0, $indices95 = 0, $indices98 = 0, $k = 0, $lagIndex = 0, $lagIndex131 = 0, $lagIndex136 = 0, $lagIndex142 = 0; var $mul = 0, $mul128 = 0, $nb_subfr = 0, $nb_subfr151 = 0, $nb_subfr87 = 0, $order = 0, $pitch_contour_iCDF = 0, $pitch_lag_low_bits_iCDF = 0, $pred_Q8 = 0, $psDec$addr = 0, $psNLSF_CB = 0, $psNLSF_CB41 = 0, $psNLSF_CB50 = 0, $psNLSF_CB56 = 0, $psNLSF_CB61 = 0, $psRangeDec$addr = 0, $quantOffsetType = 0, $shl = 0, $shr = 0, $shr127 = 0; var $shr40 = 0, $signalType = 0, $signalType13 = 0, $signalType178 = 0, $signalType38 = 0, $signalType99 = 0, $sub = 0, $sub115 = 0, $sub78 = 0, $tobool = 0, $tobool1 = 0, $tobool122 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 96|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(96|0); $ec_ix = sp + 40|0; $pred_Q8 = sp + 72|0; $psDec$addr = $psDec; $psRangeDec$addr = $psRangeDec; $FrameIndex$addr = $FrameIndex; $decode_LBRR$addr = $decode_LBRR; $condCoding$addr = $condCoding; $0 = $decode_LBRR$addr; $tobool = ($0|0)!=(0); if ($tobool) { label = 3; } else { $1 = $psDec$addr; $VAD_flags = ((($1)) + 2404|0); $2 = $FrameIndex$addr; $arrayidx = (($VAD_flags) + ($2<<2)|0); $3 = HEAP32[$arrayidx>>2]|0; $tobool1 = ($3|0)!=(0); if ($tobool1) { label = 3; } else { $5 = $psRangeDec$addr; $call2 = (_ec_dec_icdf($5,32822,8)|0); $Ix = $call2; } } if ((label|0) == 3) { $4 = $psRangeDec$addr; $call = (_ec_dec_icdf($4,32818,8)|0); $add = (($call) + 2)|0; $Ix = $add; } $6 = $Ix; $shr = $6 >> 1; $conv = $shr&255; $7 = $psDec$addr; $indices = ((($7)) + 2736|0); $signalType = ((($indices)) + 29|0); HEAP8[$signalType>>0] = $conv; $8 = $Ix; $and = $8 & 1; $conv3 = $and&255; $9 = $psDec$addr; $indices4 = ((($9)) + 2736|0); $quantOffsetType = ((($indices4)) + 30|0); HEAP8[$quantOffsetType>>0] = $conv3; $10 = $condCoding$addr; $cmp = ($10|0)==(2); $11 = $psRangeDec$addr; if ($cmp) { $call7 = (_ec_dec_icdf($11,32281,8)|0); $conv8 = $call7&255; $12 = $psDec$addr; $indices9 = ((($12)) + 2736|0); HEAP8[$indices9>>0] = $conv8; } else { $13 = $psDec$addr; $indices12 = ((($13)) + 2736|0); $signalType13 = ((($indices12)) + 29|0); $14 = HEAP8[$signalType13>>0]|0; $idxprom = $14 << 24 >> 24; $arrayidx14 = (32257 + ($idxprom<<3)|0); $call15 = (_ec_dec_icdf($11,$arrayidx14,8)|0); $shl = $call15 << 3; $conv16 = $shl&255; $15 = $psDec$addr; $indices17 = ((($15)) + 2736|0); HEAP8[$indices17>>0] = $conv16; $16 = $psRangeDec$addr; $call20 = (_ec_dec_icdf($16,32847,8)|0); $conv21 = $call20&255; $conv22 = $conv21 << 24 >> 24; $17 = $psDec$addr; $indices23 = ((($17)) + 2736|0); $18 = HEAP8[$indices23>>0]|0; $conv26 = $18 << 24 >> 24; $add27 = (($conv26) + ($conv22))|0; $conv28 = $add27&255; HEAP8[$indices23>>0] = $conv28; } $i = 1; while(1) { $19 = $i; $20 = $psDec$addr; $nb_subfr = ((($20)) + 2324|0); $21 = HEAP32[$nb_subfr>>2]|0; $cmp30 = ($19|0)<($21|0); $22 = $psRangeDec$addr; if (!($cmp30)) { break; } $call32 = (_ec_dec_icdf($22,32281,8)|0); $conv33 = $call32&255; $23 = $psDec$addr; $indices34 = ((($23)) + 2736|0); $24 = $i; $arrayidx36 = (($indices34) + ($24)|0); HEAP8[$arrayidx36>>0] = $conv33; $25 = $i; $inc = (($25) + 1)|0; $i = $inc; } $26 = $psDec$addr; $psNLSF_CB = ((($26)) + 2732|0); $27 = HEAP32[$psNLSF_CB>>2]|0; $CB1_iCDF = ((($27)) + 16|0); $28 = HEAP32[$CB1_iCDF>>2]|0; $29 = $psDec$addr; $indices37 = ((($29)) + 2736|0); $signalType38 = ((($indices37)) + 29|0); $30 = HEAP8[$signalType38>>0]|0; $conv39 = $30 << 24 >> 24; $shr40 = $conv39 >> 1; $31 = $psDec$addr; $psNLSF_CB41 = ((($31)) + 2732|0); $32 = HEAP32[$psNLSF_CB41>>2]|0; $33 = HEAP16[$32>>1]|0; $conv42 = $33 << 16 >> 16; $mul = Math_imul($shr40, $conv42)|0; $arrayidx43 = (($28) + ($mul)|0); $call44 = (_ec_dec_icdf($22,$arrayidx43,8)|0); $conv45 = $call44&255; $34 = $psDec$addr; $indices46 = ((($34)) + 2736|0); $NLSFIndices = ((($indices46)) + 8|0); HEAP8[$NLSFIndices>>0] = $conv45; $35 = $psDec$addr; $psNLSF_CB50 = ((($35)) + 2732|0); $36 = HEAP32[$psNLSF_CB50>>2]|0; $37 = $psDec$addr; $indices51 = ((($37)) + 2736|0); $NLSFIndices52 = ((($indices51)) + 8|0); $38 = HEAP8[$NLSFIndices52>>0]|0; $conv54 = $38 << 24 >> 24; _silk_NLSF_unpack($ec_ix,$pred_Q8,$36,$conv54); $i = 0; while(1) { $39 = $i; $40 = $psDec$addr; $psNLSF_CB56 = ((($40)) + 2732|0); $41 = HEAP32[$psNLSF_CB56>>2]|0; $order = ((($41)) + 2|0); $42 = HEAP16[$order>>1]|0; $conv57 = $42 << 16 >> 16; $cmp58 = ($39|0)<($conv57|0); if (!($cmp58)) { break; } $43 = $psRangeDec$addr; $44 = $psDec$addr; $psNLSF_CB61 = ((($44)) + 2732|0); $45 = HEAP32[$psNLSF_CB61>>2]|0; $ec_iCDF = ((($45)) + 28|0); $46 = HEAP32[$ec_iCDF>>2]|0; $47 = $i; $arrayidx62 = (($ec_ix) + ($47<<1)|0); $48 = HEAP16[$arrayidx62>>1]|0; $idxprom63 = $48 << 16 >> 16; $arrayidx64 = (($46) + ($idxprom63)|0); $call65 = (_ec_dec_icdf($43,$arrayidx64,8)|0); $Ix = $call65; $49 = $Ix; $cmp66 = ($49|0)==(0); if ($cmp66) { $50 = $psRangeDec$addr; $call69 = (_ec_dec_icdf($50,32855,8)|0); $51 = $Ix; $sub = (($51) - ($call69))|0; $Ix = $sub; } else { $52 = $Ix; $cmp71 = ($52|0)==(8); if ($cmp71) { $53 = $psRangeDec$addr; $call74 = (_ec_dec_icdf($53,32855,8)|0); $54 = $Ix; $add75 = (($54) + ($call74))|0; $Ix = $add75; } } $55 = $Ix; $sub78 = (($55) - 4)|0; $conv79 = $sub78&255; $56 = $psDec$addr; $indices80 = ((($56)) + 2736|0); $NLSFIndices81 = ((($indices80)) + 8|0); $57 = $i; $add82 = (($57) + 1)|0; $arrayidx83 = (($NLSFIndices81) + ($add82)|0); HEAP8[$arrayidx83>>0] = $conv79; $58 = $i; $inc85 = (($58) + 1)|0; $i = $inc85; } $59 = $psDec$addr; $nb_subfr87 = ((($59)) + 2324|0); $60 = HEAP32[$nb_subfr87>>2]|0; $cmp88 = ($60|0)==(4); if ($cmp88) { $61 = $psRangeDec$addr; $call91 = (_ec_dec_icdf($61,32824,8)|0); $conv92 = $call91&255; $62 = $psDec$addr; $$sink = $conv92;$$sink1 = $62; } else { $63 = $psDec$addr; $$sink = 4;$$sink1 = $63; } $indices95 = ((($$sink1)) + 2736|0); $NLSFInterpCoef_Q296 = ((($indices95)) + 31|0); HEAP8[$NLSFInterpCoef_Q296>>0] = $$sink; $64 = $psDec$addr; $indices98 = ((($64)) + 2736|0); $signalType99 = ((($indices98)) + 29|0); $65 = HEAP8[$signalType99>>0]|0; $conv100 = $65 << 24 >> 24; $cmp101 = ($conv100|0)==(2); if (!($cmp101)) { $109 = $psDec$addr; $indices177 = ((($109)) + 2736|0); $signalType178 = ((($indices177)) + 29|0); $110 = HEAP8[$signalType178>>0]|0; $conv179 = $110 << 24 >> 24; $111 = $psDec$addr; $ec_prevSignalType180 = ((($111)) + 2396|0); HEAP32[$ec_prevSignalType180>>2] = $conv179; $112 = $psRangeDec$addr; $call181 = (_ec_dec_icdf($112,32832,8)|0); $conv182 = $call181&255; $113 = $psDec$addr; $indices183 = ((($113)) + 2736|0); $Seed = ((($indices183)) + 34|0); HEAP8[$Seed>>0] = $conv182; STACKTOP = sp;return; } $decode_absolute_lagIndex = 1; $66 = $condCoding$addr; $cmp104 = ($66|0)==(2); if ($cmp104) { $67 = $psDec$addr; $ec_prevSignalType = ((($67)) + 2396|0); $68 = HEAP32[$ec_prevSignalType>>2]|0; $cmp106 = ($68|0)==(2); if ($cmp106) { $69 = $psRangeDec$addr; $call109 = (_ec_dec_icdf($69,32894,8)|0); $conv110 = $call109&65535; $conv111 = $conv110 << 16 >> 16; $delta_lagIndex = $conv111; $70 = $delta_lagIndex; $cmp112 = ($70|0)>(0); if ($cmp112) { $71 = $delta_lagIndex; $sub115 = (($71) - 9)|0; $delta_lagIndex = $sub115; $72 = $psDec$addr; $ec_prevLagIndex = ((($72)) + 2400|0); $73 = HEAP16[$ec_prevLagIndex>>1]|0; $conv116 = $73 << 16 >> 16; $74 = $delta_lagIndex; $add117 = (($conv116) + ($74))|0; $conv118 = $add117&65535; $75 = $psDec$addr; $indices119 = ((($75)) + 2736|0); $lagIndex = ((($indices119)) + 26|0); HEAP16[$lagIndex>>1] = $conv118; $decode_absolute_lagIndex = 0; } } } $76 = $decode_absolute_lagIndex; $tobool122 = ($76|0)!=(0); if ($tobool122) { $77 = $psRangeDec$addr; $call124 = (_ec_dec_icdf($77,32862,8)|0); $conv125 = $call124&65535; $conv126 = $conv125 << 16 >> 16; $78 = $psDec$addr; $fs_kHz = ((($78)) + 2316|0); $79 = HEAP32[$fs_kHz>>2]|0; $shr127 = $79 >> 1; $mul128 = Math_imul($conv126, $shr127)|0; $conv129 = $mul128&65535; $80 = $psDec$addr; $indices130 = ((($80)) + 2736|0); $lagIndex131 = ((($indices130)) + 26|0); HEAP16[$lagIndex131>>1] = $conv129; $81 = $psRangeDec$addr; $82 = $psDec$addr; $pitch_lag_low_bits_iCDF = ((($82)) + 2380|0); $83 = HEAP32[$pitch_lag_low_bits_iCDF>>2]|0; $call132 = (_ec_dec_icdf($81,$83,8)|0); $conv133 = $call132&65535; $conv134 = $conv133 << 16 >> 16; $84 = $psDec$addr; $indices135 = ((($84)) + 2736|0); $lagIndex136 = ((($indices135)) + 26|0); $85 = HEAP16[$lagIndex136>>1]|0; $conv137 = $85 << 16 >> 16; $add138 = (($conv137) + ($conv134))|0; $conv139 = $add138&65535; HEAP16[$lagIndex136>>1] = $conv139; } $86 = $psDec$addr; $indices141 = ((($86)) + 2736|0); $lagIndex142 = ((($indices141)) + 26|0); $87 = HEAP16[$lagIndex142>>1]|0; $88 = $psDec$addr; $ec_prevLagIndex143 = ((($88)) + 2400|0); HEAP16[$ec_prevLagIndex143>>1] = $87; $89 = $psRangeDec$addr; $90 = $psDec$addr; $pitch_contour_iCDF = ((($90)) + 2384|0); $91 = HEAP32[$pitch_contour_iCDF>>2]|0; $call144 = (_ec_dec_icdf($89,$91,8)|0); $conv145 = $call144&255; $92 = $psDec$addr; $indices146 = ((($92)) + 2736|0); $contourIndex = ((($indices146)) + 28|0); HEAP8[$contourIndex>>0] = $conv145; $93 = $psRangeDec$addr; $call147 = (_ec_dec_icdf($93,32322,8)|0); $conv148 = $call147&255; $94 = $psDec$addr; $indices149 = ((($94)) + 2736|0); $PERIndex = ((($indices149)) + 32|0); HEAP8[$PERIndex>>0] = $conv148; $k = 0; while(1) { $95 = $k; $96 = $psDec$addr; $nb_subfr151 = ((($96)) + 2324|0); $97 = HEAP32[$nb_subfr151>>2]|0; $cmp152 = ($95|0)<($97|0); if (!($cmp152)) { break; } $98 = $psRangeDec$addr; $99 = $psDec$addr; $indices155 = ((($99)) + 2736|0); $PERIndex156 = ((($indices155)) + 32|0); $100 = HEAP8[$PERIndex156>>0]|0; $idxprom157 = $100 << 24 >> 24; $arrayidx158 = (15136 + ($idxprom157<<2)|0); $101 = HEAP32[$arrayidx158>>2]|0; $call159 = (_ec_dec_icdf($98,$101,8)|0); $conv160 = $call159&255; $102 = $psDec$addr; $indices161 = ((($102)) + 2736|0); $LTPIndex = ((($indices161)) + 4|0); $103 = $k; $arrayidx162 = (($LTPIndex) + ($103)|0); HEAP8[$arrayidx162>>0] = $conv160; $104 = $k; $inc164 = (($104) + 1)|0; $k = $inc164; } $105 = $condCoding$addr; $cmp166 = ($105|0)==(0); if ($cmp166) { $106 = $psRangeDec$addr; $call169 = (_ec_dec_icdf($106,32815,8)|0); $conv170 = $call169&255; $107 = $psDec$addr; $$sink2 = $conv170;$$sink3 = $107; } else { $108 = $psDec$addr; $$sink2 = 0;$$sink3 = $108; } $indices173 = ((($$sink3)) + 2736|0); $LTP_scaleIndex174 = ((($indices173)) + 33|0); HEAP8[$LTP_scaleIndex174>>0] = $$sink2; $109 = $psDec$addr; $indices177 = ((($109)) + 2736|0); $signalType178 = ((($indices177)) + 29|0); $110 = HEAP8[$signalType178>>0]|0; $conv179 = $110 << 24 >> 24; $111 = $psDec$addr; $ec_prevSignalType180 = ((($111)) + 2396|0); HEAP32[$ec_prevSignalType180>>2] = $conv179; $112 = $psRangeDec$addr; $call181 = (_ec_dec_icdf($112,32832,8)|0); $conv182 = $call181&255; $113 = $psDec$addr; $indices183 = ((($113)) + 2736|0); $Seed = ((($indices183)) + 34|0); HEAP8[$Seed>>0] = $conv182; STACKTOP = sp;return; } function _silk_decode_pulses($psRangeDec,$pulses,$signalType,$quantOffsetType,$frame_length) { $psRangeDec = $psRangeDec|0; $pulses = $pulses|0; $signalType = $signalType|0; $quantOffsetType = $quantOffsetType|0; $frame_length = $frame_length|0; var $$sink = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $7 = 0; var $8 = 0, $9 = 0, $RateLevelIndex = 0, $abs_q = 0, $add = 0, $add$ptr = 0, $arrayidx = 0, $arrayidx10 = 0, $arrayidx12 = 0, $arrayidx15 = 0, $arrayidx2 = 0, $arrayidx21 = 0, $arrayidx28 = 0, $arrayidx29 = 0, $arrayidx42 = 0, $arrayidx46 = 0, $arrayidx5 = 0, $arrayidx50 = 0, $arrayidx55 = 0, $arrayidx66 = 0; var $arrayidx71 = 0, $arrayidx8 = 0, $call = 0, $call14 = 0, $call14$sink = 0, $call6 = 0, $call61 = 0, $cdf_ptr = 0, $cmp = 0, $cmp13 = 0, $cmp18 = 0, $cmp22 = 0, $cmp39 = 0, $cmp4 = 0, $cmp43 = 0, $cmp52 = 0, $cmp58 = 0, $cmp9 = 0, $conv = 0, $conv25 = 0; var $conv26 = 0, $conv47 = 0, $conv48 = 0, $conv56 = 0, $conv65 = 0, $frame_length$addr = 0, $i = 0, $inc = 0, $inc11 = 0, $inc16 = 0, $inc36 = 0, $inc63 = 0, $inc68 = 0, $inc74 = 0, $iter = 0, $j = 0, $k = 0, $mul = 0, $mul27 = 0, $mul49 = 0; var $nLS = 0, $nLshifts = 0, $or = 0, $psRangeDec$addr = 0, $pulses$addr = 0, $pulses_ptr = 0, $quantOffsetType$addr = 0, $shl = 0, $shl70 = 0, $shr = 0, $shr1 = 0, $signalType$addr = 0, $sum_pulses = 0, dest = 0, label = 0, sp = 0, stop = 0; sp = STACKTOP; STACKTOP = STACKTOP + 224|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(224|0); $sum_pulses = sp + 88|0; $nLshifts = sp + 8|0; $psRangeDec$addr = $psRangeDec; $pulses$addr = $pulses; $signalType$addr = $signalType; $quantOffsetType$addr = $quantOffsetType; $frame_length$addr = $frame_length; $0 = $psRangeDec$addr; $1 = $signalType$addr; $shr = $1 >> 1; $arrayidx = (33321 + (($shr*9)|0)|0); $call = (_ec_dec_icdf($0,$arrayidx,8)|0); $RateLevelIndex = $call; $2 = $frame_length$addr; $shr1 = $2 >> 4; $iter = $shr1; $3 = $iter; $mul = $3<<4; $4 = $frame_length$addr; $cmp = ($mul|0)<($4|0); if ($cmp) { $5 = $iter; $inc = (($5) + 1)|0; $iter = $inc; } $6 = $RateLevelIndex; $arrayidx2 = (32979 + (($6*18)|0)|0); $cdf_ptr = $arrayidx2; $i = 0; while(1) { $7 = $i; $8 = $iter; $cmp4 = ($7|0)<($8|0); if (!($cmp4)) { break; } $9 = $i; $arrayidx5 = (($nLshifts) + ($9<<2)|0); HEAP32[$arrayidx5>>2] = 0; $10 = $psRangeDec$addr; $11 = $cdf_ptr; $call6 = (_ec_dec_icdf($10,$11,8)|0); $12 = $i; $$sink = $12;$call14$sink = $call6; while(1) { $arrayidx15 = (($sum_pulses) + ($$sink<<2)|0); HEAP32[$arrayidx15>>2] = $call14$sink; $13 = $i; $arrayidx8 = (($sum_pulses) + ($13<<2)|0); $14 = HEAP32[$arrayidx8>>2]|0; $cmp9 = ($14|0)==(17); $15 = $i; if (!($cmp9)) { break; } $arrayidx10 = (($nLshifts) + ($15<<2)|0); $16 = HEAP32[$arrayidx10>>2]|0; $inc11 = (($16) + 1)|0; HEAP32[$arrayidx10>>2] = $inc11; $17 = $psRangeDec$addr; $18 = $i; $arrayidx12 = (($nLshifts) + ($18<<2)|0); $19 = HEAP32[$arrayidx12>>2]|0; $cmp13 = ($19|0)==(10); $conv = $cmp13&1; $add$ptr = ((33141) + ($conv)|0); $call14 = (_ec_dec_icdf($17,$add$ptr,8)|0); $20 = $i; $$sink = $20;$call14$sink = $call14; } $inc16 = (($15) + 1)|0; $i = $inc16; } $i = 0; while(1) { $21 = $i; $22 = $iter; $cmp18 = ($21|0)<($22|0); if (!($cmp18)) { break; } $23 = $i; $arrayidx21 = (($sum_pulses) + ($23<<2)|0); $24 = HEAP32[$arrayidx21>>2]|0; $cmp22 = ($24|0)>(0); $25 = $pulses$addr; $26 = $i; $conv25 = $26&65535; $conv26 = $conv25 << 16 >> 16; $mul27 = $conv26<<4; $arrayidx28 = (($25) + ($mul27<<1)|0); if ($cmp22) { $27 = $psRangeDec$addr; $28 = $i; $arrayidx29 = (($sum_pulses) + ($28<<2)|0); $29 = HEAP32[$arrayidx29>>2]|0; _silk_shell_decoder($arrayidx28,$27,$29); } else { dest=$arrayidx28; stop=dest+32|0; do { HEAP16[dest>>1]=0|0; dest=dest+2|0; } while ((dest|0) < (stop|0)); } $30 = $i; $inc36 = (($30) + 1)|0; $i = $inc36; } $i = 0; while(1) { $31 = $i; $32 = $iter; $cmp39 = ($31|0)<($32|0); if (!($cmp39)) { break; } $33 = $i; $arrayidx42 = (($nLshifts) + ($33<<2)|0); $34 = HEAP32[$arrayidx42>>2]|0; $cmp43 = ($34|0)>(0); if ($cmp43) { $35 = $i; $arrayidx46 = (($nLshifts) + ($35<<2)|0); $36 = HEAP32[$arrayidx46>>2]|0; $nLS = $36; $37 = $pulses$addr; $38 = $i; $conv47 = $38&65535; $conv48 = $conv47 << 16 >> 16; $mul49 = $conv48<<4; $arrayidx50 = (($37) + ($mul49<<1)|0); $pulses_ptr = $arrayidx50; $k = 0; while(1) { $39 = $k; $cmp52 = ($39|0)<(16); if (!($cmp52)) { break; } $40 = $pulses_ptr; $41 = $k; $arrayidx55 = (($40) + ($41<<1)|0); $42 = HEAP16[$arrayidx55>>1]|0; $conv56 = $42 << 16 >> 16; $abs_q = $conv56; $j = 0; while(1) { $43 = $j; $44 = $nLS; $cmp58 = ($43|0)<($44|0); $45 = $abs_q; if (!($cmp58)) { break; } $shl = $45 << 1; $abs_q = $shl; $46 = $psRangeDec$addr; $call61 = (_ec_dec_icdf($46,32813,8)|0); $47 = $abs_q; $add = (($47) + ($call61))|0; $abs_q = $add; $48 = $j; $inc63 = (($48) + 1)|0; $j = $inc63; } $conv65 = $45&65535; $49 = $pulses_ptr; $50 = $k; $arrayidx66 = (($49) + ($50<<1)|0); HEAP16[$arrayidx66>>1] = $conv65; $51 = $k; $inc68 = (($51) + 1)|0; $k = $inc68; } $52 = $nLS; $shl70 = $52 << 5; $53 = $i; $arrayidx71 = (($sum_pulses) + ($53<<2)|0); $54 = HEAP32[$arrayidx71>>2]|0; $or = $54 | $shl70; HEAP32[$arrayidx71>>2] = $or; } $55 = $i; $inc74 = (($55) + 1)|0; $i = $inc74; } $56 = $psRangeDec$addr; $57 = $pulses$addr; $58 = $frame_length$addr; $59 = $signalType$addr; $60 = $quantOffsetType$addr; _silk_decode_signs($56,$57,$58,$59,$60,$sum_pulses); STACKTOP = sp;return; } function _silk_decoder_set_fs($psDec,$fs_kHz,$fs_API_Hz) { $psDec = $psDec|0; $fs_kHz = $fs_kHz|0; $fs_API_Hz = $fs_API_Hz|0; var $$sink = 0, $$sink1 = 0, $$sink1$sink = 0, $$sink2 = 0, $$sink3 = 0, $$sink4 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0; var $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0; var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $6 = 0, $7 = 0, $8 = 0; var $9 = 0, $LPC_order = 0, $LastGainIndex = 0, $add = 0, $call = 0, $cmp = 0, $cmp10 = 0, $cmp17 = 0, $cmp21 = 0, $cmp24 = 0, $cmp28 = 0, $cmp44 = 0, $cmp50 = 0, $cmp53 = 0, $cmp60 = 0, $cmp64 = 0, $cmp69 = 0, $conv = 0, $conv1 = 0, $conv12 = 0; var $conv13 = 0, $conv2 = 0, $conv3 = 0, $conv47 = 0, $conv48 = 0, $conv5 = 0, $conv6 = 0, $first_frame_after_reset = 0, $frame_length = 0, $frame_length20 = 0, $frame_length80 = 0, $fs_API_Hz$addr = 0, $fs_API_hz = 0, $fs_API_hz15 = 0, $fs_kHz$addr = 0, $fs_kHz16 = 0, $fs_kHz43 = 0, $fs_kHz79 = 0, $fs_kHz8 = 0, $lagPrev = 0; var $ltp_mem_length = 0, $mul = 0, $mul14 = 0, $mul49 = 0, $mul7 = 0, $nb_subfr = 0, $nb_subfr27 = 0, $or$cond = 0, $outBuf = 0, $pitch_contour_iCDF = 0, $pitch_lag_low_bits_iCDF67 = 0, $prevSignalType = 0, $psDec$addr = 0, $psNLSF_CB58 = 0, $resampler_state = 0, $ret = 0, $sLPC_Q14_buf = 0, $silk_NLSF_CB_WB$sink = 0, $subfr_length = 0, $subfr_length4 = 0; var dest = 0, label = 0, sp = 0, stop = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $psDec$addr = $psDec; $fs_kHz$addr = $fs_kHz; $fs_API_Hz$addr = $fs_API_Hz; $ret = 0; $0 = $fs_kHz$addr; $conv = $0&65535; $conv1 = $conv << 16 >> 16; $mul = ($conv1*5)|0; $1 = $psDec$addr; $subfr_length = ((($1)) + 2332|0); HEAP32[$subfr_length>>2] = $mul; $2 = $psDec$addr; $nb_subfr = ((($2)) + 2324|0); $3 = HEAP32[$nb_subfr>>2]|0; $conv2 = $3&65535; $conv3 = $conv2 << 16 >> 16; $4 = $psDec$addr; $subfr_length4 = ((($4)) + 2332|0); $5 = HEAP32[$subfr_length4>>2]|0; $conv5 = $5&65535; $conv6 = $conv5 << 16 >> 16; $mul7 = Math_imul($conv3, $conv6)|0; $frame_length = $mul7; $6 = $psDec$addr; $fs_kHz8 = ((($6)) + 2316|0); $7 = HEAP32[$fs_kHz8>>2]|0; $8 = $fs_kHz$addr; $cmp = ($7|0)!=($8|0); if ($cmp) { label = 3; } else { $9 = $psDec$addr; $fs_API_hz = ((($9)) + 2320|0); $10 = HEAP32[$fs_API_hz>>2]|0; $11 = $fs_API_Hz$addr; $cmp10 = ($10|0)!=($11|0); if ($cmp10) { label = 3; } } if ((label|0) == 3) { $12 = $psDec$addr; $resampler_state = ((($12)) + 2432|0); $13 = $fs_kHz$addr; $conv12 = $13&65535; $conv13 = $conv12 << 16 >> 16; $mul14 = ($conv13*1000)|0; $14 = $fs_API_Hz$addr; $call = (_silk_resampler_init($resampler_state,$mul14,$14,0)|0); $15 = $ret; $add = (($15) + ($call))|0; $ret = $add; $16 = $fs_API_Hz$addr; $17 = $psDec$addr; $fs_API_hz15 = ((($17)) + 2320|0); HEAP32[$fs_API_hz15>>2] = $16; } $18 = $psDec$addr; $fs_kHz16 = ((($18)) + 2316|0); $19 = HEAP32[$fs_kHz16>>2]|0; $20 = $fs_kHz$addr; $cmp17 = ($19|0)!=($20|0); if (!($cmp17)) { $21 = $frame_length; $22 = $psDec$addr; $frame_length20 = ((($22)) + 2328|0); $23 = HEAP32[$frame_length20>>2]|0; $cmp21 = ($21|0)!=($23|0); if (!($cmp21)) { $54 = $ret; STACKTOP = sp;return ($54|0); } } $24 = $fs_kHz$addr; $cmp24 = ($24|0)==(8); $25 = $psDec$addr; $nb_subfr27 = ((($25)) + 2324|0); $26 = HEAP32[$nb_subfr27>>2]|0; $cmp28 = ($26|0)==(4); $27 = $psDec$addr; $pitch_contour_iCDF = ((($27)) + 2384|0); $$sink1 = $cmp28 ? 32915 : 32960; $$sink = $cmp28 ? 32949 : 32972; $$sink1$sink = $cmp24 ? $$sink : $$sink1; HEAP32[$pitch_contour_iCDF>>2] = $$sink1$sink; $28 = $psDec$addr; $fs_kHz43 = ((($28)) + 2316|0); $29 = HEAP32[$fs_kHz43>>2]|0; $30 = $fs_kHz$addr; $cmp44 = ($29|0)!=($30|0); if ($cmp44) { $31 = $fs_kHz$addr; $conv47 = $31&65535; $conv48 = $conv47 << 16 >> 16; $mul49 = ($conv48*20)|0; $32 = $psDec$addr; $ltp_mem_length = ((($32)) + 2336|0); HEAP32[$ltp_mem_length>>2] = $mul49; $33 = $fs_kHz$addr; $cmp50 = ($33|0)==(8); $34 = $fs_kHz$addr; $cmp53 = ($34|0)==(12); $or$cond = $cmp50 | $cmp53; $35 = $psDec$addr; $LPC_order = ((($35)) + 2340|0); if ($or$cond) { HEAP32[$LPC_order>>2] = 10; $36 = $psDec$addr; $$sink2 = $36;$silk_NLSF_CB_WB$sink = 20724; } else { HEAP32[$LPC_order>>2] = 16; $37 = $psDec$addr; $$sink2 = $37;$silk_NLSF_CB_WB$sink = 20764; } $psNLSF_CB58 = ((($$sink2)) + 2732|0); HEAP32[$psNLSF_CB58>>2] = $silk_NLSF_CB_WB$sink; $38 = $fs_kHz$addr; $cmp60 = ($38|0)==(16); do { if ($cmp60) { $39 = $psDec$addr; $$sink3 = 32847;$$sink4 = $39; label = 16; } else { $40 = $fs_kHz$addr; $cmp64 = ($40|0)==(12); if ($cmp64) { $41 = $psDec$addr; $$sink3 = 32841;$$sink4 = $41; label = 16; break; } $42 = $fs_kHz$addr; $cmp69 = ($42|0)==(8); if ($cmp69) { $43 = $psDec$addr; $$sink3 = 32832;$$sink4 = $43; label = 16; } } } while(0); if ((label|0) == 16) { $pitch_lag_low_bits_iCDF67 = ((($$sink4)) + 2380|0); HEAP32[$pitch_lag_low_bits_iCDF67>>2] = $$sink3; } $44 = $psDec$addr; $first_frame_after_reset = ((($44)) + 2376|0); HEAP32[$first_frame_after_reset>>2] = 1; $45 = $psDec$addr; $lagPrev = ((($45)) + 2308|0); HEAP32[$lagPrev>>2] = 100; $46 = $psDec$addr; $LastGainIndex = ((($46)) + 2312|0); HEAP8[$LastGainIndex>>0] = 10; $47 = $psDec$addr; $prevSignalType = ((($47)) + 4164|0); HEAP32[$prevSignalType>>2] = 0; $48 = $psDec$addr; $outBuf = ((($48)) + 1348|0); _memset(($outBuf|0),0,960)|0; $49 = $psDec$addr; $sLPC_Q14_buf = ((($49)) + 1284|0); dest=$sLPC_Q14_buf; stop=dest+64|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); } $50 = $fs_kHz$addr; $51 = $psDec$addr; $fs_kHz79 = ((($51)) + 2316|0); HEAP32[$fs_kHz79>>2] = $50; $52 = $frame_length; $53 = $psDec$addr; $frame_length80 = ((($53)) + 2328|0); HEAP32[$frame_length80>>2] = $52; $54 = $ret; STACKTOP = sp;return ($54|0); } function _silk_gains_quant($ind,$gain_Q16,$prev_ind,$conditional,$nb_subfr) { $ind = $ind|0; $gain_Q16 = $gain_Q16|0; $prev_ind = $prev_ind|0; $conditional = $conditional|0; $nb_subfr = $nb_subfr|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $add = 0, $add108 = 0; var $add110 = 0, $add143 = 0, $add152 = 0, $add167 = 0, $add168 = 0, $add38 = 0, $add45 = 0, $add50 = 0, $add74 = 0, $add79 = 0, $add99 = 0, $arrayidx = 0, $arrayidx10 = 0, $arrayidx100 = 0, $arrayidx105 = 0, $arrayidx112 = 0, $arrayidx114 = 0, $arrayidx120 = 0, $arrayidx126 = 0, $arrayidx133 = 0; var $arrayidx134 = 0, $arrayidx139 = 0, $arrayidx15 = 0, $arrayidx155 = 0, $arrayidx16 = 0, $arrayidx171 = 0, $arrayidx2 = 0, $arrayidx20 = 0, $arrayidx26 = 0, $arrayidx31 = 0, $arrayidx42 = 0, $arrayidx52 = 0, $arrayidx58 = 0, $arrayidx71 = 0, $arrayidx81 = 0, $arrayidx9 = 0, $arrayidx90 = 0, $arrayidx91 = 0, $arrayidx92 = 0, $arrayidx97 = 0; var $call = 0, $call146 = 0, $call169 = 0, $call170 = 0, $call3 = 0, $cmp = 0, $cmp102 = 0, $cmp116 = 0, $cmp122 = 0, $cmp13 = 0, $cmp136 = 0, $cmp18 = 0, $cmp22 = 0, $cmp32 = 0, $cmp34 = 0, $cmp39 = 0, $cmp46 = 0, $cmp54 = 0, $cmp67 = 0, $cmp75 = 0; var $cond131 = 0, $cond29 = 0, $cond88 = 0, $conditional$addr = 0, $conv = 0, $conv1 = 0, $conv101 = 0, $conv106 = 0, $conv11 = 0, $conv111 = 0, $conv115 = 0, $conv12 = 0, $conv121 = 0, $conv127 = 0, $conv132 = 0, $conv135 = 0, $conv140 = 0, $conv142 = 0, $conv144 = 0, $conv145 = 0; var $conv147 = 0, $conv151 = 0, $conv153 = 0, $conv156 = 0, $conv158 = 0, $conv160 = 0, $conv161 = 0, $conv163 = 0, $conv164 = 0, $conv17 = 0, $conv21 = 0, $conv27 = 0, $conv30 = 0, $conv37 = 0, $conv43 = 0, $conv44 = 0, $conv49 = 0, $conv5 = 0, $conv53 = 0, $conv59 = 0; var $conv6 = 0, $conv72 = 0, $conv73 = 0, $conv78 = 0, $conv8 = 0, $conv82 = 0, $conv89 = 0, $conv93 = 0, $conv94 = 0, $conv96 = 0, $conv98 = 0, $double_step_size_threshold = 0, $gain_Q16$addr = 0, $inc = 0, $inc172 = 0, $ind$addr = 0, $k = 0, $mul = 0, $mul162 = 0, $mul165 = 0; var $mul7 = 0, $nb_subfr$addr = 0, $or$cond = 0, $prev_ind$addr = 0, $shl = 0, $shr = 0, $shr109 = 0, $shr166 = 0, $sub = 0, $sub107 = 0, $sub141 = 0, $sub157 = 0, $sub4 = 0, $sub95 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $ind$addr = $ind; $gain_Q16$addr = $gain_Q16; $prev_ind$addr = $prev_ind; $conditional$addr = $conditional; $nb_subfr$addr = $nb_subfr; $k = 0; while(1) { $0 = $k; $1 = $nb_subfr$addr; $cmp = ($0|0)<($1|0); if (!($cmp)) { break; } $2 = $gain_Q16$addr; $3 = $k; $arrayidx = (($2) + ($3<<2)|0); $4 = HEAP32[$arrayidx>>2]|0; $call = (_silk_lin2log($4)|0); $sub = (($call) - 2090)|0; $conv = $sub&65535; $conv1 = $conv << 16 >> 16; $mul = 0; $5 = $gain_Q16$addr; $6 = $k; $arrayidx2 = (($5) + ($6<<2)|0); $7 = HEAP32[$arrayidx2>>2]|0; $call3 = (_silk_lin2log($7)|0); $sub4 = (($call3) - 2090)|0; $conv5 = $sub4&65535; $conv6 = $conv5 << 16 >> 16; $mul7 = ($conv6*2251)|0; $shr = $mul7 >> 16; $add = (($mul) + ($shr))|0; $conv8 = $add&255; $8 = $ind$addr; $9 = $k; $arrayidx9 = (($8) + ($9)|0); HEAP8[$arrayidx9>>0] = $conv8; $10 = $ind$addr; $11 = $k; $arrayidx10 = (($10) + ($11)|0); $12 = HEAP8[$arrayidx10>>0]|0; $conv11 = $12 << 24 >> 24; $13 = $prev_ind$addr; $14 = HEAP8[$13>>0]|0; $conv12 = $14 << 24 >> 24; $cmp13 = ($conv11|0)<($conv12|0); if ($cmp13) { $15 = $ind$addr; $16 = $k; $arrayidx15 = (($15) + ($16)|0); $17 = HEAP8[$arrayidx15>>0]|0; $inc = (($17) + 1)<<24>>24; HEAP8[$arrayidx15>>0] = $inc; } $18 = $ind$addr; $19 = $k; $arrayidx16 = (($18) + ($19)|0); $20 = HEAP8[$arrayidx16>>0]|0; $conv17 = $20 << 24 >> 24; $cmp18 = ($conv17|0)>(63); if ($cmp18) { $cond29 = 63; } else { $21 = $ind$addr; $22 = $k; $arrayidx20 = (($21) + ($22)|0); $23 = HEAP8[$arrayidx20>>0]|0; $conv21 = $23 << 24 >> 24; $cmp22 = ($conv21|0)<(0); if ($cmp22) { $cond29 = 0; } else { $24 = $ind$addr; $25 = $k; $arrayidx26 = (($24) + ($25)|0); $26 = HEAP8[$arrayidx26>>0]|0; $conv27 = $26 << 24 >> 24; $cond29 = $conv27; } } $conv30 = $cond29&255; $27 = $ind$addr; $28 = $k; $arrayidx31 = (($27) + ($28)|0); HEAP8[$arrayidx31>>0] = $conv30; $29 = $k; $cmp32 = ($29|0)==(0); $30 = $conditional$addr; $cmp34 = ($30|0)==(0); $or$cond = $cmp32 & $cmp34; if ($or$cond) { $31 = $prev_ind$addr; $32 = HEAP8[$31>>0]|0; $conv37 = $32 << 24 >> 24; $add38 = (($conv37) + -4)|0; $cmp39 = ($add38|0)>(63); $33 = $ind$addr; $34 = $k; $arrayidx42 = (($33) + ($34)|0); $35 = HEAP8[$arrayidx42>>0]|0; $conv43 = $35 << 24 >> 24; do { if ($cmp39) { $36 = $prev_ind$addr; $37 = HEAP8[$36>>0]|0; $conv44 = $37 << 24 >> 24; $add45 = (($conv44) + -4)|0; $cmp46 = ($conv43|0)>($add45|0); if ($cmp46) { $38 = $prev_ind$addr; $39 = HEAP8[$38>>0]|0; $conv49 = $39 << 24 >> 24; $add50 = (($conv49) + -4)|0; $cond88 = $add50; break; } $40 = $ind$addr; $41 = $k; $arrayidx52 = (($40) + ($41)|0); $42 = HEAP8[$arrayidx52>>0]|0; $conv53 = $42 << 24 >> 24; $cmp54 = ($conv53|0)<(63); if ($cmp54) { $cond88 = 63; } else { $43 = $ind$addr; $44 = $k; $arrayidx58 = (($43) + ($44)|0); $45 = HEAP8[$arrayidx58>>0]|0; $conv59 = $45 << 24 >> 24; $cond88 = $conv59; } } else { $cmp67 = ($conv43|0)>(63); if ($cmp67) { $cond88 = 63; } else { $46 = $ind$addr; $47 = $k; $arrayidx71 = (($46) + ($47)|0); $48 = HEAP8[$arrayidx71>>0]|0; $conv72 = $48 << 24 >> 24; $49 = $prev_ind$addr; $50 = HEAP8[$49>>0]|0; $conv73 = $50 << 24 >> 24; $add74 = (($conv73) + -4)|0; $cmp75 = ($conv72|0)<($add74|0); if ($cmp75) { $51 = $prev_ind$addr; $52 = HEAP8[$51>>0]|0; $conv78 = $52 << 24 >> 24; $add79 = (($conv78) + -4)|0; $cond88 = $add79; break; } else { $53 = $ind$addr; $54 = $k; $arrayidx81 = (($53) + ($54)|0); $55 = HEAP8[$arrayidx81>>0]|0; $conv82 = $55 << 24 >> 24; $cond88 = $conv82; break; } } } } while(0); $conv89 = $cond88&255; $56 = $ind$addr; $57 = $k; $arrayidx90 = (($56) + ($57)|0); HEAP8[$arrayidx90>>0] = $conv89; $58 = $ind$addr; $59 = $k; $arrayidx91 = (($58) + ($59)|0); $60 = HEAP8[$arrayidx91>>0]|0; $61 = $prev_ind$addr; HEAP8[$61>>0] = $60; } else { $62 = $ind$addr; $63 = $k; $arrayidx92 = (($62) + ($63)|0); $64 = HEAP8[$arrayidx92>>0]|0; $conv93 = $64 << 24 >> 24; $65 = $prev_ind$addr; $66 = HEAP8[$65>>0]|0; $conv94 = $66 << 24 >> 24; $sub95 = (($conv93) - ($conv94))|0; $conv96 = $sub95&255; $67 = $ind$addr; $68 = $k; $arrayidx97 = (($67) + ($68)|0); HEAP8[$arrayidx97>>0] = $conv96; $69 = $prev_ind$addr; $70 = HEAP8[$69>>0]|0; $conv98 = $70 << 24 >> 24; $add99 = (8 + ($conv98))|0; $double_step_size_threshold = $add99; $71 = $ind$addr; $72 = $k; $arrayidx100 = (($71) + ($72)|0); $73 = HEAP8[$arrayidx100>>0]|0; $conv101 = $73 << 24 >> 24; $74 = $double_step_size_threshold; $cmp102 = ($conv101|0)>($74|0); if ($cmp102) { $75 = $double_step_size_threshold; $76 = $ind$addr; $77 = $k; $arrayidx105 = (($76) + ($77)|0); $78 = HEAP8[$arrayidx105>>0]|0; $conv106 = $78 << 24 >> 24; $79 = $double_step_size_threshold; $sub107 = (($conv106) - ($79))|0; $add108 = (($sub107) + 1)|0; $shr109 = $add108 >> 1; $add110 = (($75) + ($shr109))|0; $conv111 = $add110&255; $80 = $ind$addr; $81 = $k; $arrayidx112 = (($80) + ($81)|0); HEAP8[$arrayidx112>>0] = $conv111; } $82 = $ind$addr; $83 = $k; $arrayidx114 = (($82) + ($83)|0); $84 = HEAP8[$arrayidx114>>0]|0; $conv115 = $84 << 24 >> 24; $cmp116 = ($conv115|0)>(36); if ($cmp116) { $cond131 = 36; } else { $85 = $ind$addr; $86 = $k; $arrayidx120 = (($85) + ($86)|0); $87 = HEAP8[$arrayidx120>>0]|0; $conv121 = $87 << 24 >> 24; $cmp122 = ($conv121|0)<(-4); if ($cmp122) { $cond131 = -4; } else { $88 = $ind$addr; $89 = $k; $arrayidx126 = (($88) + ($89)|0); $90 = HEAP8[$arrayidx126>>0]|0; $conv127 = $90 << 24 >> 24; $cond131 = $conv127; } } $conv132 = $cond131&255; $91 = $ind$addr; $92 = $k; $arrayidx133 = (($91) + ($92)|0); HEAP8[$arrayidx133>>0] = $conv132; $93 = $ind$addr; $94 = $k; $arrayidx134 = (($93) + ($94)|0); $95 = HEAP8[$arrayidx134>>0]|0; $conv135 = $95 << 24 >> 24; $96 = $double_step_size_threshold; $cmp136 = ($conv135|0)>($96|0); $97 = $ind$addr; $98 = $k; $arrayidx139 = (($97) + ($98)|0); $99 = HEAP8[$arrayidx139>>0]|0; $conv140 = $99 << 24 >> 24; if ($cmp136) { $shl = $conv140 << 1; $100 = $double_step_size_threshold; $sub141 = (($shl) - ($100))|0; $101 = $prev_ind$addr; $102 = HEAP8[$101>>0]|0; $conv142 = $102 << 24 >> 24; $add143 = (($conv142) + ($sub141))|0; $conv144 = $add143&255; HEAP8[$101>>0] = $conv144; $103 = $prev_ind$addr; $104 = HEAP8[$103>>0]|0; $conv145 = $104 << 24 >> 24; $call146 = (_silk_min_int_408($conv145,63)|0); $conv147 = $call146&255; $105 = $prev_ind$addr; HEAP8[$105>>0] = $conv147; } else { $106 = $prev_ind$addr; $107 = HEAP8[$106>>0]|0; $conv151 = $107 << 24 >> 24; $add152 = (($conv151) + ($conv140))|0; $conv153 = $add152&255; HEAP8[$106>>0] = $conv153; } $108 = $ind$addr; $109 = $k; $arrayidx155 = (($108) + ($109)|0); $110 = HEAP8[$arrayidx155>>0]|0; $conv156 = $110 << 24 >> 24; $sub157 = (($conv156) - -4)|0; $conv158 = $sub157&255; HEAP8[$arrayidx155>>0] = $conv158; } $111 = $prev_ind$addr; $112 = HEAP8[$111>>0]|0; $conv160 = $112 << 24 >> 24; $conv161 = $conv160 << 16 >> 16; $mul162 = ($conv161*29)|0; $113 = $prev_ind$addr; $114 = HEAP8[$113>>0]|0; $conv163 = $114 << 24 >> 24; $conv164 = $conv163 << 16 >> 16; $mul165 = ($conv164*7281)|0; $shr166 = $mul165 >> 16; $add167 = (($mul162) + ($shr166))|0; $add168 = (($add167) + 2090)|0; $call169 = (_silk_min_32($add168,3967)|0); $call170 = (_silk_log2lin($call169)|0); $115 = $gain_Q16$addr; $116 = $k; $arrayidx171 = (($115) + ($116<<2)|0); HEAP32[$arrayidx171>>2] = $call170; $117 = $k; $inc172 = (($117) + 1)|0; $k = $inc172; } STACKTOP = sp;return; } function _silk_min_int_408($a,$b) { $a = $a|0; $b = $b|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $a$addr = 0, $b$addr = 0, $cmp = 0, $cond = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $a$addr = $a; $b$addr = $b; $0 = $a$addr; $1 = $b$addr; $cmp = ($0|0)<($1|0); $2 = $a$addr; $3 = $b$addr; $cond = $cmp ? $2 : $3; STACKTOP = sp;return ($cond|0); } function _silk_min_32($a,$b) { $a = $a|0; $b = $b|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $a$addr = 0, $b$addr = 0, $cmp = 0, $cond = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $a$addr = $a; $b$addr = $b; $0 = $a$addr; $1 = $b$addr; $cmp = ($0|0)<($1|0); $2 = $a$addr; $3 = $b$addr; $cond = $cmp ? $2 : $3; STACKTOP = sp;return ($cond|0); } function _silk_gains_dequant($gain_Q16,$ind,$prev_ind,$conditional,$nb_subfr) { $gain_Q16 = $gain_Q16|0; $ind = $ind|0; $prev_ind = $prev_ind|0; $conditional = $conditional|0; $nb_subfr = $nb_subfr|0; var $$sink1 = 0, $$sink3 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0; var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $add18 = 0, $add38 = 0, $add39 = 0, $add8 = 0; var $arrayidx = 0, $arrayidx42 = 0, $call = 0, $call40 = 0, $call41 = 0, $cmp = 0, $cmp1 = 0, $cmp2 = 0, $cmp22 = 0, $cmp25 = 0, $cmp9 = 0, $cond31 = 0, $conditional$addr = 0, $conv = 0, $conv17 = 0, $conv19 = 0, $conv21 = 0, $conv24 = 0, $conv29 = 0, $conv3 = 0; var $conv32 = 0, $conv33 = 0, $conv34 = 0, $conv35 = 0, $conv36 = 0, $conv4 = 0, $conv7 = 0, $double_step_size_threshold = 0, $gain_Q16$addr = 0, $inc = 0, $ind$addr = 0, $ind_tmp = 0, $k = 0, $mul = 0, $mul37 = 0, $nb_subfr$addr = 0, $or$cond = 0, $prev_ind$addr = 0, $shl = 0, $shr = 0; var $sub = 0, $sub12 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $gain_Q16$addr = $gain_Q16; $ind$addr = $ind; $prev_ind$addr = $prev_ind; $conditional$addr = $conditional; $nb_subfr$addr = $nb_subfr; $k = 0; while(1) { $0 = $k; $1 = $nb_subfr$addr; $cmp = ($0|0)<($1|0); if (!($cmp)) { break; } $2 = $k; $cmp1 = ($2|0)==(0); $3 = $conditional$addr; $cmp2 = ($3|0)==(0); $or$cond = $cmp1 & $cmp2; $4 = $ind$addr; $5 = $k; $arrayidx = (($4) + ($5)|0); $6 = HEAP8[$arrayidx>>0]|0; $conv = $6 << 24 >> 24; if ($or$cond) { $7 = $prev_ind$addr; $8 = HEAP8[$7>>0]|0; $conv3 = $8 << 24 >> 24; $sub = (($conv3) - 16)|0; $call = (_silk_max_int_411($conv,$sub)|0); $conv4 = $call&255; $9 = $prev_ind$addr; HEAP8[$9>>0] = $conv4; } else { $add = (($conv) + -4)|0; $ind_tmp = $add; $10 = $prev_ind$addr; $11 = HEAP8[$10>>0]|0; $conv7 = $11 << 24 >> 24; $add8 = (8 + ($conv7))|0; $double_step_size_threshold = $add8; $12 = $ind_tmp; $13 = $double_step_size_threshold; $cmp9 = ($12|0)>($13|0); $14 = $ind_tmp; if ($cmp9) { $shl = $14 << 1; $15 = $double_step_size_threshold; $sub12 = (($shl) - ($15))|0; $16 = $prev_ind$addr; $$sink1 = $sub12;$$sink3 = $16; } else { $17 = $prev_ind$addr; $$sink1 = $14;$$sink3 = $17; } $18 = HEAP8[$$sink3>>0]|0; $conv17 = $18 << 24 >> 24; $add18 = (($conv17) + ($$sink1))|0; $conv19 = $add18&255; HEAP8[$$sink3>>0] = $conv19; } $19 = $prev_ind$addr; $20 = HEAP8[$19>>0]|0; $conv21 = $20 << 24 >> 24; $cmp22 = ($conv21|0)>(63); if ($cmp22) { $cond31 = 63; } else { $21 = $prev_ind$addr; $22 = HEAP8[$21>>0]|0; $conv24 = $22 << 24 >> 24; $cmp25 = ($conv24|0)<(0); if ($cmp25) { $cond31 = 0; } else { $23 = $prev_ind$addr; $24 = HEAP8[$23>>0]|0; $conv29 = $24 << 24 >> 24; $cond31 = $conv29; } } $conv32 = $cond31&255; $25 = $prev_ind$addr; HEAP8[$25>>0] = $conv32; $26 = $prev_ind$addr; $27 = HEAP8[$26>>0]|0; $conv33 = $27 << 24 >> 24; $conv34 = $conv33 << 16 >> 16; $mul = ($conv34*29)|0; $28 = $prev_ind$addr; $29 = HEAP8[$28>>0]|0; $conv35 = $29 << 24 >> 24; $conv36 = $conv35 << 16 >> 16; $mul37 = ($conv36*7281)|0; $shr = $mul37 >> 16; $add38 = (($mul) + ($shr))|0; $add39 = (($add38) + 2090)|0; $call40 = (_silk_min_32($add39,3967)|0); $call41 = (_silk_log2lin($call40)|0); $30 = $gain_Q16$addr; $31 = $k; $arrayidx42 = (($30) + ($31<<2)|0); HEAP32[$arrayidx42>>2] = $call41; $32 = $k; $inc = (($32) + 1)|0; $k = $inc; } STACKTOP = sp;return; } function _silk_max_int_411($a,$b) { $a = $a|0; $b = $b|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $a$addr = 0, $b$addr = 0, $cmp = 0, $cond = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $a$addr = $a; $b$addr = $b; $0 = $a$addr; $1 = $b$addr; $cmp = ($0|0)>($1|0); $2 = $a$addr; $3 = $b$addr; $cond = $cmp ? $2 : $3; STACKTOP = sp;return ($cond|0); } function _silk_gains_ID($ind,$nb_subfr) { $ind = $ind|0; $nb_subfr = $nb_subfr|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $add = 0, $arrayidx = 0, $cmp = 0, $conv = 0, $gainsID = 0, $inc = 0, $ind$addr = 0, $k = 0, $nb_subfr$addr = 0, $shl = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $ind$addr = $ind; $nb_subfr$addr = $nb_subfr; $gainsID = 0; $k = 0; while(1) { $0 = $k; $1 = $nb_subfr$addr; $cmp = ($0|0)<($1|0); if (!($cmp)) { break; } $2 = $ind$addr; $3 = $k; $arrayidx = (($2) + ($3)|0); $4 = HEAP8[$arrayidx>>0]|0; $conv = $4 << 24 >> 24; $5 = $gainsID; $shl = $5 << 8; $add = (($conv) + ($shl))|0; $gainsID = $add; $6 = $k; $inc = (($6) + 1)|0; $k = $inc; } $7 = $gainsID; STACKTOP = sp;return ($7|0); } function _silk_LP_variable_cutoff($psLP,$frame,$frame_length) { $psLP = $psLP|0; $frame = $frame|0; $frame_length = $frame_length|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $A_Q28 = 0, $B_Q28 = 0, $add = 0, $add15 = 0, $add9 = 0, $cmp = 0, $cmp10 = 0, $cmp6 = 0, $cond17 = 0, $fac_Q16 = 0, $frame$addr = 0, $frame_length$addr = 0, $ind = 0, $mode = 0; var $mode14 = 0, $mode5 = 0, $mode8 = 0, $psLP$addr = 0, $shl = 0, $shl1 = 0, $shr = 0, $sub = 0, $sub2 = 0, $transition_frame_no = 0, $transition_frame_no13 = 0, $transition_frame_no18 = 0, $transition_frame_no4 = 0, $transition_frame_no7 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $B_Q28 = sp + 16|0; $A_Q28 = sp + 8|0; $psLP$addr = $psLP; $frame$addr = $frame; $frame_length$addr = $frame_length; $fac_Q16 = 0; $ind = 0; $0 = $psLP$addr; $mode = ((($0)) + 12|0); $1 = HEAP32[$mode>>2]|0; $cmp = ($1|0)!=(0); if (!($cmp)) { STACKTOP = sp;return; } $2 = $psLP$addr; $transition_frame_no = ((($2)) + 8|0); $3 = HEAP32[$transition_frame_no>>2]|0; $sub = (256 - ($3))|0; $shl = $sub << 10; $fac_Q16 = $shl; $4 = $fac_Q16; $shr = $4 >> 16; $ind = $shr; $5 = $ind; $shl1 = $5 << 16; $6 = $fac_Q16; $sub2 = (($6) - ($shl1))|0; $fac_Q16 = $sub2; $7 = $ind; $8 = $fac_Q16; _silk_LP_interpolate_filter_taps($B_Q28,$A_Q28,$7,$8); $9 = $psLP$addr; $transition_frame_no4 = ((($9)) + 8|0); $10 = HEAP32[$transition_frame_no4>>2]|0; $11 = $psLP$addr; $mode5 = ((($11)) + 12|0); $12 = HEAP32[$mode5>>2]|0; $add = (($10) + ($12))|0; $cmp6 = ($add|0)>(256); if ($cmp6) { $cond17 = 256; } else { $13 = $psLP$addr; $transition_frame_no7 = ((($13)) + 8|0); $14 = HEAP32[$transition_frame_no7>>2]|0; $15 = $psLP$addr; $mode8 = ((($15)) + 12|0); $16 = HEAP32[$mode8>>2]|0; $add9 = (($14) + ($16))|0; $cmp10 = ($add9|0)<(0); if ($cmp10) { $cond17 = 0; } else { $17 = $psLP$addr; $transition_frame_no13 = ((($17)) + 8|0); $18 = HEAP32[$transition_frame_no13>>2]|0; $19 = $psLP$addr; $mode14 = ((($19)) + 12|0); $20 = HEAP32[$mode14>>2]|0; $add15 = (($18) + ($20))|0; $cond17 = $add15; } } $21 = $psLP$addr; $transition_frame_no18 = ((($21)) + 8|0); HEAP32[$transition_frame_no18>>2] = $cond17; $22 = $frame$addr; $23 = $psLP$addr; $24 = $frame$addr; $25 = $frame_length$addr; _silk_biquad_alt_stride1($22,$B_Q28,$A_Q28,$23,$24,$25); STACKTOP = sp;return; } function _silk_LP_interpolate_filter_taps($B_Q28,$A_Q28,$ind,$fac_Q16) { $B_Q28 = $B_Q28|0; $A_Q28 = $A_Q28|0; $ind = $ind|0; $fac_Q16 = $fac_Q16|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $A_Q28$addr = 0, $B_Q28$addr = 0, $add = 0, $add101 = 0, $add112 = 0, $add12 = 0, $add124 = 0; var $add125 = 0, $add22 = 0, $add23 = 0, $add31 = 0, $add41 = 0, $add52 = 0, $add53 = 0, $add62 = 0, $add65 = 0, $add76 = 0, $add88 = 0, $add89 = 0, $add98 = 0, $and = 0, $and118 = 0, $and47 = 0, $and82 = 0, $arrayidx = 0, $arrayidx10 = 0, $arrayidx100 = 0; var $arrayidx102 = 0, $arrayidx103 = 0, $arrayidx104 = 0, $arrayidx105 = 0, $arrayidx113 = 0, $arrayidx114 = 0, $arrayidx115 = 0, $arrayidx116 = 0, $arrayidx126 = 0, $arrayidx13 = 0, $arrayidx131 = 0, $arrayidx132 = 0, $arrayidx14 = 0, $arrayidx15 = 0, $arrayidx16 = 0, $arrayidx24 = 0, $arrayidx29 = 0, $arrayidx30 = 0, $arrayidx32 = 0, $arrayidx33 = 0; var $arrayidx34 = 0, $arrayidx35 = 0, $arrayidx42 = 0, $arrayidx43 = 0, $arrayidx44 = 0, $arrayidx45 = 0, $arrayidx54 = 0, $arrayidx6 = 0, $arrayidx63 = 0, $arrayidx64 = 0, $arrayidx66 = 0, $arrayidx67 = 0, $arrayidx68 = 0, $arrayidx69 = 0, $arrayidx7 = 0, $arrayidx77 = 0, $arrayidx78 = 0, $arrayidx79 = 0, $arrayidx8 = 0, $arrayidx80 = 0; var $arrayidx9 = 0, $arrayidx90 = 0, $arrayidx99 = 0, $cmp = 0, $cmp1 = 0, $cmp26 = 0, $cmp3 = 0, $cmp5 = 0, $cmp59 = 0, $cmp95 = 0, $conv = 0, $conv109 = 0, $conv11 = 0, $conv110 = 0, $conv120 = 0, $conv121 = 0, $conv18 = 0, $conv19 = 0, $conv38 = 0, $conv39 = 0; var $conv48 = 0, $conv49 = 0, $conv73 = 0, $conv74 = 0, $conv84 = 0, $conv85 = 0, $fac_Q16$addr = 0, $inc = 0, $inc128 = 0, $inc56 = 0, $inc92 = 0, $ind$addr = 0, $mul = 0, $mul111 = 0, $mul122 = 0, $mul20 = 0, $mul40 = 0, $mul50 = 0, $mul75 = 0, $mul86 = 0; var $na = 0, $nb = 0, $shr = 0, $shr107 = 0, $shr123 = 0, $shr21 = 0, $shr37 = 0, $shr51 = 0, $shr71 = 0, $shr87 = 0, $sub = 0, $sub106 = 0, $sub108 = 0, $sub117 = 0, $sub119 = 0, $sub17 = 0, $sub36 = 0, $sub46 = 0, $sub70 = 0, $sub72 = 0; var $sub81 = 0, $sub83 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $B_Q28$addr = $B_Q28; $A_Q28$addr = $A_Q28; $ind$addr = $ind; $fac_Q16$addr = $fac_Q16; $0 = $ind$addr; $cmp = ($0|0)<(4); if (!($cmp)) { $91 = $B_Q28$addr; ;HEAP32[$91>>2]=HEAP32[(15336)>>2]|0;HEAP32[$91+4>>2]=HEAP32[(15336)+4>>2]|0;HEAP32[$91+8>>2]=HEAP32[(15336)+8>>2]|0; $92 = $A_Q28$addr; ;HEAP32[$92>>2]=HEAP32[(15380)>>2]|0;HEAP32[$92+4>>2]=HEAP32[(15380)+4>>2]|0; STACKTOP = sp;return; } $1 = $fac_Q16$addr; $cmp1 = ($1|0)>(0); if (!($cmp1)) { $87 = $B_Q28$addr; $88 = $ind$addr; $arrayidx131 = (15288 + (($88*12)|0)|0); ;HEAP32[$87>>2]=HEAP32[$arrayidx131>>2]|0;HEAP32[$87+4>>2]=HEAP32[$arrayidx131+4>>2]|0;HEAP32[$87+8>>2]=HEAP32[$arrayidx131+8>>2]|0; $89 = $A_Q28$addr; $90 = $ind$addr; $arrayidx132 = (15348 + ($90<<3)|0); ;HEAP32[$89>>2]=HEAP32[$arrayidx132>>2]|0;HEAP32[$89+4>>2]=HEAP32[$arrayidx132+4>>2]|0; STACKTOP = sp;return; } $2 = $fac_Q16$addr; $cmp3 = ($2|0)<(32768); $nb = 0; if ($cmp3) { while(1) { $3 = $nb; $cmp5 = ($3|0)<(3); if (!($cmp5)) { break; } $4 = $ind$addr; $arrayidx = (15288 + (($4*12)|0)|0); $5 = $nb; $arrayidx6 = (($arrayidx) + ($5<<2)|0); $6 = HEAP32[$arrayidx6>>2]|0; $7 = $ind$addr; $add = (($7) + 1)|0; $arrayidx7 = (15288 + (($add*12)|0)|0); $8 = $nb; $arrayidx8 = (($arrayidx7) + ($8<<2)|0); $9 = HEAP32[$arrayidx8>>2]|0; $10 = $ind$addr; $arrayidx9 = (15288 + (($10*12)|0)|0); $11 = $nb; $arrayidx10 = (($arrayidx9) + ($11<<2)|0); $12 = HEAP32[$arrayidx10>>2]|0; $sub = (($9) - ($12))|0; $shr = $sub >> 16; $13 = $fac_Q16$addr; $conv = $13&65535; $conv11 = $conv << 16 >> 16; $mul = Math_imul($shr, $conv11)|0; $14 = $ind$addr; $add12 = (($14) + 1)|0; $arrayidx13 = (15288 + (($add12*12)|0)|0); $15 = $nb; $arrayidx14 = (($arrayidx13) + ($15<<2)|0); $16 = HEAP32[$arrayidx14>>2]|0; $17 = $ind$addr; $arrayidx15 = (15288 + (($17*12)|0)|0); $18 = $nb; $arrayidx16 = (($arrayidx15) + ($18<<2)|0); $19 = HEAP32[$arrayidx16>>2]|0; $sub17 = (($16) - ($19))|0; $and = $sub17 & 65535; $20 = $fac_Q16$addr; $conv18 = $20&65535; $conv19 = $conv18 << 16 >> 16; $mul20 = Math_imul($and, $conv19)|0; $shr21 = $mul20 >> 16; $add22 = (($mul) + ($shr21))|0; $add23 = (($6) + ($add22))|0; $21 = $B_Q28$addr; $22 = $nb; $arrayidx24 = (($21) + ($22<<2)|0); HEAP32[$arrayidx24>>2] = $add23; $23 = $nb; $inc = (($23) + 1)|0; $nb = $inc; } $na = 0; while(1) { $24 = $na; $cmp26 = ($24|0)<(2); if (!($cmp26)) { break; } $25 = $ind$addr; $arrayidx29 = (15348 + ($25<<3)|0); $26 = $na; $arrayidx30 = (($arrayidx29) + ($26<<2)|0); $27 = HEAP32[$arrayidx30>>2]|0; $28 = $ind$addr; $add31 = (($28) + 1)|0; $arrayidx32 = (15348 + ($add31<<3)|0); $29 = $na; $arrayidx33 = (($arrayidx32) + ($29<<2)|0); $30 = HEAP32[$arrayidx33>>2]|0; $31 = $ind$addr; $arrayidx34 = (15348 + ($31<<3)|0); $32 = $na; $arrayidx35 = (($arrayidx34) + ($32<<2)|0); $33 = HEAP32[$arrayidx35>>2]|0; $sub36 = (($30) - ($33))|0; $shr37 = $sub36 >> 16; $34 = $fac_Q16$addr; $conv38 = $34&65535; $conv39 = $conv38 << 16 >> 16; $mul40 = Math_imul($shr37, $conv39)|0; $35 = $ind$addr; $add41 = (($35) + 1)|0; $arrayidx42 = (15348 + ($add41<<3)|0); $36 = $na; $arrayidx43 = (($arrayidx42) + ($36<<2)|0); $37 = HEAP32[$arrayidx43>>2]|0; $38 = $ind$addr; $arrayidx44 = (15348 + ($38<<3)|0); $39 = $na; $arrayidx45 = (($arrayidx44) + ($39<<2)|0); $40 = HEAP32[$arrayidx45>>2]|0; $sub46 = (($37) - ($40))|0; $and47 = $sub46 & 65535; $41 = $fac_Q16$addr; $conv48 = $41&65535; $conv49 = $conv48 << 16 >> 16; $mul50 = Math_imul($and47, $conv49)|0; $shr51 = $mul50 >> 16; $add52 = (($mul40) + ($shr51))|0; $add53 = (($27) + ($add52))|0; $42 = $A_Q28$addr; $43 = $na; $arrayidx54 = (($42) + ($43<<2)|0); HEAP32[$arrayidx54>>2] = $add53; $44 = $na; $inc56 = (($44) + 1)|0; $na = $inc56; } STACKTOP = sp;return; } else { while(1) { $45 = $nb; $cmp59 = ($45|0)<(3); if (!($cmp59)) { break; } $46 = $ind$addr; $add62 = (($46) + 1)|0; $arrayidx63 = (15288 + (($add62*12)|0)|0); $47 = $nb; $arrayidx64 = (($arrayidx63) + ($47<<2)|0); $48 = HEAP32[$arrayidx64>>2]|0; $49 = $ind$addr; $add65 = (($49) + 1)|0; $arrayidx66 = (15288 + (($add65*12)|0)|0); $50 = $nb; $arrayidx67 = (($arrayidx66) + ($50<<2)|0); $51 = HEAP32[$arrayidx67>>2]|0; $52 = $ind$addr; $arrayidx68 = (15288 + (($52*12)|0)|0); $53 = $nb; $arrayidx69 = (($arrayidx68) + ($53<<2)|0); $54 = HEAP32[$arrayidx69>>2]|0; $sub70 = (($51) - ($54))|0; $shr71 = $sub70 >> 16; $55 = $fac_Q16$addr; $sub72 = (($55) - 65536)|0; $conv73 = $sub72&65535; $conv74 = $conv73 << 16 >> 16; $mul75 = Math_imul($shr71, $conv74)|0; $56 = $ind$addr; $add76 = (($56) + 1)|0; $arrayidx77 = (15288 + (($add76*12)|0)|0); $57 = $nb; $arrayidx78 = (($arrayidx77) + ($57<<2)|0); $58 = HEAP32[$arrayidx78>>2]|0; $59 = $ind$addr; $arrayidx79 = (15288 + (($59*12)|0)|0); $60 = $nb; $arrayidx80 = (($arrayidx79) + ($60<<2)|0); $61 = HEAP32[$arrayidx80>>2]|0; $sub81 = (($58) - ($61))|0; $and82 = $sub81 & 65535; $62 = $fac_Q16$addr; $sub83 = (($62) - 65536)|0; $conv84 = $sub83&65535; $conv85 = $conv84 << 16 >> 16; $mul86 = Math_imul($and82, $conv85)|0; $shr87 = $mul86 >> 16; $add88 = (($mul75) + ($shr87))|0; $add89 = (($48) + ($add88))|0; $63 = $B_Q28$addr; $64 = $nb; $arrayidx90 = (($63) + ($64<<2)|0); HEAP32[$arrayidx90>>2] = $add89; $65 = $nb; $inc92 = (($65) + 1)|0; $nb = $inc92; } $na = 0; while(1) { $66 = $na; $cmp95 = ($66|0)<(2); if (!($cmp95)) { break; } $67 = $ind$addr; $add98 = (($67) + 1)|0; $arrayidx99 = (15348 + ($add98<<3)|0); $68 = $na; $arrayidx100 = (($arrayidx99) + ($68<<2)|0); $69 = HEAP32[$arrayidx100>>2]|0; $70 = $ind$addr; $add101 = (($70) + 1)|0; $arrayidx102 = (15348 + ($add101<<3)|0); $71 = $na; $arrayidx103 = (($arrayidx102) + ($71<<2)|0); $72 = HEAP32[$arrayidx103>>2]|0; $73 = $ind$addr; $arrayidx104 = (15348 + ($73<<3)|0); $74 = $na; $arrayidx105 = (($arrayidx104) + ($74<<2)|0); $75 = HEAP32[$arrayidx105>>2]|0; $sub106 = (($72) - ($75))|0; $shr107 = $sub106 >> 16; $76 = $fac_Q16$addr; $sub108 = (($76) - 65536)|0; $conv109 = $sub108&65535; $conv110 = $conv109 << 16 >> 16; $mul111 = Math_imul($shr107, $conv110)|0; $77 = $ind$addr; $add112 = (($77) + 1)|0; $arrayidx113 = (15348 + ($add112<<3)|0); $78 = $na; $arrayidx114 = (($arrayidx113) + ($78<<2)|0); $79 = HEAP32[$arrayidx114>>2]|0; $80 = $ind$addr; $arrayidx115 = (15348 + ($80<<3)|0); $81 = $na; $arrayidx116 = (($arrayidx115) + ($81<<2)|0); $82 = HEAP32[$arrayidx116>>2]|0; $sub117 = (($79) - ($82))|0; $and118 = $sub117 & 65535; $83 = $fac_Q16$addr; $sub119 = (($83) - 65536)|0; $conv120 = $sub119&65535; $conv121 = $conv120 << 16 >> 16; $mul122 = Math_imul($and118, $conv121)|0; $shr123 = $mul122 >> 16; $add124 = (($mul111) + ($shr123))|0; $add125 = (($69) + ($add124))|0; $84 = $A_Q28$addr; $85 = $na; $arrayidx126 = (($84) + ($85<<2)|0); HEAP32[$arrayidx126>>2] = $add125; $86 = $na; $inc128 = (($86) + 1)|0; $na = $inc128; } STACKTOP = sp;return; } } function _silk_NLSF_decode($pNLSF_Q15,$NLSFIndices,$psNLSF_CB) { $pNLSF_Q15 = $pNLSF_Q15|0; $NLSFIndices = $NLSFIndices|0; $psNLSF_CB = $psNLSF_CB|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $5 = 0, $6 = 0, $7 = 0; var $8 = 0, $9 = 0, $CB1_NLSF_Q8 = 0, $CB1_Wght_Q9 = 0, $NLSFIndices$addr = 0, $NLSF_Q15_tmp = 0, $add = 0, $arrayidx10 = 0, $arrayidx16 = 0, $arrayidx20 = 0, $arrayidx22 = 0, $arrayidx24 = 0, $arrayidx3 = 0, $arrayidx37 = 0, $cmp = 0, $cmp28 = 0, $cmp30 = 0, $cond = 0, $cond35 = 0, $conv = 0; var $conv12 = 0, $conv14 = 0, $conv18 = 0, $conv21 = 0, $conv23 = 0, $conv25 = 0, $conv26 = 0, $conv36 = 0, $conv39 = 0, $conv5 = 0, $conv7 = 0, $conv9 = 0, $deltaMin_Q15 = 0, $div = 0, $ec_ix = 0, $i = 0, $inc = 0, $mul = 0, $mul15 = 0, $order = 0; var $order13 = 0, $order17 = 0, $order38 = 0, $order8 = 0, $pCB_Wght_Q9 = 0, $pCB_element = 0, $pNLSF_Q15$addr = 0, $pred_Q8 = 0, $psNLSF_CB$addr = 0, $quantStepSize_Q16 = 0, $res_Q10 = 0, $shl = 0, $shl27 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 112|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(112|0); $pred_Q8 = sp + 96|0; $ec_ix = sp + 64|0; $res_Q10 = sp + 32|0; $pNLSF_Q15$addr = $pNLSF_Q15; $NLSFIndices$addr = $NLSFIndices; $psNLSF_CB$addr = $psNLSF_CB; $0 = $psNLSF_CB$addr; $1 = $NLSFIndices$addr; $2 = HEAP8[$1>>0]|0; $conv = $2 << 24 >> 24; _silk_NLSF_unpack($ec_ix,$pred_Q8,$0,$conv); $3 = $NLSFIndices$addr; $arrayidx3 = ((($3)) + 1|0); $4 = $psNLSF_CB$addr; $quantStepSize_Q16 = ((($4)) + 4|0); $5 = HEAP16[$quantStepSize_Q16>>1]|0; $conv5 = $5 << 16 >> 16; $6 = $psNLSF_CB$addr; $order = ((($6)) + 2|0); $7 = HEAP16[$order>>1]|0; _silk_NLSF_residual_dequant($res_Q10,$arrayidx3,$pred_Q8,$conv5,$7); $8 = $psNLSF_CB$addr; $CB1_NLSF_Q8 = ((($8)) + 8|0); $9 = HEAP32[$CB1_NLSF_Q8>>2]|0; $10 = $NLSFIndices$addr; $11 = HEAP8[$10>>0]|0; $conv7 = $11 << 24 >> 24; $12 = $psNLSF_CB$addr; $order8 = ((($12)) + 2|0); $13 = HEAP16[$order8>>1]|0; $conv9 = $13 << 16 >> 16; $mul = Math_imul($conv7, $conv9)|0; $arrayidx10 = (($9) + ($mul)|0); $pCB_element = $arrayidx10; $14 = $psNLSF_CB$addr; $CB1_Wght_Q9 = ((($14)) + 12|0); $15 = HEAP32[$CB1_Wght_Q9>>2]|0; $16 = $NLSFIndices$addr; $17 = HEAP8[$16>>0]|0; $conv12 = $17 << 24 >> 24; $18 = $psNLSF_CB$addr; $order13 = ((($18)) + 2|0); $19 = HEAP16[$order13>>1]|0; $conv14 = $19 << 16 >> 16; $mul15 = Math_imul($conv12, $conv14)|0; $arrayidx16 = (($15) + ($mul15<<1)|0); $pCB_Wght_Q9 = $arrayidx16; $i = 0; while(1) { $20 = $i; $21 = $psNLSF_CB$addr; $order17 = ((($21)) + 2|0); $22 = HEAP16[$order17>>1]|0; $conv18 = $22 << 16 >> 16; $cmp = ($20|0)<($conv18|0); if (!($cmp)) { break; } $23 = $i; $arrayidx20 = (($res_Q10) + ($23<<1)|0); $24 = HEAP16[$arrayidx20>>1]|0; $conv21 = $24 << 16 >> 16; $shl = $conv21 << 14; $25 = $pCB_Wght_Q9; $26 = $i; $arrayidx22 = (($25) + ($26<<1)|0); $27 = HEAP16[$arrayidx22>>1]|0; $conv23 = $27 << 16 >> 16; $div = (($shl|0) / ($conv23|0))&-1; $28 = $pCB_element; $29 = $i; $arrayidx24 = (($28) + ($29)|0); $30 = HEAP8[$arrayidx24>>0]|0; $conv25 = $30&255; $conv26 = $conv25 << 16 >> 16; $shl27 = $conv26 << 7; $add = (($div) + ($shl27))|0; $NLSF_Q15_tmp = $add; $31 = $NLSF_Q15_tmp; $cmp28 = ($31|0)>(32767); if ($cmp28) { $cond35 = 32767; } else { $32 = $NLSF_Q15_tmp; $cmp30 = ($32|0)<(0); $33 = $NLSF_Q15_tmp; $cond = $cmp30 ? 0 : $33; $cond35 = $cond; } $conv36 = $cond35&65535; $34 = $pNLSF_Q15$addr; $35 = $i; $arrayidx37 = (($34) + ($35<<1)|0); HEAP16[$arrayidx37>>1] = $conv36; $36 = $i; $inc = (($36) + 1)|0; $i = $inc; } $37 = $pNLSF_Q15$addr; $38 = $psNLSF_CB$addr; $deltaMin_Q15 = ((($38)) + 36|0); $39 = HEAP32[$deltaMin_Q15>>2]|0; $40 = $psNLSF_CB$addr; $order38 = ((($40)) + 2|0); $41 = HEAP16[$order38>>1]|0; $conv39 = $41 << 16 >> 16; _silk_NLSF_stabilize($37,$39,$conv39); STACKTOP = sp;return; } function _silk_NLSF_residual_dequant($x_Q10,$indices,$pred_coef_Q8,$quant_step_size_Q16,$order) { $x_Q10 = $x_Q10|0; $indices = $indices|0; $pred_coef_Q8 = $pred_coef_Q8|0; $quant_step_size_Q16 = $quant_step_size_Q16|0; $order = $order|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; var $9 = 0, $add = 0, $add23 = 0, $add24 = 0, $and = 0, $arrayidx = 0, $arrayidx26 = 0, $arrayidx6 = 0, $cmp = 0, $cmp11 = 0, $cmp8 = 0, $conv = 0, $conv16 = 0, $conv17 = 0, $conv19 = 0, $conv2 = 0, $conv20 = 0, $conv25 = 0, $conv3 = 0, $conv4 = 0; var $conv5 = 0, $conv7 = 0, $dec = 0, $i = 0, $indices$addr = 0, $mul = 0, $mul18 = 0, $mul21 = 0, $order$addr = 0, $out_Q10 = 0, $pred_Q10 = 0, $pred_coef_Q8$addr = 0, $quant_step_size_Q16$addr = 0, $shl = 0, $shr = 0, $shr15 = 0, $shr22 = 0, $sub = 0, $sub10 = 0, $x_Q10$addr = 0; var label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $x_Q10$addr = $x_Q10; $indices$addr = $indices; $pred_coef_Q8$addr = $pred_coef_Q8; $quant_step_size_Q16$addr = $quant_step_size_Q16; $order$addr = $order; $out_Q10 = 0; $0 = $order$addr; $conv = $0 << 16 >> 16; $sub = (($conv) - 1)|0; $i = $sub; while(1) { $1 = $i; $cmp = ($1|0)>=(0); if (!($cmp)) { break; } $2 = $out_Q10; $conv2 = $2&65535; $conv3 = $conv2 << 16 >> 16; $3 = $pred_coef_Q8$addr; $4 = $i; $arrayidx = (($3) + ($4)|0); $5 = HEAP8[$arrayidx>>0]|0; $conv4 = $5&255; $conv5 = $conv4 << 16 >> 16; $mul = Math_imul($conv3, $conv5)|0; $shr = $mul >> 8; $pred_Q10 = $shr; $6 = $indices$addr; $7 = $i; $arrayidx6 = (($6) + ($7)|0); $8 = HEAP8[$arrayidx6>>0]|0; $conv7 = $8 << 24 >> 24; $shl = $conv7 << 10; $out_Q10 = $shl; $9 = $out_Q10; $cmp8 = ($9|0)>(0); $10 = $out_Q10; if ($cmp8) { $sub10 = (($10) - 102)|0; $out_Q10 = $sub10; } else { $cmp11 = ($10|0)<(0); if ($cmp11) { $11 = $out_Q10; $add = (($11) + 102)|0; $out_Q10 = $add; } } $12 = $pred_Q10; $13 = $out_Q10; $shr15 = $13 >> 16; $14 = $quant_step_size_Q16$addr; $conv16 = $14&65535; $conv17 = $conv16 << 16 >> 16; $mul18 = Math_imul($shr15, $conv17)|0; $15 = $out_Q10; $and = $15 & 65535; $16 = $quant_step_size_Q16$addr; $conv19 = $16&65535; $conv20 = $conv19 << 16 >> 16; $mul21 = Math_imul($and, $conv20)|0; $shr22 = $mul21 >> 16; $add23 = (($mul18) + ($shr22))|0; $add24 = (($12) + ($add23))|0; $out_Q10 = $add24; $17 = $out_Q10; $conv25 = $17&65535; $18 = $x_Q10$addr; $19 = $i; $arrayidx26 = (($18) + ($19<<1)|0); HEAP16[$arrayidx26>>1] = $conv25; $20 = $i; $dec = (($20) + -1)|0; $i = $dec; } STACKTOP = sp;return; } function _silk_NSQ_c($psEncC,$NSQ,$psIndices,$x16,$pulses,$PredCoef_Q12,$LTPCoef_Q14,$AR_Q13,$HarmShapeGain_Q14,$Tilt_Q14,$LF_shp_Q14,$Gains_Q16,$pitchL,$Lambda_Q10,$LTP_scale_Q14) { $psEncC = $psEncC|0; $NSQ = $NSQ|0; $psIndices = $psIndices|0; $x16 = $x16|0; $pulses = $pulses|0; $PredCoef_Q12 = $PredCoef_Q12|0; $LTPCoef_Q14 = $LTPCoef_Q14|0; $AR_Q13 = $AR_Q13|0; $HarmShapeGain_Q14 = $HarmShapeGain_Q14|0; $Tilt_Q14 = $Tilt_Q14|0; $LF_shp_Q14 = $LF_shp_Q14|0; $Gains_Q16 = $Gains_Q16|0; $pitchL = $pitchL|0; $Lambda_Q10 = $Lambda_Q10|0; $LTP_scale_Q14 = $LTP_scale_Q14|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0; var $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0; var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0; var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0; var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0; var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $AR_Q13$addr = 0, $AR_shp_Q13 = 0, $A_Q12 = 0, $B_Q14 = 0, $Gains_Q16$addr = 0, $HarmShapeFIRPacked_Q14 = 0, $HarmShapeGain_Q14$addr = 0, $LF_shp_Q14$addr = 0, $LSF_interpolation_flag = 0, $LTPCoef_Q14$addr = 0, $LTP_scale_Q14$addr = 0, $Lambda_Q10$addr = 0, $NLSFInterpCoef_Q2 = 0, $NSQ$addr = 0; var $PredCoef_Q12$addr = 0, $Seed = 0, $Tilt_Q14$addr = 0, $add = 0, $add$ptr = 0, $add$ptr69 = 0, $add$ptr71 = 0, $add47 = 0, $add8 = 0, $and = 0, $arch = 0, $arch66 = 0, $arrayidx = 0, $arrayidx14 = 0, $arrayidx18 = 0, $arrayidx2 = 0, $arrayidx20 = 0, $arrayidx22 = 0, $arrayidx23 = 0, $arrayidx25 = 0; var $arrayidx33 = 0, $arrayidx43 = 0, $arrayidx48 = 0, $arrayidx61 = 0, $arrayidx62 = 0, $arrayidx63 = 0, $arrayidx74 = 0, $arrayidx79 = 0, $arrayidx85 = 0, $cmp = 0, $cmp15 = 0, $cmp30 = 0, $cmp36 = 0, $conv = 0, $conv1 = 0, $conv29 = 0, $conv3 = 0, $conv4 = 0, $conv58 = 0, $conv60 = 0; var $frame_length = 0, $frame_length7 = 0, $frame_length78 = 0, $frame_length84 = 0, $idxprom = 0, $inc = 0, $k = 0, $lag = 0, $lagPrev = 0, $lagPrev75 = 0, $ltp_mem_length = 0, $ltp_mem_length11 = 0, $ltp_mem_length12 = 0, $ltp_mem_length13 = 0, $ltp_mem_length39 = 0, $ltp_mem_length49 = 0, $ltp_mem_length53 = 0, $ltp_mem_length6 = 0, $ltp_mem_length80 = 0, $ltp_mem_length86 = 0; var $mul = 0, $mul19 = 0, $mul21 = 0, $mul46 = 0, $mul81 = 0, $mul87 = 0, $nb_subfr = 0, $nb_subfr72 = 0, $offset_Q10 = 0, $or = 0, $or27 = 0, $pitchL$addr = 0, $predictLPCOrder = 0, $predictLPCOrder51 = 0, $predictLPCOrder65 = 0, $psEncC$addr = 0, $psIndices$addr = 0, $pulses$addr = 0, $pxq = 0, $quantOffsetType = 0; var $rand_seed = 0, $rewhite_flag = 0, $rewhite_flag52 = 0, $sLTP_buf_idx = 0, $sLTP_buf_idx54 = 0, $sLTP_shp_Q14 = 0, $sLTP_shp_Q1483 = 0, $sLTP_shp_buf_idx = 0, $saved_stack = 0, $shapingLPCOrder = 0, $shl = 0, $shl34 = 0, $shr = 0, $shr17 = 0, $shr24 = 0, $shr26 = 0, $signalType = 0, $signalType28 = 0, $signalType57 = 0, $signalType59 = 0; var $start_idx = 0, $sub = 0, $sub35 = 0, $sub40 = 0, $sub41 = 0, $sub42 = 0, $sub50 = 0, $sub73 = 0, $subfr_length = 0, $subfr_length45 = 0, $subfr_length64 = 0, $subfr_length67 = 0, $subfr_length68 = 0, $subfr_length70 = 0, $vla = 0, $vla$alloca_mul = 0, $vla10 = 0, $vla10$alloca_mul = 0, $vla9 = 0, $vla9$alloca_mul = 0; var $x16$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 112|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(112|0); $psEncC$addr = $psEncC; $NSQ$addr = $NSQ; $psIndices$addr = $psIndices; $x16$addr = $x16; $pulses$addr = $pulses; $PredCoef_Q12$addr = $PredCoef_Q12; $LTPCoef_Q14$addr = $LTPCoef_Q14; $AR_Q13$addr = $AR_Q13; $HarmShapeGain_Q14$addr = $HarmShapeGain_Q14; $Tilt_Q14$addr = $Tilt_Q14; $LF_shp_Q14$addr = $LF_shp_Q14; $Gains_Q16$addr = $Gains_Q16; $pitchL$addr = $pitchL; $Lambda_Q10$addr = $Lambda_Q10; $LTP_scale_Q14$addr = $LTP_scale_Q14; $0 = $psIndices$addr; $Seed = ((($0)) + 34|0); $1 = HEAP8[$Seed>>0]|0; $conv = $1 << 24 >> 24; $2 = $NSQ$addr; $rand_seed = ((($2)) + 4340|0); HEAP32[$rand_seed>>2] = $conv; $3 = $NSQ$addr; $lagPrev = ((($3)) + 4328|0); $4 = HEAP32[$lagPrev>>2]|0; $lag = $4; $5 = $psIndices$addr; $signalType = ((($5)) + 29|0); $6 = HEAP8[$signalType>>0]|0; $conv1 = $6 << 24 >> 24; $shr = $conv1 >> 1; $arrayidx = (23512 + ($shr<<2)|0); $7 = $psIndices$addr; $quantOffsetType = ((($7)) + 30|0); $8 = HEAP8[$quantOffsetType>>0]|0; $idxprom = $8 << 24 >> 24; $arrayidx2 = (($arrayidx) + ($idxprom<<1)|0); $9 = HEAP16[$arrayidx2>>1]|0; $conv3 = $9 << 16 >> 16; $offset_Q10 = $conv3; $10 = $psIndices$addr; $NLSFInterpCoef_Q2 = ((($10)) + 31|0); $11 = HEAP8[$NLSFInterpCoef_Q2>>0]|0; $conv4 = $11 << 24 >> 24; $cmp = ($conv4|0)==(4); if ($cmp) { $LSF_interpolation_flag = 0; } else { $LSF_interpolation_flag = 1; } $12 = $psEncC$addr; $ltp_mem_length = ((($12)) + 4588|0); $13 = HEAP32[$ltp_mem_length>>2]|0; $14 = $psEncC$addr; $frame_length = ((($14)) + 4580|0); $15 = HEAP32[$frame_length>>2]|0; $add = (($13) + ($15))|0; $16 = (_llvm_stacksave()|0); $saved_stack = $16; $vla$alloca_mul = $add<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $17 = $psEncC$addr; $ltp_mem_length6 = ((($17)) + 4588|0); $18 = HEAP32[$ltp_mem_length6>>2]|0; $19 = $psEncC$addr; $frame_length7 = ((($19)) + 4580|0); $20 = HEAP32[$frame_length7>>2]|0; $add8 = (($18) + ($20))|0; $vla9$alloca_mul = $add8<<1; $vla9 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla9$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla9$alloca_mul)|0)+15)&-16)|0);; $21 = $psEncC$addr; $subfr_length = ((($21)) + 4584|0); $22 = HEAP32[$subfr_length>>2]|0; $vla10$alloca_mul = $22<<2; $vla10 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla10$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla10$alloca_mul)|0)+15)&-16)|0);; $23 = $psEncC$addr; $ltp_mem_length11 = ((($23)) + 4588|0); $24 = HEAP32[$ltp_mem_length11>>2]|0; $25 = $NSQ$addr; $sLTP_shp_buf_idx = ((($25)) + 4336|0); HEAP32[$sLTP_shp_buf_idx>>2] = $24; $26 = $psEncC$addr; $ltp_mem_length12 = ((($26)) + 4588|0); $27 = HEAP32[$ltp_mem_length12>>2]|0; $28 = $NSQ$addr; $sLTP_buf_idx = ((($28)) + 4332|0); HEAP32[$sLTP_buf_idx>>2] = $27; $29 = $NSQ$addr; $30 = $psEncC$addr; $ltp_mem_length13 = ((($30)) + 4588|0); $31 = HEAP32[$ltp_mem_length13>>2]|0; $arrayidx14 = (($29) + ($31<<1)|0); $pxq = $arrayidx14; $k = 0; while(1) { $32 = $k; $33 = $psEncC$addr; $nb_subfr = ((($33)) + 4576|0); $34 = HEAP32[$nb_subfr>>2]|0; $cmp15 = ($32|0)<($34|0); if (!($cmp15)) { break; } $35 = $PredCoef_Q12$addr; $36 = $k; $shr17 = $36 >> 1; $37 = $LSF_interpolation_flag; $sub = (1 - ($37))|0; $or = $shr17 | $sub; $mul = $or<<4; $arrayidx18 = (($35) + ($mul<<1)|0); $A_Q12 = $arrayidx18; $38 = $LTPCoef_Q14$addr; $39 = $k; $mul19 = ($39*5)|0; $arrayidx20 = (($38) + ($mul19<<1)|0); $B_Q14 = $arrayidx20; $40 = $AR_Q13$addr; $41 = $k; $mul21 = ($41*24)|0; $arrayidx22 = (($40) + ($mul21<<1)|0); $AR_shp_Q13 = $arrayidx22; $42 = $HarmShapeGain_Q14$addr; $43 = $k; $arrayidx23 = (($42) + ($43<<2)|0); $44 = HEAP32[$arrayidx23>>2]|0; $shr24 = $44 >> 2; $HarmShapeFIRPacked_Q14 = $shr24; $45 = $HarmShapeGain_Q14$addr; $46 = $k; $arrayidx25 = (($45) + ($46<<2)|0); $47 = HEAP32[$arrayidx25>>2]|0; $shr26 = $47 >> 1; $shl = $shr26 << 16; $48 = $HarmShapeFIRPacked_Q14; $or27 = $48 | $shl; $HarmShapeFIRPacked_Q14 = $or27; $49 = $NSQ$addr; $rewhite_flag = ((($49)) + 4348|0); HEAP32[$rewhite_flag>>2] = 0; $50 = $psIndices$addr; $signalType28 = ((($50)) + 29|0); $51 = HEAP8[$signalType28>>0]|0; $conv29 = $51 << 24 >> 24; $cmp30 = ($conv29|0)==(2); if ($cmp30) { $52 = $pitchL$addr; $53 = $k; $arrayidx33 = (($52) + ($53<<2)|0); $54 = HEAP32[$arrayidx33>>2]|0; $lag = $54; $55 = $k; $56 = $LSF_interpolation_flag; $shl34 = $56 << 1; $sub35 = (3 - ($shl34))|0; $and = $55 & $sub35; $cmp36 = ($and|0)==(0); if ($cmp36) { $57 = $psEncC$addr; $ltp_mem_length39 = ((($57)) + 4588|0); $58 = HEAP32[$ltp_mem_length39>>2]|0; $59 = $lag; $sub40 = (($58) - ($59))|0; $60 = $psEncC$addr; $predictLPCOrder = ((($60)) + 4636|0); $61 = HEAP32[$predictLPCOrder>>2]|0; $sub41 = (($sub40) - ($61))|0; $sub42 = (($sub41) - 2)|0; $start_idx = $sub42; $62 = $start_idx; $arrayidx43 = (($vla9) + ($62<<1)|0); $63 = $NSQ$addr; $64 = $start_idx; $65 = $k; $66 = $psEncC$addr; $subfr_length45 = ((($66)) + 4584|0); $67 = HEAP32[$subfr_length45>>2]|0; $mul46 = Math_imul($65, $67)|0; $add47 = (($64) + ($mul46))|0; $arrayidx48 = (($63) + ($add47<<1)|0); $68 = $A_Q12; $69 = $psEncC$addr; $ltp_mem_length49 = ((($69)) + 4588|0); $70 = HEAP32[$ltp_mem_length49>>2]|0; $71 = $start_idx; $sub50 = (($70) - ($71))|0; $72 = $psEncC$addr; $predictLPCOrder51 = ((($72)) + 4636|0); $73 = HEAP32[$predictLPCOrder51>>2]|0; $74 = $psEncC$addr; $arch = ((($74)) + 5088|0); $75 = HEAP32[$arch>>2]|0; _silk_LPC_analysis_filter($arrayidx43,$arrayidx48,$68,$sub50,$73,$75); $76 = $NSQ$addr; $rewhite_flag52 = ((($76)) + 4348|0); HEAP32[$rewhite_flag52>>2] = 1; $77 = $psEncC$addr; $ltp_mem_length53 = ((($77)) + 4588|0); $78 = HEAP32[$ltp_mem_length53>>2]|0; $79 = $NSQ$addr; $sLTP_buf_idx54 = ((($79)) + 4332|0); HEAP32[$sLTP_buf_idx54>>2] = $78; } } $80 = $psEncC$addr; $81 = $NSQ$addr; $82 = $x16$addr; $83 = $k; $84 = $LTP_scale_Q14$addr; $85 = $Gains_Q16$addr; $86 = $pitchL$addr; $87 = $psIndices$addr; $signalType57 = ((($87)) + 29|0); $88 = HEAP8[$signalType57>>0]|0; $conv58 = $88 << 24 >> 24; _silk_nsq_scale_states($80,$81,$82,$vla10,$vla9,$vla,$83,$84,$85,$86,$conv58); $89 = $NSQ$addr; $90 = $psIndices$addr; $signalType59 = ((($90)) + 29|0); $91 = HEAP8[$signalType59>>0]|0; $conv60 = $91 << 24 >> 24; $92 = $pulses$addr; $93 = $pxq; $94 = $A_Q12; $95 = $B_Q14; $96 = $AR_shp_Q13; $97 = $lag; $98 = $HarmShapeFIRPacked_Q14; $99 = $Tilt_Q14$addr; $100 = $k; $arrayidx61 = (($99) + ($100<<2)|0); $101 = HEAP32[$arrayidx61>>2]|0; $102 = $LF_shp_Q14$addr; $103 = $k; $arrayidx62 = (($102) + ($103<<2)|0); $104 = HEAP32[$arrayidx62>>2]|0; $105 = $Gains_Q16$addr; $106 = $k; $arrayidx63 = (($105) + ($106<<2)|0); $107 = HEAP32[$arrayidx63>>2]|0; $108 = $Lambda_Q10$addr; $109 = $offset_Q10; $110 = $psEncC$addr; $subfr_length64 = ((($110)) + 4584|0); $111 = HEAP32[$subfr_length64>>2]|0; $112 = $psEncC$addr; $shapingLPCOrder = ((($112)) + 4632|0); $113 = HEAP32[$shapingLPCOrder>>2]|0; $114 = $psEncC$addr; $predictLPCOrder65 = ((($114)) + 4636|0); $115 = HEAP32[$predictLPCOrder65>>2]|0; $116 = $psEncC$addr; $arch66 = ((($116)) + 5088|0); $117 = HEAP32[$arch66>>2]|0; _silk_noise_shape_quantizer($89,$conv60,$vla10,$92,$93,$vla,$94,$95,$96,$97,$98,$101,$104,$107,$108,$109,$111,$113,$115,$117); $118 = $psEncC$addr; $subfr_length67 = ((($118)) + 4584|0); $119 = HEAP32[$subfr_length67>>2]|0; $120 = $x16$addr; $add$ptr = (($120) + ($119<<1)|0); $x16$addr = $add$ptr; $121 = $psEncC$addr; $subfr_length68 = ((($121)) + 4584|0); $122 = HEAP32[$subfr_length68>>2]|0; $123 = $pulses$addr; $add$ptr69 = (($123) + ($122)|0); $pulses$addr = $add$ptr69; $124 = $psEncC$addr; $subfr_length70 = ((($124)) + 4584|0); $125 = HEAP32[$subfr_length70>>2]|0; $126 = $pxq; $add$ptr71 = (($126) + ($125<<1)|0); $pxq = $add$ptr71; $127 = $k; $inc = (($127) + 1)|0; $k = $inc; } $128 = $pitchL$addr; $129 = $psEncC$addr; $nb_subfr72 = ((($129)) + 4576|0); $130 = HEAP32[$nb_subfr72>>2]|0; $sub73 = (($130) - 1)|0; $arrayidx74 = (($128) + ($sub73<<2)|0); $131 = HEAP32[$arrayidx74>>2]|0; $132 = $NSQ$addr; $lagPrev75 = ((($132)) + 4328|0); HEAP32[$lagPrev75>>2] = $131; $133 = $NSQ$addr; $134 = $NSQ$addr; $135 = $psEncC$addr; $frame_length78 = ((($135)) + 4580|0); $136 = HEAP32[$frame_length78>>2]|0; $arrayidx79 = (($134) + ($136<<1)|0); $137 = $psEncC$addr; $ltp_mem_length80 = ((($137)) + 4588|0); $138 = HEAP32[$ltp_mem_length80>>2]|0; $mul81 = $138<<1; _memmove(($133|0),($arrayidx79|0),($mul81|0))|0; $139 = $NSQ$addr; $sLTP_shp_Q14 = ((($139)) + 1280|0); $140 = $NSQ$addr; $sLTP_shp_Q1483 = ((($140)) + 1280|0); $141 = $psEncC$addr; $frame_length84 = ((($141)) + 4580|0); $142 = HEAP32[$frame_length84>>2]|0; $arrayidx85 = (($sLTP_shp_Q1483) + ($142<<2)|0); $143 = $psEncC$addr; $ltp_mem_length86 = ((($143)) + 4588|0); $144 = HEAP32[$ltp_mem_length86>>2]|0; $mul87 = $144<<2; _memmove(($sLTP_shp_Q14|0),($arrayidx85|0),($mul87|0))|0; $145 = $saved_stack; _llvm_stackrestore(($145|0)); STACKTOP = sp;return; } function _silk_nsq_scale_states($psEncC,$NSQ,$x16,$x_sc_Q10,$sLTP,$sLTP_Q15,$subfr,$LTP_scale_Q14,$Gains_Q16,$pitchL,$signal_type) { $psEncC = $psEncC|0; $NSQ = $NSQ|0; $x16 = $x16|0; $x_sc_Q10 = $x_sc_Q10|0; $sLTP = $sLTP|0; $sLTP_Q15 = $sLTP_Q15|0; $subfr = $subfr|0; $LTP_scale_Q14 = $LTP_scale_Q14|0; $Gains_Q16 = $Gains_Q16|0; $pitchL = $pitchL|0; $signal_type = $signal_type|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0; var $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0; var $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0; var $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0; var $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0; var $96 = 0, $97 = 0, $98 = 0, $99 = 0, $Gains_Q16$addr = 0, $LTP_scale_Q14$addr = 0, $NSQ$addr = 0, $add = 0, $add121 = 0, $add124 = 0, $add127 = 0, $add143 = 0, $add146 = 0, $add149 = 0, $add15 = 0, $add161 = 0, $add164 = 0, $add167 = 0, $add185 = 0, $add189 = 0; var $add19 = 0, $add192 = 0, $add214 = 0, $add218 = 0, $add22 = 0, $add221 = 0, $add36 = 0, $add52 = 0, $add83 = 0, $add87 = 0, $add90 = 0, $and = 0, $and115 = 0, $and137 = 0, $and155 = 0, $and178 = 0, $and207 = 0, $and31 = 0, $and47 = 0, $and76 = 0; var $arrayidx = 0, $arrayidx1 = 0, $arrayidx111 = 0, $arrayidx116 = 0, $arrayidx122 = 0, $arrayidx128 = 0, $arrayidx16 = 0, $arrayidx174 = 0, $arrayidx180 = 0, $arrayidx187 = 0, $arrayidx194 = 0, $arrayidx2 = 0, $arrayidx203 = 0, $arrayidx209 = 0, $arrayidx216 = 0, $arrayidx223 = 0, $arrayidx227 = 0, $arrayidx23 = 0, $arrayidx44 = 0, $arrayidx48 = 0; var $arrayidx5 = 0, $arrayidx53 = 0, $arrayidx58 = 0, $arrayidx63 = 0, $arrayidx72 = 0, $arrayidx78 = 0, $arrayidx85 = 0, $arrayidx9 = 0, $arrayidx92 = 0, $call = 0, $call64 = 0, $cmp = 0, $cmp107 = 0, $cmp170 = 0, $cmp199 = 0, $cmp24 = 0, $cmp4 = 0, $cmp40 = 0, $cmp59 = 0, $cmp68 = 0; var $cmp96 = 0, $cmp99 = 0, $cond = 0, $conv = 0, $conv10 = 0, $conv11 = 0, $conv112 = 0, $conv113 = 0, $conv117 = 0, $conv118 = 0, $conv12 = 0, $conv134 = 0, $conv135 = 0, $conv139 = 0, $conv140 = 0, $conv152 = 0, $conv153 = 0, $conv157 = 0, $conv158 = 0, $conv17 = 0; var $conv175 = 0, $conv176 = 0, $conv181 = 0, $conv182 = 0, $conv204 = 0, $conv205 = 0, $conv210 = 0, $conv211 = 0, $conv28 = 0, $conv29 = 0, $conv32 = 0, $conv33 = 0, $conv45 = 0, $conv49 = 0, $conv7 = 0, $conv73 = 0, $conv74 = 0, $conv79 = 0, $conv8 = 0, $conv80 = 0; var $gain_adj_Q16 = 0, $i = 0, $inc = 0, $inc130 = 0, $inc196 = 0, $inc225 = 0, $inc55 = 0, $inc94 = 0, $inv_gain_Q26 = 0, $inv_gain_Q31 = 0, $lag = 0, $ltp_mem_length = 0, $mul = 0, $mul114 = 0, $mul119 = 0, $mul126 = 0, $mul13 = 0, $mul136 = 0, $mul141 = 0, $mul148 = 0; var $mul154 = 0, $mul159 = 0, $mul166 = 0, $mul177 = 0, $mul183 = 0, $mul191 = 0, $mul206 = 0, $mul21 = 0, $mul212 = 0, $mul220 = 0, $mul30 = 0, $mul34 = 0, $mul46 = 0, $mul50 = 0, $mul75 = 0, $mul81 = 0, $mul89 = 0, $pitchL$addr = 0, $prev_gain_Q16 = 0, $prev_gain_Q16228 = 0; var $prev_gain_Q1662 = 0, $psEncC$addr = 0, $rewhite_flag = 0, $rewhite_flag98 = 0, $sAR2_Q14 = 0, $sAR2_Q14208 = 0, $sAR2_Q14215 = 0, $sAR2_Q14222 = 0, $sDiff_shp_Q14 = 0, $sDiff_shp_Q14156 = 0, $sDiff_shp_Q14162 = 0, $sDiff_shp_Q14168 = 0, $sLF_AR_shp_Q14 = 0, $sLF_AR_shp_Q14138 = 0, $sLF_AR_shp_Q14144 = 0, $sLF_AR_shp_Q14150 = 0, $sLPC_Q14 = 0, $sLPC_Q14179 = 0, $sLPC_Q14186 = 0, $sLPC_Q14193 = 0; var $sLTP$addr = 0, $sLTP_Q15$addr = 0, $sLTP_buf_idx = 0, $sLTP_buf_idx102 = 0, $sLTP_buf_idx106 = 0, $sLTP_buf_idx39 = 0, $sLTP_shp_Q14 = 0, $sLTP_shp_Q1477 = 0, $sLTP_shp_Q1484 = 0, $sLTP_shp_Q1491 = 0, $sLTP_shp_buf_idx = 0, $sLTP_shp_buf_idx67 = 0, $shl = 0, $shr = 0, $shr110 = 0, $shr120 = 0, $shr123 = 0, $shr125 = 0, $shr133 = 0, $shr14 = 0; var $shr142 = 0, $shr145 = 0, $shr147 = 0, $shr151 = 0, $shr160 = 0, $shr163 = 0, $shr165 = 0, $shr173 = 0, $shr18 = 0, $shr184 = 0, $shr188 = 0, $shr190 = 0, $shr20 = 0, $shr202 = 0, $shr213 = 0, $shr217 = 0, $shr219 = 0, $shr27 = 0, $shr3 = 0, $shr35 = 0; var $shr43 = 0, $shr51 = 0, $shr6 = 0, $shr71 = 0, $shr82 = 0, $shr86 = 0, $shr88 = 0, $signal_type$addr = 0, $sub = 0, $sub103 = 0, $sub104 = 0, $sub37 = 0, $sub65 = 0, $subfr$addr = 0, $subfr_length = 0, $tobool = 0, $x16$addr = 0, $x_sc_Q10$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $psEncC$addr = $psEncC; $NSQ$addr = $NSQ; $x16$addr = $x16; $x_sc_Q10$addr = $x_sc_Q10; $sLTP$addr = $sLTP; $sLTP_Q15$addr = $sLTP_Q15; $subfr$addr = $subfr; $LTP_scale_Q14$addr = $LTP_scale_Q14; $Gains_Q16$addr = $Gains_Q16; $pitchL$addr = $pitchL; $signal_type$addr = $signal_type; $0 = $pitchL$addr; $1 = $subfr$addr; $arrayidx = (($0) + ($1<<2)|0); $2 = HEAP32[$arrayidx>>2]|0; $lag = $2; $3 = $Gains_Q16$addr; $4 = $subfr$addr; $arrayidx1 = (($3) + ($4<<2)|0); $5 = HEAP32[$arrayidx1>>2]|0; $cmp = ($5|0)>(1); if ($cmp) { $6 = $Gains_Q16$addr; $7 = $subfr$addr; $arrayidx2 = (($6) + ($7<<2)|0); $8 = HEAP32[$arrayidx2>>2]|0; $cond = $8; } else { $cond = 1; } $call = (_silk_INVERSE32_varQ($cond,47)|0); $inv_gain_Q31 = $call; $9 = $inv_gain_Q31; $shr = $9 >> 4; $add = (($shr) + 1)|0; $shr3 = $add >> 1; $inv_gain_Q26 = $shr3; $i = 0; while(1) { $10 = $i; $11 = $psEncC$addr; $subfr_length = ((($11)) + 4584|0); $12 = HEAP32[$subfr_length>>2]|0; $cmp4 = ($10|0)<($12|0); if (!($cmp4)) { break; } $13 = $x16$addr; $14 = $i; $arrayidx5 = (($13) + ($14<<1)|0); $15 = HEAP16[$arrayidx5>>1]|0; $conv = $15 << 16 >> 16; $shr6 = $conv >> 16; $16 = $inv_gain_Q26; $conv7 = $16&65535; $conv8 = $conv7 << 16 >> 16; $mul = Math_imul($shr6, $conv8)|0; $17 = $x16$addr; $18 = $i; $arrayidx9 = (($17) + ($18<<1)|0); $19 = HEAP16[$arrayidx9>>1]|0; $conv10 = $19 << 16 >> 16; $and = $conv10 & 65535; $20 = $inv_gain_Q26; $conv11 = $20&65535; $conv12 = $conv11 << 16 >> 16; $mul13 = Math_imul($and, $conv12)|0; $shr14 = $mul13 >> 16; $add15 = (($mul) + ($shr14))|0; $21 = $x16$addr; $22 = $i; $arrayidx16 = (($21) + ($22<<1)|0); $23 = HEAP16[$arrayidx16>>1]|0; $conv17 = $23 << 16 >> 16; $24 = $inv_gain_Q26; $shr18 = $24 >> 15; $add19 = (($shr18) + 1)|0; $shr20 = $add19 >> 1; $mul21 = Math_imul($conv17, $shr20)|0; $add22 = (($add15) + ($mul21))|0; $25 = $x_sc_Q10$addr; $26 = $i; $arrayidx23 = (($25) + ($26<<2)|0); HEAP32[$arrayidx23>>2] = $add22; $27 = $i; $inc = (($27) + 1)|0; $i = $inc; } $28 = $NSQ$addr; $rewhite_flag = ((($28)) + 4348|0); $29 = HEAP32[$rewhite_flag>>2]|0; $tobool = ($29|0)!=(0); L8: do { if ($tobool) { $30 = $subfr$addr; $cmp24 = ($30|0)==(0); if ($cmp24) { $31 = $inv_gain_Q31; $shr27 = $31 >> 16; $32 = $LTP_scale_Q14$addr; $conv28 = $32&65535; $conv29 = $conv28 << 16 >> 16; $mul30 = Math_imul($shr27, $conv29)|0; $33 = $inv_gain_Q31; $and31 = $33 & 65535; $34 = $LTP_scale_Q14$addr; $conv32 = $34&65535; $conv33 = $conv32 << 16 >> 16; $mul34 = Math_imul($and31, $conv33)|0; $shr35 = $mul34 >> 16; $add36 = (($mul30) + ($shr35))|0; $shl = $add36 << 2; $inv_gain_Q31 = $shl; } $35 = $NSQ$addr; $sLTP_buf_idx = ((($35)) + 4332|0); $36 = HEAP32[$sLTP_buf_idx>>2]|0; $37 = $lag; $sub = (($36) - ($37))|0; $sub37 = (($sub) - 2)|0; $i = $sub37; while(1) { $38 = $i; $39 = $NSQ$addr; $sLTP_buf_idx39 = ((($39)) + 4332|0); $40 = HEAP32[$sLTP_buf_idx39>>2]|0; $cmp40 = ($38|0)<($40|0); if (!($cmp40)) { break L8; } $41 = $inv_gain_Q31; $shr43 = $41 >> 16; $42 = $sLTP$addr; $43 = $i; $arrayidx44 = (($42) + ($43<<1)|0); $44 = HEAP16[$arrayidx44>>1]|0; $conv45 = $44 << 16 >> 16; $mul46 = Math_imul($shr43, $conv45)|0; $45 = $inv_gain_Q31; $and47 = $45 & 65535; $46 = $sLTP$addr; $47 = $i; $arrayidx48 = (($46) + ($47<<1)|0); $48 = HEAP16[$arrayidx48>>1]|0; $conv49 = $48 << 16 >> 16; $mul50 = Math_imul($and47, $conv49)|0; $shr51 = $mul50 >> 16; $add52 = (($mul46) + ($shr51))|0; $49 = $sLTP_Q15$addr; $50 = $i; $arrayidx53 = (($49) + ($50<<2)|0); HEAP32[$arrayidx53>>2] = $add52; $51 = $i; $inc55 = (($51) + 1)|0; $i = $inc55; } } } while(0); $52 = $Gains_Q16$addr; $53 = $subfr$addr; $arrayidx58 = (($52) + ($53<<2)|0); $54 = HEAP32[$arrayidx58>>2]|0; $55 = $NSQ$addr; $prev_gain_Q16 = ((($55)) + 4344|0); $56 = HEAP32[$prev_gain_Q16>>2]|0; $cmp59 = ($54|0)!=($56|0); if (!($cmp59)) { STACKTOP = sp;return; } $57 = $NSQ$addr; $prev_gain_Q1662 = ((($57)) + 4344|0); $58 = HEAP32[$prev_gain_Q1662>>2]|0; $59 = $Gains_Q16$addr; $60 = $subfr$addr; $arrayidx63 = (($59) + ($60<<2)|0); $61 = HEAP32[$arrayidx63>>2]|0; $call64 = (_silk_DIV32_varQ_420($58,$61,16)|0); $gain_adj_Q16 = $call64; $62 = $NSQ$addr; $sLTP_shp_buf_idx = ((($62)) + 4336|0); $63 = HEAP32[$sLTP_shp_buf_idx>>2]|0; $64 = $psEncC$addr; $ltp_mem_length = ((($64)) + 4588|0); $65 = HEAP32[$ltp_mem_length>>2]|0; $sub65 = (($63) - ($65))|0; $i = $sub65; while(1) { $66 = $i; $67 = $NSQ$addr; $sLTP_shp_buf_idx67 = ((($67)) + 4336|0); $68 = HEAP32[$sLTP_shp_buf_idx67>>2]|0; $cmp68 = ($66|0)<($68|0); if (!($cmp68)) { break; } $69 = $gain_adj_Q16; $shr71 = $69 >> 16; $70 = $NSQ$addr; $sLTP_shp_Q14 = ((($70)) + 1280|0); $71 = $i; $arrayidx72 = (($sLTP_shp_Q14) + ($71<<2)|0); $72 = HEAP32[$arrayidx72>>2]|0; $conv73 = $72&65535; $conv74 = $conv73 << 16 >> 16; $mul75 = Math_imul($shr71, $conv74)|0; $73 = $gain_adj_Q16; $and76 = $73 & 65535; $74 = $NSQ$addr; $sLTP_shp_Q1477 = ((($74)) + 1280|0); $75 = $i; $arrayidx78 = (($sLTP_shp_Q1477) + ($75<<2)|0); $76 = HEAP32[$arrayidx78>>2]|0; $conv79 = $76&65535; $conv80 = $conv79 << 16 >> 16; $mul81 = Math_imul($and76, $conv80)|0; $shr82 = $mul81 >> 16; $add83 = (($mul75) + ($shr82))|0; $77 = $gain_adj_Q16; $78 = $NSQ$addr; $sLTP_shp_Q1484 = ((($78)) + 1280|0); $79 = $i; $arrayidx85 = (($sLTP_shp_Q1484) + ($79<<2)|0); $80 = HEAP32[$arrayidx85>>2]|0; $shr86 = $80 >> 15; $add87 = (($shr86) + 1)|0; $shr88 = $add87 >> 1; $mul89 = Math_imul($77, $shr88)|0; $add90 = (($add83) + ($mul89))|0; $81 = $NSQ$addr; $sLTP_shp_Q1491 = ((($81)) + 1280|0); $82 = $i; $arrayidx92 = (($sLTP_shp_Q1491) + ($82<<2)|0); HEAP32[$arrayidx92>>2] = $add90; $83 = $i; $inc94 = (($83) + 1)|0; $i = $inc94; } $84 = $signal_type$addr; $cmp96 = ($84|0)==(2); L24: do { if ($cmp96) { $85 = $NSQ$addr; $rewhite_flag98 = ((($85)) + 4348|0); $86 = HEAP32[$rewhite_flag98>>2]|0; $cmp99 = ($86|0)==(0); if ($cmp99) { $87 = $NSQ$addr; $sLTP_buf_idx102 = ((($87)) + 4332|0); $88 = HEAP32[$sLTP_buf_idx102>>2]|0; $89 = $lag; $sub103 = (($88) - ($89))|0; $sub104 = (($sub103) - 2)|0; $i = $sub104; while(1) { $90 = $i; $91 = $NSQ$addr; $sLTP_buf_idx106 = ((($91)) + 4332|0); $92 = HEAP32[$sLTP_buf_idx106>>2]|0; $cmp107 = ($90|0)<($92|0); if (!($cmp107)) { break L24; } $93 = $gain_adj_Q16; $shr110 = $93 >> 16; $94 = $sLTP_Q15$addr; $95 = $i; $arrayidx111 = (($94) + ($95<<2)|0); $96 = HEAP32[$arrayidx111>>2]|0; $conv112 = $96&65535; $conv113 = $conv112 << 16 >> 16; $mul114 = Math_imul($shr110, $conv113)|0; $97 = $gain_adj_Q16; $and115 = $97 & 65535; $98 = $sLTP_Q15$addr; $99 = $i; $arrayidx116 = (($98) + ($99<<2)|0); $100 = HEAP32[$arrayidx116>>2]|0; $conv117 = $100&65535; $conv118 = $conv117 << 16 >> 16; $mul119 = Math_imul($and115, $conv118)|0; $shr120 = $mul119 >> 16; $add121 = (($mul114) + ($shr120))|0; $101 = $gain_adj_Q16; $102 = $sLTP_Q15$addr; $103 = $i; $arrayidx122 = (($102) + ($103<<2)|0); $104 = HEAP32[$arrayidx122>>2]|0; $shr123 = $104 >> 15; $add124 = (($shr123) + 1)|0; $shr125 = $add124 >> 1; $mul126 = Math_imul($101, $shr125)|0; $add127 = (($add121) + ($mul126))|0; $105 = $sLTP_Q15$addr; $106 = $i; $arrayidx128 = (($105) + ($106<<2)|0); HEAP32[$arrayidx128>>2] = $add127; $107 = $i; $inc130 = (($107) + 1)|0; $i = $inc130; } } } } while(0); $108 = $gain_adj_Q16; $shr133 = $108 >> 16; $109 = $NSQ$addr; $sLF_AR_shp_Q14 = ((($109)) + 4320|0); $110 = HEAP32[$sLF_AR_shp_Q14>>2]|0; $conv134 = $110&65535; $conv135 = $conv134 << 16 >> 16; $mul136 = Math_imul($shr133, $conv135)|0; $111 = $gain_adj_Q16; $and137 = $111 & 65535; $112 = $NSQ$addr; $sLF_AR_shp_Q14138 = ((($112)) + 4320|0); $113 = HEAP32[$sLF_AR_shp_Q14138>>2]|0; $conv139 = $113&65535; $conv140 = $conv139 << 16 >> 16; $mul141 = Math_imul($and137, $conv140)|0; $shr142 = $mul141 >> 16; $add143 = (($mul136) + ($shr142))|0; $114 = $gain_adj_Q16; $115 = $NSQ$addr; $sLF_AR_shp_Q14144 = ((($115)) + 4320|0); $116 = HEAP32[$sLF_AR_shp_Q14144>>2]|0; $shr145 = $116 >> 15; $add146 = (($shr145) + 1)|0; $shr147 = $add146 >> 1; $mul148 = Math_imul($114, $shr147)|0; $add149 = (($add143) + ($mul148))|0; $117 = $NSQ$addr; $sLF_AR_shp_Q14150 = ((($117)) + 4320|0); HEAP32[$sLF_AR_shp_Q14150>>2] = $add149; $118 = $gain_adj_Q16; $shr151 = $118 >> 16; $119 = $NSQ$addr; $sDiff_shp_Q14 = ((($119)) + 4324|0); $120 = HEAP32[$sDiff_shp_Q14>>2]|0; $conv152 = $120&65535; $conv153 = $conv152 << 16 >> 16; $mul154 = Math_imul($shr151, $conv153)|0; $121 = $gain_adj_Q16; $and155 = $121 & 65535; $122 = $NSQ$addr; $sDiff_shp_Q14156 = ((($122)) + 4324|0); $123 = HEAP32[$sDiff_shp_Q14156>>2]|0; $conv157 = $123&65535; $conv158 = $conv157 << 16 >> 16; $mul159 = Math_imul($and155, $conv158)|0; $shr160 = $mul159 >> 16; $add161 = (($mul154) + ($shr160))|0; $124 = $gain_adj_Q16; $125 = $NSQ$addr; $sDiff_shp_Q14162 = ((($125)) + 4324|0); $126 = HEAP32[$sDiff_shp_Q14162>>2]|0; $shr163 = $126 >> 15; $add164 = (($shr163) + 1)|0; $shr165 = $add164 >> 1; $mul166 = Math_imul($124, $shr165)|0; $add167 = (($add161) + ($mul166))|0; $127 = $NSQ$addr; $sDiff_shp_Q14168 = ((($127)) + 4324|0); HEAP32[$sDiff_shp_Q14168>>2] = $add167; $i = 0; while(1) { $128 = $i; $cmp170 = ($128|0)<(16); if (!($cmp170)) { break; } $129 = $gain_adj_Q16; $shr173 = $129 >> 16; $130 = $NSQ$addr; $sLPC_Q14 = ((($130)) + 3840|0); $131 = $i; $arrayidx174 = (($sLPC_Q14) + ($131<<2)|0); $132 = HEAP32[$arrayidx174>>2]|0; $conv175 = $132&65535; $conv176 = $conv175 << 16 >> 16; $mul177 = Math_imul($shr173, $conv176)|0; $133 = $gain_adj_Q16; $and178 = $133 & 65535; $134 = $NSQ$addr; $sLPC_Q14179 = ((($134)) + 3840|0); $135 = $i; $arrayidx180 = (($sLPC_Q14179) + ($135<<2)|0); $136 = HEAP32[$arrayidx180>>2]|0; $conv181 = $136&65535; $conv182 = $conv181 << 16 >> 16; $mul183 = Math_imul($and178, $conv182)|0; $shr184 = $mul183 >> 16; $add185 = (($mul177) + ($shr184))|0; $137 = $gain_adj_Q16; $138 = $NSQ$addr; $sLPC_Q14186 = ((($138)) + 3840|0); $139 = $i; $arrayidx187 = (($sLPC_Q14186) + ($139<<2)|0); $140 = HEAP32[$arrayidx187>>2]|0; $shr188 = $140 >> 15; $add189 = (($shr188) + 1)|0; $shr190 = $add189 >> 1; $mul191 = Math_imul($137, $shr190)|0; $add192 = (($add185) + ($mul191))|0; $141 = $NSQ$addr; $sLPC_Q14193 = ((($141)) + 3840|0); $142 = $i; $arrayidx194 = (($sLPC_Q14193) + ($142<<2)|0); HEAP32[$arrayidx194>>2] = $add192; $143 = $i; $inc196 = (($143) + 1)|0; $i = $inc196; } $i = 0; while(1) { $144 = $i; $cmp199 = ($144|0)<(24); if (!($cmp199)) { break; } $145 = $gain_adj_Q16; $shr202 = $145 >> 16; $146 = $NSQ$addr; $sAR2_Q14 = ((($146)) + 4224|0); $147 = $i; $arrayidx203 = (($sAR2_Q14) + ($147<<2)|0); $148 = HEAP32[$arrayidx203>>2]|0; $conv204 = $148&65535; $conv205 = $conv204 << 16 >> 16; $mul206 = Math_imul($shr202, $conv205)|0; $149 = $gain_adj_Q16; $and207 = $149 & 65535; $150 = $NSQ$addr; $sAR2_Q14208 = ((($150)) + 4224|0); $151 = $i; $arrayidx209 = (($sAR2_Q14208) + ($151<<2)|0); $152 = HEAP32[$arrayidx209>>2]|0; $conv210 = $152&65535; $conv211 = $conv210 << 16 >> 16; $mul212 = Math_imul($and207, $conv211)|0; $shr213 = $mul212 >> 16; $add214 = (($mul206) + ($shr213))|0; $153 = $gain_adj_Q16; $154 = $NSQ$addr; $sAR2_Q14215 = ((($154)) + 4224|0); $155 = $i; $arrayidx216 = (($sAR2_Q14215) + ($155<<2)|0); $156 = HEAP32[$arrayidx216>>2]|0; $shr217 = $156 >> 15; $add218 = (($shr217) + 1)|0; $shr219 = $add218 >> 1; $mul220 = Math_imul($153, $shr219)|0; $add221 = (($add214) + ($mul220))|0; $157 = $NSQ$addr; $sAR2_Q14222 = ((($157)) + 4224|0); $158 = $i; $arrayidx223 = (($sAR2_Q14222) + ($158<<2)|0); HEAP32[$arrayidx223>>2] = $add221; $159 = $i; $inc225 = (($159) + 1)|0; $i = $inc225; } $160 = $Gains_Q16$addr; $161 = $subfr$addr; $arrayidx227 = (($160) + ($161<<2)|0); $162 = HEAP32[$arrayidx227>>2]|0; $163 = $NSQ$addr; $prev_gain_Q16228 = ((($163)) + 4344|0); HEAP32[$prev_gain_Q16228>>2] = $162; STACKTOP = sp;return; } function _silk_noise_shape_quantizer($NSQ,$signalType,$x_sc_Q10,$pulses,$xq,$sLTP_Q15,$a_Q12,$b_Q14,$AR_shp_Q13,$lag,$HarmShapeFIRPacked_Q14,$Tilt_Q14,$LF_shp_Q14,$Gain_Q16,$Lambda_Q10,$offset_Q10,$length,$shapingLPCOrder,$predictLPCOrder,$arch) { $NSQ = $NSQ|0; $signalType = $signalType|0; $x_sc_Q10 = $x_sc_Q10|0; $pulses = $pulses|0; $xq = $xq|0; $sLTP_Q15 = $sLTP_Q15|0; $a_Q12 = $a_Q12|0; $b_Q14 = $b_Q14|0; $AR_shp_Q13 = $AR_shp_Q13|0; $lag = $lag|0; $HarmShapeFIRPacked_Q14 = $HarmShapeFIRPacked_Q14|0; $Tilt_Q14 = $Tilt_Q14|0; $LF_shp_Q14 = $LF_shp_Q14|0; $Gain_Q16 = $Gain_Q16|0; $Lambda_Q10 = $Lambda_Q10|0; $offset_Q10 = $offset_Q10|0; $length = $length|0; $shapingLPCOrder = $shapingLPCOrder|0; $predictLPCOrder = $predictLPCOrder|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0; var $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0; var $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0; var $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0; var $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $AR_shp_Q13$addr = 0, $Gain_Q10 = 0, $Gain_Q16$addr = 0, $HarmShapeFIRPacked_Q14$addr = 0, $LF_shp_Q14$addr = 0, $LPC_exc_Q14 = 0, $LPC_pred_Q10 = 0; var $LTP_pred_Q13 = 0, $Lambda_Q10$addr = 0, $NSQ$addr = 0, $Tilt_Q14$addr = 0, $a_Q12$addr = 0, $add = 0, $add102 = 0, $add107 = 0, $add113 = 0, $add121 = 0, $add128 = 0, $add134 = 0, $add139 = 0, $add145 = 0, $add150 = 0, $add152 = 0, $add156 = 0, $add17 = 0, $add18 = 0, $add191 = 0; var $add2 = 0, $add207 = 0, $add208 = 0, $add223 = 0, $add252 = 0, $add253 = 0, $add254 = 0, $add276 = 0, $add283 = 0, $add289 = 0, $add30 = 0, $add301 = 0, $add303 = 0, $add31 = 0, $add313 = 0, $add315 = 0, $add318 = 0, $add320 = 0, $add335 = 0, $add337 = 0; var $add340 = 0, $add342 = 0, $add357 = 0, $add359 = 0, $add362 = 0, $add364 = 0, $add395 = 0, $add43 = 0, $add44 = 0, $add5 = 0, $add56 = 0, $add57 = 0, $add69 = 0, $add70 = 0, $add83 = 0, $add84 = 0, $and = 0, $and109 = 0, $and129 = 0, $and141 = 0; var $and25 = 0, $and308 = 0, $and330 = 0, $and352 = 0, $and38 = 0, $and51 = 0, $and64 = 0, $and78 = 0, $and97 = 0, $arch$addr = 0, $arrayidx = 0, $arrayidx120 = 0, $arrayidx127 = 0, $arrayidx135 = 0, $arrayidx140 = 0, $arrayidx159 = 0, $arrayidx19 = 0, $arrayidx21 = 0, $arrayidx24 = 0, $arrayidx26 = 0; var $arrayidx292 = 0, $arrayidx3 = 0, $arrayidx32 = 0, $arrayidx34 = 0, $arrayidx37 = 0, $arrayidx371 = 0, $arrayidx373 = 0, $arrayidx385 = 0, $arrayidx388 = 0, $arrayidx39 = 0, $arrayidx393 = 0, $arrayidx4 = 0, $arrayidx401 = 0, $arrayidx45 = 0, $arrayidx47 = 0, $arrayidx50 = 0, $arrayidx52 = 0, $arrayidx58 = 0, $arrayidx60 = 0, $arrayidx63 = 0; var $arrayidx65 = 0, $arrayidx88 = 0, $arrayidx96 = 0, $b_Q14$addr = 0, $call = 0, $call71 = 0, $cmp = 0, $cmp116 = 0, $cmp162 = 0, $cmp167 = 0, $cmp169 = 0, $cmp177 = 0, $cmp181 = 0, $cmp188 = 0, $cmp194 = 0, $cmp202 = 0, $cmp220 = 0, $cmp235 = 0, $cmp284 = 0, $cmp295 = 0; var $cmp322 = 0, $cmp344 = 0, $cmp7 = 0, $cond = 0, $cond174 = 0, $cond369 = 0, $conv = 0, $conv123 = 0, $conv124 = 0, $conv130 = 0, $conv131 = 0, $conv14 = 0, $conv209 = 0, $conv210 = 0, $conv211 = 0, $conv212 = 0, $conv214 = 0, $conv215 = 0, $conv216 = 0, $conv217 = 0; var $conv22 = 0, $conv224 = 0, $conv225 = 0, $conv226 = 0, $conv227 = 0, $conv229 = 0, $conv230 = 0, $conv231 = 0, $conv232 = 0, $conv240 = 0, $conv241 = 0, $conv242 = 0, $conv243 = 0, $conv245 = 0, $conv246 = 0, $conv247 = 0, $conv248 = 0, $conv256 = 0, $conv257 = 0, $conv258 = 0; var $conv259 = 0, $conv262 = 0, $conv263 = 0, $conv264 = 0, $conv265 = 0, $conv27 = 0, $conv271 = 0, $conv272 = 0, $conv273 = 0, $conv274 = 0, $conv278 = 0, $conv279 = 0, $conv280 = 0, $conv281 = 0, $conv291 = 0, $conv305 = 0, $conv306 = 0, $conv309 = 0, $conv310 = 0, $conv327 = 0; var $conv328 = 0, $conv331 = 0, $conv332 = 0, $conv349 = 0, $conv35 = 0, $conv350 = 0, $conv353 = 0, $conv354 = 0, $conv370 = 0, $conv394 = 0, $conv40 = 0, $conv48 = 0, $conv53 = 0, $conv61 = 0, $conv66 = 0, $conv74 = 0, $conv75 = 0, $conv79 = 0, $conv80 = 0, $conv90 = 0; var $conv91 = 0, $conv98 = 0, $conv99 = 0, $div = 0, $exc_Q14 = 0, $i = 0, $inc = 0, $inc391 = 0, $inc397 = 0, $incdec$ptr = 0, $incdec$ptr147 = 0, $incdec$ptr372 = 0, $lag$addr = 0, $length$addr = 0, $mul = 0, $mul100 = 0, $mul106 = 0, $mul11 = 0, $mul111 = 0, $mul125 = 0; var $mul132 = 0, $mul138 = 0, $mul143 = 0, $mul15 = 0, $mul213 = 0, $mul218 = 0, $mul228 = 0, $mul23 = 0, $mul233 = 0, $mul244 = 0, $mul249 = 0, $mul260 = 0, $mul266 = 0, $mul275 = 0, $mul28 = 0, $mul282 = 0, $mul307 = 0, $mul311 = 0, $mul317 = 0, $mul329 = 0; var $mul333 = 0, $mul339 = 0, $mul351 = 0, $mul355 = 0, $mul36 = 0, $mul361 = 0, $mul41 = 0, $mul49 = 0, $mul54 = 0, $mul62 = 0, $mul67 = 0, $mul76 = 0, $mul81 = 0, $mul92 = 0, $n_AR_Q12 = 0, $n_LF_Q12 = 0, $n_LTP_Q13 = 0, $offset_Q10$addr = 0, $pred_lag_ptr = 0, $predictLPCOrder$addr = 0; var $psLPC_Q14 = 0, $pulses$addr = 0, $q1_Q0 = 0, $q1_Q10 = 0, $q2_Q10 = 0, $r_Q10 = 0, $rand_seed = 0, $rand_seed161 = 0, $rand_seed294 = 0, $rand_seed392 = 0, $rand_seed396 = 0, $rand_seed6 = 0, $rd1_Q20 = 0, $rd2_Q20 = 0, $rdo_offset = 0, $rr_Q10 = 0, $sAR2_Q14 = 0, $sDiff_shp_Q14 = 0, $sDiff_shp_Q14376 = 0, $sDiff_shp_Q14377 = 0; var $sLF_AR_shp_Q14 = 0, $sLF_AR_shp_Q14103 = 0, $sLF_AR_shp_Q14108 = 0, $sLF_AR_shp_Q14380 = 0, $sLF_AR_shp_Q1472 = 0, $sLF_AR_shp_Q1477 = 0, $sLPC_Q14 = 0, $sLPC_Q14398 = 0, $sLPC_Q14400 = 0, $sLTP_Q15$addr = 0, $sLTP_buf_idx = 0, $sLTP_buf_idx387 = 0, $sLTP_buf_idx390 = 0, $sLTP_shp_Q14 = 0, $sLTP_shp_Q14383 = 0, $sLTP_shp_Q1485 = 0, $sLTP_shp_Q1493 = 0, $sLTP_shp_buf_idx = 0, $sLTP_shp_buf_idx384 = 0, $sLTP_shp_buf_idx389 = 0; var $sLTP_shp_buf_idx86 = 0, $sLTP_shp_buf_idx94 = 0, $shapingLPCOrder$addr = 0, $shl = 0, $shl146 = 0, $shl149 = 0, $shl205 = 0, $shl251 = 0, $shl293 = 0, $shl300 = 0, $shl302 = 0, $shl374 = 0, $shl378 = 0, $shl381 = 0, $shl386 = 0, $shp_lag_ptr = 0, $shr = 0, $shr101 = 0, $shr104 = 0, $shr105 = 0; var $shr110 = 0, $shr112 = 0, $shr122 = 0, $shr133 = 0, $shr136 = 0, $shr137 = 0, $shr142 = 0, $shr144 = 0, $shr151 = 0, $shr153 = 0, $shr155 = 0, $shr157 = 0, $shr16 = 0, $shr176 = 0, $shr185 = 0, $shr192 = 0, $shr20 = 0, $shr288 = 0, $shr29 = 0, $shr290 = 0; var $shr304 = 0, $shr312 = 0, $shr314 = 0, $shr316 = 0, $shr319 = 0, $shr321 = 0, $shr326 = 0, $shr33 = 0, $shr334 = 0, $shr336 = 0, $shr338 = 0, $shr341 = 0, $shr343 = 0, $shr348 = 0, $shr356 = 0, $shr358 = 0, $shr360 = 0, $shr363 = 0, $shr365 = 0, $shr42 = 0; var $shr46 = 0, $shr55 = 0, $shr59 = 0, $shr68 = 0, $shr73 = 0, $shr82 = 0, $shr89 = 0, $shr9 = 0, $signalType$addr = 0, $sub = 0, $sub1 = 0, $sub114 = 0, $sub115 = 0, $sub148 = 0, $sub160 = 0, $sub165 = 0, $sub175 = 0, $sub180 = 0, $sub184 = 0, $sub187 = 0; var $sub206 = 0, $sub238 = 0, $sub239 = 0, $sub255 = 0, $sub261 = 0, $sub270 = 0, $sub277 = 0, $sub298 = 0, $sub375 = 0, $sub379 = 0, $sub382 = 0, $sub87 = 0, $sub95 = 0, $tmp1 = 0, $tmp2 = 0, $x_sc_Q10$addr = 0, $xq$addr = 0, $xq_Q14 = 0, dest = 0, label = 0; var sp = 0, src = 0, stop = 0; sp = STACKTOP; STACKTOP = STACKTOP + 176|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(176|0); $NSQ$addr = $NSQ; $signalType$addr = $signalType; $x_sc_Q10$addr = $x_sc_Q10; $pulses$addr = $pulses; $xq$addr = $xq; $sLTP_Q15$addr = $sLTP_Q15; $a_Q12$addr = $a_Q12; $b_Q14$addr = $b_Q14; $AR_shp_Q13$addr = $AR_shp_Q13; $lag$addr = $lag; $HarmShapeFIRPacked_Q14$addr = $HarmShapeFIRPacked_Q14; $Tilt_Q14$addr = $Tilt_Q14; $LF_shp_Q14$addr = $LF_shp_Q14; $Gain_Q16$addr = $Gain_Q16; $Lambda_Q10$addr = $Lambda_Q10; $offset_Q10$addr = $offset_Q10; $length$addr = $length; $shapingLPCOrder$addr = $shapingLPCOrder; $predictLPCOrder$addr = $predictLPCOrder; $arch$addr = $arch; $0 = $NSQ$addr; $sLTP_shp_Q14 = ((($0)) + 1280|0); $1 = $NSQ$addr; $sLTP_shp_buf_idx = ((($1)) + 4336|0); $2 = HEAP32[$sLTP_shp_buf_idx>>2]|0; $3 = $lag$addr; $sub = (($2) - ($3))|0; $add = (($sub) + 1)|0; $arrayidx = (($sLTP_shp_Q14) + ($add<<2)|0); $shp_lag_ptr = $arrayidx; $4 = $sLTP_Q15$addr; $5 = $NSQ$addr; $sLTP_buf_idx = ((($5)) + 4332|0); $6 = HEAP32[$sLTP_buf_idx>>2]|0; $7 = $lag$addr; $sub1 = (($6) - ($7))|0; $add2 = (($sub1) + 2)|0; $arrayidx3 = (($4) + ($add2<<2)|0); $pred_lag_ptr = $arrayidx3; $8 = $Gain_Q16$addr; $shr = $8 >> 6; $Gain_Q10 = $shr; $9 = $NSQ$addr; $sLPC_Q14 = ((($9)) + 3840|0); $arrayidx4 = ((($sLPC_Q14)) + 60|0); $psLPC_Q14 = $arrayidx4; $i = 0; while(1) { $10 = $i; $11 = $length$addr; $cmp = ($10|0)<($11|0); $12 = $NSQ$addr; if (!($cmp)) { break; } $rand_seed = ((($12)) + 4340|0); $13 = HEAP32[$rand_seed>>2]|0; $mul = Math_imul($13, 196314165)|0; $add5 = (907633515 + ($mul))|0; $14 = $NSQ$addr; $rand_seed6 = ((($14)) + 4340|0); HEAP32[$rand_seed6>>2] = $add5; $15 = $psLPC_Q14; $16 = $a_Q12$addr; $17 = $predictLPCOrder$addr; $call = (_silk_noise_shape_quantizer_short_prediction_c($15,$16,$17)|0); $LPC_pred_Q10 = $call; $18 = $signalType$addr; $cmp7 = ($18|0)==(2); if ($cmp7) { $LTP_pred_Q13 = 2; $19 = $LTP_pred_Q13; $20 = $pred_lag_ptr; $21 = HEAP32[$20>>2]|0; $shr9 = $21 >> 16; $22 = $b_Q14$addr; $23 = HEAP16[$22>>1]|0; $conv = $23 << 16 >> 16; $mul11 = Math_imul($shr9, $conv)|0; $24 = $pred_lag_ptr; $25 = HEAP32[$24>>2]|0; $and = $25 & 65535; $26 = $b_Q14$addr; $27 = HEAP16[$26>>1]|0; $conv14 = $27 << 16 >> 16; $mul15 = Math_imul($and, $conv14)|0; $shr16 = $mul15 >> 16; $add17 = (($mul11) + ($shr16))|0; $add18 = (($19) + ($add17))|0; $LTP_pred_Q13 = $add18; $28 = $LTP_pred_Q13; $29 = $pred_lag_ptr; $arrayidx19 = ((($29)) + -4|0); $30 = HEAP32[$arrayidx19>>2]|0; $shr20 = $30 >> 16; $31 = $b_Q14$addr; $arrayidx21 = ((($31)) + 2|0); $32 = HEAP16[$arrayidx21>>1]|0; $conv22 = $32 << 16 >> 16; $mul23 = Math_imul($shr20, $conv22)|0; $33 = $pred_lag_ptr; $arrayidx24 = ((($33)) + -4|0); $34 = HEAP32[$arrayidx24>>2]|0; $and25 = $34 & 65535; $35 = $b_Q14$addr; $arrayidx26 = ((($35)) + 2|0); $36 = HEAP16[$arrayidx26>>1]|0; $conv27 = $36 << 16 >> 16; $mul28 = Math_imul($and25, $conv27)|0; $shr29 = $mul28 >> 16; $add30 = (($mul23) + ($shr29))|0; $add31 = (($28) + ($add30))|0; $LTP_pred_Q13 = $add31; $37 = $LTP_pred_Q13; $38 = $pred_lag_ptr; $arrayidx32 = ((($38)) + -8|0); $39 = HEAP32[$arrayidx32>>2]|0; $shr33 = $39 >> 16; $40 = $b_Q14$addr; $arrayidx34 = ((($40)) + 4|0); $41 = HEAP16[$arrayidx34>>1]|0; $conv35 = $41 << 16 >> 16; $mul36 = Math_imul($shr33, $conv35)|0; $42 = $pred_lag_ptr; $arrayidx37 = ((($42)) + -8|0); $43 = HEAP32[$arrayidx37>>2]|0; $and38 = $43 & 65535; $44 = $b_Q14$addr; $arrayidx39 = ((($44)) + 4|0); $45 = HEAP16[$arrayidx39>>1]|0; $conv40 = $45 << 16 >> 16; $mul41 = Math_imul($and38, $conv40)|0; $shr42 = $mul41 >> 16; $add43 = (($mul36) + ($shr42))|0; $add44 = (($37) + ($add43))|0; $LTP_pred_Q13 = $add44; $46 = $LTP_pred_Q13; $47 = $pred_lag_ptr; $arrayidx45 = ((($47)) + -12|0); $48 = HEAP32[$arrayidx45>>2]|0; $shr46 = $48 >> 16; $49 = $b_Q14$addr; $arrayidx47 = ((($49)) + 6|0); $50 = HEAP16[$arrayidx47>>1]|0; $conv48 = $50 << 16 >> 16; $mul49 = Math_imul($shr46, $conv48)|0; $51 = $pred_lag_ptr; $arrayidx50 = ((($51)) + -12|0); $52 = HEAP32[$arrayidx50>>2]|0; $and51 = $52 & 65535; $53 = $b_Q14$addr; $arrayidx52 = ((($53)) + 6|0); $54 = HEAP16[$arrayidx52>>1]|0; $conv53 = $54 << 16 >> 16; $mul54 = Math_imul($and51, $conv53)|0; $shr55 = $mul54 >> 16; $add56 = (($mul49) + ($shr55))|0; $add57 = (($46) + ($add56))|0; $LTP_pred_Q13 = $add57; $55 = $LTP_pred_Q13; $56 = $pred_lag_ptr; $arrayidx58 = ((($56)) + -16|0); $57 = HEAP32[$arrayidx58>>2]|0; $shr59 = $57 >> 16; $58 = $b_Q14$addr; $arrayidx60 = ((($58)) + 8|0); $59 = HEAP16[$arrayidx60>>1]|0; $conv61 = $59 << 16 >> 16; $mul62 = Math_imul($shr59, $conv61)|0; $60 = $pred_lag_ptr; $arrayidx63 = ((($60)) + -16|0); $61 = HEAP32[$arrayidx63>>2]|0; $and64 = $61 & 65535; $62 = $b_Q14$addr; $arrayidx65 = ((($62)) + 8|0); $63 = HEAP16[$arrayidx65>>1]|0; $conv66 = $63 << 16 >> 16; $mul67 = Math_imul($and64, $conv66)|0; $shr68 = $mul67 >> 16; $add69 = (($mul62) + ($shr68))|0; $add70 = (($55) + ($add69))|0; $LTP_pred_Q13 = $add70; $64 = $pred_lag_ptr; $incdec$ptr = ((($64)) + 4|0); $pred_lag_ptr = $incdec$ptr; } else { $LTP_pred_Q13 = 0; } $65 = $NSQ$addr; $sDiff_shp_Q14 = ((($65)) + 4324|0); $66 = $NSQ$addr; $sAR2_Q14 = ((($66)) + 4224|0); $67 = $AR_shp_Q13$addr; $68 = $shapingLPCOrder$addr; $call71 = (_silk_NSQ_noise_shape_feedback_loop_c($sDiff_shp_Q14,$sAR2_Q14,$67,$68)|0); $n_AR_Q12 = $call71; $69 = $n_AR_Q12; $70 = $NSQ$addr; $sLF_AR_shp_Q1472 = ((($70)) + 4320|0); $71 = HEAP32[$sLF_AR_shp_Q1472>>2]|0; $shr73 = $71 >> 16; $72 = $Tilt_Q14$addr; $conv74 = $72&65535; $conv75 = $conv74 << 16 >> 16; $mul76 = Math_imul($shr73, $conv75)|0; $73 = $NSQ$addr; $sLF_AR_shp_Q1477 = ((($73)) + 4320|0); $74 = HEAP32[$sLF_AR_shp_Q1477>>2]|0; $and78 = $74 & 65535; $75 = $Tilt_Q14$addr; $conv79 = $75&65535; $conv80 = $conv79 << 16 >> 16; $mul81 = Math_imul($and78, $conv80)|0; $shr82 = $mul81 >> 16; $add83 = (($mul76) + ($shr82))|0; $add84 = (($69) + ($add83))|0; $n_AR_Q12 = $add84; $76 = $NSQ$addr; $sLTP_shp_Q1485 = ((($76)) + 1280|0); $77 = $NSQ$addr; $sLTP_shp_buf_idx86 = ((($77)) + 4336|0); $78 = HEAP32[$sLTP_shp_buf_idx86>>2]|0; $sub87 = (($78) - 1)|0; $arrayidx88 = (($sLTP_shp_Q1485) + ($sub87<<2)|0); $79 = HEAP32[$arrayidx88>>2]|0; $shr89 = $79 >> 16; $80 = $LF_shp_Q14$addr; $conv90 = $80&65535; $conv91 = $conv90 << 16 >> 16; $mul92 = Math_imul($shr89, $conv91)|0; $81 = $NSQ$addr; $sLTP_shp_Q1493 = ((($81)) + 1280|0); $82 = $NSQ$addr; $sLTP_shp_buf_idx94 = ((($82)) + 4336|0); $83 = HEAP32[$sLTP_shp_buf_idx94>>2]|0; $sub95 = (($83) - 1)|0; $arrayidx96 = (($sLTP_shp_Q1493) + ($sub95<<2)|0); $84 = HEAP32[$arrayidx96>>2]|0; $and97 = $84 & 65535; $85 = $LF_shp_Q14$addr; $conv98 = $85&65535; $conv99 = $conv98 << 16 >> 16; $mul100 = Math_imul($and97, $conv99)|0; $shr101 = $mul100 >> 16; $add102 = (($mul92) + ($shr101))|0; $n_LF_Q12 = $add102; $86 = $n_LF_Q12; $87 = $NSQ$addr; $sLF_AR_shp_Q14103 = ((($87)) + 4320|0); $88 = HEAP32[$sLF_AR_shp_Q14103>>2]|0; $shr104 = $88 >> 16; $89 = $LF_shp_Q14$addr; $shr105 = $89 >> 16; $mul106 = Math_imul($shr104, $shr105)|0; $add107 = (($86) + ($mul106))|0; $90 = $NSQ$addr; $sLF_AR_shp_Q14108 = ((($90)) + 4320|0); $91 = HEAP32[$sLF_AR_shp_Q14108>>2]|0; $and109 = $91 & 65535; $92 = $LF_shp_Q14$addr; $shr110 = $92 >> 16; $mul111 = Math_imul($and109, $shr110)|0; $shr112 = $mul111 >> 16; $add113 = (($add107) + ($shr112))|0; $n_LF_Q12 = $add113; $93 = $LPC_pred_Q10; $shl = $93 << 2; $94 = $n_AR_Q12; $sub114 = (($shl) - ($94))|0; $tmp1 = $sub114; $95 = $tmp1; $96 = $n_LF_Q12; $sub115 = (($95) - ($96))|0; $tmp1 = $sub115; $97 = $lag$addr; $cmp116 = ($97|0)>(0); if ($cmp116) { $98 = $shp_lag_ptr; $99 = HEAP32[$98>>2]|0; $100 = $shp_lag_ptr; $arrayidx120 = ((($100)) + -8|0); $101 = HEAP32[$arrayidx120>>2]|0; $add121 = (($99) + ($101))|0; $shr122 = $add121 >> 16; $102 = $HarmShapeFIRPacked_Q14$addr; $conv123 = $102&65535; $conv124 = $conv123 << 16 >> 16; $mul125 = Math_imul($shr122, $conv124)|0; $103 = $shp_lag_ptr; $104 = HEAP32[$103>>2]|0; $105 = $shp_lag_ptr; $arrayidx127 = ((($105)) + -8|0); $106 = HEAP32[$arrayidx127>>2]|0; $add128 = (($104) + ($106))|0; $and129 = $add128 & 65535; $107 = $HarmShapeFIRPacked_Q14$addr; $conv130 = $107&65535; $conv131 = $conv130 << 16 >> 16; $mul132 = Math_imul($and129, $conv131)|0; $shr133 = $mul132 >> 16; $add134 = (($mul125) + ($shr133))|0; $n_LTP_Q13 = $add134; $108 = $n_LTP_Q13; $109 = $shp_lag_ptr; $arrayidx135 = ((($109)) + -4|0); $110 = HEAP32[$arrayidx135>>2]|0; $shr136 = $110 >> 16; $111 = $HarmShapeFIRPacked_Q14$addr; $shr137 = $111 >> 16; $mul138 = Math_imul($shr136, $shr137)|0; $add139 = (($108) + ($mul138))|0; $112 = $shp_lag_ptr; $arrayidx140 = ((($112)) + -4|0); $113 = HEAP32[$arrayidx140>>2]|0; $and141 = $113 & 65535; $114 = $HarmShapeFIRPacked_Q14$addr; $shr142 = $114 >> 16; $mul143 = Math_imul($and141, $shr142)|0; $shr144 = $mul143 >> 16; $add145 = (($add139) + ($shr144))|0; $n_LTP_Q13 = $add145; $115 = $n_LTP_Q13; $shl146 = $115 << 1; $n_LTP_Q13 = $shl146; $116 = $shp_lag_ptr; $incdec$ptr147 = ((($116)) + 4|0); $shp_lag_ptr = $incdec$ptr147; $117 = $LTP_pred_Q13; $118 = $n_LTP_Q13; $sub148 = (($117) - ($118))|0; $tmp2 = $sub148; $119 = $tmp2; $120 = $tmp1; $shl149 = $120 << 1; $add150 = (($119) + ($shl149))|0; $tmp1 = $add150; $121 = $tmp1; $shr151 = $121 >> 2; $add152 = (($shr151) + 1)|0; $shr153 = $add152 >> 1; $tmp1 = $shr153; } else { $122 = $tmp1; $shr155 = $122 >> 1; $add156 = (($shr155) + 1)|0; $shr157 = $add156 >> 1; $tmp1 = $shr157; } $123 = $x_sc_Q10$addr; $124 = $i; $arrayidx159 = (($123) + ($124<<2)|0); $125 = HEAP32[$arrayidx159>>2]|0; $126 = $tmp1; $sub160 = (($125) - ($126))|0; $r_Q10 = $sub160; $127 = $NSQ$addr; $rand_seed161 = ((($127)) + 4340|0); $128 = HEAP32[$rand_seed161>>2]|0; $cmp162 = ($128|0)<(0); if ($cmp162) { $129 = $r_Q10; $sub165 = (0 - ($129))|0; $r_Q10 = $sub165; } $130 = $r_Q10; $cmp167 = ($130|0)>(30720); if ($cmp167) { $cond174 = 30720; } else { $131 = $r_Q10; $cmp169 = ($131|0)<(-31744); $132 = $r_Q10; $cond = $cmp169 ? -31744 : $132; $cond174 = $cond; } $r_Q10 = $cond174; $133 = $r_Q10; $134 = $offset_Q10$addr; $sub175 = (($133) - ($134))|0; $q1_Q10 = $sub175; $135 = $q1_Q10; $shr176 = $135 >> 10; $q1_Q0 = $shr176; $136 = $Lambda_Q10$addr; $cmp177 = ($136|0)>(2048); do { if ($cmp177) { $137 = $Lambda_Q10$addr; $div = (($137|0) / 2)&-1; $sub180 = (($div) - 512)|0; $rdo_offset = $sub180; $138 = $q1_Q10; $139 = $rdo_offset; $cmp181 = ($138|0)>($139|0); $140 = $q1_Q10; $141 = $rdo_offset; if ($cmp181) { $sub184 = (($140) - ($141))|0; $shr185 = $sub184 >> 10; $q1_Q0 = $shr185; break; } $sub187 = (0 - ($141))|0; $cmp188 = ($140|0)<($sub187|0); $142 = $q1_Q10; if ($cmp188) { $143 = $rdo_offset; $add191 = (($142) + ($143))|0; $shr192 = $add191 >> 10; $q1_Q0 = $shr192; break; } $cmp194 = ($142|0)<(0); if ($cmp194) { $q1_Q0 = -1; break; } else { $q1_Q0 = 0; break; } } } while(0); $144 = $q1_Q0; $cmp202 = ($144|0)>(0); $145 = $q1_Q0; do { if ($cmp202) { $shl205 = $145 << 10; $sub206 = (($shl205) - 80)|0; $q1_Q10 = $sub206; $146 = $q1_Q10; $147 = $offset_Q10$addr; $add207 = (($146) + ($147))|0; $q1_Q10 = $add207; $148 = $q1_Q10; $add208 = (($148) + 1024)|0; $q2_Q10 = $add208; $149 = $q1_Q10; $conv209 = $149&65535; $conv210 = $conv209 << 16 >> 16; $150 = $Lambda_Q10$addr; $conv211 = $150&65535; $conv212 = $conv211 << 16 >> 16; $mul213 = Math_imul($conv210, $conv212)|0; $rd1_Q20 = $mul213; $151 = $q2_Q10; $conv214 = $151&65535; $conv215 = $conv214 << 16 >> 16; $152 = $Lambda_Q10$addr; $conv216 = $152&65535; $conv217 = $conv216 << 16 >> 16; $mul218 = Math_imul($conv215, $conv217)|0; $rd2_Q20 = $mul218; } else { $cmp220 = ($145|0)==(0); if ($cmp220) { $153 = $offset_Q10$addr; $q1_Q10 = $153; $154 = $q1_Q10; $add223 = (($154) + 944)|0; $q2_Q10 = $add223; $155 = $q1_Q10; $conv224 = $155&65535; $conv225 = $conv224 << 16 >> 16; $156 = $Lambda_Q10$addr; $conv226 = $156&65535; $conv227 = $conv226 << 16 >> 16; $mul228 = Math_imul($conv225, $conv227)|0; $rd1_Q20 = $mul228; $157 = $q2_Q10; $conv229 = $157&65535; $conv230 = $conv229 << 16 >> 16; $158 = $Lambda_Q10$addr; $conv231 = $158&65535; $conv232 = $conv231 << 16 >> 16; $mul233 = Math_imul($conv230, $conv232)|0; $rd2_Q20 = $mul233; break; } $159 = $q1_Q0; $cmp235 = ($159|0)==(-1); if ($cmp235) { $160 = $offset_Q10$addr; $q2_Q10 = $160; $161 = $q2_Q10; $sub238 = (($161) - 944)|0; $q1_Q10 = $sub238; $162 = $q1_Q10; $sub239 = (0 - ($162))|0; $conv240 = $sub239&65535; $conv241 = $conv240 << 16 >> 16; $163 = $Lambda_Q10$addr; $conv242 = $163&65535; $conv243 = $conv242 << 16 >> 16; $mul244 = Math_imul($conv241, $conv243)|0; $rd1_Q20 = $mul244; $164 = $q2_Q10; $conv245 = $164&65535; $conv246 = $conv245 << 16 >> 16; $165 = $Lambda_Q10$addr; $conv247 = $165&65535; $conv248 = $conv247 << 16 >> 16; $mul249 = Math_imul($conv246, $conv248)|0; $rd2_Q20 = $mul249; break; } else { $166 = $q1_Q0; $shl251 = $166 << 10; $add252 = (($shl251) + 80)|0; $q1_Q10 = $add252; $167 = $q1_Q10; $168 = $offset_Q10$addr; $add253 = (($167) + ($168))|0; $q1_Q10 = $add253; $169 = $q1_Q10; $add254 = (($169) + 1024)|0; $q2_Q10 = $add254; $170 = $q1_Q10; $sub255 = (0 - ($170))|0; $conv256 = $sub255&65535; $conv257 = $conv256 << 16 >> 16; $171 = $Lambda_Q10$addr; $conv258 = $171&65535; $conv259 = $conv258 << 16 >> 16; $mul260 = Math_imul($conv257, $conv259)|0; $rd1_Q20 = $mul260; $172 = $q2_Q10; $sub261 = (0 - ($172))|0; $conv262 = $sub261&65535; $conv263 = $conv262 << 16 >> 16; $173 = $Lambda_Q10$addr; $conv264 = $173&65535; $conv265 = $conv264 << 16 >> 16; $mul266 = Math_imul($conv263, $conv265)|0; $rd2_Q20 = $mul266; break; } } } while(0); $174 = $r_Q10; $175 = $q1_Q10; $sub270 = (($174) - ($175))|0; $rr_Q10 = $sub270; $176 = $rd1_Q20; $177 = $rr_Q10; $conv271 = $177&65535; $conv272 = $conv271 << 16 >> 16; $178 = $rr_Q10; $conv273 = $178&65535; $conv274 = $conv273 << 16 >> 16; $mul275 = Math_imul($conv272, $conv274)|0; $add276 = (($176) + ($mul275))|0; $rd1_Q20 = $add276; $179 = $r_Q10; $180 = $q2_Q10; $sub277 = (($179) - ($180))|0; $rr_Q10 = $sub277; $181 = $rd2_Q20; $182 = $rr_Q10; $conv278 = $182&65535; $conv279 = $conv278 << 16 >> 16; $183 = $rr_Q10; $conv280 = $183&65535; $conv281 = $conv280 << 16 >> 16; $mul282 = Math_imul($conv279, $conv281)|0; $add283 = (($181) + ($mul282))|0; $rd2_Q20 = $add283; $184 = $rd2_Q20; $185 = $rd1_Q20; $cmp284 = ($184|0)<($185|0); if ($cmp284) { $186 = $q2_Q10; $q1_Q10 = $186; } $187 = $q1_Q10; $shr288 = $187 >> 9; $add289 = (($shr288) + 1)|0; $shr290 = $add289 >> 1; $conv291 = $shr290&255; $188 = $pulses$addr; $189 = $i; $arrayidx292 = (($188) + ($189)|0); HEAP8[$arrayidx292>>0] = $conv291; $190 = $q1_Q10; $shl293 = $190 << 4; $exc_Q14 = $shl293; $191 = $NSQ$addr; $rand_seed294 = ((($191)) + 4340|0); $192 = HEAP32[$rand_seed294>>2]|0; $cmp295 = ($192|0)<(0); if ($cmp295) { $193 = $exc_Q14; $sub298 = (0 - ($193))|0; $exc_Q14 = $sub298; } $194 = $exc_Q14; $195 = $LTP_pred_Q13; $shl300 = $195 << 1; $add301 = (($194) + ($shl300))|0; $LPC_exc_Q14 = $add301; $196 = $LPC_exc_Q14; $197 = $LPC_pred_Q10; $shl302 = $197 << 4; $add303 = (($196) + ($shl302))|0; $xq_Q14 = $add303; $198 = $xq_Q14; $shr304 = $198 >> 16; $199 = $Gain_Q10; $conv305 = $199&65535; $conv306 = $conv305 << 16 >> 16; $mul307 = Math_imul($shr304, $conv306)|0; $200 = $xq_Q14; $and308 = $200 & 65535; $201 = $Gain_Q10; $conv309 = $201&65535; $conv310 = $conv309 << 16 >> 16; $mul311 = Math_imul($and308, $conv310)|0; $shr312 = $mul311 >> 16; $add313 = (($mul307) + ($shr312))|0; $202 = $xq_Q14; $203 = $Gain_Q10; $shr314 = $203 >> 15; $add315 = (($shr314) + 1)|0; $shr316 = $add315 >> 1; $mul317 = Math_imul($202, $shr316)|0; $add318 = (($add313) + ($mul317))|0; $shr319 = $add318 >> 7; $add320 = (($shr319) + 1)|0; $shr321 = $add320 >> 1; $cmp322 = ($shr321|0)>(32767); if ($cmp322) { $cond369 = 32767; } else { $204 = $xq_Q14; $shr326 = $204 >> 16; $205 = $Gain_Q10; $conv327 = $205&65535; $conv328 = $conv327 << 16 >> 16; $mul329 = Math_imul($shr326, $conv328)|0; $206 = $xq_Q14; $and330 = $206 & 65535; $207 = $Gain_Q10; $conv331 = $207&65535; $conv332 = $conv331 << 16 >> 16; $mul333 = Math_imul($and330, $conv332)|0; $shr334 = $mul333 >> 16; $add335 = (($mul329) + ($shr334))|0; $208 = $xq_Q14; $209 = $Gain_Q10; $shr336 = $209 >> 15; $add337 = (($shr336) + 1)|0; $shr338 = $add337 >> 1; $mul339 = Math_imul($208, $shr338)|0; $add340 = (($add335) + ($mul339))|0; $shr341 = $add340 >> 7; $add342 = (($shr341) + 1)|0; $shr343 = $add342 >> 1; $cmp344 = ($shr343|0)<(-32768); if ($cmp344) { $cond369 = -32768; } else { $210 = $xq_Q14; $shr348 = $210 >> 16; $211 = $Gain_Q10; $conv349 = $211&65535; $conv350 = $conv349 << 16 >> 16; $mul351 = Math_imul($shr348, $conv350)|0; $212 = $xq_Q14; $and352 = $212 & 65535; $213 = $Gain_Q10; $conv353 = $213&65535; $conv354 = $conv353 << 16 >> 16; $mul355 = Math_imul($and352, $conv354)|0; $shr356 = $mul355 >> 16; $add357 = (($mul351) + ($shr356))|0; $214 = $xq_Q14; $215 = $Gain_Q10; $shr358 = $215 >> 15; $add359 = (($shr358) + 1)|0; $shr360 = $add359 >> 1; $mul361 = Math_imul($214, $shr360)|0; $add362 = (($add357) + ($mul361))|0; $shr363 = $add362 >> 7; $add364 = (($shr363) + 1)|0; $shr365 = $add364 >> 1; $cond369 = $shr365; } } $conv370 = $cond369&65535; $216 = $xq$addr; $217 = $i; $arrayidx371 = (($216) + ($217<<1)|0); HEAP16[$arrayidx371>>1] = $conv370; $218 = $psLPC_Q14; $incdec$ptr372 = ((($218)) + 4|0); $psLPC_Q14 = $incdec$ptr372; $219 = $xq_Q14; $220 = $psLPC_Q14; HEAP32[$220>>2] = $219; $221 = $xq_Q14; $222 = $x_sc_Q10$addr; $223 = $i; $arrayidx373 = (($222) + ($223<<2)|0); $224 = HEAP32[$arrayidx373>>2]|0; $shl374 = $224 << 4; $sub375 = (($221) - ($shl374))|0; $225 = $NSQ$addr; $sDiff_shp_Q14376 = ((($225)) + 4324|0); HEAP32[$sDiff_shp_Q14376>>2] = $sub375; $226 = $NSQ$addr; $sDiff_shp_Q14377 = ((($226)) + 4324|0); $227 = HEAP32[$sDiff_shp_Q14377>>2]|0; $228 = $n_AR_Q12; $shl378 = $228 << 2; $sub379 = (($227) - ($shl378))|0; $sLF_AR_shp_Q14 = $sub379; $229 = $sLF_AR_shp_Q14; $230 = $NSQ$addr; $sLF_AR_shp_Q14380 = ((($230)) + 4320|0); HEAP32[$sLF_AR_shp_Q14380>>2] = $229; $231 = $sLF_AR_shp_Q14; $232 = $n_LF_Q12; $shl381 = $232 << 2; $sub382 = (($231) - ($shl381))|0; $233 = $NSQ$addr; $sLTP_shp_Q14383 = ((($233)) + 1280|0); $234 = $NSQ$addr; $sLTP_shp_buf_idx384 = ((($234)) + 4336|0); $235 = HEAP32[$sLTP_shp_buf_idx384>>2]|0; $arrayidx385 = (($sLTP_shp_Q14383) + ($235<<2)|0); HEAP32[$arrayidx385>>2] = $sub382; $236 = $LPC_exc_Q14; $shl386 = $236 << 1; $237 = $sLTP_Q15$addr; $238 = $NSQ$addr; $sLTP_buf_idx387 = ((($238)) + 4332|0); $239 = HEAP32[$sLTP_buf_idx387>>2]|0; $arrayidx388 = (($237) + ($239<<2)|0); HEAP32[$arrayidx388>>2] = $shl386; $240 = $NSQ$addr; $sLTP_shp_buf_idx389 = ((($240)) + 4336|0); $241 = HEAP32[$sLTP_shp_buf_idx389>>2]|0; $inc = (($241) + 1)|0; HEAP32[$sLTP_shp_buf_idx389>>2] = $inc; $242 = $NSQ$addr; $sLTP_buf_idx390 = ((($242)) + 4332|0); $243 = HEAP32[$sLTP_buf_idx390>>2]|0; $inc391 = (($243) + 1)|0; HEAP32[$sLTP_buf_idx390>>2] = $inc391; $244 = $NSQ$addr; $rand_seed392 = ((($244)) + 4340|0); $245 = HEAP32[$rand_seed392>>2]|0; $246 = $pulses$addr; $247 = $i; $arrayidx393 = (($246) + ($247)|0); $248 = HEAP8[$arrayidx393>>0]|0; $conv394 = $248 << 24 >> 24; $add395 = (($245) + ($conv394))|0; $249 = $NSQ$addr; $rand_seed396 = ((($249)) + 4340|0); HEAP32[$rand_seed396>>2] = $add395; $250 = $i; $inc397 = (($250) + 1)|0; $i = $inc397; } $sLPC_Q14398 = ((($12)) + 3840|0); $251 = $NSQ$addr; $sLPC_Q14400 = ((($251)) + 3840|0); $252 = $length$addr; $arrayidx401 = (($sLPC_Q14400) + ($252<<2)|0); dest=$sLPC_Q14398; src=$arrayidx401; stop=dest+64|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); STACKTOP = sp;return; } function _silk_noise_shape_quantizer_short_prediction_c($buf32,$coef16,$order) { $buf32 = $buf32|0; $coef16 = $coef16|0; $order = $order|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0; var $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0; var $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0; var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0; var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0; var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $add = 0, $add111 = 0, $add112 = 0, $add124 = 0, $add125 = 0, $add138 = 0, $add139 = 0, $add151 = 0, $add152 = 0, $add164 = 0, $add165 = 0, $add177 = 0, $add178 = 0; var $add190 = 0, $add191 = 0, $add20 = 0, $add203 = 0, $add204 = 0, $add21 = 0, $add33 = 0, $add34 = 0, $add46 = 0, $add47 = 0, $add59 = 0, $add60 = 0, $add72 = 0, $add73 = 0, $add8 = 0, $add85 = 0, $add86 = 0, $add98 = 0, $add99 = 0, $and = 0; var $and106 = 0, $and119 = 0, $and133 = 0, $and146 = 0, $and15 = 0, $and159 = 0, $and172 = 0, $and185 = 0, $and198 = 0, $and28 = 0, $and41 = 0, $and54 = 0, $and67 = 0, $and80 = 0, $and93 = 0, $arrayidx100 = 0, $arrayidx102 = 0, $arrayidx105 = 0, $arrayidx107 = 0, $arrayidx11 = 0; var $arrayidx113 = 0, $arrayidx115 = 0, $arrayidx118 = 0, $arrayidx120 = 0, $arrayidx127 = 0, $arrayidx129 = 0, $arrayidx132 = 0, $arrayidx134 = 0, $arrayidx14 = 0, $arrayidx140 = 0, $arrayidx142 = 0, $arrayidx145 = 0, $arrayidx147 = 0, $arrayidx153 = 0, $arrayidx155 = 0, $arrayidx158 = 0, $arrayidx16 = 0, $arrayidx160 = 0, $arrayidx166 = 0, $arrayidx168 = 0; var $arrayidx171 = 0, $arrayidx173 = 0, $arrayidx179 = 0, $arrayidx181 = 0, $arrayidx184 = 0, $arrayidx186 = 0, $arrayidx192 = 0, $arrayidx194 = 0, $arrayidx197 = 0, $arrayidx199 = 0, $arrayidx22 = 0, $arrayidx24 = 0, $arrayidx27 = 0, $arrayidx29 = 0, $arrayidx35 = 0, $arrayidx37 = 0, $arrayidx40 = 0, $arrayidx42 = 0, $arrayidx48 = 0, $arrayidx50 = 0; var $arrayidx53 = 0, $arrayidx55 = 0, $arrayidx61 = 0, $arrayidx63 = 0, $arrayidx66 = 0, $arrayidx68 = 0, $arrayidx74 = 0, $arrayidx76 = 0, $arrayidx79 = 0, $arrayidx81 = 0, $arrayidx87 = 0, $arrayidx89 = 0, $arrayidx9 = 0, $arrayidx92 = 0, $arrayidx94 = 0, $buf32$addr = 0, $cmp = 0, $coef16$addr = 0, $conv = 0, $conv103 = 0; var $conv108 = 0, $conv116 = 0, $conv12 = 0, $conv121 = 0, $conv130 = 0, $conv135 = 0, $conv143 = 0, $conv148 = 0, $conv156 = 0, $conv161 = 0, $conv169 = 0, $conv17 = 0, $conv174 = 0, $conv182 = 0, $conv187 = 0, $conv195 = 0, $conv200 = 0, $conv25 = 0, $conv30 = 0, $conv38 = 0; var $conv43 = 0, $conv5 = 0, $conv51 = 0, $conv56 = 0, $conv64 = 0, $conv69 = 0, $conv77 = 0, $conv82 = 0, $conv90 = 0, $conv95 = 0, $mul = 0, $mul104 = 0, $mul109 = 0, $mul117 = 0, $mul122 = 0, $mul13 = 0, $mul131 = 0, $mul136 = 0, $mul144 = 0, $mul149 = 0; var $mul157 = 0, $mul162 = 0, $mul170 = 0, $mul175 = 0, $mul18 = 0, $mul183 = 0, $mul188 = 0, $mul196 = 0, $mul201 = 0, $mul26 = 0, $mul31 = 0, $mul39 = 0, $mul44 = 0, $mul52 = 0, $mul57 = 0, $mul6 = 0, $mul65 = 0, $mul70 = 0, $mul78 = 0, $mul83 = 0; var $mul91 = 0, $mul96 = 0, $order$addr = 0, $out = 0, $shr = 0, $shr1 = 0, $shr10 = 0, $shr101 = 0, $shr110 = 0, $shr114 = 0, $shr123 = 0, $shr128 = 0, $shr137 = 0, $shr141 = 0, $shr150 = 0, $shr154 = 0, $shr163 = 0, $shr167 = 0, $shr176 = 0, $shr180 = 0; var $shr189 = 0, $shr19 = 0, $shr193 = 0, $shr202 = 0, $shr23 = 0, $shr32 = 0, $shr36 = 0, $shr45 = 0, $shr49 = 0, $shr58 = 0, $shr62 = 0, $shr7 = 0, $shr71 = 0, $shr75 = 0, $shr84 = 0, $shr88 = 0, $shr97 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $buf32$addr = $buf32; $coef16$addr = $coef16; $order$addr = $order; $0 = $order$addr; $shr = $0 >> 1; $out = $shr; $1 = $out; $2 = $buf32$addr; $3 = HEAP32[$2>>2]|0; $shr1 = $3 >> 16; $4 = $coef16$addr; $5 = HEAP16[$4>>1]|0; $conv = $5 << 16 >> 16; $mul = Math_imul($shr1, $conv)|0; $6 = $buf32$addr; $7 = HEAP32[$6>>2]|0; $and = $7 & 65535; $8 = $coef16$addr; $9 = HEAP16[$8>>1]|0; $conv5 = $9 << 16 >> 16; $mul6 = Math_imul($and, $conv5)|0; $shr7 = $mul6 >> 16; $add = (($mul) + ($shr7))|0; $add8 = (($1) + ($add))|0; $out = $add8; $10 = $out; $11 = $buf32$addr; $arrayidx9 = ((($11)) + -4|0); $12 = HEAP32[$arrayidx9>>2]|0; $shr10 = $12 >> 16; $13 = $coef16$addr; $arrayidx11 = ((($13)) + 2|0); $14 = HEAP16[$arrayidx11>>1]|0; $conv12 = $14 << 16 >> 16; $mul13 = Math_imul($shr10, $conv12)|0; $15 = $buf32$addr; $arrayidx14 = ((($15)) + -4|0); $16 = HEAP32[$arrayidx14>>2]|0; $and15 = $16 & 65535; $17 = $coef16$addr; $arrayidx16 = ((($17)) + 2|0); $18 = HEAP16[$arrayidx16>>1]|0; $conv17 = $18 << 16 >> 16; $mul18 = Math_imul($and15, $conv17)|0; $shr19 = $mul18 >> 16; $add20 = (($mul13) + ($shr19))|0; $add21 = (($10) + ($add20))|0; $out = $add21; $19 = $out; $20 = $buf32$addr; $arrayidx22 = ((($20)) + -8|0); $21 = HEAP32[$arrayidx22>>2]|0; $shr23 = $21 >> 16; $22 = $coef16$addr; $arrayidx24 = ((($22)) + 4|0); $23 = HEAP16[$arrayidx24>>1]|0; $conv25 = $23 << 16 >> 16; $mul26 = Math_imul($shr23, $conv25)|0; $24 = $buf32$addr; $arrayidx27 = ((($24)) + -8|0); $25 = HEAP32[$arrayidx27>>2]|0; $and28 = $25 & 65535; $26 = $coef16$addr; $arrayidx29 = ((($26)) + 4|0); $27 = HEAP16[$arrayidx29>>1]|0; $conv30 = $27 << 16 >> 16; $mul31 = Math_imul($and28, $conv30)|0; $shr32 = $mul31 >> 16; $add33 = (($mul26) + ($shr32))|0; $add34 = (($19) + ($add33))|0; $out = $add34; $28 = $out; $29 = $buf32$addr; $arrayidx35 = ((($29)) + -12|0); $30 = HEAP32[$arrayidx35>>2]|0; $shr36 = $30 >> 16; $31 = $coef16$addr; $arrayidx37 = ((($31)) + 6|0); $32 = HEAP16[$arrayidx37>>1]|0; $conv38 = $32 << 16 >> 16; $mul39 = Math_imul($shr36, $conv38)|0; $33 = $buf32$addr; $arrayidx40 = ((($33)) + -12|0); $34 = HEAP32[$arrayidx40>>2]|0; $and41 = $34 & 65535; $35 = $coef16$addr; $arrayidx42 = ((($35)) + 6|0); $36 = HEAP16[$arrayidx42>>1]|0; $conv43 = $36 << 16 >> 16; $mul44 = Math_imul($and41, $conv43)|0; $shr45 = $mul44 >> 16; $add46 = (($mul39) + ($shr45))|0; $add47 = (($28) + ($add46))|0; $out = $add47; $37 = $out; $38 = $buf32$addr; $arrayidx48 = ((($38)) + -16|0); $39 = HEAP32[$arrayidx48>>2]|0; $shr49 = $39 >> 16; $40 = $coef16$addr; $arrayidx50 = ((($40)) + 8|0); $41 = HEAP16[$arrayidx50>>1]|0; $conv51 = $41 << 16 >> 16; $mul52 = Math_imul($shr49, $conv51)|0; $42 = $buf32$addr; $arrayidx53 = ((($42)) + -16|0); $43 = HEAP32[$arrayidx53>>2]|0; $and54 = $43 & 65535; $44 = $coef16$addr; $arrayidx55 = ((($44)) + 8|0); $45 = HEAP16[$arrayidx55>>1]|0; $conv56 = $45 << 16 >> 16; $mul57 = Math_imul($and54, $conv56)|0; $shr58 = $mul57 >> 16; $add59 = (($mul52) + ($shr58))|0; $add60 = (($37) + ($add59))|0; $out = $add60; $46 = $out; $47 = $buf32$addr; $arrayidx61 = ((($47)) + -20|0); $48 = HEAP32[$arrayidx61>>2]|0; $shr62 = $48 >> 16; $49 = $coef16$addr; $arrayidx63 = ((($49)) + 10|0); $50 = HEAP16[$arrayidx63>>1]|0; $conv64 = $50 << 16 >> 16; $mul65 = Math_imul($shr62, $conv64)|0; $51 = $buf32$addr; $arrayidx66 = ((($51)) + -20|0); $52 = HEAP32[$arrayidx66>>2]|0; $and67 = $52 & 65535; $53 = $coef16$addr; $arrayidx68 = ((($53)) + 10|0); $54 = HEAP16[$arrayidx68>>1]|0; $conv69 = $54 << 16 >> 16; $mul70 = Math_imul($and67, $conv69)|0; $shr71 = $mul70 >> 16; $add72 = (($mul65) + ($shr71))|0; $add73 = (($46) + ($add72))|0; $out = $add73; $55 = $out; $56 = $buf32$addr; $arrayidx74 = ((($56)) + -24|0); $57 = HEAP32[$arrayidx74>>2]|0; $shr75 = $57 >> 16; $58 = $coef16$addr; $arrayidx76 = ((($58)) + 12|0); $59 = HEAP16[$arrayidx76>>1]|0; $conv77 = $59 << 16 >> 16; $mul78 = Math_imul($shr75, $conv77)|0; $60 = $buf32$addr; $arrayidx79 = ((($60)) + -24|0); $61 = HEAP32[$arrayidx79>>2]|0; $and80 = $61 & 65535; $62 = $coef16$addr; $arrayidx81 = ((($62)) + 12|0); $63 = HEAP16[$arrayidx81>>1]|0; $conv82 = $63 << 16 >> 16; $mul83 = Math_imul($and80, $conv82)|0; $shr84 = $mul83 >> 16; $add85 = (($mul78) + ($shr84))|0; $add86 = (($55) + ($add85))|0; $out = $add86; $64 = $out; $65 = $buf32$addr; $arrayidx87 = ((($65)) + -28|0); $66 = HEAP32[$arrayidx87>>2]|0; $shr88 = $66 >> 16; $67 = $coef16$addr; $arrayidx89 = ((($67)) + 14|0); $68 = HEAP16[$arrayidx89>>1]|0; $conv90 = $68 << 16 >> 16; $mul91 = Math_imul($shr88, $conv90)|0; $69 = $buf32$addr; $arrayidx92 = ((($69)) + -28|0); $70 = HEAP32[$arrayidx92>>2]|0; $and93 = $70 & 65535; $71 = $coef16$addr; $arrayidx94 = ((($71)) + 14|0); $72 = HEAP16[$arrayidx94>>1]|0; $conv95 = $72 << 16 >> 16; $mul96 = Math_imul($and93, $conv95)|0; $shr97 = $mul96 >> 16; $add98 = (($mul91) + ($shr97))|0; $add99 = (($64) + ($add98))|0; $out = $add99; $73 = $out; $74 = $buf32$addr; $arrayidx100 = ((($74)) + -32|0); $75 = HEAP32[$arrayidx100>>2]|0; $shr101 = $75 >> 16; $76 = $coef16$addr; $arrayidx102 = ((($76)) + 16|0); $77 = HEAP16[$arrayidx102>>1]|0; $conv103 = $77 << 16 >> 16; $mul104 = Math_imul($shr101, $conv103)|0; $78 = $buf32$addr; $arrayidx105 = ((($78)) + -32|0); $79 = HEAP32[$arrayidx105>>2]|0; $and106 = $79 & 65535; $80 = $coef16$addr; $arrayidx107 = ((($80)) + 16|0); $81 = HEAP16[$arrayidx107>>1]|0; $conv108 = $81 << 16 >> 16; $mul109 = Math_imul($and106, $conv108)|0; $shr110 = $mul109 >> 16; $add111 = (($mul104) + ($shr110))|0; $add112 = (($73) + ($add111))|0; $out = $add112; $82 = $out; $83 = $buf32$addr; $arrayidx113 = ((($83)) + -36|0); $84 = HEAP32[$arrayidx113>>2]|0; $shr114 = $84 >> 16; $85 = $coef16$addr; $arrayidx115 = ((($85)) + 18|0); $86 = HEAP16[$arrayidx115>>1]|0; $conv116 = $86 << 16 >> 16; $mul117 = Math_imul($shr114, $conv116)|0; $87 = $buf32$addr; $arrayidx118 = ((($87)) + -36|0); $88 = HEAP32[$arrayidx118>>2]|0; $and119 = $88 & 65535; $89 = $coef16$addr; $arrayidx120 = ((($89)) + 18|0); $90 = HEAP16[$arrayidx120>>1]|0; $conv121 = $90 << 16 >> 16; $mul122 = Math_imul($and119, $conv121)|0; $shr123 = $mul122 >> 16; $add124 = (($mul117) + ($shr123))|0; $add125 = (($82) + ($add124))|0; $out = $add125; $91 = $order$addr; $cmp = ($91|0)==(16); if (!($cmp)) { $146 = $out; STACKTOP = sp;return ($146|0); } $92 = $out; $93 = $buf32$addr; $arrayidx127 = ((($93)) + -40|0); $94 = HEAP32[$arrayidx127>>2]|0; $shr128 = $94 >> 16; $95 = $coef16$addr; $arrayidx129 = ((($95)) + 20|0); $96 = HEAP16[$arrayidx129>>1]|0; $conv130 = $96 << 16 >> 16; $mul131 = Math_imul($shr128, $conv130)|0; $97 = $buf32$addr; $arrayidx132 = ((($97)) + -40|0); $98 = HEAP32[$arrayidx132>>2]|0; $and133 = $98 & 65535; $99 = $coef16$addr; $arrayidx134 = ((($99)) + 20|0); $100 = HEAP16[$arrayidx134>>1]|0; $conv135 = $100 << 16 >> 16; $mul136 = Math_imul($and133, $conv135)|0; $shr137 = $mul136 >> 16; $add138 = (($mul131) + ($shr137))|0; $add139 = (($92) + ($add138))|0; $out = $add139; $101 = $out; $102 = $buf32$addr; $arrayidx140 = ((($102)) + -44|0); $103 = HEAP32[$arrayidx140>>2]|0; $shr141 = $103 >> 16; $104 = $coef16$addr; $arrayidx142 = ((($104)) + 22|0); $105 = HEAP16[$arrayidx142>>1]|0; $conv143 = $105 << 16 >> 16; $mul144 = Math_imul($shr141, $conv143)|0; $106 = $buf32$addr; $arrayidx145 = ((($106)) + -44|0); $107 = HEAP32[$arrayidx145>>2]|0; $and146 = $107 & 65535; $108 = $coef16$addr; $arrayidx147 = ((($108)) + 22|0); $109 = HEAP16[$arrayidx147>>1]|0; $conv148 = $109 << 16 >> 16; $mul149 = Math_imul($and146, $conv148)|0; $shr150 = $mul149 >> 16; $add151 = (($mul144) + ($shr150))|0; $add152 = (($101) + ($add151))|0; $out = $add152; $110 = $out; $111 = $buf32$addr; $arrayidx153 = ((($111)) + -48|0); $112 = HEAP32[$arrayidx153>>2]|0; $shr154 = $112 >> 16; $113 = $coef16$addr; $arrayidx155 = ((($113)) + 24|0); $114 = HEAP16[$arrayidx155>>1]|0; $conv156 = $114 << 16 >> 16; $mul157 = Math_imul($shr154, $conv156)|0; $115 = $buf32$addr; $arrayidx158 = ((($115)) + -48|0); $116 = HEAP32[$arrayidx158>>2]|0; $and159 = $116 & 65535; $117 = $coef16$addr; $arrayidx160 = ((($117)) + 24|0); $118 = HEAP16[$arrayidx160>>1]|0; $conv161 = $118 << 16 >> 16; $mul162 = Math_imul($and159, $conv161)|0; $shr163 = $mul162 >> 16; $add164 = (($mul157) + ($shr163))|0; $add165 = (($110) + ($add164))|0; $out = $add165; $119 = $out; $120 = $buf32$addr; $arrayidx166 = ((($120)) + -52|0); $121 = HEAP32[$arrayidx166>>2]|0; $shr167 = $121 >> 16; $122 = $coef16$addr; $arrayidx168 = ((($122)) + 26|0); $123 = HEAP16[$arrayidx168>>1]|0; $conv169 = $123 << 16 >> 16; $mul170 = Math_imul($shr167, $conv169)|0; $124 = $buf32$addr; $arrayidx171 = ((($124)) + -52|0); $125 = HEAP32[$arrayidx171>>2]|0; $and172 = $125 & 65535; $126 = $coef16$addr; $arrayidx173 = ((($126)) + 26|0); $127 = HEAP16[$arrayidx173>>1]|0; $conv174 = $127 << 16 >> 16; $mul175 = Math_imul($and172, $conv174)|0; $shr176 = $mul175 >> 16; $add177 = (($mul170) + ($shr176))|0; $add178 = (($119) + ($add177))|0; $out = $add178; $128 = $out; $129 = $buf32$addr; $arrayidx179 = ((($129)) + -56|0); $130 = HEAP32[$arrayidx179>>2]|0; $shr180 = $130 >> 16; $131 = $coef16$addr; $arrayidx181 = ((($131)) + 28|0); $132 = HEAP16[$arrayidx181>>1]|0; $conv182 = $132 << 16 >> 16; $mul183 = Math_imul($shr180, $conv182)|0; $133 = $buf32$addr; $arrayidx184 = ((($133)) + -56|0); $134 = HEAP32[$arrayidx184>>2]|0; $and185 = $134 & 65535; $135 = $coef16$addr; $arrayidx186 = ((($135)) + 28|0); $136 = HEAP16[$arrayidx186>>1]|0; $conv187 = $136 << 16 >> 16; $mul188 = Math_imul($and185, $conv187)|0; $shr189 = $mul188 >> 16; $add190 = (($mul183) + ($shr189))|0; $add191 = (($128) + ($add190))|0; $out = $add191; $137 = $out; $138 = $buf32$addr; $arrayidx192 = ((($138)) + -60|0); $139 = HEAP32[$arrayidx192>>2]|0; $shr193 = $139 >> 16; $140 = $coef16$addr; $arrayidx194 = ((($140)) + 30|0); $141 = HEAP16[$arrayidx194>>1]|0; $conv195 = $141 << 16 >> 16; $mul196 = Math_imul($shr193, $conv195)|0; $142 = $buf32$addr; $arrayidx197 = ((($142)) + -60|0); $143 = HEAP32[$arrayidx197>>2]|0; $and198 = $143 & 65535; $144 = $coef16$addr; $arrayidx199 = ((($144)) + 30|0); $145 = HEAP16[$arrayidx199>>1]|0; $conv200 = $145 << 16 >> 16; $mul201 = Math_imul($and198, $conv200)|0; $shr202 = $mul201 >> 16; $add203 = (($mul196) + ($shr202))|0; $add204 = (($137) + ($add203))|0; $out = $add204; $146 = $out; STACKTOP = sp;return ($146|0); } function _silk_NSQ_noise_shape_feedback_loop_c($data0,$data1,$coef,$order) { $data0 = $data0|0; $data1 = $data1|0; $coef = $coef|0; $order = $order|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $7 = 0, $8 = 0; var $9 = 0, $add = 0, $add25 = 0, $add26 = 0, $add27 = 0, $add29 = 0, $add40 = 0, $add41 = 0, $add42 = 0, $add56 = 0, $add57 = 0, $add9 = 0, $and = 0, $and19 = 0, $and35 = 0, $and50 = 0, $arrayidx11 = 0, $arrayidx13 = 0, $arrayidx16 = 0, $arrayidx21 = 0; var $arrayidx28 = 0, $arrayidx30 = 0, $arrayidx32 = 0, $arrayidx36 = 0, $arrayidx44 = 0, $arrayidx47 = 0, $arrayidx52 = 0, $cmp = 0, $coef$addr = 0, $conv = 0, $conv17 = 0, $conv22 = 0, $conv33 = 0, $conv37 = 0, $conv48 = 0, $conv53 = 0, $conv6 = 0, $data0$addr = 0, $data1$addr = 0, $j = 0; var $mul = 0, $mul18 = 0, $mul23 = 0, $mul34 = 0, $mul38 = 0, $mul49 = 0, $mul54 = 0, $mul7 = 0, $order$addr = 0, $out = 0, $shl = 0, $shr = 0, $shr14 = 0, $shr24 = 0, $shr3 = 0, $shr31 = 0, $shr39 = 0, $shr45 = 0, $shr55 = 0, $shr8 = 0; var $sub = 0, $sub12 = 0, $sub15 = 0, $sub20 = 0, $sub43 = 0, $sub46 = 0, $sub51 = 0, $tmp1 = 0, $tmp2 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $data0$addr = $data0; $data1$addr = $data1; $coef$addr = $coef; $order$addr = $order; $0 = $data0$addr; $1 = HEAP32[$0>>2]|0; $tmp2 = $1; $2 = $data1$addr; $3 = HEAP32[$2>>2]|0; $tmp1 = $3; $4 = $tmp2; $5 = $data1$addr; HEAP32[$5>>2] = $4; $6 = $order$addr; $shr = $6 >> 1; $out = $shr; $7 = $out; $8 = $tmp2; $shr3 = $8 >> 16; $9 = $coef$addr; $10 = HEAP16[$9>>1]|0; $conv = $10 << 16 >> 16; $mul = Math_imul($shr3, $conv)|0; $11 = $tmp2; $and = $11 & 65535; $12 = $coef$addr; $13 = HEAP16[$12>>1]|0; $conv6 = $13 << 16 >> 16; $mul7 = Math_imul($and, $conv6)|0; $shr8 = $mul7 >> 16; $add = (($mul) + ($shr8))|0; $add9 = (($7) + ($add))|0; $out = $add9; $j = 2; while(1) { $14 = $j; $15 = $order$addr; $cmp = ($14|0)<($15|0); if (!($cmp)) { break; } $16 = $data1$addr; $17 = $j; $sub = (($17) - 1)|0; $arrayidx11 = (($16) + ($sub<<2)|0); $18 = HEAP32[$arrayidx11>>2]|0; $tmp2 = $18; $19 = $tmp1; $20 = $data1$addr; $21 = $j; $sub12 = (($21) - 1)|0; $arrayidx13 = (($20) + ($sub12<<2)|0); HEAP32[$arrayidx13>>2] = $19; $22 = $out; $23 = $tmp1; $shr14 = $23 >> 16; $24 = $coef$addr; $25 = $j; $sub15 = (($25) - 1)|0; $arrayidx16 = (($24) + ($sub15<<1)|0); $26 = HEAP16[$arrayidx16>>1]|0; $conv17 = $26 << 16 >> 16; $mul18 = Math_imul($shr14, $conv17)|0; $27 = $tmp1; $and19 = $27 & 65535; $28 = $coef$addr; $29 = $j; $sub20 = (($29) - 1)|0; $arrayidx21 = (($28) + ($sub20<<1)|0); $30 = HEAP16[$arrayidx21>>1]|0; $conv22 = $30 << 16 >> 16; $mul23 = Math_imul($and19, $conv22)|0; $shr24 = $mul23 >> 16; $add25 = (($mul18) + ($shr24))|0; $add26 = (($22) + ($add25))|0; $out = $add26; $31 = $data1$addr; $32 = $j; $add27 = (($32) + 0)|0; $arrayidx28 = (($31) + ($add27<<2)|0); $33 = HEAP32[$arrayidx28>>2]|0; $tmp1 = $33; $34 = $tmp2; $35 = $data1$addr; $36 = $j; $add29 = (($36) + 0)|0; $arrayidx30 = (($35) + ($add29<<2)|0); HEAP32[$arrayidx30>>2] = $34; $37 = $out; $38 = $tmp2; $shr31 = $38 >> 16; $39 = $coef$addr; $40 = $j; $arrayidx32 = (($39) + ($40<<1)|0); $41 = HEAP16[$arrayidx32>>1]|0; $conv33 = $41 << 16 >> 16; $mul34 = Math_imul($shr31, $conv33)|0; $42 = $tmp2; $and35 = $42 & 65535; $43 = $coef$addr; $44 = $j; $arrayidx36 = (($43) + ($44<<1)|0); $45 = HEAP16[$arrayidx36>>1]|0; $conv37 = $45 << 16 >> 16; $mul38 = Math_imul($and35, $conv37)|0; $shr39 = $mul38 >> 16; $add40 = (($mul34) + ($shr39))|0; $add41 = (($37) + ($add40))|0; $out = $add41; $46 = $j; $add42 = (($46) + 2)|0; $j = $add42; } $47 = $tmp1; $48 = $data1$addr; $49 = $order$addr; $sub43 = (($49) - 1)|0; $arrayidx44 = (($48) + ($sub43<<2)|0); HEAP32[$arrayidx44>>2] = $47; $50 = $out; $51 = $tmp1; $shr45 = $51 >> 16; $52 = $coef$addr; $53 = $order$addr; $sub46 = (($53) - 1)|0; $arrayidx47 = (($52) + ($sub46<<1)|0); $54 = HEAP16[$arrayidx47>>1]|0; $conv48 = $54 << 16 >> 16; $mul49 = Math_imul($shr45, $conv48)|0; $55 = $tmp1; $and50 = $55 & 65535; $56 = $coef$addr; $57 = $order$addr; $sub51 = (($57) - 1)|0; $arrayidx52 = (($56) + ($sub51<<1)|0); $58 = HEAP16[$arrayidx52>>1]|0; $conv53 = $58 << 16 >> 16; $mul54 = Math_imul($and50, $conv53)|0; $shr55 = $mul54 >> 16; $add56 = (($mul49) + ($shr55))|0; $add57 = (($50) + ($add56))|0; $out = $add57; $59 = $out; $shl = $59 << 1; $out = $shl; $60 = $out; STACKTOP = sp;return ($60|0); } function _silk_INVERSE32_varQ($b32,$Qres) { $b32 = $b32|0; $Qres = $Qres|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $Qres$addr = 0, $add = 0; var $add20 = 0, $add21 = 0, $add23 = 0, $add26 = 0, $and = 0, $and15 = 0, $b32$addr = 0, $b32_inv = 0, $b32_nrm = 0, $b_headrm = 0, $call = 0, $cmp = 0, $cmp29 = 0, $cmp35 = 0, $cmp40 = 0, $cmp48 = 0, $cmp61 = 0, $cmp69 = 0, $cmp83 = 0, $cond = 0; var $cond80 = 0, $conv = 0, $conv12 = 0, $conv13 = 0, $conv16 = 0, $conv17 = 0, $conv4 = 0, $conv5 = 0, $conv6 = 0, $div = 0, $err_Q32 = 0, $lshift = 0, $mul = 0, $mul14 = 0, $mul18 = 0, $mul25 = 0, $mul7 = 0, $result = 0, $retval = 0, $shl = 0; var $shl10 = 0, $shl2 = 0, $shl82 = 0, $shr = 0, $shr11 = 0, $shr19 = 0, $shr22 = 0, $shr24 = 0, $shr3 = 0, $shr32 = 0, $shr34 = 0, $shr39 = 0, $shr44 = 0, $shr47 = 0, $shr52 = 0, $shr60 = 0, $shr65 = 0, $shr68 = 0, $shr73 = 0, $shr8 = 0; var $shr86 = 0, $sub = 0, $sub1 = 0, $sub27 = 0, $sub28 = 0, $sub31 = 0, $sub33 = 0, $sub38 = 0, $sub43 = 0, $sub46 = 0, $sub51 = 0, $sub64 = 0, $sub67 = 0, $sub72 = 0, $sub81 = 0, $sub9 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $b32$addr = $b32; $Qres$addr = $Qres; $0 = $b32$addr; $cmp = ($0|0)>(0); $1 = $b32$addr; $sub = (0 - ($1))|0; $cond = $cmp ? $1 : $sub; $call = (_silk_CLZ32_421($cond)|0); $sub1 = (($call) - 1)|0; $b_headrm = $sub1; $2 = $b32$addr; $3 = $b_headrm; $shl = $2 << $3; $b32_nrm = $shl; $4 = $b32_nrm; $shr = $4 >> 16; $div = (536870911 / ($shr|0))&-1; $b32_inv = $div; $5 = $b32_inv; $shl2 = $5 << 16; $result = $shl2; $6 = $b32_nrm; $shr3 = $6 >> 16; $7 = $b32_inv; $conv = $7&65535; $conv4 = $conv << 16 >> 16; $mul = Math_imul($shr3, $conv4)|0; $8 = $b32_nrm; $and = $8 & 65535; $9 = $b32_inv; $conv5 = $9&65535; $conv6 = $conv5 << 16 >> 16; $mul7 = Math_imul($and, $conv6)|0; $shr8 = $mul7 >> 16; $add = (($mul) + ($shr8))|0; $sub9 = (536870912 - ($add))|0; $shl10 = $sub9 << 3; $err_Q32 = $shl10; $10 = $result; $11 = $err_Q32; $shr11 = $11 >> 16; $12 = $b32_inv; $conv12 = $12&65535; $conv13 = $conv12 << 16 >> 16; $mul14 = Math_imul($shr11, $conv13)|0; $13 = $err_Q32; $and15 = $13 & 65535; $14 = $b32_inv; $conv16 = $14&65535; $conv17 = $conv16 << 16 >> 16; $mul18 = Math_imul($and15, $conv17)|0; $shr19 = $mul18 >> 16; $add20 = (($mul14) + ($shr19))|0; $add21 = (($10) + ($add20))|0; $15 = $err_Q32; $16 = $b32_inv; $shr22 = $16 >> 15; $add23 = (($shr22) + 1)|0; $shr24 = $add23 >> 1; $mul25 = Math_imul($15, $shr24)|0; $add26 = (($add21) + ($mul25))|0; $result = $add26; $17 = $b_headrm; $sub27 = (61 - ($17))|0; $18 = $Qres$addr; $sub28 = (($sub27) - ($18))|0; $lshift = $sub28; $19 = $lshift; $cmp29 = ($19|0)<=(0); $20 = $lshift; if (!($cmp29)) { $cmp83 = ($20|0)<(32); if ($cmp83) { $35 = $result; $36 = $lshift; $shr86 = $35 >> $36; $retval = $shr86; $37 = $retval; STACKTOP = sp;return ($37|0); } else { $retval = 0; $37 = $retval; STACKTOP = sp;return ($37|0); } } $sub31 = (0 - ($20))|0; $shr32 = -2147483648 >> $sub31; $21 = $lshift; $sub33 = (0 - ($21))|0; $shr34 = 2147483647 >> $sub33; $cmp35 = ($shr32|0)>($shr34|0); $22 = $result; $23 = $lshift; $sub38 = (0 - ($23))|0; do { if ($cmp35) { $shr39 = -2147483648 >> $sub38; $cmp40 = ($22|0)>($shr39|0); if ($cmp40) { $24 = $lshift; $sub43 = (0 - ($24))|0; $shr44 = -2147483648 >> $sub43; $cond80 = $shr44; break; } $25 = $result; $26 = $lshift; $sub46 = (0 - ($26))|0; $shr47 = 2147483647 >> $sub46; $cmp48 = ($25|0)<($shr47|0); if ($cmp48) { $27 = $lshift; $sub51 = (0 - ($27))|0; $shr52 = 2147483647 >> $sub51; $cond80 = $shr52; break; } else { $28 = $result; $cond80 = $28; break; } } else { $shr60 = 2147483647 >> $sub38; $cmp61 = ($22|0)>($shr60|0); if ($cmp61) { $29 = $lshift; $sub64 = (0 - ($29))|0; $shr65 = 2147483647 >> $sub64; $cond80 = $shr65; break; } $30 = $result; $31 = $lshift; $sub67 = (0 - ($31))|0; $shr68 = -2147483648 >> $sub67; $cmp69 = ($30|0)<($shr68|0); if ($cmp69) { $32 = $lshift; $sub72 = (0 - ($32))|0; $shr73 = -2147483648 >> $sub72; $cond80 = $shr73; break; } else { $33 = $result; $cond80 = $33; break; } } } while(0); $34 = $lshift; $sub81 = (0 - ($34))|0; $shl82 = $cond80 << $sub81; $retval = $shl82; $37 = $retval; STACKTOP = sp;return ($37|0); } function _silk_DIV32_varQ_420($a32,$b32,$Qres) { $a32 = $a32|0; $b32 = $b32|0; $Qres = $Qres|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $Qres$addr = 0, $a32$addr = 0, $a32_nrm = 0, $a_headrm = 0, $add = 0, $add33 = 0, $add34 = 0, $add35 = 0, $and = 0; var $and28 = 0, $b32$addr = 0, $b32_inv = 0, $b32_nrm = 0, $b_headrm = 0, $call = 0, $call8 = 0, $cmp = 0, $cmp2 = 0, $cmp38 = 0, $cmp44 = 0, $cmp49 = 0, $cmp57 = 0, $cmp70 = 0, $cmp78 = 0, $cmp92 = 0, $cond = 0, $cond7 = 0, $cond89 = 0, $conv = 0; var $conv12 = 0, $conv13 = 0, $conv14 = 0, $conv25 = 0, $conv26 = 0, $conv29 = 0, $conv30 = 0, $div = 0, $lshift = 0, $mul = 0, $mul15 = 0, $mul27 = 0, $mul31 = 0, $result = 0, $retval = 0, $shl = 0, $shl10 = 0, $shl22 = 0, $shl91 = 0, $shr = 0; var $shr11 = 0, $shr16 = 0, $shr24 = 0, $shr32 = 0, $shr41 = 0, $shr43 = 0, $shr48 = 0, $shr53 = 0, $shr56 = 0, $shr61 = 0, $shr69 = 0, $shr74 = 0, $shr77 = 0, $shr82 = 0, $shr95 = 0, $sub = 0, $sub1 = 0, $sub23 = 0, $sub36 = 0, $sub37 = 0; var $sub40 = 0, $sub42 = 0, $sub47 = 0, $sub5 = 0, $sub52 = 0, $sub55 = 0, $sub60 = 0, $sub73 = 0, $sub76 = 0, $sub81 = 0, $sub9 = 0, $sub90 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $a32$addr = $a32; $b32$addr = $b32; $Qres$addr = $Qres; $0 = $a32$addr; $cmp = ($0|0)>(0); $1 = $a32$addr; $sub = (0 - ($1))|0; $cond = $cmp ? $1 : $sub; $call = (_silk_CLZ32_421($cond)|0); $sub1 = (($call) - 1)|0; $a_headrm = $sub1; $2 = $a32$addr; $3 = $a_headrm; $shl = $2 << $3; $a32_nrm = $shl; $4 = $b32$addr; $cmp2 = ($4|0)>(0); $5 = $b32$addr; $sub5 = (0 - ($5))|0; $cond7 = $cmp2 ? $5 : $sub5; $call8 = (_silk_CLZ32_421($cond7)|0); $sub9 = (($call8) - 1)|0; $b_headrm = $sub9; $6 = $b32$addr; $7 = $b_headrm; $shl10 = $6 << $7; $b32_nrm = $shl10; $8 = $b32_nrm; $shr = $8 >> 16; $div = (536870911 / ($shr|0))&-1; $b32_inv = $div; $9 = $a32_nrm; $shr11 = $9 >> 16; $10 = $b32_inv; $conv = $10&65535; $conv12 = $conv << 16 >> 16; $mul = Math_imul($shr11, $conv12)|0; $11 = $a32_nrm; $and = $11 & 65535; $12 = $b32_inv; $conv13 = $12&65535; $conv14 = $conv13 << 16 >> 16; $mul15 = Math_imul($and, $conv14)|0; $shr16 = $mul15 >> 16; $add = (($mul) + ($shr16))|0; $result = $add; $13 = $a32_nrm; $14 = $b32_nrm; $15 = ($14|0)<(0); $16 = $15 << 31 >> 31; $17 = $result; $18 = ($17|0)<(0); $19 = $18 << 31 >> 31; $20 = (___muldi3(($14|0),($16|0),($17|0),($19|0))|0); $21 = tempRet0; $22 = (_bitshift64Ashr(($20|0),($21|0),32)|0); $23 = tempRet0; $shl22 = $22 << 3; $sub23 = (($13) - ($shl22))|0; $a32_nrm = $sub23; $24 = $result; $25 = $a32_nrm; $shr24 = $25 >> 16; $26 = $b32_inv; $conv25 = $26&65535; $conv26 = $conv25 << 16 >> 16; $mul27 = Math_imul($shr24, $conv26)|0; $27 = $a32_nrm; $and28 = $27 & 65535; $28 = $b32_inv; $conv29 = $28&65535; $conv30 = $conv29 << 16 >> 16; $mul31 = Math_imul($and28, $conv30)|0; $shr32 = $mul31 >> 16; $add33 = (($mul27) + ($shr32))|0; $add34 = (($24) + ($add33))|0; $result = $add34; $29 = $a_headrm; $add35 = (29 + ($29))|0; $30 = $b_headrm; $sub36 = (($add35) - ($30))|0; $31 = $Qres$addr; $sub37 = (($sub36) - ($31))|0; $lshift = $sub37; $32 = $lshift; $cmp38 = ($32|0)<(0); $33 = $lshift; if (!($cmp38)) { $cmp92 = ($33|0)<(32); if ($cmp92) { $48 = $result; $49 = $lshift; $shr95 = $48 >> $49; $retval = $shr95; $50 = $retval; STACKTOP = sp;return ($50|0); } else { $retval = 0; $50 = $retval; STACKTOP = sp;return ($50|0); } } $sub40 = (0 - ($33))|0; $shr41 = -2147483648 >> $sub40; $34 = $lshift; $sub42 = (0 - ($34))|0; $shr43 = 2147483647 >> $sub42; $cmp44 = ($shr41|0)>($shr43|0); $35 = $result; $36 = $lshift; $sub47 = (0 - ($36))|0; do { if ($cmp44) { $shr48 = -2147483648 >> $sub47; $cmp49 = ($35|0)>($shr48|0); if ($cmp49) { $37 = $lshift; $sub52 = (0 - ($37))|0; $shr53 = -2147483648 >> $sub52; $cond89 = $shr53; break; } $38 = $result; $39 = $lshift; $sub55 = (0 - ($39))|0; $shr56 = 2147483647 >> $sub55; $cmp57 = ($38|0)<($shr56|0); if ($cmp57) { $40 = $lshift; $sub60 = (0 - ($40))|0; $shr61 = 2147483647 >> $sub60; $cond89 = $shr61; break; } else { $41 = $result; $cond89 = $41; break; } } else { $shr69 = 2147483647 >> $sub47; $cmp70 = ($35|0)>($shr69|0); if ($cmp70) { $42 = $lshift; $sub73 = (0 - ($42))|0; $shr74 = 2147483647 >> $sub73; $cond89 = $shr74; break; } $43 = $result; $44 = $lshift; $sub76 = (0 - ($44))|0; $shr77 = -2147483648 >> $sub76; $cmp78 = ($43|0)<($shr77|0); if ($cmp78) { $45 = $lshift; $sub81 = (0 - ($45))|0; $shr82 = -2147483648 >> $sub81; $cond89 = $shr82; break; } else { $46 = $result; $cond89 = $46; break; } } } while(0); $47 = $lshift; $sub90 = (0 - ($47))|0; $shl91 = $cond89 << $sub90; $retval = $shl91; $50 = $retval; STACKTOP = sp;return ($50|0); } function _silk_CLZ32_421($in32) { $in32 = $in32|0; var $0 = 0, $1 = 0, $2 = 0, $cond = 0, $in32$addr = 0, $sub = 0, $sub1 = 0, $tobool = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $in32$addr = $in32; $0 = $in32$addr; $tobool = ($0|0)!=(0); if (!($tobool)) { $cond = 32; STACKTOP = sp;return ($cond|0); } $1 = $in32$addr; $2 = (Math_clz32(($1|0))|0); $sub = (32 - ($2))|0; $sub1 = (32 - ($sub))|0; $cond = $sub1; STACKTOP = sp;return ($cond|0); } function _silk_NSQ_del_dec_c($psEncC,$NSQ,$psIndices,$x16,$pulses,$PredCoef_Q12,$LTPCoef_Q14,$AR_Q13,$HarmShapeGain_Q14,$Tilt_Q14,$LF_shp_Q14,$Gains_Q16,$pitchL,$Lambda_Q10,$LTP_scale_Q14) { $psEncC = $psEncC|0; $NSQ = $NSQ|0; $psIndices = $psIndices|0; $x16 = $x16|0; $pulses = $pulses|0; $PredCoef_Q12 = $PredCoef_Q12|0; $LTPCoef_Q14 = $LTPCoef_Q14|0; $AR_Q13 = $AR_Q13|0; $HarmShapeGain_Q14 = $HarmShapeGain_Q14|0; $Tilt_Q14 = $Tilt_Q14|0; $LF_shp_Q14 = $LF_shp_Q14|0; $Gains_Q16 = $Gains_Q16|0; $pitchL = $pitchL|0; $Lambda_Q10 = $Lambda_Q10|0; $LTP_scale_Q14 = $LTP_scale_Q14|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0; var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0; var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0; var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0; var $98 = 0, $99 = 0, $AR_Q13$addr = 0, $AR_shp_Q13 = 0, $A_Q12 = 0, $B_Q14 = 0, $Diff_Q14 = 0, $Diff_Q14438 = 0, $Gain_Q10 = 0, $Gains_Q16$addr = 0, $HarmShapeFIRPacked_Q14 = 0, $HarmShapeGain_Q14$addr = 0, $LF_AR_Q14 = 0, $LF_AR_Q14436 = 0, $LF_shp_Q14$addr = 0, $LSF_interpolation_flag = 0, $LTPCoef_Q14$addr = 0, $LTP_scale_Q14$addr = 0, $Lambda_Q10$addr = 0, $NLSFInterpCoef_Q2 = 0; var $NSQ$addr = 0, $PredCoef_Q12$addr = 0, $Q_Q10 = 0, $Q_Q10322 = 0, $RD_Q10 = 0, $RD_Q10103 = 0, $RD_Q10117 = 0, $RD_Q10285 = 0, $RD_Q10292 = 0, $RD_Q10297 = 0, $RD_Q1091 = 0, $RD_Q1098 = 0, $RDmin_Q10 = 0, $Seed = 0, $Seed3 = 0, $Seed305 = 0, $Seed4 = 0, $SeedInit = 0, $SeedInit303 = 0, $Shape_Q14 = 0; var $Shape_Q14233 = 0, $Shape_Q14417 = 0, $Tilt_Q14$addr = 0, $Winner_ind = 0, $Xq_Q14 = 0, $Xq_Q14148 = 0, $Xq_Q14157 = 0, $Xq_Q14170 = 0, $Xq_Q14177 = 0, $Xq_Q14186 = 0, $Xq_Q14201 = 0, $Xq_Q14208 = 0, $Xq_Q14217 = 0, $Xq_Q14330 = 0, $Xq_Q14336 = 0, $Xq_Q14344 = 0, $Xq_Q14358 = 0, $Xq_Q14364 = 0, $Xq_Q14372 = 0, $Xq_Q14386 = 0; var $Xq_Q14392 = 0, $Xq_Q14400 = 0, $add = 0, $add$ptr = 0, $add$ptr278 = 0, $add$ptr280 = 0, $add118 = 0, $add124 = 0, $add133 = 0, $add137 = 0, $add156 = 0, $add161 = 0, $add164 = 0, $add166 = 0, $add185 = 0, $add190 = 0, $add193 = 0, $add195 = 0, $add216 = 0, $add221 = 0; var $add224 = 0, $add226 = 0, $add238 = 0, $add252 = 0, $add306 = 0, $add320 = 0, $add325 = 0, $add343 = 0, $add347 = 0, $add350 = 0, $add352 = 0, $add371 = 0, $add375 = 0, $add378 = 0, $add380 = 0, $add399 = 0, $add403 = 0, $add406 = 0, $add408 = 0, $add422 = 0; var $add45 = 0, $add49 = 0, $and = 0, $and150 = 0, $and179 = 0, $and210 = 0, $and338 = 0, $and366 = 0, $and394 = 0, $and83 = 0, $arch = 0, $arch275 = 0, $arrayidx = 0, $arrayidx102 = 0, $arrayidx116 = 0, $arrayidx123 = 0, $arrayidx13 = 0, $arrayidx135 = 0, $arrayidx14 = 0, $arrayidx141 = 0; var $arrayidx142 = 0, $arrayidx144 = 0, $arrayidx149 = 0, $arrayidx151 = 0, $arrayidx158 = 0, $arrayidx159 = 0, $arrayidx171 = 0, $arrayidx173 = 0, $arrayidx178 = 0, $arrayidx180 = 0, $arrayidx187 = 0, $arrayidx188 = 0, $arrayidx202 = 0, $arrayidx204 = 0, $arrayidx209 = 0, $arrayidx211 = 0, $arrayidx218 = 0, $arrayidx219 = 0, $arrayidx232 = 0, $arrayidx234 = 0; var $arrayidx239 = 0, $arrayidx24 = 0, $arrayidx248 = 0, $arrayidx253 = 0, $arrayidx268 = 0, $arrayidx269 = 0, $arrayidx270 = 0, $arrayidx291 = 0, $arrayidx296 = 0, $arrayidx302 = 0, $arrayidx309 = 0, $arrayidx323 = 0, $arrayidx329 = 0, $arrayidx331 = 0, $arrayidx337 = 0, $arrayidx345 = 0, $arrayidx359 = 0, $arrayidx365 = 0, $arrayidx373 = 0, $arrayidx387 = 0; var $arrayidx393 = 0, $arrayidx401 = 0, $arrayidx416 = 0, $arrayidx418 = 0, $arrayidx423 = 0, $arrayidx431 = 0, $arrayidx442 = 0, $arrayidx448 = 0, $arrayidx455 = 0, $arrayidx5 = 0, $arrayidx54 = 0, $arrayidx65 = 0, $arrayidx67 = 0, $arrayidx69 = 0, $arrayidx70 = 0, $arrayidx72 = 0, $arrayidx80 = 0, $arrayidx97 = 0, $call = 0, $call27 = 0; var $call36 = 0, $cmp = 0, $cmp110 = 0, $cmp113 = 0, $cmp126 = 0, $cmp130 = 0, $cmp168 = 0, $cmp18 = 0, $cmp197 = 0, $cmp21 = 0, $cmp288 = 0, $cmp293 = 0, $cmp31 = 0, $cmp312 = 0, $cmp317 = 0, $cmp354 = 0, $cmp382 = 0, $cmp39 = 0, $cmp59 = 0, $cmp77 = 0; var $cmp84 = 0, $cmp87 = 0, $cmp94 = 0, $cmp99 = 0, $cond229 = 0, $cond413 = 0, $conv = 0, $conv12 = 0, $conv139 = 0, $conv145 = 0, $conv146 = 0, $conv15 = 0, $conv152 = 0, $conv153 = 0, $conv17 = 0, $conv174 = 0, $conv175 = 0, $conv181 = 0, $conv182 = 0, $conv205 = 0; var $conv206 = 0, $conv212 = 0, $conv213 = 0, $conv230 = 0, $conv264 = 0, $conv266 = 0, $conv304 = 0, $conv327 = 0, $conv333 = 0, $conv334 = 0, $conv339 = 0, $conv340 = 0, $conv361 = 0, $conv362 = 0, $conv367 = 0, $conv368 = 0, $conv38 = 0, $conv389 = 0, $conv390 = 0, $conv395 = 0; var $conv396 = 0, $conv414 = 0, $conv76 = 0, $decisionDelay = 0, $delayedGain_Q10 = 0, $frame_length = 0, $frame_length447 = 0, $frame_length454 = 0, $frame_length48 = 0, $i = 0, $idxprom = 0, $inc = 0, $inc106 = 0, $inc121 = 0, $inc241 = 0, $inc272 = 0, $inc282 = 0, $inc29 = 0, $inc300 = 0, $inc425 = 0; var $k = 0, $lag = 0, $lagPrev = 0, $lagPrev443 = 0, $last_smple_idx = 0, $ltp_mem_length = 0, $ltp_mem_length244 = 0, $ltp_mem_length254 = 0, $ltp_mem_length257 = 0, $ltp_mem_length44 = 0, $ltp_mem_length449 = 0, $ltp_mem_length456 = 0, $ltp_mem_length47 = 0, $ltp_mem_length53 = 0, $ltp_mem_length55 = 0, $ltp_mem_length56 = 0, $mul = 0, $mul147 = 0, $mul154 = 0, $mul163 = 0; var $mul176 = 0, $mul183 = 0, $mul192 = 0, $mul207 = 0, $mul214 = 0, $mul223 = 0, $mul251 = 0, $mul335 = 0, $mul341 = 0, $mul349 = 0, $mul363 = 0, $mul369 = 0, $mul377 = 0, $mul391 = 0, $mul397 = 0, $mul405 = 0, $mul450 = 0, $mul457 = 0, $mul64 = 0, $mul66 = 0; var $mul68 = 0, $nStatesDelayedDecision = 0, $nStatesDelayedDecision1 = 0, $nStatesDelayedDecision109 = 0, $nStatesDelayedDecision2 = 0, $nStatesDelayedDecision262 = 0, $nStatesDelayedDecision274 = 0, $nStatesDelayedDecision287 = 0, $nStatesDelayedDecision93 = 0, $nb_subfr = 0, $nb_subfr307 = 0, $nb_subfr440 = 0, $nb_subfr58 = 0, $offset_Q10 = 0, $or = 0, $or74 = 0, $pitchL$addr = 0, $predictLPCOrder = 0, $predictLPCOrder256 = 0, $predictLPCOrder273 = 0; var $psDD = 0, $psEncC$addr = 0, $psIndices$addr = 0, $pulses$addr = 0, $pxq = 0, $quantOffsetType = 0, $rem = 0, $rem316 = 0, $rewhite_flag = 0, $rewhite_flag259 = 0, $sAR2_Q14 = 0, $sAR2_Q1410 = 0, $sAR2_Q14432 = 0, $sAR2_Q14434 = 0, $sDiff_shp_Q14 = 0, $sDiff_shp_Q14439 = 0, $sLF_AR_shp_Q14 = 0, $sLF_AR_shp_Q14437 = 0, $sLPC_Q14427 = 0, $sLPC_Q147 = 0; var $sLTP_buf_idx = 0, $sLTP_buf_idx258 = 0, $sLTP_shp_Q14 = 0, $sLTP_shp_Q14235 = 0, $sLTP_shp_Q14419 = 0, $sLTP_shp_Q14451 = 0, $sLTP_shp_Q14453 = 0, $sLTP_shp_buf_idx = 0, $sLTP_shp_buf_idx236 = 0, $sLTP_shp_buf_idx420 = 0, $saved_stack = 0, $shapingLPCOrder = 0, $shl = 0, $shl81 = 0, $shr = 0, $shr136 = 0, $shr138 = 0, $shr143 = 0, $shr155 = 0, $shr160 = 0; var $shr162 = 0, $shr165 = 0, $shr167 = 0, $shr172 = 0, $shr184 = 0, $shr189 = 0, $shr191 = 0, $shr194 = 0, $shr196 = 0, $shr203 = 0, $shr215 = 0, $shr220 = 0, $shr222 = 0, $shr225 = 0, $shr227 = 0, $shr310 = 0, $shr324 = 0, $shr326 = 0, $shr332 = 0, $shr342 = 0; var $shr346 = 0, $shr348 = 0, $shr351 = 0, $shr353 = 0, $shr360 = 0, $shr370 = 0, $shr374 = 0, $shr376 = 0, $shr379 = 0, $shr381 = 0, $shr388 = 0, $shr398 = 0, $shr402 = 0, $shr404 = 0, $shr407 = 0, $shr409 = 0, $shr62 = 0, $shr71 = 0, $shr73 = 0, $signalType = 0; var $signalType16 = 0, $signalType263 = 0, $signalType265 = 0, $signalType75 = 0, $smpl_buf_idx = 0, $start_idx = 0, $sub = 0, $sub129 = 0, $sub140 = 0, $sub231 = 0, $sub237 = 0, $sub245 = 0, $sub246 = 0, $sub247 = 0, $sub25 = 0, $sub255 = 0, $sub26 = 0, $sub308 = 0, $sub315 = 0, $sub328 = 0; var $sub34 = 0, $sub35 = 0, $sub415 = 0, $sub421 = 0, $sub441 = 0, $sub63 = 0, $sub82 = 0, $subfr = 0, $subfr_length = 0, $subfr_length250 = 0, $subfr_length271 = 0, $subfr_length276 = 0, $subfr_length277 = 0, $subfr_length279 = 0, $subfr_length430 = 0, $subfr_length51 = 0, $vla = 0, $vla$alloca_mul = 0, $vla46 = 0, $vla46$alloca_mul = 0; var $vla50 = 0, $vla50$alloca_mul = 0, $vla52 = 0, $vla52$alloca_mul = 0, $warping_Q16 = 0, $x16$addr = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; sp = STACKTOP; STACKTOP = STACKTOP + 304|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(304|0); $smpl_buf_idx = sp + 204|0; $delayedGain_Q10 = sp; $psEncC$addr = $psEncC; $NSQ$addr = $NSQ; $psIndices$addr = $psIndices; $x16$addr = $x16; $pulses$addr = $pulses; $PredCoef_Q12$addr = $PredCoef_Q12; $LTPCoef_Q14$addr = $LTPCoef_Q14; $AR_Q13$addr = $AR_Q13; $HarmShapeGain_Q14$addr = $HarmShapeGain_Q14; $Tilt_Q14$addr = $Tilt_Q14; $LF_shp_Q14$addr = $LF_shp_Q14; $Gains_Q16$addr = $Gains_Q16; $pitchL$addr = $pitchL; $Lambda_Q10$addr = $Lambda_Q10; $LTP_scale_Q14$addr = $LTP_scale_Q14; $0 = $NSQ$addr; $lagPrev = ((($0)) + 4328|0); $1 = HEAP32[$lagPrev>>2]|0; $lag = $1; $2 = $psEncC$addr; $nStatesDelayedDecision = ((($2)) + 4624|0); $3 = HEAP32[$nStatesDelayedDecision>>2]|0; $4 = (_llvm_stacksave()|0); $saved_stack = $4; $vla$alloca_mul = ($3*1300)|0; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $5 = $psEncC$addr; $nStatesDelayedDecision1 = ((($5)) + 4624|0); $6 = HEAP32[$nStatesDelayedDecision1>>2]|0; $mul = ($6*1300)|0; _memset(($vla|0),0,($mul|0))|0; $k = 0; while(1) { $7 = $k; $8 = $psEncC$addr; $nStatesDelayedDecision2 = ((($8)) + 4624|0); $9 = HEAP32[$nStatesDelayedDecision2>>2]|0; $cmp = ($7|0)<($9|0); if (!($cmp)) { break; } $10 = $k; $arrayidx = (($vla) + (($10*1300)|0)|0); $psDD = $arrayidx; $11 = $k; $12 = $psIndices$addr; $Seed = ((($12)) + 34|0); $13 = HEAP8[$Seed>>0]|0; $conv = $13 << 24 >> 24; $add = (($11) + ($conv))|0; $and = $add & 3; $14 = $psDD; $Seed3 = ((($14)) + 1288|0); HEAP32[$Seed3>>2] = $and; $15 = $psDD; $Seed4 = ((($15)) + 1288|0); $16 = HEAP32[$Seed4>>2]|0; $17 = $psDD; $SeedInit = ((($17)) + 1292|0); HEAP32[$SeedInit>>2] = $16; $18 = $psDD; $RD_Q10 = ((($18)) + 1296|0); HEAP32[$RD_Q10>>2] = 0; $19 = $NSQ$addr; $sLF_AR_shp_Q14 = ((($19)) + 4320|0); $20 = HEAP32[$sLF_AR_shp_Q14>>2]|0; $21 = $psDD; $LF_AR_Q14 = ((($21)) + 1280|0); HEAP32[$LF_AR_Q14>>2] = $20; $22 = $NSQ$addr; $sDiff_shp_Q14 = ((($22)) + 4324|0); $23 = HEAP32[$sDiff_shp_Q14>>2]|0; $24 = $psDD; $Diff_Q14 = ((($24)) + 1284|0); HEAP32[$Diff_Q14>>2] = $23; $25 = $NSQ$addr; $sLTP_shp_Q14 = ((($25)) + 1280|0); $26 = $psEncC$addr; $ltp_mem_length = ((($26)) + 4588|0); $27 = HEAP32[$ltp_mem_length>>2]|0; $sub = (($27) - 1)|0; $arrayidx5 = (($sLTP_shp_Q14) + ($sub<<2)|0); $28 = HEAP32[$arrayidx5>>2]|0; $29 = $psDD; $Shape_Q14 = ((($29)) + 1024|0); HEAP32[$Shape_Q14>>2] = $28; $30 = $psDD; $31 = $NSQ$addr; $sLPC_Q147 = ((($31)) + 3840|0); dest=$30; src=$sLPC_Q147; stop=dest+64|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); $32 = $psDD; $sAR2_Q14 = ((($32)) + 1184|0); $33 = $NSQ$addr; $sAR2_Q1410 = ((($33)) + 4224|0); dest=$sAR2_Q14; src=$sAR2_Q1410; stop=dest+96|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); $34 = $k; $inc = (($34) + 1)|0; $k = $inc; } $35 = $psIndices$addr; $signalType = ((($35)) + 29|0); $36 = HEAP8[$signalType>>0]|0; $conv12 = $36 << 24 >> 24; $shr = $conv12 >> 1; $arrayidx13 = (23512 + ($shr<<2)|0); $37 = $psIndices$addr; $quantOffsetType = ((($37)) + 30|0); $38 = HEAP8[$quantOffsetType>>0]|0; $idxprom = $38 << 24 >> 24; $arrayidx14 = (($arrayidx13) + ($idxprom<<1)|0); $39 = HEAP16[$arrayidx14>>1]|0; $conv15 = $39 << 16 >> 16; $offset_Q10 = $conv15; HEAP32[$smpl_buf_idx>>2] = 0; $40 = $psEncC$addr; $subfr_length = ((($40)) + 4584|0); $41 = HEAP32[$subfr_length>>2]|0; $call = (_silk_min_int_424(40,$41)|0); $decisionDelay = $call; $42 = $psIndices$addr; $signalType16 = ((($42)) + 29|0); $43 = HEAP8[$signalType16>>0]|0; $conv17 = $43 << 24 >> 24; $cmp18 = ($conv17|0)==(2); L5: do { if ($cmp18) { $k = 0; while(1) { $44 = $k; $45 = $psEncC$addr; $nb_subfr = ((($45)) + 4576|0); $46 = HEAP32[$nb_subfr>>2]|0; $cmp21 = ($44|0)<($46|0); if (!($cmp21)) { break L5; } $47 = $decisionDelay; $48 = $pitchL$addr; $49 = $k; $arrayidx24 = (($48) + ($49<<2)|0); $50 = HEAP32[$arrayidx24>>2]|0; $sub25 = (($50) - 2)|0; $sub26 = (($sub25) - 1)|0; $call27 = (_silk_min_int_424($47,$sub26)|0); $decisionDelay = $call27; $51 = $k; $inc29 = (($51) + 1)|0; $k = $inc29; } } else { $52 = $lag; $cmp31 = ($52|0)>(0); if ($cmp31) { $53 = $decisionDelay; $54 = $lag; $sub34 = (($54) - 2)|0; $sub35 = (($sub34) - 1)|0; $call36 = (_silk_min_int_424($53,$sub35)|0); $decisionDelay = $call36; } } } while(0); $55 = $psIndices$addr; $NLSFInterpCoef_Q2 = ((($55)) + 31|0); $56 = HEAP8[$NLSFInterpCoef_Q2>>0]|0; $conv38 = $56 << 24 >> 24; $cmp39 = ($conv38|0)==(4); if ($cmp39) { $LSF_interpolation_flag = 0; } else { $LSF_interpolation_flag = 1; } $57 = $psEncC$addr; $ltp_mem_length44 = ((($57)) + 4588|0); $58 = HEAP32[$ltp_mem_length44>>2]|0; $59 = $psEncC$addr; $frame_length = ((($59)) + 4580|0); $60 = HEAP32[$frame_length>>2]|0; $add45 = (($58) + ($60))|0; $vla46$alloca_mul = $add45<<2; $vla46 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla46$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla46$alloca_mul)|0)+15)&-16)|0);; $61 = $psEncC$addr; $ltp_mem_length47 = ((($61)) + 4588|0); $62 = HEAP32[$ltp_mem_length47>>2]|0; $63 = $psEncC$addr; $frame_length48 = ((($63)) + 4580|0); $64 = HEAP32[$frame_length48>>2]|0; $add49 = (($62) + ($64))|0; $vla50$alloca_mul = $add49<<1; $vla50 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla50$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla50$alloca_mul)|0)+15)&-16)|0);; $65 = $psEncC$addr; $subfr_length51 = ((($65)) + 4584|0); $66 = HEAP32[$subfr_length51>>2]|0; $vla52$alloca_mul = $66<<2; $vla52 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla52$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla52$alloca_mul)|0)+15)&-16)|0);; $67 = $NSQ$addr; $68 = $psEncC$addr; $ltp_mem_length53 = ((($68)) + 4588|0); $69 = HEAP32[$ltp_mem_length53>>2]|0; $arrayidx54 = (($67) + ($69<<1)|0); $pxq = $arrayidx54; $70 = $psEncC$addr; $ltp_mem_length55 = ((($70)) + 4588|0); $71 = HEAP32[$ltp_mem_length55>>2]|0; $72 = $NSQ$addr; $sLTP_shp_buf_idx = ((($72)) + 4336|0); HEAP32[$sLTP_shp_buf_idx>>2] = $71; $73 = $psEncC$addr; $ltp_mem_length56 = ((($73)) + 4588|0); $74 = HEAP32[$ltp_mem_length56>>2]|0; $75 = $NSQ$addr; $sLTP_buf_idx = ((($75)) + 4332|0); HEAP32[$sLTP_buf_idx>>2] = $74; $subfr = 0; $k = 0; while(1) { $76 = $k; $77 = $psEncC$addr; $nb_subfr58 = ((($77)) + 4576|0); $78 = HEAP32[$nb_subfr58>>2]|0; $cmp59 = ($76|0)<($78|0); if (!($cmp59)) { break; } $79 = $PredCoef_Q12$addr; $80 = $k; $shr62 = $80 >> 1; $81 = $LSF_interpolation_flag; $sub63 = (1 - ($81))|0; $or = $shr62 | $sub63; $mul64 = $or<<4; $arrayidx65 = (($79) + ($mul64<<1)|0); $A_Q12 = $arrayidx65; $82 = $LTPCoef_Q14$addr; $83 = $k; $mul66 = ($83*5)|0; $arrayidx67 = (($82) + ($mul66<<1)|0); $B_Q14 = $arrayidx67; $84 = $AR_Q13$addr; $85 = $k; $mul68 = ($85*24)|0; $arrayidx69 = (($84) + ($mul68<<1)|0); $AR_shp_Q13 = $arrayidx69; $86 = $HarmShapeGain_Q14$addr; $87 = $k; $arrayidx70 = (($86) + ($87<<2)|0); $88 = HEAP32[$arrayidx70>>2]|0; $shr71 = $88 >> 2; $HarmShapeFIRPacked_Q14 = $shr71; $89 = $HarmShapeGain_Q14$addr; $90 = $k; $arrayidx72 = (($89) + ($90<<2)|0); $91 = HEAP32[$arrayidx72>>2]|0; $shr73 = $91 >> 1; $shl = $shr73 << 16; $92 = $HarmShapeFIRPacked_Q14; $or74 = $92 | $shl; $HarmShapeFIRPacked_Q14 = $or74; $93 = $NSQ$addr; $rewhite_flag = ((($93)) + 4348|0); HEAP32[$rewhite_flag>>2] = 0; $94 = $psIndices$addr; $signalType75 = ((($94)) + 29|0); $95 = HEAP8[$signalType75>>0]|0; $conv76 = $95 << 24 >> 24; $cmp77 = ($conv76|0)==(2); if ($cmp77) { $96 = $pitchL$addr; $97 = $k; $arrayidx80 = (($96) + ($97<<2)|0); $98 = HEAP32[$arrayidx80>>2]|0; $lag = $98; $99 = $k; $100 = $LSF_interpolation_flag; $shl81 = $100 << 1; $sub82 = (3 - ($shl81))|0; $and83 = $99 & $sub82; $cmp84 = ($and83|0)==(0); if ($cmp84) { $101 = $k; $cmp87 = ($101|0)==(2); if ($cmp87) { $RD_Q1091 = ((($vla)) + 1296|0); $102 = HEAP32[$RD_Q1091>>2]|0; $RDmin_Q10 = $102; $Winner_ind = 0; $i = 1; while(1) { $103 = $i; $104 = $psEncC$addr; $nStatesDelayedDecision93 = ((($104)) + 4624|0); $105 = HEAP32[$nStatesDelayedDecision93>>2]|0; $cmp94 = ($103|0)<($105|0); if (!($cmp94)) { break; } $106 = $i; $arrayidx97 = (($vla) + (($106*1300)|0)|0); $RD_Q1098 = ((($arrayidx97)) + 1296|0); $107 = HEAP32[$RD_Q1098>>2]|0; $108 = $RDmin_Q10; $cmp99 = ($107|0)<($108|0); if ($cmp99) { $109 = $i; $arrayidx102 = (($vla) + (($109*1300)|0)|0); $RD_Q10103 = ((($arrayidx102)) + 1296|0); $110 = HEAP32[$RD_Q10103>>2]|0; $RDmin_Q10 = $110; $111 = $i; $Winner_ind = $111; } $112 = $i; $inc106 = (($112) + 1)|0; $i = $inc106; } $i = 0; while(1) { $113 = $i; $114 = $psEncC$addr; $nStatesDelayedDecision109 = ((($114)) + 4624|0); $115 = HEAP32[$nStatesDelayedDecision109>>2]|0; $cmp110 = ($113|0)<($115|0); if (!($cmp110)) { break; } $116 = $i; $117 = $Winner_ind; $cmp113 = ($116|0)!=($117|0); if ($cmp113) { $118 = $i; $arrayidx116 = (($vla) + (($118*1300)|0)|0); $RD_Q10117 = ((($arrayidx116)) + 1296|0); $119 = HEAP32[$RD_Q10117>>2]|0; $add118 = (($119) + 134217727)|0; HEAP32[$RD_Q10117>>2] = $add118; } $120 = $i; $inc121 = (($120) + 1)|0; $i = $inc121; } $121 = $Winner_ind; $arrayidx123 = (($vla) + (($121*1300)|0)|0); $psDD = $arrayidx123; $122 = HEAP32[$smpl_buf_idx>>2]|0; $123 = $decisionDelay; $add124 = (($122) + ($123))|0; $last_smple_idx = $add124; $i = 0; while(1) { $124 = $i; $125 = $decisionDelay; $cmp126 = ($124|0)<($125|0); if (!($cmp126)) { break; } $126 = $last_smple_idx; $sub129 = (($126) - 1)|0; $rem = (($sub129|0) % 40)&-1; $last_smple_idx = $rem; $127 = $last_smple_idx; $cmp130 = ($127|0)<(0); if ($cmp130) { $128 = $last_smple_idx; $add133 = (($128) + 40)|0; $last_smple_idx = $add133; } $129 = $psDD; $Q_Q10 = ((($129)) + 544|0); $130 = $last_smple_idx; $arrayidx135 = (($Q_Q10) + ($130<<2)|0); $131 = HEAP32[$arrayidx135>>2]|0; $shr136 = $131 >> 9; $add137 = (($shr136) + 1)|0; $shr138 = $add137 >> 1; $conv139 = $shr138&255; $132 = $pulses$addr; $133 = $i; $134 = $decisionDelay; $sub140 = (($133) - ($134))|0; $arrayidx141 = (($132) + ($sub140)|0); HEAP8[$arrayidx141>>0] = $conv139; $135 = $psDD; $Xq_Q14 = ((($135)) + 704|0); $136 = $last_smple_idx; $arrayidx142 = (($Xq_Q14) + ($136<<2)|0); $137 = HEAP32[$arrayidx142>>2]|0; $shr143 = $137 >> 16; $138 = $Gains_Q16$addr; $arrayidx144 = ((($138)) + 4|0); $139 = HEAP32[$arrayidx144>>2]|0; $conv145 = $139&65535; $conv146 = $conv145 << 16 >> 16; $mul147 = Math_imul($shr143, $conv146)|0; $140 = $psDD; $Xq_Q14148 = ((($140)) + 704|0); $141 = $last_smple_idx; $arrayidx149 = (($Xq_Q14148) + ($141<<2)|0); $142 = HEAP32[$arrayidx149>>2]|0; $and150 = $142 & 65535; $143 = $Gains_Q16$addr; $arrayidx151 = ((($143)) + 4|0); $144 = HEAP32[$arrayidx151>>2]|0; $conv152 = $144&65535; $conv153 = $conv152 << 16 >> 16; $mul154 = Math_imul($and150, $conv153)|0; $shr155 = $mul154 >> 16; $add156 = (($mul147) + ($shr155))|0; $145 = $psDD; $Xq_Q14157 = ((($145)) + 704|0); $146 = $last_smple_idx; $arrayidx158 = (($Xq_Q14157) + ($146<<2)|0); $147 = HEAP32[$arrayidx158>>2]|0; $148 = $Gains_Q16$addr; $arrayidx159 = ((($148)) + 4|0); $149 = HEAP32[$arrayidx159>>2]|0; $shr160 = $149 >> 15; $add161 = (($shr160) + 1)|0; $shr162 = $add161 >> 1; $mul163 = Math_imul($147, $shr162)|0; $add164 = (($add156) + ($mul163))|0; $shr165 = $add164 >> 13; $add166 = (($shr165) + 1)|0; $shr167 = $add166 >> 1; $cmp168 = ($shr167|0)>(32767); if ($cmp168) { $cond229 = 32767; } else { $150 = $psDD; $Xq_Q14170 = ((($150)) + 704|0); $151 = $last_smple_idx; $arrayidx171 = (($Xq_Q14170) + ($151<<2)|0); $152 = HEAP32[$arrayidx171>>2]|0; $shr172 = $152 >> 16; $153 = $Gains_Q16$addr; $arrayidx173 = ((($153)) + 4|0); $154 = HEAP32[$arrayidx173>>2]|0; $conv174 = $154&65535; $conv175 = $conv174 << 16 >> 16; $mul176 = Math_imul($shr172, $conv175)|0; $155 = $psDD; $Xq_Q14177 = ((($155)) + 704|0); $156 = $last_smple_idx; $arrayidx178 = (($Xq_Q14177) + ($156<<2)|0); $157 = HEAP32[$arrayidx178>>2]|0; $and179 = $157 & 65535; $158 = $Gains_Q16$addr; $arrayidx180 = ((($158)) + 4|0); $159 = HEAP32[$arrayidx180>>2]|0; $conv181 = $159&65535; $conv182 = $conv181 << 16 >> 16; $mul183 = Math_imul($and179, $conv182)|0; $shr184 = $mul183 >> 16; $add185 = (($mul176) + ($shr184))|0; $160 = $psDD; $Xq_Q14186 = ((($160)) + 704|0); $161 = $last_smple_idx; $arrayidx187 = (($Xq_Q14186) + ($161<<2)|0); $162 = HEAP32[$arrayidx187>>2]|0; $163 = $Gains_Q16$addr; $arrayidx188 = ((($163)) + 4|0); $164 = HEAP32[$arrayidx188>>2]|0; $shr189 = $164 >> 15; $add190 = (($shr189) + 1)|0; $shr191 = $add190 >> 1; $mul192 = Math_imul($162, $shr191)|0; $add193 = (($add185) + ($mul192))|0; $shr194 = $add193 >> 13; $add195 = (($shr194) + 1)|0; $shr196 = $add195 >> 1; $cmp197 = ($shr196|0)<(-32768); if ($cmp197) { $cond229 = -32768; } else { $165 = $psDD; $Xq_Q14201 = ((($165)) + 704|0); $166 = $last_smple_idx; $arrayidx202 = (($Xq_Q14201) + ($166<<2)|0); $167 = HEAP32[$arrayidx202>>2]|0; $shr203 = $167 >> 16; $168 = $Gains_Q16$addr; $arrayidx204 = ((($168)) + 4|0); $169 = HEAP32[$arrayidx204>>2]|0; $conv205 = $169&65535; $conv206 = $conv205 << 16 >> 16; $mul207 = Math_imul($shr203, $conv206)|0; $170 = $psDD; $Xq_Q14208 = ((($170)) + 704|0); $171 = $last_smple_idx; $arrayidx209 = (($Xq_Q14208) + ($171<<2)|0); $172 = HEAP32[$arrayidx209>>2]|0; $and210 = $172 & 65535; $173 = $Gains_Q16$addr; $arrayidx211 = ((($173)) + 4|0); $174 = HEAP32[$arrayidx211>>2]|0; $conv212 = $174&65535; $conv213 = $conv212 << 16 >> 16; $mul214 = Math_imul($and210, $conv213)|0; $shr215 = $mul214 >> 16; $add216 = (($mul207) + ($shr215))|0; $175 = $psDD; $Xq_Q14217 = ((($175)) + 704|0); $176 = $last_smple_idx; $arrayidx218 = (($Xq_Q14217) + ($176<<2)|0); $177 = HEAP32[$arrayidx218>>2]|0; $178 = $Gains_Q16$addr; $arrayidx219 = ((($178)) + 4|0); $179 = HEAP32[$arrayidx219>>2]|0; $shr220 = $179 >> 15; $add221 = (($shr220) + 1)|0; $shr222 = $add221 >> 1; $mul223 = Math_imul($177, $shr222)|0; $add224 = (($add216) + ($mul223))|0; $shr225 = $add224 >> 13; $add226 = (($shr225) + 1)|0; $shr227 = $add226 >> 1; $cond229 = $shr227; } } $conv230 = $cond229&65535; $180 = $pxq; $181 = $i; $182 = $decisionDelay; $sub231 = (($181) - ($182))|0; $arrayidx232 = (($180) + ($sub231<<1)|0); HEAP16[$arrayidx232>>1] = $conv230; $183 = $psDD; $Shape_Q14233 = ((($183)) + 1024|0); $184 = $last_smple_idx; $arrayidx234 = (($Shape_Q14233) + ($184<<2)|0); $185 = HEAP32[$arrayidx234>>2]|0; $186 = $NSQ$addr; $sLTP_shp_Q14235 = ((($186)) + 1280|0); $187 = $NSQ$addr; $sLTP_shp_buf_idx236 = ((($187)) + 4336|0); $188 = HEAP32[$sLTP_shp_buf_idx236>>2]|0; $189 = $decisionDelay; $sub237 = (($188) - ($189))|0; $190 = $i; $add238 = (($sub237) + ($190))|0; $arrayidx239 = (($sLTP_shp_Q14235) + ($add238<<2)|0); HEAP32[$arrayidx239>>2] = $185; $191 = $i; $inc241 = (($191) + 1)|0; $i = $inc241; } $subfr = 0; } $192 = $psEncC$addr; $ltp_mem_length244 = ((($192)) + 4588|0); $193 = HEAP32[$ltp_mem_length244>>2]|0; $194 = $lag; $sub245 = (($193) - ($194))|0; $195 = $psEncC$addr; $predictLPCOrder = ((($195)) + 4636|0); $196 = HEAP32[$predictLPCOrder>>2]|0; $sub246 = (($sub245) - ($196))|0; $sub247 = (($sub246) - 2)|0; $start_idx = $sub247; $197 = $start_idx; $arrayidx248 = (($vla50) + ($197<<1)|0); $198 = $NSQ$addr; $199 = $start_idx; $200 = $k; $201 = $psEncC$addr; $subfr_length250 = ((($201)) + 4584|0); $202 = HEAP32[$subfr_length250>>2]|0; $mul251 = Math_imul($200, $202)|0; $add252 = (($199) + ($mul251))|0; $arrayidx253 = (($198) + ($add252<<1)|0); $203 = $A_Q12; $204 = $psEncC$addr; $ltp_mem_length254 = ((($204)) + 4588|0); $205 = HEAP32[$ltp_mem_length254>>2]|0; $206 = $start_idx; $sub255 = (($205) - ($206))|0; $207 = $psEncC$addr; $predictLPCOrder256 = ((($207)) + 4636|0); $208 = HEAP32[$predictLPCOrder256>>2]|0; $209 = $psEncC$addr; $arch = ((($209)) + 5088|0); $210 = HEAP32[$arch>>2]|0; _silk_LPC_analysis_filter($arrayidx248,$arrayidx253,$203,$sub255,$208,$210); $211 = $psEncC$addr; $ltp_mem_length257 = ((($211)) + 4588|0); $212 = HEAP32[$ltp_mem_length257>>2]|0; $213 = $NSQ$addr; $sLTP_buf_idx258 = ((($213)) + 4332|0); HEAP32[$sLTP_buf_idx258>>2] = $212; $214 = $NSQ$addr; $rewhite_flag259 = ((($214)) + 4348|0); HEAP32[$rewhite_flag259>>2] = 1; } } $215 = $psEncC$addr; $216 = $NSQ$addr; $217 = $x16$addr; $218 = $k; $219 = $psEncC$addr; $nStatesDelayedDecision262 = ((($219)) + 4624|0); $220 = HEAP32[$nStatesDelayedDecision262>>2]|0; $221 = $LTP_scale_Q14$addr; $222 = $Gains_Q16$addr; $223 = $pitchL$addr; $224 = $psIndices$addr; $signalType263 = ((($224)) + 29|0); $225 = HEAP8[$signalType263>>0]|0; $conv264 = $225 << 24 >> 24; $226 = $decisionDelay; _silk_nsq_del_dec_scale_states($215,$216,$vla,$217,$vla52,$vla50,$vla46,$218,$220,$221,$222,$223,$conv264,$226); $227 = $NSQ$addr; $228 = $psIndices$addr; $signalType265 = ((($228)) + 29|0); $229 = HEAP8[$signalType265>>0]|0; $conv266 = $229 << 24 >> 24; $230 = $pulses$addr; $231 = $pxq; $232 = $A_Q12; $233 = $B_Q14; $234 = $AR_shp_Q13; $235 = $lag; $236 = $HarmShapeFIRPacked_Q14; $237 = $Tilt_Q14$addr; $238 = $k; $arrayidx268 = (($237) + ($238<<2)|0); $239 = HEAP32[$arrayidx268>>2]|0; $240 = $LF_shp_Q14$addr; $241 = $k; $arrayidx269 = (($240) + ($241<<2)|0); $242 = HEAP32[$arrayidx269>>2]|0; $243 = $Gains_Q16$addr; $244 = $k; $arrayidx270 = (($243) + ($244<<2)|0); $245 = HEAP32[$arrayidx270>>2]|0; $246 = $Lambda_Q10$addr; $247 = $offset_Q10; $248 = $psEncC$addr; $subfr_length271 = ((($248)) + 4584|0); $249 = HEAP32[$subfr_length271>>2]|0; $250 = $subfr; $inc272 = (($250) + 1)|0; $subfr = $inc272; $251 = $psEncC$addr; $shapingLPCOrder = ((($251)) + 4632|0); $252 = HEAP32[$shapingLPCOrder>>2]|0; $253 = $psEncC$addr; $predictLPCOrder273 = ((($253)) + 4636|0); $254 = HEAP32[$predictLPCOrder273>>2]|0; $255 = $psEncC$addr; $warping_Q16 = ((($255)) + 4668|0); $256 = HEAP32[$warping_Q16>>2]|0; $257 = $psEncC$addr; $nStatesDelayedDecision274 = ((($257)) + 4624|0); $258 = HEAP32[$nStatesDelayedDecision274>>2]|0; $259 = $decisionDelay; $260 = $psEncC$addr; $arch275 = ((($260)) + 5088|0); $261 = HEAP32[$arch275>>2]|0; _silk_noise_shape_quantizer_del_dec($227,$vla,$conv266,$vla52,$230,$231,$vla46,$delayedGain_Q10,$232,$233,$234,$235,$236,$239,$242,$245,$246,$247,$249,$250,$252,$254,$256,$258,$smpl_buf_idx,$259,$261); $262 = $psEncC$addr; $subfr_length276 = ((($262)) + 4584|0); $263 = HEAP32[$subfr_length276>>2]|0; $264 = $x16$addr; $add$ptr = (($264) + ($263<<1)|0); $x16$addr = $add$ptr; $265 = $psEncC$addr; $subfr_length277 = ((($265)) + 4584|0); $266 = HEAP32[$subfr_length277>>2]|0; $267 = $pulses$addr; $add$ptr278 = (($267) + ($266)|0); $pulses$addr = $add$ptr278; $268 = $psEncC$addr; $subfr_length279 = ((($268)) + 4584|0); $269 = HEAP32[$subfr_length279>>2]|0; $270 = $pxq; $add$ptr280 = (($270) + ($269<<1)|0); $pxq = $add$ptr280; $271 = $k; $inc282 = (($271) + 1)|0; $k = $inc282; } $RD_Q10285 = ((($vla)) + 1296|0); $272 = HEAP32[$RD_Q10285>>2]|0; $RDmin_Q10 = $272; $Winner_ind = 0; $k = 1; while(1) { $273 = $k; $274 = $psEncC$addr; $nStatesDelayedDecision287 = ((($274)) + 4624|0); $275 = HEAP32[$nStatesDelayedDecision287>>2]|0; $cmp288 = ($273|0)<($275|0); if (!($cmp288)) { break; } $276 = $k; $arrayidx291 = (($vla) + (($276*1300)|0)|0); $RD_Q10292 = ((($arrayidx291)) + 1296|0); $277 = HEAP32[$RD_Q10292>>2]|0; $278 = $RDmin_Q10; $cmp293 = ($277|0)<($278|0); if ($cmp293) { $279 = $k; $arrayidx296 = (($vla) + (($279*1300)|0)|0); $RD_Q10297 = ((($arrayidx296)) + 1296|0); $280 = HEAP32[$RD_Q10297>>2]|0; $RDmin_Q10 = $280; $281 = $k; $Winner_ind = $281; } $282 = $k; $inc300 = (($282) + 1)|0; $k = $inc300; } $283 = $Winner_ind; $arrayidx302 = (($vla) + (($283*1300)|0)|0); $psDD = $arrayidx302; $284 = $psDD; $SeedInit303 = ((($284)) + 1292|0); $285 = HEAP32[$SeedInit303>>2]|0; $conv304 = $285&255; $286 = $psIndices$addr; $Seed305 = ((($286)) + 34|0); HEAP8[$Seed305>>0] = $conv304; $287 = HEAP32[$smpl_buf_idx>>2]|0; $288 = $decisionDelay; $add306 = (($287) + ($288))|0; $last_smple_idx = $add306; $289 = $Gains_Q16$addr; $290 = $psEncC$addr; $nb_subfr307 = ((($290)) + 4576|0); $291 = HEAP32[$nb_subfr307>>2]|0; $sub308 = (($291) - 1)|0; $arrayidx309 = (($289) + ($sub308<<2)|0); $292 = HEAP32[$arrayidx309>>2]|0; $shr310 = $292 >> 6; $Gain_Q10 = $shr310; $i = 0; while(1) { $293 = $i; $294 = $decisionDelay; $cmp312 = ($293|0)<($294|0); if (!($cmp312)) { break; } $295 = $last_smple_idx; $sub315 = (($295) - 1)|0; $rem316 = (($sub315|0) % 40)&-1; $last_smple_idx = $rem316; $296 = $last_smple_idx; $cmp317 = ($296|0)<(0); if ($cmp317) { $297 = $last_smple_idx; $add320 = (($297) + 40)|0; $last_smple_idx = $add320; } $298 = $psDD; $Q_Q10322 = ((($298)) + 544|0); $299 = $last_smple_idx; $arrayidx323 = (($Q_Q10322) + ($299<<2)|0); $300 = HEAP32[$arrayidx323>>2]|0; $shr324 = $300 >> 9; $add325 = (($shr324) + 1)|0; $shr326 = $add325 >> 1; $conv327 = $shr326&255; $301 = $pulses$addr; $302 = $i; $303 = $decisionDelay; $sub328 = (($302) - ($303))|0; $arrayidx329 = (($301) + ($sub328)|0); HEAP8[$arrayidx329>>0] = $conv327; $304 = $psDD; $Xq_Q14330 = ((($304)) + 704|0); $305 = $last_smple_idx; $arrayidx331 = (($Xq_Q14330) + ($305<<2)|0); $306 = HEAP32[$arrayidx331>>2]|0; $shr332 = $306 >> 16; $307 = $Gain_Q10; $conv333 = $307&65535; $conv334 = $conv333 << 16 >> 16; $mul335 = Math_imul($shr332, $conv334)|0; $308 = $psDD; $Xq_Q14336 = ((($308)) + 704|0); $309 = $last_smple_idx; $arrayidx337 = (($Xq_Q14336) + ($309<<2)|0); $310 = HEAP32[$arrayidx337>>2]|0; $and338 = $310 & 65535; $311 = $Gain_Q10; $conv339 = $311&65535; $conv340 = $conv339 << 16 >> 16; $mul341 = Math_imul($and338, $conv340)|0; $shr342 = $mul341 >> 16; $add343 = (($mul335) + ($shr342))|0; $312 = $psDD; $Xq_Q14344 = ((($312)) + 704|0); $313 = $last_smple_idx; $arrayidx345 = (($Xq_Q14344) + ($313<<2)|0); $314 = HEAP32[$arrayidx345>>2]|0; $315 = $Gain_Q10; $shr346 = $315 >> 15; $add347 = (($shr346) + 1)|0; $shr348 = $add347 >> 1; $mul349 = Math_imul($314, $shr348)|0; $add350 = (($add343) + ($mul349))|0; $shr351 = $add350 >> 7; $add352 = (($shr351) + 1)|0; $shr353 = $add352 >> 1; $cmp354 = ($shr353|0)>(32767); if ($cmp354) { $cond413 = 32767; } else { $316 = $psDD; $Xq_Q14358 = ((($316)) + 704|0); $317 = $last_smple_idx; $arrayidx359 = (($Xq_Q14358) + ($317<<2)|0); $318 = HEAP32[$arrayidx359>>2]|0; $shr360 = $318 >> 16; $319 = $Gain_Q10; $conv361 = $319&65535; $conv362 = $conv361 << 16 >> 16; $mul363 = Math_imul($shr360, $conv362)|0; $320 = $psDD; $Xq_Q14364 = ((($320)) + 704|0); $321 = $last_smple_idx; $arrayidx365 = (($Xq_Q14364) + ($321<<2)|0); $322 = HEAP32[$arrayidx365>>2]|0; $and366 = $322 & 65535; $323 = $Gain_Q10; $conv367 = $323&65535; $conv368 = $conv367 << 16 >> 16; $mul369 = Math_imul($and366, $conv368)|0; $shr370 = $mul369 >> 16; $add371 = (($mul363) + ($shr370))|0; $324 = $psDD; $Xq_Q14372 = ((($324)) + 704|0); $325 = $last_smple_idx; $arrayidx373 = (($Xq_Q14372) + ($325<<2)|0); $326 = HEAP32[$arrayidx373>>2]|0; $327 = $Gain_Q10; $shr374 = $327 >> 15; $add375 = (($shr374) + 1)|0; $shr376 = $add375 >> 1; $mul377 = Math_imul($326, $shr376)|0; $add378 = (($add371) + ($mul377))|0; $shr379 = $add378 >> 7; $add380 = (($shr379) + 1)|0; $shr381 = $add380 >> 1; $cmp382 = ($shr381|0)<(-32768); if ($cmp382) { $cond413 = -32768; } else { $328 = $psDD; $Xq_Q14386 = ((($328)) + 704|0); $329 = $last_smple_idx; $arrayidx387 = (($Xq_Q14386) + ($329<<2)|0); $330 = HEAP32[$arrayidx387>>2]|0; $shr388 = $330 >> 16; $331 = $Gain_Q10; $conv389 = $331&65535; $conv390 = $conv389 << 16 >> 16; $mul391 = Math_imul($shr388, $conv390)|0; $332 = $psDD; $Xq_Q14392 = ((($332)) + 704|0); $333 = $last_smple_idx; $arrayidx393 = (($Xq_Q14392) + ($333<<2)|0); $334 = HEAP32[$arrayidx393>>2]|0; $and394 = $334 & 65535; $335 = $Gain_Q10; $conv395 = $335&65535; $conv396 = $conv395 << 16 >> 16; $mul397 = Math_imul($and394, $conv396)|0; $shr398 = $mul397 >> 16; $add399 = (($mul391) + ($shr398))|0; $336 = $psDD; $Xq_Q14400 = ((($336)) + 704|0); $337 = $last_smple_idx; $arrayidx401 = (($Xq_Q14400) + ($337<<2)|0); $338 = HEAP32[$arrayidx401>>2]|0; $339 = $Gain_Q10; $shr402 = $339 >> 15; $add403 = (($shr402) + 1)|0; $shr404 = $add403 >> 1; $mul405 = Math_imul($338, $shr404)|0; $add406 = (($add399) + ($mul405))|0; $shr407 = $add406 >> 7; $add408 = (($shr407) + 1)|0; $shr409 = $add408 >> 1; $cond413 = $shr409; } } $conv414 = $cond413&65535; $340 = $pxq; $341 = $i; $342 = $decisionDelay; $sub415 = (($341) - ($342))|0; $arrayidx416 = (($340) + ($sub415<<1)|0); HEAP16[$arrayidx416>>1] = $conv414; $343 = $psDD; $Shape_Q14417 = ((($343)) + 1024|0); $344 = $last_smple_idx; $arrayidx418 = (($Shape_Q14417) + ($344<<2)|0); $345 = HEAP32[$arrayidx418>>2]|0; $346 = $NSQ$addr; $sLTP_shp_Q14419 = ((($346)) + 1280|0); $347 = $NSQ$addr; $sLTP_shp_buf_idx420 = ((($347)) + 4336|0); $348 = HEAP32[$sLTP_shp_buf_idx420>>2]|0; $349 = $decisionDelay; $sub421 = (($348) - ($349))|0; $350 = $i; $add422 = (($sub421) + ($350))|0; $arrayidx423 = (($sLTP_shp_Q14419) + ($add422<<2)|0); HEAP32[$arrayidx423>>2] = $345; $351 = $i; $inc425 = (($351) + 1)|0; $i = $inc425; } $352 = $NSQ$addr; $sLPC_Q14427 = ((($352)) + 3840|0); $353 = $psDD; $354 = $psEncC$addr; $subfr_length430 = ((($354)) + 4584|0); $355 = HEAP32[$subfr_length430>>2]|0; $arrayidx431 = (($353) + ($355<<2)|0); dest=$sLPC_Q14427; src=$arrayidx431; stop=dest+64|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); $356 = $NSQ$addr; $sAR2_Q14432 = ((($356)) + 4224|0); $357 = $psDD; $sAR2_Q14434 = ((($357)) + 1184|0); dest=$sAR2_Q14432; src=$sAR2_Q14434; stop=dest+96|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); $358 = $psDD; $LF_AR_Q14436 = ((($358)) + 1280|0); $359 = HEAP32[$LF_AR_Q14436>>2]|0; $360 = $NSQ$addr; $sLF_AR_shp_Q14437 = ((($360)) + 4320|0); HEAP32[$sLF_AR_shp_Q14437>>2] = $359; $361 = $psDD; $Diff_Q14438 = ((($361)) + 1284|0); $362 = HEAP32[$Diff_Q14438>>2]|0; $363 = $NSQ$addr; $sDiff_shp_Q14439 = ((($363)) + 4324|0); HEAP32[$sDiff_shp_Q14439>>2] = $362; $364 = $pitchL$addr; $365 = $psEncC$addr; $nb_subfr440 = ((($365)) + 4576|0); $366 = HEAP32[$nb_subfr440>>2]|0; $sub441 = (($366) - 1)|0; $arrayidx442 = (($364) + ($sub441<<2)|0); $367 = HEAP32[$arrayidx442>>2]|0; $368 = $NSQ$addr; $lagPrev443 = ((($368)) + 4328|0); HEAP32[$lagPrev443>>2] = $367; $369 = $NSQ$addr; $370 = $NSQ$addr; $371 = $psEncC$addr; $frame_length447 = ((($371)) + 4580|0); $372 = HEAP32[$frame_length447>>2]|0; $arrayidx448 = (($370) + ($372<<1)|0); $373 = $psEncC$addr; $ltp_mem_length449 = ((($373)) + 4588|0); $374 = HEAP32[$ltp_mem_length449>>2]|0; $mul450 = $374<<1; _memmove(($369|0),($arrayidx448|0),($mul450|0))|0; $375 = $NSQ$addr; $sLTP_shp_Q14451 = ((($375)) + 1280|0); $376 = $NSQ$addr; $sLTP_shp_Q14453 = ((($376)) + 1280|0); $377 = $psEncC$addr; $frame_length454 = ((($377)) + 4580|0); $378 = HEAP32[$frame_length454>>2]|0; $arrayidx455 = (($sLTP_shp_Q14453) + ($378<<2)|0); $379 = $psEncC$addr; $ltp_mem_length456 = ((($379)) + 4588|0); $380 = HEAP32[$ltp_mem_length456>>2]|0; $mul457 = $380<<2; _memmove(($sLTP_shp_Q14451|0),($arrayidx455|0),($mul457|0))|0; $381 = $saved_stack; _llvm_stackrestore(($381|0)); STACKTOP = sp;return; } function _silk_min_int_424($a,$b) { $a = $a|0; $b = $b|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $a$addr = 0, $b$addr = 0, $cmp = 0, $cond = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $a$addr = $a; $b$addr = $b; $0 = $a$addr; $1 = $b$addr; $cmp = ($0|0)<($1|0); $2 = $a$addr; $3 = $b$addr; $cond = $cmp ? $2 : $3; STACKTOP = sp;return ($cond|0); } function _silk_nsq_del_dec_scale_states($psEncC,$NSQ,$psDelDec,$x16,$x_sc_Q10,$sLTP,$sLTP_Q15,$subfr,$nStatesDelayedDecision,$LTP_scale_Q14,$Gains_Q16,$pitchL,$signal_type,$decisionDelay) { $psEncC = $psEncC|0; $NSQ = $NSQ|0; $psDelDec = $psDelDec|0; $x16 = $x16|0; $x_sc_Q10 = $x_sc_Q10|0; $sLTP = $sLTP|0; $sLTP_Q15 = $sLTP_Q15|0; $subfr = $subfr|0; $nStatesDelayedDecision = $nStatesDelayedDecision|0; $LTP_scale_Q14 = $LTP_scale_Q14|0; $Gains_Q16 = $Gains_Q16|0; $pitchL = $pitchL|0; $signal_type = $signal_type|0; $decisionDelay = $decisionDelay|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; var $Diff_Q14 = 0, $Diff_Q14162 = 0, $Diff_Q14168 = 0, $Diff_Q14174 = 0, $Gains_Q16$addr = 0, $LF_AR_Q14 = 0, $LF_AR_Q14144 = 0, $LF_AR_Q14150 = 0, $LF_AR_Q14156 = 0, $LTP_scale_Q14$addr = 0, $NSQ$addr = 0, $Pred_Q15 = 0, $Pred_Q15243 = 0, $Pred_Q15250 = 0, $Pred_Q15257 = 0, $Shape_Q14 = 0, $Shape_Q14265 = 0, $Shape_Q14272 = 0, $Shape_Q14279 = 0, $add = 0; var $add122 = 0, $add125 = 0, $add128 = 0, $add149 = 0, $add15 = 0, $add152 = 0, $add155 = 0, $add167 = 0, $add170 = 0, $add173 = 0, $add19 = 0, $add191 = 0, $add195 = 0, $add198 = 0, $add22 = 0, $add220 = 0, $add224 = 0, $add227 = 0, $add249 = 0, $add253 = 0; var $add256 = 0, $add271 = 0, $add275 = 0, $add278 = 0, $add36 = 0, $add52 = 0, $add83 = 0, $add87 = 0, $add90 = 0, $and = 0, $and116 = 0, $and143 = 0, $and161 = 0, $and184 = 0, $and213 = 0, $and242 = 0, $and264 = 0, $and31 = 0, $and47 = 0, $and76 = 0; var $arrayidx = 0, $arrayidx1 = 0, $arrayidx112 = 0, $arrayidx117 = 0, $arrayidx123 = 0, $arrayidx129 = 0, $arrayidx138 = 0, $arrayidx16 = 0, $arrayidx180 = 0, $arrayidx186 = 0, $arrayidx193 = 0, $arrayidx2 = 0, $arrayidx200 = 0, $arrayidx209 = 0, $arrayidx215 = 0, $arrayidx222 = 0, $arrayidx229 = 0, $arrayidx23 = 0, $arrayidx238 = 0, $arrayidx244 = 0; var $arrayidx251 = 0, $arrayidx258 = 0, $arrayidx260 = 0, $arrayidx266 = 0, $arrayidx273 = 0, $arrayidx280 = 0, $arrayidx287 = 0, $arrayidx44 = 0, $arrayidx48 = 0, $arrayidx5 = 0, $arrayidx53 = 0, $arrayidx58 = 0, $arrayidx63 = 0, $arrayidx72 = 0, $arrayidx78 = 0, $arrayidx85 = 0, $arrayidx9 = 0, $arrayidx92 = 0, $call = 0, $call64 = 0; var $cmp = 0, $cmp108 = 0, $cmp135 = 0, $cmp176 = 0, $cmp205 = 0, $cmp234 = 0, $cmp24 = 0, $cmp4 = 0, $cmp40 = 0, $cmp59 = 0, $cmp68 = 0, $cmp96 = 0, $cmp99 = 0, $cond = 0, $conv = 0, $conv10 = 0, $conv11 = 0, $conv113 = 0, $conv114 = 0, $conv118 = 0; var $conv119 = 0, $conv12 = 0, $conv140 = 0, $conv141 = 0, $conv145 = 0, $conv146 = 0, $conv158 = 0, $conv159 = 0, $conv163 = 0, $conv164 = 0, $conv17 = 0, $conv181 = 0, $conv182 = 0, $conv187 = 0, $conv188 = 0, $conv210 = 0, $conv211 = 0, $conv216 = 0, $conv217 = 0, $conv239 = 0; var $conv240 = 0, $conv245 = 0, $conv246 = 0, $conv261 = 0, $conv262 = 0, $conv267 = 0, $conv268 = 0, $conv28 = 0, $conv29 = 0, $conv32 = 0, $conv33 = 0, $conv45 = 0, $conv49 = 0, $conv7 = 0, $conv73 = 0, $conv74 = 0, $conv79 = 0, $conv8 = 0, $conv80 = 0, $decisionDelay$addr = 0; var $gain_adj_Q16 = 0, $i = 0, $inc = 0, $inc131 = 0, $inc202 = 0, $inc231 = 0, $inc282 = 0, $inc285 = 0, $inc55 = 0, $inc94 = 0, $inv_gain_Q26 = 0, $inv_gain_Q31 = 0, $k = 0, $lag = 0, $ltp_mem_length = 0, $mul = 0, $mul115 = 0, $mul120 = 0, $mul127 = 0, $mul13 = 0; var $mul142 = 0, $mul147 = 0, $mul154 = 0, $mul160 = 0, $mul165 = 0, $mul172 = 0, $mul183 = 0, $mul189 = 0, $mul197 = 0, $mul21 = 0, $mul212 = 0, $mul218 = 0, $mul226 = 0, $mul241 = 0, $mul247 = 0, $mul255 = 0, $mul263 = 0, $mul269 = 0, $mul277 = 0, $mul30 = 0; var $mul34 = 0, $mul46 = 0, $mul50 = 0, $mul75 = 0, $mul81 = 0, $mul89 = 0, $nStatesDelayedDecision$addr = 0, $pitchL$addr = 0, $prev_gain_Q16 = 0, $prev_gain_Q16288 = 0, $prev_gain_Q1662 = 0, $psDD = 0, $psDelDec$addr = 0, $psEncC$addr = 0, $rewhite_flag = 0, $rewhite_flag98 = 0, $sAR2_Q14 = 0, $sAR2_Q14214 = 0, $sAR2_Q14221 = 0, $sAR2_Q14228 = 0; var $sLTP$addr = 0, $sLTP_Q15$addr = 0, $sLTP_buf_idx = 0, $sLTP_buf_idx102 = 0, $sLTP_buf_idx106 = 0, $sLTP_buf_idx39 = 0, $sLTP_shp_Q14 = 0, $sLTP_shp_Q1477 = 0, $sLTP_shp_Q1484 = 0, $sLTP_shp_Q1491 = 0, $sLTP_shp_buf_idx = 0, $sLTP_shp_buf_idx67 = 0, $shl = 0, $shr = 0, $shr111 = 0, $shr121 = 0, $shr124 = 0, $shr126 = 0, $shr139 = 0, $shr14 = 0; var $shr148 = 0, $shr151 = 0, $shr153 = 0, $shr157 = 0, $shr166 = 0, $shr169 = 0, $shr171 = 0, $shr179 = 0, $shr18 = 0, $shr190 = 0, $shr194 = 0, $shr196 = 0, $shr20 = 0, $shr208 = 0, $shr219 = 0, $shr223 = 0, $shr225 = 0, $shr237 = 0, $shr248 = 0, $shr252 = 0; var $shr254 = 0, $shr259 = 0, $shr27 = 0, $shr270 = 0, $shr274 = 0, $shr276 = 0, $shr3 = 0, $shr35 = 0, $shr43 = 0, $shr51 = 0, $shr6 = 0, $shr71 = 0, $shr82 = 0, $shr86 = 0, $shr88 = 0, $signal_type$addr = 0, $sub = 0, $sub103 = 0, $sub104 = 0, $sub107 = 0; var $sub37 = 0, $sub65 = 0, $subfr$addr = 0, $subfr_length = 0, $tobool = 0, $x16$addr = 0, $x_sc_Q10$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 96|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(96|0); $psEncC$addr = $psEncC; $NSQ$addr = $NSQ; $psDelDec$addr = $psDelDec; $x16$addr = $x16; $x_sc_Q10$addr = $x_sc_Q10; $sLTP$addr = $sLTP; $sLTP_Q15$addr = $sLTP_Q15; $subfr$addr = $subfr; $nStatesDelayedDecision$addr = $nStatesDelayedDecision; $LTP_scale_Q14$addr = $LTP_scale_Q14; $Gains_Q16$addr = $Gains_Q16; $pitchL$addr = $pitchL; $signal_type$addr = $signal_type; $decisionDelay$addr = $decisionDelay; $0 = $pitchL$addr; $1 = $subfr$addr; $arrayidx = (($0) + ($1<<2)|0); $2 = HEAP32[$arrayidx>>2]|0; $lag = $2; $3 = $Gains_Q16$addr; $4 = $subfr$addr; $arrayidx1 = (($3) + ($4<<2)|0); $5 = HEAP32[$arrayidx1>>2]|0; $cmp = ($5|0)>(1); if ($cmp) { $6 = $Gains_Q16$addr; $7 = $subfr$addr; $arrayidx2 = (($6) + ($7<<2)|0); $8 = HEAP32[$arrayidx2>>2]|0; $cond = $8; } else { $cond = 1; } $call = (_silk_INVERSE32_varQ_426($cond,47)|0); $inv_gain_Q31 = $call; $9 = $inv_gain_Q31; $shr = $9 >> 4; $add = (($shr) + 1)|0; $shr3 = $add >> 1; $inv_gain_Q26 = $shr3; $i = 0; while(1) { $10 = $i; $11 = $psEncC$addr; $subfr_length = ((($11)) + 4584|0); $12 = HEAP32[$subfr_length>>2]|0; $cmp4 = ($10|0)<($12|0); if (!($cmp4)) { break; } $13 = $x16$addr; $14 = $i; $arrayidx5 = (($13) + ($14<<1)|0); $15 = HEAP16[$arrayidx5>>1]|0; $conv = $15 << 16 >> 16; $shr6 = $conv >> 16; $16 = $inv_gain_Q26; $conv7 = $16&65535; $conv8 = $conv7 << 16 >> 16; $mul = Math_imul($shr6, $conv8)|0; $17 = $x16$addr; $18 = $i; $arrayidx9 = (($17) + ($18<<1)|0); $19 = HEAP16[$arrayidx9>>1]|0; $conv10 = $19 << 16 >> 16; $and = $conv10 & 65535; $20 = $inv_gain_Q26; $conv11 = $20&65535; $conv12 = $conv11 << 16 >> 16; $mul13 = Math_imul($and, $conv12)|0; $shr14 = $mul13 >> 16; $add15 = (($mul) + ($shr14))|0; $21 = $x16$addr; $22 = $i; $arrayidx16 = (($21) + ($22<<1)|0); $23 = HEAP16[$arrayidx16>>1]|0; $conv17 = $23 << 16 >> 16; $24 = $inv_gain_Q26; $shr18 = $24 >> 15; $add19 = (($shr18) + 1)|0; $shr20 = $add19 >> 1; $mul21 = Math_imul($conv17, $shr20)|0; $add22 = (($add15) + ($mul21))|0; $25 = $x_sc_Q10$addr; $26 = $i; $arrayidx23 = (($25) + ($26<<2)|0); HEAP32[$arrayidx23>>2] = $add22; $27 = $i; $inc = (($27) + 1)|0; $i = $inc; } $28 = $NSQ$addr; $rewhite_flag = ((($28)) + 4348|0); $29 = HEAP32[$rewhite_flag>>2]|0; $tobool = ($29|0)!=(0); L8: do { if ($tobool) { $30 = $subfr$addr; $cmp24 = ($30|0)==(0); if ($cmp24) { $31 = $inv_gain_Q31; $shr27 = $31 >> 16; $32 = $LTP_scale_Q14$addr; $conv28 = $32&65535; $conv29 = $conv28 << 16 >> 16; $mul30 = Math_imul($shr27, $conv29)|0; $33 = $inv_gain_Q31; $and31 = $33 & 65535; $34 = $LTP_scale_Q14$addr; $conv32 = $34&65535; $conv33 = $conv32 << 16 >> 16; $mul34 = Math_imul($and31, $conv33)|0; $shr35 = $mul34 >> 16; $add36 = (($mul30) + ($shr35))|0; $shl = $add36 << 2; $inv_gain_Q31 = $shl; } $35 = $NSQ$addr; $sLTP_buf_idx = ((($35)) + 4332|0); $36 = HEAP32[$sLTP_buf_idx>>2]|0; $37 = $lag; $sub = (($36) - ($37))|0; $sub37 = (($sub) - 2)|0; $i = $sub37; while(1) { $38 = $i; $39 = $NSQ$addr; $sLTP_buf_idx39 = ((($39)) + 4332|0); $40 = HEAP32[$sLTP_buf_idx39>>2]|0; $cmp40 = ($38|0)<($40|0); if (!($cmp40)) { break L8; } $41 = $inv_gain_Q31; $shr43 = $41 >> 16; $42 = $sLTP$addr; $43 = $i; $arrayidx44 = (($42) + ($43<<1)|0); $44 = HEAP16[$arrayidx44>>1]|0; $conv45 = $44 << 16 >> 16; $mul46 = Math_imul($shr43, $conv45)|0; $45 = $inv_gain_Q31; $and47 = $45 & 65535; $46 = $sLTP$addr; $47 = $i; $arrayidx48 = (($46) + ($47<<1)|0); $48 = HEAP16[$arrayidx48>>1]|0; $conv49 = $48 << 16 >> 16; $mul50 = Math_imul($and47, $conv49)|0; $shr51 = $mul50 >> 16; $add52 = (($mul46) + ($shr51))|0; $49 = $sLTP_Q15$addr; $50 = $i; $arrayidx53 = (($49) + ($50<<2)|0); HEAP32[$arrayidx53>>2] = $add52; $51 = $i; $inc55 = (($51) + 1)|0; $i = $inc55; } } } while(0); $52 = $Gains_Q16$addr; $53 = $subfr$addr; $arrayidx58 = (($52) + ($53<<2)|0); $54 = HEAP32[$arrayidx58>>2]|0; $55 = $NSQ$addr; $prev_gain_Q16 = ((($55)) + 4344|0); $56 = HEAP32[$prev_gain_Q16>>2]|0; $cmp59 = ($54|0)!=($56|0); if (!($cmp59)) { STACKTOP = sp;return; } $57 = $NSQ$addr; $prev_gain_Q1662 = ((($57)) + 4344|0); $58 = HEAP32[$prev_gain_Q1662>>2]|0; $59 = $Gains_Q16$addr; $60 = $subfr$addr; $arrayidx63 = (($59) + ($60<<2)|0); $61 = HEAP32[$arrayidx63>>2]|0; $call64 = (_silk_DIV32_varQ_427($58,$61,16)|0); $gain_adj_Q16 = $call64; $62 = $NSQ$addr; $sLTP_shp_buf_idx = ((($62)) + 4336|0); $63 = HEAP32[$sLTP_shp_buf_idx>>2]|0; $64 = $psEncC$addr; $ltp_mem_length = ((($64)) + 4588|0); $65 = HEAP32[$ltp_mem_length>>2]|0; $sub65 = (($63) - ($65))|0; $i = $sub65; while(1) { $66 = $i; $67 = $NSQ$addr; $sLTP_shp_buf_idx67 = ((($67)) + 4336|0); $68 = HEAP32[$sLTP_shp_buf_idx67>>2]|0; $cmp68 = ($66|0)<($68|0); if (!($cmp68)) { break; } $69 = $gain_adj_Q16; $shr71 = $69 >> 16; $70 = $NSQ$addr; $sLTP_shp_Q14 = ((($70)) + 1280|0); $71 = $i; $arrayidx72 = (($sLTP_shp_Q14) + ($71<<2)|0); $72 = HEAP32[$arrayidx72>>2]|0; $conv73 = $72&65535; $conv74 = $conv73 << 16 >> 16; $mul75 = Math_imul($shr71, $conv74)|0; $73 = $gain_adj_Q16; $and76 = $73 & 65535; $74 = $NSQ$addr; $sLTP_shp_Q1477 = ((($74)) + 1280|0); $75 = $i; $arrayidx78 = (($sLTP_shp_Q1477) + ($75<<2)|0); $76 = HEAP32[$arrayidx78>>2]|0; $conv79 = $76&65535; $conv80 = $conv79 << 16 >> 16; $mul81 = Math_imul($and76, $conv80)|0; $shr82 = $mul81 >> 16; $add83 = (($mul75) + ($shr82))|0; $77 = $gain_adj_Q16; $78 = $NSQ$addr; $sLTP_shp_Q1484 = ((($78)) + 1280|0); $79 = $i; $arrayidx85 = (($sLTP_shp_Q1484) + ($79<<2)|0); $80 = HEAP32[$arrayidx85>>2]|0; $shr86 = $80 >> 15; $add87 = (($shr86) + 1)|0; $shr88 = $add87 >> 1; $mul89 = Math_imul($77, $shr88)|0; $add90 = (($add83) + ($mul89))|0; $81 = $NSQ$addr; $sLTP_shp_Q1491 = ((($81)) + 1280|0); $82 = $i; $arrayidx92 = (($sLTP_shp_Q1491) + ($82<<2)|0); HEAP32[$arrayidx92>>2] = $add90; $83 = $i; $inc94 = (($83) + 1)|0; $i = $inc94; } $84 = $signal_type$addr; $cmp96 = ($84|0)==(2); L24: do { if ($cmp96) { $85 = $NSQ$addr; $rewhite_flag98 = ((($85)) + 4348|0); $86 = HEAP32[$rewhite_flag98>>2]|0; $cmp99 = ($86|0)==(0); if ($cmp99) { $87 = $NSQ$addr; $sLTP_buf_idx102 = ((($87)) + 4332|0); $88 = HEAP32[$sLTP_buf_idx102>>2]|0; $89 = $lag; $sub103 = (($88) - ($89))|0; $sub104 = (($sub103) - 2)|0; $i = $sub104; while(1) { $90 = $i; $91 = $NSQ$addr; $sLTP_buf_idx106 = ((($91)) + 4332|0); $92 = HEAP32[$sLTP_buf_idx106>>2]|0; $93 = $decisionDelay$addr; $sub107 = (($92) - ($93))|0; $cmp108 = ($90|0)<($sub107|0); if (!($cmp108)) { break L24; } $94 = $gain_adj_Q16; $shr111 = $94 >> 16; $95 = $sLTP_Q15$addr; $96 = $i; $arrayidx112 = (($95) + ($96<<2)|0); $97 = HEAP32[$arrayidx112>>2]|0; $conv113 = $97&65535; $conv114 = $conv113 << 16 >> 16; $mul115 = Math_imul($shr111, $conv114)|0; $98 = $gain_adj_Q16; $and116 = $98 & 65535; $99 = $sLTP_Q15$addr; $100 = $i; $arrayidx117 = (($99) + ($100<<2)|0); $101 = HEAP32[$arrayidx117>>2]|0; $conv118 = $101&65535; $conv119 = $conv118 << 16 >> 16; $mul120 = Math_imul($and116, $conv119)|0; $shr121 = $mul120 >> 16; $add122 = (($mul115) + ($shr121))|0; $102 = $gain_adj_Q16; $103 = $sLTP_Q15$addr; $104 = $i; $arrayidx123 = (($103) + ($104<<2)|0); $105 = HEAP32[$arrayidx123>>2]|0; $shr124 = $105 >> 15; $add125 = (($shr124) + 1)|0; $shr126 = $add125 >> 1; $mul127 = Math_imul($102, $shr126)|0; $add128 = (($add122) + ($mul127))|0; $106 = $sLTP_Q15$addr; $107 = $i; $arrayidx129 = (($106) + ($107<<2)|0); HEAP32[$arrayidx129>>2] = $add128; $108 = $i; $inc131 = (($108) + 1)|0; $i = $inc131; } } } } while(0); $k = 0; while(1) { $109 = $k; $110 = $nStatesDelayedDecision$addr; $cmp135 = ($109|0)<($110|0); if (!($cmp135)) { break; } $111 = $psDelDec$addr; $112 = $k; $arrayidx138 = (($111) + (($112*1300)|0)|0); $psDD = $arrayidx138; $113 = $gain_adj_Q16; $shr139 = $113 >> 16; $114 = $psDD; $LF_AR_Q14 = ((($114)) + 1280|0); $115 = HEAP32[$LF_AR_Q14>>2]|0; $conv140 = $115&65535; $conv141 = $conv140 << 16 >> 16; $mul142 = Math_imul($shr139, $conv141)|0; $116 = $gain_adj_Q16; $and143 = $116 & 65535; $117 = $psDD; $LF_AR_Q14144 = ((($117)) + 1280|0); $118 = HEAP32[$LF_AR_Q14144>>2]|0; $conv145 = $118&65535; $conv146 = $conv145 << 16 >> 16; $mul147 = Math_imul($and143, $conv146)|0; $shr148 = $mul147 >> 16; $add149 = (($mul142) + ($shr148))|0; $119 = $gain_adj_Q16; $120 = $psDD; $LF_AR_Q14150 = ((($120)) + 1280|0); $121 = HEAP32[$LF_AR_Q14150>>2]|0; $shr151 = $121 >> 15; $add152 = (($shr151) + 1)|0; $shr153 = $add152 >> 1; $mul154 = Math_imul($119, $shr153)|0; $add155 = (($add149) + ($mul154))|0; $122 = $psDD; $LF_AR_Q14156 = ((($122)) + 1280|0); HEAP32[$LF_AR_Q14156>>2] = $add155; $123 = $gain_adj_Q16; $shr157 = $123 >> 16; $124 = $psDD; $Diff_Q14 = ((($124)) + 1284|0); $125 = HEAP32[$Diff_Q14>>2]|0; $conv158 = $125&65535; $conv159 = $conv158 << 16 >> 16; $mul160 = Math_imul($shr157, $conv159)|0; $126 = $gain_adj_Q16; $and161 = $126 & 65535; $127 = $psDD; $Diff_Q14162 = ((($127)) + 1284|0); $128 = HEAP32[$Diff_Q14162>>2]|0; $conv163 = $128&65535; $conv164 = $conv163 << 16 >> 16; $mul165 = Math_imul($and161, $conv164)|0; $shr166 = $mul165 >> 16; $add167 = (($mul160) + ($shr166))|0; $129 = $gain_adj_Q16; $130 = $psDD; $Diff_Q14168 = ((($130)) + 1284|0); $131 = HEAP32[$Diff_Q14168>>2]|0; $shr169 = $131 >> 15; $add170 = (($shr169) + 1)|0; $shr171 = $add170 >> 1; $mul172 = Math_imul($129, $shr171)|0; $add173 = (($add167) + ($mul172))|0; $132 = $psDD; $Diff_Q14174 = ((($132)) + 1284|0); HEAP32[$Diff_Q14174>>2] = $add173; $i = 0; while(1) { $133 = $i; $cmp176 = ($133|0)<(16); if (!($cmp176)) { break; } $134 = $gain_adj_Q16; $shr179 = $134 >> 16; $135 = $psDD; $136 = $i; $arrayidx180 = (($135) + ($136<<2)|0); $137 = HEAP32[$arrayidx180>>2]|0; $conv181 = $137&65535; $conv182 = $conv181 << 16 >> 16; $mul183 = Math_imul($shr179, $conv182)|0; $138 = $gain_adj_Q16; $and184 = $138 & 65535; $139 = $psDD; $140 = $i; $arrayidx186 = (($139) + ($140<<2)|0); $141 = HEAP32[$arrayidx186>>2]|0; $conv187 = $141&65535; $conv188 = $conv187 << 16 >> 16; $mul189 = Math_imul($and184, $conv188)|0; $shr190 = $mul189 >> 16; $add191 = (($mul183) + ($shr190))|0; $142 = $gain_adj_Q16; $143 = $psDD; $144 = $i; $arrayidx193 = (($143) + ($144<<2)|0); $145 = HEAP32[$arrayidx193>>2]|0; $shr194 = $145 >> 15; $add195 = (($shr194) + 1)|0; $shr196 = $add195 >> 1; $mul197 = Math_imul($142, $shr196)|0; $add198 = (($add191) + ($mul197))|0; $146 = $psDD; $147 = $i; $arrayidx200 = (($146) + ($147<<2)|0); HEAP32[$arrayidx200>>2] = $add198; $148 = $i; $inc202 = (($148) + 1)|0; $i = $inc202; } $i = 0; while(1) { $149 = $i; $cmp205 = ($149|0)<(24); if (!($cmp205)) { break; } $150 = $gain_adj_Q16; $shr208 = $150 >> 16; $151 = $psDD; $sAR2_Q14 = ((($151)) + 1184|0); $152 = $i; $arrayidx209 = (($sAR2_Q14) + ($152<<2)|0); $153 = HEAP32[$arrayidx209>>2]|0; $conv210 = $153&65535; $conv211 = $conv210 << 16 >> 16; $mul212 = Math_imul($shr208, $conv211)|0; $154 = $gain_adj_Q16; $and213 = $154 & 65535; $155 = $psDD; $sAR2_Q14214 = ((($155)) + 1184|0); $156 = $i; $arrayidx215 = (($sAR2_Q14214) + ($156<<2)|0); $157 = HEAP32[$arrayidx215>>2]|0; $conv216 = $157&65535; $conv217 = $conv216 << 16 >> 16; $mul218 = Math_imul($and213, $conv217)|0; $shr219 = $mul218 >> 16; $add220 = (($mul212) + ($shr219))|0; $158 = $gain_adj_Q16; $159 = $psDD; $sAR2_Q14221 = ((($159)) + 1184|0); $160 = $i; $arrayidx222 = (($sAR2_Q14221) + ($160<<2)|0); $161 = HEAP32[$arrayidx222>>2]|0; $shr223 = $161 >> 15; $add224 = (($shr223) + 1)|0; $shr225 = $add224 >> 1; $mul226 = Math_imul($158, $shr225)|0; $add227 = (($add220) + ($mul226))|0; $162 = $psDD; $sAR2_Q14228 = ((($162)) + 1184|0); $163 = $i; $arrayidx229 = (($sAR2_Q14228) + ($163<<2)|0); HEAP32[$arrayidx229>>2] = $add227; $164 = $i; $inc231 = (($164) + 1)|0; $i = $inc231; } $i = 0; while(1) { $165 = $i; $cmp234 = ($165|0)<(40); if (!($cmp234)) { break; } $166 = $gain_adj_Q16; $shr237 = $166 >> 16; $167 = $psDD; $Pred_Q15 = ((($167)) + 864|0); $168 = $i; $arrayidx238 = (($Pred_Q15) + ($168<<2)|0); $169 = HEAP32[$arrayidx238>>2]|0; $conv239 = $169&65535; $conv240 = $conv239 << 16 >> 16; $mul241 = Math_imul($shr237, $conv240)|0; $170 = $gain_adj_Q16; $and242 = $170 & 65535; $171 = $psDD; $Pred_Q15243 = ((($171)) + 864|0); $172 = $i; $arrayidx244 = (($Pred_Q15243) + ($172<<2)|0); $173 = HEAP32[$arrayidx244>>2]|0; $conv245 = $173&65535; $conv246 = $conv245 << 16 >> 16; $mul247 = Math_imul($and242, $conv246)|0; $shr248 = $mul247 >> 16; $add249 = (($mul241) + ($shr248))|0; $174 = $gain_adj_Q16; $175 = $psDD; $Pred_Q15250 = ((($175)) + 864|0); $176 = $i; $arrayidx251 = (($Pred_Q15250) + ($176<<2)|0); $177 = HEAP32[$arrayidx251>>2]|0; $shr252 = $177 >> 15; $add253 = (($shr252) + 1)|0; $shr254 = $add253 >> 1; $mul255 = Math_imul($174, $shr254)|0; $add256 = (($add249) + ($mul255))|0; $178 = $psDD; $Pred_Q15257 = ((($178)) + 864|0); $179 = $i; $arrayidx258 = (($Pred_Q15257) + ($179<<2)|0); HEAP32[$arrayidx258>>2] = $add256; $180 = $gain_adj_Q16; $shr259 = $180 >> 16; $181 = $psDD; $Shape_Q14 = ((($181)) + 1024|0); $182 = $i; $arrayidx260 = (($Shape_Q14) + ($182<<2)|0); $183 = HEAP32[$arrayidx260>>2]|0; $conv261 = $183&65535; $conv262 = $conv261 << 16 >> 16; $mul263 = Math_imul($shr259, $conv262)|0; $184 = $gain_adj_Q16; $and264 = $184 & 65535; $185 = $psDD; $Shape_Q14265 = ((($185)) + 1024|0); $186 = $i; $arrayidx266 = (($Shape_Q14265) + ($186<<2)|0); $187 = HEAP32[$arrayidx266>>2]|0; $conv267 = $187&65535; $conv268 = $conv267 << 16 >> 16; $mul269 = Math_imul($and264, $conv268)|0; $shr270 = $mul269 >> 16; $add271 = (($mul263) + ($shr270))|0; $188 = $gain_adj_Q16; $189 = $psDD; $Shape_Q14272 = ((($189)) + 1024|0); $190 = $i; $arrayidx273 = (($Shape_Q14272) + ($190<<2)|0); $191 = HEAP32[$arrayidx273>>2]|0; $shr274 = $191 >> 15; $add275 = (($shr274) + 1)|0; $shr276 = $add275 >> 1; $mul277 = Math_imul($188, $shr276)|0; $add278 = (($add271) + ($mul277))|0; $192 = $psDD; $Shape_Q14279 = ((($192)) + 1024|0); $193 = $i; $arrayidx280 = (($Shape_Q14279) + ($193<<2)|0); HEAP32[$arrayidx280>>2] = $add278; $194 = $i; $inc282 = (($194) + 1)|0; $i = $inc282; } $195 = $k; $inc285 = (($195) + 1)|0; $k = $inc285; } $196 = $Gains_Q16$addr; $197 = $subfr$addr; $arrayidx287 = (($196) + ($197<<2)|0); $198 = HEAP32[$arrayidx287>>2]|0; $199 = $NSQ$addr; $prev_gain_Q16288 = ((($199)) + 4344|0); HEAP32[$prev_gain_Q16288>>2] = $198; STACKTOP = sp;return; } function _silk_noise_shape_quantizer_del_dec($NSQ,$psDelDec,$signalType,$x_Q10,$pulses,$xq,$sLTP_Q15,$delayedGain_Q10,$a_Q12,$b_Q14,$AR_shp_Q13,$lag,$HarmShapeFIRPacked_Q14,$Tilt_Q14,$LF_shp_Q14,$Gain_Q16,$Lambda_Q10,$offset_Q10,$length,$subfr,$shapingLPCOrder,$predictLPCOrder,$warping_Q16,$nStatesDelayedDecision,$smpl_buf_idx,$decisionDelay,$arch) { $NSQ = $NSQ|0; $psDelDec = $psDelDec|0; $signalType = $signalType|0; $x_Q10 = $x_Q10|0; $pulses = $pulses|0; $xq = $xq|0; $sLTP_Q15 = $sLTP_Q15|0; $delayedGain_Q10 = $delayedGain_Q10|0; $a_Q12 = $a_Q12|0; $b_Q14 = $b_Q14|0; $AR_shp_Q13 = $AR_shp_Q13|0; $lag = $lag|0; $HarmShapeFIRPacked_Q14 = $HarmShapeFIRPacked_Q14|0; $Tilt_Q14 = $Tilt_Q14|0; $LF_shp_Q14 = $LF_shp_Q14|0; $Gain_Q16 = $Gain_Q16|0; $Lambda_Q10 = $Lambda_Q10|0; $offset_Q10 = $offset_Q10|0; $length = $length|0; $subfr = $subfr|0; $shapingLPCOrder = $shapingLPCOrder|0; $predictLPCOrder = $predictLPCOrder|0; $warping_Q16 = $warping_Q16|0; $nStatesDelayedDecision = $nStatesDelayedDecision|0; $smpl_buf_idx = $smpl_buf_idx|0; $decisionDelay = $decisionDelay|0; $arch = $arch|0; var $$sink = 0, $$sink1 = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0; var $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0; var $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0; var $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0; var $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0; var $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0; var $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0; var $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0; var $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0; var $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0; var $277 = 0, $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0; var $295 = 0, $296 = 0, $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0; var $312 = 0, $313 = 0, $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0; var $330 = 0, $331 = 0, $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0; var $349 = 0, $35 = 0, $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0; var $367 = 0, $368 = 0, $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0; var $385 = 0, $386 = 0, $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0; var $402 = 0, $403 = 0, $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0; var $420 = 0, $421 = 0, $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0; var $439 = 0, $44 = 0, $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0; var $457 = 0, $458 = 0, $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0; var $475 = 0, $476 = 0, $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0; var $493 = 0, $494 = 0, $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0; var $510 = 0, $511 = 0, $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0; var $529 = 0, $53 = 0, $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0; var $547 = 0, $548 = 0, $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0; var $565 = 0, $566 = 0, $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $AR_shp_Q13$addr = 0, $Diff_Q14 = 0; var $Diff_Q14470 = 0, $Diff_Q14472 = 0, $Diff_Q14498 = 0, $Diff_Q14500 = 0, $Diff_Q14750 = 0, $Diff_Q14751 = 0, $Gain_Q10 = 0, $Gain_Q16$addr = 0, $HarmShapeFIRPacked_Q14$addr = 0, $LF_AR_Q14 = 0, $LF_AR_Q14261 = 0, $LF_AR_Q14283 = 0, $LF_AR_Q14288 = 0, $LF_AR_Q14478 = 0, $LF_AR_Q14506 = 0, $LF_AR_Q14748 = 0, $LF_AR_Q14749 = 0, $LF_shp_Q14$addr = 0, $LPC_exc_Q14 = 0, $LPC_exc_Q14480 = 0; var $LPC_exc_Q14508 = 0, $LPC_exc_Q14762 = 0, $LPC_pred_Q14 = 0, $LTP_pred_Q14 = 0, $Lambda_Q10$addr = 0, $NSQ$addr = 0, $Pred_Q15 = 0, $Pred_Q15764 = 0, $Q_Q10623 = 0, $Q_Q10760 = 0, $RD_Q10 = 0, $RD_Q10433 = 0, $RD_Q10434 = 0, $RD_Q10437 = 0, $RD_Q10445 = 0, $RD_Q10446 = 0, $RD_Q10449 = 0, $RD_Q10523 = 0, $RD_Q10530 = 0, $RD_Q10536 = 0; var $RD_Q10555 = 0, $RD_Q10559 = 0, $RD_Q10562 = 0, $RD_Q10566 = 0, $RD_Q10573 = 0, $RD_Q10576 = 0, $RD_Q10583 = 0, $RD_Q10589 = 0, $RD_Q10593 = 0, $RD_Q10599 = 0, $RD_Q10779 = 0, $RD_Q10780 = 0, $RDmax_Q10 = 0, $RDmax_ind = 0, $RDmin_Q10 = 0, $RDmin_ind = 0, $RandState = 0, $RandState548 = 0, $RandState777 = 0, $Seed = 0; var $Seed110 = 0, $Seed303 = 0, $Seed458 = 0, $Seed486 = 0, $Seed769 = 0, $Seed775 = 0, $Seed776 = 0, $Shape_Q14 = 0, $Shape_Q14275 = 0, $Shape_Q14726 = 0, $Shape_Q14767 = 0, $Tilt_Q14$addr = 0, $Winner_ind = 0, $Winner_rand_state = 0, $Xq_Q14 = 0, $Xq_Q14637 = 0, $Xq_Q14646 = 0, $Xq_Q14661 = 0, $Xq_Q14668 = 0, $Xq_Q14677 = 0; var $Xq_Q14692 = 0, $Xq_Q14699 = 0, $Xq_Q14708 = 0, $Xq_Q14757 = 0, $a_Q12$addr = 0, $add = 0, $add$ptr = 0, $add$ptr609 = 0, $add109 = 0, $add111 = 0, $add126 = 0, $add127 = 0, $add13 = 0, $add14 = 0, $add145 = 0, $add146 = 0, $add159 = 0, $add160 = 0, $add169 = 0, $add177 = 0; var $add185 = 0, $add186 = 0, $add2 = 0, $add201 = 0, $add202 = 0, $add204 = 0, $add207 = 0, $add215 = 0, $add223 = 0, $add224 = 0, $add226 = 0, $add237 = 0, $add238 = 0, $add239 = 0, $add254 = 0, $add255 = 0, $add26 = 0, $add267 = 0, $add268 = 0, $add27 = 0; var $add282 = 0, $add287 = 0, $add293 = 0, $add295 = 0, $add296 = 0, $add299 = 0, $add333 = 0, $add349 = 0, $add350 = 0, $add365 = 0, $add39 = 0, $add394 = 0, $add395 = 0, $add396 = 0, $add40 = 0, $add418 = 0, $add426 = 0, $add431 = 0, $add435 = 0, $add443 = 0; var $add447 = 0, $add464 = 0, $add465 = 0, $add492 = 0, $add493 = 0, $add517 = 0, $add519 = 0, $add52 = 0, $add53 = 0, $add556 = 0, $add563 = 0, $add626 = 0, $add645 = 0, $add65 = 0, $add650 = 0, $add653 = 0, $add655 = 0, $add66 = 0, $add676 = 0, $add681 = 0; var $add684 = 0, $add686 = 0, $add707 = 0, $add712 = 0, $add715 = 0, $add717 = 0, $add72 = 0, $add754 = 0, $add772 = 0, $add774 = 0, $add79 = 0, $add85 = 0, $add90 = 0, $add96 = 0, $and = 0, $and121 = 0, $and140 = 0, $and154 = 0, $and180 = 0, $and195 = 0; var $and21 = 0, $and218 = 0, $and232 = 0, $and248 = 0, $and262 = 0, $and277 = 0, $and289 = 0, $and34 = 0, $and47 = 0, $and60 = 0, $and639 = 0, $and670 = 0, $and701 = 0, $and80 = 0, $and92 = 0, $arch$addr = 0, $arrayidx = 0, $arrayidx106 = 0, $arrayidx107 = 0, $arrayidx112 = 0; var $arrayidx131 = 0, $arrayidx138 = 0, $arrayidx15 = 0, $arrayidx167 = 0, $arrayidx17 = 0, $arrayidx170 = 0, $arrayidx178 = 0, $arrayidx189 = 0, $arrayidx192 = 0, $arrayidx197 = 0, $arrayidx20 = 0, $arrayidx205 = 0, $arrayidx208 = 0, $arrayidx216 = 0, $arrayidx22 = 0, $arrayidx227 = 0, $arrayidx229 = 0, $arrayidx233 = 0, $arrayidx242 = 0, $arrayidx245 = 0; var $arrayidx250 = 0, $arrayidx270 = 0, $arrayidx276 = 0, $arrayidx28 = 0, $arrayidx3 = 0, $arrayidx30 = 0, $arrayidx301 = 0, $arrayidx33 = 0, $arrayidx35 = 0, $arrayidx41 = 0, $arrayidx43 = 0, $arrayidx436 = 0, $arrayidx448 = 0, $arrayidx452 = 0, $arrayidx46 = 0, $arrayidx466 = 0, $arrayidx48 = 0, $arrayidx483 = 0, $arrayidx494 = 0, $arrayidx497 = 0; var $arrayidx499 = 0, $arrayidx503 = 0, $arrayidx505 = 0, $arrayidx507 = 0, $arrayidx509 = 0, $arrayidx528 = 0, $arrayidx534 = 0, $arrayidx54 = 0, $arrayidx541 = 0, $arrayidx542 = 0, $arrayidx547 = 0, $arrayidx549 = 0, $arrayidx553 = 0, $arrayidx557 = 0, $arrayidx56 = 0, $arrayidx560 = 0, $arrayidx561 = 0, $arrayidx564 = 0, $arrayidx565 = 0, $arrayidx575 = 0; var $arrayidx581 = 0, $arrayidx587 = 0, $arrayidx59 = 0, $arrayidx591 = 0, $arrayidx592 = 0, $arrayidx597 = 0, $arrayidx598 = 0, $arrayidx607 = 0, $arrayidx608 = 0, $arrayidx61 = 0, $arrayidx612 = 0, $arrayidx614 = 0, $arrayidx615 = 0, $arrayidx617 = 0, $arrayidx624 = 0, $arrayidx630 = 0, $arrayidx631 = 0, $arrayidx633 = 0, $arrayidx638 = 0, $arrayidx640 = 0; var $arrayidx647 = 0, $arrayidx648 = 0, $arrayidx662 = 0, $arrayidx664 = 0, $arrayidx669 = 0, $arrayidx671 = 0, $arrayidx678 = 0, $arrayidx679 = 0, $arrayidx693 = 0, $arrayidx695 = 0, $arrayidx700 = 0, $arrayidx702 = 0, $arrayidx709 = 0, $arrayidx71 = 0, $arrayidx710 = 0, $arrayidx725 = 0, $arrayidx727 = 0, $arrayidx731 = 0, $arrayidx732 = 0, $arrayidx735 = 0; var $arrayidx745 = 0, $arrayidx746 = 0, $arrayidx755 = 0, $arrayidx758 = 0, $arrayidx761 = 0, $arrayidx765 = 0, $arrayidx768 = 0, $arrayidx778 = 0, $arrayidx78 = 0, $arrayidx784 = 0, $arrayidx792 = 0, $arrayidx796 = 0, $arrayidx86 = 0, $arrayidx91 = 0, $b_Q14$addr = 0, $call = 0, $cmp = 0, $cmp103 = 0, $cmp162 = 0, $cmp304 = 0; var $cmp309 = 0, $cmp311 = 0, $cmp319 = 0, $cmp323 = 0, $cmp330 = 0, $cmp336 = 0, $cmp344 = 0, $cmp362 = 0, $cmp377 = 0, $cmp4 = 0, $cmp428 = 0, $cmp459 = 0, $cmp487 = 0, $cmp514 = 0, $cmp525 = 0, $cmp531 = 0, $cmp544 = 0, $cmp550 = 0, $cmp578 = 0, $cmp584 = 0; var $cmp594 = 0, $cmp604 = 0, $cmp618 = 0, $cmp620 = 0, $cmp657 = 0, $cmp67 = 0, $cmp688 = 0, $cmp742 = 0, $cmp789 = 0, $cond = 0, $cond316 = 0, $cond722 = 0, $conv = 0, $conv10 = 0, $conv116 = 0, $conv117 = 0, $conv122 = 0, $conv123 = 0, $conv134 = 0, $conv135 = 0; var $conv141 = 0, $conv142 = 0, $conv152 = 0, $conv156 = 0, $conv173 = 0, $conv174 = 0, $conv18 = 0, $conv181 = 0, $conv182 = 0, $conv193 = 0, $conv198 = 0, $conv211 = 0, $conv212 = 0, $conv219 = 0, $conv220 = 0, $conv23 = 0, $conv230 = 0, $conv234 = 0, $conv246 = 0, $conv251 = 0; var $conv258 = 0, $conv259 = 0, $conv263 = 0, $conv264 = 0, $conv272 = 0, $conv273 = 0, $conv278 = 0, $conv279 = 0, $conv31 = 0, $conv351 = 0, $conv352 = 0, $conv353 = 0, $conv354 = 0, $conv356 = 0, $conv357 = 0, $conv358 = 0, $conv359 = 0, $conv36 = 0, $conv366 = 0, $conv367 = 0; var $conv368 = 0, $conv369 = 0, $conv371 = 0, $conv372 = 0, $conv373 = 0, $conv374 = 0, $conv382 = 0, $conv383 = 0, $conv384 = 0, $conv385 = 0, $conv387 = 0, $conv388 = 0, $conv389 = 0, $conv390 = 0, $conv398 = 0, $conv399 = 0, $conv400 = 0, $conv401 = 0, $conv404 = 0, $conv405 = 0; var $conv406 = 0, $conv407 = 0, $conv413 = 0, $conv414 = 0, $conv415 = 0, $conv416 = 0, $conv421 = 0, $conv422 = 0, $conv423 = 0, $conv424 = 0, $conv44 = 0, $conv49 = 0, $conv57 = 0, $conv62 = 0, $conv628 = 0, $conv634 = 0, $conv635 = 0, $conv641 = 0, $conv642 = 0, $conv665 = 0; var $conv666 = 0, $conv672 = 0, $conv673 = 0, $conv696 = 0, $conv697 = 0, $conv703 = 0, $conv704 = 0, $conv723 = 0, $conv74 = 0, $conv75 = 0, $conv81 = 0, $conv82 = 0, $decisionDelay$addr = 0, $delayedGain_Q10$addr = 0, $div = 0, $exc_Q14 = 0, $i = 0, $inc = 0, $inc539 = 0, $inc569 = 0; var $inc602 = 0, $inc738 = 0, $inc740 = 0, $inc782 = 0, $inc786 = 0, $inc798 = 0, $incdec$ptr = 0, $incdec$ptr99 = 0, $j = 0, $k = 0, $lag$addr = 0, $last_smple_idx = 0, $length$addr = 0, $mul = 0, $mul108 = 0, $mul11 = 0, $mul118 = 0, $mul124 = 0, $mul136 = 0, $mul143 = 0; var $mul153 = 0, $mul157 = 0, $mul175 = 0, $mul183 = 0, $mul19 = 0, $mul194 = 0, $mul199 = 0, $mul213 = 0, $mul221 = 0, $mul231 = 0, $mul235 = 0, $mul24 = 0, $mul247 = 0, $mul252 = 0, $mul260 = 0, $mul265 = 0, $mul274 = 0, $mul280 = 0, $mul286 = 0, $mul291 = 0; var $mul32 = 0, $mul355 = 0, $mul360 = 0, $mul37 = 0, $mul370 = 0, $mul375 = 0, $mul386 = 0, $mul391 = 0, $mul402 = 0, $mul408 = 0, $mul417 = 0, $mul425 = 0, $mul45 = 0, $mul50 = 0, $mul58 = 0, $mul610 = 0, $mul63 = 0, $mul636 = 0, $mul643 = 0, $mul652 = 0; var $mul667 = 0, $mul674 = 0, $mul683 = 0, $mul698 = 0, $mul705 = 0, $mul714 = 0, $mul76 = 0, $mul83 = 0, $mul89 = 0, $mul94 = 0, $nStatesDelayedDecision$addr = 0, $n_AR_Q14 = 0, $n_LF_Q14 = 0, $n_LTP_Q14 = 0, $offset_Q10$addr = 0, $pred_lag_ptr = 0, $predictLPCOrder$addr = 0, $psDD = 0, $psDelDec$addr = 0, $psLPC_Q14 = 0; var $psSS = 0, $pulses$addr = 0, $q1_Q0 = 0, $q1_Q10 = 0, $q2_Q10 = 0, $r_Q10 = 0, $rd1_Q10 = 0, $rd2_Q10 = 0, $rdo_offset = 0, $rem = 0, $rem520 = 0, $rr_Q10 = 0, $sAR2_Q14 = 0, $sAR2_Q14119 = 0, $sAR2_Q14128 = 0, $sAR2_Q14130 = 0, $sAR2_Q14137 = 0, $sAR2_Q14147 = 0, $sAR2_Q14165 = 0, $sAR2_Q14168 = 0; var $sAR2_Q14176 = 0, $sAR2_Q14187 = 0, $sAR2_Q14203 = 0, $sAR2_Q14206 = 0, $sAR2_Q14214 = 0, $sAR2_Q14225 = 0, $sAR2_Q14240 = 0, $sLF_AR_shp_Q14 = 0, $sLTP_Q15$addr = 0, $sLTP_buf_idx = 0, $sLTP_buf_idx733 = 0, $sLTP_buf_idx739 = 0, $sLTP_shp_Q14 = 0, $sLTP_shp_Q14476 = 0, $sLTP_shp_Q14504 = 0, $sLTP_shp_Q14728 = 0, $sLTP_shp_Q14766 = 0, $sLTP_shp_buf_idx = 0, $sLTP_shp_buf_idx729 = 0, $sLTP_shp_buf_idx737 = 0; var $saved_stack = 0, $shapingLPCOrder$addr = 0, $shl = 0, $shl113 = 0, $shl256 = 0, $shl269 = 0, $shl294 = 0, $shl347 = 0, $shl393 = 0, $shl457 = 0, $shl467 = 0, $shl485 = 0, $shl495 = 0, $shl763 = 0, $shl97 = 0, $shp_lag_ptr = 0, $shr = 0, $shr115 = 0, $shr12 = 0, $shr125 = 0; var $shr133 = 0, $shr144 = 0, $shr149 = 0, $shr150 = 0, $shr158 = 0, $shr16 = 0, $shr172 = 0, $shr184 = 0, $shr190 = 0, $shr200 = 0, $shr210 = 0, $shr222 = 0, $shr228 = 0, $shr236 = 0, $shr243 = 0, $shr25 = 0, $shr253 = 0, $shr257 = 0, $shr266 = 0, $shr271 = 0; var $shr281 = 0, $shr284 = 0, $shr285 = 0, $shr29 = 0, $shr290 = 0, $shr292 = 0, $shr298 = 0, $shr300 = 0, $shr318 = 0, $shr327 = 0, $shr334 = 0, $shr38 = 0, $shr419 = 0, $shr42 = 0, $shr427 = 0, $shr51 = 0, $shr55 = 0, $shr6 = 0, $shr625 = 0, $shr627 = 0; var $shr632 = 0, $shr64 = 0, $shr644 = 0, $shr649 = 0, $shr651 = 0, $shr654 = 0, $shr656 = 0, $shr663 = 0, $shr675 = 0, $shr680 = 0, $shr682 = 0, $shr685 = 0, $shr687 = 0, $shr694 = 0, $shr706 = 0, $shr711 = 0, $shr713 = 0, $shr716 = 0, $shr718 = 0, $shr73 = 0; var $shr771 = 0, $shr773 = 0, $shr84 = 0, $shr87 = 0, $shr88 = 0, $shr93 = 0, $shr95 = 0, $signalType$addr = 0, $smpl_buf_idx$addr = 0, $sub = 0, $sub1 = 0, $sub132 = 0, $sub139 = 0, $sub166 = 0, $sub171 = 0, $sub179 = 0, $sub188 = 0, $sub191 = 0, $sub196 = 0, $sub209 = 0; var $sub217 = 0, $sub241 = 0, $sub244 = 0, $sub249 = 0, $sub297 = 0, $sub302 = 0, $sub307 = 0, $sub317 = 0, $sub322 = 0, $sub326 = 0, $sub329 = 0, $sub348 = 0, $sub380 = 0, $sub381 = 0, $sub397 = 0, $sub403 = 0, $sub412 = 0, $sub420 = 0, $sub462 = 0, $sub468 = 0; var $sub473 = 0, $sub474 = 0, $sub490 = 0, $sub496 = 0, $sub501 = 0, $sub502 = 0, $sub513 = 0, $sub611 = 0, $sub629 = 0, $sub724 = 0, $sub730 = 0, $sub734 = 0, $sub98 = 0, $subfr$addr = 0, $tmp1 = 0, $tmp2 = 0, $vla = 0, $vla$alloca_mul = 0, $warping_Q16$addr = 0, $x_Q10$addr = 0; var $xq$addr = 0, $xq_Q14 = 0, $xq_Q14482 = 0, $xq_Q14510 = 0, $xq_Q14752 = 0, $xq_Q14756 = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; sp = STACKTOP; STACKTOP = STACKTOP + 256|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(256|0); $NSQ$addr = $NSQ; $psDelDec$addr = $psDelDec; $signalType$addr = $signalType; $x_Q10$addr = $x_Q10; $pulses$addr = $pulses; $xq$addr = $xq; $sLTP_Q15$addr = $sLTP_Q15; $delayedGain_Q10$addr = $delayedGain_Q10; $a_Q12$addr = $a_Q12; $b_Q14$addr = $b_Q14; $AR_shp_Q13$addr = $AR_shp_Q13; $lag$addr = $lag; $HarmShapeFIRPacked_Q14$addr = $HarmShapeFIRPacked_Q14; $Tilt_Q14$addr = $Tilt_Q14; $LF_shp_Q14$addr = $LF_shp_Q14; $Gain_Q16$addr = $Gain_Q16; $Lambda_Q10$addr = $Lambda_Q10; $offset_Q10$addr = $offset_Q10; $length$addr = $length; $subfr$addr = $subfr; $shapingLPCOrder$addr = $shapingLPCOrder; $predictLPCOrder$addr = $predictLPCOrder; $warping_Q16$addr = $warping_Q16; $nStatesDelayedDecision$addr = $nStatesDelayedDecision; $smpl_buf_idx$addr = $smpl_buf_idx; $decisionDelay$addr = $decisionDelay; $arch$addr = $arch; $0 = $nStatesDelayedDecision$addr; $1 = (_llvm_stacksave()|0); $saved_stack = $1; $vla$alloca_mul = ($0*56)|0; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $2 = $NSQ$addr; $sLTP_shp_Q14 = ((($2)) + 1280|0); $3 = $NSQ$addr; $sLTP_shp_buf_idx = ((($3)) + 4336|0); $4 = HEAP32[$sLTP_shp_buf_idx>>2]|0; $5 = $lag$addr; $sub = (($4) - ($5))|0; $add = (($sub) + 1)|0; $arrayidx = (($sLTP_shp_Q14) + ($add<<2)|0); $shp_lag_ptr = $arrayidx; $6 = $sLTP_Q15$addr; $7 = $NSQ$addr; $sLTP_buf_idx = ((($7)) + 4332|0); $8 = HEAP32[$sLTP_buf_idx>>2]|0; $9 = $lag$addr; $sub1 = (($8) - ($9))|0; $add2 = (($sub1) + 2)|0; $arrayidx3 = (($6) + ($add2<<2)|0); $pred_lag_ptr = $arrayidx3; $10 = $Gain_Q16$addr; $shr = $10 >> 6; $Gain_Q10 = $shr; $i = 0; while(1) { $11 = $i; $12 = $length$addr; $cmp = ($11|0)<($12|0); if (!($cmp)) { break; } $13 = $signalType$addr; $cmp4 = ($13|0)==(2); if ($cmp4) { $LTP_pred_Q14 = 2; $14 = $LTP_pred_Q14; $15 = $pred_lag_ptr; $16 = HEAP32[$15>>2]|0; $shr6 = $16 >> 16; $17 = $b_Q14$addr; $18 = HEAP16[$17>>1]|0; $conv = $18 << 16 >> 16; $mul = Math_imul($shr6, $conv)|0; $19 = $pred_lag_ptr; $20 = HEAP32[$19>>2]|0; $and = $20 & 65535; $21 = $b_Q14$addr; $22 = HEAP16[$21>>1]|0; $conv10 = $22 << 16 >> 16; $mul11 = Math_imul($and, $conv10)|0; $shr12 = $mul11 >> 16; $add13 = (($mul) + ($shr12))|0; $add14 = (($14) + ($add13))|0; $LTP_pred_Q14 = $add14; $23 = $LTP_pred_Q14; $24 = $pred_lag_ptr; $arrayidx15 = ((($24)) + -4|0); $25 = HEAP32[$arrayidx15>>2]|0; $shr16 = $25 >> 16; $26 = $b_Q14$addr; $arrayidx17 = ((($26)) + 2|0); $27 = HEAP16[$arrayidx17>>1]|0; $conv18 = $27 << 16 >> 16; $mul19 = Math_imul($shr16, $conv18)|0; $28 = $pred_lag_ptr; $arrayidx20 = ((($28)) + -4|0); $29 = HEAP32[$arrayidx20>>2]|0; $and21 = $29 & 65535; $30 = $b_Q14$addr; $arrayidx22 = ((($30)) + 2|0); $31 = HEAP16[$arrayidx22>>1]|0; $conv23 = $31 << 16 >> 16; $mul24 = Math_imul($and21, $conv23)|0; $shr25 = $mul24 >> 16; $add26 = (($mul19) + ($shr25))|0; $add27 = (($23) + ($add26))|0; $LTP_pred_Q14 = $add27; $32 = $LTP_pred_Q14; $33 = $pred_lag_ptr; $arrayidx28 = ((($33)) + -8|0); $34 = HEAP32[$arrayidx28>>2]|0; $shr29 = $34 >> 16; $35 = $b_Q14$addr; $arrayidx30 = ((($35)) + 4|0); $36 = HEAP16[$arrayidx30>>1]|0; $conv31 = $36 << 16 >> 16; $mul32 = Math_imul($shr29, $conv31)|0; $37 = $pred_lag_ptr; $arrayidx33 = ((($37)) + -8|0); $38 = HEAP32[$arrayidx33>>2]|0; $and34 = $38 & 65535; $39 = $b_Q14$addr; $arrayidx35 = ((($39)) + 4|0); $40 = HEAP16[$arrayidx35>>1]|0; $conv36 = $40 << 16 >> 16; $mul37 = Math_imul($and34, $conv36)|0; $shr38 = $mul37 >> 16; $add39 = (($mul32) + ($shr38))|0; $add40 = (($32) + ($add39))|0; $LTP_pred_Q14 = $add40; $41 = $LTP_pred_Q14; $42 = $pred_lag_ptr; $arrayidx41 = ((($42)) + -12|0); $43 = HEAP32[$arrayidx41>>2]|0; $shr42 = $43 >> 16; $44 = $b_Q14$addr; $arrayidx43 = ((($44)) + 6|0); $45 = HEAP16[$arrayidx43>>1]|0; $conv44 = $45 << 16 >> 16; $mul45 = Math_imul($shr42, $conv44)|0; $46 = $pred_lag_ptr; $arrayidx46 = ((($46)) + -12|0); $47 = HEAP32[$arrayidx46>>2]|0; $and47 = $47 & 65535; $48 = $b_Q14$addr; $arrayidx48 = ((($48)) + 6|0); $49 = HEAP16[$arrayidx48>>1]|0; $conv49 = $49 << 16 >> 16; $mul50 = Math_imul($and47, $conv49)|0; $shr51 = $mul50 >> 16; $add52 = (($mul45) + ($shr51))|0; $add53 = (($41) + ($add52))|0; $LTP_pred_Q14 = $add53; $50 = $LTP_pred_Q14; $51 = $pred_lag_ptr; $arrayidx54 = ((($51)) + -16|0); $52 = HEAP32[$arrayidx54>>2]|0; $shr55 = $52 >> 16; $53 = $b_Q14$addr; $arrayidx56 = ((($53)) + 8|0); $54 = HEAP16[$arrayidx56>>1]|0; $conv57 = $54 << 16 >> 16; $mul58 = Math_imul($shr55, $conv57)|0; $55 = $pred_lag_ptr; $arrayidx59 = ((($55)) + -16|0); $56 = HEAP32[$arrayidx59>>2]|0; $and60 = $56 & 65535; $57 = $b_Q14$addr; $arrayidx61 = ((($57)) + 8|0); $58 = HEAP16[$arrayidx61>>1]|0; $conv62 = $58 << 16 >> 16; $mul63 = Math_imul($and60, $conv62)|0; $shr64 = $mul63 >> 16; $add65 = (($mul58) + ($shr64))|0; $add66 = (($50) + ($add65))|0; $LTP_pred_Q14 = $add66; $59 = $LTP_pred_Q14; $shl = $59 << 1; $LTP_pred_Q14 = $shl; $60 = $pred_lag_ptr; $incdec$ptr = ((($60)) + 4|0); $pred_lag_ptr = $incdec$ptr; } else { $LTP_pred_Q14 = 0; } $61 = $lag$addr; $cmp67 = ($61|0)>(0); if ($cmp67) { $62 = $shp_lag_ptr; $63 = HEAP32[$62>>2]|0; $64 = $shp_lag_ptr; $arrayidx71 = ((($64)) + -8|0); $65 = HEAP32[$arrayidx71>>2]|0; $add72 = (($63) + ($65))|0; $shr73 = $add72 >> 16; $66 = $HarmShapeFIRPacked_Q14$addr; $conv74 = $66&65535; $conv75 = $conv74 << 16 >> 16; $mul76 = Math_imul($shr73, $conv75)|0; $67 = $shp_lag_ptr; $68 = HEAP32[$67>>2]|0; $69 = $shp_lag_ptr; $arrayidx78 = ((($69)) + -8|0); $70 = HEAP32[$arrayidx78>>2]|0; $add79 = (($68) + ($70))|0; $and80 = $add79 & 65535; $71 = $HarmShapeFIRPacked_Q14$addr; $conv81 = $71&65535; $conv82 = $conv81 << 16 >> 16; $mul83 = Math_imul($and80, $conv82)|0; $shr84 = $mul83 >> 16; $add85 = (($mul76) + ($shr84))|0; $n_LTP_Q14 = $add85; $72 = $n_LTP_Q14; $73 = $shp_lag_ptr; $arrayidx86 = ((($73)) + -4|0); $74 = HEAP32[$arrayidx86>>2]|0; $shr87 = $74 >> 16; $75 = $HarmShapeFIRPacked_Q14$addr; $shr88 = $75 >> 16; $mul89 = Math_imul($shr87, $shr88)|0; $add90 = (($72) + ($mul89))|0; $76 = $shp_lag_ptr; $arrayidx91 = ((($76)) + -4|0); $77 = HEAP32[$arrayidx91>>2]|0; $and92 = $77 & 65535; $78 = $HarmShapeFIRPacked_Q14$addr; $shr93 = $78 >> 16; $mul94 = Math_imul($and92, $shr93)|0; $shr95 = $mul94 >> 16; $add96 = (($add90) + ($shr95))|0; $n_LTP_Q14 = $add96; $79 = $LTP_pred_Q14; $80 = $n_LTP_Q14; $shl97 = $80 << 2; $sub98 = (($79) - ($shl97))|0; $n_LTP_Q14 = $sub98; $81 = $shp_lag_ptr; $incdec$ptr99 = ((($81)) + 4|0); $shp_lag_ptr = $incdec$ptr99; } else { $n_LTP_Q14 = 0; } $k = 0; while(1) { $82 = $k; $83 = $nStatesDelayedDecision$addr; $cmp103 = ($82|0)<($83|0); if (!($cmp103)) { break; } $84 = $psDelDec$addr; $85 = $k; $arrayidx106 = (($84) + (($85*1300)|0)|0); $psDD = $arrayidx106; $86 = $k; $arrayidx107 = (($vla) + (($86*56)|0)|0); $psSS = $arrayidx107; $87 = $psDD; $Seed = ((($87)) + 1288|0); $88 = HEAP32[$Seed>>2]|0; $mul108 = Math_imul($88, 196314165)|0; $add109 = (907633515 + ($mul108))|0; $89 = $psDD; $Seed110 = ((($89)) + 1288|0); HEAP32[$Seed110>>2] = $add109; $90 = $psDD; $91 = $i; $add111 = (15 + ($91))|0; $arrayidx112 = (($90) + ($add111<<2)|0); $psLPC_Q14 = $arrayidx112; $92 = $psLPC_Q14; $93 = $a_Q12$addr; $94 = $predictLPCOrder$addr; $call = (_silk_noise_shape_quantizer_short_prediction_c_425($92,$93,$94)|0); $LPC_pred_Q14 = $call; $95 = $LPC_pred_Q14; $shl113 = $95 << 4; $LPC_pred_Q14 = $shl113; $96 = $psDD; $Diff_Q14 = ((($96)) + 1284|0); $97 = HEAP32[$Diff_Q14>>2]|0; $98 = $psDD; $sAR2_Q14 = ((($98)) + 1184|0); $99 = HEAP32[$sAR2_Q14>>2]|0; $shr115 = $99 >> 16; $100 = $warping_Q16$addr; $conv116 = $100&65535; $conv117 = $conv116 << 16 >> 16; $mul118 = Math_imul($shr115, $conv117)|0; $101 = $psDD; $sAR2_Q14119 = ((($101)) + 1184|0); $102 = HEAP32[$sAR2_Q14119>>2]|0; $and121 = $102 & 65535; $103 = $warping_Q16$addr; $conv122 = $103&65535; $conv123 = $conv122 << 16 >> 16; $mul124 = Math_imul($and121, $conv123)|0; $shr125 = $mul124 >> 16; $add126 = (($mul118) + ($shr125))|0; $add127 = (($97) + ($add126))|0; $tmp2 = $add127; $104 = $psDD; $sAR2_Q14128 = ((($104)) + 1184|0); $105 = HEAP32[$sAR2_Q14128>>2]|0; $106 = $psDD; $sAR2_Q14130 = ((($106)) + 1184|0); $arrayidx131 = ((($sAR2_Q14130)) + 4|0); $107 = HEAP32[$arrayidx131>>2]|0; $108 = $tmp2; $sub132 = (($107) - ($108))|0; $shr133 = $sub132 >> 16; $109 = $warping_Q16$addr; $conv134 = $109&65535; $conv135 = $conv134 << 16 >> 16; $mul136 = Math_imul($shr133, $conv135)|0; $110 = $psDD; $sAR2_Q14137 = ((($110)) + 1184|0); $arrayidx138 = ((($sAR2_Q14137)) + 4|0); $111 = HEAP32[$arrayidx138>>2]|0; $112 = $tmp2; $sub139 = (($111) - ($112))|0; $and140 = $sub139 & 65535; $113 = $warping_Q16$addr; $conv141 = $113&65535; $conv142 = $conv141 << 16 >> 16; $mul143 = Math_imul($and140, $conv142)|0; $shr144 = $mul143 >> 16; $add145 = (($mul136) + ($shr144))|0; $add146 = (($105) + ($add145))|0; $tmp1 = $add146; $114 = $tmp2; $115 = $psDD; $sAR2_Q14147 = ((($115)) + 1184|0); HEAP32[$sAR2_Q14147>>2] = $114; $116 = $shapingLPCOrder$addr; $shr149 = $116 >> 1; $n_AR_Q14 = $shr149; $117 = $n_AR_Q14; $118 = $tmp2; $shr150 = $118 >> 16; $119 = $AR_shp_Q13$addr; $120 = HEAP16[$119>>1]|0; $conv152 = $120 << 16 >> 16; $mul153 = Math_imul($shr150, $conv152)|0; $121 = $tmp2; $and154 = $121 & 65535; $122 = $AR_shp_Q13$addr; $123 = HEAP16[$122>>1]|0; $conv156 = $123 << 16 >> 16; $mul157 = Math_imul($and154, $conv156)|0; $shr158 = $mul157 >> 16; $add159 = (($mul153) + ($shr158))|0; $add160 = (($117) + ($add159))|0; $n_AR_Q14 = $add160; $j = 2; while(1) { $124 = $j; $125 = $shapingLPCOrder$addr; $cmp162 = ($124|0)<($125|0); if (!($cmp162)) { break; } $126 = $psDD; $sAR2_Q14165 = ((($126)) + 1184|0); $127 = $j; $sub166 = (($127) - 1)|0; $arrayidx167 = (($sAR2_Q14165) + ($sub166<<2)|0); $128 = HEAP32[$arrayidx167>>2]|0; $129 = $psDD; $sAR2_Q14168 = ((($129)) + 1184|0); $130 = $j; $add169 = (($130) + 0)|0; $arrayidx170 = (($sAR2_Q14168) + ($add169<<2)|0); $131 = HEAP32[$arrayidx170>>2]|0; $132 = $tmp1; $sub171 = (($131) - ($132))|0; $shr172 = $sub171 >> 16; $133 = $warping_Q16$addr; $conv173 = $133&65535; $conv174 = $conv173 << 16 >> 16; $mul175 = Math_imul($shr172, $conv174)|0; $134 = $psDD; $sAR2_Q14176 = ((($134)) + 1184|0); $135 = $j; $add177 = (($135) + 0)|0; $arrayidx178 = (($sAR2_Q14176) + ($add177<<2)|0); $136 = HEAP32[$arrayidx178>>2]|0; $137 = $tmp1; $sub179 = (($136) - ($137))|0; $and180 = $sub179 & 65535; $138 = $warping_Q16$addr; $conv181 = $138&65535; $conv182 = $conv181 << 16 >> 16; $mul183 = Math_imul($and180, $conv182)|0; $shr184 = $mul183 >> 16; $add185 = (($mul175) + ($shr184))|0; $add186 = (($128) + ($add185))|0; $tmp2 = $add186; $139 = $tmp1; $140 = $psDD; $sAR2_Q14187 = ((($140)) + 1184|0); $141 = $j; $sub188 = (($141) - 1)|0; $arrayidx189 = (($sAR2_Q14187) + ($sub188<<2)|0); HEAP32[$arrayidx189>>2] = $139; $142 = $n_AR_Q14; $143 = $tmp1; $shr190 = $143 >> 16; $144 = $AR_shp_Q13$addr; $145 = $j; $sub191 = (($145) - 1)|0; $arrayidx192 = (($144) + ($sub191<<1)|0); $146 = HEAP16[$arrayidx192>>1]|0; $conv193 = $146 << 16 >> 16; $mul194 = Math_imul($shr190, $conv193)|0; $147 = $tmp1; $and195 = $147 & 65535; $148 = $AR_shp_Q13$addr; $149 = $j; $sub196 = (($149) - 1)|0; $arrayidx197 = (($148) + ($sub196<<1)|0); $150 = HEAP16[$arrayidx197>>1]|0; $conv198 = $150 << 16 >> 16; $mul199 = Math_imul($and195, $conv198)|0; $shr200 = $mul199 >> 16; $add201 = (($mul194) + ($shr200))|0; $add202 = (($142) + ($add201))|0; $n_AR_Q14 = $add202; $151 = $psDD; $sAR2_Q14203 = ((($151)) + 1184|0); $152 = $j; $add204 = (($152) + 0)|0; $arrayidx205 = (($sAR2_Q14203) + ($add204<<2)|0); $153 = HEAP32[$arrayidx205>>2]|0; $154 = $psDD; $sAR2_Q14206 = ((($154)) + 1184|0); $155 = $j; $add207 = (($155) + 1)|0; $arrayidx208 = (($sAR2_Q14206) + ($add207<<2)|0); $156 = HEAP32[$arrayidx208>>2]|0; $157 = $tmp2; $sub209 = (($156) - ($157))|0; $shr210 = $sub209 >> 16; $158 = $warping_Q16$addr; $conv211 = $158&65535; $conv212 = $conv211 << 16 >> 16; $mul213 = Math_imul($shr210, $conv212)|0; $159 = $psDD; $sAR2_Q14214 = ((($159)) + 1184|0); $160 = $j; $add215 = (($160) + 1)|0; $arrayidx216 = (($sAR2_Q14214) + ($add215<<2)|0); $161 = HEAP32[$arrayidx216>>2]|0; $162 = $tmp2; $sub217 = (($161) - ($162))|0; $and218 = $sub217 & 65535; $163 = $warping_Q16$addr; $conv219 = $163&65535; $conv220 = $conv219 << 16 >> 16; $mul221 = Math_imul($and218, $conv220)|0; $shr222 = $mul221 >> 16; $add223 = (($mul213) + ($shr222))|0; $add224 = (($153) + ($add223))|0; $tmp1 = $add224; $164 = $tmp2; $165 = $psDD; $sAR2_Q14225 = ((($165)) + 1184|0); $166 = $j; $add226 = (($166) + 0)|0; $arrayidx227 = (($sAR2_Q14225) + ($add226<<2)|0); HEAP32[$arrayidx227>>2] = $164; $167 = $n_AR_Q14; $168 = $tmp2; $shr228 = $168 >> 16; $169 = $AR_shp_Q13$addr; $170 = $j; $arrayidx229 = (($169) + ($170<<1)|0); $171 = HEAP16[$arrayidx229>>1]|0; $conv230 = $171 << 16 >> 16; $mul231 = Math_imul($shr228, $conv230)|0; $172 = $tmp2; $and232 = $172 & 65535; $173 = $AR_shp_Q13$addr; $174 = $j; $arrayidx233 = (($173) + ($174<<1)|0); $175 = HEAP16[$arrayidx233>>1]|0; $conv234 = $175 << 16 >> 16; $mul235 = Math_imul($and232, $conv234)|0; $shr236 = $mul235 >> 16; $add237 = (($mul231) + ($shr236))|0; $add238 = (($167) + ($add237))|0; $n_AR_Q14 = $add238; $176 = $j; $add239 = (($176) + 2)|0; $j = $add239; } $177 = $tmp1; $178 = $psDD; $sAR2_Q14240 = ((($178)) + 1184|0); $179 = $shapingLPCOrder$addr; $sub241 = (($179) - 1)|0; $arrayidx242 = (($sAR2_Q14240) + ($sub241<<2)|0); HEAP32[$arrayidx242>>2] = $177; $180 = $n_AR_Q14; $181 = $tmp1; $shr243 = $181 >> 16; $182 = $AR_shp_Q13$addr; $183 = $shapingLPCOrder$addr; $sub244 = (($183) - 1)|0; $arrayidx245 = (($182) + ($sub244<<1)|0); $184 = HEAP16[$arrayidx245>>1]|0; $conv246 = $184 << 16 >> 16; $mul247 = Math_imul($shr243, $conv246)|0; $185 = $tmp1; $and248 = $185 & 65535; $186 = $AR_shp_Q13$addr; $187 = $shapingLPCOrder$addr; $sub249 = (($187) - 1)|0; $arrayidx250 = (($186) + ($sub249<<1)|0); $188 = HEAP16[$arrayidx250>>1]|0; $conv251 = $188 << 16 >> 16; $mul252 = Math_imul($and248, $conv251)|0; $shr253 = $mul252 >> 16; $add254 = (($mul247) + ($shr253))|0; $add255 = (($180) + ($add254))|0; $n_AR_Q14 = $add255; $189 = $n_AR_Q14; $shl256 = $189 << 1; $n_AR_Q14 = $shl256; $190 = $n_AR_Q14; $191 = $psDD; $LF_AR_Q14 = ((($191)) + 1280|0); $192 = HEAP32[$LF_AR_Q14>>2]|0; $shr257 = $192 >> 16; $193 = $Tilt_Q14$addr; $conv258 = $193&65535; $conv259 = $conv258 << 16 >> 16; $mul260 = Math_imul($shr257, $conv259)|0; $194 = $psDD; $LF_AR_Q14261 = ((($194)) + 1280|0); $195 = HEAP32[$LF_AR_Q14261>>2]|0; $and262 = $195 & 65535; $196 = $Tilt_Q14$addr; $conv263 = $196&65535; $conv264 = $conv263 << 16 >> 16; $mul265 = Math_imul($and262, $conv264)|0; $shr266 = $mul265 >> 16; $add267 = (($mul260) + ($shr266))|0; $add268 = (($190) + ($add267))|0; $n_AR_Q14 = $add268; $197 = $n_AR_Q14; $shl269 = $197 << 2; $n_AR_Q14 = $shl269; $198 = $psDD; $Shape_Q14 = ((($198)) + 1024|0); $199 = $smpl_buf_idx$addr; $200 = HEAP32[$199>>2]|0; $arrayidx270 = (($Shape_Q14) + ($200<<2)|0); $201 = HEAP32[$arrayidx270>>2]|0; $shr271 = $201 >> 16; $202 = $LF_shp_Q14$addr; $conv272 = $202&65535; $conv273 = $conv272 << 16 >> 16; $mul274 = Math_imul($shr271, $conv273)|0; $203 = $psDD; $Shape_Q14275 = ((($203)) + 1024|0); $204 = $smpl_buf_idx$addr; $205 = HEAP32[$204>>2]|0; $arrayidx276 = (($Shape_Q14275) + ($205<<2)|0); $206 = HEAP32[$arrayidx276>>2]|0; $and277 = $206 & 65535; $207 = $LF_shp_Q14$addr; $conv278 = $207&65535; $conv279 = $conv278 << 16 >> 16; $mul280 = Math_imul($and277, $conv279)|0; $shr281 = $mul280 >> 16; $add282 = (($mul274) + ($shr281))|0; $n_LF_Q14 = $add282; $208 = $n_LF_Q14; $209 = $psDD; $LF_AR_Q14283 = ((($209)) + 1280|0); $210 = HEAP32[$LF_AR_Q14283>>2]|0; $shr284 = $210 >> 16; $211 = $LF_shp_Q14$addr; $shr285 = $211 >> 16; $mul286 = Math_imul($shr284, $shr285)|0; $add287 = (($208) + ($mul286))|0; $212 = $psDD; $LF_AR_Q14288 = ((($212)) + 1280|0); $213 = HEAP32[$LF_AR_Q14288>>2]|0; $and289 = $213 & 65535; $214 = $LF_shp_Q14$addr; $shr290 = $214 >> 16; $mul291 = Math_imul($and289, $shr290)|0; $shr292 = $mul291 >> 16; $add293 = (($add287) + ($shr292))|0; $n_LF_Q14 = $add293; $215 = $n_LF_Q14; $shl294 = $215 << 2; $n_LF_Q14 = $shl294; $216 = $n_AR_Q14; $217 = $n_LF_Q14; $add295 = (($216) + ($217))|0; $tmp1 = $add295; $218 = $n_LTP_Q14; $219 = $LPC_pred_Q14; $add296 = (($218) + ($219))|0; $tmp2 = $add296; $220 = $tmp2; $221 = $tmp1; $sub297 = (($220) - ($221))|0; $tmp1 = $sub297; $222 = $tmp1; $shr298 = $222 >> 3; $add299 = (($shr298) + 1)|0; $shr300 = $add299 >> 1; $tmp1 = $shr300; $223 = $x_Q10$addr; $224 = $i; $arrayidx301 = (($223) + ($224<<2)|0); $225 = HEAP32[$arrayidx301>>2]|0; $226 = $tmp1; $sub302 = (($225) - ($226))|0; $r_Q10 = $sub302; $227 = $psDD; $Seed303 = ((($227)) + 1288|0); $228 = HEAP32[$Seed303>>2]|0; $cmp304 = ($228|0)<(0); if ($cmp304) { $229 = $r_Q10; $sub307 = (0 - ($229))|0; $r_Q10 = $sub307; } $230 = $r_Q10; $cmp309 = ($230|0)>(30720); if ($cmp309) { $cond316 = 30720; } else { $231 = $r_Q10; $cmp311 = ($231|0)<(-31744); $232 = $r_Q10; $cond = $cmp311 ? -31744 : $232; $cond316 = $cond; } $r_Q10 = $cond316; $233 = $r_Q10; $234 = $offset_Q10$addr; $sub317 = (($233) - ($234))|0; $q1_Q10 = $sub317; $235 = $q1_Q10; $shr318 = $235 >> 10; $q1_Q0 = $shr318; $236 = $Lambda_Q10$addr; $cmp319 = ($236|0)>(2048); do { if ($cmp319) { $237 = $Lambda_Q10$addr; $div = (($237|0) / 2)&-1; $sub322 = (($div) - 512)|0; $rdo_offset = $sub322; $238 = $q1_Q10; $239 = $rdo_offset; $cmp323 = ($238|0)>($239|0); $240 = $q1_Q10; $241 = $rdo_offset; if ($cmp323) { $sub326 = (($240) - ($241))|0; $shr327 = $sub326 >> 10; $q1_Q0 = $shr327; break; } $sub329 = (0 - ($241))|0; $cmp330 = ($240|0)<($sub329|0); $242 = $q1_Q10; if ($cmp330) { $243 = $rdo_offset; $add333 = (($242) + ($243))|0; $shr334 = $add333 >> 10; $q1_Q0 = $shr334; break; } $cmp336 = ($242|0)<(0); if ($cmp336) { $q1_Q0 = -1; break; } else { $q1_Q0 = 0; break; } } } while(0); $244 = $q1_Q0; $cmp344 = ($244|0)>(0); $245 = $q1_Q0; do { if ($cmp344) { $shl347 = $245 << 10; $sub348 = (($shl347) - 80)|0; $q1_Q10 = $sub348; $246 = $q1_Q10; $247 = $offset_Q10$addr; $add349 = (($246) + ($247))|0; $q1_Q10 = $add349; $248 = $q1_Q10; $add350 = (($248) + 1024)|0; $q2_Q10 = $add350; $249 = $q1_Q10; $conv351 = $249&65535; $conv352 = $conv351 << 16 >> 16; $250 = $Lambda_Q10$addr; $conv353 = $250&65535; $conv354 = $conv353 << 16 >> 16; $mul355 = Math_imul($conv352, $conv354)|0; $rd1_Q10 = $mul355; $251 = $q2_Q10; $conv356 = $251&65535; $conv357 = $conv356 << 16 >> 16; $252 = $Lambda_Q10$addr; $conv358 = $252&65535; $conv359 = $conv358 << 16 >> 16; $mul360 = Math_imul($conv357, $conv359)|0; $rd2_Q10 = $mul360; } else { $cmp362 = ($245|0)==(0); if ($cmp362) { $253 = $offset_Q10$addr; $q1_Q10 = $253; $254 = $q1_Q10; $add365 = (($254) + 944)|0; $q2_Q10 = $add365; $255 = $q1_Q10; $conv366 = $255&65535; $conv367 = $conv366 << 16 >> 16; $256 = $Lambda_Q10$addr; $conv368 = $256&65535; $conv369 = $conv368 << 16 >> 16; $mul370 = Math_imul($conv367, $conv369)|0; $rd1_Q10 = $mul370; $257 = $q2_Q10; $conv371 = $257&65535; $conv372 = $conv371 << 16 >> 16; $258 = $Lambda_Q10$addr; $conv373 = $258&65535; $conv374 = $conv373 << 16 >> 16; $mul375 = Math_imul($conv372, $conv374)|0; $rd2_Q10 = $mul375; break; } $259 = $q1_Q0; $cmp377 = ($259|0)==(-1); if ($cmp377) { $260 = $offset_Q10$addr; $q2_Q10 = $260; $261 = $q2_Q10; $sub380 = (($261) - 944)|0; $q1_Q10 = $sub380; $262 = $q1_Q10; $sub381 = (0 - ($262))|0; $conv382 = $sub381&65535; $conv383 = $conv382 << 16 >> 16; $263 = $Lambda_Q10$addr; $conv384 = $263&65535; $conv385 = $conv384 << 16 >> 16; $mul386 = Math_imul($conv383, $conv385)|0; $rd1_Q10 = $mul386; $264 = $q2_Q10; $conv387 = $264&65535; $conv388 = $conv387 << 16 >> 16; $265 = $Lambda_Q10$addr; $conv389 = $265&65535; $conv390 = $conv389 << 16 >> 16; $mul391 = Math_imul($conv388, $conv390)|0; $rd2_Q10 = $mul391; break; } else { $266 = $q1_Q0; $shl393 = $266 << 10; $add394 = (($shl393) + 80)|0; $q1_Q10 = $add394; $267 = $q1_Q10; $268 = $offset_Q10$addr; $add395 = (($267) + ($268))|0; $q1_Q10 = $add395; $269 = $q1_Q10; $add396 = (($269) + 1024)|0; $q2_Q10 = $add396; $270 = $q1_Q10; $sub397 = (0 - ($270))|0; $conv398 = $sub397&65535; $conv399 = $conv398 << 16 >> 16; $271 = $Lambda_Q10$addr; $conv400 = $271&65535; $conv401 = $conv400 << 16 >> 16; $mul402 = Math_imul($conv399, $conv401)|0; $rd1_Q10 = $mul402; $272 = $q2_Q10; $sub403 = (0 - ($272))|0; $conv404 = $sub403&65535; $conv405 = $conv404 << 16 >> 16; $273 = $Lambda_Q10$addr; $conv406 = $273&65535; $conv407 = $conv406 << 16 >> 16; $mul408 = Math_imul($conv405, $conv407)|0; $rd2_Q10 = $mul408; break; } } } while(0); $274 = $r_Q10; $275 = $q1_Q10; $sub412 = (($274) - ($275))|0; $rr_Q10 = $sub412; $276 = $rd1_Q10; $277 = $rr_Q10; $conv413 = $277&65535; $conv414 = $conv413 << 16 >> 16; $278 = $rr_Q10; $conv415 = $278&65535; $conv416 = $conv415 << 16 >> 16; $mul417 = Math_imul($conv414, $conv416)|0; $add418 = (($276) + ($mul417))|0; $shr419 = $add418 >> 10; $rd1_Q10 = $shr419; $279 = $r_Q10; $280 = $q2_Q10; $sub420 = (($279) - ($280))|0; $rr_Q10 = $sub420; $281 = $rd2_Q10; $282 = $rr_Q10; $conv421 = $282&65535; $conv422 = $conv421 << 16 >> 16; $283 = $rr_Q10; $conv423 = $283&65535; $conv424 = $conv423 << 16 >> 16; $mul425 = Math_imul($conv422, $conv424)|0; $add426 = (($281) + ($mul425))|0; $shr427 = $add426 >> 10; $rd2_Q10 = $shr427; $284 = $rd1_Q10; $285 = $rd2_Q10; $cmp428 = ($284|0)<($285|0); $286 = $psDD; $RD_Q10 = ((($286)) + 1296|0); $287 = HEAP32[$RD_Q10>>2]|0; if ($cmp428) { $288 = $rd1_Q10; $add431 = (($287) + ($288))|0; $289 = $psSS; $RD_Q10433 = ((($289)) + 4|0); HEAP32[$RD_Q10433>>2] = $add431; $290 = $psDD; $RD_Q10434 = ((($290)) + 1296|0); $291 = HEAP32[$RD_Q10434>>2]|0; $292 = $rd2_Q10; $add435 = (($291) + ($292))|0; $293 = $psSS; $arrayidx436 = ((($293)) + 28|0); $RD_Q10437 = ((($arrayidx436)) + 4|0); HEAP32[$RD_Q10437>>2] = $add435; $294 = $q1_Q10; $295 = $psSS; HEAP32[$295>>2] = $294; $296 = $q2_Q10; $297 = $psSS; $$sink = $296;$$sink1 = $297; } else { $298 = $rd2_Q10; $add443 = (($287) + ($298))|0; $299 = $psSS; $RD_Q10445 = ((($299)) + 4|0); HEAP32[$RD_Q10445>>2] = $add443; $300 = $psDD; $RD_Q10446 = ((($300)) + 1296|0); $301 = HEAP32[$RD_Q10446>>2]|0; $302 = $rd1_Q10; $add447 = (($301) + ($302))|0; $303 = $psSS; $arrayidx448 = ((($303)) + 28|0); $RD_Q10449 = ((($arrayidx448)) + 4|0); HEAP32[$RD_Q10449>>2] = $add447; $304 = $q2_Q10; $305 = $psSS; HEAP32[$305>>2] = $304; $306 = $q1_Q10; $307 = $psSS; $$sink = $306;$$sink1 = $307; } $arrayidx452 = ((($$sink1)) + 28|0); HEAP32[$arrayidx452>>2] = $$sink; $308 = $psSS; $309 = HEAP32[$308>>2]|0; $shl457 = $309 << 4; $exc_Q14 = $shl457; $310 = $psDD; $Seed458 = ((($310)) + 1288|0); $311 = HEAP32[$Seed458>>2]|0; $cmp459 = ($311|0)<(0); if ($cmp459) { $312 = $exc_Q14; $sub462 = (0 - ($312))|0; $exc_Q14 = $sub462; } $313 = $exc_Q14; $314 = $LTP_pred_Q14; $add464 = (($313) + ($314))|0; $LPC_exc_Q14 = $add464; $315 = $LPC_exc_Q14; $316 = $LPC_pred_Q14; $add465 = (($315) + ($316))|0; $xq_Q14 = $add465; $317 = $xq_Q14; $318 = $x_Q10$addr; $319 = $i; $arrayidx466 = (($318) + ($319<<2)|0); $320 = HEAP32[$arrayidx466>>2]|0; $shl467 = $320 << 4; $sub468 = (($317) - ($shl467))|0; $321 = $psSS; $Diff_Q14470 = ((($321)) + 16|0); HEAP32[$Diff_Q14470>>2] = $sub468; $322 = $psSS; $Diff_Q14472 = ((($322)) + 16|0); $323 = HEAP32[$Diff_Q14472>>2]|0; $324 = $n_AR_Q14; $sub473 = (($323) - ($324))|0; $sLF_AR_shp_Q14 = $sub473; $325 = $sLF_AR_shp_Q14; $326 = $n_LF_Q14; $sub474 = (($325) - ($326))|0; $327 = $psSS; $sLTP_shp_Q14476 = ((($327)) + 20|0); HEAP32[$sLTP_shp_Q14476>>2] = $sub474; $328 = $sLF_AR_shp_Q14; $329 = $psSS; $LF_AR_Q14478 = ((($329)) + 12|0); HEAP32[$LF_AR_Q14478>>2] = $328; $330 = $LPC_exc_Q14; $331 = $psSS; $LPC_exc_Q14480 = ((($331)) + 24|0); HEAP32[$LPC_exc_Q14480>>2] = $330; $332 = $xq_Q14; $333 = $psSS; $xq_Q14482 = ((($333)) + 8|0); HEAP32[$xq_Q14482>>2] = $332; $334 = $psSS; $arrayidx483 = ((($334)) + 28|0); $335 = HEAP32[$arrayidx483>>2]|0; $shl485 = $335 << 4; $exc_Q14 = $shl485; $336 = $psDD; $Seed486 = ((($336)) + 1288|0); $337 = HEAP32[$Seed486>>2]|0; $cmp487 = ($337|0)<(0); if ($cmp487) { $338 = $exc_Q14; $sub490 = (0 - ($338))|0; $exc_Q14 = $sub490; } $339 = $exc_Q14; $340 = $LTP_pred_Q14; $add492 = (($339) + ($340))|0; $LPC_exc_Q14 = $add492; $341 = $LPC_exc_Q14; $342 = $LPC_pred_Q14; $add493 = (($341) + ($342))|0; $xq_Q14 = $add493; $343 = $xq_Q14; $344 = $x_Q10$addr; $345 = $i; $arrayidx494 = (($344) + ($345<<2)|0); $346 = HEAP32[$arrayidx494>>2]|0; $shl495 = $346 << 4; $sub496 = (($343) - ($shl495))|0; $347 = $psSS; $arrayidx497 = ((($347)) + 28|0); $Diff_Q14498 = ((($arrayidx497)) + 16|0); HEAP32[$Diff_Q14498>>2] = $sub496; $348 = $psSS; $arrayidx499 = ((($348)) + 28|0); $Diff_Q14500 = ((($arrayidx499)) + 16|0); $349 = HEAP32[$Diff_Q14500>>2]|0; $350 = $n_AR_Q14; $sub501 = (($349) - ($350))|0; $sLF_AR_shp_Q14 = $sub501; $351 = $sLF_AR_shp_Q14; $352 = $n_LF_Q14; $sub502 = (($351) - ($352))|0; $353 = $psSS; $arrayidx503 = ((($353)) + 28|0); $sLTP_shp_Q14504 = ((($arrayidx503)) + 20|0); HEAP32[$sLTP_shp_Q14504>>2] = $sub502; $354 = $sLF_AR_shp_Q14; $355 = $psSS; $arrayidx505 = ((($355)) + 28|0); $LF_AR_Q14506 = ((($arrayidx505)) + 12|0); HEAP32[$LF_AR_Q14506>>2] = $354; $356 = $LPC_exc_Q14; $357 = $psSS; $arrayidx507 = ((($357)) + 28|0); $LPC_exc_Q14508 = ((($arrayidx507)) + 24|0); HEAP32[$LPC_exc_Q14508>>2] = $356; $358 = $xq_Q14; $359 = $psSS; $arrayidx509 = ((($359)) + 28|0); $xq_Q14510 = ((($arrayidx509)) + 8|0); HEAP32[$xq_Q14510>>2] = $358; $360 = $k; $inc = (($360) + 1)|0; $k = $inc; } $361 = $smpl_buf_idx$addr; $362 = HEAP32[$361>>2]|0; $sub513 = (($362) - 1)|0; $rem = (($sub513|0) % 40)&-1; $363 = $smpl_buf_idx$addr; HEAP32[$363>>2] = $rem; $364 = $smpl_buf_idx$addr; $365 = HEAP32[$364>>2]|0; $cmp514 = ($365|0)<(0); if ($cmp514) { $366 = $smpl_buf_idx$addr; $367 = HEAP32[$366>>2]|0; $add517 = (($367) + 40)|0; HEAP32[$366>>2] = $add517; } $368 = $smpl_buf_idx$addr; $369 = HEAP32[$368>>2]|0; $370 = $decisionDelay$addr; $add519 = (($369) + ($370))|0; $rem520 = (($add519|0) % 40)&-1; $last_smple_idx = $rem520; $RD_Q10523 = ((($vla)) + 4|0); $371 = HEAP32[$RD_Q10523>>2]|0; $RDmin_Q10 = $371; $Winner_ind = 0; $k = 1; while(1) { $372 = $k; $373 = $nStatesDelayedDecision$addr; $cmp525 = ($372|0)<($373|0); if (!($cmp525)) { break; } $374 = $k; $arrayidx528 = (($vla) + (($374*56)|0)|0); $RD_Q10530 = ((($arrayidx528)) + 4|0); $375 = HEAP32[$RD_Q10530>>2]|0; $376 = $RDmin_Q10; $cmp531 = ($375|0)<($376|0); if ($cmp531) { $377 = $k; $arrayidx534 = (($vla) + (($377*56)|0)|0); $RD_Q10536 = ((($arrayidx534)) + 4|0); $378 = HEAP32[$RD_Q10536>>2]|0; $RDmin_Q10 = $378; $379 = $k; $Winner_ind = $379; } $380 = $k; $inc539 = (($380) + 1)|0; $k = $inc539; } $381 = $psDelDec$addr; $382 = $Winner_ind; $arrayidx541 = (($381) + (($382*1300)|0)|0); $RandState = ((($arrayidx541)) + 384|0); $383 = $last_smple_idx; $arrayidx542 = (($RandState) + ($383<<2)|0); $384 = HEAP32[$arrayidx542>>2]|0; $Winner_rand_state = $384; $k = 0; while(1) { $385 = $k; $386 = $nStatesDelayedDecision$addr; $cmp544 = ($385|0)<($386|0); if (!($cmp544)) { break; } $387 = $psDelDec$addr; $388 = $k; $arrayidx547 = (($387) + (($388*1300)|0)|0); $RandState548 = ((($arrayidx547)) + 384|0); $389 = $last_smple_idx; $arrayidx549 = (($RandState548) + ($389<<2)|0); $390 = HEAP32[$arrayidx549>>2]|0; $391 = $Winner_rand_state; $cmp550 = ($390|0)!=($391|0); if ($cmp550) { $392 = $k; $arrayidx553 = (($vla) + (($392*56)|0)|0); $RD_Q10555 = ((($arrayidx553)) + 4|0); $393 = HEAP32[$RD_Q10555>>2]|0; $add556 = (($393) + 134217727)|0; $394 = $k; $arrayidx557 = (($vla) + (($394*56)|0)|0); $RD_Q10559 = ((($arrayidx557)) + 4|0); HEAP32[$RD_Q10559>>2] = $add556; $395 = $k; $arrayidx560 = (($vla) + (($395*56)|0)|0); $arrayidx561 = ((($arrayidx560)) + 28|0); $RD_Q10562 = ((($arrayidx561)) + 4|0); $396 = HEAP32[$RD_Q10562>>2]|0; $add563 = (($396) + 134217727)|0; $397 = $k; $arrayidx564 = (($vla) + (($397*56)|0)|0); $arrayidx565 = ((($arrayidx564)) + 28|0); $RD_Q10566 = ((($arrayidx565)) + 4|0); HEAP32[$RD_Q10566>>2] = $add563; } $398 = $k; $inc569 = (($398) + 1)|0; $k = $inc569; } $RD_Q10573 = ((($vla)) + 4|0); $399 = HEAP32[$RD_Q10573>>2]|0; $RDmax_Q10 = $399; $arrayidx575 = ((($vla)) + 28|0); $RD_Q10576 = ((($arrayidx575)) + 4|0); $400 = HEAP32[$RD_Q10576>>2]|0; $RDmin_Q10 = $400; $RDmax_ind = 0; $RDmin_ind = 0; $k = 1; while(1) { $401 = $k; $402 = $nStatesDelayedDecision$addr; $cmp578 = ($401|0)<($402|0); if (!($cmp578)) { break; } $403 = $k; $arrayidx581 = (($vla) + (($403*56)|0)|0); $RD_Q10583 = ((($arrayidx581)) + 4|0); $404 = HEAP32[$RD_Q10583>>2]|0; $405 = $RDmax_Q10; $cmp584 = ($404|0)>($405|0); if ($cmp584) { $406 = $k; $arrayidx587 = (($vla) + (($406*56)|0)|0); $RD_Q10589 = ((($arrayidx587)) + 4|0); $407 = HEAP32[$RD_Q10589>>2]|0; $RDmax_Q10 = $407; $408 = $k; $RDmax_ind = $408; } $409 = $k; $arrayidx591 = (($vla) + (($409*56)|0)|0); $arrayidx592 = ((($arrayidx591)) + 28|0); $RD_Q10593 = ((($arrayidx592)) + 4|0); $410 = HEAP32[$RD_Q10593>>2]|0; $411 = $RDmin_Q10; $cmp594 = ($410|0)<($411|0); if ($cmp594) { $412 = $k; $arrayidx597 = (($vla) + (($412*56)|0)|0); $arrayidx598 = ((($arrayidx597)) + 28|0); $RD_Q10599 = ((($arrayidx598)) + 4|0); $413 = HEAP32[$RD_Q10599>>2]|0; $RDmin_Q10 = $413; $414 = $k; $RDmin_ind = $414; } $415 = $k; $inc602 = (($415) + 1)|0; $k = $inc602; } $416 = $RDmin_Q10; $417 = $RDmax_Q10; $cmp604 = ($416|0)<($417|0); if ($cmp604) { $418 = $psDelDec$addr; $419 = $RDmax_ind; $arrayidx607 = (($418) + (($419*1300)|0)|0); $420 = $i; $add$ptr = (($arrayidx607) + ($420<<2)|0); $421 = $psDelDec$addr; $422 = $RDmin_ind; $arrayidx608 = (($421) + (($422*1300)|0)|0); $423 = $i; $add$ptr609 = (($arrayidx608) + ($423<<2)|0); $424 = $i; $mul610 = $424<<2; $sub611 = (1300 - ($mul610))|0; _memcpy(($add$ptr|0),($add$ptr609|0),($sub611|0))|0; $425 = $RDmax_ind; $arrayidx612 = (($vla) + (($425*56)|0)|0); $426 = $RDmin_ind; $arrayidx614 = (($vla) + (($426*56)|0)|0); $arrayidx615 = ((($arrayidx614)) + 28|0); ;HEAP32[$arrayidx612>>2]=HEAP32[$arrayidx615>>2]|0;HEAP32[$arrayidx612+4>>2]=HEAP32[$arrayidx615+4>>2]|0;HEAP32[$arrayidx612+8>>2]=HEAP32[$arrayidx615+8>>2]|0;HEAP32[$arrayidx612+12>>2]=HEAP32[$arrayidx615+12>>2]|0;HEAP32[$arrayidx612+16>>2]=HEAP32[$arrayidx615+16>>2]|0;HEAP32[$arrayidx612+20>>2]=HEAP32[$arrayidx615+20>>2]|0;HEAP32[$arrayidx612+24>>2]=HEAP32[$arrayidx615+24>>2]|0; } $427 = $psDelDec$addr; $428 = $Winner_ind; $arrayidx617 = (($427) + (($428*1300)|0)|0); $psDD = $arrayidx617; $429 = $subfr$addr; $cmp618 = ($429|0)>(0); if ($cmp618) { label = 64; } else { $430 = $i; $431 = $decisionDelay$addr; $cmp620 = ($430|0)>=($431|0); if ($cmp620) { label = 64; } } if ((label|0) == 64) { label = 0; $432 = $psDD; $Q_Q10623 = ((($432)) + 544|0); $433 = $last_smple_idx; $arrayidx624 = (($Q_Q10623) + ($433<<2)|0); $434 = HEAP32[$arrayidx624>>2]|0; $shr625 = $434 >> 9; $add626 = (($shr625) + 1)|0; $shr627 = $add626 >> 1; $conv628 = $shr627&255; $435 = $pulses$addr; $436 = $i; $437 = $decisionDelay$addr; $sub629 = (($436) - ($437))|0; $arrayidx630 = (($435) + ($sub629)|0); HEAP8[$arrayidx630>>0] = $conv628; $438 = $psDD; $Xq_Q14 = ((($438)) + 704|0); $439 = $last_smple_idx; $arrayidx631 = (($Xq_Q14) + ($439<<2)|0); $440 = HEAP32[$arrayidx631>>2]|0; $shr632 = $440 >> 16; $441 = $delayedGain_Q10$addr; $442 = $last_smple_idx; $arrayidx633 = (($441) + ($442<<2)|0); $443 = HEAP32[$arrayidx633>>2]|0; $conv634 = $443&65535; $conv635 = $conv634 << 16 >> 16; $mul636 = Math_imul($shr632, $conv635)|0; $444 = $psDD; $Xq_Q14637 = ((($444)) + 704|0); $445 = $last_smple_idx; $arrayidx638 = (($Xq_Q14637) + ($445<<2)|0); $446 = HEAP32[$arrayidx638>>2]|0; $and639 = $446 & 65535; $447 = $delayedGain_Q10$addr; $448 = $last_smple_idx; $arrayidx640 = (($447) + ($448<<2)|0); $449 = HEAP32[$arrayidx640>>2]|0; $conv641 = $449&65535; $conv642 = $conv641 << 16 >> 16; $mul643 = Math_imul($and639, $conv642)|0; $shr644 = $mul643 >> 16; $add645 = (($mul636) + ($shr644))|0; $450 = $psDD; $Xq_Q14646 = ((($450)) + 704|0); $451 = $last_smple_idx; $arrayidx647 = (($Xq_Q14646) + ($451<<2)|0); $452 = HEAP32[$arrayidx647>>2]|0; $453 = $delayedGain_Q10$addr; $454 = $last_smple_idx; $arrayidx648 = (($453) + ($454<<2)|0); $455 = HEAP32[$arrayidx648>>2]|0; $shr649 = $455 >> 15; $add650 = (($shr649) + 1)|0; $shr651 = $add650 >> 1; $mul652 = Math_imul($452, $shr651)|0; $add653 = (($add645) + ($mul652))|0; $shr654 = $add653 >> 7; $add655 = (($shr654) + 1)|0; $shr656 = $add655 >> 1; $cmp657 = ($shr656|0)>(32767); if ($cmp657) { $cond722 = 32767; } else { $456 = $psDD; $Xq_Q14661 = ((($456)) + 704|0); $457 = $last_smple_idx; $arrayidx662 = (($Xq_Q14661) + ($457<<2)|0); $458 = HEAP32[$arrayidx662>>2]|0; $shr663 = $458 >> 16; $459 = $delayedGain_Q10$addr; $460 = $last_smple_idx; $arrayidx664 = (($459) + ($460<<2)|0); $461 = HEAP32[$arrayidx664>>2]|0; $conv665 = $461&65535; $conv666 = $conv665 << 16 >> 16; $mul667 = Math_imul($shr663, $conv666)|0; $462 = $psDD; $Xq_Q14668 = ((($462)) + 704|0); $463 = $last_smple_idx; $arrayidx669 = (($Xq_Q14668) + ($463<<2)|0); $464 = HEAP32[$arrayidx669>>2]|0; $and670 = $464 & 65535; $465 = $delayedGain_Q10$addr; $466 = $last_smple_idx; $arrayidx671 = (($465) + ($466<<2)|0); $467 = HEAP32[$arrayidx671>>2]|0; $conv672 = $467&65535; $conv673 = $conv672 << 16 >> 16; $mul674 = Math_imul($and670, $conv673)|0; $shr675 = $mul674 >> 16; $add676 = (($mul667) + ($shr675))|0; $468 = $psDD; $Xq_Q14677 = ((($468)) + 704|0); $469 = $last_smple_idx; $arrayidx678 = (($Xq_Q14677) + ($469<<2)|0); $470 = HEAP32[$arrayidx678>>2]|0; $471 = $delayedGain_Q10$addr; $472 = $last_smple_idx; $arrayidx679 = (($471) + ($472<<2)|0); $473 = HEAP32[$arrayidx679>>2]|0; $shr680 = $473 >> 15; $add681 = (($shr680) + 1)|0; $shr682 = $add681 >> 1; $mul683 = Math_imul($470, $shr682)|0; $add684 = (($add676) + ($mul683))|0; $shr685 = $add684 >> 7; $add686 = (($shr685) + 1)|0; $shr687 = $add686 >> 1; $cmp688 = ($shr687|0)<(-32768); if ($cmp688) { $cond722 = -32768; } else { $474 = $psDD; $Xq_Q14692 = ((($474)) + 704|0); $475 = $last_smple_idx; $arrayidx693 = (($Xq_Q14692) + ($475<<2)|0); $476 = HEAP32[$arrayidx693>>2]|0; $shr694 = $476 >> 16; $477 = $delayedGain_Q10$addr; $478 = $last_smple_idx; $arrayidx695 = (($477) + ($478<<2)|0); $479 = HEAP32[$arrayidx695>>2]|0; $conv696 = $479&65535; $conv697 = $conv696 << 16 >> 16; $mul698 = Math_imul($shr694, $conv697)|0; $480 = $psDD; $Xq_Q14699 = ((($480)) + 704|0); $481 = $last_smple_idx; $arrayidx700 = (($Xq_Q14699) + ($481<<2)|0); $482 = HEAP32[$arrayidx700>>2]|0; $and701 = $482 & 65535; $483 = $delayedGain_Q10$addr; $484 = $last_smple_idx; $arrayidx702 = (($483) + ($484<<2)|0); $485 = HEAP32[$arrayidx702>>2]|0; $conv703 = $485&65535; $conv704 = $conv703 << 16 >> 16; $mul705 = Math_imul($and701, $conv704)|0; $shr706 = $mul705 >> 16; $add707 = (($mul698) + ($shr706))|0; $486 = $psDD; $Xq_Q14708 = ((($486)) + 704|0); $487 = $last_smple_idx; $arrayidx709 = (($Xq_Q14708) + ($487<<2)|0); $488 = HEAP32[$arrayidx709>>2]|0; $489 = $delayedGain_Q10$addr; $490 = $last_smple_idx; $arrayidx710 = (($489) + ($490<<2)|0); $491 = HEAP32[$arrayidx710>>2]|0; $shr711 = $491 >> 15; $add712 = (($shr711) + 1)|0; $shr713 = $add712 >> 1; $mul714 = Math_imul($488, $shr713)|0; $add715 = (($add707) + ($mul714))|0; $shr716 = $add715 >> 7; $add717 = (($shr716) + 1)|0; $shr718 = $add717 >> 1; $cond722 = $shr718; } } $conv723 = $cond722&65535; $492 = $xq$addr; $493 = $i; $494 = $decisionDelay$addr; $sub724 = (($493) - ($494))|0; $arrayidx725 = (($492) + ($sub724<<1)|0); HEAP16[$arrayidx725>>1] = $conv723; $495 = $psDD; $Shape_Q14726 = ((($495)) + 1024|0); $496 = $last_smple_idx; $arrayidx727 = (($Shape_Q14726) + ($496<<2)|0); $497 = HEAP32[$arrayidx727>>2]|0; $498 = $NSQ$addr; $sLTP_shp_Q14728 = ((($498)) + 1280|0); $499 = $NSQ$addr; $sLTP_shp_buf_idx729 = ((($499)) + 4336|0); $500 = HEAP32[$sLTP_shp_buf_idx729>>2]|0; $501 = $decisionDelay$addr; $sub730 = (($500) - ($501))|0; $arrayidx731 = (($sLTP_shp_Q14728) + ($sub730<<2)|0); HEAP32[$arrayidx731>>2] = $497; $502 = $psDD; $Pred_Q15 = ((($502)) + 864|0); $503 = $last_smple_idx; $arrayidx732 = (($Pred_Q15) + ($503<<2)|0); $504 = HEAP32[$arrayidx732>>2]|0; $505 = $sLTP_Q15$addr; $506 = $NSQ$addr; $sLTP_buf_idx733 = ((($506)) + 4332|0); $507 = HEAP32[$sLTP_buf_idx733>>2]|0; $508 = $decisionDelay$addr; $sub734 = (($507) - ($508))|0; $arrayidx735 = (($505) + ($sub734<<2)|0); HEAP32[$arrayidx735>>2] = $504; } $509 = $NSQ$addr; $sLTP_shp_buf_idx737 = ((($509)) + 4336|0); $510 = HEAP32[$sLTP_shp_buf_idx737>>2]|0; $inc738 = (($510) + 1)|0; HEAP32[$sLTP_shp_buf_idx737>>2] = $inc738; $511 = $NSQ$addr; $sLTP_buf_idx739 = ((($511)) + 4332|0); $512 = HEAP32[$sLTP_buf_idx739>>2]|0; $inc740 = (($512) + 1)|0; HEAP32[$sLTP_buf_idx739>>2] = $inc740; $k = 0; while(1) { $513 = $k; $514 = $nStatesDelayedDecision$addr; $cmp742 = ($513|0)<($514|0); if (!($cmp742)) { break; } $515 = $psDelDec$addr; $516 = $k; $arrayidx745 = (($515) + (($516*1300)|0)|0); $psDD = $arrayidx745; $517 = $k; $arrayidx746 = (($vla) + (($517*56)|0)|0); $psSS = $arrayidx746; $518 = $psSS; $LF_AR_Q14748 = ((($518)) + 12|0); $519 = HEAP32[$LF_AR_Q14748>>2]|0; $520 = $psDD; $LF_AR_Q14749 = ((($520)) + 1280|0); HEAP32[$LF_AR_Q14749>>2] = $519; $521 = $psSS; $Diff_Q14750 = ((($521)) + 16|0); $522 = HEAP32[$Diff_Q14750>>2]|0; $523 = $psDD; $Diff_Q14751 = ((($523)) + 1284|0); HEAP32[$Diff_Q14751>>2] = $522; $524 = $psSS; $xq_Q14752 = ((($524)) + 8|0); $525 = HEAP32[$xq_Q14752>>2]|0; $526 = $psDD; $527 = $i; $add754 = (16 + ($527))|0; $arrayidx755 = (($526) + ($add754<<2)|0); HEAP32[$arrayidx755>>2] = $525; $528 = $psSS; $xq_Q14756 = ((($528)) + 8|0); $529 = HEAP32[$xq_Q14756>>2]|0; $530 = $psDD; $Xq_Q14757 = ((($530)) + 704|0); $531 = $smpl_buf_idx$addr; $532 = HEAP32[$531>>2]|0; $arrayidx758 = (($Xq_Q14757) + ($532<<2)|0); HEAP32[$arrayidx758>>2] = $529; $533 = $psSS; $534 = HEAP32[$533>>2]|0; $535 = $psDD; $Q_Q10760 = ((($535)) + 544|0); $536 = $smpl_buf_idx$addr; $537 = HEAP32[$536>>2]|0; $arrayidx761 = (($Q_Q10760) + ($537<<2)|0); HEAP32[$arrayidx761>>2] = $534; $538 = $psSS; $LPC_exc_Q14762 = ((($538)) + 24|0); $539 = HEAP32[$LPC_exc_Q14762>>2]|0; $shl763 = $539 << 1; $540 = $psDD; $Pred_Q15764 = ((($540)) + 864|0); $541 = $smpl_buf_idx$addr; $542 = HEAP32[$541>>2]|0; $arrayidx765 = (($Pred_Q15764) + ($542<<2)|0); HEAP32[$arrayidx765>>2] = $shl763; $543 = $psSS; $sLTP_shp_Q14766 = ((($543)) + 20|0); $544 = HEAP32[$sLTP_shp_Q14766>>2]|0; $545 = $psDD; $Shape_Q14767 = ((($545)) + 1024|0); $546 = $smpl_buf_idx$addr; $547 = HEAP32[$546>>2]|0; $arrayidx768 = (($Shape_Q14767) + ($547<<2)|0); HEAP32[$arrayidx768>>2] = $544; $548 = $psDD; $Seed769 = ((($548)) + 1288|0); $549 = HEAP32[$Seed769>>2]|0; $550 = $psSS; $551 = HEAP32[$550>>2]|0; $shr771 = $551 >> 9; $add772 = (($shr771) + 1)|0; $shr773 = $add772 >> 1; $add774 = (($549) + ($shr773))|0; $552 = $psDD; $Seed775 = ((($552)) + 1288|0); HEAP32[$Seed775>>2] = $add774; $553 = $psDD; $Seed776 = ((($553)) + 1288|0); $554 = HEAP32[$Seed776>>2]|0; $555 = $psDD; $RandState777 = ((($555)) + 384|0); $556 = $smpl_buf_idx$addr; $557 = HEAP32[$556>>2]|0; $arrayidx778 = (($RandState777) + ($557<<2)|0); HEAP32[$arrayidx778>>2] = $554; $558 = $psSS; $RD_Q10779 = ((($558)) + 4|0); $559 = HEAP32[$RD_Q10779>>2]|0; $560 = $psDD; $RD_Q10780 = ((($560)) + 1296|0); HEAP32[$RD_Q10780>>2] = $559; $561 = $k; $inc782 = (($561) + 1)|0; $k = $inc782; } $562 = $Gain_Q10; $563 = $delayedGain_Q10$addr; $564 = $smpl_buf_idx$addr; $565 = HEAP32[$564>>2]|0; $arrayidx784 = (($563) + ($565<<2)|0); HEAP32[$arrayidx784>>2] = $562; $566 = $i; $inc786 = (($566) + 1)|0; $i = $inc786; } $k = 0; while(1) { $567 = $k; $568 = $nStatesDelayedDecision$addr; $cmp789 = ($567|0)<($568|0); if (!($cmp789)) { break; } $569 = $psDelDec$addr; $570 = $k; $arrayidx792 = (($569) + (($570*1300)|0)|0); $psDD = $arrayidx792; $571 = $psDD; $572 = $psDD; $573 = $length$addr; $arrayidx796 = (($572) + ($573<<2)|0); dest=$571; src=$arrayidx796; stop=dest+64|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); $574 = $k; $inc798 = (($574) + 1)|0; $k = $inc798; } $575 = $saved_stack; _llvm_stackrestore(($575|0)); STACKTOP = sp;return; } function _silk_noise_shape_quantizer_short_prediction_c_425($buf32,$coef16,$order) { $buf32 = $buf32|0; $coef16 = $coef16|0; $order = $order|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0; var $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0; var $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0; var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0; var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0; var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $add = 0, $add111 = 0, $add112 = 0, $add124 = 0, $add125 = 0, $add138 = 0, $add139 = 0, $add151 = 0, $add152 = 0, $add164 = 0, $add165 = 0, $add177 = 0, $add178 = 0; var $add190 = 0, $add191 = 0, $add20 = 0, $add203 = 0, $add204 = 0, $add21 = 0, $add33 = 0, $add34 = 0, $add46 = 0, $add47 = 0, $add59 = 0, $add60 = 0, $add72 = 0, $add73 = 0, $add8 = 0, $add85 = 0, $add86 = 0, $add98 = 0, $add99 = 0, $and = 0; var $and106 = 0, $and119 = 0, $and133 = 0, $and146 = 0, $and15 = 0, $and159 = 0, $and172 = 0, $and185 = 0, $and198 = 0, $and28 = 0, $and41 = 0, $and54 = 0, $and67 = 0, $and80 = 0, $and93 = 0, $arrayidx100 = 0, $arrayidx102 = 0, $arrayidx105 = 0, $arrayidx107 = 0, $arrayidx11 = 0; var $arrayidx113 = 0, $arrayidx115 = 0, $arrayidx118 = 0, $arrayidx120 = 0, $arrayidx127 = 0, $arrayidx129 = 0, $arrayidx132 = 0, $arrayidx134 = 0, $arrayidx14 = 0, $arrayidx140 = 0, $arrayidx142 = 0, $arrayidx145 = 0, $arrayidx147 = 0, $arrayidx153 = 0, $arrayidx155 = 0, $arrayidx158 = 0, $arrayidx16 = 0, $arrayidx160 = 0, $arrayidx166 = 0, $arrayidx168 = 0; var $arrayidx171 = 0, $arrayidx173 = 0, $arrayidx179 = 0, $arrayidx181 = 0, $arrayidx184 = 0, $arrayidx186 = 0, $arrayidx192 = 0, $arrayidx194 = 0, $arrayidx197 = 0, $arrayidx199 = 0, $arrayidx22 = 0, $arrayidx24 = 0, $arrayidx27 = 0, $arrayidx29 = 0, $arrayidx35 = 0, $arrayidx37 = 0, $arrayidx40 = 0, $arrayidx42 = 0, $arrayidx48 = 0, $arrayidx50 = 0; var $arrayidx53 = 0, $arrayidx55 = 0, $arrayidx61 = 0, $arrayidx63 = 0, $arrayidx66 = 0, $arrayidx68 = 0, $arrayidx74 = 0, $arrayidx76 = 0, $arrayidx79 = 0, $arrayidx81 = 0, $arrayidx87 = 0, $arrayidx89 = 0, $arrayidx9 = 0, $arrayidx92 = 0, $arrayidx94 = 0, $buf32$addr = 0, $cmp = 0, $coef16$addr = 0, $conv = 0, $conv103 = 0; var $conv108 = 0, $conv116 = 0, $conv12 = 0, $conv121 = 0, $conv130 = 0, $conv135 = 0, $conv143 = 0, $conv148 = 0, $conv156 = 0, $conv161 = 0, $conv169 = 0, $conv17 = 0, $conv174 = 0, $conv182 = 0, $conv187 = 0, $conv195 = 0, $conv200 = 0, $conv25 = 0, $conv30 = 0, $conv38 = 0; var $conv43 = 0, $conv5 = 0, $conv51 = 0, $conv56 = 0, $conv64 = 0, $conv69 = 0, $conv77 = 0, $conv82 = 0, $conv90 = 0, $conv95 = 0, $mul = 0, $mul104 = 0, $mul109 = 0, $mul117 = 0, $mul122 = 0, $mul13 = 0, $mul131 = 0, $mul136 = 0, $mul144 = 0, $mul149 = 0; var $mul157 = 0, $mul162 = 0, $mul170 = 0, $mul175 = 0, $mul18 = 0, $mul183 = 0, $mul188 = 0, $mul196 = 0, $mul201 = 0, $mul26 = 0, $mul31 = 0, $mul39 = 0, $mul44 = 0, $mul52 = 0, $mul57 = 0, $mul6 = 0, $mul65 = 0, $mul70 = 0, $mul78 = 0, $mul83 = 0; var $mul91 = 0, $mul96 = 0, $order$addr = 0, $out = 0, $shr = 0, $shr1 = 0, $shr10 = 0, $shr101 = 0, $shr110 = 0, $shr114 = 0, $shr123 = 0, $shr128 = 0, $shr137 = 0, $shr141 = 0, $shr150 = 0, $shr154 = 0, $shr163 = 0, $shr167 = 0, $shr176 = 0, $shr180 = 0; var $shr189 = 0, $shr19 = 0, $shr193 = 0, $shr202 = 0, $shr23 = 0, $shr32 = 0, $shr36 = 0, $shr45 = 0, $shr49 = 0, $shr58 = 0, $shr62 = 0, $shr7 = 0, $shr71 = 0, $shr75 = 0, $shr84 = 0, $shr88 = 0, $shr97 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $buf32$addr = $buf32; $coef16$addr = $coef16; $order$addr = $order; $0 = $order$addr; $shr = $0 >> 1; $out = $shr; $1 = $out; $2 = $buf32$addr; $3 = HEAP32[$2>>2]|0; $shr1 = $3 >> 16; $4 = $coef16$addr; $5 = HEAP16[$4>>1]|0; $conv = $5 << 16 >> 16; $mul = Math_imul($shr1, $conv)|0; $6 = $buf32$addr; $7 = HEAP32[$6>>2]|0; $and = $7 & 65535; $8 = $coef16$addr; $9 = HEAP16[$8>>1]|0; $conv5 = $9 << 16 >> 16; $mul6 = Math_imul($and, $conv5)|0; $shr7 = $mul6 >> 16; $add = (($mul) + ($shr7))|0; $add8 = (($1) + ($add))|0; $out = $add8; $10 = $out; $11 = $buf32$addr; $arrayidx9 = ((($11)) + -4|0); $12 = HEAP32[$arrayidx9>>2]|0; $shr10 = $12 >> 16; $13 = $coef16$addr; $arrayidx11 = ((($13)) + 2|0); $14 = HEAP16[$arrayidx11>>1]|0; $conv12 = $14 << 16 >> 16; $mul13 = Math_imul($shr10, $conv12)|0; $15 = $buf32$addr; $arrayidx14 = ((($15)) + -4|0); $16 = HEAP32[$arrayidx14>>2]|0; $and15 = $16 & 65535; $17 = $coef16$addr; $arrayidx16 = ((($17)) + 2|0); $18 = HEAP16[$arrayidx16>>1]|0; $conv17 = $18 << 16 >> 16; $mul18 = Math_imul($and15, $conv17)|0; $shr19 = $mul18 >> 16; $add20 = (($mul13) + ($shr19))|0; $add21 = (($10) + ($add20))|0; $out = $add21; $19 = $out; $20 = $buf32$addr; $arrayidx22 = ((($20)) + -8|0); $21 = HEAP32[$arrayidx22>>2]|0; $shr23 = $21 >> 16; $22 = $coef16$addr; $arrayidx24 = ((($22)) + 4|0); $23 = HEAP16[$arrayidx24>>1]|0; $conv25 = $23 << 16 >> 16; $mul26 = Math_imul($shr23, $conv25)|0; $24 = $buf32$addr; $arrayidx27 = ((($24)) + -8|0); $25 = HEAP32[$arrayidx27>>2]|0; $and28 = $25 & 65535; $26 = $coef16$addr; $arrayidx29 = ((($26)) + 4|0); $27 = HEAP16[$arrayidx29>>1]|0; $conv30 = $27 << 16 >> 16; $mul31 = Math_imul($and28, $conv30)|0; $shr32 = $mul31 >> 16; $add33 = (($mul26) + ($shr32))|0; $add34 = (($19) + ($add33))|0; $out = $add34; $28 = $out; $29 = $buf32$addr; $arrayidx35 = ((($29)) + -12|0); $30 = HEAP32[$arrayidx35>>2]|0; $shr36 = $30 >> 16; $31 = $coef16$addr; $arrayidx37 = ((($31)) + 6|0); $32 = HEAP16[$arrayidx37>>1]|0; $conv38 = $32 << 16 >> 16; $mul39 = Math_imul($shr36, $conv38)|0; $33 = $buf32$addr; $arrayidx40 = ((($33)) + -12|0); $34 = HEAP32[$arrayidx40>>2]|0; $and41 = $34 & 65535; $35 = $coef16$addr; $arrayidx42 = ((($35)) + 6|0); $36 = HEAP16[$arrayidx42>>1]|0; $conv43 = $36 << 16 >> 16; $mul44 = Math_imul($and41, $conv43)|0; $shr45 = $mul44 >> 16; $add46 = (($mul39) + ($shr45))|0; $add47 = (($28) + ($add46))|0; $out = $add47; $37 = $out; $38 = $buf32$addr; $arrayidx48 = ((($38)) + -16|0); $39 = HEAP32[$arrayidx48>>2]|0; $shr49 = $39 >> 16; $40 = $coef16$addr; $arrayidx50 = ((($40)) + 8|0); $41 = HEAP16[$arrayidx50>>1]|0; $conv51 = $41 << 16 >> 16; $mul52 = Math_imul($shr49, $conv51)|0; $42 = $buf32$addr; $arrayidx53 = ((($42)) + -16|0); $43 = HEAP32[$arrayidx53>>2]|0; $and54 = $43 & 65535; $44 = $coef16$addr; $arrayidx55 = ((($44)) + 8|0); $45 = HEAP16[$arrayidx55>>1]|0; $conv56 = $45 << 16 >> 16; $mul57 = Math_imul($and54, $conv56)|0; $shr58 = $mul57 >> 16; $add59 = (($mul52) + ($shr58))|0; $add60 = (($37) + ($add59))|0; $out = $add60; $46 = $out; $47 = $buf32$addr; $arrayidx61 = ((($47)) + -20|0); $48 = HEAP32[$arrayidx61>>2]|0; $shr62 = $48 >> 16; $49 = $coef16$addr; $arrayidx63 = ((($49)) + 10|0); $50 = HEAP16[$arrayidx63>>1]|0; $conv64 = $50 << 16 >> 16; $mul65 = Math_imul($shr62, $conv64)|0; $51 = $buf32$addr; $arrayidx66 = ((($51)) + -20|0); $52 = HEAP32[$arrayidx66>>2]|0; $and67 = $52 & 65535; $53 = $coef16$addr; $arrayidx68 = ((($53)) + 10|0); $54 = HEAP16[$arrayidx68>>1]|0; $conv69 = $54 << 16 >> 16; $mul70 = Math_imul($and67, $conv69)|0; $shr71 = $mul70 >> 16; $add72 = (($mul65) + ($shr71))|0; $add73 = (($46) + ($add72))|0; $out = $add73; $55 = $out; $56 = $buf32$addr; $arrayidx74 = ((($56)) + -24|0); $57 = HEAP32[$arrayidx74>>2]|0; $shr75 = $57 >> 16; $58 = $coef16$addr; $arrayidx76 = ((($58)) + 12|0); $59 = HEAP16[$arrayidx76>>1]|0; $conv77 = $59 << 16 >> 16; $mul78 = Math_imul($shr75, $conv77)|0; $60 = $buf32$addr; $arrayidx79 = ((($60)) + -24|0); $61 = HEAP32[$arrayidx79>>2]|0; $and80 = $61 & 65535; $62 = $coef16$addr; $arrayidx81 = ((($62)) + 12|0); $63 = HEAP16[$arrayidx81>>1]|0; $conv82 = $63 << 16 >> 16; $mul83 = Math_imul($and80, $conv82)|0; $shr84 = $mul83 >> 16; $add85 = (($mul78) + ($shr84))|0; $add86 = (($55) + ($add85))|0; $out = $add86; $64 = $out; $65 = $buf32$addr; $arrayidx87 = ((($65)) + -28|0); $66 = HEAP32[$arrayidx87>>2]|0; $shr88 = $66 >> 16; $67 = $coef16$addr; $arrayidx89 = ((($67)) + 14|0); $68 = HEAP16[$arrayidx89>>1]|0; $conv90 = $68 << 16 >> 16; $mul91 = Math_imul($shr88, $conv90)|0; $69 = $buf32$addr; $arrayidx92 = ((($69)) + -28|0); $70 = HEAP32[$arrayidx92>>2]|0; $and93 = $70 & 65535; $71 = $coef16$addr; $arrayidx94 = ((($71)) + 14|0); $72 = HEAP16[$arrayidx94>>1]|0; $conv95 = $72 << 16 >> 16; $mul96 = Math_imul($and93, $conv95)|0; $shr97 = $mul96 >> 16; $add98 = (($mul91) + ($shr97))|0; $add99 = (($64) + ($add98))|0; $out = $add99; $73 = $out; $74 = $buf32$addr; $arrayidx100 = ((($74)) + -32|0); $75 = HEAP32[$arrayidx100>>2]|0; $shr101 = $75 >> 16; $76 = $coef16$addr; $arrayidx102 = ((($76)) + 16|0); $77 = HEAP16[$arrayidx102>>1]|0; $conv103 = $77 << 16 >> 16; $mul104 = Math_imul($shr101, $conv103)|0; $78 = $buf32$addr; $arrayidx105 = ((($78)) + -32|0); $79 = HEAP32[$arrayidx105>>2]|0; $and106 = $79 & 65535; $80 = $coef16$addr; $arrayidx107 = ((($80)) + 16|0); $81 = HEAP16[$arrayidx107>>1]|0; $conv108 = $81 << 16 >> 16; $mul109 = Math_imul($and106, $conv108)|0; $shr110 = $mul109 >> 16; $add111 = (($mul104) + ($shr110))|0; $add112 = (($73) + ($add111))|0; $out = $add112; $82 = $out; $83 = $buf32$addr; $arrayidx113 = ((($83)) + -36|0); $84 = HEAP32[$arrayidx113>>2]|0; $shr114 = $84 >> 16; $85 = $coef16$addr; $arrayidx115 = ((($85)) + 18|0); $86 = HEAP16[$arrayidx115>>1]|0; $conv116 = $86 << 16 >> 16; $mul117 = Math_imul($shr114, $conv116)|0; $87 = $buf32$addr; $arrayidx118 = ((($87)) + -36|0); $88 = HEAP32[$arrayidx118>>2]|0; $and119 = $88 & 65535; $89 = $coef16$addr; $arrayidx120 = ((($89)) + 18|0); $90 = HEAP16[$arrayidx120>>1]|0; $conv121 = $90 << 16 >> 16; $mul122 = Math_imul($and119, $conv121)|0; $shr123 = $mul122 >> 16; $add124 = (($mul117) + ($shr123))|0; $add125 = (($82) + ($add124))|0; $out = $add125; $91 = $order$addr; $cmp = ($91|0)==(16); if (!($cmp)) { $146 = $out; STACKTOP = sp;return ($146|0); } $92 = $out; $93 = $buf32$addr; $arrayidx127 = ((($93)) + -40|0); $94 = HEAP32[$arrayidx127>>2]|0; $shr128 = $94 >> 16; $95 = $coef16$addr; $arrayidx129 = ((($95)) + 20|0); $96 = HEAP16[$arrayidx129>>1]|0; $conv130 = $96 << 16 >> 16; $mul131 = Math_imul($shr128, $conv130)|0; $97 = $buf32$addr; $arrayidx132 = ((($97)) + -40|0); $98 = HEAP32[$arrayidx132>>2]|0; $and133 = $98 & 65535; $99 = $coef16$addr; $arrayidx134 = ((($99)) + 20|0); $100 = HEAP16[$arrayidx134>>1]|0; $conv135 = $100 << 16 >> 16; $mul136 = Math_imul($and133, $conv135)|0; $shr137 = $mul136 >> 16; $add138 = (($mul131) + ($shr137))|0; $add139 = (($92) + ($add138))|0; $out = $add139; $101 = $out; $102 = $buf32$addr; $arrayidx140 = ((($102)) + -44|0); $103 = HEAP32[$arrayidx140>>2]|0; $shr141 = $103 >> 16; $104 = $coef16$addr; $arrayidx142 = ((($104)) + 22|0); $105 = HEAP16[$arrayidx142>>1]|0; $conv143 = $105 << 16 >> 16; $mul144 = Math_imul($shr141, $conv143)|0; $106 = $buf32$addr; $arrayidx145 = ((($106)) + -44|0); $107 = HEAP32[$arrayidx145>>2]|0; $and146 = $107 & 65535; $108 = $coef16$addr; $arrayidx147 = ((($108)) + 22|0); $109 = HEAP16[$arrayidx147>>1]|0; $conv148 = $109 << 16 >> 16; $mul149 = Math_imul($and146, $conv148)|0; $shr150 = $mul149 >> 16; $add151 = (($mul144) + ($shr150))|0; $add152 = (($101) + ($add151))|0; $out = $add152; $110 = $out; $111 = $buf32$addr; $arrayidx153 = ((($111)) + -48|0); $112 = HEAP32[$arrayidx153>>2]|0; $shr154 = $112 >> 16; $113 = $coef16$addr; $arrayidx155 = ((($113)) + 24|0); $114 = HEAP16[$arrayidx155>>1]|0; $conv156 = $114 << 16 >> 16; $mul157 = Math_imul($shr154, $conv156)|0; $115 = $buf32$addr; $arrayidx158 = ((($115)) + -48|0); $116 = HEAP32[$arrayidx158>>2]|0; $and159 = $116 & 65535; $117 = $coef16$addr; $arrayidx160 = ((($117)) + 24|0); $118 = HEAP16[$arrayidx160>>1]|0; $conv161 = $118 << 16 >> 16; $mul162 = Math_imul($and159, $conv161)|0; $shr163 = $mul162 >> 16; $add164 = (($mul157) + ($shr163))|0; $add165 = (($110) + ($add164))|0; $out = $add165; $119 = $out; $120 = $buf32$addr; $arrayidx166 = ((($120)) + -52|0); $121 = HEAP32[$arrayidx166>>2]|0; $shr167 = $121 >> 16; $122 = $coef16$addr; $arrayidx168 = ((($122)) + 26|0); $123 = HEAP16[$arrayidx168>>1]|0; $conv169 = $123 << 16 >> 16; $mul170 = Math_imul($shr167, $conv169)|0; $124 = $buf32$addr; $arrayidx171 = ((($124)) + -52|0); $125 = HEAP32[$arrayidx171>>2]|0; $and172 = $125 & 65535; $126 = $coef16$addr; $arrayidx173 = ((($126)) + 26|0); $127 = HEAP16[$arrayidx173>>1]|0; $conv174 = $127 << 16 >> 16; $mul175 = Math_imul($and172, $conv174)|0; $shr176 = $mul175 >> 16; $add177 = (($mul170) + ($shr176))|0; $add178 = (($119) + ($add177))|0; $out = $add178; $128 = $out; $129 = $buf32$addr; $arrayidx179 = ((($129)) + -56|0); $130 = HEAP32[$arrayidx179>>2]|0; $shr180 = $130 >> 16; $131 = $coef16$addr; $arrayidx181 = ((($131)) + 28|0); $132 = HEAP16[$arrayidx181>>1]|0; $conv182 = $132 << 16 >> 16; $mul183 = Math_imul($shr180, $conv182)|0; $133 = $buf32$addr; $arrayidx184 = ((($133)) + -56|0); $134 = HEAP32[$arrayidx184>>2]|0; $and185 = $134 & 65535; $135 = $coef16$addr; $arrayidx186 = ((($135)) + 28|0); $136 = HEAP16[$arrayidx186>>1]|0; $conv187 = $136 << 16 >> 16; $mul188 = Math_imul($and185, $conv187)|0; $shr189 = $mul188 >> 16; $add190 = (($mul183) + ($shr189))|0; $add191 = (($128) + ($add190))|0; $out = $add191; $137 = $out; $138 = $buf32$addr; $arrayidx192 = ((($138)) + -60|0); $139 = HEAP32[$arrayidx192>>2]|0; $shr193 = $139 >> 16; $140 = $coef16$addr; $arrayidx194 = ((($140)) + 30|0); $141 = HEAP16[$arrayidx194>>1]|0; $conv195 = $141 << 16 >> 16; $mul196 = Math_imul($shr193, $conv195)|0; $142 = $buf32$addr; $arrayidx197 = ((($142)) + -60|0); $143 = HEAP32[$arrayidx197>>2]|0; $and198 = $143 & 65535; $144 = $coef16$addr; $arrayidx199 = ((($144)) + 30|0); $145 = HEAP16[$arrayidx199>>1]|0; $conv200 = $145 << 16 >> 16; $mul201 = Math_imul($and198, $conv200)|0; $shr202 = $mul201 >> 16; $add203 = (($mul196) + ($shr202))|0; $add204 = (($137) + ($add203))|0; $out = $add204; $146 = $out; STACKTOP = sp;return ($146|0); } function _silk_INVERSE32_varQ_426($b32,$Qres) { $b32 = $b32|0; $Qres = $Qres|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $Qres$addr = 0, $add = 0; var $add20 = 0, $add21 = 0, $add23 = 0, $add26 = 0, $and = 0, $and15 = 0, $b32$addr = 0, $b32_inv = 0, $b32_nrm = 0, $b_headrm = 0, $call = 0, $cmp = 0, $cmp29 = 0, $cmp35 = 0, $cmp40 = 0, $cmp48 = 0, $cmp61 = 0, $cmp69 = 0, $cmp83 = 0, $cond = 0; var $cond80 = 0, $conv = 0, $conv12 = 0, $conv13 = 0, $conv16 = 0, $conv17 = 0, $conv4 = 0, $conv5 = 0, $conv6 = 0, $div = 0, $err_Q32 = 0, $lshift = 0, $mul = 0, $mul14 = 0, $mul18 = 0, $mul25 = 0, $mul7 = 0, $result = 0, $retval = 0, $shl = 0; var $shl10 = 0, $shl2 = 0, $shl82 = 0, $shr = 0, $shr11 = 0, $shr19 = 0, $shr22 = 0, $shr24 = 0, $shr3 = 0, $shr32 = 0, $shr34 = 0, $shr39 = 0, $shr44 = 0, $shr47 = 0, $shr52 = 0, $shr60 = 0, $shr65 = 0, $shr68 = 0, $shr73 = 0, $shr8 = 0; var $shr86 = 0, $sub = 0, $sub1 = 0, $sub27 = 0, $sub28 = 0, $sub31 = 0, $sub33 = 0, $sub38 = 0, $sub43 = 0, $sub46 = 0, $sub51 = 0, $sub64 = 0, $sub67 = 0, $sub72 = 0, $sub81 = 0, $sub9 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $b32$addr = $b32; $Qres$addr = $Qres; $0 = $b32$addr; $cmp = ($0|0)>(0); $1 = $b32$addr; $sub = (0 - ($1))|0; $cond = $cmp ? $1 : $sub; $call = (_silk_CLZ32_428($cond)|0); $sub1 = (($call) - 1)|0; $b_headrm = $sub1; $2 = $b32$addr; $3 = $b_headrm; $shl = $2 << $3; $b32_nrm = $shl; $4 = $b32_nrm; $shr = $4 >> 16; $div = (536870911 / ($shr|0))&-1; $b32_inv = $div; $5 = $b32_inv; $shl2 = $5 << 16; $result = $shl2; $6 = $b32_nrm; $shr3 = $6 >> 16; $7 = $b32_inv; $conv = $7&65535; $conv4 = $conv << 16 >> 16; $mul = Math_imul($shr3, $conv4)|0; $8 = $b32_nrm; $and = $8 & 65535; $9 = $b32_inv; $conv5 = $9&65535; $conv6 = $conv5 << 16 >> 16; $mul7 = Math_imul($and, $conv6)|0; $shr8 = $mul7 >> 16; $add = (($mul) + ($shr8))|0; $sub9 = (536870912 - ($add))|0; $shl10 = $sub9 << 3; $err_Q32 = $shl10; $10 = $result; $11 = $err_Q32; $shr11 = $11 >> 16; $12 = $b32_inv; $conv12 = $12&65535; $conv13 = $conv12 << 16 >> 16; $mul14 = Math_imul($shr11, $conv13)|0; $13 = $err_Q32; $and15 = $13 & 65535; $14 = $b32_inv; $conv16 = $14&65535; $conv17 = $conv16 << 16 >> 16; $mul18 = Math_imul($and15, $conv17)|0; $shr19 = $mul18 >> 16; $add20 = (($mul14) + ($shr19))|0; $add21 = (($10) + ($add20))|0; $15 = $err_Q32; $16 = $b32_inv; $shr22 = $16 >> 15; $add23 = (($shr22) + 1)|0; $shr24 = $add23 >> 1; $mul25 = Math_imul($15, $shr24)|0; $add26 = (($add21) + ($mul25))|0; $result = $add26; $17 = $b_headrm; $sub27 = (61 - ($17))|0; $18 = $Qres$addr; $sub28 = (($sub27) - ($18))|0; $lshift = $sub28; $19 = $lshift; $cmp29 = ($19|0)<=(0); $20 = $lshift; if (!($cmp29)) { $cmp83 = ($20|0)<(32); if ($cmp83) { $35 = $result; $36 = $lshift; $shr86 = $35 >> $36; $retval = $shr86; $37 = $retval; STACKTOP = sp;return ($37|0); } else { $retval = 0; $37 = $retval; STACKTOP = sp;return ($37|0); } } $sub31 = (0 - ($20))|0; $shr32 = -2147483648 >> $sub31; $21 = $lshift; $sub33 = (0 - ($21))|0; $shr34 = 2147483647 >> $sub33; $cmp35 = ($shr32|0)>($shr34|0); $22 = $result; $23 = $lshift; $sub38 = (0 - ($23))|0; do { if ($cmp35) { $shr39 = -2147483648 >> $sub38; $cmp40 = ($22|0)>($shr39|0); if ($cmp40) { $24 = $lshift; $sub43 = (0 - ($24))|0; $shr44 = -2147483648 >> $sub43; $cond80 = $shr44; break; } $25 = $result; $26 = $lshift; $sub46 = (0 - ($26))|0; $shr47 = 2147483647 >> $sub46; $cmp48 = ($25|0)<($shr47|0); if ($cmp48) { $27 = $lshift; $sub51 = (0 - ($27))|0; $shr52 = 2147483647 >> $sub51; $cond80 = $shr52; break; } else { $28 = $result; $cond80 = $28; break; } } else { $shr60 = 2147483647 >> $sub38; $cmp61 = ($22|0)>($shr60|0); if ($cmp61) { $29 = $lshift; $sub64 = (0 - ($29))|0; $shr65 = 2147483647 >> $sub64; $cond80 = $shr65; break; } $30 = $result; $31 = $lshift; $sub67 = (0 - ($31))|0; $shr68 = -2147483648 >> $sub67; $cmp69 = ($30|0)<($shr68|0); if ($cmp69) { $32 = $lshift; $sub72 = (0 - ($32))|0; $shr73 = -2147483648 >> $sub72; $cond80 = $shr73; break; } else { $33 = $result; $cond80 = $33; break; } } } while(0); $34 = $lshift; $sub81 = (0 - ($34))|0; $shl82 = $cond80 << $sub81; $retval = $shl82; $37 = $retval; STACKTOP = sp;return ($37|0); } function _silk_DIV32_varQ_427($a32,$b32,$Qres) { $a32 = $a32|0; $b32 = $b32|0; $Qres = $Qres|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $Qres$addr = 0, $a32$addr = 0, $a32_nrm = 0, $a_headrm = 0, $add = 0, $add33 = 0, $add34 = 0, $add35 = 0, $and = 0; var $and28 = 0, $b32$addr = 0, $b32_inv = 0, $b32_nrm = 0, $b_headrm = 0, $call = 0, $call8 = 0, $cmp = 0, $cmp2 = 0, $cmp38 = 0, $cmp44 = 0, $cmp49 = 0, $cmp57 = 0, $cmp70 = 0, $cmp78 = 0, $cmp92 = 0, $cond = 0, $cond7 = 0, $cond89 = 0, $conv = 0; var $conv12 = 0, $conv13 = 0, $conv14 = 0, $conv25 = 0, $conv26 = 0, $conv29 = 0, $conv30 = 0, $div = 0, $lshift = 0, $mul = 0, $mul15 = 0, $mul27 = 0, $mul31 = 0, $result = 0, $retval = 0, $shl = 0, $shl10 = 0, $shl22 = 0, $shl91 = 0, $shr = 0; var $shr11 = 0, $shr16 = 0, $shr24 = 0, $shr32 = 0, $shr41 = 0, $shr43 = 0, $shr48 = 0, $shr53 = 0, $shr56 = 0, $shr61 = 0, $shr69 = 0, $shr74 = 0, $shr77 = 0, $shr82 = 0, $shr95 = 0, $sub = 0, $sub1 = 0, $sub23 = 0, $sub36 = 0, $sub37 = 0; var $sub40 = 0, $sub42 = 0, $sub47 = 0, $sub5 = 0, $sub52 = 0, $sub55 = 0, $sub60 = 0, $sub73 = 0, $sub76 = 0, $sub81 = 0, $sub9 = 0, $sub90 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $a32$addr = $a32; $b32$addr = $b32; $Qres$addr = $Qres; $0 = $a32$addr; $cmp = ($0|0)>(0); $1 = $a32$addr; $sub = (0 - ($1))|0; $cond = $cmp ? $1 : $sub; $call = (_silk_CLZ32_428($cond)|0); $sub1 = (($call) - 1)|0; $a_headrm = $sub1; $2 = $a32$addr; $3 = $a_headrm; $shl = $2 << $3; $a32_nrm = $shl; $4 = $b32$addr; $cmp2 = ($4|0)>(0); $5 = $b32$addr; $sub5 = (0 - ($5))|0; $cond7 = $cmp2 ? $5 : $sub5; $call8 = (_silk_CLZ32_428($cond7)|0); $sub9 = (($call8) - 1)|0; $b_headrm = $sub9; $6 = $b32$addr; $7 = $b_headrm; $shl10 = $6 << $7; $b32_nrm = $shl10; $8 = $b32_nrm; $shr = $8 >> 16; $div = (536870911 / ($shr|0))&-1; $b32_inv = $div; $9 = $a32_nrm; $shr11 = $9 >> 16; $10 = $b32_inv; $conv = $10&65535; $conv12 = $conv << 16 >> 16; $mul = Math_imul($shr11, $conv12)|0; $11 = $a32_nrm; $and = $11 & 65535; $12 = $b32_inv; $conv13 = $12&65535; $conv14 = $conv13 << 16 >> 16; $mul15 = Math_imul($and, $conv14)|0; $shr16 = $mul15 >> 16; $add = (($mul) + ($shr16))|0; $result = $add; $13 = $a32_nrm; $14 = $b32_nrm; $15 = ($14|0)<(0); $16 = $15 << 31 >> 31; $17 = $result; $18 = ($17|0)<(0); $19 = $18 << 31 >> 31; $20 = (___muldi3(($14|0),($16|0),($17|0),($19|0))|0); $21 = tempRet0; $22 = (_bitshift64Ashr(($20|0),($21|0),32)|0); $23 = tempRet0; $shl22 = $22 << 3; $sub23 = (($13) - ($shl22))|0; $a32_nrm = $sub23; $24 = $result; $25 = $a32_nrm; $shr24 = $25 >> 16; $26 = $b32_inv; $conv25 = $26&65535; $conv26 = $conv25 << 16 >> 16; $mul27 = Math_imul($shr24, $conv26)|0; $27 = $a32_nrm; $and28 = $27 & 65535; $28 = $b32_inv; $conv29 = $28&65535; $conv30 = $conv29 << 16 >> 16; $mul31 = Math_imul($and28, $conv30)|0; $shr32 = $mul31 >> 16; $add33 = (($mul27) + ($shr32))|0; $add34 = (($24) + ($add33))|0; $result = $add34; $29 = $a_headrm; $add35 = (29 + ($29))|0; $30 = $b_headrm; $sub36 = (($add35) - ($30))|0; $31 = $Qres$addr; $sub37 = (($sub36) - ($31))|0; $lshift = $sub37; $32 = $lshift; $cmp38 = ($32|0)<(0); $33 = $lshift; if (!($cmp38)) { $cmp92 = ($33|0)<(32); if ($cmp92) { $48 = $result; $49 = $lshift; $shr95 = $48 >> $49; $retval = $shr95; $50 = $retval; STACKTOP = sp;return ($50|0); } else { $retval = 0; $50 = $retval; STACKTOP = sp;return ($50|0); } } $sub40 = (0 - ($33))|0; $shr41 = -2147483648 >> $sub40; $34 = $lshift; $sub42 = (0 - ($34))|0; $shr43 = 2147483647 >> $sub42; $cmp44 = ($shr41|0)>($shr43|0); $35 = $result; $36 = $lshift; $sub47 = (0 - ($36))|0; do { if ($cmp44) { $shr48 = -2147483648 >> $sub47; $cmp49 = ($35|0)>($shr48|0); if ($cmp49) { $37 = $lshift; $sub52 = (0 - ($37))|0; $shr53 = -2147483648 >> $sub52; $cond89 = $shr53; break; } $38 = $result; $39 = $lshift; $sub55 = (0 - ($39))|0; $shr56 = 2147483647 >> $sub55; $cmp57 = ($38|0)<($shr56|0); if ($cmp57) { $40 = $lshift; $sub60 = (0 - ($40))|0; $shr61 = 2147483647 >> $sub60; $cond89 = $shr61; break; } else { $41 = $result; $cond89 = $41; break; } } else { $shr69 = 2147483647 >> $sub47; $cmp70 = ($35|0)>($shr69|0); if ($cmp70) { $42 = $lshift; $sub73 = (0 - ($42))|0; $shr74 = 2147483647 >> $sub73; $cond89 = $shr74; break; } $43 = $result; $44 = $lshift; $sub76 = (0 - ($44))|0; $shr77 = -2147483648 >> $sub76; $cmp78 = ($43|0)<($shr77|0); if ($cmp78) { $45 = $lshift; $sub81 = (0 - ($45))|0; $shr82 = -2147483648 >> $sub81; $cond89 = $shr82; break; } else { $46 = $result; $cond89 = $46; break; } } } while(0); $47 = $lshift; $sub90 = (0 - ($47))|0; $shl91 = $cond89 << $sub90; $retval = $shl91; $50 = $retval; STACKTOP = sp;return ($50|0); } function _silk_CLZ32_428($in32) { $in32 = $in32|0; var $0 = 0, $1 = 0, $2 = 0, $cond = 0, $in32$addr = 0, $sub = 0, $sub1 = 0, $tobool = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $in32$addr = $in32; $0 = $in32$addr; $tobool = ($0|0)!=(0); if (!($tobool)) { $cond = 32; STACKTOP = sp;return ($cond|0); } $1 = $in32$addr; $2 = (Math_clz32(($1|0))|0); $sub = (32 - ($2))|0; $sub1 = (32 - ($sub))|0; $cond = $sub1; STACKTOP = sp;return ($cond|0); } function _silk_PLC_Reset($psDec) { $psDec = $psDec|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $arrayidx4 = 0, $frame_length = 0, $nb_subfr = 0, $prevGain_Q16 = 0, $prevGain_Q163 = 0, $psDec$addr = 0, $sPLC = 0, $sPLC1 = 0, $sPLC2 = 0, $sPLC5 = 0, $sPLC6 = 0, $shl = 0, $subfr_length = 0; var label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $psDec$addr = $psDec; $0 = $psDec$addr; $frame_length = ((($0)) + 2328|0); $1 = HEAP32[$frame_length>>2]|0; $shl = $1 << 7; $2 = $psDec$addr; $sPLC = ((($2)) + 4172|0); HEAP32[$sPLC>>2] = $shl; $3 = $psDec$addr; $sPLC1 = ((($3)) + 4172|0); $prevGain_Q16 = ((($sPLC1)) + 72|0); HEAP32[$prevGain_Q16>>2] = 65536; $4 = $psDec$addr; $sPLC2 = ((($4)) + 4172|0); $prevGain_Q163 = ((($sPLC2)) + 72|0); $arrayidx4 = ((($prevGain_Q163)) + 4|0); HEAP32[$arrayidx4>>2] = 65536; $5 = $psDec$addr; $sPLC5 = ((($5)) + 4172|0); $subfr_length = ((($sPLC5)) + 88|0); HEAP32[$subfr_length>>2] = 20; $6 = $psDec$addr; $sPLC6 = ((($6)) + 4172|0); $nb_subfr = ((($sPLC6)) + 84|0); HEAP32[$nb_subfr>>2] = 2; STACKTOP = sp;return; } function _silk_PLC($psDec,$psDecCtrl,$frame,$lost,$arch) { $psDec = $psDec|0; $psDecCtrl = $psDecCtrl|0; $frame = $frame|0; $lost = $lost|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $arch$addr = 0, $cmp = 0, $frame$addr = 0, $fs_kHz = 0, $fs_kHz1 = 0; var $fs_kHz2 = 0, $fs_kHz4 = 0, $inc = 0, $lossCnt = 0, $lost$addr = 0, $psDec$addr = 0, $psDecCtrl$addr = 0, $sPLC = 0, $sPLC3 = 0, $tobool = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $psDec$addr = $psDec; $psDecCtrl$addr = $psDecCtrl; $frame$addr = $frame; $lost$addr = $lost; $arch$addr = $arch; $0 = $psDec$addr; $fs_kHz = ((($0)) + 2316|0); $1 = HEAP32[$fs_kHz>>2]|0; $2 = $psDec$addr; $sPLC = ((($2)) + 4172|0); $fs_kHz1 = ((($sPLC)) + 80|0); $3 = HEAP32[$fs_kHz1>>2]|0; $cmp = ($1|0)!=($3|0); if ($cmp) { $4 = $psDec$addr; _silk_PLC_Reset($4); $5 = $psDec$addr; $fs_kHz2 = ((($5)) + 2316|0); $6 = HEAP32[$fs_kHz2>>2]|0; $7 = $psDec$addr; $sPLC3 = ((($7)) + 4172|0); $fs_kHz4 = ((($sPLC3)) + 80|0); HEAP32[$fs_kHz4>>2] = $6; } $8 = $lost$addr; $tobool = ($8|0)!=(0); $9 = $psDec$addr; $10 = $psDecCtrl$addr; if ($tobool) { $11 = $frame$addr; $12 = $arch$addr; _silk_PLC_conceal($9,$10,$11,$12); $13 = $psDec$addr; $lossCnt = ((($13)) + 4160|0); $14 = HEAP32[$lossCnt>>2]|0; $inc = (($14) + 1)|0; HEAP32[$lossCnt>>2] = $inc; STACKTOP = sp;return; } else { _silk_PLC_update($9,$10); STACKTOP = sp;return; } } function _silk_PLC_conceal($psDec,$psDecCtrl,$frame,$arch) { $psDec = $psDec|0; $psDecCtrl = $psDecCtrl|0; $frame = $frame|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $48 = 0, $49 = 0, $5 = 0; var $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0; var $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0; var $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $A_Q12 = 0, $B_Q14 = 0, $LPC_order = 0, $LPC_order104 = 0, $LPC_order110 = 0, $LPC_order290 = 0; var $LPC_order463 = 0, $LPC_order47 = 0, $LPC_order73 = 0, $LPC_order96 = 0, $LPC_pred_Q10 = 0, $LTPCoef_Q14 = 0, $LTP_pred_Q12 = 0, $add = 0, $add111 = 0, $add126 = 0, $add137 = 0, $add155 = 0, $add156 = 0, $add168 = 0, $add169 = 0, $add181 = 0, $add182 = 0, $add194 = 0, $add195 = 0, $add207 = 0; var $add208 = 0, $add210 = 0, $add222 = 0, $add223 = 0, $add264 = 0, $add265 = 0, $add276 = 0, $add292 = 0, $add299 = 0, $add307 = 0, $add308 = 0, $add309 = 0, $add316 = 0, $add324 = 0, $add325 = 0, $add326 = 0, $add333 = 0, $add341 = 0, $add342 = 0, $add343 = 0; var $add350 = 0, $add358 = 0, $add359 = 0, $add360 = 0, $add367 = 0, $add375 = 0, $add376 = 0, $add377 = 0, $add384 = 0, $add392 = 0, $add393 = 0, $add394 = 0, $add401 = 0, $add409 = 0, $add410 = 0, $add411 = 0, $add418 = 0, $add426 = 0, $add427 = 0, $add428 = 0; var $add435 = 0, $add443 = 0, $add444 = 0, $add445 = 0, $add452 = 0, $add460 = 0, $add461 = 0, $add467 = 0, $add475 = 0, $add484 = 0, $add485 = 0, $add489 = 0, $add504 = 0, $add509 = 0, $add530 = 0, $add545 = 0, $add569 = 0, $add584 = 0, $add589 = 0, $add591 = 0; var $add598 = 0, $add606 = 0, $add607 = 0, $add611 = 0, $add614 = 0, $add616 = 0, $add622 = 0, $add629 = 0, $add637 = 0, $add638 = 0, $add642 = 0, $add645 = 0, $add647 = 0, $add653 = 0, $add660 = 0, $add668 = 0, $add669 = 0, $add673 = 0, $add676 = 0, $add678 = 0; var $add688 = 0, $add695 = 0, $add703 = 0, $add704 = 0, $add708 = 0, $add711 = 0, $add713 = 0, $add719 = 0, $add726 = 0, $add734 = 0, $add735 = 0, $add739 = 0, $add742 = 0, $add744 = 0, $add750 = 0, $add757 = 0, $add765 = 0, $add766 = 0, $add770 = 0, $add773 = 0; var $add775 = 0, $add785 = 0, $add792 = 0, $add800 = 0, $add801 = 0, $add805 = 0, $add808 = 0, $add810 = 0, $add816 = 0, $add823 = 0, $add831 = 0, $add832 = 0, $add836 = 0, $add839 = 0, $add841 = 0, $add847 = 0, $add85 = 0, $add854 = 0, $add862 = 0, $add863 = 0; var $add867 = 0, $add870 = 0, $add872 = 0, $add91 = 0, $and = 0, $and121 = 0, $and150 = 0, $and163 = 0, $and176 = 0, $and189 = 0, $and202 = 0, $and212 = 0, $and218 = 0, $and261 = 0, $and302 = 0, $and319 = 0, $and336 = 0, $and353 = 0, $and370 = 0, $and387 = 0; var $and404 = 0, $and421 = 0, $and438 = 0, $and455 = 0, $and479 = 0, $and505 = 0, $and524 = 0, $and525 = 0, $and564 = 0, $and600 = 0, $and631 = 0, $and662 = 0, $and697 = 0, $and728 = 0, $and759 = 0, $and794 = 0, $and825 = 0, $and856 = 0, $arch$addr = 0, $arrayidx100 = 0; var $arrayidx106 = 0, $arrayidx118 = 0, $arrayidx122 = 0, $arrayidx127 = 0, $arrayidx138 = 0, $arrayidx157 = 0, $arrayidx159 = 0, $arrayidx162 = 0, $arrayidx164 = 0, $arrayidx17 = 0, $arrayidx170 = 0, $arrayidx172 = 0, $arrayidx175 = 0, $arrayidx177 = 0, $arrayidx183 = 0, $arrayidx185 = 0, $arrayidx188 = 0, $arrayidx190 = 0, $arrayidx196 = 0, $arrayidx198 = 0; var $arrayidx201 = 0, $arrayidx203 = 0, $arrayidx213 = 0, $arrayidx217 = 0, $arrayidx225 = 0, $arrayidx236 = 0, $arrayidx24 = 0, $arrayidx241 = 0, $arrayidx28 = 0, $arrayidx283 = 0, $arrayidx294 = 0, $arrayidx301 = 0, $arrayidx311 = 0, $arrayidx313 = 0, $arrayidx318 = 0, $arrayidx320 = 0, $arrayidx328 = 0, $arrayidx330 = 0, $arrayidx335 = 0, $arrayidx337 = 0; var $arrayidx34 = 0, $arrayidx345 = 0, $arrayidx347 = 0, $arrayidx352 = 0, $arrayidx354 = 0, $arrayidx362 = 0, $arrayidx364 = 0, $arrayidx369 = 0, $arrayidx371 = 0, $arrayidx379 = 0, $arrayidx381 = 0, $arrayidx386 = 0, $arrayidx388 = 0, $arrayidx39 = 0, $arrayidx396 = 0, $arrayidx398 = 0, $arrayidx403 = 0, $arrayidx405 = 0, $arrayidx413 = 0, $arrayidx415 = 0; var $arrayidx420 = 0, $arrayidx422 = 0, $arrayidx430 = 0, $arrayidx432 = 0, $arrayidx437 = 0, $arrayidx439 = 0, $arrayidx447 = 0, $arrayidx449 = 0, $arrayidx454 = 0, $arrayidx456 = 0, $arrayidx470 = 0, $arrayidx472 = 0, $arrayidx478 = 0, $arrayidx480 = 0, $arrayidx490 = 0, $arrayidx5 = 0, $arrayidx510 = 0, $arrayidx531 = 0, $arrayidx570 = 0, $arrayidx59 = 0; var $arrayidx590 = 0, $arrayidx592 = 0, $arrayidx594 = 0, $arrayidx599 = 0, $arrayidx601 = 0, $arrayidx608 = 0, $arrayidx609 = 0, $arrayidx623 = 0, $arrayidx625 = 0, $arrayidx630 = 0, $arrayidx632 = 0, $arrayidx639 = 0, $arrayidx640 = 0, $arrayidx654 = 0, $arrayidx656 = 0, $arrayidx661 = 0, $arrayidx663 = 0, $arrayidx670 = 0, $arrayidx671 = 0, $arrayidx689 = 0; var $arrayidx691 = 0, $arrayidx696 = 0, $arrayidx698 = 0, $arrayidx7 = 0, $arrayidx705 = 0, $arrayidx706 = 0, $arrayidx720 = 0, $arrayidx722 = 0, $arrayidx727 = 0, $arrayidx729 = 0, $arrayidx736 = 0, $arrayidx737 = 0, $arrayidx751 = 0, $arrayidx753 = 0, $arrayidx758 = 0, $arrayidx760 = 0, $arrayidx767 = 0, $arrayidx768 = 0, $arrayidx786 = 0, $arrayidx788 = 0; var $arrayidx793 = 0, $arrayidx795 = 0, $arrayidx802 = 0, $arrayidx803 = 0, $arrayidx817 = 0, $arrayidx819 = 0, $arrayidx824 = 0, $arrayidx826 = 0, $arrayidx833 = 0, $arrayidx834 = 0, $arrayidx848 = 0, $arrayidx850 = 0, $arrayidx855 = 0, $arrayidx857 = 0, $arrayidx864 = 0, $arrayidx865 = 0, $arrayidx883 = 0, $arrayidx890 = 0, $arrayidx897 = 0, $arrayidx99 = 0; var $call = 0, $call107 = 0, $call23 = 0, $call27 = 0, $call272 = 0, $call33 = 0, $call64 = 0, $call74 = 0, $call75 = 0, $call76 = 0, $cmp = 0, $cmp108 = 0, $cmp114 = 0, $cmp133 = 0, $cmp141 = 0, $cmp231 = 0, $cmp246 = 0, $cmp287 = 0, $cmp29 = 0, $cmp464 = 0; var $cmp491 = 0, $cmp495 = 0, $cmp50 = 0, $cmp506 = 0, $cmp511 = 0, $cmp515 = 0, $cmp526 = 0, $cmp532 = 0, $cmp536 = 0, $cmp54 = 0, $cmp555 = 0, $cmp565 = 0, $cmp57 = 0, $cmp571 = 0, $cmp575 = 0, $cmp618 = 0, $cmp649 = 0, $cmp684 = 0, $cmp715 = 0, $cmp746 = 0; var $cmp781 = 0, $cmp812 = 0, $cmp843 = 0, $cmp894 = 0, $cond = 0, $cond500 = 0, $cond502 = 0, $cond520 = 0, $cond522 = 0, $cond541 = 0, $cond543 = 0, $cond560 = 0, $cond562 = 0, $cond580 = 0, $cond582 = 0, $cond588 = 0, $cond683 = 0, $cond780 = 0, $cond881 = 0, $conv = 0; var $conv119 = 0, $conv123 = 0, $conv147 = 0, $conv152 = 0, $conv160 = 0, $conv165 = 0, $conv173 = 0, $conv178 = 0, $conv186 = 0, $conv191 = 0, $conv199 = 0, $conv204 = 0, $conv215 = 0, $conv219 = 0, $conv234 = 0, $conv235 = 0, $conv237 = 0, $conv240 = 0, $conv245 = 0, $conv249 = 0; var $conv250 = 0, $conv251 = 0, $conv254 = 0, $conv268 = 0, $conv269 = 0, $conv297 = 0, $conv304 = 0, $conv314 = 0, $conv321 = 0, $conv331 = 0, $conv338 = 0, $conv348 = 0, $conv35 = 0, $conv355 = 0, $conv365 = 0, $conv372 = 0, $conv382 = 0, $conv389 = 0, $conv399 = 0, $conv40 = 0; var $conv406 = 0, $conv416 = 0, $conv423 = 0, $conv433 = 0, $conv440 = 0, $conv450 = 0, $conv457 = 0, $conv473 = 0, $conv481 = 0, $conv595 = 0, $conv596 = 0, $conv60 = 0, $conv602 = 0, $conv603 = 0, $conv61 = 0, $conv626 = 0, $conv627 = 0, $conv63 = 0, $conv633 = 0, $conv634 = 0; var $conv65 = 0, $conv657 = 0, $conv658 = 0, $conv66 = 0, $conv664 = 0, $conv665 = 0, $conv69 = 0, $conv692 = 0, $conv693 = 0, $conv699 = 0, $conv700 = 0, $conv723 = 0, $conv724 = 0, $conv730 = 0, $conv731 = 0, $conv754 = 0, $conv755 = 0, $conv761 = 0, $conv762 = 0, $conv78 = 0; var $conv789 = 0, $conv79 = 0, $conv790 = 0, $conv796 = 0, $conv797 = 0, $conv81 = 0, $conv82 = 0, $conv820 = 0, $conv821 = 0, $conv827 = 0, $conv828 = 0, $conv851 = 0, $conv852 = 0, $conv858 = 0, $conv859 = 0, $conv882 = 0, $down_scale_Q30 = 0, $energy1 = 0, $energy2 = 0, $exc_Q14 = 0; var $exc_Q1413 = 0, $first_frame_after_reset = 0, $frame$addr = 0, $frame_length = 0, $frame_length286 = 0, $frame_length889 = 0, $fs_kHz = 0, $harm_Gain_Q15 = 0, $i = 0, $idx = 0, $inc = 0, $inc129 = 0, $inc226 = 0, $inc228 = 0, $inc243 = 0, $inc279 = 0, $inc487 = 0, $inc885 = 0, $inc899 = 0, $incdec$ptr = 0; var $indices = 0, $invGain_Q30 = 0, $inv_gain_Q30 = 0, $j = 0, $k = 0, $lag = 0, $lossCnt = 0, $lossCnt32 = 0, $lossCnt49 = 0, $ltp_mem_length = 0, $ltp_mem_length1 = 0, $ltp_mem_length102 = 0, $ltp_mem_length113 = 0, $ltp_mem_length281 = 0, $ltp_mem_length93 = 0, $ltp_mem_length94 = 0, $mul = 0, $mul120 = 0, $mul124 = 0, $mul148 = 0; var $mul153 = 0, $mul161 = 0, $mul166 = 0, $mul174 = 0, $mul179 = 0, $mul187 = 0, $mul192 = 0, $mul200 = 0, $mul205 = 0, $mul209 = 0, $mul21 = 0, $mul216 = 0, $mul220 = 0, $mul238 = 0, $mul252 = 0, $mul259 = 0, $mul262 = 0, $mul270 = 0, $mul298 = 0, $mul305 = 0; var $mul315 = 0, $mul322 = 0, $mul332 = 0, $mul339 = 0, $mul349 = 0, $mul356 = 0, $mul366 = 0, $mul373 = 0, $mul383 = 0, $mul390 = 0, $mul400 = 0, $mul407 = 0, $mul417 = 0, $mul424 = 0, $mul434 = 0, $mul441 = 0, $mul451 = 0, $mul458 = 0, $mul474 = 0, $mul48 = 0; var $mul482 = 0, $mul597 = 0, $mul604 = 0, $mul613 = 0, $mul628 = 0, $mul635 = 0, $mul644 = 0, $mul659 = 0, $mul666 = 0, $mul67 = 0, $mul675 = 0, $mul694 = 0, $mul701 = 0, $mul710 = 0, $mul725 = 0, $mul732 = 0, $mul741 = 0, $mul756 = 0, $mul763 = 0, $mul772 = 0; var $mul791 = 0, $mul798 = 0, $mul80 = 0, $mul807 = 0, $mul822 = 0, $mul829 = 0, $mul83 = 0, $mul838 = 0, $mul853 = 0, $mul860 = 0, $mul869 = 0, $nb_subfr = 0, $nb_subfr132 = 0, $nb_subfr14 = 0, $or = 0, $outBuf = 0, $pred_lag_ptr = 0, $prevGain_Q10 = 0, $prevGain_Q16 = 0, $prevGain_Q16105 = 0; var $prevGain_Q164 = 0, $prevLPC_Q12 = 0, $prevLPC_Q1242 = 0, $prevLPC_Q1245 = 0, $prevLPC_Q1271 = 0, $prevLTP_scale_Q14 = 0, $prevSignalType = 0, $prevSignalType53 = 0, $psDec$addr = 0, $psDecCtrl$addr = 0, $psPLC = 0, $randScale_Q14 = 0, $randScale_Q14892 = 0, $rand_Gain_Q15 = 0, $rand_ptr = 0, $rand_scale_Q14 = 0, $rand_seed = 0, $rand_seed89 = 0, $rand_seed891 = 0, $sLPC_Q14_buf = 0; var $sLPC_Q14_buf887 = 0, $sLPC_Q14_ptr = 0, $sLTP_buf_idx = 0, $sPLC = 0, $saved_stack = 0, $shift1 = 0, $shift2 = 0, $shl = 0, $shl224 = 0, $shl271 = 0, $shl503 = 0, $shl523 = 0, $shl544 = 0, $shl563 = 0, $shl583 = 0, $shr = 0, $shr10 = 0, $shr11 = 0, $shr117 = 0, $shr125 = 0; var $shr145 = 0, $shr154 = 0, $shr158 = 0, $shr167 = 0, $shr171 = 0, $shr180 = 0, $shr184 = 0, $shr193 = 0, $shr197 = 0, $shr206 = 0, $shr211 = 0, $shr214 = 0, $shr221 = 0, $shr239 = 0, $shr253 = 0, $shr258 = 0, $shr263 = 0, $shr275 = 0, $shr277 = 0, $shr291 = 0; var $shr295 = 0, $shr306 = 0, $shr312 = 0, $shr323 = 0, $shr329 = 0, $shr340 = 0, $shr346 = 0, $shr357 = 0, $shr363 = 0, $shr374 = 0, $shr380 = 0, $shr391 = 0, $shr397 = 0, $shr408 = 0, $shr414 = 0, $shr425 = 0, $shr431 = 0, $shr442 = 0, $shr448 = 0, $shr459 = 0; var $shr471 = 0, $shr483 = 0, $shr593 = 0, $shr6 = 0, $shr605 = 0, $shr610 = 0, $shr612 = 0, $shr615 = 0, $shr617 = 0, $shr624 = 0, $shr636 = 0, $shr641 = 0, $shr643 = 0, $shr646 = 0, $shr648 = 0, $shr655 = 0, $shr667 = 0, $shr672 = 0, $shr674 = 0, $shr677 = 0; var $shr679 = 0, $shr68 = 0, $shr690 = 0, $shr702 = 0, $shr707 = 0, $shr709 = 0, $shr712 = 0, $shr714 = 0, $shr721 = 0, $shr733 = 0, $shr738 = 0, $shr740 = 0, $shr743 = 0, $shr745 = 0, $shr752 = 0, $shr764 = 0, $shr769 = 0, $shr77 = 0, $shr771 = 0, $shr774 = 0; var $shr776 = 0, $shr787 = 0, $shr799 = 0, $shr804 = 0, $shr806 = 0, $shr809 = 0, $shr811 = 0, $shr818 = 0, $shr830 = 0, $shr835 = 0, $shr837 = 0, $shr84 = 0, $shr840 = 0, $shr842 = 0, $shr849 = 0, $shr86 = 0, $shr861 = 0, $shr866 = 0, $shr868 = 0, $shr871 = 0; var $shr873 = 0, $shr90 = 0, $shr92 = 0, $signalType = 0, $sub = 0, $sub103 = 0, $sub136 = 0, $sub16 = 0, $sub22 = 0, $sub282 = 0, $sub293 = 0, $sub300 = 0, $sub310 = 0, $sub317 = 0, $sub327 = 0, $sub334 = 0, $sub344 = 0, $sub351 = 0, $sub361 = 0, $sub368 = 0; var $sub378 = 0, $sub385 = 0, $sub395 = 0, $sub402 = 0, $sub412 = 0, $sub419 = 0, $sub429 = 0, $sub436 = 0, $sub446 = 0, $sub453 = 0, $sub468 = 0, $sub469 = 0, $sub476 = 0, $sub477 = 0, $sub62 = 0, $sub95 = 0, $sub97 = 0, $sub98 = 0, $subfr_length = 0, $subfr_length140 = 0; var $subfr_length15 = 0, $subfr_length20 = 0, $tobool = 0, $vla = 0, $vla$alloca_mul = 0, $vla2 = 0, $vla2$alloca_mul = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; sp = STACKTOP; STACKTOP = STACKTOP + 176|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(176|0); $shift1 = sp + 80|0; $shift2 = sp + 76|0; $energy1 = sp + 56|0; $energy2 = sp + 52|0; $A_Q12 = sp + 128|0; $prevGain_Q10 = sp + 16|0; $psDec$addr = $psDec; $psDecCtrl$addr = $psDecCtrl; $frame$addr = $frame; $arch$addr = $arch; $0 = $psDec$addr; $sPLC = ((($0)) + 4172|0); $psPLC = $sPLC; $1 = $psDec$addr; $ltp_mem_length = ((($1)) + 2336|0); $2 = HEAP32[$ltp_mem_length>>2]|0; $3 = $psDec$addr; $frame_length = ((($3)) + 2328|0); $4 = HEAP32[$frame_length>>2]|0; $add = (($2) + ($4))|0; $5 = (_llvm_stacksave()|0); $saved_stack = $5; $vla$alloca_mul = $add<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $6 = $psDec$addr; $ltp_mem_length1 = ((($6)) + 2336|0); $7 = HEAP32[$ltp_mem_length1>>2]|0; $vla2$alloca_mul = $7<<1; $vla2 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla2$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla2$alloca_mul)|0)+15)&-16)|0);; $8 = $psPLC; $prevGain_Q16 = ((($8)) + 72|0); $9 = HEAP32[$prevGain_Q16>>2]|0; $shr = $9 >> 6; HEAP32[$prevGain_Q10>>2] = $shr; $10 = $psPLC; $prevGain_Q164 = ((($10)) + 72|0); $arrayidx5 = ((($prevGain_Q164)) + 4|0); $11 = HEAP32[$arrayidx5>>2]|0; $shr6 = $11 >> 6; $arrayidx7 = ((($prevGain_Q10)) + 4|0); HEAP32[$arrayidx7>>2] = $shr6; $12 = $psDec$addr; $first_frame_after_reset = ((($12)) + 2376|0); $13 = HEAP32[$first_frame_after_reset>>2]|0; $tobool = ($13|0)!=(0); if ($tobool) { $14 = $psPLC; $prevLPC_Q12 = ((($14)) + 14|0); dest=$prevLPC_Q12; stop=dest+32|0; do { HEAP16[dest>>1]=0|0; dest=dest+2|0; } while ((dest|0) < (stop|0)); } $15 = $psDec$addr; $exc_Q14 = ((($15)) + 4|0); $16 = $psDec$addr; $subfr_length = ((($16)) + 2332|0); $17 = HEAP32[$subfr_length>>2]|0; $18 = $psDec$addr; $nb_subfr = ((($18)) + 2324|0); $19 = HEAP32[$nb_subfr>>2]|0; _silk_PLC_energy($energy1,$shift1,$energy2,$shift2,$exc_Q14,$prevGain_Q10,$17,$19); $20 = HEAP32[$energy1>>2]|0; $21 = HEAP32[$shift2>>2]|0; $shr10 = $20 >> $21; $22 = HEAP32[$energy2>>2]|0; $23 = HEAP32[$shift1>>2]|0; $shr11 = $22 >> $23; $cmp = ($shr10|0)<($shr11|0); $24 = $psDec$addr; $exc_Q1413 = ((($24)) + 4|0); $25 = $psPLC; $nb_subfr14 = ((($25)) + 84|0); $26 = HEAP32[$nb_subfr14>>2]|0; if ($cmp) { $sub = (($26) - 1)|0; $27 = $psPLC; $subfr_length15 = ((($27)) + 88|0); $28 = HEAP32[$subfr_length15>>2]|0; $mul = Math_imul($sub, $28)|0; $sub16 = (($mul) - 128)|0; $call = (_silk_max_int_433(0,$sub16)|0); $arrayidx17 = (($exc_Q1413) + ($call<<2)|0); $rand_ptr = $arrayidx17; } else { $29 = $psPLC; $subfr_length20 = ((($29)) + 88|0); $30 = HEAP32[$subfr_length20>>2]|0; $mul21 = Math_imul($26, $30)|0; $sub22 = (($mul21) - 128)|0; $call23 = (_silk_max_int_433(0,$sub22)|0); $arrayidx24 = (($exc_Q1413) + ($call23<<2)|0); $rand_ptr = $arrayidx24; } $31 = $psPLC; $LTPCoef_Q14 = ((($31)) + 4|0); $B_Q14 = $LTPCoef_Q14; $32 = $psPLC; $randScale_Q14 = ((($32)) + 56|0); $33 = HEAP16[$randScale_Q14>>1]|0; $rand_scale_Q14 = $33; $34 = $psDec$addr; $lossCnt = ((($34)) + 4160|0); $35 = HEAP32[$lossCnt>>2]|0; $call27 = (_silk_min_int_434(1,$35)|0); $arrayidx28 = (23908 + ($call27<<1)|0); $36 = HEAP16[$arrayidx28>>1]|0; $conv = $36 << 16 >> 16; $harm_Gain_Q15 = $conv; $37 = $psDec$addr; $prevSignalType = ((($37)) + 4164|0); $38 = HEAP32[$prevSignalType>>2]|0; $cmp29 = ($38|0)==(2); $39 = $psDec$addr; $lossCnt32 = ((($39)) + 4160|0); $40 = HEAP32[$lossCnt32>>2]|0; $call33 = (_silk_min_int_434(1,$40)|0); if ($cmp29) { $arrayidx34 = (23912 + ($call33<<1)|0); $41 = HEAP16[$arrayidx34>>1]|0; $conv35 = $41 << 16 >> 16; $rand_Gain_Q15 = $conv35; } else { $arrayidx39 = (23916 + ($call33<<1)|0); $42 = HEAP16[$arrayidx39>>1]|0; $conv40 = $42 << 16 >> 16; $rand_Gain_Q15 = $conv40; } $43 = $psPLC; $prevLPC_Q1242 = ((($43)) + 14|0); $44 = $psDec$addr; $LPC_order = ((($44)) + 2340|0); $45 = HEAP32[$LPC_order>>2]|0; _silk_bwexpander($prevLPC_Q1242,$45,64881); $46 = $psPLC; $prevLPC_Q1245 = ((($46)) + 14|0); $47 = $psDec$addr; $LPC_order47 = ((($47)) + 2340|0); $48 = HEAP32[$LPC_order47>>2]|0; $mul48 = $48<<1; _memcpy(($A_Q12|0),($prevLPC_Q1245|0),($mul48|0))|0; $49 = $psDec$addr; $lossCnt49 = ((($49)) + 4160|0); $50 = HEAP32[$lossCnt49>>2]|0; $cmp50 = ($50|0)==(0); do { if ($cmp50) { $rand_scale_Q14 = 16384; $51 = $psDec$addr; $prevSignalType53 = ((($51)) + 4164|0); $52 = HEAP32[$prevSignalType53>>2]|0; $cmp54 = ($52|0)==(2); if (!($cmp54)) { $63 = $psPLC; $prevLPC_Q1271 = ((($63)) + 14|0); $64 = $psDec$addr; $LPC_order73 = ((($64)) + 2340|0); $65 = HEAP32[$LPC_order73>>2]|0; $call74 = (_silk_LPC_inverse_pred_gain_c($prevLPC_Q1271,$65)|0); $invGain_Q30 = $call74; $66 = $invGain_Q30; $call75 = (_silk_min_32_435(134217728,$66)|0); $down_scale_Q30 = $call75; $67 = $down_scale_Q30; $call76 = (_silk_max_32(4194304,$67)|0); $down_scale_Q30 = $call76; $68 = $down_scale_Q30; $shl = $68 << 3; $down_scale_Q30 = $shl; $69 = $down_scale_Q30; $shr77 = $69 >> 16; $70 = $rand_Gain_Q15; $conv78 = $70&65535; $conv79 = $conv78 << 16 >> 16; $mul80 = Math_imul($shr77, $conv79)|0; $71 = $down_scale_Q30; $and = $71 & 65535; $72 = $rand_Gain_Q15; $conv81 = $72&65535; $conv82 = $conv81 << 16 >> 16; $mul83 = Math_imul($and, $conv82)|0; $shr84 = $mul83 >> 16; $add85 = (($mul80) + ($shr84))|0; $shr86 = $add85 >> 14; $rand_Gain_Q15 = $shr86; break; } $i = 0; while(1) { $53 = $i; $cmp57 = ($53|0)<(5); if (!($cmp57)) { break; } $54 = $B_Q14; $55 = $i; $arrayidx59 = (($54) + ($55<<1)|0); $56 = HEAP16[$arrayidx59>>1]|0; $conv60 = $56 << 16 >> 16; $57 = $rand_scale_Q14; $conv61 = $57 << 16 >> 16; $sub62 = (($conv61) - ($conv60))|0; $conv63 = $sub62&65535; $rand_scale_Q14 = $conv63; $58 = $i; $inc = (($58) + 1)|0; $i = $inc; } $59 = $rand_scale_Q14; $call64 = (_silk_max_16(3277,$59)|0); $rand_scale_Q14 = $call64; $60 = $rand_scale_Q14; $conv65 = $60 << 16 >> 16; $61 = $psPLC; $prevLTP_scale_Q14 = ((($61)) + 68|0); $62 = HEAP16[$prevLTP_scale_Q14>>1]|0; $conv66 = $62 << 16 >> 16; $mul67 = Math_imul($conv65, $conv66)|0; $shr68 = $mul67 >> 14; $conv69 = $shr68&65535; $rand_scale_Q14 = $conv69; } } while(0); $73 = $psPLC; $rand_seed89 = ((($73)) + 52|0); $74 = HEAP32[$rand_seed89>>2]|0; $rand_seed = $74; $75 = $psPLC; $76 = HEAP32[$75>>2]|0; $shr90 = $76 >> 7; $add91 = (($shr90) + 1)|0; $shr92 = $add91 >> 1; $lag = $shr92; $77 = $psDec$addr; $ltp_mem_length93 = ((($77)) + 2336|0); $78 = HEAP32[$ltp_mem_length93>>2]|0; $sLTP_buf_idx = $78; $79 = $psDec$addr; $ltp_mem_length94 = ((($79)) + 2336|0); $80 = HEAP32[$ltp_mem_length94>>2]|0; $81 = $lag; $sub95 = (($80) - ($81))|0; $82 = $psDec$addr; $LPC_order96 = ((($82)) + 2340|0); $83 = HEAP32[$LPC_order96>>2]|0; $sub97 = (($sub95) - ($83))|0; $sub98 = (($sub97) - 2)|0; $idx = $sub98; $84 = $idx; $arrayidx99 = (($vla2) + ($84<<1)|0); $85 = $psDec$addr; $outBuf = ((($85)) + 1348|0); $86 = $idx; $arrayidx100 = (($outBuf) + ($86<<1)|0); $87 = $psDec$addr; $ltp_mem_length102 = ((($87)) + 2336|0); $88 = HEAP32[$ltp_mem_length102>>2]|0; $89 = $idx; $sub103 = (($88) - ($89))|0; $90 = $psDec$addr; $LPC_order104 = ((($90)) + 2340|0); $91 = HEAP32[$LPC_order104>>2]|0; $92 = $arch$addr; _silk_LPC_analysis_filter($arrayidx99,$arrayidx100,$A_Q12,$sub103,$91,$92); $93 = $psPLC; $prevGain_Q16105 = ((($93)) + 72|0); $arrayidx106 = ((($prevGain_Q16105)) + 4|0); $94 = HEAP32[$arrayidx106>>2]|0; $call107 = (_silk_INVERSE32_varQ_436($94,46)|0); $inv_gain_Q30 = $call107; $95 = $inv_gain_Q30; $cmp108 = ($95|0)<(1073741823); $96 = $inv_gain_Q30; $cond = $cmp108 ? $96 : 1073741823; $inv_gain_Q30 = $cond; $97 = $idx; $98 = $psDec$addr; $LPC_order110 = ((($98)) + 2340|0); $99 = HEAP32[$LPC_order110>>2]|0; $add111 = (($97) + ($99))|0; $i = $add111; while(1) { $100 = $i; $101 = $psDec$addr; $ltp_mem_length113 = ((($101)) + 2336|0); $102 = HEAP32[$ltp_mem_length113>>2]|0; $cmp114 = ($100|0)<($102|0); if (!($cmp114)) { break; } $103 = $inv_gain_Q30; $shr117 = $103 >> 16; $104 = $i; $arrayidx118 = (($vla2) + ($104<<1)|0); $105 = HEAP16[$arrayidx118>>1]|0; $conv119 = $105 << 16 >> 16; $mul120 = Math_imul($shr117, $conv119)|0; $106 = $inv_gain_Q30; $and121 = $106 & 65535; $107 = $i; $arrayidx122 = (($vla2) + ($107<<1)|0); $108 = HEAP16[$arrayidx122>>1]|0; $conv123 = $108 << 16 >> 16; $mul124 = Math_imul($and121, $conv123)|0; $shr125 = $mul124 >> 16; $add126 = (($mul120) + ($shr125))|0; $109 = $i; $arrayidx127 = (($vla) + ($109<<2)|0); HEAP32[$arrayidx127>>2] = $add126; $110 = $i; $inc129 = (($110) + 1)|0; $i = $inc129; } $k = 0; while(1) { $111 = $k; $112 = $psDec$addr; $nb_subfr132 = ((($112)) + 2324|0); $113 = HEAP32[$nb_subfr132>>2]|0; $cmp133 = ($111|0)<($113|0); if (!($cmp133)) { break; } $114 = $sLTP_buf_idx; $115 = $lag; $sub136 = (($114) - ($115))|0; $add137 = (($sub136) + 2)|0; $arrayidx138 = (($vla) + ($add137<<2)|0); $pred_lag_ptr = $arrayidx138; $i = 0; while(1) { $116 = $i; $117 = $psDec$addr; $subfr_length140 = ((($117)) + 2332|0); $118 = HEAP32[$subfr_length140>>2]|0; $cmp141 = ($116|0)<($118|0); if (!($cmp141)) { break; } $LTP_pred_Q12 = 2; $119 = $LTP_pred_Q12; $120 = $pred_lag_ptr; $121 = HEAP32[$120>>2]|0; $shr145 = $121 >> 16; $122 = $B_Q14; $123 = HEAP16[$122>>1]|0; $conv147 = $123 << 16 >> 16; $mul148 = Math_imul($shr145, $conv147)|0; $124 = $pred_lag_ptr; $125 = HEAP32[$124>>2]|0; $and150 = $125 & 65535; $126 = $B_Q14; $127 = HEAP16[$126>>1]|0; $conv152 = $127 << 16 >> 16; $mul153 = Math_imul($and150, $conv152)|0; $shr154 = $mul153 >> 16; $add155 = (($mul148) + ($shr154))|0; $add156 = (($119) + ($add155))|0; $LTP_pred_Q12 = $add156; $128 = $LTP_pred_Q12; $129 = $pred_lag_ptr; $arrayidx157 = ((($129)) + -4|0); $130 = HEAP32[$arrayidx157>>2]|0; $shr158 = $130 >> 16; $131 = $B_Q14; $arrayidx159 = ((($131)) + 2|0); $132 = HEAP16[$arrayidx159>>1]|0; $conv160 = $132 << 16 >> 16; $mul161 = Math_imul($shr158, $conv160)|0; $133 = $pred_lag_ptr; $arrayidx162 = ((($133)) + -4|0); $134 = HEAP32[$arrayidx162>>2]|0; $and163 = $134 & 65535; $135 = $B_Q14; $arrayidx164 = ((($135)) + 2|0); $136 = HEAP16[$arrayidx164>>1]|0; $conv165 = $136 << 16 >> 16; $mul166 = Math_imul($and163, $conv165)|0; $shr167 = $mul166 >> 16; $add168 = (($mul161) + ($shr167))|0; $add169 = (($128) + ($add168))|0; $LTP_pred_Q12 = $add169; $137 = $LTP_pred_Q12; $138 = $pred_lag_ptr; $arrayidx170 = ((($138)) + -8|0); $139 = HEAP32[$arrayidx170>>2]|0; $shr171 = $139 >> 16; $140 = $B_Q14; $arrayidx172 = ((($140)) + 4|0); $141 = HEAP16[$arrayidx172>>1]|0; $conv173 = $141 << 16 >> 16; $mul174 = Math_imul($shr171, $conv173)|0; $142 = $pred_lag_ptr; $arrayidx175 = ((($142)) + -8|0); $143 = HEAP32[$arrayidx175>>2]|0; $and176 = $143 & 65535; $144 = $B_Q14; $arrayidx177 = ((($144)) + 4|0); $145 = HEAP16[$arrayidx177>>1]|0; $conv178 = $145 << 16 >> 16; $mul179 = Math_imul($and176, $conv178)|0; $shr180 = $mul179 >> 16; $add181 = (($mul174) + ($shr180))|0; $add182 = (($137) + ($add181))|0; $LTP_pred_Q12 = $add182; $146 = $LTP_pred_Q12; $147 = $pred_lag_ptr; $arrayidx183 = ((($147)) + -12|0); $148 = HEAP32[$arrayidx183>>2]|0; $shr184 = $148 >> 16; $149 = $B_Q14; $arrayidx185 = ((($149)) + 6|0); $150 = HEAP16[$arrayidx185>>1]|0; $conv186 = $150 << 16 >> 16; $mul187 = Math_imul($shr184, $conv186)|0; $151 = $pred_lag_ptr; $arrayidx188 = ((($151)) + -12|0); $152 = HEAP32[$arrayidx188>>2]|0; $and189 = $152 & 65535; $153 = $B_Q14; $arrayidx190 = ((($153)) + 6|0); $154 = HEAP16[$arrayidx190>>1]|0; $conv191 = $154 << 16 >> 16; $mul192 = Math_imul($and189, $conv191)|0; $shr193 = $mul192 >> 16; $add194 = (($mul187) + ($shr193))|0; $add195 = (($146) + ($add194))|0; $LTP_pred_Q12 = $add195; $155 = $LTP_pred_Q12; $156 = $pred_lag_ptr; $arrayidx196 = ((($156)) + -16|0); $157 = HEAP32[$arrayidx196>>2]|0; $shr197 = $157 >> 16; $158 = $B_Q14; $arrayidx198 = ((($158)) + 8|0); $159 = HEAP16[$arrayidx198>>1]|0; $conv199 = $159 << 16 >> 16; $mul200 = Math_imul($shr197, $conv199)|0; $160 = $pred_lag_ptr; $arrayidx201 = ((($160)) + -16|0); $161 = HEAP32[$arrayidx201>>2]|0; $and202 = $161 & 65535; $162 = $B_Q14; $arrayidx203 = ((($162)) + 8|0); $163 = HEAP16[$arrayidx203>>1]|0; $conv204 = $163 << 16 >> 16; $mul205 = Math_imul($and202, $conv204)|0; $shr206 = $mul205 >> 16; $add207 = (($mul200) + ($shr206))|0; $add208 = (($155) + ($add207))|0; $LTP_pred_Q12 = $add208; $164 = $pred_lag_ptr; $incdec$ptr = ((($164)) + 4|0); $pred_lag_ptr = $incdec$ptr; $165 = $rand_seed; $mul209 = Math_imul($165, 196314165)|0; $add210 = (907633515 + ($mul209))|0; $rand_seed = $add210; $166 = $rand_seed; $shr211 = $166 >> 25; $and212 = $shr211 & 127; $idx = $and212; $167 = $LTP_pred_Q12; $168 = $rand_ptr; $169 = $idx; $arrayidx213 = (($168) + ($169<<2)|0); $170 = HEAP32[$arrayidx213>>2]|0; $shr214 = $170 >> 16; $171 = $rand_scale_Q14; $conv215 = $171 << 16 >> 16; $mul216 = Math_imul($shr214, $conv215)|0; $172 = $rand_ptr; $173 = $idx; $arrayidx217 = (($172) + ($173<<2)|0); $174 = HEAP32[$arrayidx217>>2]|0; $and218 = $174 & 65535; $175 = $rand_scale_Q14; $conv219 = $175 << 16 >> 16; $mul220 = Math_imul($and218, $conv219)|0; $shr221 = $mul220 >> 16; $add222 = (($mul216) + ($shr221))|0; $add223 = (($167) + ($add222))|0; $shl224 = $add223 << 2; $176 = $sLTP_buf_idx; $arrayidx225 = (($vla) + ($176<<2)|0); HEAP32[$arrayidx225>>2] = $shl224; $177 = $sLTP_buf_idx; $inc226 = (($177) + 1)|0; $sLTP_buf_idx = $inc226; $178 = $i; $inc228 = (($178) + 1)|0; $i = $inc228; } $j = 0; while(1) { $179 = $j; $cmp231 = ($179|0)<(5); if (!($cmp231)) { break; } $180 = $harm_Gain_Q15; $conv234 = $180&65535; $conv235 = $conv234 << 16 >> 16; $181 = $B_Q14; $182 = $j; $arrayidx236 = (($181) + ($182<<1)|0); $183 = HEAP16[$arrayidx236>>1]|0; $conv237 = $183 << 16 >> 16; $mul238 = Math_imul($conv235, $conv237)|0; $shr239 = $mul238 >> 15; $conv240 = $shr239&65535; $184 = $B_Q14; $185 = $j; $arrayidx241 = (($184) + ($185<<1)|0); HEAP16[$arrayidx241>>1] = $conv240; $186 = $j; $inc243 = (($186) + 1)|0; $j = $inc243; } $187 = $psDec$addr; $indices = ((($187)) + 2736|0); $signalType = ((($indices)) + 29|0); $188 = HEAP8[$signalType>>0]|0; $conv245 = $188 << 24 >> 24; $cmp246 = ($conv245|0)!=(0); if ($cmp246) { $189 = $rand_scale_Q14; $conv249 = $189 << 16 >> 16; $190 = $rand_Gain_Q15; $conv250 = $190&65535; $conv251 = $conv250 << 16 >> 16; $mul252 = Math_imul($conv249, $conv251)|0; $shr253 = $mul252 >> 15; $conv254 = $shr253&65535; $rand_scale_Q14 = $conv254; } $191 = $psPLC; $192 = HEAP32[$191>>2]|0; $193 = $psPLC; $194 = HEAP32[$193>>2]|0; $shr258 = $194 >> 16; $mul259 = ($shr258*655)|0; $195 = $psPLC; $196 = HEAP32[$195>>2]|0; $and261 = $196 & 65535; $mul262 = ($and261*655)|0; $shr263 = $mul262 >> 16; $add264 = (($mul259) + ($shr263))|0; $add265 = (($192) + ($add264))|0; $197 = $psPLC; HEAP32[$197>>2] = $add265; $198 = $psPLC; $199 = HEAP32[$198>>2]|0; $200 = $psDec$addr; $fs_kHz = ((($200)) + 2316|0); $201 = HEAP32[$fs_kHz>>2]|0; $conv268 = $201&65535; $conv269 = $conv268 << 16 >> 16; $mul270 = ($conv269*18)|0; $shl271 = $mul270 << 8; $call272 = (_silk_min_32_435($199,$shl271)|0); $202 = $psPLC; HEAP32[$202>>2] = $call272; $203 = $psPLC; $204 = HEAP32[$203>>2]|0; $shr275 = $204 >> 7; $add276 = (($shr275) + 1)|0; $shr277 = $add276 >> 1; $lag = $shr277; $205 = $k; $inc279 = (($205) + 1)|0; $k = $inc279; } $206 = $psDec$addr; $ltp_mem_length281 = ((($206)) + 2336|0); $207 = HEAP32[$ltp_mem_length281>>2]|0; $sub282 = (($207) - 16)|0; $arrayidx283 = (($vla) + ($sub282<<2)|0); $sLPC_Q14_ptr = $arrayidx283; $208 = $sLPC_Q14_ptr; $209 = $psDec$addr; $sLPC_Q14_buf = ((($209)) + 1284|0); dest=$208; src=$sLPC_Q14_buf; stop=dest+64|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); $i = 0; while(1) { $210 = $i; $211 = $psDec$addr; $frame_length286 = ((($211)) + 2328|0); $212 = HEAP32[$frame_length286>>2]|0; $cmp287 = ($210|0)<($212|0); $213 = $psDec$addr; if (!($cmp287)) { break; } $LPC_order290 = ((($213)) + 2340|0); $214 = HEAP32[$LPC_order290>>2]|0; $shr291 = $214 >> 1; $LPC_pred_Q10 = $shr291; $215 = $LPC_pred_Q10; $216 = $sLPC_Q14_ptr; $217 = $i; $add292 = (16 + ($217))|0; $sub293 = (($add292) - 1)|0; $arrayidx294 = (($216) + ($sub293<<2)|0); $218 = HEAP32[$arrayidx294>>2]|0; $shr295 = $218 >> 16; $219 = HEAP16[$A_Q12>>1]|0; $conv297 = $219 << 16 >> 16; $mul298 = Math_imul($shr295, $conv297)|0; $220 = $sLPC_Q14_ptr; $221 = $i; $add299 = (16 + ($221))|0; $sub300 = (($add299) - 1)|0; $arrayidx301 = (($220) + ($sub300<<2)|0); $222 = HEAP32[$arrayidx301>>2]|0; $and302 = $222 & 65535; $223 = HEAP16[$A_Q12>>1]|0; $conv304 = $223 << 16 >> 16; $mul305 = Math_imul($and302, $conv304)|0; $shr306 = $mul305 >> 16; $add307 = (($mul298) + ($shr306))|0; $add308 = (($215) + ($add307))|0; $LPC_pred_Q10 = $add308; $224 = $LPC_pred_Q10; $225 = $sLPC_Q14_ptr; $226 = $i; $add309 = (16 + ($226))|0; $sub310 = (($add309) - 2)|0; $arrayidx311 = (($225) + ($sub310<<2)|0); $227 = HEAP32[$arrayidx311>>2]|0; $shr312 = $227 >> 16; $arrayidx313 = ((($A_Q12)) + 2|0); $228 = HEAP16[$arrayidx313>>1]|0; $conv314 = $228 << 16 >> 16; $mul315 = Math_imul($shr312, $conv314)|0; $229 = $sLPC_Q14_ptr; $230 = $i; $add316 = (16 + ($230))|0; $sub317 = (($add316) - 2)|0; $arrayidx318 = (($229) + ($sub317<<2)|0); $231 = HEAP32[$arrayidx318>>2]|0; $and319 = $231 & 65535; $arrayidx320 = ((($A_Q12)) + 2|0); $232 = HEAP16[$arrayidx320>>1]|0; $conv321 = $232 << 16 >> 16; $mul322 = Math_imul($and319, $conv321)|0; $shr323 = $mul322 >> 16; $add324 = (($mul315) + ($shr323))|0; $add325 = (($224) + ($add324))|0; $LPC_pred_Q10 = $add325; $233 = $LPC_pred_Q10; $234 = $sLPC_Q14_ptr; $235 = $i; $add326 = (16 + ($235))|0; $sub327 = (($add326) - 3)|0; $arrayidx328 = (($234) + ($sub327<<2)|0); $236 = HEAP32[$arrayidx328>>2]|0; $shr329 = $236 >> 16; $arrayidx330 = ((($A_Q12)) + 4|0); $237 = HEAP16[$arrayidx330>>1]|0; $conv331 = $237 << 16 >> 16; $mul332 = Math_imul($shr329, $conv331)|0; $238 = $sLPC_Q14_ptr; $239 = $i; $add333 = (16 + ($239))|0; $sub334 = (($add333) - 3)|0; $arrayidx335 = (($238) + ($sub334<<2)|0); $240 = HEAP32[$arrayidx335>>2]|0; $and336 = $240 & 65535; $arrayidx337 = ((($A_Q12)) + 4|0); $241 = HEAP16[$arrayidx337>>1]|0; $conv338 = $241 << 16 >> 16; $mul339 = Math_imul($and336, $conv338)|0; $shr340 = $mul339 >> 16; $add341 = (($mul332) + ($shr340))|0; $add342 = (($233) + ($add341))|0; $LPC_pred_Q10 = $add342; $242 = $LPC_pred_Q10; $243 = $sLPC_Q14_ptr; $244 = $i; $add343 = (16 + ($244))|0; $sub344 = (($add343) - 4)|0; $arrayidx345 = (($243) + ($sub344<<2)|0); $245 = HEAP32[$arrayidx345>>2]|0; $shr346 = $245 >> 16; $arrayidx347 = ((($A_Q12)) + 6|0); $246 = HEAP16[$arrayidx347>>1]|0; $conv348 = $246 << 16 >> 16; $mul349 = Math_imul($shr346, $conv348)|0; $247 = $sLPC_Q14_ptr; $248 = $i; $add350 = (16 + ($248))|0; $sub351 = (($add350) - 4)|0; $arrayidx352 = (($247) + ($sub351<<2)|0); $249 = HEAP32[$arrayidx352>>2]|0; $and353 = $249 & 65535; $arrayidx354 = ((($A_Q12)) + 6|0); $250 = HEAP16[$arrayidx354>>1]|0; $conv355 = $250 << 16 >> 16; $mul356 = Math_imul($and353, $conv355)|0; $shr357 = $mul356 >> 16; $add358 = (($mul349) + ($shr357))|0; $add359 = (($242) + ($add358))|0; $LPC_pred_Q10 = $add359; $251 = $LPC_pred_Q10; $252 = $sLPC_Q14_ptr; $253 = $i; $add360 = (16 + ($253))|0; $sub361 = (($add360) - 5)|0; $arrayidx362 = (($252) + ($sub361<<2)|0); $254 = HEAP32[$arrayidx362>>2]|0; $shr363 = $254 >> 16; $arrayidx364 = ((($A_Q12)) + 8|0); $255 = HEAP16[$arrayidx364>>1]|0; $conv365 = $255 << 16 >> 16; $mul366 = Math_imul($shr363, $conv365)|0; $256 = $sLPC_Q14_ptr; $257 = $i; $add367 = (16 + ($257))|0; $sub368 = (($add367) - 5)|0; $arrayidx369 = (($256) + ($sub368<<2)|0); $258 = HEAP32[$arrayidx369>>2]|0; $and370 = $258 & 65535; $arrayidx371 = ((($A_Q12)) + 8|0); $259 = HEAP16[$arrayidx371>>1]|0; $conv372 = $259 << 16 >> 16; $mul373 = Math_imul($and370, $conv372)|0; $shr374 = $mul373 >> 16; $add375 = (($mul366) + ($shr374))|0; $add376 = (($251) + ($add375))|0; $LPC_pred_Q10 = $add376; $260 = $LPC_pred_Q10; $261 = $sLPC_Q14_ptr; $262 = $i; $add377 = (16 + ($262))|0; $sub378 = (($add377) - 6)|0; $arrayidx379 = (($261) + ($sub378<<2)|0); $263 = HEAP32[$arrayidx379>>2]|0; $shr380 = $263 >> 16; $arrayidx381 = ((($A_Q12)) + 10|0); $264 = HEAP16[$arrayidx381>>1]|0; $conv382 = $264 << 16 >> 16; $mul383 = Math_imul($shr380, $conv382)|0; $265 = $sLPC_Q14_ptr; $266 = $i; $add384 = (16 + ($266))|0; $sub385 = (($add384) - 6)|0; $arrayidx386 = (($265) + ($sub385<<2)|0); $267 = HEAP32[$arrayidx386>>2]|0; $and387 = $267 & 65535; $arrayidx388 = ((($A_Q12)) + 10|0); $268 = HEAP16[$arrayidx388>>1]|0; $conv389 = $268 << 16 >> 16; $mul390 = Math_imul($and387, $conv389)|0; $shr391 = $mul390 >> 16; $add392 = (($mul383) + ($shr391))|0; $add393 = (($260) + ($add392))|0; $LPC_pred_Q10 = $add393; $269 = $LPC_pred_Q10; $270 = $sLPC_Q14_ptr; $271 = $i; $add394 = (16 + ($271))|0; $sub395 = (($add394) - 7)|0; $arrayidx396 = (($270) + ($sub395<<2)|0); $272 = HEAP32[$arrayidx396>>2]|0; $shr397 = $272 >> 16; $arrayidx398 = ((($A_Q12)) + 12|0); $273 = HEAP16[$arrayidx398>>1]|0; $conv399 = $273 << 16 >> 16; $mul400 = Math_imul($shr397, $conv399)|0; $274 = $sLPC_Q14_ptr; $275 = $i; $add401 = (16 + ($275))|0; $sub402 = (($add401) - 7)|0; $arrayidx403 = (($274) + ($sub402<<2)|0); $276 = HEAP32[$arrayidx403>>2]|0; $and404 = $276 & 65535; $arrayidx405 = ((($A_Q12)) + 12|0); $277 = HEAP16[$arrayidx405>>1]|0; $conv406 = $277 << 16 >> 16; $mul407 = Math_imul($and404, $conv406)|0; $shr408 = $mul407 >> 16; $add409 = (($mul400) + ($shr408))|0; $add410 = (($269) + ($add409))|0; $LPC_pred_Q10 = $add410; $278 = $LPC_pred_Q10; $279 = $sLPC_Q14_ptr; $280 = $i; $add411 = (16 + ($280))|0; $sub412 = (($add411) - 8)|0; $arrayidx413 = (($279) + ($sub412<<2)|0); $281 = HEAP32[$arrayidx413>>2]|0; $shr414 = $281 >> 16; $arrayidx415 = ((($A_Q12)) + 14|0); $282 = HEAP16[$arrayidx415>>1]|0; $conv416 = $282 << 16 >> 16; $mul417 = Math_imul($shr414, $conv416)|0; $283 = $sLPC_Q14_ptr; $284 = $i; $add418 = (16 + ($284))|0; $sub419 = (($add418) - 8)|0; $arrayidx420 = (($283) + ($sub419<<2)|0); $285 = HEAP32[$arrayidx420>>2]|0; $and421 = $285 & 65535; $arrayidx422 = ((($A_Q12)) + 14|0); $286 = HEAP16[$arrayidx422>>1]|0; $conv423 = $286 << 16 >> 16; $mul424 = Math_imul($and421, $conv423)|0; $shr425 = $mul424 >> 16; $add426 = (($mul417) + ($shr425))|0; $add427 = (($278) + ($add426))|0; $LPC_pred_Q10 = $add427; $287 = $LPC_pred_Q10; $288 = $sLPC_Q14_ptr; $289 = $i; $add428 = (16 + ($289))|0; $sub429 = (($add428) - 9)|0; $arrayidx430 = (($288) + ($sub429<<2)|0); $290 = HEAP32[$arrayidx430>>2]|0; $shr431 = $290 >> 16; $arrayidx432 = ((($A_Q12)) + 16|0); $291 = HEAP16[$arrayidx432>>1]|0; $conv433 = $291 << 16 >> 16; $mul434 = Math_imul($shr431, $conv433)|0; $292 = $sLPC_Q14_ptr; $293 = $i; $add435 = (16 + ($293))|0; $sub436 = (($add435) - 9)|0; $arrayidx437 = (($292) + ($sub436<<2)|0); $294 = HEAP32[$arrayidx437>>2]|0; $and438 = $294 & 65535; $arrayidx439 = ((($A_Q12)) + 16|0); $295 = HEAP16[$arrayidx439>>1]|0; $conv440 = $295 << 16 >> 16; $mul441 = Math_imul($and438, $conv440)|0; $shr442 = $mul441 >> 16; $add443 = (($mul434) + ($shr442))|0; $add444 = (($287) + ($add443))|0; $LPC_pred_Q10 = $add444; $296 = $LPC_pred_Q10; $297 = $sLPC_Q14_ptr; $298 = $i; $add445 = (16 + ($298))|0; $sub446 = (($add445) - 10)|0; $arrayidx447 = (($297) + ($sub446<<2)|0); $299 = HEAP32[$arrayidx447>>2]|0; $shr448 = $299 >> 16; $arrayidx449 = ((($A_Q12)) + 18|0); $300 = HEAP16[$arrayidx449>>1]|0; $conv450 = $300 << 16 >> 16; $mul451 = Math_imul($shr448, $conv450)|0; $301 = $sLPC_Q14_ptr; $302 = $i; $add452 = (16 + ($302))|0; $sub453 = (($add452) - 10)|0; $arrayidx454 = (($301) + ($sub453<<2)|0); $303 = HEAP32[$arrayidx454>>2]|0; $and455 = $303 & 65535; $arrayidx456 = ((($A_Q12)) + 18|0); $304 = HEAP16[$arrayidx456>>1]|0; $conv457 = $304 << 16 >> 16; $mul458 = Math_imul($and455, $conv457)|0; $shr459 = $mul458 >> 16; $add460 = (($mul451) + ($shr459))|0; $add461 = (($296) + ($add460))|0; $LPC_pred_Q10 = $add461; $j = 10; while(1) { $305 = $j; $306 = $psDec$addr; $LPC_order463 = ((($306)) + 2340|0); $307 = HEAP32[$LPC_order463>>2]|0; $cmp464 = ($305|0)<($307|0); if (!($cmp464)) { break; } $308 = $LPC_pred_Q10; $309 = $sLPC_Q14_ptr; $310 = $i; $add467 = (16 + ($310))|0; $311 = $j; $sub468 = (($add467) - ($311))|0; $sub469 = (($sub468) - 1)|0; $arrayidx470 = (($309) + ($sub469<<2)|0); $312 = HEAP32[$arrayidx470>>2]|0; $shr471 = $312 >> 16; $313 = $j; $arrayidx472 = (($A_Q12) + ($313<<1)|0); $314 = HEAP16[$arrayidx472>>1]|0; $conv473 = $314 << 16 >> 16; $mul474 = Math_imul($shr471, $conv473)|0; $315 = $sLPC_Q14_ptr; $316 = $i; $add475 = (16 + ($316))|0; $317 = $j; $sub476 = (($add475) - ($317))|0; $sub477 = (($sub476) - 1)|0; $arrayidx478 = (($315) + ($sub477<<2)|0); $318 = HEAP32[$arrayidx478>>2]|0; $and479 = $318 & 65535; $319 = $j; $arrayidx480 = (($A_Q12) + ($319<<1)|0); $320 = HEAP16[$arrayidx480>>1]|0; $conv481 = $320 << 16 >> 16; $mul482 = Math_imul($and479, $conv481)|0; $shr483 = $mul482 >> 16; $add484 = (($mul474) + ($shr483))|0; $add485 = (($308) + ($add484))|0; $LPC_pred_Q10 = $add485; $321 = $j; $inc487 = (($321) + 1)|0; $j = $inc487; } $322 = $sLPC_Q14_ptr; $323 = $i; $add489 = (16 + ($323))|0; $arrayidx490 = (($322) + ($add489<<2)|0); $324 = HEAP32[$arrayidx490>>2]|0; $325 = $LPC_pred_Q10; $cmp491 = ($325|0)>(134217727); if ($cmp491) { $cond502 = 134217727; } else { $326 = $LPC_pred_Q10; $cmp495 = ($326|0)<(-134217728); $327 = $LPC_pred_Q10; $cond500 = $cmp495 ? -134217728 : $327; $cond502 = $cond500; } $shl503 = $cond502 << 4; $add504 = (($324) + ($shl503))|0; $and505 = $add504 & -2147483648; $cmp506 = ($and505|0)==(0); $328 = $sLPC_Q14_ptr; $329 = $i; $add509 = (16 + ($329))|0; $arrayidx510 = (($328) + ($add509<<2)|0); $330 = HEAP32[$arrayidx510>>2]|0; $331 = $LPC_pred_Q10; $cmp511 = ($331|0)>(134217727); if ($cmp506) { if ($cmp511) { $cond522 = 134217727; } else { $332 = $LPC_pred_Q10; $cmp515 = ($332|0)<(-134217728); $333 = $LPC_pred_Q10; $cond520 = $cmp515 ? -134217728 : $333; $cond522 = $cond520; } $shl523 = $cond522 << 4; $and524 = $330 & $shl523; $and525 = $and524 & -2147483648; $cmp526 = ($and525|0)!=(0); if ($cmp526) { $cond588 = -2147483648; } else { $334 = $sLPC_Q14_ptr; $335 = $i; $add530 = (16 + ($335))|0; $arrayidx531 = (($334) + ($add530<<2)|0); $336 = HEAP32[$arrayidx531>>2]|0; $337 = $LPC_pred_Q10; $cmp532 = ($337|0)>(134217727); if ($cmp532) { $cond543 = 134217727; } else { $338 = $LPC_pred_Q10; $cmp536 = ($338|0)<(-134217728); $339 = $LPC_pred_Q10; $cond541 = $cmp536 ? -134217728 : $339; $cond543 = $cond541; } $shl544 = $cond543 << 4; $add545 = (($336) + ($shl544))|0; $cond588 = $add545; } } else { if ($cmp511) { $cond562 = 134217727; } else { $340 = $LPC_pred_Q10; $cmp555 = ($340|0)<(-134217728); $341 = $LPC_pred_Q10; $cond560 = $cmp555 ? -134217728 : $341; $cond562 = $cond560; } $shl563 = $cond562 << 4; $or = $330 | $shl563; $and564 = $or & -2147483648; $cmp565 = ($and564|0)==(0); if ($cmp565) { $cond588 = 2147483647; } else { $342 = $sLPC_Q14_ptr; $343 = $i; $add569 = (16 + ($343))|0; $arrayidx570 = (($342) + ($add569<<2)|0); $344 = HEAP32[$arrayidx570>>2]|0; $345 = $LPC_pred_Q10; $cmp571 = ($345|0)>(134217727); if ($cmp571) { $cond582 = 134217727; } else { $346 = $LPC_pred_Q10; $cmp575 = ($346|0)<(-134217728); $347 = $LPC_pred_Q10; $cond580 = $cmp575 ? -134217728 : $347; $cond582 = $cond580; } $shl583 = $cond582 << 4; $add584 = (($344) + ($shl583))|0; $cond588 = $add584; } } $348 = $sLPC_Q14_ptr; $349 = $i; $add589 = (16 + ($349))|0; $arrayidx590 = (($348) + ($add589<<2)|0); HEAP32[$arrayidx590>>2] = $cond588; $350 = $sLPC_Q14_ptr; $351 = $i; $add591 = (16 + ($351))|0; $arrayidx592 = (($350) + ($add591<<2)|0); $352 = HEAP32[$arrayidx592>>2]|0; $shr593 = $352 >> 16; $arrayidx594 = ((($prevGain_Q10)) + 4|0); $353 = HEAP32[$arrayidx594>>2]|0; $conv595 = $353&65535; $conv596 = $conv595 << 16 >> 16; $mul597 = Math_imul($shr593, $conv596)|0; $354 = $sLPC_Q14_ptr; $355 = $i; $add598 = (16 + ($355))|0; $arrayidx599 = (($354) + ($add598<<2)|0); $356 = HEAP32[$arrayidx599>>2]|0; $and600 = $356 & 65535; $arrayidx601 = ((($prevGain_Q10)) + 4|0); $357 = HEAP32[$arrayidx601>>2]|0; $conv602 = $357&65535; $conv603 = $conv602 << 16 >> 16; $mul604 = Math_imul($and600, $conv603)|0; $shr605 = $mul604 >> 16; $add606 = (($mul597) + ($shr605))|0; $358 = $sLPC_Q14_ptr; $359 = $i; $add607 = (16 + ($359))|0; $arrayidx608 = (($358) + ($add607<<2)|0); $360 = HEAP32[$arrayidx608>>2]|0; $arrayidx609 = ((($prevGain_Q10)) + 4|0); $361 = HEAP32[$arrayidx609>>2]|0; $shr610 = $361 >> 15; $add611 = (($shr610) + 1)|0; $shr612 = $add611 >> 1; $mul613 = Math_imul($360, $shr612)|0; $add614 = (($add606) + ($mul613))|0; $shr615 = $add614 >> 7; $add616 = (($shr615) + 1)|0; $shr617 = $add616 >> 1; $cmp618 = ($shr617|0)>(32767); if ($cmp618) { $cond683 = 32767; } else { $362 = $sLPC_Q14_ptr; $363 = $i; $add622 = (16 + ($363))|0; $arrayidx623 = (($362) + ($add622<<2)|0); $364 = HEAP32[$arrayidx623>>2]|0; $shr624 = $364 >> 16; $arrayidx625 = ((($prevGain_Q10)) + 4|0); $365 = HEAP32[$arrayidx625>>2]|0; $conv626 = $365&65535; $conv627 = $conv626 << 16 >> 16; $mul628 = Math_imul($shr624, $conv627)|0; $366 = $sLPC_Q14_ptr; $367 = $i; $add629 = (16 + ($367))|0; $arrayidx630 = (($366) + ($add629<<2)|0); $368 = HEAP32[$arrayidx630>>2]|0; $and631 = $368 & 65535; $arrayidx632 = ((($prevGain_Q10)) + 4|0); $369 = HEAP32[$arrayidx632>>2]|0; $conv633 = $369&65535; $conv634 = $conv633 << 16 >> 16; $mul635 = Math_imul($and631, $conv634)|0; $shr636 = $mul635 >> 16; $add637 = (($mul628) + ($shr636))|0; $370 = $sLPC_Q14_ptr; $371 = $i; $add638 = (16 + ($371))|0; $arrayidx639 = (($370) + ($add638<<2)|0); $372 = HEAP32[$arrayidx639>>2]|0; $arrayidx640 = ((($prevGain_Q10)) + 4|0); $373 = HEAP32[$arrayidx640>>2]|0; $shr641 = $373 >> 15; $add642 = (($shr641) + 1)|0; $shr643 = $add642 >> 1; $mul644 = Math_imul($372, $shr643)|0; $add645 = (($add637) + ($mul644))|0; $shr646 = $add645 >> 7; $add647 = (($shr646) + 1)|0; $shr648 = $add647 >> 1; $cmp649 = ($shr648|0)<(-32768); if ($cmp649) { $cond683 = -32768; } else { $374 = $sLPC_Q14_ptr; $375 = $i; $add653 = (16 + ($375))|0; $arrayidx654 = (($374) + ($add653<<2)|0); $376 = HEAP32[$arrayidx654>>2]|0; $shr655 = $376 >> 16; $arrayidx656 = ((($prevGain_Q10)) + 4|0); $377 = HEAP32[$arrayidx656>>2]|0; $conv657 = $377&65535; $conv658 = $conv657 << 16 >> 16; $mul659 = Math_imul($shr655, $conv658)|0; $378 = $sLPC_Q14_ptr; $379 = $i; $add660 = (16 + ($379))|0; $arrayidx661 = (($378) + ($add660<<2)|0); $380 = HEAP32[$arrayidx661>>2]|0; $and662 = $380 & 65535; $arrayidx663 = ((($prevGain_Q10)) + 4|0); $381 = HEAP32[$arrayidx663>>2]|0; $conv664 = $381&65535; $conv665 = $conv664 << 16 >> 16; $mul666 = Math_imul($and662, $conv665)|0; $shr667 = $mul666 >> 16; $add668 = (($mul659) + ($shr667))|0; $382 = $sLPC_Q14_ptr; $383 = $i; $add669 = (16 + ($383))|0; $arrayidx670 = (($382) + ($add669<<2)|0); $384 = HEAP32[$arrayidx670>>2]|0; $arrayidx671 = ((($prevGain_Q10)) + 4|0); $385 = HEAP32[$arrayidx671>>2]|0; $shr672 = $385 >> 15; $add673 = (($shr672) + 1)|0; $shr674 = $add673 >> 1; $mul675 = Math_imul($384, $shr674)|0; $add676 = (($add668) + ($mul675))|0; $shr677 = $add676 >> 7; $add678 = (($shr677) + 1)|0; $shr679 = $add678 >> 1; $cond683 = $shr679; } } $cmp684 = ($cond683|0)>(32767); if ($cmp684) { $cond881 = 32767; } else { $386 = $sLPC_Q14_ptr; $387 = $i; $add688 = (16 + ($387))|0; $arrayidx689 = (($386) + ($add688<<2)|0); $388 = HEAP32[$arrayidx689>>2]|0; $shr690 = $388 >> 16; $arrayidx691 = ((($prevGain_Q10)) + 4|0); $389 = HEAP32[$arrayidx691>>2]|0; $conv692 = $389&65535; $conv693 = $conv692 << 16 >> 16; $mul694 = Math_imul($shr690, $conv693)|0; $390 = $sLPC_Q14_ptr; $391 = $i; $add695 = (16 + ($391))|0; $arrayidx696 = (($390) + ($add695<<2)|0); $392 = HEAP32[$arrayidx696>>2]|0; $and697 = $392 & 65535; $arrayidx698 = ((($prevGain_Q10)) + 4|0); $393 = HEAP32[$arrayidx698>>2]|0; $conv699 = $393&65535; $conv700 = $conv699 << 16 >> 16; $mul701 = Math_imul($and697, $conv700)|0; $shr702 = $mul701 >> 16; $add703 = (($mul694) + ($shr702))|0; $394 = $sLPC_Q14_ptr; $395 = $i; $add704 = (16 + ($395))|0; $arrayidx705 = (($394) + ($add704<<2)|0); $396 = HEAP32[$arrayidx705>>2]|0; $arrayidx706 = ((($prevGain_Q10)) + 4|0); $397 = HEAP32[$arrayidx706>>2]|0; $shr707 = $397 >> 15; $add708 = (($shr707) + 1)|0; $shr709 = $add708 >> 1; $mul710 = Math_imul($396, $shr709)|0; $add711 = (($add703) + ($mul710))|0; $shr712 = $add711 >> 7; $add713 = (($shr712) + 1)|0; $shr714 = $add713 >> 1; $cmp715 = ($shr714|0)>(32767); if ($cmp715) { $cond780 = 32767; } else { $398 = $sLPC_Q14_ptr; $399 = $i; $add719 = (16 + ($399))|0; $arrayidx720 = (($398) + ($add719<<2)|0); $400 = HEAP32[$arrayidx720>>2]|0; $shr721 = $400 >> 16; $arrayidx722 = ((($prevGain_Q10)) + 4|0); $401 = HEAP32[$arrayidx722>>2]|0; $conv723 = $401&65535; $conv724 = $conv723 << 16 >> 16; $mul725 = Math_imul($shr721, $conv724)|0; $402 = $sLPC_Q14_ptr; $403 = $i; $add726 = (16 + ($403))|0; $arrayidx727 = (($402) + ($add726<<2)|0); $404 = HEAP32[$arrayidx727>>2]|0; $and728 = $404 & 65535; $arrayidx729 = ((($prevGain_Q10)) + 4|0); $405 = HEAP32[$arrayidx729>>2]|0; $conv730 = $405&65535; $conv731 = $conv730 << 16 >> 16; $mul732 = Math_imul($and728, $conv731)|0; $shr733 = $mul732 >> 16; $add734 = (($mul725) + ($shr733))|0; $406 = $sLPC_Q14_ptr; $407 = $i; $add735 = (16 + ($407))|0; $arrayidx736 = (($406) + ($add735<<2)|0); $408 = HEAP32[$arrayidx736>>2]|0; $arrayidx737 = ((($prevGain_Q10)) + 4|0); $409 = HEAP32[$arrayidx737>>2]|0; $shr738 = $409 >> 15; $add739 = (($shr738) + 1)|0; $shr740 = $add739 >> 1; $mul741 = Math_imul($408, $shr740)|0; $add742 = (($add734) + ($mul741))|0; $shr743 = $add742 >> 7; $add744 = (($shr743) + 1)|0; $shr745 = $add744 >> 1; $cmp746 = ($shr745|0)<(-32768); if ($cmp746) { $cond780 = -32768; } else { $410 = $sLPC_Q14_ptr; $411 = $i; $add750 = (16 + ($411))|0; $arrayidx751 = (($410) + ($add750<<2)|0); $412 = HEAP32[$arrayidx751>>2]|0; $shr752 = $412 >> 16; $arrayidx753 = ((($prevGain_Q10)) + 4|0); $413 = HEAP32[$arrayidx753>>2]|0; $conv754 = $413&65535; $conv755 = $conv754 << 16 >> 16; $mul756 = Math_imul($shr752, $conv755)|0; $414 = $sLPC_Q14_ptr; $415 = $i; $add757 = (16 + ($415))|0; $arrayidx758 = (($414) + ($add757<<2)|0); $416 = HEAP32[$arrayidx758>>2]|0; $and759 = $416 & 65535; $arrayidx760 = ((($prevGain_Q10)) + 4|0); $417 = HEAP32[$arrayidx760>>2]|0; $conv761 = $417&65535; $conv762 = $conv761 << 16 >> 16; $mul763 = Math_imul($and759, $conv762)|0; $shr764 = $mul763 >> 16; $add765 = (($mul756) + ($shr764))|0; $418 = $sLPC_Q14_ptr; $419 = $i; $add766 = (16 + ($419))|0; $arrayidx767 = (($418) + ($add766<<2)|0); $420 = HEAP32[$arrayidx767>>2]|0; $arrayidx768 = ((($prevGain_Q10)) + 4|0); $421 = HEAP32[$arrayidx768>>2]|0; $shr769 = $421 >> 15; $add770 = (($shr769) + 1)|0; $shr771 = $add770 >> 1; $mul772 = Math_imul($420, $shr771)|0; $add773 = (($add765) + ($mul772))|0; $shr774 = $add773 >> 7; $add775 = (($shr774) + 1)|0; $shr776 = $add775 >> 1; $cond780 = $shr776; } } $cmp781 = ($cond780|0)<(-32768); if ($cmp781) { $cond881 = -32768; } else { $422 = $sLPC_Q14_ptr; $423 = $i; $add785 = (16 + ($423))|0; $arrayidx786 = (($422) + ($add785<<2)|0); $424 = HEAP32[$arrayidx786>>2]|0; $shr787 = $424 >> 16; $arrayidx788 = ((($prevGain_Q10)) + 4|0); $425 = HEAP32[$arrayidx788>>2]|0; $conv789 = $425&65535; $conv790 = $conv789 << 16 >> 16; $mul791 = Math_imul($shr787, $conv790)|0; $426 = $sLPC_Q14_ptr; $427 = $i; $add792 = (16 + ($427))|0; $arrayidx793 = (($426) + ($add792<<2)|0); $428 = HEAP32[$arrayidx793>>2]|0; $and794 = $428 & 65535; $arrayidx795 = ((($prevGain_Q10)) + 4|0); $429 = HEAP32[$arrayidx795>>2]|0; $conv796 = $429&65535; $conv797 = $conv796 << 16 >> 16; $mul798 = Math_imul($and794, $conv797)|0; $shr799 = $mul798 >> 16; $add800 = (($mul791) + ($shr799))|0; $430 = $sLPC_Q14_ptr; $431 = $i; $add801 = (16 + ($431))|0; $arrayidx802 = (($430) + ($add801<<2)|0); $432 = HEAP32[$arrayidx802>>2]|0; $arrayidx803 = ((($prevGain_Q10)) + 4|0); $433 = HEAP32[$arrayidx803>>2]|0; $shr804 = $433 >> 15; $add805 = (($shr804) + 1)|0; $shr806 = $add805 >> 1; $mul807 = Math_imul($432, $shr806)|0; $add808 = (($add800) + ($mul807))|0; $shr809 = $add808 >> 7; $add810 = (($shr809) + 1)|0; $shr811 = $add810 >> 1; $cmp812 = ($shr811|0)>(32767); if ($cmp812) { $cond881 = 32767; } else { $434 = $sLPC_Q14_ptr; $435 = $i; $add816 = (16 + ($435))|0; $arrayidx817 = (($434) + ($add816<<2)|0); $436 = HEAP32[$arrayidx817>>2]|0; $shr818 = $436 >> 16; $arrayidx819 = ((($prevGain_Q10)) + 4|0); $437 = HEAP32[$arrayidx819>>2]|0; $conv820 = $437&65535; $conv821 = $conv820 << 16 >> 16; $mul822 = Math_imul($shr818, $conv821)|0; $438 = $sLPC_Q14_ptr; $439 = $i; $add823 = (16 + ($439))|0; $arrayidx824 = (($438) + ($add823<<2)|0); $440 = HEAP32[$arrayidx824>>2]|0; $and825 = $440 & 65535; $arrayidx826 = ((($prevGain_Q10)) + 4|0); $441 = HEAP32[$arrayidx826>>2]|0; $conv827 = $441&65535; $conv828 = $conv827 << 16 >> 16; $mul829 = Math_imul($and825, $conv828)|0; $shr830 = $mul829 >> 16; $add831 = (($mul822) + ($shr830))|0; $442 = $sLPC_Q14_ptr; $443 = $i; $add832 = (16 + ($443))|0; $arrayidx833 = (($442) + ($add832<<2)|0); $444 = HEAP32[$arrayidx833>>2]|0; $arrayidx834 = ((($prevGain_Q10)) + 4|0); $445 = HEAP32[$arrayidx834>>2]|0; $shr835 = $445 >> 15; $add836 = (($shr835) + 1)|0; $shr837 = $add836 >> 1; $mul838 = Math_imul($444, $shr837)|0; $add839 = (($add831) + ($mul838))|0; $shr840 = $add839 >> 7; $add841 = (($shr840) + 1)|0; $shr842 = $add841 >> 1; $cmp843 = ($shr842|0)<(-32768); if ($cmp843) { $cond881 = -32768; } else { $446 = $sLPC_Q14_ptr; $447 = $i; $add847 = (16 + ($447))|0; $arrayidx848 = (($446) + ($add847<<2)|0); $448 = HEAP32[$arrayidx848>>2]|0; $shr849 = $448 >> 16; $arrayidx850 = ((($prevGain_Q10)) + 4|0); $449 = HEAP32[$arrayidx850>>2]|0; $conv851 = $449&65535; $conv852 = $conv851 << 16 >> 16; $mul853 = Math_imul($shr849, $conv852)|0; $450 = $sLPC_Q14_ptr; $451 = $i; $add854 = (16 + ($451))|0; $arrayidx855 = (($450) + ($add854<<2)|0); $452 = HEAP32[$arrayidx855>>2]|0; $and856 = $452 & 65535; $arrayidx857 = ((($prevGain_Q10)) + 4|0); $453 = HEAP32[$arrayidx857>>2]|0; $conv858 = $453&65535; $conv859 = $conv858 << 16 >> 16; $mul860 = Math_imul($and856, $conv859)|0; $shr861 = $mul860 >> 16; $add862 = (($mul853) + ($shr861))|0; $454 = $sLPC_Q14_ptr; $455 = $i; $add863 = (16 + ($455))|0; $arrayidx864 = (($454) + ($add863<<2)|0); $456 = HEAP32[$arrayidx864>>2]|0; $arrayidx865 = ((($prevGain_Q10)) + 4|0); $457 = HEAP32[$arrayidx865>>2]|0; $shr866 = $457 >> 15; $add867 = (($shr866) + 1)|0; $shr868 = $add867 >> 1; $mul869 = Math_imul($456, $shr868)|0; $add870 = (($add862) + ($mul869))|0; $shr871 = $add870 >> 7; $add872 = (($shr871) + 1)|0; $shr873 = $add872 >> 1; $cond881 = $shr873; } } } } $conv882 = $cond881&65535; $458 = $frame$addr; $459 = $i; $arrayidx883 = (($458) + ($459<<1)|0); HEAP16[$arrayidx883>>1] = $conv882; $460 = $i; $inc885 = (($460) + 1)|0; $i = $inc885; } $sLPC_Q14_buf887 = ((($213)) + 1284|0); $461 = $sLPC_Q14_ptr; $462 = $psDec$addr; $frame_length889 = ((($462)) + 2328|0); $463 = HEAP32[$frame_length889>>2]|0; $arrayidx890 = (($461) + ($463<<2)|0); dest=$sLPC_Q14_buf887; src=$arrayidx890; stop=dest+64|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); $464 = $rand_seed; $465 = $psPLC; $rand_seed891 = ((($465)) + 52|0); HEAP32[$rand_seed891>>2] = $464; $466 = $rand_scale_Q14; $467 = $psPLC; $randScale_Q14892 = ((($467)) + 56|0); HEAP16[$randScale_Q14892>>1] = $466; $i = 0; while(1) { $468 = $i; $cmp894 = ($468|0)<(4); if (!($cmp894)) { break; } $469 = $lag; $470 = $psDecCtrl$addr; $471 = $i; $arrayidx897 = (($470) + ($471<<2)|0); HEAP32[$arrayidx897>>2] = $469; $472 = $i; $inc899 = (($472) + 1)|0; $i = $inc899; } $473 = $saved_stack; _llvm_stackrestore(($473|0)); STACKTOP = sp;return; } function _silk_PLC_update($psDec,$psDecCtrl) { $psDec = $psDec|0; $psDecCtrl = $psDecCtrl|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $9 = 0, $Gains_Q16 = 0, $LPC_order = 0, $LTPCoef_Q14 = 0, $LTPCoef_Q14105 = 0, $LTPCoef_Q1425 = 0, $LTPCoef_Q1426 = 0, $LTPCoef_Q1443 = 0, $LTPCoef_Q1446 = 0, $LTPCoef_Q1457 = 0, $LTPCoef_Q1464 = 0, $LTPCoef_Q1484 = 0, $LTPCoef_Q1492 = 0; var $LTP_Gain_Q14 = 0, $LTP_scale_Q14 = 0, $PredCoef_Q12 = 0, $add = 0, $add21 = 0, $arrayidx = 0, $arrayidx109 = 0, $arrayidx116 = 0, $arrayidx19 = 0, $arrayidx33 = 0, $arrayidx38 = 0, $arrayidx47 = 0, $arrayidx58 = 0, $arrayidx65 = 0, $arrayidx85 = 0, $arrayidx93 = 0, $cmp = 0, $cmp12 = 0, $cmp22 = 0, $cmp48 = 0; var $cmp5 = 0, $cmp51 = 0, $cmp54 = 0, $cmp69 = 0, $cmp73 = 0, $cmp8 = 0, $cmp81 = 0, $cond = 0, $cond78 = 0, $conv = 0, $conv100 = 0, $conv101 = 0, $conv112 = 0, $conv20 = 0, $conv3 = 0, $conv30 = 0, $conv31 = 0, $conv45 = 0, $conv59 = 0, $conv60 = 0; var $conv61 = 0, $conv63 = 0, $conv86 = 0, $conv87 = 0, $conv88 = 0, $conv91 = 0, $div = 0, $div79 = 0, $fs_kHz = 0, $i = 0, $inc = 0, $inc41 = 0, $inc67 = 0, $inc95 = 0, $indices = 0, $indices1 = 0, $j = 0, $mul = 0, $mul102 = 0, $mul111 = 0; var $mul18 = 0, $mul32 = 0, $mul62 = 0, $mul89 = 0, $nb_subfr = 0, $nb_subfr114 = 0, $nb_subfr119 = 0, $nb_subfr120 = 0, $nb_subfr15 = 0, $nb_subfr27 = 0, $nb_subfr35 = 0, $nb_subfr7 = 0, $prevGain_Q16 = 0, $prevLPC_Q12 = 0, $prevLTP_scale_Q14 = 0, $prevSignalType = 0, $psDec$addr = 0, $psDecCtrl$addr = 0, $psPLC = 0, $sPLC = 0; var $scale_Q10 = 0, $scale_Q14 = 0, $shl = 0, $shl103 = 0, $shr = 0, $shr90 = 0, $signalType = 0, $signalType2 = 0, $sub = 0, $sub115 = 0, $sub16 = 0, $sub17 = 0, $sub28 = 0, $sub29 = 0, $sub36 = 0, $sub37 = 0, $subfr_length = 0, $subfr_length117 = 0, $subfr_length118 = 0, $temp_LTP_Gain_Q14 = 0; var $tmp = 0, $tmp72 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $psDec$addr = $psDec; $psDecCtrl$addr = $psDecCtrl; $0 = $psDec$addr; $sPLC = ((($0)) + 4172|0); $psPLC = $sPLC; $1 = $psDec$addr; $indices = ((($1)) + 2736|0); $signalType = ((($indices)) + 29|0); $2 = HEAP8[$signalType>>0]|0; $conv = $2 << 24 >> 24; $3 = $psDec$addr; $prevSignalType = ((($3)) + 4164|0); HEAP32[$prevSignalType>>2] = $conv; $LTP_Gain_Q14 = 0; $4 = $psDec$addr; $indices1 = ((($4)) + 2736|0); $signalType2 = ((($indices1)) + 29|0); $5 = HEAP8[$signalType2>>0]|0; $conv3 = $5 << 24 >> 24; $cmp = ($conv3|0)==(2); L1: do { if ($cmp) { $j = 0; while(1) { $6 = $j; $7 = $psDec$addr; $subfr_length = ((($7)) + 2332|0); $8 = HEAP32[$subfr_length>>2]|0; $mul = Math_imul($6, $8)|0; $9 = $psDecCtrl$addr; $10 = $psDec$addr; $nb_subfr = ((($10)) + 2324|0); $11 = HEAP32[$nb_subfr>>2]|0; $sub = (($11) - 1)|0; $arrayidx = (($9) + ($sub<<2)|0); $12 = HEAP32[$arrayidx>>2]|0; $cmp5 = ($mul|0)<($12|0); if (!($cmp5)) { break; } $13 = $j; $14 = $psDec$addr; $nb_subfr7 = ((($14)) + 2324|0); $15 = HEAP32[$nb_subfr7>>2]|0; $cmp8 = ($13|0)==($15|0); if ($cmp8) { break; } $temp_LTP_Gain_Q14 = 0; $i = 0; while(1) { $16 = $i; $cmp12 = ($16|0)<(5); if (!($cmp12)) { break; } $17 = $psDecCtrl$addr; $LTPCoef_Q14 = ((($17)) + 96|0); $18 = $psDec$addr; $nb_subfr15 = ((($18)) + 2324|0); $19 = HEAP32[$nb_subfr15>>2]|0; $sub16 = (($19) - 1)|0; $20 = $j; $sub17 = (($sub16) - ($20))|0; $mul18 = ($sub17*5)|0; $21 = $i; $add = (($mul18) + ($21))|0; $arrayidx19 = (($LTPCoef_Q14) + ($add<<1)|0); $22 = HEAP16[$arrayidx19>>1]|0; $conv20 = $22 << 16 >> 16; $23 = $temp_LTP_Gain_Q14; $add21 = (($23) + ($conv20))|0; $temp_LTP_Gain_Q14 = $add21; $24 = $i; $inc = (($24) + 1)|0; $i = $inc; } $25 = $temp_LTP_Gain_Q14; $26 = $LTP_Gain_Q14; $cmp22 = ($25|0)>($26|0); if ($cmp22) { $27 = $temp_LTP_Gain_Q14; $LTP_Gain_Q14 = $27; $28 = $psPLC; $LTPCoef_Q1425 = ((($28)) + 4|0); $29 = $psDecCtrl$addr; $LTPCoef_Q1426 = ((($29)) + 96|0); $30 = $psDec$addr; $nb_subfr27 = ((($30)) + 2324|0); $31 = HEAP32[$nb_subfr27>>2]|0; $sub28 = (($31) - 1)|0; $32 = $j; $sub29 = (($sub28) - ($32))|0; $conv30 = $sub29&65535; $conv31 = $conv30 << 16 >> 16; $mul32 = ($conv31*5)|0; $arrayidx33 = (($LTPCoef_Q1426) + ($mul32<<1)|0); ;HEAP16[$LTPCoef_Q1425>>1]=HEAP16[$arrayidx33>>1]|0;HEAP16[$LTPCoef_Q1425+2>>1]=HEAP16[$arrayidx33+2>>1]|0;HEAP16[$LTPCoef_Q1425+4>>1]=HEAP16[$arrayidx33+4>>1]|0;HEAP16[$LTPCoef_Q1425+6>>1]=HEAP16[$arrayidx33+6>>1]|0;HEAP16[$LTPCoef_Q1425+8>>1]=HEAP16[$arrayidx33+8>>1]|0; $33 = $psDecCtrl$addr; $34 = $psDec$addr; $nb_subfr35 = ((($34)) + 2324|0); $35 = HEAP32[$nb_subfr35>>2]|0; $sub36 = (($35) - 1)|0; $36 = $j; $sub37 = (($sub36) - ($36))|0; $arrayidx38 = (($33) + ($sub37<<2)|0); $37 = HEAP32[$arrayidx38>>2]|0; $shl = $37 << 8; $38 = $psPLC; HEAP32[$38>>2] = $shl; } $39 = $j; $inc41 = (($39) + 1)|0; $j = $inc41; } $40 = $psPLC; $LTPCoef_Q1443 = ((($40)) + 4|0); ;HEAP32[$LTPCoef_Q1443>>2]=0|0;HEAP32[$LTPCoef_Q1443+4>>2]=0|0;HEAP16[$LTPCoef_Q1443+8>>1]=0|0; $41 = $LTP_Gain_Q14; $conv45 = $41&65535; $42 = $psPLC; $LTPCoef_Q1446 = ((($42)) + 4|0); $arrayidx47 = ((($LTPCoef_Q1446)) + 4|0); HEAP16[$arrayidx47>>1] = $conv45; $43 = $LTP_Gain_Q14; $cmp48 = ($43|0)<(11469); if ($cmp48) { $tmp = 11744256; $44 = $tmp; $45 = $LTP_Gain_Q14; $cmp51 = ($45|0)>(1); $46 = $LTP_Gain_Q14; $cond = $cmp51 ? $46 : 1; $div = (($44|0) / ($cond|0))&-1; $scale_Q10 = $div; $i = 0; while(1) { $47 = $i; $cmp54 = ($47|0)<(5); if (!($cmp54)) { break L1; } $48 = $psPLC; $LTPCoef_Q1457 = ((($48)) + 4|0); $49 = $i; $arrayidx58 = (($LTPCoef_Q1457) + ($49<<1)|0); $50 = HEAP16[$arrayidx58>>1]|0; $conv59 = $50 << 16 >> 16; $51 = $scale_Q10; $conv60 = $51&65535; $conv61 = $conv60 << 16 >> 16; $mul62 = Math_imul($conv59, $conv61)|0; $shr = $mul62 >> 10; $conv63 = $shr&65535; $52 = $psPLC; $LTPCoef_Q1464 = ((($52)) + 4|0); $53 = $i; $arrayidx65 = (($LTPCoef_Q1464) + ($53<<1)|0); HEAP16[$arrayidx65>>1] = $conv63; $54 = $i; $inc67 = (($54) + 1)|0; $i = $inc67; } } $55 = $LTP_Gain_Q14; $cmp69 = ($55|0)>(15565); if ($cmp69) { $tmp72 = 255016960; $56 = $tmp72; $57 = $LTP_Gain_Q14; $cmp73 = ($57|0)>(1); $58 = $LTP_Gain_Q14; $cond78 = $cmp73 ? $58 : 1; $div79 = (($56|0) / ($cond78|0))&-1; $scale_Q14 = $div79; $i = 0; while(1) { $59 = $i; $cmp81 = ($59|0)<(5); if (!($cmp81)) { break L1; } $60 = $psPLC; $LTPCoef_Q1484 = ((($60)) + 4|0); $61 = $i; $arrayidx85 = (($LTPCoef_Q1484) + ($61<<1)|0); $62 = HEAP16[$arrayidx85>>1]|0; $conv86 = $62 << 16 >> 16; $63 = $scale_Q14; $conv87 = $63&65535; $conv88 = $conv87 << 16 >> 16; $mul89 = Math_imul($conv86, $conv88)|0; $shr90 = $mul89 >> 14; $conv91 = $shr90&65535; $64 = $psPLC; $LTPCoef_Q1492 = ((($64)) + 4|0); $65 = $i; $arrayidx93 = (($LTPCoef_Q1492) + ($65<<1)|0); HEAP16[$arrayidx93>>1] = $conv91; $66 = $i; $inc95 = (($66) + 1)|0; $i = $inc95; } } } else { $67 = $psDec$addr; $fs_kHz = ((($67)) + 2316|0); $68 = HEAP32[$fs_kHz>>2]|0; $conv100 = $68&65535; $conv101 = $conv100 << 16 >> 16; $mul102 = ($conv101*18)|0; $shl103 = $mul102 << 8; $69 = $psPLC; HEAP32[$69>>2] = $shl103; $70 = $psPLC; $LTPCoef_Q14105 = ((($70)) + 4|0); ;HEAP32[$LTPCoef_Q14105>>2]=0|0;HEAP32[$LTPCoef_Q14105+4>>2]=0|0;HEAP16[$LTPCoef_Q14105+8>>1]=0|0; } } while(0); $71 = $psPLC; $prevLPC_Q12 = ((($71)) + 14|0); $72 = $psDecCtrl$addr; $PredCoef_Q12 = ((($72)) + 32|0); $arrayidx109 = ((($PredCoef_Q12)) + 32|0); $73 = $psDec$addr; $LPC_order = ((($73)) + 2340|0); $74 = HEAP32[$LPC_order>>2]|0; $mul111 = $74<<1; _memcpy(($prevLPC_Q12|0),($arrayidx109|0),($mul111|0))|0; $75 = $psDecCtrl$addr; $LTP_scale_Q14 = ((($75)) + 136|0); $76 = HEAP32[$LTP_scale_Q14>>2]|0; $conv112 = $76&65535; $77 = $psPLC; $prevLTP_scale_Q14 = ((($77)) + 68|0); HEAP16[$prevLTP_scale_Q14>>1] = $conv112; $78 = $psPLC; $prevGain_Q16 = ((($78)) + 72|0); $79 = $psDecCtrl$addr; $Gains_Q16 = ((($79)) + 16|0); $80 = $psDec$addr; $nb_subfr114 = ((($80)) + 2324|0); $81 = HEAP32[$nb_subfr114>>2]|0; $sub115 = (($81) - 2)|0; $arrayidx116 = (($Gains_Q16) + ($sub115<<2)|0); ;HEAP32[$prevGain_Q16>>2]=HEAP32[$arrayidx116>>2]|0;HEAP32[$prevGain_Q16+4>>2]=HEAP32[$arrayidx116+4>>2]|0; $82 = $psDec$addr; $subfr_length117 = ((($82)) + 2332|0); $83 = HEAP32[$subfr_length117>>2]|0; $84 = $psPLC; $subfr_length118 = ((($84)) + 88|0); HEAP32[$subfr_length118>>2] = $83; $85 = $psDec$addr; $nb_subfr119 = ((($85)) + 2324|0); $86 = HEAP32[$nb_subfr119>>2]|0; $87 = $psPLC; $nb_subfr120 = ((($87)) + 84|0); HEAP32[$nb_subfr120>>2] = $86; STACKTOP = sp;return; } function _silk_PLC_energy($energy1,$shift1,$energy2,$shift2,$exc_Q14,$prevGain_Q10,$subfr_length,$nb_subfr) { $energy1 = $energy1|0; $shift1 = $shift1|0; $energy2 = $energy2|0; $shift2 = $shift2|0; $exc_Q14 = $exc_Q14|0; $prevGain_Q10 = $prevGain_Q10|0; $subfr_length = $subfr_length|0; $nb_subfr = $nb_subfr|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; var $add = 0, $add$ptr = 0, $add101 = 0, $add104 = 0, $add12 = 0, $add19 = 0, $add20 = 0, $add23 = 0, $add27 = 0, $add30 = 0, $add34 = 0, $add37 = 0, $add44 = 0, $add47 = 0, $add5 = 0, $add55 = 0, $add56 = 0, $add59 = 0, $add63 = 0, $add66 = 0; var $add72 = 0, $add75 = 0, $add82 = 0, $add85 = 0, $add9 = 0, $add93 = 0, $add94 = 0, $add97 = 0, $and = 0, $and49 = 0, $and87 = 0, $arrayidx = 0, $arrayidx109 = 0, $arrayidx113 = 0, $arrayidx13 = 0, $arrayidx14 = 0, $arrayidx24 = 0, $arrayidx25 = 0, $arrayidx38 = 0, $arrayidx40 = 0; var $arrayidx48 = 0, $arrayidx50 = 0, $arrayidx6 = 0, $arrayidx60 = 0, $arrayidx61 = 0, $arrayidx76 = 0, $arrayidx78 = 0, $arrayidx86 = 0, $arrayidx88 = 0, $arrayidx98 = 0, $arrayidx99 = 0, $cmp = 0, $cmp2 = 0, $cmp32 = 0, $cmp68 = 0, $cond107 = 0, $conv = 0, $conv108 = 0, $conv15 = 0, $conv16 = 0; var $conv41 = 0, $conv42 = 0, $conv51 = 0, $conv52 = 0, $conv7 = 0, $conv79 = 0, $conv80 = 0, $conv89 = 0, $conv90 = 0, $energy1$addr = 0, $energy2$addr = 0, $exc_Q14$addr = 0, $exc_buf_ptr = 0, $i = 0, $inc = 0, $inc111 = 0, $k = 0, $mul = 0, $mul103 = 0, $mul11 = 0; var $mul17 = 0, $mul22 = 0, $mul29 = 0, $mul36 = 0, $mul4 = 0, $mul43 = 0, $mul46 = 0, $mul53 = 0, $mul58 = 0, $mul65 = 0, $mul74 = 0, $mul8 = 0, $mul81 = 0, $mul84 = 0, $mul91 = 0, $mul96 = 0, $nb_subfr$addr = 0, $prevGain_Q10$addr = 0, $saved_stack = 0, $shift1$addr = 0; var $shift2$addr = 0, $shr = 0, $shr100 = 0, $shr102 = 0, $shr105 = 0, $shr18 = 0, $shr26 = 0, $shr28 = 0, $shr31 = 0, $shr39 = 0, $shr54 = 0, $shr62 = 0, $shr64 = 0, $shr67 = 0, $shr77 = 0, $shr92 = 0, $sub = 0, $sub10 = 0, $sub21 = 0, $sub35 = 0; var $sub45 = 0, $sub57 = 0, $sub73 = 0, $sub83 = 0, $sub95 = 0, $subfr_length$addr = 0, $vla = 0, $vla$alloca_mul = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $energy1$addr = $energy1; $shift1$addr = $shift1; $energy2$addr = $energy2; $shift2$addr = $shift2; $exc_Q14$addr = $exc_Q14; $prevGain_Q10$addr = $prevGain_Q10; $subfr_length$addr = $subfr_length; $nb_subfr$addr = $nb_subfr; $0 = $subfr_length$addr; $mul = $0<<1; $1 = (_llvm_stacksave()|0); $saved_stack = $1; $vla$alloca_mul = $mul<<1; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $exc_buf_ptr = $vla; $k = 0; while(1) { $2 = $k; $cmp = ($2|0)<(2); if (!($cmp)) { break; } $i = 0; while(1) { $3 = $i; $4 = $subfr_length$addr; $cmp2 = ($3|0)<($4|0); if (!($cmp2)) { break; } $5 = $exc_Q14$addr; $6 = $i; $7 = $k; $8 = $nb_subfr$addr; $add = (($7) + ($8))|0; $sub = (($add) - 2)|0; $9 = $subfr_length$addr; $mul4 = Math_imul($sub, $9)|0; $add5 = (($6) + ($mul4))|0; $arrayidx = (($5) + ($add5<<2)|0); $10 = HEAP32[$arrayidx>>2]|0; $shr = $10 >> 16; $11 = $prevGain_Q10$addr; $12 = $k; $arrayidx6 = (($11) + ($12<<2)|0); $13 = HEAP32[$arrayidx6>>2]|0; $conv = $13&65535; $conv7 = $conv << 16 >> 16; $mul8 = Math_imul($shr, $conv7)|0; $14 = $exc_Q14$addr; $15 = $i; $16 = $k; $17 = $nb_subfr$addr; $add9 = (($16) + ($17))|0; $sub10 = (($add9) - 2)|0; $18 = $subfr_length$addr; $mul11 = Math_imul($sub10, $18)|0; $add12 = (($15) + ($mul11))|0; $arrayidx13 = (($14) + ($add12<<2)|0); $19 = HEAP32[$arrayidx13>>2]|0; $and = $19 & 65535; $20 = $prevGain_Q10$addr; $21 = $k; $arrayidx14 = (($20) + ($21<<2)|0); $22 = HEAP32[$arrayidx14>>2]|0; $conv15 = $22&65535; $conv16 = $conv15 << 16 >> 16; $mul17 = Math_imul($and, $conv16)|0; $shr18 = $mul17 >> 16; $add19 = (($mul8) + ($shr18))|0; $23 = $exc_Q14$addr; $24 = $i; $25 = $k; $26 = $nb_subfr$addr; $add20 = (($25) + ($26))|0; $sub21 = (($add20) - 2)|0; $27 = $subfr_length$addr; $mul22 = Math_imul($sub21, $27)|0; $add23 = (($24) + ($mul22))|0; $arrayidx24 = (($23) + ($add23<<2)|0); $28 = HEAP32[$arrayidx24>>2]|0; $29 = $prevGain_Q10$addr; $30 = $k; $arrayidx25 = (($29) + ($30<<2)|0); $31 = HEAP32[$arrayidx25>>2]|0; $shr26 = $31 >> 15; $add27 = (($shr26) + 1)|0; $shr28 = $add27 >> 1; $mul29 = Math_imul($28, $shr28)|0; $add30 = (($add19) + ($mul29))|0; $shr31 = $add30 >> 8; $cmp32 = ($shr31|0)>(32767); if ($cmp32) { $cond107 = 32767; } else { $32 = $exc_Q14$addr; $33 = $i; $34 = $k; $35 = $nb_subfr$addr; $add34 = (($34) + ($35))|0; $sub35 = (($add34) - 2)|0; $36 = $subfr_length$addr; $mul36 = Math_imul($sub35, $36)|0; $add37 = (($33) + ($mul36))|0; $arrayidx38 = (($32) + ($add37<<2)|0); $37 = HEAP32[$arrayidx38>>2]|0; $shr39 = $37 >> 16; $38 = $prevGain_Q10$addr; $39 = $k; $arrayidx40 = (($38) + ($39<<2)|0); $40 = HEAP32[$arrayidx40>>2]|0; $conv41 = $40&65535; $conv42 = $conv41 << 16 >> 16; $mul43 = Math_imul($shr39, $conv42)|0; $41 = $exc_Q14$addr; $42 = $i; $43 = $k; $44 = $nb_subfr$addr; $add44 = (($43) + ($44))|0; $sub45 = (($add44) - 2)|0; $45 = $subfr_length$addr; $mul46 = Math_imul($sub45, $45)|0; $add47 = (($42) + ($mul46))|0; $arrayidx48 = (($41) + ($add47<<2)|0); $46 = HEAP32[$arrayidx48>>2]|0; $and49 = $46 & 65535; $47 = $prevGain_Q10$addr; $48 = $k; $arrayidx50 = (($47) + ($48<<2)|0); $49 = HEAP32[$arrayidx50>>2]|0; $conv51 = $49&65535; $conv52 = $conv51 << 16 >> 16; $mul53 = Math_imul($and49, $conv52)|0; $shr54 = $mul53 >> 16; $add55 = (($mul43) + ($shr54))|0; $50 = $exc_Q14$addr; $51 = $i; $52 = $k; $53 = $nb_subfr$addr; $add56 = (($52) + ($53))|0; $sub57 = (($add56) - 2)|0; $54 = $subfr_length$addr; $mul58 = Math_imul($sub57, $54)|0; $add59 = (($51) + ($mul58))|0; $arrayidx60 = (($50) + ($add59<<2)|0); $55 = HEAP32[$arrayidx60>>2]|0; $56 = $prevGain_Q10$addr; $57 = $k; $arrayidx61 = (($56) + ($57<<2)|0); $58 = HEAP32[$arrayidx61>>2]|0; $shr62 = $58 >> 15; $add63 = (($shr62) + 1)|0; $shr64 = $add63 >> 1; $mul65 = Math_imul($55, $shr64)|0; $add66 = (($add55) + ($mul65))|0; $shr67 = $add66 >> 8; $cmp68 = ($shr67|0)<(-32768); if ($cmp68) { $cond107 = -32768; } else { $59 = $exc_Q14$addr; $60 = $i; $61 = $k; $62 = $nb_subfr$addr; $add72 = (($61) + ($62))|0; $sub73 = (($add72) - 2)|0; $63 = $subfr_length$addr; $mul74 = Math_imul($sub73, $63)|0; $add75 = (($60) + ($mul74))|0; $arrayidx76 = (($59) + ($add75<<2)|0); $64 = HEAP32[$arrayidx76>>2]|0; $shr77 = $64 >> 16; $65 = $prevGain_Q10$addr; $66 = $k; $arrayidx78 = (($65) + ($66<<2)|0); $67 = HEAP32[$arrayidx78>>2]|0; $conv79 = $67&65535; $conv80 = $conv79 << 16 >> 16; $mul81 = Math_imul($shr77, $conv80)|0; $68 = $exc_Q14$addr; $69 = $i; $70 = $k; $71 = $nb_subfr$addr; $add82 = (($70) + ($71))|0; $sub83 = (($add82) - 2)|0; $72 = $subfr_length$addr; $mul84 = Math_imul($sub83, $72)|0; $add85 = (($69) + ($mul84))|0; $arrayidx86 = (($68) + ($add85<<2)|0); $73 = HEAP32[$arrayidx86>>2]|0; $and87 = $73 & 65535; $74 = $prevGain_Q10$addr; $75 = $k; $arrayidx88 = (($74) + ($75<<2)|0); $76 = HEAP32[$arrayidx88>>2]|0; $conv89 = $76&65535; $conv90 = $conv89 << 16 >> 16; $mul91 = Math_imul($and87, $conv90)|0; $shr92 = $mul91 >> 16; $add93 = (($mul81) + ($shr92))|0; $77 = $exc_Q14$addr; $78 = $i; $79 = $k; $80 = $nb_subfr$addr; $add94 = (($79) + ($80))|0; $sub95 = (($add94) - 2)|0; $81 = $subfr_length$addr; $mul96 = Math_imul($sub95, $81)|0; $add97 = (($78) + ($mul96))|0; $arrayidx98 = (($77) + ($add97<<2)|0); $82 = HEAP32[$arrayidx98>>2]|0; $83 = $prevGain_Q10$addr; $84 = $k; $arrayidx99 = (($83) + ($84<<2)|0); $85 = HEAP32[$arrayidx99>>2]|0; $shr100 = $85 >> 15; $add101 = (($shr100) + 1)|0; $shr102 = $add101 >> 1; $mul103 = Math_imul($82, $shr102)|0; $add104 = (($add93) + ($mul103))|0; $shr105 = $add104 >> 8; $cond107 = $shr105; } } $conv108 = $cond107&65535; $86 = $exc_buf_ptr; $87 = $i; $arrayidx109 = (($86) + ($87<<1)|0); HEAP16[$arrayidx109>>1] = $conv108; $88 = $i; $inc = (($88) + 1)|0; $i = $inc; } $89 = $subfr_length$addr; $90 = $exc_buf_ptr; $add$ptr = (($90) + ($89<<1)|0); $exc_buf_ptr = $add$ptr; $91 = $k; $inc111 = (($91) + 1)|0; $k = $inc111; } $92 = $energy1$addr; $93 = $shift1$addr; $94 = $subfr_length$addr; _silk_sum_sqr_shift($92,$93,$vla,$94); $95 = $energy2$addr; $96 = $shift2$addr; $97 = $subfr_length$addr; $arrayidx113 = (($vla) + ($97<<1)|0); $98 = $subfr_length$addr; _silk_sum_sqr_shift($95,$96,$arrayidx113,$98); $99 = $saved_stack; _llvm_stackrestore(($99|0)); STACKTOP = sp;return; } function _silk_max_int_433($a,$b) { $a = $a|0; $b = $b|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $a$addr = 0, $b$addr = 0, $cmp = 0, $cond = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $a$addr = $a; $b$addr = $b; $0 = $a$addr; $1 = $b$addr; $cmp = ($0|0)>($1|0); $2 = $a$addr; $3 = $b$addr; $cond = $cmp ? $2 : $3; STACKTOP = sp;return ($cond|0); } function _silk_min_int_434($a,$b) { $a = $a|0; $b = $b|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $a$addr = 0, $b$addr = 0, $cmp = 0, $cond = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $a$addr = $a; $b$addr = $b; $0 = $a$addr; $1 = $b$addr; $cmp = ($0|0)<($1|0); $2 = $a$addr; $3 = $b$addr; $cond = $cmp ? $2 : $3; STACKTOP = sp;return ($cond|0); } function _silk_max_16($a,$b) { $a = $a|0; $b = $b|0; var $$sink = 0, $0 = 0, $1 = 0, $2 = 0, $3 = 0, $a$addr = 0, $b$addr = 0, $cmp = 0, $conv = 0, $conv1 = 0, $conv4 = 0, $conv5 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $a$addr = $a; $b$addr = $b; $0 = $a$addr; $conv = $0 << 16 >> 16; $1 = $b$addr; $conv1 = $1 << 16 >> 16; $cmp = ($conv|0)>($conv1|0); $2 = $b$addr; $3 = $a$addr; $$sink = $cmp ? $3 : $2; $conv4 = $$sink << 16 >> 16; $conv5 = $conv4&65535; STACKTOP = sp;return ($conv5|0); } function _silk_min_32_435($a,$b) { $a = $a|0; $b = $b|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $a$addr = 0, $b$addr = 0, $cmp = 0, $cond = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $a$addr = $a; $b$addr = $b; $0 = $a$addr; $1 = $b$addr; $cmp = ($0|0)<($1|0); $2 = $a$addr; $3 = $b$addr; $cond = $cmp ? $2 : $3; STACKTOP = sp;return ($cond|0); } function _silk_max_32($a,$b) { $a = $a|0; $b = $b|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $a$addr = 0, $b$addr = 0, $cmp = 0, $cond = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $a$addr = $a; $b$addr = $b; $0 = $a$addr; $1 = $b$addr; $cmp = ($0|0)>($1|0); $2 = $a$addr; $3 = $b$addr; $cond = $cmp ? $2 : $3; STACKTOP = sp;return ($cond|0); } function _silk_INVERSE32_varQ_436($b32,$Qres) { $b32 = $b32|0; $Qres = $Qres|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $Qres$addr = 0, $add = 0; var $add20 = 0, $add21 = 0, $add23 = 0, $add26 = 0, $and = 0, $and15 = 0, $b32$addr = 0, $b32_inv = 0, $b32_nrm = 0, $b_headrm = 0, $call = 0, $cmp = 0, $cmp29 = 0, $cmp35 = 0, $cmp40 = 0, $cmp48 = 0, $cmp61 = 0, $cmp69 = 0, $cmp83 = 0, $cond = 0; var $cond80 = 0, $conv = 0, $conv12 = 0, $conv13 = 0, $conv16 = 0, $conv17 = 0, $conv4 = 0, $conv5 = 0, $conv6 = 0, $div = 0, $err_Q32 = 0, $lshift = 0, $mul = 0, $mul14 = 0, $mul18 = 0, $mul25 = 0, $mul7 = 0, $result = 0, $retval = 0, $shl = 0; var $shl10 = 0, $shl2 = 0, $shl82 = 0, $shr = 0, $shr11 = 0, $shr19 = 0, $shr22 = 0, $shr24 = 0, $shr3 = 0, $shr32 = 0, $shr34 = 0, $shr39 = 0, $shr44 = 0, $shr47 = 0, $shr52 = 0, $shr60 = 0, $shr65 = 0, $shr68 = 0, $shr73 = 0, $shr8 = 0; var $shr86 = 0, $sub = 0, $sub1 = 0, $sub27 = 0, $sub28 = 0, $sub31 = 0, $sub33 = 0, $sub38 = 0, $sub43 = 0, $sub46 = 0, $sub51 = 0, $sub64 = 0, $sub67 = 0, $sub72 = 0, $sub81 = 0, $sub9 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $b32$addr = $b32; $Qres$addr = $Qres; $0 = $b32$addr; $cmp = ($0|0)>(0); $1 = $b32$addr; $sub = (0 - ($1))|0; $cond = $cmp ? $1 : $sub; $call = (_silk_CLZ32_437($cond)|0); $sub1 = (($call) - 1)|0; $b_headrm = $sub1; $2 = $b32$addr; $3 = $b_headrm; $shl = $2 << $3; $b32_nrm = $shl; $4 = $b32_nrm; $shr = $4 >> 16; $div = (536870911 / ($shr|0))&-1; $b32_inv = $div; $5 = $b32_inv; $shl2 = $5 << 16; $result = $shl2; $6 = $b32_nrm; $shr3 = $6 >> 16; $7 = $b32_inv; $conv = $7&65535; $conv4 = $conv << 16 >> 16; $mul = Math_imul($shr3, $conv4)|0; $8 = $b32_nrm; $and = $8 & 65535; $9 = $b32_inv; $conv5 = $9&65535; $conv6 = $conv5 << 16 >> 16; $mul7 = Math_imul($and, $conv6)|0; $shr8 = $mul7 >> 16; $add = (($mul) + ($shr8))|0; $sub9 = (536870912 - ($add))|0; $shl10 = $sub9 << 3; $err_Q32 = $shl10; $10 = $result; $11 = $err_Q32; $shr11 = $11 >> 16; $12 = $b32_inv; $conv12 = $12&65535; $conv13 = $conv12 << 16 >> 16; $mul14 = Math_imul($shr11, $conv13)|0; $13 = $err_Q32; $and15 = $13 & 65535; $14 = $b32_inv; $conv16 = $14&65535; $conv17 = $conv16 << 16 >> 16; $mul18 = Math_imul($and15, $conv17)|0; $shr19 = $mul18 >> 16; $add20 = (($mul14) + ($shr19))|0; $add21 = (($10) + ($add20))|0; $15 = $err_Q32; $16 = $b32_inv; $shr22 = $16 >> 15; $add23 = (($shr22) + 1)|0; $shr24 = $add23 >> 1; $mul25 = Math_imul($15, $shr24)|0; $add26 = (($add21) + ($mul25))|0; $result = $add26; $17 = $b_headrm; $sub27 = (61 - ($17))|0; $18 = $Qres$addr; $sub28 = (($sub27) - ($18))|0; $lshift = $sub28; $19 = $lshift; $cmp29 = ($19|0)<=(0); $20 = $lshift; if (!($cmp29)) { $cmp83 = ($20|0)<(32); if ($cmp83) { $35 = $result; $36 = $lshift; $shr86 = $35 >> $36; $retval = $shr86; $37 = $retval; STACKTOP = sp;return ($37|0); } else { $retval = 0; $37 = $retval; STACKTOP = sp;return ($37|0); } } $sub31 = (0 - ($20))|0; $shr32 = -2147483648 >> $sub31; $21 = $lshift; $sub33 = (0 - ($21))|0; $shr34 = 2147483647 >> $sub33; $cmp35 = ($shr32|0)>($shr34|0); $22 = $result; $23 = $lshift; $sub38 = (0 - ($23))|0; do { if ($cmp35) { $shr39 = -2147483648 >> $sub38; $cmp40 = ($22|0)>($shr39|0); if ($cmp40) { $24 = $lshift; $sub43 = (0 - ($24))|0; $shr44 = -2147483648 >> $sub43; $cond80 = $shr44; break; } $25 = $result; $26 = $lshift; $sub46 = (0 - ($26))|0; $shr47 = 2147483647 >> $sub46; $cmp48 = ($25|0)<($shr47|0); if ($cmp48) { $27 = $lshift; $sub51 = (0 - ($27))|0; $shr52 = 2147483647 >> $sub51; $cond80 = $shr52; break; } else { $28 = $result; $cond80 = $28; break; } } else { $shr60 = 2147483647 >> $sub38; $cmp61 = ($22|0)>($shr60|0); if ($cmp61) { $29 = $lshift; $sub64 = (0 - ($29))|0; $shr65 = 2147483647 >> $sub64; $cond80 = $shr65; break; } $30 = $result; $31 = $lshift; $sub67 = (0 - ($31))|0; $shr68 = -2147483648 >> $sub67; $cmp69 = ($30|0)<($shr68|0); if ($cmp69) { $32 = $lshift; $sub72 = (0 - ($32))|0; $shr73 = -2147483648 >> $sub72; $cond80 = $shr73; break; } else { $33 = $result; $cond80 = $33; break; } } } while(0); $34 = $lshift; $sub81 = (0 - ($34))|0; $shl82 = $cond80 << $sub81; $retval = $shl82; $37 = $retval; STACKTOP = sp;return ($37|0); } function _silk_CLZ32_437($in32) { $in32 = $in32|0; var $0 = 0, $1 = 0, $2 = 0, $cond = 0, $in32$addr = 0, $sub = 0, $sub1 = 0, $tobool = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $in32$addr = $in32; $0 = $in32$addr; $tobool = ($0|0)!=(0); if (!($tobool)) { $cond = 32; STACKTOP = sp;return ($cond|0); } $1 = $in32$addr; $2 = (Math_clz32(($1|0))|0); $sub = (32 - ($2))|0; $sub1 = (32 - ($sub))|0; $cond = $sub1; STACKTOP = sp;return ($cond|0); } function _silk_PLC_glue_frames($psDec,$frame,$length) { $psDec = $psDec|0; $frame = $frame|0; $length = $length|0; var $$sink = 0, $$sink1 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0; var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0; var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0; var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $7 = 0, $8 = 0, $9 = 0, $LZ = 0, $add = 0, $add43 = 0, $and = 0, $arrayidx = 0, $arrayidx37 = 0, $arrayidx42 = 0, $call = 0, $call26 = 0, $call30 = 0, $cmp = 0, $cmp12 = 0, $cmp19 = 0; var $cmp29 = 0, $cmp35 = 0, $cmp44 = 0, $conc_energy = 0, $conc_energy18 = 0, $conc_energy21 = 0, $conc_energy23 = 0, $conc_energy24 = 0, $conc_energy28 = 0, $conc_energy7 = 0, $conc_energy9 = 0, $conc_energy_shift = 0, $conc_energy_shift11 = 0, $conc_energy_shift14 = 0, $conc_energy_shift5 = 0, $conc_energy_shift8 = 0, $cond = 0, $conv = 0, $conv38 = 0, $conv41 = 0; var $div = 0, $div33 = 0, $energy = 0, $energy_shift = 0, $frac_Q24 = 0, $frame$addr = 0, $gain_Q16 = 0, $i = 0, $inc = 0, $last_frame_lost2 = 0, $last_frame_lost50 = 0, $length$addr = 0, $lossCnt = 0, $mul = 0, $mul39 = 0, $psDec$addr = 0, $psPLC = 0, $sPLC = 0, $sPLC1 = 0, $shl = 0; var $shl31 = 0, $shl34 = 0, $shr = 0, $shr16 = 0, $shr27 = 0, $shr36 = 0, $shr40 = 0, $slope_Q16 = 0, $sub = 0, $sub15 = 0, $sub22 = 0, $sub25 = 0, $sub32 = 0, $tobool = 0, $tobool3 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $energy_shift = sp + 24|0; $energy = sp + 20|0; $psDec$addr = $psDec; $frame$addr = $frame; $length$addr = $length; $0 = $psDec$addr; $sPLC = ((($0)) + 4172|0); $psPLC = $sPLC; $1 = $psDec$addr; $lossCnt = ((($1)) + 4160|0); $2 = HEAP32[$lossCnt>>2]|0; $tobool = ($2|0)!=(0); if ($tobool) { $3 = $psPLC; $conc_energy = ((($3)) + 60|0); $4 = $psPLC; $conc_energy_shift = ((($4)) + 64|0); $5 = $frame$addr; $6 = $length$addr; _silk_sum_sqr_shift($conc_energy,$conc_energy_shift,$5,$6); $7 = $psPLC; $$sink = 1;$$sink1 = $7; $last_frame_lost50 = ((($$sink1)) + 48|0); HEAP32[$last_frame_lost50>>2] = $$sink; STACKTOP = sp;return; } $8 = $psDec$addr; $sPLC1 = ((($8)) + 4172|0); $last_frame_lost2 = ((($sPLC1)) + 48|0); $9 = HEAP32[$last_frame_lost2>>2]|0; $tobool3 = ($9|0)!=(0); L5: do { if ($tobool3) { $10 = $frame$addr; $11 = $length$addr; _silk_sum_sqr_shift($energy,$energy_shift,$10,$11); $12 = HEAP32[$energy_shift>>2]|0; $13 = $psPLC; $conc_energy_shift5 = ((($13)) + 64|0); $14 = HEAP32[$conc_energy_shift5>>2]|0; $cmp = ($12|0)>($14|0); if ($cmp) { $15 = $psPLC; $conc_energy7 = ((($15)) + 60|0); $16 = HEAP32[$conc_energy7>>2]|0; $17 = HEAP32[$energy_shift>>2]|0; $18 = $psPLC; $conc_energy_shift8 = ((($18)) + 64|0); $19 = HEAP32[$conc_energy_shift8>>2]|0; $sub = (($17) - ($19))|0; $shr = $16 >> $sub; $20 = $psPLC; $conc_energy9 = ((($20)) + 60|0); HEAP32[$conc_energy9>>2] = $shr; } else { $21 = HEAP32[$energy_shift>>2]|0; $22 = $psPLC; $conc_energy_shift11 = ((($22)) + 64|0); $23 = HEAP32[$conc_energy_shift11>>2]|0; $cmp12 = ($21|0)<($23|0); if ($cmp12) { $24 = HEAP32[$energy>>2]|0; $25 = $psPLC; $conc_energy_shift14 = ((($25)) + 64|0); $26 = HEAP32[$conc_energy_shift14>>2]|0; $27 = HEAP32[$energy_shift>>2]|0; $sub15 = (($26) - ($27))|0; $shr16 = $24 >> $sub15; HEAP32[$energy>>2] = $shr16; } } $28 = HEAP32[$energy>>2]|0; $29 = $psPLC; $conc_energy18 = ((($29)) + 60|0); $30 = HEAP32[$conc_energy18>>2]|0; $cmp19 = ($28|0)>($30|0); if ($cmp19) { $31 = $psPLC; $conc_energy21 = ((($31)) + 60|0); $32 = HEAP32[$conc_energy21>>2]|0; $call = (_silk_CLZ32_437($32)|0); $LZ = $call; $33 = $LZ; $sub22 = (($33) - 1)|0; $LZ = $sub22; $34 = $psPLC; $conc_energy23 = ((($34)) + 60|0); $35 = HEAP32[$conc_energy23>>2]|0; $36 = $LZ; $shl = $35 << $36; $37 = $psPLC; $conc_energy24 = ((($37)) + 60|0); HEAP32[$conc_energy24>>2] = $shl; $38 = HEAP32[$energy>>2]|0; $39 = $LZ; $sub25 = (24 - ($39))|0; $call26 = (_silk_max_32($sub25,0)|0); $shr27 = $38 >> $call26; HEAP32[$energy>>2] = $shr27; $40 = $psPLC; $conc_energy28 = ((($40)) + 60|0); $41 = HEAP32[$conc_energy28>>2]|0; $42 = HEAP32[$energy>>2]|0; $cmp29 = ($42|0)>(1); $43 = HEAP32[$energy>>2]|0; $cond = $cmp29 ? $43 : 1; $div = (($41|0) / ($cond|0))&-1; $frac_Q24 = $div; $44 = $frac_Q24; $call30 = (_silk_SQRT_APPROX_440($44)|0); $shl31 = $call30 << 4; $gain_Q16 = $shl31; $45 = $gain_Q16; $sub32 = (65536 - ($45))|0; $46 = $length$addr; $div33 = (($sub32|0) / ($46|0))&-1; $slope_Q16 = $div33; $47 = $slope_Q16; $shl34 = $47 << 2; $slope_Q16 = $shl34; $i = 0; while(1) { $48 = $i; $49 = $length$addr; $cmp35 = ($48|0)<($49|0); if (!($cmp35)) { break L5; } $50 = $gain_Q16; $shr36 = $50 >> 16; $51 = $frame$addr; $52 = $i; $arrayidx = (($51) + ($52<<1)|0); $53 = HEAP16[$arrayidx>>1]|0; $conv = $53 << 16 >> 16; $mul = Math_imul($shr36, $conv)|0; $54 = $gain_Q16; $and = $54 & 65535; $55 = $frame$addr; $56 = $i; $arrayidx37 = (($55) + ($56<<1)|0); $57 = HEAP16[$arrayidx37>>1]|0; $conv38 = $57 << 16 >> 16; $mul39 = Math_imul($and, $conv38)|0; $shr40 = $mul39 >> 16; $add = (($mul) + ($shr40))|0; $conv41 = $add&65535; $58 = $frame$addr; $59 = $i; $arrayidx42 = (($58) + ($59<<1)|0); HEAP16[$arrayidx42>>1] = $conv41; $60 = $slope_Q16; $61 = $gain_Q16; $add43 = (($61) + ($60))|0; $gain_Q16 = $add43; $62 = $gain_Q16; $cmp44 = ($62|0)>(65536); if ($cmp44) { break L5; } $63 = $i; $inc = (($63) + 1)|0; $i = $inc; } } } } while(0); $64 = $psPLC; $$sink = 0;$$sink1 = $64; $last_frame_lost50 = ((($$sink1)) + 48|0); HEAP32[$last_frame_lost50>>2] = $$sink; STACKTOP = sp;return; } function _silk_SQRT_APPROX_440($x) { $x = $x|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $add17 = 0, $and = 0, $and9 = 0, $cmp = 0, $conv = 0, $conv10 = 0, $conv11 = 0; var $conv13 = 0, $conv14 = 0, $conv5 = 0, $conv6 = 0, $conv7 = 0, $frac_Q7 = 0, $lz = 0, $mul = 0, $mul12 = 0, $mul15 = 0, $mul8 = 0, $retval = 0, $shr = 0, $shr16 = 0, $shr3 = 0, $shr4 = 0, $tobool = 0, $x$addr = 0, $y = 0, label = 0; var sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $lz = sp + 4|0; $frac_Q7 = sp; $x$addr = $x; $0 = $x$addr; $cmp = ($0|0)<=(0); if ($cmp) { $retval = 0; $11 = $retval; STACKTOP = sp;return ($11|0); } $1 = $x$addr; _silk_CLZ_FRAC_441($1,$lz,$frac_Q7); $2 = HEAP32[$lz>>2]|0; $and = $2 & 1; $tobool = ($and|0)!=(0); if ($tobool) { $y = 32768; } else { $y = 46214; } $3 = HEAP32[$lz>>2]|0; $shr = $3 >> 1; $4 = $y; $shr3 = $4 >> $shr; $y = $shr3; $5 = $y; $6 = $y; $shr4 = $6 >> 16; $7 = HEAP32[$frac_Q7>>2]|0; $conv = $7&65535; $conv5 = $conv << 16 >> 16; $mul = ($conv5*213)|0; $conv6 = $mul&65535; $conv7 = $conv6 << 16 >> 16; $mul8 = Math_imul($shr4, $conv7)|0; $8 = $y; $and9 = $8 & 65535; $9 = HEAP32[$frac_Q7>>2]|0; $conv10 = $9&65535; $conv11 = $conv10 << 16 >> 16; $mul12 = ($conv11*213)|0; $conv13 = $mul12&65535; $conv14 = $conv13 << 16 >> 16; $mul15 = Math_imul($and9, $conv14)|0; $shr16 = $mul15 >> 16; $add = (($mul8) + ($shr16))|0; $add17 = (($5) + ($add))|0; $y = $add17; $10 = $y; $retval = $10; $11 = $retval; STACKTOP = sp;return ($11|0); } function _silk_CLZ_FRAC_441($in,$lz,$frac_Q7) { $in = $in|0; $lz = $lz|0; $frac_Q7 = $frac_Q7|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $and = 0, $call = 0, $call1 = 0, $frac_Q7$addr = 0, $in$addr = 0, $lz$addr = 0, $lzeros = 0, $sub = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $in$addr = $in; $lz$addr = $lz; $frac_Q7$addr = $frac_Q7; $0 = $in$addr; $call = (_silk_CLZ32_437($0)|0); $lzeros = $call; $1 = $lzeros; $2 = $lz$addr; HEAP32[$2>>2] = $1; $3 = $in$addr; $4 = $lzeros; $sub = (24 - ($4))|0; $call1 = (_silk_ROR32_442($3,$sub)|0); $and = $call1 & 127; $5 = $frac_Q7$addr; HEAP32[$5>>2] = $and; STACKTOP = sp;return; } function _silk_ROR32_442($a32,$rot) { $a32 = $a32|0; $rot = $rot|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $a32$addr = 0, $cmp = 0, $cmp1 = 0, $m = 0, $or = 0, $or8 = 0; var $r = 0, $retval = 0, $rot$addr = 0, $shl = 0, $shl6 = 0, $shr = 0, $shr7 = 0, $sub = 0, $sub3 = 0, $sub5 = 0, $x = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $a32$addr = $a32; $rot$addr = $rot; $0 = $a32$addr; $x = $0; $1 = $rot$addr; $r = $1; $2 = $rot$addr; $sub = (0 - ($2))|0; $m = $sub; $3 = $rot$addr; $cmp = ($3|0)==(0); if ($cmp) { $4 = $a32$addr; $retval = $4; $13 = $retval; STACKTOP = sp;return ($13|0); } $5 = $rot$addr; $cmp1 = ($5|0)<(0); $6 = $x; if ($cmp1) { $7 = $m; $shl = $6 << $7; $8 = $x; $9 = $m; $sub3 = (32 - ($9))|0; $shr = $8 >>> $sub3; $or = $shl | $shr; $retval = $or; $13 = $retval; STACKTOP = sp;return ($13|0); } else { $10 = $r; $sub5 = (32 - ($10))|0; $shl6 = $6 << $sub5; $11 = $x; $12 = $r; $shr7 = $11 >>> $12; $or8 = $shl6 | $shr7; $retval = $or8; $13 = $retval; STACKTOP = sp;return ($13|0); } return (0)|0; } function _silk_VAD_Init($psSilk_VAD) { $psSilk_VAD = $psSilk_VAD|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; var $7 = 0, $8 = 0, $9 = 0, $NL = 0, $NL7 = 0, $NoiseLevelBias = 0, $NoiseLevelBias4 = 0, $NrgRatioSmth_Q8 = 0, $add = 0, $arrayidx = 0, $arrayidx10 = 0, $arrayidx17 = 0, $arrayidx5 = 0, $arrayidx6 = 0, $arrayidx8 = 0, $b = 0, $call = 0, $cmp = 0, $cmp15 = 0, $cmp2 = 0; var $counter = 0, $div = 0, $div9 = 0, $inc = 0, $inc12 = 0, $inc19 = 0, $inv_NL = 0, $mul = 0, $psSilk_VAD$addr = 0, $ret = 0, dest = 0, label = 0, sp = 0, stop = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $psSilk_VAD$addr = $psSilk_VAD; $ret = 0; $0 = $psSilk_VAD$addr; dest=$0; stop=dest+112|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); $b = 0; while(1) { $1 = $b; $cmp = ($1|0)<(4); if (!($cmp)) { break; } $2 = $b; $add = (($2) + 1)|0; $div = (50 / ($add|0))&-1; $call = (_silk_max_32_449($div,1)|0); $3 = $psSilk_VAD$addr; $NoiseLevelBias = ((($3)) + 92|0); $4 = $b; $arrayidx = (($NoiseLevelBias) + ($4<<2)|0); HEAP32[$arrayidx>>2] = $call; $5 = $b; $inc = (($5) + 1)|0; $b = $inc; } $b = 0; while(1) { $6 = $b; $cmp2 = ($6|0)<(4); $7 = $psSilk_VAD$addr; if (!($cmp2)) { break; } $NoiseLevelBias4 = ((($7)) + 92|0); $8 = $b; $arrayidx5 = (($NoiseLevelBias4) + ($8<<2)|0); $9 = HEAP32[$arrayidx5>>2]|0; $mul = ($9*100)|0; $10 = $psSilk_VAD$addr; $NL = ((($10)) + 60|0); $11 = $b; $arrayidx6 = (($NL) + ($11<<2)|0); HEAP32[$arrayidx6>>2] = $mul; $12 = $psSilk_VAD$addr; $NL7 = ((($12)) + 60|0); $13 = $b; $arrayidx8 = (($NL7) + ($13<<2)|0); $14 = HEAP32[$arrayidx8>>2]|0; $div9 = (2147483647 / ($14|0))&-1; $15 = $psSilk_VAD$addr; $inv_NL = ((($15)) + 76|0); $16 = $b; $arrayidx10 = (($inv_NL) + ($16<<2)|0); HEAP32[$arrayidx10>>2] = $div9; $17 = $b; $inc12 = (($17) + 1)|0; $b = $inc12; } $counter = ((($7)) + 108|0); HEAP32[$counter>>2] = 15; $b = 0; while(1) { $18 = $b; $cmp15 = ($18|0)<(4); if (!($cmp15)) { break; } $19 = $psSilk_VAD$addr; $NrgRatioSmth_Q8 = ((($19)) + 40|0); $20 = $b; $arrayidx17 = (($NrgRatioSmth_Q8) + ($20<<2)|0); HEAP32[$arrayidx17>>2] = 25600; $21 = $b; $inc19 = (($21) + 1)|0; $b = $inc19; } $22 = $ret; STACKTOP = sp;return ($22|0); } function _silk_max_32_449($a,$b) { $a = $a|0; $b = $b|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $a$addr = 0, $b$addr = 0, $cmp = 0, $cond = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $a$addr = $a; $b$addr = $b; $0 = $a$addr; $1 = $b$addr; $cmp = ($0|0)>($1|0); $2 = $a$addr; $3 = $b$addr; $cond = $cmp ? $2 : $3; STACKTOP = sp;return ($cond|0); } function _silk_VAD_GetSA_Q8_c($psEncC,$pIn) { $psEncC = $psEncC|0; $pIn = $pIn|0; var $$sink = 0, $$sink1 = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0; var $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0; var $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0; var $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0; var $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0; var $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $AnaState1 = 0, $AnaState2 = 0; var $HPstate = 0, $HPstate52 = 0, $HPstateTmp = 0, $NL = 0, $NL130 = 0, $NL136 = 0, $NL213 = 0, $NrgRatioSmth_Q8 = 0, $NrgRatioSmth_Q8297 = 0, $NrgRatioSmth_Q8305 = 0, $NrgRatioSmth_Q8315 = 0, $NrgRatioSmth_Q8317 = 0, $NrgToNoiseRatio_Q8 = 0, $SA_Q15 = 0, $SNR_Q7 = 0, $X_offset = 0, $Xnrg = 0, $XnrgSubfr = 0, $XnrgSubfr108 = 0, $add = 0; var $add10 = 0, $add100 = 0, $add104 = 0, $add13 = 0, $add132 = 0, $add139 = 0, $add151 = 0, $add168 = 0, $add181 = 0, $add182 = 0, $add201 = 0, $add211 = 0, $add218 = 0, $add239 = 0, $add244 = 0, $add250 = 0, $add264 = 0, $add277 = 0, $add282 = 0, $add313 = 0; var $add314 = 0, $add7 = 0, $add72 = 0, $add73 = 0, $add81 = 0, $add87 = 0, $add89 = 0, $add93 = 0, $and = 0, $and125 = 0, $and163 = 0, $and176 = 0, $and245 = 0, $and259 = 0, $and272 = 0, $and308 = 0, $and94 = 0, $arrayidx103 = 0, $arrayidx109 = 0, $arrayidx11 = 0; var $arrayidx118 = 0, $arrayidx119 = 0, $arrayidx12 = 0, $arrayidx124 = 0, $arrayidx129 = 0, $arrayidx131 = 0, $arrayidx137 = 0, $arrayidx141 = 0, $arrayidx143 = 0, $arrayidx15 = 0, $arrayidx16 = 0, $arrayidx170 = 0, $arrayidx175 = 0, $arrayidx184 = 0, $arrayidx19 = 0, $arrayidx20 = 0, $arrayidx212 = 0, $arrayidx214 = 0, $arrayidx22 = 0, $arrayidx23 = 0; var $arrayidx24 = 0, $arrayidx28 = 0, $arrayidx295 = 0, $arrayidx296 = 0, $arrayidx298 = 0, $arrayidx30 = 0, $arrayidx304 = 0, $arrayidx306 = 0, $arrayidx316 = 0, $arrayidx318 = 0, $arrayidx325 = 0, $arrayidx34 = 0, $arrayidx39 = 0, $arrayidx41 = 0, $arrayidx43 = 0, $arrayidx5 = 0, $arrayidx6 = 0, $arrayidx61 = 0, $arrayidx62 = 0, $arrayidx71 = 0; var $arrayidx74 = 0, $arrayidx8 = 0, $arrayidx86 = 0, $arrayidx88 = 0, $arrayidx9 = 0, $arrayidx98 = 0, $b = 0, $call = 0, $call144 = 0, $call155 = 0, $call161 = 0, $call190 = 0, $call203 = 0, $call204 = 0, $call238 = 0, $call254 = 0, $call319 = 0, $call324 = 0, $cmp = 0, $cmp115 = 0; var $cmp121 = 0, $cmp126 = 0, $cmp152 = 0, $cmp208 = 0, $cmp224 = 0, $cmp229 = 0, $cmp234 = 0, $cmp286 = 0, $cmp292 = 0, $cmp54 = 0, $cmp64 = 0, $cmp68 = 0, $cmp84 = 0, $cond = 0, $cond102 = 0, $cond102$sink = 0, $conv = 0, $conv146 = 0, $conv147 = 0, $conv148 = 0; var $conv149 = 0, $conv158 = 0, $conv159 = 0, $conv164 = 0, $conv165 = 0, $conv172 = 0, $conv173 = 0, $conv177 = 0, $conv178 = 0, $conv192 = 0, $conv193 = 0, $conv194 = 0, $conv195 = 0, $conv197 = 0, $conv198 = 0, $conv241 = 0, $conv242 = 0, $conv246 = 0, $conv247 = 0, $conv256 = 0; var $conv257 = 0, $conv26 = 0, $conv260 = 0, $conv261 = 0, $conv265 = 0, $conv266 = 0, $conv269 = 0, $conv270 = 0, $conv273 = 0, $conv274 = 0, $conv278 = 0, $conv279 = 0, $conv301 = 0, $conv302 = 0, $conv309 = 0, $conv310 = 0, $conv35 = 0, $conv37 = 0, $conv42 = 0, $conv44 = 0; var $conv46 = 0, $conv47 = 0, $conv49 = 0, $conv51 = 0, $conv75 = 0, $conv77 = 0, $conv78 = 0, $conv79 = 0, $conv80 = 0, $dec = 0, $dec_subframe_length = 0, $dec_subframe_offset = 0, $decimated_framelength = 0, $decimated_framelength1 = 0, $decimated_framelength2 = 0, $div = 0, $div140 = 0, $div140$sink = 0, $div189 = 0, $frame_length = 0; var $frame_length1 = 0, $frame_length17 = 0, $frame_length222 = 0, $frame_length283 = 0, $frame_length3 = 0, $frame_length57 = 0, $fs_kHz = 0, $fs_kHz284 = 0, $i = 0, $inc = 0, $inc106 = 0, $inc111 = 0, $inc187 = 0, $inc220 = 0, $inc327 = 0, $input_quality_bands_Q15 = 0, $input_tilt = 0, $input_tilt_Q15 = 0, $mul = 0, $mul150 = 0; var $mul160 = 0, $mul166 = 0, $mul174 = 0, $mul179 = 0, $mul191 = 0, $mul196 = 0, $mul199 = 0, $mul217 = 0, $mul223 = 0, $mul243 = 0, $mul248 = 0, $mul258 = 0, $mul262 = 0, $mul267 = 0, $mul271 = 0, $mul275 = 0, $mul280 = 0, $mul285 = 0, $mul303 = 0, $mul311 = 0; var $mul321 = 0, $pIn$addr = 0, $pSNR_dB_Q7 = 0, $psEncC$addr = 0, $psSilk_VAD = 0, $ret = 0, $s = 0, $sVAD = 0, $saved_stack = 0, $shl = 0, $shl156 = 0, $shl162 = 0, $shl206 = 0, $shl237 = 0, $shr = 0, $shr138 = 0, $shr157 = 0, $shr167 = 0, $shr171 = 0, $shr180 = 0; var $shr2 = 0, $shr200 = 0, $shr216 = 0, $shr227 = 0, $shr232 = 0, $shr240 = 0, $shr249 = 0, $shr25 = 0, $shr253 = 0, $shr255 = 0, $shr263 = 0, $shr268 = 0, $shr276 = 0, $shr281 = 0, $shr289 = 0, $shr300 = 0, $shr312 = 0, $shr323 = 0, $shr36 = 0, $shr4 = 0; var $shr59 = 0, $shr60 = 0, $shr76 = 0, $shr92 = 0, $shr99 = 0, $smooth_coef_Q16 = 0, $speech_activity_Q8 = 0, $speech_nrg = 0, $sub = 0, $sub120 = 0, $sub145 = 0, $sub202 = 0, $sub205 = 0, $sub215 = 0, $sub27 = 0, $sub29 = 0, $sub299 = 0, $sub307 = 0, $sub31 = 0, $sub320 = 0; var $sub322 = 0, $sub33 = 0, $sub38 = 0, $sub40 = 0, $sub45 = 0, $sub50 = 0, $sub58 = 0, $sumSquared = 0, $tobool = 0, $tobool95 = 0, $vla = 0, $vla$alloca_mul = 0, $x_tmp = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 144|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(144|0); $Xnrg = sp + 56|0; $NrgToNoiseRatio_Q8 = sp + 40|0; $X_offset = sp + 16|0; $psEncC$addr = $psEncC; $pIn$addr = $pIn; $ret = 0; $0 = $psEncC$addr; $sVAD = ((($0)) + 32|0); $psSilk_VAD = $sVAD; $1 = $psEncC$addr; $frame_length = ((($1)) + 4580|0); $2 = HEAP32[$frame_length>>2]|0; $shr = $2 >> 1; $decimated_framelength1 = $shr; $3 = $psEncC$addr; $frame_length1 = ((($3)) + 4580|0); $4 = HEAP32[$frame_length1>>2]|0; $shr2 = $4 >> 2; $decimated_framelength2 = $shr2; $5 = $psEncC$addr; $frame_length3 = ((($5)) + 4580|0); $6 = HEAP32[$frame_length3>>2]|0; $shr4 = $6 >> 3; $decimated_framelength = $shr4; HEAP32[$X_offset>>2] = 0; $7 = $decimated_framelength; $8 = $decimated_framelength2; $add = (($7) + ($8))|0; $arrayidx5 = ((($X_offset)) + 4|0); HEAP32[$arrayidx5>>2] = $add; $arrayidx6 = ((($X_offset)) + 4|0); $9 = HEAP32[$arrayidx6>>2]|0; $10 = $decimated_framelength; $add7 = (($9) + ($10))|0; $arrayidx8 = ((($X_offset)) + 8|0); HEAP32[$arrayidx8>>2] = $add7; $arrayidx9 = ((($X_offset)) + 8|0); $11 = HEAP32[$arrayidx9>>2]|0; $12 = $decimated_framelength2; $add10 = (($11) + ($12))|0; $arrayidx11 = ((($X_offset)) + 12|0); HEAP32[$arrayidx11>>2] = $add10; $arrayidx12 = ((($X_offset)) + 12|0); $13 = HEAP32[$arrayidx12>>2]|0; $14 = $decimated_framelength1; $add13 = (($13) + ($14))|0; $15 = (_llvm_stacksave()|0); $saved_stack = $15; $vla$alloca_mul = $add13<<1; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $16 = $pIn$addr; $17 = $psSilk_VAD; $arrayidx15 = ((($X_offset)) + 12|0); $18 = HEAP32[$arrayidx15>>2]|0; $arrayidx16 = (($vla) + ($18<<1)|0); $19 = $psEncC$addr; $frame_length17 = ((($19)) + 4580|0); $20 = HEAP32[$frame_length17>>2]|0; _silk_ana_filt_bank_1($16,$17,$vla,$arrayidx16,$20); $21 = $psSilk_VAD; $AnaState1 = ((($21)) + 8|0); $arrayidx19 = ((($X_offset)) + 8|0); $22 = HEAP32[$arrayidx19>>2]|0; $arrayidx20 = (($vla) + ($22<<1)|0); $23 = $decimated_framelength1; _silk_ana_filt_bank_1($vla,$AnaState1,$vla,$arrayidx20,$23); $24 = $psSilk_VAD; $AnaState2 = ((($24)) + 16|0); $arrayidx22 = ((($X_offset)) + 4|0); $25 = HEAP32[$arrayidx22>>2]|0; $arrayidx23 = (($vla) + ($25<<1)|0); $26 = $decimated_framelength2; _silk_ana_filt_bank_1($vla,$AnaState2,$vla,$arrayidx23,$26); $27 = $decimated_framelength; $sub = (($27) - 1)|0; $arrayidx24 = (($vla) + ($sub<<1)|0); $28 = HEAP16[$arrayidx24>>1]|0; $conv = $28 << 16 >> 16; $shr25 = $conv >> 1; $conv26 = $shr25&65535; $29 = $decimated_framelength; $sub27 = (($29) - 1)|0; $arrayidx28 = (($vla) + ($sub27<<1)|0); HEAP16[$arrayidx28>>1] = $conv26; $30 = $decimated_framelength; $sub29 = (($30) - 1)|0; $arrayidx30 = (($vla) + ($sub29<<1)|0); $31 = HEAP16[$arrayidx30>>1]|0; $HPstateTmp = $31; $32 = $decimated_framelength; $sub31 = (($32) - 1)|0; $i = $sub31; while(1) { $33 = $i; $cmp = ($33|0)>(0); if (!($cmp)) { break; } $34 = $i; $sub33 = (($34) - 1)|0; $arrayidx34 = (($vla) + ($sub33<<1)|0); $35 = HEAP16[$arrayidx34>>1]|0; $conv35 = $35 << 16 >> 16; $shr36 = $conv35 >> 1; $conv37 = $shr36&65535; $36 = $i; $sub38 = (($36) - 1)|0; $arrayidx39 = (($vla) + ($sub38<<1)|0); HEAP16[$arrayidx39>>1] = $conv37; $37 = $i; $sub40 = (($37) - 1)|0; $arrayidx41 = (($vla) + ($sub40<<1)|0); $38 = HEAP16[$arrayidx41>>1]|0; $conv42 = $38 << 16 >> 16; $39 = $i; $arrayidx43 = (($vla) + ($39<<1)|0); $40 = HEAP16[$arrayidx43>>1]|0; $conv44 = $40 << 16 >> 16; $sub45 = (($conv44) - ($conv42))|0; $conv46 = $sub45&65535; HEAP16[$arrayidx43>>1] = $conv46; $41 = $i; $dec = (($41) + -1)|0; $i = $dec; } $42 = $psSilk_VAD; $HPstate = ((($42)) + 56|0); $43 = HEAP16[$HPstate>>1]|0; $conv47 = $43 << 16 >> 16; $44 = HEAP16[$vla>>1]|0; $conv49 = $44 << 16 >> 16; $sub50 = (($conv49) - ($conv47))|0; $conv51 = $sub50&65535; HEAP16[$vla>>1] = $conv51; $45 = $HPstateTmp; $46 = $psSilk_VAD; $HPstate52 = ((($46)) + 56|0); HEAP16[$HPstate52>>1] = $45; $b = 0; while(1) { $47 = $b; $cmp54 = ($47|0)<(4); if (!($cmp54)) { break; } $48 = $psEncC$addr; $frame_length57 = ((($48)) + 4580|0); $49 = HEAP32[$frame_length57>>2]|0; $50 = $b; $sub58 = (4 - ($50))|0; $call = (_silk_min_int_452($sub58,3)|0); $shr59 = $49 >> $call; $decimated_framelength = $shr59; $51 = $decimated_framelength; $shr60 = $51 >> 2; $dec_subframe_length = $shr60; $dec_subframe_offset = 0; $52 = $psSilk_VAD; $XnrgSubfr = ((($52)) + 24|0); $53 = $b; $arrayidx61 = (($XnrgSubfr) + ($53<<2)|0); $54 = HEAP32[$arrayidx61>>2]|0; $55 = $b; $arrayidx62 = (($Xnrg) + ($55<<2)|0); HEAP32[$arrayidx62>>2] = $54; $s = 0; while(1) { $56 = $s; $cmp64 = ($56|0)<(4); if (!($cmp64)) { break; } $sumSquared = 0; $i = 0; while(1) { $57 = $i; $58 = $dec_subframe_length; $cmp68 = ($57|0)<($58|0); if (!($cmp68)) { break; } $59 = $b; $arrayidx71 = (($X_offset) + ($59<<2)|0); $60 = HEAP32[$arrayidx71>>2]|0; $61 = $i; $add72 = (($60) + ($61))|0; $62 = $dec_subframe_offset; $add73 = (($add72) + ($62))|0; $arrayidx74 = (($vla) + ($add73<<1)|0); $63 = HEAP16[$arrayidx74>>1]|0; $conv75 = $63 << 16 >> 16; $shr76 = $conv75 >> 3; $x_tmp = $shr76; $64 = $sumSquared; $65 = $x_tmp; $conv77 = $65&65535; $conv78 = $conv77 << 16 >> 16; $66 = $x_tmp; $conv79 = $66&65535; $conv80 = $conv79 << 16 >> 16; $mul = Math_imul($conv78, $conv80)|0; $add81 = (($64) + ($mul))|0; $sumSquared = $add81; $67 = $i; $inc = (($67) + 1)|0; $i = $inc; } $68 = $s; $cmp84 = ($68|0)<(3); $69 = $b; $arrayidx86 = (($Xnrg) + ($69<<2)|0); $70 = HEAP32[$arrayidx86>>2]|0; $71 = $sumSquared; if ($cmp84) { $add87 = (($70) + ($71))|0; $and = $add87 & -2147483648; $tobool = ($and|0)!=(0); if ($tobool) { $cond = 2147483647; } else { $72 = $b; $arrayidx88 = (($Xnrg) + ($72<<2)|0); $73 = HEAP32[$arrayidx88>>2]|0; $74 = $sumSquared; $add89 = (($73) + ($74))|0; $cond = $add89; } $75 = $b; $$sink = $75;$cond102$sink = $cond; } else { $shr92 = $71 >> 1; $add93 = (($70) + ($shr92))|0; $and94 = $add93 & -2147483648; $tobool95 = ($and94|0)!=(0); if ($tobool95) { $cond102 = 2147483647; } else { $76 = $b; $arrayidx98 = (($Xnrg) + ($76<<2)|0); $77 = HEAP32[$arrayidx98>>2]|0; $78 = $sumSquared; $shr99 = $78 >> 1; $add100 = (($77) + ($shr99))|0; $cond102 = $add100; } $79 = $b; $$sink = $79;$cond102$sink = $cond102; } $arrayidx103 = (($Xnrg) + ($$sink<<2)|0); HEAP32[$arrayidx103>>2] = $cond102$sink; $80 = $dec_subframe_length; $81 = $dec_subframe_offset; $add104 = (($81) + ($80))|0; $dec_subframe_offset = $add104; $82 = $s; $inc106 = (($82) + 1)|0; $s = $inc106; } $83 = $sumSquared; $84 = $psSilk_VAD; $XnrgSubfr108 = ((($84)) + 24|0); $85 = $b; $arrayidx109 = (($XnrgSubfr108) + ($85<<2)|0); HEAP32[$arrayidx109>>2] = $83; $86 = $b; $inc111 = (($86) + 1)|0; $b = $inc111; } $87 = $psSilk_VAD; _silk_VAD_GetNoiseLevels($Xnrg,$87); $sumSquared = 0; $input_tilt = 0; $b = 0; while(1) { $88 = $b; $cmp115 = ($88|0)<(4); if (!($cmp115)) { break; } $89 = $b; $arrayidx118 = (($Xnrg) + ($89<<2)|0); $90 = HEAP32[$arrayidx118>>2]|0; $91 = $psSilk_VAD; $NL = ((($91)) + 60|0); $92 = $b; $arrayidx119 = (($NL) + ($92<<2)|0); $93 = HEAP32[$arrayidx119>>2]|0; $sub120 = (($90) - ($93))|0; $speech_nrg = $sub120; $94 = $speech_nrg; $cmp121 = ($94|0)>(0); $95 = $b; if ($cmp121) { $arrayidx124 = (($Xnrg) + ($95<<2)|0); $96 = HEAP32[$arrayidx124>>2]|0; $and125 = $96 & -8388608; $cmp126 = ($and125|0)==(0); $97 = $b; $arrayidx129 = (($Xnrg) + ($97<<2)|0); $98 = HEAP32[$arrayidx129>>2]|0; if ($cmp126) { $shl = $98 << 8; $99 = $psSilk_VAD; $NL130 = ((($99)) + 60|0); $100 = $b; $arrayidx131 = (($NL130) + ($100<<2)|0); $101 = HEAP32[$arrayidx131>>2]|0; $add132 = (($101) + 1)|0; $div = (($shl|0) / ($add132|0))&-1; $102 = $b; $$sink1 = $102;$div140$sink = $div; } else { $103 = $psSilk_VAD; $NL136 = ((($103)) + 60|0); $104 = $b; $arrayidx137 = (($NL136) + ($104<<2)|0); $105 = HEAP32[$arrayidx137>>2]|0; $shr138 = $105 >> 8; $add139 = (($shr138) + 1)|0; $div140 = (($98|0) / ($add139|0))&-1; $106 = $b; $$sink1 = $106;$div140$sink = $div140; } $arrayidx141 = (($NrgToNoiseRatio_Q8) + ($$sink1<<2)|0); HEAP32[$arrayidx141>>2] = $div140$sink; $107 = $b; $arrayidx143 = (($NrgToNoiseRatio_Q8) + ($107<<2)|0); $108 = HEAP32[$arrayidx143>>2]|0; $call144 = (_silk_lin2log($108)|0); $sub145 = (($call144) - 1024)|0; $SNR_Q7 = $sub145; $109 = $sumSquared; $110 = $SNR_Q7; $conv146 = $110&65535; $conv147 = $conv146 << 16 >> 16; $111 = $SNR_Q7; $conv148 = $111&65535; $conv149 = $conv148 << 16 >> 16; $mul150 = Math_imul($conv147, $conv149)|0; $add151 = (($109) + ($mul150))|0; $sumSquared = $add151; $112 = $speech_nrg; $cmp152 = ($112|0)<(1048576); if ($cmp152) { $113 = $speech_nrg; $call155 = (_silk_SQRT_APPROX_455($113)|0); $shl156 = $call155 << 6; $shr157 = $shl156 >> 16; $114 = $SNR_Q7; $conv158 = $114&65535; $conv159 = $conv158 << 16 >> 16; $mul160 = Math_imul($shr157, $conv159)|0; $115 = $speech_nrg; $call161 = (_silk_SQRT_APPROX_455($115)|0); $shl162 = $call161 << 6; $and163 = $shl162 & 65535; $116 = $SNR_Q7; $conv164 = $116&65535; $conv165 = $conv164 << 16 >> 16; $mul166 = Math_imul($and163, $conv165)|0; $shr167 = $mul166 >> 16; $add168 = (($mul160) + ($shr167))|0; $SNR_Q7 = $add168; } $117 = $input_tilt; $118 = $b; $arrayidx170 = (20804 + ($118<<2)|0); $119 = HEAP32[$arrayidx170>>2]|0; $shr171 = $119 >> 16; $120 = $SNR_Q7; $conv172 = $120&65535; $conv173 = $conv172 << 16 >> 16; $mul174 = Math_imul($shr171, $conv173)|0; $121 = $b; $arrayidx175 = (20804 + ($121<<2)|0); $122 = HEAP32[$arrayidx175>>2]|0; $and176 = $122 & 65535; $123 = $SNR_Q7; $conv177 = $123&65535; $conv178 = $conv177 << 16 >> 16; $mul179 = Math_imul($and176, $conv178)|0; $shr180 = $mul179 >> 16; $add181 = (($mul174) + ($shr180))|0; $add182 = (($117) + ($add181))|0; $input_tilt = $add182; } else { $arrayidx184 = (($NrgToNoiseRatio_Q8) + ($95<<2)|0); HEAP32[$arrayidx184>>2] = 256; } $124 = $b; $inc187 = (($124) + 1)|0; $b = $inc187; } $125 = $sumSquared; $div189 = (($125|0) / 4)&-1; $sumSquared = $div189; $126 = $sumSquared; $call190 = (_silk_SQRT_APPROX_455($126)|0); $mul191 = ($call190*3)|0; $conv192 = $mul191&65535; $conv193 = $conv192 << 16 >> 16; $pSNR_dB_Q7 = $conv193; $127 = $pSNR_dB_Q7; $conv194 = $127&65535; $conv195 = $conv194 << 16 >> 16; $mul196 = 0; $128 = $pSNR_dB_Q7; $conv197 = $128&65535; $conv198 = $conv197 << 16 >> 16; $mul199 = ($conv198*45000)|0; $shr200 = $mul199 >> 16; $add201 = (($mul196) + ($shr200))|0; $sub202 = (($add201) - 128)|0; $call203 = (_silk_sigm_Q15($sub202)|0); $SA_Q15 = $call203; $129 = $input_tilt; $call204 = (_silk_sigm_Q15($129)|0); $sub205 = (($call204) - 16384)|0; $shl206 = $sub205 << 1; $130 = $psEncC$addr; $input_tilt_Q15 = ((($130)) + 4708|0); HEAP32[$input_tilt_Q15>>2] = $shl206; $speech_nrg = 0; $b = 0; while(1) { $131 = $b; $cmp208 = ($131|0)<(4); if (!($cmp208)) { break; } $132 = $b; $add211 = (($132) + 1)|0; $133 = $b; $arrayidx212 = (($Xnrg) + ($133<<2)|0); $134 = HEAP32[$arrayidx212>>2]|0; $135 = $psSilk_VAD; $NL213 = ((($135)) + 60|0); $136 = $b; $arrayidx214 = (($NL213) + ($136<<2)|0); $137 = HEAP32[$arrayidx214>>2]|0; $sub215 = (($134) - ($137))|0; $shr216 = $sub215 >> 4; $mul217 = Math_imul($add211, $shr216)|0; $138 = $speech_nrg; $add218 = (($138) + ($mul217))|0; $speech_nrg = $add218; $139 = $b; $inc220 = (($139) + 1)|0; $b = $inc220; } $140 = $psEncC$addr; $frame_length222 = ((($140)) + 4580|0); $141 = HEAP32[$frame_length222>>2]|0; $142 = $psEncC$addr; $fs_kHz = ((($142)) + 4572|0); $143 = HEAP32[$fs_kHz>>2]|0; $mul223 = ($143*20)|0; $cmp224 = ($141|0)==($mul223|0); if ($cmp224) { $144 = $speech_nrg; $shr227 = $144 >> 1; $speech_nrg = $shr227; } $145 = $speech_nrg; $cmp229 = ($145|0)<=(0); if ($cmp229) { $146 = $SA_Q15; $shr232 = $146 >> 1; $SA_Q15 = $shr232; } else { $147 = $speech_nrg; $cmp234 = ($147|0)<(16384); if ($cmp234) { $148 = $speech_nrg; $shl237 = $148 << 16; $speech_nrg = $shl237; $149 = $speech_nrg; $call238 = (_silk_SQRT_APPROX_455($149)|0); $speech_nrg = $call238; $150 = $speech_nrg; $add239 = (32768 + ($150))|0; $shr240 = $add239 >> 16; $151 = $SA_Q15; $conv241 = $151&65535; $conv242 = $conv241 << 16 >> 16; $mul243 = Math_imul($shr240, $conv242)|0; $152 = $speech_nrg; $add244 = (32768 + ($152))|0; $and245 = $add244 & 65535; $153 = $SA_Q15; $conv246 = $153&65535; $conv247 = $conv246 << 16 >> 16; $mul248 = Math_imul($and245, $conv247)|0; $shr249 = $mul248 >> 16; $add250 = (($mul243) + ($shr249))|0; $SA_Q15 = $add250; } } $154 = $SA_Q15; $shr253 = $154 >> 7; $call254 = (_silk_min_int_452($shr253,255)|0); $155 = $psEncC$addr; $speech_activity_Q8 = ((($155)) + 4528|0); HEAP32[$speech_activity_Q8>>2] = $call254; $156 = $SA_Q15; $shr255 = $156 >> 16; $157 = $SA_Q15; $conv256 = $157&65535; $conv257 = $conv256 << 16 >> 16; $mul258 = Math_imul($shr255, $conv257)|0; $158 = $SA_Q15; $and259 = $158 & 65535; $159 = $SA_Q15; $conv260 = $159&65535; $conv261 = $conv260 << 16 >> 16; $mul262 = Math_imul($and259, $conv261)|0; $shr263 = $mul262 >> 16; $add264 = (($mul258) + ($shr263))|0; $conv265 = $add264&65535; $conv266 = $conv265 << 16 >> 16; $mul267 = 0; $160 = $SA_Q15; $shr268 = $160 >> 16; $161 = $SA_Q15; $conv269 = $161&65535; $conv270 = $conv269 << 16 >> 16; $mul271 = Math_imul($shr268, $conv270)|0; $162 = $SA_Q15; $and272 = $162 & 65535; $163 = $SA_Q15; $conv273 = $163&65535; $conv274 = $conv273 << 16 >> 16; $mul275 = Math_imul($and272, $conv274)|0; $shr276 = $mul275 >> 16; $add277 = (($mul271) + ($shr276))|0; $conv278 = $add277&65535; $conv279 = $conv278 << 16 >> 16; $mul280 = $conv279<<12; $shr281 = $mul280 >> 16; $add282 = (($mul267) + ($shr281))|0; $smooth_coef_Q16 = $add282; $164 = $psEncC$addr; $frame_length283 = ((($164)) + 4580|0); $165 = HEAP32[$frame_length283>>2]|0; $166 = $psEncC$addr; $fs_kHz284 = ((($166)) + 4572|0); $167 = HEAP32[$fs_kHz284>>2]|0; $mul285 = ($167*10)|0; $cmp286 = ($165|0)==($mul285|0); if ($cmp286) { $168 = $smooth_coef_Q16; $shr289 = $168 >> 1; $smooth_coef_Q16 = $shr289; } $b = 0; while(1) { $169 = $b; $cmp292 = ($169|0)<(4); if (!($cmp292)) { break; } $170 = $psSilk_VAD; $NrgRatioSmth_Q8 = ((($170)) + 40|0); $171 = $b; $arrayidx295 = (($NrgRatioSmth_Q8) + ($171<<2)|0); $172 = HEAP32[$arrayidx295>>2]|0; $173 = $b; $arrayidx296 = (($NrgToNoiseRatio_Q8) + ($173<<2)|0); $174 = HEAP32[$arrayidx296>>2]|0; $175 = $psSilk_VAD; $NrgRatioSmth_Q8297 = ((($175)) + 40|0); $176 = $b; $arrayidx298 = (($NrgRatioSmth_Q8297) + ($176<<2)|0); $177 = HEAP32[$arrayidx298>>2]|0; $sub299 = (($174) - ($177))|0; $shr300 = $sub299 >> 16; $178 = $smooth_coef_Q16; $conv301 = $178&65535; $conv302 = $conv301 << 16 >> 16; $mul303 = Math_imul($shr300, $conv302)|0; $179 = $b; $arrayidx304 = (($NrgToNoiseRatio_Q8) + ($179<<2)|0); $180 = HEAP32[$arrayidx304>>2]|0; $181 = $psSilk_VAD; $NrgRatioSmth_Q8305 = ((($181)) + 40|0); $182 = $b; $arrayidx306 = (($NrgRatioSmth_Q8305) + ($182<<2)|0); $183 = HEAP32[$arrayidx306>>2]|0; $sub307 = (($180) - ($183))|0; $and308 = $sub307 & 65535; $184 = $smooth_coef_Q16; $conv309 = $184&65535; $conv310 = $conv309 << 16 >> 16; $mul311 = Math_imul($and308, $conv310)|0; $shr312 = $mul311 >> 16; $add313 = (($mul303) + ($shr312))|0; $add314 = (($172) + ($add313))|0; $185 = $psSilk_VAD; $NrgRatioSmth_Q8315 = ((($185)) + 40|0); $186 = $b; $arrayidx316 = (($NrgRatioSmth_Q8315) + ($186<<2)|0); HEAP32[$arrayidx316>>2] = $add314; $187 = $psSilk_VAD; $NrgRatioSmth_Q8317 = ((($187)) + 40|0); $188 = $b; $arrayidx318 = (($NrgRatioSmth_Q8317) + ($188<<2)|0); $189 = HEAP32[$arrayidx318>>2]|0; $call319 = (_silk_lin2log($189)|0); $sub320 = (($call319) - 1024)|0; $mul321 = ($sub320*3)|0; $SNR_Q7 = $mul321; $190 = $SNR_Q7; $sub322 = (($190) - 2048)|0; $shr323 = $sub322 >> 4; $call324 = (_silk_sigm_Q15($shr323)|0); $191 = $psEncC$addr; $input_quality_bands_Q15 = ((($191)) + 4692|0); $192 = $b; $arrayidx325 = (($input_quality_bands_Q15) + ($192<<2)|0); HEAP32[$arrayidx325>>2] = $call324; $193 = $b; $inc327 = (($193) + 1)|0; $b = $inc327; } $194 = $ret; $195 = $saved_stack; _llvm_stackrestore(($195|0)); STACKTOP = sp;return ($194|0); } function _silk_min_int_452($a,$b) { $a = $a|0; $b = $b|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $a$addr = 0, $b$addr = 0, $cmp = 0, $cond = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $a$addr = $a; $b$addr = $b; $0 = $a$addr; $1 = $b$addr; $cmp = ($0|0)<($1|0); $2 = $a$addr; $3 = $b$addr; $cond = $cmp ? $2 : $3; STACKTOP = sp;return ($cond|0); } function _silk_VAD_GetNoiseLevels($pX,$psSilk_VAD) { $pX = $pX|0; $psSilk_VAD = $psSilk_VAD|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; var $63 = 0, $7 = 0, $8 = 0, $9 = 0, $NL = 0, $NL81 = 0, $NoiseLevelBias = 0, $NoiseLevelBias7 = 0, $add = 0, $add24 = 0, $add26 = 0, $add29 = 0, $add41 = 0, $add43 = 0, $add46 = 0, $add5 = 0, $add50 = 0, $add68 = 0, $add69 = 0, $add9 = 0; var $and = 0, $and19 = 0, $and36 = 0, $and47 = 0, $and63 = 0, $arrayidx = 0, $arrayidx3 = 0, $arrayidx4 = 0, $arrayidx53 = 0, $arrayidx55 = 0, $arrayidx6 = 0, $arrayidx61 = 0, $arrayidx71 = 0, $arrayidx73 = 0, $arrayidx8 = 0, $arrayidx82 = 0, $call = 0, $cmp = 0, $cmp11 = 0, $cmp14 = 0; var $cmp2 = 0, $cmp75 = 0, $coef = 0, $cond = 0, $cond80 = 0, $conv = 0, $conv18 = 0, $conv20 = 0, $conv21 = 0, $conv33 = 0, $conv34 = 0, $conv37 = 0, $conv38 = 0, $conv57 = 0, $conv58 = 0, $conv64 = 0, $conv65 = 0, $counter = 0, $counter1 = 0, $counter83 = 0; var $div = 0, $div10 = 0, $div74 = 0, $inc = 0, $inc84 = 0, $inv_NL = 0, $inv_NL54 = 0, $inv_NL60 = 0, $inv_NL70 = 0, $inv_NL72 = 0, $inv_nrg = 0, $k = 0, $min_coef = 0, $mul = 0, $mul22 = 0, $mul28 = 0, $mul31 = 0, $mul35 = 0, $mul39 = 0, $mul45 = 0; var $mul48 = 0, $mul59 = 0, $mul66 = 0, $nl = 0, $nrg = 0, $pX$addr = 0, $psSilk_VAD$addr = 0, $shl = 0, $shr = 0, $shr17 = 0, $shr23 = 0, $shr25 = 0, $shr27 = 0, $shr30 = 0, $shr32 = 0, $shr40 = 0, $shr42 = 0, $shr44 = 0, $shr49 = 0, $shr56 = 0; var $shr67 = 0, $sub = 0, $sub62 = 0, $tobool = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $pX$addr = $pX; $psSilk_VAD$addr = $psSilk_VAD; $0 = $psSilk_VAD$addr; $counter = ((($0)) + 108|0); $1 = HEAP32[$counter>>2]|0; $cmp = ($1|0)<(1000); if ($cmp) { $2 = $psSilk_VAD$addr; $counter1 = ((($2)) + 108|0); $3 = HEAP32[$counter1>>2]|0; $shr = $3 >> 4; $add = (($shr) + 1)|0; $div = (32767 / ($add|0))&-1; $min_coef = $div; } else { $min_coef = 0; } $k = 0; while(1) { $4 = $k; $cmp2 = ($4|0)<(4); $5 = $psSilk_VAD$addr; if (!($cmp2)) { break; } $NL = ((($5)) + 60|0); $6 = $k; $arrayidx = (($NL) + ($6<<2)|0); $7 = HEAP32[$arrayidx>>2]|0; $nl = $7; $8 = $pX$addr; $9 = $k; $arrayidx3 = (($8) + ($9<<2)|0); $10 = HEAP32[$arrayidx3>>2]|0; $11 = $psSilk_VAD$addr; $NoiseLevelBias = ((($11)) + 92|0); $12 = $k; $arrayidx4 = (($NoiseLevelBias) + ($12<<2)|0); $13 = HEAP32[$arrayidx4>>2]|0; $add5 = (($10) + ($13))|0; $and = $add5 & -2147483648; $tobool = ($and|0)!=(0); if ($tobool) { $cond = 2147483647; } else { $14 = $pX$addr; $15 = $k; $arrayidx6 = (($14) + ($15<<2)|0); $16 = HEAP32[$arrayidx6>>2]|0; $17 = $psSilk_VAD$addr; $NoiseLevelBias7 = ((($17)) + 92|0); $18 = $k; $arrayidx8 = (($NoiseLevelBias7) + ($18<<2)|0); $19 = HEAP32[$arrayidx8>>2]|0; $add9 = (($16) + ($19))|0; $cond = $add9; } $nrg = $cond; $20 = $nrg; $div10 = (2147483647 / ($20|0))&-1; $inv_nrg = $div10; $21 = $nrg; $22 = $nl; $shl = $22 << 3; $cmp11 = ($21|0)>($shl|0); do { if ($cmp11) { $coef = 128; } else { $23 = $nrg; $24 = $nl; $cmp14 = ($23|0)<($24|0); if ($cmp14) { $coef = 1024; break; } else { $25 = $inv_nrg; $shr17 = $25 >> 16; $26 = $nl; $conv = $26&65535; $conv18 = $conv << 16 >> 16; $mul = Math_imul($shr17, $conv18)|0; $27 = $inv_nrg; $and19 = $27 & 65535; $28 = $nl; $conv20 = $28&65535; $conv21 = $conv20 << 16 >> 16; $mul22 = Math_imul($and19, $conv21)|0; $shr23 = $mul22 >> 16; $add24 = (($mul) + ($shr23))|0; $29 = $inv_nrg; $30 = $nl; $shr25 = $30 >> 15; $add26 = (($shr25) + 1)|0; $shr27 = $add26 >> 1; $mul28 = Math_imul($29, $shr27)|0; $add29 = (($add24) + ($mul28))|0; $shr30 = $add29 >> 16; $mul31 = $shr30<<11; $31 = $inv_nrg; $shr32 = $31 >> 16; $32 = $nl; $conv33 = $32&65535; $conv34 = $conv33 << 16 >> 16; $mul35 = Math_imul($shr32, $conv34)|0; $33 = $inv_nrg; $and36 = $33 & 65535; $34 = $nl; $conv37 = $34&65535; $conv38 = $conv37 << 16 >> 16; $mul39 = Math_imul($and36, $conv38)|0; $shr40 = $mul39 >> 16; $add41 = (($mul35) + ($shr40))|0; $35 = $inv_nrg; $36 = $nl; $shr42 = $36 >> 15; $add43 = (($shr42) + 1)|0; $shr44 = $add43 >> 1; $mul45 = Math_imul($35, $shr44)|0; $add46 = (($add41) + ($mul45))|0; $and47 = $add46 & 65535; $mul48 = $and47<<11; $shr49 = $mul48 >> 16; $add50 = (($mul31) + ($shr49))|0; $coef = $add50; break; } } } while(0); $37 = $coef; $38 = $min_coef; $call = (_silk_max_int_460($37,$38)|0); $coef = $call; $39 = $psSilk_VAD$addr; $inv_NL = ((($39)) + 76|0); $40 = $k; $arrayidx53 = (($inv_NL) + ($40<<2)|0); $41 = HEAP32[$arrayidx53>>2]|0; $42 = $inv_nrg; $43 = $psSilk_VAD$addr; $inv_NL54 = ((($43)) + 76|0); $44 = $k; $arrayidx55 = (($inv_NL54) + ($44<<2)|0); $45 = HEAP32[$arrayidx55>>2]|0; $sub = (($42) - ($45))|0; $shr56 = $sub >> 16; $46 = $coef; $conv57 = $46&65535; $conv58 = $conv57 << 16 >> 16; $mul59 = Math_imul($shr56, $conv58)|0; $47 = $inv_nrg; $48 = $psSilk_VAD$addr; $inv_NL60 = ((($48)) + 76|0); $49 = $k; $arrayidx61 = (($inv_NL60) + ($49<<2)|0); $50 = HEAP32[$arrayidx61>>2]|0; $sub62 = (($47) - ($50))|0; $and63 = $sub62 & 65535; $51 = $coef; $conv64 = $51&65535; $conv65 = $conv64 << 16 >> 16; $mul66 = Math_imul($and63, $conv65)|0; $shr67 = $mul66 >> 16; $add68 = (($mul59) + ($shr67))|0; $add69 = (($41) + ($add68))|0; $52 = $psSilk_VAD$addr; $inv_NL70 = ((($52)) + 76|0); $53 = $k; $arrayidx71 = (($inv_NL70) + ($53<<2)|0); HEAP32[$arrayidx71>>2] = $add69; $54 = $psSilk_VAD$addr; $inv_NL72 = ((($54)) + 76|0); $55 = $k; $arrayidx73 = (($inv_NL72) + ($55<<2)|0); $56 = HEAP32[$arrayidx73>>2]|0; $div74 = (2147483647 / ($56|0))&-1; $nl = $div74; $57 = $nl; $cmp75 = ($57|0)<(16777215); $58 = $nl; $cond80 = $cmp75 ? $58 : 16777215; $nl = $cond80; $59 = $nl; $60 = $psSilk_VAD$addr; $NL81 = ((($60)) + 60|0); $61 = $k; $arrayidx82 = (($NL81) + ($61<<2)|0); HEAP32[$arrayidx82>>2] = $59; $62 = $k; $inc = (($62) + 1)|0; $k = $inc; } $counter83 = ((($5)) + 108|0); $63 = HEAP32[$counter83>>2]|0; $inc84 = (($63) + 1)|0; HEAP32[$counter83>>2] = $inc84; STACKTOP = sp;return; } function _silk_SQRT_APPROX_455($x) { $x = $x|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $add17 = 0, $and = 0, $and9 = 0, $cmp = 0, $conv = 0, $conv10 = 0, $conv11 = 0; var $conv13 = 0, $conv14 = 0, $conv5 = 0, $conv6 = 0, $conv7 = 0, $frac_Q7 = 0, $lz = 0, $mul = 0, $mul12 = 0, $mul15 = 0, $mul8 = 0, $retval = 0, $shr = 0, $shr16 = 0, $shr3 = 0, $shr4 = 0, $tobool = 0, $x$addr = 0, $y = 0, label = 0; var sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $lz = sp + 4|0; $frac_Q7 = sp; $x$addr = $x; $0 = $x$addr; $cmp = ($0|0)<=(0); if ($cmp) { $retval = 0; $11 = $retval; STACKTOP = sp;return ($11|0); } $1 = $x$addr; _silk_CLZ_FRAC_457($1,$lz,$frac_Q7); $2 = HEAP32[$lz>>2]|0; $and = $2 & 1; $tobool = ($and|0)!=(0); if ($tobool) { $y = 32768; } else { $y = 46214; } $3 = HEAP32[$lz>>2]|0; $shr = $3 >> 1; $4 = $y; $shr3 = $4 >> $shr; $y = $shr3; $5 = $y; $6 = $y; $shr4 = $6 >> 16; $7 = HEAP32[$frac_Q7>>2]|0; $conv = $7&65535; $conv5 = $conv << 16 >> 16; $mul = ($conv5*213)|0; $conv6 = $mul&65535; $conv7 = $conv6 << 16 >> 16; $mul8 = Math_imul($shr4, $conv7)|0; $8 = $y; $and9 = $8 & 65535; $9 = HEAP32[$frac_Q7>>2]|0; $conv10 = $9&65535; $conv11 = $conv10 << 16 >> 16; $mul12 = ($conv11*213)|0; $conv13 = $mul12&65535; $conv14 = $conv13 << 16 >> 16; $mul15 = Math_imul($and9, $conv14)|0; $shr16 = $mul15 >> 16; $add = (($mul8) + ($shr16))|0; $add17 = (($5) + ($add))|0; $y = $add17; $10 = $y; $retval = $10; $11 = $retval; STACKTOP = sp;return ($11|0); } function _silk_CLZ_FRAC_457($in,$lz,$frac_Q7) { $in = $in|0; $lz = $lz|0; $frac_Q7 = $frac_Q7|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $and = 0, $call = 0, $call1 = 0, $frac_Q7$addr = 0, $in$addr = 0, $lz$addr = 0, $lzeros = 0, $sub = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $in$addr = $in; $lz$addr = $lz; $frac_Q7$addr = $frac_Q7; $0 = $in$addr; $call = (_silk_CLZ32_458($0)|0); $lzeros = $call; $1 = $lzeros; $2 = $lz$addr; HEAP32[$2>>2] = $1; $3 = $in$addr; $4 = $lzeros; $sub = (24 - ($4))|0; $call1 = (_silk_ROR32_459($3,$sub)|0); $and = $call1 & 127; $5 = $frac_Q7$addr; HEAP32[$5>>2] = $and; STACKTOP = sp;return; } function _silk_CLZ32_458($in32) { $in32 = $in32|0; var $0 = 0, $1 = 0, $2 = 0, $cond = 0, $in32$addr = 0, $sub = 0, $sub1 = 0, $tobool = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $in32$addr = $in32; $0 = $in32$addr; $tobool = ($0|0)!=(0); if (!($tobool)) { $cond = 32; STACKTOP = sp;return ($cond|0); } $1 = $in32$addr; $2 = (Math_clz32(($1|0))|0); $sub = (32 - ($2))|0; $sub1 = (32 - ($sub))|0; $cond = $sub1; STACKTOP = sp;return ($cond|0); } function _silk_ROR32_459($a32,$rot) { $a32 = $a32|0; $rot = $rot|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $a32$addr = 0, $cmp = 0, $cmp1 = 0, $m = 0, $or = 0, $or8 = 0; var $r = 0, $retval = 0, $rot$addr = 0, $shl = 0, $shl6 = 0, $shr = 0, $shr7 = 0, $sub = 0, $sub3 = 0, $sub5 = 0, $x = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $a32$addr = $a32; $rot$addr = $rot; $0 = $a32$addr; $x = $0; $1 = $rot$addr; $r = $1; $2 = $rot$addr; $sub = (0 - ($2))|0; $m = $sub; $3 = $rot$addr; $cmp = ($3|0)==(0); if ($cmp) { $4 = $a32$addr; $retval = $4; $13 = $retval; STACKTOP = sp;return ($13|0); } $5 = $rot$addr; $cmp1 = ($5|0)<(0); $6 = $x; if ($cmp1) { $7 = $m; $shl = $6 << $7; $8 = $x; $9 = $m; $sub3 = (32 - ($9))|0; $shr = $8 >>> $sub3; $or = $shl | $shr; $retval = $or; $13 = $retval; STACKTOP = sp;return ($13|0); } else { $10 = $r; $sub5 = (32 - ($10))|0; $shl6 = $6 << $sub5; $11 = $x; $12 = $r; $shr7 = $11 >>> $12; $or8 = $shl6 | $shr7; $retval = $or8; $13 = $retval; STACKTOP = sp;return ($13|0); } return (0)|0; } function _silk_max_int_460($a,$b) { $a = $a|0; $b = $b|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $a$addr = 0, $b$addr = 0, $cmp = 0, $cond = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $a$addr = $a; $b$addr = $b; $0 = $a$addr; $1 = $b$addr; $cmp = ($0|0)>($1|0); $2 = $a$addr; $3 = $b$addr; $cond = $cmp ? $2 : $3; STACKTOP = sp;return ($cond|0); } function _silk_control_audio_bandwidth($psEncC,$encControl) { $psEncC = $psEncC|0; $encControl = $encControl|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $9 = 0, $API_fs_Hz = 0, $API_fs_Hz17 = 0, $API_fs_Hz7 = 0, $API_fs_Hz7$sink = 0, $API_fs_Hz8 = 0, $add = 0, $add116 = 0, $allow_bandwidth_switch = 0, $cmp = 0, $cmp109 = 0, $cmp11 = 0, $cmp128 = 0, $cmp14 = 0; var $cmp19 = 0, $cmp27 = 0, $cmp36 = 0, $cmp4 = 0, $cmp48 = 0, $cmp53 = 0, $cmp66 = 0, $cmp72 = 0, $cmp89 = 0, $cmp9 = 0, $cmp96 = 0, $cond25 = 0, $cond33 = 0, $cond68 = 0, $cond98 = 0, $conv = 0, $conv2 = 0, $conv44 = 0, $conv45 = 0, $conv85 = 0; var $conv86 = 0, $desiredInternal_fs_Hz = 0, $desiredInternal_fs_Hz47 = 0, $desiredInternal_fs_Hz6 = 0, $desiredInternal_fs_Hz88 = 0, $div = 0, $div117 = 0, $div34 = 0, $div76 = 0, $encControl$addr = 0, $fs_Hz = 0, $fs_kHz = 0, $fs_kHz1 = 0, $fs_kHz43 = 0, $fs_kHz65 = 0, $fs_kHz84 = 0, $fs_kHz95 = 0, $maxBits = 0, $maxBits113 = 0, $maxBits118 = 0; var $maxBits77 = 0, $maxInternal_fs_Hz = 0, $maxInternal_fs_Hz18 = 0, $maxInternal_fs_Hz23 = 0, $minInternal_fs_Hz = 0, $minInternal_fs_Hz26 = 0, $minInternal_fs_Hz31 = 0, $mode = 0, $mode105 = 0, $mode108 = 0, $mode122 = 0, $mode127 = 0, $mode132 = 0, $mode52 = 0, $mode64 = 0, $mode80 = 0, $mul = 0, $mul114 = 0, $mul46 = 0, $mul75 = 0; var $mul87 = 0, $opusCanSwitch = 0, $opusCanSwitch60 = 0, $opusCanSwitch92 = 0, $payloadSize_ms = 0, $payloadSize_ms115 = 0, $psEncC$addr = 0, $sLP = 0, $sLP101 = 0, $sLP104 = 0, $sLP107 = 0, $sLP121 = 0, $sLP126 = 0, $sLP131 = 0, $sLP39 = 0, $sLP51 = 0, $sLP56 = 0, $sLP58 = 0, $sLP63 = 0, $sLP79 = 0; var $sLP99 = 0, $sub = 0, $sub119 = 0, $switchReady = 0, $switchReady112 = 0, $tobool = 0, $tobool41 = 0, $tobool61 = 0, $tobool93 = 0, $transition_frame_no = 0, $transition_frame_no100 = 0, $transition_frame_no57 = 0, $transition_frame_no71 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $psEncC$addr = $psEncC; $encControl$addr = $encControl; $0 = $psEncC$addr; $fs_kHz1 = ((($0)) + 4572|0); $1 = HEAP32[$fs_kHz1>>2]|0; $fs_kHz = $1; $2 = $fs_kHz; $conv = $2&65535; $conv2 = $conv << 16 >> 16; $mul = ($conv2*1000)|0; $fs_Hz = $mul; $3 = $fs_Hz; $cmp = ($3|0)==(0); if ($cmp) { $4 = $psEncC$addr; $desiredInternal_fs_Hz = ((($4)) + 4568|0); $5 = HEAP32[$desiredInternal_fs_Hz>>2]|0; $6 = $psEncC$addr; $API_fs_Hz = ((($6)) + 4552|0); $7 = HEAP32[$API_fs_Hz>>2]|0; $cmp4 = ($5|0)<($7|0); $8 = $psEncC$addr; $API_fs_Hz7 = ((($8)) + 4552|0); $desiredInternal_fs_Hz6 = ((($8)) + 4568|0); $API_fs_Hz7$sink = $cmp4 ? $desiredInternal_fs_Hz6 : $API_fs_Hz7; $9 = HEAP32[$API_fs_Hz7$sink>>2]|0; $fs_Hz = $9; $10 = $fs_Hz; $div = (($10|0) / 1000)&-1; $fs_kHz = $div; $86 = $fs_kHz; STACKTOP = sp;return ($86|0); } $11 = $fs_Hz; $12 = $psEncC$addr; $API_fs_Hz8 = ((($12)) + 4552|0); $13 = HEAP32[$API_fs_Hz8>>2]|0; $cmp9 = ($11|0)>($13|0); if (!($cmp9)) { $14 = $fs_Hz; $15 = $psEncC$addr; $maxInternal_fs_Hz = ((($15)) + 4560|0); $16 = HEAP32[$maxInternal_fs_Hz>>2]|0; $cmp11 = ($14|0)>($16|0); if (!($cmp11)) { $17 = $fs_Hz; $18 = $psEncC$addr; $minInternal_fs_Hz = ((($18)) + 4564|0); $19 = HEAP32[$minInternal_fs_Hz>>2]|0; $cmp14 = ($17|0)<($19|0); if (!($cmp14)) { $35 = $psEncC$addr; $sLP = ((($35)) + 16|0); $transition_frame_no = ((($sLP)) + 8|0); $36 = HEAP32[$transition_frame_no>>2]|0; $cmp36 = ($36|0)>=(256); if ($cmp36) { $37 = $psEncC$addr; $sLP39 = ((($37)) + 16|0); $mode = ((($sLP39)) + 12|0); HEAP32[$mode>>2] = 0; } $38 = $psEncC$addr; $allow_bandwidth_switch = ((($38)) + 4532|0); $39 = HEAP32[$allow_bandwidth_switch>>2]|0; $tobool = ($39|0)!=(0); if (!($tobool)) { $40 = $encControl$addr; $opusCanSwitch = ((($40)) + 64|0); $41 = HEAP32[$opusCanSwitch>>2]|0; $tobool41 = ($41|0)!=(0); if (!($tobool41)) { $86 = $fs_kHz; STACKTOP = sp;return ($86|0); } } $42 = $psEncC$addr; $fs_kHz43 = ((($42)) + 4572|0); $43 = HEAP32[$fs_kHz43>>2]|0; $conv44 = $43&65535; $conv45 = $conv44 << 16 >> 16; $mul46 = ($conv45*1000)|0; $44 = $psEncC$addr; $desiredInternal_fs_Hz47 = ((($44)) + 4568|0); $45 = HEAP32[$desiredInternal_fs_Hz47>>2]|0; $cmp48 = ($mul46|0)>($45|0); $46 = $psEncC$addr; if ($cmp48) { $sLP51 = ((($46)) + 16|0); $mode52 = ((($sLP51)) + 12|0); $47 = HEAP32[$mode52>>2]|0; $cmp53 = ($47|0)==(0); if ($cmp53) { $48 = $psEncC$addr; $sLP56 = ((($48)) + 16|0); $transition_frame_no57 = ((($sLP56)) + 8|0); HEAP32[$transition_frame_no57>>2] = 256; $49 = $psEncC$addr; $sLP58 = ((($49)) + 16|0); ;HEAP32[$sLP58>>2]=0|0;HEAP32[$sLP58+4>>2]=0|0; } $50 = $encControl$addr; $opusCanSwitch60 = ((($50)) + 64|0); $51 = HEAP32[$opusCanSwitch60>>2]|0; $tobool61 = ($51|0)!=(0); $52 = $psEncC$addr; $sLP63 = ((($52)) + 16|0); if ($tobool61) { $mode64 = ((($sLP63)) + 12|0); HEAP32[$mode64>>2] = 0; $53 = $psEncC$addr; $fs_kHz65 = ((($53)) + 4572|0); $54 = HEAP32[$fs_kHz65>>2]|0; $cmp66 = ($54|0)==(16); $cond68 = $cmp66 ? 12 : 8; $fs_kHz = $cond68; $86 = $fs_kHz; STACKTOP = sp;return ($86|0); } $transition_frame_no71 = ((($sLP63)) + 8|0); $55 = HEAP32[$transition_frame_no71>>2]|0; $cmp72 = ($55|0)<=(0); if ($cmp72) { $56 = $encControl$addr; $switchReady = ((($56)) + 88|0); HEAP32[$switchReady>>2] = 1; $57 = $encControl$addr; $maxBits = ((($57)) + 56|0); $58 = HEAP32[$maxBits>>2]|0; $mul75 = ($58*5)|0; $59 = $encControl$addr; $payloadSize_ms = ((($59)) + 24|0); $60 = HEAP32[$payloadSize_ms>>2]|0; $add = (($60) + 5)|0; $div76 = (($mul75|0) / ($add|0))&-1; $61 = $encControl$addr; $maxBits77 = ((($61)) + 56|0); $62 = HEAP32[$maxBits77>>2]|0; $sub = (($62) - ($div76))|0; HEAP32[$maxBits77>>2] = $sub; $86 = $fs_kHz; STACKTOP = sp;return ($86|0); } else { $63 = $psEncC$addr; $sLP79 = ((($63)) + 16|0); $mode80 = ((($sLP79)) + 12|0); HEAP32[$mode80>>2] = -2; $86 = $fs_kHz; STACKTOP = sp;return ($86|0); } } $fs_kHz84 = ((($46)) + 4572|0); $64 = HEAP32[$fs_kHz84>>2]|0; $conv85 = $64&65535; $conv86 = $conv85 << 16 >> 16; $mul87 = ($conv86*1000)|0; $65 = $psEncC$addr; $desiredInternal_fs_Hz88 = ((($65)) + 4568|0); $66 = HEAP32[$desiredInternal_fs_Hz88>>2]|0; $cmp89 = ($mul87|0)<($66|0); if (!($cmp89)) { $83 = $psEncC$addr; $sLP126 = ((($83)) + 16|0); $mode127 = ((($sLP126)) + 12|0); $84 = HEAP32[$mode127>>2]|0; $cmp128 = ($84|0)<(0); if (!($cmp128)) { $86 = $fs_kHz; STACKTOP = sp;return ($86|0); } $85 = $psEncC$addr; $sLP131 = ((($85)) + 16|0); $mode132 = ((($sLP131)) + 12|0); HEAP32[$mode132>>2] = 1; $86 = $fs_kHz; STACKTOP = sp;return ($86|0); } $67 = $encControl$addr; $opusCanSwitch92 = ((($67)) + 64|0); $68 = HEAP32[$opusCanSwitch92>>2]|0; $tobool93 = ($68|0)!=(0); $69 = $psEncC$addr; if ($tobool93) { $fs_kHz95 = ((($69)) + 4572|0); $70 = HEAP32[$fs_kHz95>>2]|0; $cmp96 = ($70|0)==(8); $cond98 = $cmp96 ? 12 : 16; $fs_kHz = $cond98; $71 = $psEncC$addr; $sLP99 = ((($71)) + 16|0); $transition_frame_no100 = ((($sLP99)) + 8|0); HEAP32[$transition_frame_no100>>2] = 0; $72 = $psEncC$addr; $sLP101 = ((($72)) + 16|0); ;HEAP32[$sLP101>>2]=0|0;HEAP32[$sLP101+4>>2]=0|0; $73 = $psEncC$addr; $sLP104 = ((($73)) + 16|0); $mode105 = ((($sLP104)) + 12|0); HEAP32[$mode105>>2] = 1; $86 = $fs_kHz; STACKTOP = sp;return ($86|0); } $sLP107 = ((($69)) + 16|0); $mode108 = ((($sLP107)) + 12|0); $74 = HEAP32[$mode108>>2]|0; $cmp109 = ($74|0)==(0); if ($cmp109) { $75 = $encControl$addr; $switchReady112 = ((($75)) + 88|0); HEAP32[$switchReady112>>2] = 1; $76 = $encControl$addr; $maxBits113 = ((($76)) + 56|0); $77 = HEAP32[$maxBits113>>2]|0; $mul114 = ($77*5)|0; $78 = $encControl$addr; $payloadSize_ms115 = ((($78)) + 24|0); $79 = HEAP32[$payloadSize_ms115>>2]|0; $add116 = (($79) + 5)|0; $div117 = (($mul114|0) / ($add116|0))&-1; $80 = $encControl$addr; $maxBits118 = ((($80)) + 56|0); $81 = HEAP32[$maxBits118>>2]|0; $sub119 = (($81) - ($div117))|0; HEAP32[$maxBits118>>2] = $sub119; $86 = $fs_kHz; STACKTOP = sp;return ($86|0); } else { $82 = $psEncC$addr; $sLP121 = ((($82)) + 16|0); $mode122 = ((($sLP121)) + 12|0); HEAP32[$mode122>>2] = 1; $86 = $fs_kHz; STACKTOP = sp;return ($86|0); } } } } $20 = $psEncC$addr; $API_fs_Hz17 = ((($20)) + 4552|0); $21 = HEAP32[$API_fs_Hz17>>2]|0; $fs_Hz = $21; $22 = $fs_Hz; $23 = $psEncC$addr; $maxInternal_fs_Hz18 = ((($23)) + 4560|0); $24 = HEAP32[$maxInternal_fs_Hz18>>2]|0; $cmp19 = ($22|0)<($24|0); if ($cmp19) { $25 = $fs_Hz; $cond25 = $25; } else { $26 = $psEncC$addr; $maxInternal_fs_Hz23 = ((($26)) + 4560|0); $27 = HEAP32[$maxInternal_fs_Hz23>>2]|0; $cond25 = $27; } $fs_Hz = $cond25; $28 = $fs_Hz; $29 = $psEncC$addr; $minInternal_fs_Hz26 = ((($29)) + 4564|0); $30 = HEAP32[$minInternal_fs_Hz26>>2]|0; $cmp27 = ($28|0)>($30|0); if ($cmp27) { $31 = $fs_Hz; $cond33 = $31; } else { $32 = $psEncC$addr; $minInternal_fs_Hz31 = ((($32)) + 4564|0); $33 = HEAP32[$minInternal_fs_Hz31>>2]|0; $cond33 = $33; } $fs_Hz = $cond33; $34 = $fs_Hz; $div34 = (($34|0) / 1000)&-1; $fs_kHz = $div34; $86 = $fs_kHz; STACKTOP = sp;return ($86|0); } function _silk_quant_LTP_gains($B_Q14,$cbk_index,$periodicity_index,$sum_log_gain_Q7,$pred_gain_dB_Q7,$XX_Q17,$xX_Q17,$subfr_len,$nb_subfr,$arch) { $B_Q14 = $B_Q14|0; $cbk_index = $cbk_index|0; $periodicity_index = $periodicity_index|0; $sum_log_gain_Q7 = $sum_log_gain_Q7|0; $pred_gain_dB_Q7 = $pred_gain_dB_Q7|0; $XX_Q17 = $XX_Q17|0; $xX_Q17 = $xX_Q17|0; $subfr_len = $subfr_len|0; $nb_subfr = $nb_subfr|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $8 = 0, $9 = 0, $B_Q14$addr = 0, $XX_Q17$addr = 0, $XX_Q17_ptr = 0, $add = 0, $add$ptr = 0; var $add$ptr34 = 0, $add10 = 0, $add11 = 0, $add12 = 0, $add17 = 0, $add20 = 0, $add22 = 0, $add28 = 0, $add30 = 0, $add53 = 0, $add58 = 0, $and = 0, $and13 = 0, $arch$addr = 0, $arrayidx = 0, $arrayidx1 = 0, $arrayidx2 = 0, $arrayidx3 = 0, $arrayidx41 = 0, $arrayidx50 = 0; var $arrayidx54 = 0, $arrayidx59 = 0, $arrayidx9 = 0, $best_sum_log_gain_Q7 = 0, $call = 0, $call21 = 0, $call29 = 0, $call71 = 0, $cbk_gain_ptr_Q7 = 0, $cbk_index$addr = 0, $cbk_ptr_Q7 = 0, $cbk_size = 0, $cl_ptr_Q5 = 0, $cmp = 0, $cmp24 = 0, $cmp35 = 0, $cmp43 = 0, $cmp47 = 0, $cmp5 = 0, $cmp66 = 0; var $cond = 0, $cond19 = 0, $cond33 = 0, $conv = 0, $conv37 = 0, $conv51 = 0, $conv55 = 0, $conv56 = 0, $conv73 = 0, $conv74 = 0, $gain_Q7 = 0, $gain_safety = 0, $idxprom = 0, $inc = 0, $inc39 = 0, $inc61 = 0, $inc64 = 0, $j = 0, $k = 0, $max_gain_Q7 = 0; var $min_rate_dist_Q7 = 0, $mul = 0, $mul52 = 0, $mul57 = 0, $mul75 = 0, $nb_subfr$addr = 0, $periodicity_index$addr = 0, $pred_gain_dB_Q7$addr = 0, $rate_dist_Q7 = 0, $rate_dist_Q7_subfr = 0, $res_nrg_Q15 = 0, $res_nrg_Q15_subfr = 0, $shl = 0, $shr = 0, $shr69 = 0, $sub = 0, $sub23 = 0, $sub31 = 0, $sub72 = 0, $sub8 = 0; var $subfr_len$addr = 0, $sum_log_gain_Q7$addr = 0, $sum_log_gain_tmp_Q7 = 0, $temp_idx = 0, $tobool = 0, $tobool14 = 0, $xX_Q17$addr = 0, $xX_Q17_ptr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 128|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(128|0); $temp_idx = sp + 112|0; $res_nrg_Q15_subfr = sp + 36|0; $rate_dist_Q7_subfr = sp + 28|0; $gain_Q7 = sp + 4|0; $B_Q14$addr = $B_Q14; $cbk_index$addr = $cbk_index; $periodicity_index$addr = $periodicity_index; $sum_log_gain_Q7$addr = $sum_log_gain_Q7; $pred_gain_dB_Q7$addr = $pred_gain_dB_Q7; $XX_Q17$addr = $XX_Q17; $xX_Q17$addr = $xX_Q17; $subfr_len$addr = $subfr_len; $nb_subfr$addr = $nb_subfr; $arch$addr = $arch; $min_rate_dist_Q7 = 2147483647; $best_sum_log_gain_Q7 = 0; $k = 0; while(1) { $0 = $k; $cmp = ($0|0)<(3); if (!($cmp)) { break; } $gain_safety = 51; $1 = $k; $arrayidx = (15148 + ($1<<2)|0); $2 = HEAP32[$arrayidx>>2]|0; $cl_ptr_Q5 = $2; $3 = $k; $arrayidx1 = (15160 + ($3<<2)|0); $4 = HEAP32[$arrayidx1>>2]|0; $cbk_ptr_Q7 = $4; $5 = $k; $arrayidx2 = (15172 + ($5<<2)|0); $6 = HEAP32[$arrayidx2>>2]|0; $cbk_gain_ptr_Q7 = $6; $7 = $k; $arrayidx3 = (32773 + ($7)|0); $8 = HEAP8[$arrayidx3>>0]|0; $conv = $8 << 24 >> 24; $cbk_size = $conv; $9 = $XX_Q17$addr; $XX_Q17_ptr = $9; $10 = $xX_Q17$addr; $xX_Q17_ptr = $10; $res_nrg_Q15 = 0; $rate_dist_Q7 = 0; $11 = $sum_log_gain_Q7$addr; $12 = HEAP32[$11>>2]|0; $sum_log_gain_tmp_Q7 = $12; $j = 0; while(1) { $13 = $j; $14 = $nb_subfr$addr; $cmp5 = ($13|0)<($14|0); if (!($cmp5)) { break; } $15 = $sum_log_gain_tmp_Q7; $sub = (5333 - ($15))|0; $add = (($sub) + 896)|0; $call = (_silk_log2lin($add)|0); $16 = $gain_safety; $sub8 = (($call) - ($16))|0; $max_gain_Q7 = $sub8; $17 = $j; $arrayidx9 = (($temp_idx) + ($17)|0); $18 = $XX_Q17_ptr; $19 = $xX_Q17_ptr; $20 = $cbk_ptr_Q7; $21 = $cbk_gain_ptr_Q7; $22 = $cl_ptr_Q5; $23 = $subfr_len$addr; $24 = $max_gain_Q7; $25 = $cbk_size; _silk_VQ_WMat_EC_c($arrayidx9,$res_nrg_Q15_subfr,$rate_dist_Q7_subfr,$gain_Q7,$18,$19,$20,$21,$22,$23,$24,$25); $26 = $res_nrg_Q15; $27 = HEAP32[$res_nrg_Q15_subfr>>2]|0; $add10 = (($26) + ($27))|0; $and = $add10 & -2147483648; $tobool = ($and|0)!=(0); if ($tobool) { $cond = 2147483647; } else { $28 = $res_nrg_Q15; $29 = HEAP32[$res_nrg_Q15_subfr>>2]|0; $add11 = (($28) + ($29))|0; $cond = $add11; } $res_nrg_Q15 = $cond; $30 = $rate_dist_Q7; $31 = HEAP32[$rate_dist_Q7_subfr>>2]|0; $add12 = (($30) + ($31))|0; $and13 = $add12 & -2147483648; $tobool14 = ($and13|0)!=(0); if ($tobool14) { $cond19 = 2147483647; } else { $32 = $rate_dist_Q7; $33 = HEAP32[$rate_dist_Q7_subfr>>2]|0; $add17 = (($32) + ($33))|0; $cond19 = $add17; } $rate_dist_Q7 = $cond19; $34 = $sum_log_gain_tmp_Q7; $35 = $gain_safety; $36 = HEAP32[$gain_Q7>>2]|0; $add20 = (($35) + ($36))|0; $call21 = (_silk_lin2log($add20)|0); $add22 = (($34) + ($call21))|0; $sub23 = (($add22) - 896)|0; $cmp24 = (0)>($sub23|0); if ($cmp24) { $cond33 = 0; } else { $37 = $sum_log_gain_tmp_Q7; $38 = $gain_safety; $39 = HEAP32[$gain_Q7>>2]|0; $add28 = (($38) + ($39))|0; $call29 = (_silk_lin2log($add28)|0); $add30 = (($37) + ($call29))|0; $sub31 = (($add30) - 896)|0; $cond33 = $sub31; } $sum_log_gain_tmp_Q7 = $cond33; $40 = $XX_Q17_ptr; $add$ptr = ((($40)) + 100|0); $XX_Q17_ptr = $add$ptr; $41 = $xX_Q17_ptr; $add$ptr34 = ((($41)) + 20|0); $xX_Q17_ptr = $add$ptr34; $42 = $j; $inc = (($42) + 1)|0; $j = $inc; } $43 = $rate_dist_Q7; $44 = $min_rate_dist_Q7; $cmp35 = ($43|0)<=($44|0); if ($cmp35) { $45 = $rate_dist_Q7; $min_rate_dist_Q7 = $45; $46 = $k; $conv37 = $46&255; $47 = $periodicity_index$addr; HEAP8[$47>>0] = $conv37; $48 = $cbk_index$addr; $49 = $nb_subfr$addr; $mul = $49; _memcpy(($48|0),($temp_idx|0),($mul|0))|0; $50 = $sum_log_gain_tmp_Q7; $best_sum_log_gain_Q7 = $50; } $51 = $k; $inc39 = (($51) + 1)|0; $k = $inc39; } $52 = $periodicity_index$addr; $53 = HEAP8[$52>>0]|0; $idxprom = $53 << 24 >> 24; $arrayidx41 = (15160 + ($idxprom<<2)|0); $54 = HEAP32[$arrayidx41>>2]|0; $cbk_ptr_Q7 = $54; $j = 0; while(1) { $55 = $j; $56 = $nb_subfr$addr; $cmp43 = ($55|0)<($56|0); if (!($cmp43)) { break; } $k = 0; while(1) { $57 = $k; $cmp47 = ($57|0)<(5); if (!($cmp47)) { break; } $58 = $cbk_ptr_Q7; $59 = $cbk_index$addr; $60 = $j; $arrayidx50 = (($59) + ($60)|0); $61 = HEAP8[$arrayidx50>>0]|0; $conv51 = $61 << 24 >> 24; $mul52 = ($conv51*5)|0; $62 = $k; $add53 = (($mul52) + ($62))|0; $arrayidx54 = (($58) + ($add53)|0); $63 = HEAP8[$arrayidx54>>0]|0; $conv55 = $63 << 24 >> 24; $shl = $conv55 << 7; $conv56 = $shl&65535; $64 = $B_Q14$addr; $65 = $j; $mul57 = ($65*5)|0; $66 = $k; $add58 = (($mul57) + ($66))|0; $arrayidx59 = (($64) + ($add58<<1)|0); HEAP16[$arrayidx59>>1] = $conv56; $67 = $k; $inc61 = (($67) + 1)|0; $k = $inc61; } $68 = $j; $inc64 = (($68) + 1)|0; $j = $inc64; } $69 = $nb_subfr$addr; $cmp66 = ($69|0)==(2); $70 = $res_nrg_Q15; if ($cmp66) { $shr = $70 >> 1; $res_nrg_Q15 = $shr; $71 = $best_sum_log_gain_Q7; $72 = $sum_log_gain_Q7$addr; HEAP32[$72>>2] = $71; $73 = $res_nrg_Q15; $call71 = (_silk_lin2log($73)|0); $sub72 = (($call71) - 1920)|0; $conv73 = $sub72&65535; $conv74 = $conv73 << 16 >> 16; $mul75 = Math_imul(-3, $conv74)|0; $74 = $pred_gain_dB_Q7$addr; HEAP32[$74>>2] = $mul75; STACKTOP = sp;return; } else { $shr69 = $70 >> 2; $res_nrg_Q15 = $shr69; $71 = $best_sum_log_gain_Q7; $72 = $sum_log_gain_Q7$addr; HEAP32[$72>>2] = $71; $73 = $res_nrg_Q15; $call71 = (_silk_lin2log($73)|0); $sub72 = (($call71) - 1920)|0; $conv73 = $sub72&65535; $conv74 = $conv73 << 16 >> 16; $mul75 = Math_imul(-3, $conv74)|0; $74 = $pred_gain_dB_Q7$addr; HEAP32[$74>>2] = $mul75; STACKTOP = sp;return; } } function _silk_VQ_WMat_EC_c($ind,$res_nrg_Q15,$rate_dist_Q8,$gain_Q7,$XX_Q17,$xX_Q17,$cb_Q7,$cb_gain_Q7,$cl_Q5,$subfr_len,$max_gain_Q7,$L) { $ind = $ind|0; $res_nrg_Q15 = $res_nrg_Q15|0; $rate_dist_Q8 = $rate_dist_Q8|0; $gain_Q7 = $gain_Q7|0; $XX_Q17 = $XX_Q17|0; $xX_Q17 = $xX_Q17|0; $cb_Q7 = $cb_Q7|0; $cb_gain_Q7 = $cb_gain_Q7|0; $cl_Q5 = $cl_Q5|0; $subfr_len = $subfr_len|0; $max_gain_Q7 = $max_gain_Q7|0; $L = $L|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; var $L$addr = 0, $XX_Q17$addr = 0, $add = 0, $add$ptr = 0, $add100 = 0, $add105 = 0, $add111 = 0, $add123 = 0, $add124 = 0, $add130 = 0, $add136 = 0, $add148 = 0, $add149 = 0, $add156 = 0, $add168 = 0, $add169 = 0, $add174 = 0, $add182 = 0, $add186 = 0, $add32 = 0; var $add37 = 0, $add42 = 0, $add48 = 0, $add58 = 0, $add59 = 0, $add65 = 0, $add70 = 0, $add75 = 0, $add81 = 0, $add93 = 0, $add94 = 0, $and = 0, $and117 = 0, $and142 = 0, $and162 = 0, $and87 = 0, $arrayidx10 = 0, $arrayidx101 = 0, $arrayidx102 = 0, $arrayidx107 = 0; var $arrayidx108 = 0, $arrayidx113 = 0, $arrayidx118 = 0, $arrayidx125 = 0, $arrayidx126 = 0, $arrayidx127 = 0, $arrayidx13 = 0, $arrayidx132 = 0, $arrayidx133 = 0, $arrayidx138 = 0, $arrayidx14 = 0, $arrayidx143 = 0, $arrayidx150 = 0, $arrayidx152 = 0, $arrayidx153 = 0, $arrayidx158 = 0, $arrayidx163 = 0, $arrayidx17 = 0, $arrayidx179 = 0, $arrayidx18 = 0; var $arrayidx2 = 0, $arrayidx25 = 0, $arrayidx26 = 0, $arrayidx28 = 0, $arrayidx29 = 0, $arrayidx33 = 0, $arrayidx34 = 0, $arrayidx38 = 0, $arrayidx39 = 0, $arrayidx5 = 0, $arrayidx6 = 0, $arrayidx60 = 0, $arrayidx61 = 0, $arrayidx62 = 0, $arrayidx66 = 0, $arrayidx67 = 0, $arrayidx71 = 0, $arrayidx72 = 0, $arrayidx77 = 0, $arrayidx78 = 0; var $arrayidx83 = 0, $arrayidx88 = 0, $arrayidx9 = 0, $arrayidx95 = 0, $arrayidx96 = 0, $arrayidx97 = 0, $bits_res_Q8 = 0, $bits_tot_Q8 = 0, $call = 0, $cb_Q7$addr = 0, $cb_gain_Q7$addr = 0, $cb_row_Q7 = 0, $cl_Q5$addr = 0, $cmp = 0, $cmp170 = 0, $cmp183 = 0, $cmp20 = 0, $cond = 0, $conv = 0, $conv103 = 0; var $conv109 = 0, $conv114 = 0, $conv115 = 0, $conv119 = 0, $conv120 = 0, $conv128 = 0, $conv134 = 0, $conv139 = 0, $conv140 = 0, $conv144 = 0, $conv145 = 0, $conv154 = 0, $conv159 = 0, $conv160 = 0, $conv164 = 0, $conv165 = 0, $conv172 = 0, $conv173 = 0, $conv176 = 0, $conv177 = 0; var $conv180 = 0, $conv187 = 0, $conv27 = 0, $conv30 = 0, $conv35 = 0, $conv40 = 0, $conv46 = 0, $conv50 = 0, $conv51 = 0, $conv54 = 0, $conv55 = 0, $conv63 = 0, $conv68 = 0, $conv73 = 0, $conv79 = 0, $conv84 = 0, $conv85 = 0, $conv89 = 0, $conv90 = 0, $conv98 = 0; var $gain_Q7$addr = 0, $gain_tmp_Q7 = 0, $inc = 0, $ind$addr = 0, $k = 0, $max_gain_Q7$addr = 0, $mul = 0, $mul104 = 0, $mul110 = 0, $mul116 = 0, $mul121 = 0, $mul129 = 0, $mul135 = 0, $mul141 = 0, $mul146 = 0, $mul155 = 0, $mul161 = 0, $mul166 = 0, $mul178 = 0, $mul31 = 0; var $mul36 = 0, $mul41 = 0, $mul47 = 0, $mul52 = 0, $mul56 = 0, $mul64 = 0, $mul69 = 0, $mul74 = 0, $mul80 = 0, $mul86 = 0, $mul91 = 0, $mul99 = 0, $neg_xX_Q24 = 0, $penalty = 0, $rate_dist_Q8$addr = 0, $res_nrg_Q15$addr = 0, $shl = 0, $shl106 = 0, $shl11 = 0, $shl131 = 0; var $shl15 = 0, $shl151 = 0, $shl181 = 0, $shl23 = 0, $shl3 = 0, $shl43 = 0, $shl7 = 0, $shl76 = 0, $shr = 0, $shr112 = 0, $shr122 = 0, $shr137 = 0, $shr147 = 0, $shr157 = 0, $shr167 = 0, $shr57 = 0, $shr82 = 0, $shr92 = 0, $sub = 0, $sub12 = 0; var $sub16 = 0, $sub175 = 0, $sub19 = 0, $sub22 = 0, $sub4 = 0, $sub8 = 0, $subfr_len$addr = 0, $sum1_Q15 = 0, $sum2_Q24 = 0, $xX_Q17$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 112|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(112|0); $neg_xX_Q24 = sp + 20|0; $ind$addr = $ind; $res_nrg_Q15$addr = $res_nrg_Q15; $rate_dist_Q8$addr = $rate_dist_Q8; $gain_Q7$addr = $gain_Q7; $XX_Q17$addr = $XX_Q17; $xX_Q17$addr = $xX_Q17; $cb_Q7$addr = $cb_Q7; $cb_gain_Q7$addr = $cb_gain_Q7; $cl_Q5$addr = $cl_Q5; $subfr_len$addr = $subfr_len; $max_gain_Q7$addr = $max_gain_Q7; $L$addr = $L; $0 = $xX_Q17$addr; $1 = HEAP32[$0>>2]|0; $shl = $1 << 7; $sub = (0 - ($shl))|0; HEAP32[$neg_xX_Q24>>2] = $sub; $2 = $xX_Q17$addr; $arrayidx2 = ((($2)) + 4|0); $3 = HEAP32[$arrayidx2>>2]|0; $shl3 = $3 << 7; $sub4 = (0 - ($shl3))|0; $arrayidx5 = ((($neg_xX_Q24)) + 4|0); HEAP32[$arrayidx5>>2] = $sub4; $4 = $xX_Q17$addr; $arrayidx6 = ((($4)) + 8|0); $5 = HEAP32[$arrayidx6>>2]|0; $shl7 = $5 << 7; $sub8 = (0 - ($shl7))|0; $arrayidx9 = ((($neg_xX_Q24)) + 8|0); HEAP32[$arrayidx9>>2] = $sub8; $6 = $xX_Q17$addr; $arrayidx10 = ((($6)) + 12|0); $7 = HEAP32[$arrayidx10>>2]|0; $shl11 = $7 << 7; $sub12 = (0 - ($shl11))|0; $arrayidx13 = ((($neg_xX_Q24)) + 12|0); HEAP32[$arrayidx13>>2] = $sub12; $8 = $xX_Q17$addr; $arrayidx14 = ((($8)) + 16|0); $9 = HEAP32[$arrayidx14>>2]|0; $shl15 = $9 << 7; $sub16 = (0 - ($shl15))|0; $arrayidx17 = ((($neg_xX_Q24)) + 16|0); HEAP32[$arrayidx17>>2] = $sub16; $10 = $rate_dist_Q8$addr; HEAP32[$10>>2] = 2147483647; $11 = $res_nrg_Q15$addr; HEAP32[$11>>2] = 2147483647; $12 = $cb_Q7$addr; $cb_row_Q7 = $12; $13 = $ind$addr; HEAP8[$13>>0] = 0; $k = 0; while(1) { $14 = $k; $15 = $L$addr; $cmp = ($14|0)<($15|0); if (!($cmp)) { break; } $16 = $cb_gain_Q7$addr; $17 = $k; $arrayidx18 = (($16) + ($17)|0); $18 = HEAP8[$arrayidx18>>0]|0; $conv = $18&255; $gain_tmp_Q7 = $conv; $sum1_Q15 = 32801; $19 = $gain_tmp_Q7; $20 = $max_gain_Q7$addr; $sub19 = (($19) - ($20))|0; $cmp20 = ($sub19|0)>(0); if ($cmp20) { $21 = $gain_tmp_Q7; $22 = $max_gain_Q7$addr; $sub22 = (($21) - ($22))|0; $cond = $sub22; } else { $cond = 0; } $shl23 = $cond << 11; $penalty = $shl23; $23 = HEAP32[$neg_xX_Q24>>2]|0; $24 = $XX_Q17$addr; $arrayidx25 = ((($24)) + 4|0); $25 = HEAP32[$arrayidx25>>2]|0; $26 = $cb_row_Q7; $arrayidx26 = ((($26)) + 1|0); $27 = HEAP8[$arrayidx26>>0]|0; $conv27 = $27 << 24 >> 24; $mul = Math_imul($25, $conv27)|0; $add = (($23) + ($mul))|0; $sum2_Q24 = $add; $28 = $sum2_Q24; $29 = $XX_Q17$addr; $arrayidx28 = ((($29)) + 8|0); $30 = HEAP32[$arrayidx28>>2]|0; $31 = $cb_row_Q7; $arrayidx29 = ((($31)) + 2|0); $32 = HEAP8[$arrayidx29>>0]|0; $conv30 = $32 << 24 >> 24; $mul31 = Math_imul($30, $conv30)|0; $add32 = (($28) + ($mul31))|0; $sum2_Q24 = $add32; $33 = $sum2_Q24; $34 = $XX_Q17$addr; $arrayidx33 = ((($34)) + 12|0); $35 = HEAP32[$arrayidx33>>2]|0; $36 = $cb_row_Q7; $arrayidx34 = ((($36)) + 3|0); $37 = HEAP8[$arrayidx34>>0]|0; $conv35 = $37 << 24 >> 24; $mul36 = Math_imul($35, $conv35)|0; $add37 = (($33) + ($mul36))|0; $sum2_Q24 = $add37; $38 = $sum2_Q24; $39 = $XX_Q17$addr; $arrayidx38 = ((($39)) + 16|0); $40 = HEAP32[$arrayidx38>>2]|0; $41 = $cb_row_Q7; $arrayidx39 = ((($41)) + 4|0); $42 = HEAP8[$arrayidx39>>0]|0; $conv40 = $42 << 24 >> 24; $mul41 = Math_imul($40, $conv40)|0; $add42 = (($38) + ($mul41))|0; $sum2_Q24 = $add42; $43 = $sum2_Q24; $shl43 = $43 << 1; $sum2_Q24 = $shl43; $44 = $sum2_Q24; $45 = $XX_Q17$addr; $46 = HEAP32[$45>>2]|0; $47 = $cb_row_Q7; $48 = HEAP8[$47>>0]|0; $conv46 = $48 << 24 >> 24; $mul47 = Math_imul($46, $conv46)|0; $add48 = (($44) + ($mul47))|0; $sum2_Q24 = $add48; $49 = $sum1_Q15; $50 = $sum2_Q24; $shr = $50 >> 16; $51 = $cb_row_Q7; $52 = HEAP8[$51>>0]|0; $conv50 = $52 << 24 >> 24; $conv51 = $conv50 << 16 >> 16; $mul52 = Math_imul($shr, $conv51)|0; $53 = $sum2_Q24; $and = $53 & 65535; $54 = $cb_row_Q7; $55 = HEAP8[$54>>0]|0; $conv54 = $55 << 24 >> 24; $conv55 = $conv54 << 16 >> 16; $mul56 = Math_imul($and, $conv55)|0; $shr57 = $mul56 >> 16; $add58 = (($mul52) + ($shr57))|0; $add59 = (($49) + ($add58))|0; $sum1_Q15 = $add59; $arrayidx60 = ((($neg_xX_Q24)) + 4|0); $56 = HEAP32[$arrayidx60>>2]|0; $57 = $XX_Q17$addr; $arrayidx61 = ((($57)) + 28|0); $58 = HEAP32[$arrayidx61>>2]|0; $59 = $cb_row_Q7; $arrayidx62 = ((($59)) + 2|0); $60 = HEAP8[$arrayidx62>>0]|0; $conv63 = $60 << 24 >> 24; $mul64 = Math_imul($58, $conv63)|0; $add65 = (($56) + ($mul64))|0; $sum2_Q24 = $add65; $61 = $sum2_Q24; $62 = $XX_Q17$addr; $arrayidx66 = ((($62)) + 32|0); $63 = HEAP32[$arrayidx66>>2]|0; $64 = $cb_row_Q7; $arrayidx67 = ((($64)) + 3|0); $65 = HEAP8[$arrayidx67>>0]|0; $conv68 = $65 << 24 >> 24; $mul69 = Math_imul($63, $conv68)|0; $add70 = (($61) + ($mul69))|0; $sum2_Q24 = $add70; $66 = $sum2_Q24; $67 = $XX_Q17$addr; $arrayidx71 = ((($67)) + 36|0); $68 = HEAP32[$arrayidx71>>2]|0; $69 = $cb_row_Q7; $arrayidx72 = ((($69)) + 4|0); $70 = HEAP8[$arrayidx72>>0]|0; $conv73 = $70 << 24 >> 24; $mul74 = Math_imul($68, $conv73)|0; $add75 = (($66) + ($mul74))|0; $sum2_Q24 = $add75; $71 = $sum2_Q24; $shl76 = $71 << 1; $sum2_Q24 = $shl76; $72 = $sum2_Q24; $73 = $XX_Q17$addr; $arrayidx77 = ((($73)) + 24|0); $74 = HEAP32[$arrayidx77>>2]|0; $75 = $cb_row_Q7; $arrayidx78 = ((($75)) + 1|0); $76 = HEAP8[$arrayidx78>>0]|0; $conv79 = $76 << 24 >> 24; $mul80 = Math_imul($74, $conv79)|0; $add81 = (($72) + ($mul80))|0; $sum2_Q24 = $add81; $77 = $sum1_Q15; $78 = $sum2_Q24; $shr82 = $78 >> 16; $79 = $cb_row_Q7; $arrayidx83 = ((($79)) + 1|0); $80 = HEAP8[$arrayidx83>>0]|0; $conv84 = $80 << 24 >> 24; $conv85 = $conv84 << 16 >> 16; $mul86 = Math_imul($shr82, $conv85)|0; $81 = $sum2_Q24; $and87 = $81 & 65535; $82 = $cb_row_Q7; $arrayidx88 = ((($82)) + 1|0); $83 = HEAP8[$arrayidx88>>0]|0; $conv89 = $83 << 24 >> 24; $conv90 = $conv89 << 16 >> 16; $mul91 = Math_imul($and87, $conv90)|0; $shr92 = $mul91 >> 16; $add93 = (($mul86) + ($shr92))|0; $add94 = (($77) + ($add93))|0; $sum1_Q15 = $add94; $arrayidx95 = ((($neg_xX_Q24)) + 8|0); $84 = HEAP32[$arrayidx95>>2]|0; $85 = $XX_Q17$addr; $arrayidx96 = ((($85)) + 52|0); $86 = HEAP32[$arrayidx96>>2]|0; $87 = $cb_row_Q7; $arrayidx97 = ((($87)) + 3|0); $88 = HEAP8[$arrayidx97>>0]|0; $conv98 = $88 << 24 >> 24; $mul99 = Math_imul($86, $conv98)|0; $add100 = (($84) + ($mul99))|0; $sum2_Q24 = $add100; $89 = $sum2_Q24; $90 = $XX_Q17$addr; $arrayidx101 = ((($90)) + 56|0); $91 = HEAP32[$arrayidx101>>2]|0; $92 = $cb_row_Q7; $arrayidx102 = ((($92)) + 4|0); $93 = HEAP8[$arrayidx102>>0]|0; $conv103 = $93 << 24 >> 24; $mul104 = Math_imul($91, $conv103)|0; $add105 = (($89) + ($mul104))|0; $sum2_Q24 = $add105; $94 = $sum2_Q24; $shl106 = $94 << 1; $sum2_Q24 = $shl106; $95 = $sum2_Q24; $96 = $XX_Q17$addr; $arrayidx107 = ((($96)) + 48|0); $97 = HEAP32[$arrayidx107>>2]|0; $98 = $cb_row_Q7; $arrayidx108 = ((($98)) + 2|0); $99 = HEAP8[$arrayidx108>>0]|0; $conv109 = $99 << 24 >> 24; $mul110 = Math_imul($97, $conv109)|0; $add111 = (($95) + ($mul110))|0; $sum2_Q24 = $add111; $100 = $sum1_Q15; $101 = $sum2_Q24; $shr112 = $101 >> 16; $102 = $cb_row_Q7; $arrayidx113 = ((($102)) + 2|0); $103 = HEAP8[$arrayidx113>>0]|0; $conv114 = $103 << 24 >> 24; $conv115 = $conv114 << 16 >> 16; $mul116 = Math_imul($shr112, $conv115)|0; $104 = $sum2_Q24; $and117 = $104 & 65535; $105 = $cb_row_Q7; $arrayidx118 = ((($105)) + 2|0); $106 = HEAP8[$arrayidx118>>0]|0; $conv119 = $106 << 24 >> 24; $conv120 = $conv119 << 16 >> 16; $mul121 = Math_imul($and117, $conv120)|0; $shr122 = $mul121 >> 16; $add123 = (($mul116) + ($shr122))|0; $add124 = (($100) + ($add123))|0; $sum1_Q15 = $add124; $arrayidx125 = ((($neg_xX_Q24)) + 12|0); $107 = HEAP32[$arrayidx125>>2]|0; $108 = $XX_Q17$addr; $arrayidx126 = ((($108)) + 76|0); $109 = HEAP32[$arrayidx126>>2]|0; $110 = $cb_row_Q7; $arrayidx127 = ((($110)) + 4|0); $111 = HEAP8[$arrayidx127>>0]|0; $conv128 = $111 << 24 >> 24; $mul129 = Math_imul($109, $conv128)|0; $add130 = (($107) + ($mul129))|0; $sum2_Q24 = $add130; $112 = $sum2_Q24; $shl131 = $112 << 1; $sum2_Q24 = $shl131; $113 = $sum2_Q24; $114 = $XX_Q17$addr; $arrayidx132 = ((($114)) + 72|0); $115 = HEAP32[$arrayidx132>>2]|0; $116 = $cb_row_Q7; $arrayidx133 = ((($116)) + 3|0); $117 = HEAP8[$arrayidx133>>0]|0; $conv134 = $117 << 24 >> 24; $mul135 = Math_imul($115, $conv134)|0; $add136 = (($113) + ($mul135))|0; $sum2_Q24 = $add136; $118 = $sum1_Q15; $119 = $sum2_Q24; $shr137 = $119 >> 16; $120 = $cb_row_Q7; $arrayidx138 = ((($120)) + 3|0); $121 = HEAP8[$arrayidx138>>0]|0; $conv139 = $121 << 24 >> 24; $conv140 = $conv139 << 16 >> 16; $mul141 = Math_imul($shr137, $conv140)|0; $122 = $sum2_Q24; $and142 = $122 & 65535; $123 = $cb_row_Q7; $arrayidx143 = ((($123)) + 3|0); $124 = HEAP8[$arrayidx143>>0]|0; $conv144 = $124 << 24 >> 24; $conv145 = $conv144 << 16 >> 16; $mul146 = Math_imul($and142, $conv145)|0; $shr147 = $mul146 >> 16; $add148 = (($mul141) + ($shr147))|0; $add149 = (($118) + ($add148))|0; $sum1_Q15 = $add149; $arrayidx150 = ((($neg_xX_Q24)) + 16|0); $125 = HEAP32[$arrayidx150>>2]|0; $shl151 = $125 << 1; $sum2_Q24 = $shl151; $126 = $sum2_Q24; $127 = $XX_Q17$addr; $arrayidx152 = ((($127)) + 96|0); $128 = HEAP32[$arrayidx152>>2]|0; $129 = $cb_row_Q7; $arrayidx153 = ((($129)) + 4|0); $130 = HEAP8[$arrayidx153>>0]|0; $conv154 = $130 << 24 >> 24; $mul155 = Math_imul($128, $conv154)|0; $add156 = (($126) + ($mul155))|0; $sum2_Q24 = $add156; $131 = $sum1_Q15; $132 = $sum2_Q24; $shr157 = $132 >> 16; $133 = $cb_row_Q7; $arrayidx158 = ((($133)) + 4|0); $134 = HEAP8[$arrayidx158>>0]|0; $conv159 = $134 << 24 >> 24; $conv160 = $conv159 << 16 >> 16; $mul161 = Math_imul($shr157, $conv160)|0; $135 = $sum2_Q24; $and162 = $135 & 65535; $136 = $cb_row_Q7; $arrayidx163 = ((($136)) + 4|0); $137 = HEAP8[$arrayidx163>>0]|0; $conv164 = $137 << 24 >> 24; $conv165 = $conv164 << 16 >> 16; $mul166 = Math_imul($and162, $conv165)|0; $shr167 = $mul166 >> 16; $add168 = (($mul161) + ($shr167))|0; $add169 = (($131) + ($add168))|0; $sum1_Q15 = $add169; $138 = $sum1_Q15; $cmp170 = ($138|0)>=(0); if ($cmp170) { $139 = $subfr_len$addr; $conv172 = $139&65535; $conv173 = $conv172 << 16 >> 16; $140 = $sum1_Q15; $141 = $penalty; $add174 = (($140) + ($141))|0; $call = (_silk_lin2log($add174)|0); $sub175 = (($call) - 1920)|0; $conv176 = $sub175&65535; $conv177 = $conv176 << 16 >> 16; $mul178 = Math_imul($conv173, $conv177)|0; $bits_res_Q8 = $mul178; $142 = $bits_res_Q8; $143 = $cl_Q5$addr; $144 = $k; $arrayidx179 = (($143) + ($144)|0); $145 = HEAP8[$arrayidx179>>0]|0; $conv180 = $145&255; $shl181 = $conv180 << 2; $add182 = (($142) + ($shl181))|0; $bits_tot_Q8 = $add182; $146 = $bits_tot_Q8; $147 = $rate_dist_Q8$addr; $148 = HEAP32[$147>>2]|0; $cmp183 = ($146|0)<=($148|0); if ($cmp183) { $149 = $bits_tot_Q8; $150 = $rate_dist_Q8$addr; HEAP32[$150>>2] = $149; $151 = $sum1_Q15; $152 = $penalty; $add186 = (($151) + ($152))|0; $153 = $res_nrg_Q15$addr; HEAP32[$153>>2] = $add186; $154 = $k; $conv187 = $154&255; $155 = $ind$addr; HEAP8[$155>>0] = $conv187; $156 = $gain_tmp_Q7; $157 = $gain_Q7$addr; HEAP32[$157>>2] = $156; } } $158 = $cb_row_Q7; $add$ptr = ((($158)) + 5|0); $cb_row_Q7 = $add$ptr; $159 = $k; $inc = (($159) + 1)|0; $k = $inc; } STACKTOP = sp;return; } function _silk_process_NLSFs($psEncC,$PredCoef_Q12,$pNLSF_Q15,$prev_NLSFq_Q15) { $psEncC = $psEncC|0; $PredCoef_Q12 = $PredCoef_Q12|0; $pNLSF_Q15 = $pNLSF_Q15|0; $prev_NLSFq_Q15 = $prev_NLSFq_Q15|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $8 = 0, $9 = 0, $NLSFIndices = 0, $NLSFInterpCoef_Q2 = 0, $NLSFInterpCoef_Q218 = 0, $NLSFInterpCoef_Q225 = 0, $NLSFInterpCoef_Q229 = 0, $NLSFInterpCoef_Q260 = 0, $NLSF_MSVQ_Survivors = 0, $NLSF_mu_Q20 = 0, $PredCoef_Q12$addr = 0, $add = 0; var $add44 = 0, $add6 = 0, $add9 = 0, $arch = 0, $arch67 = 0, $arrayidx = 0, $arrayidx39 = 0, $arrayidx46 = 0, $arrayidx53 = 0, $arrayidx70 = 0, $cmp = 0, $cmp10 = 0, $cmp13 = 0, $cmp35 = 0, $conv = 0, $conv1 = 0, $conv12 = 0, $conv19 = 0, $conv26 = 0, $conv27 = 0; var $conv3 = 0, $conv30 = 0, $conv31 = 0, $conv33 = 0, $conv37 = 0, $conv4 = 0, $conv40 = 0, $conv41 = 0, $conv45 = 0, $conv52 = 0, $conv61 = 0, $doInterpolate = 0, $i = 0, $i_sqr_Q15 = 0, $inc = 0, $indices = 0, $indices17 = 0, $indices24 = 0, $indices28 = 0, $indices48 = 0; var $indices51 = 0, $indices59 = 0, $land$ext = 0, $mul = 0, $mul32 = 0, $mul42 = 0, $mul5 = 0, $mul73 = 0, $nb_subfr = 0, $pNLSF0_temp_Q15 = 0, $pNLSFW0_temp_QW = 0, $pNLSFW_QW = 0, $pNLSF_Q15$addr = 0, $predictLPCOrder = 0, $predictLPCOrder20 = 0, $predictLPCOrder23 = 0, $predictLPCOrder34 = 0, $predictLPCOrder55 = 0, $predictLPCOrder62 = 0, $predictLPCOrder66 = 0; var $predictLPCOrder72 = 0, $prev_NLSFq_Q15$addr = 0, $psEncC$addr = 0, $psNLSF_CB = 0, $shl = 0, $shr = 0, $shr38 = 0, $shr43 = 0, $shr8 = 0, $signalType = 0, $speech_activity_Q8 = 0, $speech_activity_Q82 = 0, $tobool = 0, $tobool56 = 0, $useInterpolatedNLSFs = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 144|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(144|0); $pNLSF0_temp_Q15 = sp + 96|0; $pNLSFW_QW = sp + 64|0; $pNLSFW0_temp_QW = sp + 32|0; $psEncC$addr = $psEncC; $PredCoef_Q12$addr = $PredCoef_Q12; $pNLSF_Q15$addr = $pNLSF_Q15; $prev_NLSFq_Q15$addr = $prev_NLSFq_Q15; $0 = $psEncC$addr; $speech_activity_Q8 = ((($0)) + 4528|0); $1 = HEAP32[$speech_activity_Q8>>2]|0; $conv = $1&65535; $conv1 = $conv << 16 >> 16; $mul = Math_imul(-5, $conv1)|0; $2 = $psEncC$addr; $speech_activity_Q82 = ((($2)) + 4528|0); $3 = HEAP32[$speech_activity_Q82>>2]|0; $conv3 = $3&65535; $conv4 = $conv3 << 16 >> 16; $mul5 = ($conv4*59246)|0; $shr = $mul5 >> 16; $add = (($mul) + ($shr))|0; $add6 = (3146 + ($add))|0; $NLSF_mu_Q20 = $add6; $4 = $psEncC$addr; $nb_subfr = ((($4)) + 4576|0); $5 = HEAP32[$nb_subfr>>2]|0; $cmp = ($5|0)==(2); if ($cmp) { $6 = $NLSF_mu_Q20; $7 = $NLSF_mu_Q20; $shr8 = $7 >> 1; $add9 = (($6) + ($shr8))|0; $NLSF_mu_Q20 = $add9; } $8 = $pNLSF_Q15$addr; $9 = $psEncC$addr; $predictLPCOrder = ((($9)) + 4636|0); $10 = HEAP32[$predictLPCOrder>>2]|0; _silk_NLSF_VQ_weights_laroia($pNLSFW_QW,$8,$10); $11 = $psEncC$addr; $useInterpolatedNLSFs = ((($11)) + 4628|0); $12 = HEAP32[$useInterpolatedNLSFs>>2]|0; $cmp10 = ($12|0)==(1); if ($cmp10) { $13 = $psEncC$addr; $indices = ((($13)) + 4732|0); $NLSFInterpCoef_Q2 = ((($indices)) + 31|0); $14 = HEAP8[$NLSFInterpCoef_Q2>>0]|0; $conv12 = $14 << 24 >> 24; $cmp13 = ($conv12|0)<(4); $15 = $cmp13; } else { $15 = 0; } $land$ext = $15&1; $doInterpolate = $land$ext; $16 = $doInterpolate; $tobool = ($16|0)!=(0); L7: do { if ($tobool) { $17 = $prev_NLSFq_Q15$addr; $18 = $pNLSF_Q15$addr; $19 = $psEncC$addr; $indices17 = ((($19)) + 4732|0); $NLSFInterpCoef_Q218 = ((($indices17)) + 31|0); $20 = HEAP8[$NLSFInterpCoef_Q218>>0]|0; $conv19 = $20 << 24 >> 24; $21 = $psEncC$addr; $predictLPCOrder20 = ((($21)) + 4636|0); $22 = HEAP32[$predictLPCOrder20>>2]|0; _silk_interpolate($pNLSF0_temp_Q15,$17,$18,$conv19,$22); $23 = $psEncC$addr; $predictLPCOrder23 = ((($23)) + 4636|0); $24 = HEAP32[$predictLPCOrder23>>2]|0; _silk_NLSF_VQ_weights_laroia($pNLSFW0_temp_QW,$pNLSF0_temp_Q15,$24); $25 = $psEncC$addr; $indices24 = ((($25)) + 4732|0); $NLSFInterpCoef_Q225 = ((($indices24)) + 31|0); $26 = HEAP8[$NLSFInterpCoef_Q225>>0]|0; $conv26 = $26 << 24 >> 24; $conv27 = $conv26 << 16 >> 16; $27 = $psEncC$addr; $indices28 = ((($27)) + 4732|0); $NLSFInterpCoef_Q229 = ((($indices28)) + 31|0); $28 = HEAP8[$NLSFInterpCoef_Q229>>0]|0; $conv30 = $28 << 24 >> 24; $conv31 = $conv30 << 16 >> 16; $mul32 = Math_imul($conv27, $conv31)|0; $shl = $mul32 << 11; $conv33 = $shl&65535; $i_sqr_Q15 = $conv33; $i = 0; while(1) { $29 = $i; $30 = $psEncC$addr; $predictLPCOrder34 = ((($30)) + 4636|0); $31 = HEAP32[$predictLPCOrder34>>2]|0; $cmp35 = ($29|0)<($31|0); if (!($cmp35)) { break L7; } $32 = $i; $arrayidx = (($pNLSFW_QW) + ($32<<1)|0); $33 = HEAP16[$arrayidx>>1]|0; $conv37 = $33 << 16 >> 16; $shr38 = $conv37 >> 1; $34 = $i; $arrayidx39 = (($pNLSFW0_temp_QW) + ($34<<1)|0); $35 = HEAP16[$arrayidx39>>1]|0; $conv40 = $35 << 16 >> 16; $36 = $i_sqr_Q15; $conv41 = $36 << 16 >> 16; $mul42 = Math_imul($conv40, $conv41)|0; $shr43 = $mul42 >> 16; $add44 = (($shr38) + ($shr43))|0; $conv45 = $add44&65535; $37 = $i; $arrayidx46 = (($pNLSFW_QW) + ($37<<1)|0); HEAP16[$arrayidx46>>1] = $conv45; $38 = $i; $inc = (($38) + 1)|0; $i = $inc; } } } while(0); $39 = $psEncC$addr; $indices48 = ((($39)) + 4732|0); $NLSFIndices = ((($indices48)) + 8|0); $40 = $pNLSF_Q15$addr; $41 = $psEncC$addr; $psNLSF_CB = ((($41)) + 4688|0); $42 = HEAP32[$psNLSF_CB>>2]|0; $43 = $NLSF_mu_Q20; $44 = $psEncC$addr; $NLSF_MSVQ_Survivors = ((($44)) + 4656|0); $45 = HEAP32[$NLSF_MSVQ_Survivors>>2]|0; $46 = $psEncC$addr; $indices51 = ((($46)) + 4732|0); $signalType = ((($indices51)) + 29|0); $47 = HEAP8[$signalType>>0]|0; $conv52 = $47 << 24 >> 24; (_silk_NLSF_encode($NLSFIndices,$40,$42,$pNLSFW_QW,$43,$45,$conv52)|0); $48 = $PredCoef_Q12$addr; $arrayidx53 = ((($48)) + 32|0); $49 = $pNLSF_Q15$addr; $50 = $psEncC$addr; $predictLPCOrder55 = ((($50)) + 4636|0); $51 = HEAP32[$predictLPCOrder55>>2]|0; $52 = $psEncC$addr; $arch = ((($52)) + 5088|0); $53 = HEAP32[$arch>>2]|0; _silk_NLSF2A($arrayidx53,$49,$51,$53); $54 = $doInterpolate; $tobool56 = ($54|0)!=(0); if ($tobool56) { $55 = $prev_NLSFq_Q15$addr; $56 = $pNLSF_Q15$addr; $57 = $psEncC$addr; $indices59 = ((($57)) + 4732|0); $NLSFInterpCoef_Q260 = ((($indices59)) + 31|0); $58 = HEAP8[$NLSFInterpCoef_Q260>>0]|0; $conv61 = $58 << 24 >> 24; $59 = $psEncC$addr; $predictLPCOrder62 = ((($59)) + 4636|0); $60 = HEAP32[$predictLPCOrder62>>2]|0; _silk_interpolate($pNLSF0_temp_Q15,$55,$56,$conv61,$60); $61 = $PredCoef_Q12$addr; $62 = $psEncC$addr; $predictLPCOrder66 = ((($62)) + 4636|0); $63 = HEAP32[$predictLPCOrder66>>2]|0; $64 = $psEncC$addr; $arch67 = ((($64)) + 5088|0); $65 = HEAP32[$arch67>>2]|0; _silk_NLSF2A($61,$pNLSF0_temp_Q15,$63,$65); STACKTOP = sp;return; } else { $66 = $PredCoef_Q12$addr; $67 = $PredCoef_Q12$addr; $arrayidx70 = ((($67)) + 32|0); $68 = $psEncC$addr; $predictLPCOrder72 = ((($68)) + 4636|0); $69 = HEAP32[$predictLPCOrder72>>2]|0; $mul73 = $69<<1; _memcpy(($66|0),($arrayidx70|0),($mul73|0))|0; STACKTOP = sp;return; } } function _silk_A2NLSF($NLSF,$a_Q16,$d) { $NLSF = $NLSF|0; $a_Q16 = $a_Q16|0; $d = $d|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; var $NLSF$addr = 0, $P = 0, $PQ = 0, $Q = 0, $a_Q16$addr = 0, $add = 0, $add110 = 0, $add31 = 0, $add32 = 0, $add48 = 0, $add58 = 0, $add62 = 0, $add68 = 0, $add71 = 0, $add97 = 0, $and = 0, $and80 = 0, $and85 = 0, $arrayidx10 = 0, $arrayidx106 = 0; var $arrayidx112 = 0, $arrayidx2 = 0, $arrayidx74 = 0, $arrayidx81 = 0, $arrayidx83 = 0, $call = 0, $call12 = 0, $call123 = 0, $call129 = 0, $call33 = 0, $call72 = 0, $call9 = 0, $cmp = 0, $cmp102 = 0, $cmp124 = 0, $cmp13 = 0, $cmp15 = 0, $cmp17 = 0, $cmp20 = 0, $cmp23 = 0; var $cmp28 = 0, $cmp34 = 0, $cmp37 = 0, $cmp40 = 0, $cmp43 = 0, $cmp50 = 0, $cmp53 = 0, $cmp59 = 0, $cmp76 = 0, $cmp90 = 0, $cmp94 = 0, $cond = 0, $conv = 0, $conv107 = 0, $conv109 = 0, $conv11 = 0, $conv111 = 0, $conv122 = 0, $conv73 = 0, $conv84 = 0; var $conv99 = 0, $d$addr = 0, $dd = 0, $den = 0, $div = 0, $div67 = 0, $div98 = 0, $ffrac = 0, $i = 0, $inc = 0, $inc114 = 0, $inc75 = 0, $inc89 = 0, $inc93 = 0, $k = 0, $m = 0, $nom = 0, $or$cond = 0, $or$cond1 = 0, $p = 0; var $root_ix = 0, $shl = 0, $shl117 = 0, $shl70 = 0, $shl87 = 0, $shr = 0, $shr30 = 0, $shr47 = 0, $shr57 = 0, $shr66 = 0, $sub = 0, $sub105 = 0, $sub118 = 0, $sub52 = 0, $sub56 = 0, $sub65 = 0, $sub82 = 0, $sub86 = 0, $thr = 0, $xhi = 0; var $xlo = 0, $xmid = 0, $yhi = 0, $ylo = 0, $ymid = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 192|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(192|0); $P = sp + 68|0; $Q = sp + 16|0; $PQ = sp + 8|0; $NLSF$addr = $NLSF; $a_Q16$addr = $a_Q16; $d$addr = $d; HEAP32[$PQ>>2] = $P; $arrayidx2 = ((($PQ)) + 4|0); HEAP32[$arrayidx2>>2] = $Q; $0 = $d$addr; $shr = $0 >> 1; $dd = $shr; $1 = $a_Q16$addr; $2 = $dd; _silk_A2NLSF_init($1,$P,$Q,$2); $p = $P; $3 = HEAP16[12820]|0; $conv = $3 << 16 >> 16; $xlo = $conv; $4 = $p; $5 = $xlo; $6 = $dd; $call = (_silk_A2NLSF_eval_poly($4,$5,$6)|0); $ylo = $call; $7 = $ylo; $cmp = ($7|0)<(0); if ($cmp) { $8 = $NLSF$addr; HEAP16[$8>>1] = 0; $p = $Q; $9 = $p; $10 = $xlo; $11 = $dd; $call9 = (_silk_A2NLSF_eval_poly($9,$10,$11)|0); $ylo = $call9; $root_ix = 1; } else { $root_ix = 0; } $k = 1; $i = 0; $thr = 0; L5: while(1) { $12 = $k; $arrayidx10 = (25640 + ($12<<1)|0); $13 = HEAP16[$arrayidx10>>1]|0; $conv11 = $13 << 16 >> 16; $xhi = $conv11; $14 = $p; $15 = $xhi; $16 = $dd; $call12 = (_silk_A2NLSF_eval_poly($14,$15,$16)|0); $yhi = $call12; $17 = $ylo; $cmp13 = ($17|0)<=(0); if ($cmp13) { $18 = $yhi; $19 = $thr; $cmp15 = ($18|0)>=($19|0); if (!($cmp15)) { label = 7; } } else { label = 7; } do { if ((label|0) == 7) { label = 0; $20 = $ylo; $cmp17 = ($20|0)>=(0); if ($cmp17) { $21 = $yhi; $22 = $thr; $sub = (0 - ($22))|0; $cmp20 = ($21|0)<=($sub|0); if ($cmp20) { break; } } $68 = $k; $inc89 = (($68) + 1)|0; $k = $inc89; $69 = $xhi; $xlo = $69; $70 = $yhi; $ylo = $70; $thr = 0; $71 = $k; $cmp90 = ($71|0)>(128); if (!($cmp90)) { continue L5; } $72 = $i; $inc93 = (($72) + 1)|0; $i = $inc93; $73 = $i; $cmp94 = ($73|0)>(16); if ($cmp94) { break L5; } $86 = $a_Q16$addr; $87 = $d$addr; $88 = $i; $shl117 = 1 << $88; $sub118 = (65536 - ($shl117))|0; _silk_bwexpander_32($86,$87,$sub118); $89 = $a_Q16$addr; $90 = $dd; _silk_A2NLSF_init($89,$P,$Q,$90); $p = $P; $91 = HEAP16[12820]|0; $conv122 = $91 << 16 >> 16; $xlo = $conv122; $92 = $p; $93 = $xlo; $94 = $dd; $call123 = (_silk_A2NLSF_eval_poly($92,$93,$94)|0); $ylo = $call123; $95 = $ylo; $cmp124 = ($95|0)<(0); if ($cmp124) { $96 = $NLSF$addr; HEAP16[$96>>1] = 0; $p = $Q; $97 = $p; $98 = $xlo; $99 = $dd; $call129 = (_silk_A2NLSF_eval_poly($97,$98,$99)|0); $ylo = $call129; $root_ix = 1; } else { $root_ix = 0; } $k = 1; continue L5; } } while(0); $23 = $yhi; $cmp23 = ($23|0)==(0); if ($cmp23) { $thr = 1; } else { $thr = 0; } $ffrac = -256; $m = 0; while(1) { $24 = $m; $cmp28 = ($24|0)<(3); if (!($cmp28)) { break; } $25 = $xlo; $26 = $xhi; $add = (($25) + ($26))|0; $shr30 = $add >> 1; $27 = $xlo; $28 = $xhi; $add31 = (($27) + ($28))|0; $and = $add31 & 1; $add32 = (($shr30) + ($and))|0; $xmid = $add32; $29 = $p; $30 = $xmid; $31 = $dd; $call33 = (_silk_A2NLSF_eval_poly($29,$30,$31)|0); $ymid = $call33; $32 = $ylo; $cmp34 = ($32|0)<=(0); $33 = $ymid; $cmp37 = ($33|0)>=(0); $or$cond = $cmp34 & $cmp37; if ($or$cond) { label = 16; } else { $34 = $ylo; $cmp40 = ($34|0)>=(0); $35 = $ymid; $cmp43 = ($35|0)<=(0); $or$cond1 = $cmp40 & $cmp43; if ($or$cond1) { label = 16; } else { $38 = $xmid; $xlo = $38; $39 = $ymid; $ylo = $39; $40 = $ffrac; $41 = $m; $shr47 = 128 >> $41; $add48 = (($40) + ($shr47))|0; $ffrac = $add48; } } if ((label|0) == 16) { label = 0; $36 = $xmid; $xhi = $36; $37 = $ymid; $yhi = $37; } $42 = $m; $inc = (($42) + 1)|0; $m = $inc; } $43 = $ylo; $cmp50 = ($43|0)>(0); $44 = $ylo; $sub52 = (0 - ($44))|0; $cond = $cmp50 ? $44 : $sub52; $cmp53 = ($cond|0)<(65536); $45 = $ylo; if ($cmp53) { $46 = $yhi; $sub56 = (($45) - ($46))|0; $den = $sub56; $47 = $ylo; $shl = $47 << 5; $48 = $den; $shr57 = $48 >> 1; $add58 = (($shl) + ($shr57))|0; $nom = $add58; $49 = $den; $cmp59 = ($49|0)!=(0); if ($cmp59) { $50 = $nom; $51 = $den; $div = (($50|0) / ($51|0))&-1; $52 = $ffrac; $add62 = (($52) + ($div))|0; $ffrac = $add62; } } else { $53 = $ylo; $54 = $yhi; $sub65 = (($53) - ($54))|0; $shr66 = $sub65 >> 5; $div67 = (($45|0) / ($shr66|0))&-1; $55 = $ffrac; $add68 = (($55) + ($div67))|0; $ffrac = $add68; } $56 = $k; $shl70 = $56 << 8; $57 = $ffrac; $add71 = (($shl70) + ($57))|0; $call72 = (_silk_min_32_471($add71,32767)|0); $conv73 = $call72&65535; $58 = $NLSF$addr; $59 = $root_ix; $arrayidx74 = (($58) + ($59<<1)|0); HEAP16[$arrayidx74>>1] = $conv73; $60 = $root_ix; $inc75 = (($60) + 1)|0; $root_ix = $inc75; $61 = $root_ix; $62 = $d$addr; $cmp76 = ($61|0)>=($62|0); if ($cmp76) { label = 34; break; } $63 = $root_ix; $and80 = $63 & 1; $arrayidx81 = (($PQ) + ($and80<<2)|0); $64 = HEAP32[$arrayidx81>>2]|0; $p = $64; $65 = $k; $sub82 = (($65) - 1)|0; $arrayidx83 = (25640 + ($sub82<<1)|0); $66 = HEAP16[$arrayidx83>>1]|0; $conv84 = $66 << 16 >> 16; $xlo = $conv84; $67 = $root_ix; $and85 = $67 & 2; $sub86 = (1 - ($and85))|0; $shl87 = $sub86 << 12; $ylo = $shl87; } if ((label|0) == 34) { STACKTOP = sp;return; } $74 = $d$addr; $add97 = (($74) + 1)|0; $div98 = (32768 / ($add97|0))&-1; $conv99 = $div98&65535; $75 = $NLSF$addr; HEAP16[$75>>1] = $conv99; $k = 1; while(1) { $76 = $k; $77 = $d$addr; $cmp102 = ($76|0)<($77|0); if (!($cmp102)) { break; } $78 = $NLSF$addr; $79 = $k; $sub105 = (($79) - 1)|0; $arrayidx106 = (($78) + ($sub105<<1)|0); $80 = HEAP16[$arrayidx106>>1]|0; $conv107 = $80 << 16 >> 16; $81 = $NLSF$addr; $82 = HEAP16[$81>>1]|0; $conv109 = $82 << 16 >> 16; $add110 = (($conv107) + ($conv109))|0; $conv111 = $add110&65535; $83 = $NLSF$addr; $84 = $k; $arrayidx112 = (($83) + ($84<<1)|0); HEAP16[$arrayidx112>>1] = $conv111; $85 = $k; $inc114 = (($85) + 1)|0; $k = $inc114; } STACKTOP = sp;return; } function _silk_A2NLSF_init($a_Q16,$P,$Q,$dd) { $a_Q16 = $a_Q16|0; $P = $P|0; $Q = $Q|0; $dd = $dd|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $P$addr = 0, $Q$addr = 0, $a_Q16$addr = 0, $add = 0, $add12 = 0, $add14 = 0, $add26 = 0, $arrayidx = 0, $arrayidx1 = 0, $arrayidx10 = 0, $arrayidx13 = 0, $arrayidx15 = 0, $arrayidx19 = 0, $arrayidx21 = 0, $arrayidx23 = 0; var $arrayidx25 = 0, $arrayidx3 = 0, $arrayidx5 = 0, $arrayidx7 = 0, $cmp = 0, $cmp17 = 0, $dd$addr = 0, $dec = 0, $inc = 0, $k = 0, $sub = 0, $sub11 = 0, $sub2 = 0, $sub20 = 0, $sub22 = 0, $sub24 = 0, $sub4 = 0, $sub6 = 0, $sub8 = 0, $sub9 = 0; var label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $a_Q16$addr = $a_Q16; $P$addr = $P; $Q$addr = $Q; $dd$addr = $dd; $0 = $P$addr; $1 = $dd$addr; $arrayidx = (($0) + ($1<<2)|0); HEAP32[$arrayidx>>2] = 65536; $2 = $Q$addr; $3 = $dd$addr; $arrayidx1 = (($2) + ($3<<2)|0); HEAP32[$arrayidx1>>2] = 65536; $k = 0; while(1) { $4 = $k; $5 = $dd$addr; $cmp = ($4|0)<($5|0); if (!($cmp)) { break; } $6 = $a_Q16$addr; $7 = $dd$addr; $8 = $k; $sub = (($7) - ($8))|0; $sub2 = (($sub) - 1)|0; $arrayidx3 = (($6) + ($sub2<<2)|0); $9 = HEAP32[$arrayidx3>>2]|0; $sub4 = (0 - ($9))|0; $10 = $a_Q16$addr; $11 = $dd$addr; $12 = $k; $add = (($11) + ($12))|0; $arrayidx5 = (($10) + ($add<<2)|0); $13 = HEAP32[$arrayidx5>>2]|0; $sub6 = (($sub4) - ($13))|0; $14 = $P$addr; $15 = $k; $arrayidx7 = (($14) + ($15<<2)|0); HEAP32[$arrayidx7>>2] = $sub6; $16 = $a_Q16$addr; $17 = $dd$addr; $18 = $k; $sub8 = (($17) - ($18))|0; $sub9 = (($sub8) - 1)|0; $arrayidx10 = (($16) + ($sub9<<2)|0); $19 = HEAP32[$arrayidx10>>2]|0; $sub11 = (0 - ($19))|0; $20 = $a_Q16$addr; $21 = $dd$addr; $22 = $k; $add12 = (($21) + ($22))|0; $arrayidx13 = (($20) + ($add12<<2)|0); $23 = HEAP32[$arrayidx13>>2]|0; $add14 = (($sub11) + ($23))|0; $24 = $Q$addr; $25 = $k; $arrayidx15 = (($24) + ($25<<2)|0); HEAP32[$arrayidx15>>2] = $add14; $26 = $k; $inc = (($26) + 1)|0; $k = $inc; } $27 = $dd$addr; $k = $27; while(1) { $28 = $k; $cmp17 = ($28|0)>(0); $29 = $P$addr; if (!($cmp17)) { break; } $30 = $k; $arrayidx19 = (($29) + ($30<<2)|0); $31 = HEAP32[$arrayidx19>>2]|0; $32 = $P$addr; $33 = $k; $sub20 = (($33) - 1)|0; $arrayidx21 = (($32) + ($sub20<<2)|0); $34 = HEAP32[$arrayidx21>>2]|0; $sub22 = (($34) - ($31))|0; HEAP32[$arrayidx21>>2] = $sub22; $35 = $Q$addr; $36 = $k; $arrayidx23 = (($35) + ($36<<2)|0); $37 = HEAP32[$arrayidx23>>2]|0; $38 = $Q$addr; $39 = $k; $sub24 = (($39) - 1)|0; $arrayidx25 = (($38) + ($sub24<<2)|0); $40 = HEAP32[$arrayidx25>>2]|0; $add26 = (($40) + ($37))|0; HEAP32[$arrayidx25>>2] = $add26; $41 = $k; $dec = (($41) + -1)|0; $k = $dec; } $42 = $dd$addr; _silk_A2NLSF_trans_poly($29,$42); $43 = $Q$addr; $44 = $dd$addr; _silk_A2NLSF_trans_poly($43,$44); STACKTOP = sp;return; } function _silk_A2NLSF_eval_poly($p,$x,$dd) { $p = $p|0; $x = $x|0; $dd = $dd|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; var $81 = 0, $9 = 0, $add = 0, $add10 = 0, $add109 = 0, $add110 = 0, $add112 = 0, $add115 = 0, $add126 = 0, $add127 = 0, $add129 = 0, $add13 = 0, $add132 = 0, $add145 = 0, $add146 = 0, $add148 = 0, $add151 = 0, $add24 = 0, $add25 = 0, $add27 = 0; var $add30 = 0, $add41 = 0, $add42 = 0, $add44 = 0, $add47 = 0, $add58 = 0, $add59 = 0, $add61 = 0, $add64 = 0, $add75 = 0, $add76 = 0, $add78 = 0, $add8 = 0, $add81 = 0, $add92 = 0, $add93 = 0, $add95 = 0, $add98 = 0, $and = 0, $and104 = 0; var $and121 = 0, $and140 = 0, $and19 = 0, $and36 = 0, $and53 = 0, $and70 = 0, $and87 = 0, $arrayidx = 0, $arrayidx135 = 0, $arrayidx14 = 0, $arrayidx2 = 0, $arrayidx31 = 0, $arrayidx48 = 0, $arrayidx65 = 0, $arrayidx82 = 0, $arrayidx99 = 0, $cmp = 0, $cmp133 = 0, $conv = 0, $conv101 = 0; var $conv102 = 0, $conv105 = 0, $conv106 = 0, $conv118 = 0, $conv119 = 0, $conv122 = 0, $conv123 = 0, $conv137 = 0, $conv138 = 0, $conv141 = 0, $conv142 = 0, $conv16 = 0, $conv17 = 0, $conv20 = 0, $conv21 = 0, $conv3 = 0, $conv33 = 0, $conv34 = 0, $conv37 = 0, $conv38 = 0; var $conv4 = 0, $conv5 = 0, $conv50 = 0, $conv51 = 0, $conv54 = 0, $conv55 = 0, $conv67 = 0, $conv68 = 0, $conv71 = 0, $conv72 = 0, $conv84 = 0, $conv85 = 0, $conv88 = 0, $conv89 = 0, $dd$addr = 0, $dec = 0, $lnot = 0, $lnot1 = 0, $mul = 0, $mul103 = 0; var $mul107 = 0, $mul114 = 0, $mul12 = 0, $mul120 = 0, $mul124 = 0, $mul131 = 0, $mul139 = 0, $mul143 = 0, $mul150 = 0, $mul18 = 0, $mul22 = 0, $mul29 = 0, $mul35 = 0, $mul39 = 0, $mul46 = 0, $mul52 = 0, $mul56 = 0, $mul6 = 0, $mul63 = 0, $mul69 = 0; var $mul73 = 0, $mul80 = 0, $mul86 = 0, $mul90 = 0, $mul97 = 0, $n = 0, $p$addr = 0, $shl = 0, $shr = 0, $shr100 = 0, $shr108 = 0, $shr11 = 0, $shr111 = 0, $shr113 = 0, $shr117 = 0, $shr125 = 0, $shr128 = 0, $shr130 = 0, $shr136 = 0, $shr144 = 0; var $shr147 = 0, $shr149 = 0, $shr15 = 0, $shr23 = 0, $shr26 = 0, $shr28 = 0, $shr32 = 0, $shr40 = 0, $shr43 = 0, $shr45 = 0, $shr49 = 0, $shr57 = 0, $shr60 = 0, $shr62 = 0, $shr66 = 0, $shr7 = 0, $shr74 = 0, $shr77 = 0, $shr79 = 0, $shr83 = 0; var $shr9 = 0, $shr91 = 0, $shr94 = 0, $shr96 = 0, $sub = 0, $x$addr = 0, $x_Q16 = 0, $y32 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $p$addr = $p; $x$addr = $x; $dd$addr = $dd; $0 = $p$addr; $1 = $dd$addr; $arrayidx = (($0) + ($1<<2)|0); $2 = HEAP32[$arrayidx>>2]|0; $y32 = $2; $3 = $x$addr; $shl = $3 << 4; $x_Q16 = $shl; $4 = $dd$addr; $cmp = (8)==($4|0); $lnot = $cmp ^ 1; $lnot1 = $lnot ^ 1; if ($lnot1) { $5 = $p$addr; $arrayidx2 = ((($5)) + 28|0); $6 = HEAP32[$arrayidx2>>2]|0; $7 = $y32; $shr = $7 >> 16; $8 = $x_Q16; $conv = $8&65535; $conv3 = $conv << 16 >> 16; $mul = Math_imul($shr, $conv3)|0; $9 = $y32; $and = $9 & 65535; $10 = $x_Q16; $conv4 = $10&65535; $conv5 = $conv4 << 16 >> 16; $mul6 = Math_imul($and, $conv5)|0; $shr7 = $mul6 >> 16; $add = (($mul) + ($shr7))|0; $add8 = (($6) + ($add))|0; $11 = $y32; $12 = $x_Q16; $shr9 = $12 >> 15; $add10 = (($shr9) + 1)|0; $shr11 = $add10 >> 1; $mul12 = Math_imul($11, $shr11)|0; $add13 = (($add8) + ($mul12))|0; $y32 = $add13; $13 = $p$addr; $arrayidx14 = ((($13)) + 24|0); $14 = HEAP32[$arrayidx14>>2]|0; $15 = $y32; $shr15 = $15 >> 16; $16 = $x_Q16; $conv16 = $16&65535; $conv17 = $conv16 << 16 >> 16; $mul18 = Math_imul($shr15, $conv17)|0; $17 = $y32; $and19 = $17 & 65535; $18 = $x_Q16; $conv20 = $18&65535; $conv21 = $conv20 << 16 >> 16; $mul22 = Math_imul($and19, $conv21)|0; $shr23 = $mul22 >> 16; $add24 = (($mul18) + ($shr23))|0; $add25 = (($14) + ($add24))|0; $19 = $y32; $20 = $x_Q16; $shr26 = $20 >> 15; $add27 = (($shr26) + 1)|0; $shr28 = $add27 >> 1; $mul29 = Math_imul($19, $shr28)|0; $add30 = (($add25) + ($mul29))|0; $y32 = $add30; $21 = $p$addr; $arrayidx31 = ((($21)) + 20|0); $22 = HEAP32[$arrayidx31>>2]|0; $23 = $y32; $shr32 = $23 >> 16; $24 = $x_Q16; $conv33 = $24&65535; $conv34 = $conv33 << 16 >> 16; $mul35 = Math_imul($shr32, $conv34)|0; $25 = $y32; $and36 = $25 & 65535; $26 = $x_Q16; $conv37 = $26&65535; $conv38 = $conv37 << 16 >> 16; $mul39 = Math_imul($and36, $conv38)|0; $shr40 = $mul39 >> 16; $add41 = (($mul35) + ($shr40))|0; $add42 = (($22) + ($add41))|0; $27 = $y32; $28 = $x_Q16; $shr43 = $28 >> 15; $add44 = (($shr43) + 1)|0; $shr45 = $add44 >> 1; $mul46 = Math_imul($27, $shr45)|0; $add47 = (($add42) + ($mul46))|0; $y32 = $add47; $29 = $p$addr; $arrayidx48 = ((($29)) + 16|0); $30 = HEAP32[$arrayidx48>>2]|0; $31 = $y32; $shr49 = $31 >> 16; $32 = $x_Q16; $conv50 = $32&65535; $conv51 = $conv50 << 16 >> 16; $mul52 = Math_imul($shr49, $conv51)|0; $33 = $y32; $and53 = $33 & 65535; $34 = $x_Q16; $conv54 = $34&65535; $conv55 = $conv54 << 16 >> 16; $mul56 = Math_imul($and53, $conv55)|0; $shr57 = $mul56 >> 16; $add58 = (($mul52) + ($shr57))|0; $add59 = (($30) + ($add58))|0; $35 = $y32; $36 = $x_Q16; $shr60 = $36 >> 15; $add61 = (($shr60) + 1)|0; $shr62 = $add61 >> 1; $mul63 = Math_imul($35, $shr62)|0; $add64 = (($add59) + ($mul63))|0; $y32 = $add64; $37 = $p$addr; $arrayidx65 = ((($37)) + 12|0); $38 = HEAP32[$arrayidx65>>2]|0; $39 = $y32; $shr66 = $39 >> 16; $40 = $x_Q16; $conv67 = $40&65535; $conv68 = $conv67 << 16 >> 16; $mul69 = Math_imul($shr66, $conv68)|0; $41 = $y32; $and70 = $41 & 65535; $42 = $x_Q16; $conv71 = $42&65535; $conv72 = $conv71 << 16 >> 16; $mul73 = Math_imul($and70, $conv72)|0; $shr74 = $mul73 >> 16; $add75 = (($mul69) + ($shr74))|0; $add76 = (($38) + ($add75))|0; $43 = $y32; $44 = $x_Q16; $shr77 = $44 >> 15; $add78 = (($shr77) + 1)|0; $shr79 = $add78 >> 1; $mul80 = Math_imul($43, $shr79)|0; $add81 = (($add76) + ($mul80))|0; $y32 = $add81; $45 = $p$addr; $arrayidx82 = ((($45)) + 8|0); $46 = HEAP32[$arrayidx82>>2]|0; $47 = $y32; $shr83 = $47 >> 16; $48 = $x_Q16; $conv84 = $48&65535; $conv85 = $conv84 << 16 >> 16; $mul86 = Math_imul($shr83, $conv85)|0; $49 = $y32; $and87 = $49 & 65535; $50 = $x_Q16; $conv88 = $50&65535; $conv89 = $conv88 << 16 >> 16; $mul90 = Math_imul($and87, $conv89)|0; $shr91 = $mul90 >> 16; $add92 = (($mul86) + ($shr91))|0; $add93 = (($46) + ($add92))|0; $51 = $y32; $52 = $x_Q16; $shr94 = $52 >> 15; $add95 = (($shr94) + 1)|0; $shr96 = $add95 >> 1; $mul97 = Math_imul($51, $shr96)|0; $add98 = (($add93) + ($mul97))|0; $y32 = $add98; $53 = $p$addr; $arrayidx99 = ((($53)) + 4|0); $54 = HEAP32[$arrayidx99>>2]|0; $55 = $y32; $shr100 = $55 >> 16; $56 = $x_Q16; $conv101 = $56&65535; $conv102 = $conv101 << 16 >> 16; $mul103 = Math_imul($shr100, $conv102)|0; $57 = $y32; $and104 = $57 & 65535; $58 = $x_Q16; $conv105 = $58&65535; $conv106 = $conv105 << 16 >> 16; $mul107 = Math_imul($and104, $conv106)|0; $shr108 = $mul107 >> 16; $add109 = (($mul103) + ($shr108))|0; $add110 = (($54) + ($add109))|0; $59 = $y32; $60 = $x_Q16; $shr111 = $60 >> 15; $add112 = (($shr111) + 1)|0; $shr113 = $add112 >> 1; $mul114 = Math_imul($59, $shr113)|0; $add115 = (($add110) + ($mul114))|0; $y32 = $add115; $61 = $p$addr; $62 = HEAP32[$61>>2]|0; $63 = $y32; $shr117 = $63 >> 16; $64 = $x_Q16; $conv118 = $64&65535; $conv119 = $conv118 << 16 >> 16; $mul120 = Math_imul($shr117, $conv119)|0; $65 = $y32; $and121 = $65 & 65535; $66 = $x_Q16; $conv122 = $66&65535; $conv123 = $conv122 << 16 >> 16; $mul124 = Math_imul($and121, $conv123)|0; $shr125 = $mul124 >> 16; $add126 = (($mul120) + ($shr125))|0; $add127 = (($62) + ($add126))|0; $67 = $y32; $68 = $x_Q16; $shr128 = $68 >> 15; $add129 = (($shr128) + 1)|0; $shr130 = $add129 >> 1; $mul131 = Math_imul($67, $shr130)|0; $add132 = (($add127) + ($mul131))|0; $y32 = $add132; $81 = $y32; STACKTOP = sp;return ($81|0); } $69 = $dd$addr; $sub = (($69) - 1)|0; $n = $sub; while(1) { $70 = $n; $cmp133 = ($70|0)>=(0); if (!($cmp133)) { break; } $71 = $p$addr; $72 = $n; $arrayidx135 = (($71) + ($72<<2)|0); $73 = HEAP32[$arrayidx135>>2]|0; $74 = $y32; $shr136 = $74 >> 16; $75 = $x_Q16; $conv137 = $75&65535; $conv138 = $conv137 << 16 >> 16; $mul139 = Math_imul($shr136, $conv138)|0; $76 = $y32; $and140 = $76 & 65535; $77 = $x_Q16; $conv141 = $77&65535; $conv142 = $conv141 << 16 >> 16; $mul143 = Math_imul($and140, $conv142)|0; $shr144 = $mul143 >> 16; $add145 = (($mul139) + ($shr144))|0; $add146 = (($73) + ($add145))|0; $78 = $y32; $79 = $x_Q16; $shr147 = $79 >> 15; $add148 = (($shr147) + 1)|0; $shr149 = $add148 >> 1; $mul150 = Math_imul($78, $shr149)|0; $add151 = (($add146) + ($mul150))|0; $y32 = $add151; $80 = $n; $dec = (($80) + -1)|0; $n = $dec; } $81 = $y32; STACKTOP = sp;return ($81|0); } function _silk_min_32_471($a,$b) { $a = $a|0; $b = $b|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $a$addr = 0, $b$addr = 0, $cmp = 0, $cond = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $a$addr = $a; $b$addr = $b; $0 = $a$addr; $1 = $b$addr; $cmp = ($0|0)<($1|0); $2 = $a$addr; $3 = $b$addr; $cond = $cmp ? $2 : $3; STACKTOP = sp;return ($cond|0); } function _silk_A2NLSF_trans_poly($p,$dd) { $p = $p|0; $dd = $dd|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $arrayidx = 0, $arrayidx4 = 0; var $arrayidx6 = 0, $arrayidx8 = 0, $cmp = 0, $cmp2 = 0, $dd$addr = 0, $dec = 0, $inc = 0, $k = 0, $n = 0, $p$addr = 0, $shl = 0, $sub = 0, $sub5 = 0, $sub7 = 0, $sub9 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $p$addr = $p; $dd$addr = $dd; $k = 2; while(1) { $0 = $k; $1 = $dd$addr; $cmp = ($0|0)<=($1|0); if (!($cmp)) { break; } $2 = $dd$addr; $n = $2; while(1) { $3 = $n; $4 = $k; $cmp2 = ($3|0)>($4|0); $5 = $p$addr; if (!($cmp2)) { break; } $6 = $n; $arrayidx = (($5) + ($6<<2)|0); $7 = HEAP32[$arrayidx>>2]|0; $8 = $p$addr; $9 = $n; $sub = (($9) - 2)|0; $arrayidx4 = (($8) + ($sub<<2)|0); $10 = HEAP32[$arrayidx4>>2]|0; $sub5 = (($10) - ($7))|0; HEAP32[$arrayidx4>>2] = $sub5; $11 = $n; $dec = (($11) + -1)|0; $n = $dec; } $12 = $k; $arrayidx6 = (($5) + ($12<<2)|0); $13 = HEAP32[$arrayidx6>>2]|0; $shl = $13 << 1; $14 = $p$addr; $15 = $k; $sub7 = (($15) - 2)|0; $arrayidx8 = (($14) + ($sub7<<2)|0); $16 = HEAP32[$arrayidx8>>2]|0; $sub9 = (($16) - ($shl))|0; HEAP32[$arrayidx8>>2] = $sub9; $17 = $k; $inc = (($17) + 1)|0; $k = $inc; } STACKTOP = sp;return; } function _silk_ana_filt_bank_1($in,$S,$outL,$outH,$N) { $in = $in|0; $S = $S|0; $outL = $outL|0; $outH = $outH|0; $N = $N|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $N$addr = 0, $N2 = 0, $S$addr = 0, $X = 0, $Y = 0, $add = 0, $add10 = 0, $add11 = 0, $add14 = 0, $add27 = 0, $add29 = 0; var $add30 = 0, $add32 = 0, $add34 = 0, $add38 = 0, $add40 = 0, $add46 = 0, $add48 = 0, $add56 = 0, $add64 = 0, $add72 = 0, $add8 = 0, $and = 0, $and23 = 0, $arrayidx = 0, $arrayidx15 = 0, $arrayidx18 = 0, $arrayidx28 = 0, $arrayidx31 = 0, $arrayidx53 = 0, $arrayidx79 = 0; var $cmp = 0, $cmp36 = 0, $cmp42 = 0, $cmp58 = 0, $cmp66 = 0, $cond51 = 0, $cond77 = 0, $conv = 0, $conv16 = 0, $conv21 = 0, $conv24 = 0, $conv3 = 0, $conv5 = 0, $conv52 = 0, $conv78 = 0, $in$addr = 0, $in32 = 0, $inc = 0, $k = 0, $mul = 0; var $mul13 = 0, $mul22 = 0, $mul25 = 0, $mul4 = 0, $mul6 = 0, $outH$addr = 0, $outL$addr = 0, $out_1 = 0, $out_2 = 0, $shl = 0, $shl17 = 0, $shr = 0, $shr2 = 0, $shr20 = 0, $shr26 = 0, $shr33 = 0, $shr35 = 0, $shr39 = 0, $shr41 = 0, $shr47 = 0; var $shr49 = 0, $shr55 = 0, $shr57 = 0, $shr63 = 0, $shr65 = 0, $shr7 = 0, $shr71 = 0, $shr73 = 0, $sub = 0, $sub19 = 0, $sub54 = 0, $sub62 = 0, $sub70 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $in$addr = $in; $S$addr = $S; $outL$addr = $outL; $outH$addr = $outH; $N$addr = $N; $0 = $N$addr; $shr = $0 >> 1; $N2 = $shr; $k = 0; while(1) { $1 = $k; $2 = $N2; $cmp = ($1|0)<($2|0); if (!($cmp)) { break; } $3 = $in$addr; $4 = $k; $mul = $4<<1; $arrayidx = (($3) + ($mul<<1)|0); $5 = HEAP16[$arrayidx>>1]|0; $conv = $5 << 16 >> 16; $shl = $conv << 10; $in32 = $shl; $6 = $in32; $7 = $S$addr; $8 = HEAP32[$7>>2]|0; $sub = (($6) - ($8))|0; $Y = $sub; $9 = $Y; $10 = $Y; $shr2 = $10 >> 16; $conv3 = -24290 << 16 >> 16; $mul4 = Math_imul($shr2, $conv3)|0; $11 = $Y; $and = $11 & 65535; $conv5 = -24290 << 16 >> 16; $mul6 = Math_imul($and, $conv5)|0; $shr7 = $mul6 >> 16; $add = (($mul4) + ($shr7))|0; $add8 = (($9) + ($add))|0; $X = $add8; $12 = $S$addr; $13 = HEAP32[$12>>2]|0; $14 = $X; $add10 = (($13) + ($14))|0; $out_1 = $add10; $15 = $in32; $16 = $X; $add11 = (($15) + ($16))|0; $17 = $S$addr; HEAP32[$17>>2] = $add11; $18 = $in$addr; $19 = $k; $mul13 = $19<<1; $add14 = (($mul13) + 1)|0; $arrayidx15 = (($18) + ($add14<<1)|0); $20 = HEAP16[$arrayidx15>>1]|0; $conv16 = $20 << 16 >> 16; $shl17 = $conv16 << 10; $in32 = $shl17; $21 = $in32; $22 = $S$addr; $arrayidx18 = ((($22)) + 4|0); $23 = HEAP32[$arrayidx18>>2]|0; $sub19 = (($21) - ($23))|0; $Y = $sub19; $24 = $Y; $shr20 = $24 >> 16; $conv21 = 10788 << 16 >> 16; $mul22 = Math_imul($shr20, $conv21)|0; $25 = $Y; $and23 = $25 & 65535; $conv24 = 10788 << 16 >> 16; $mul25 = Math_imul($and23, $conv24)|0; $shr26 = $mul25 >> 16; $add27 = (($mul22) + ($shr26))|0; $X = $add27; $26 = $S$addr; $arrayidx28 = ((($26)) + 4|0); $27 = HEAP32[$arrayidx28>>2]|0; $28 = $X; $add29 = (($27) + ($28))|0; $out_2 = $add29; $29 = $in32; $30 = $X; $add30 = (($29) + ($30))|0; $31 = $S$addr; $arrayidx31 = ((($31)) + 4|0); HEAP32[$arrayidx31>>2] = $add30; $32 = $out_2; $33 = $out_1; $add32 = (($32) + ($33))|0; $shr33 = $add32 >> 10; $add34 = (($shr33) + 1)|0; $shr35 = $add34 >> 1; $cmp36 = ($shr35|0)>(32767); if ($cmp36) { $cond51 = 32767; } else { $34 = $out_2; $35 = $out_1; $add38 = (($34) + ($35))|0; $shr39 = $add38 >> 10; $add40 = (($shr39) + 1)|0; $shr41 = $add40 >> 1; $cmp42 = ($shr41|0)<(-32768); if ($cmp42) { $cond51 = -32768; } else { $36 = $out_2; $37 = $out_1; $add46 = (($36) + ($37))|0; $shr47 = $add46 >> 10; $add48 = (($shr47) + 1)|0; $shr49 = $add48 >> 1; $cond51 = $shr49; } } $conv52 = $cond51&65535; $38 = $outL$addr; $39 = $k; $arrayidx53 = (($38) + ($39<<1)|0); HEAP16[$arrayidx53>>1] = $conv52; $40 = $out_2; $41 = $out_1; $sub54 = (($40) - ($41))|0; $shr55 = $sub54 >> 10; $add56 = (($shr55) + 1)|0; $shr57 = $add56 >> 1; $cmp58 = ($shr57|0)>(32767); if ($cmp58) { $cond77 = 32767; } else { $42 = $out_2; $43 = $out_1; $sub62 = (($42) - ($43))|0; $shr63 = $sub62 >> 10; $add64 = (($shr63) + 1)|0; $shr65 = $add64 >> 1; $cmp66 = ($shr65|0)<(-32768); if ($cmp66) { $cond77 = -32768; } else { $44 = $out_2; $45 = $out_1; $sub70 = (($44) - ($45))|0; $shr71 = $sub70 >> 10; $add72 = (($shr71) + 1)|0; $shr73 = $add72 >> 1; $cond77 = $shr73; } } $conv78 = $cond77&65535; $46 = $outH$addr; $47 = $k; $arrayidx79 = (($46) + ($47<<1)|0); HEAP16[$arrayidx79>>1] = $conv78; $48 = $k; $inc = (($48) + 1)|0; $k = $inc; } STACKTOP = sp;return; } function _silk_biquad_alt_stride1($in,$B_Q28,$A_Q28,$S,$out,$len) { $in = $in|0; $B_Q28 = $B_Q28|0; $A_Q28 = $A_Q28|0; $S = $S|0; $out = $out|0; $len = $len|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $8 = 0, $9 = 0, $A0_L_Q28 = 0, $A0_U_Q28 = 0, $A1_L_Q28 = 0, $A1_U_Q28 = 0, $A_Q28$addr = 0, $B_Q28$addr = 0, $S$addr = 0, $add = 0, $add105 = 0; var $add106 = 0, $add108 = 0, $add113 = 0, $add120 = 0, $add21 = 0, $add32 = 0, $add34 = 0, $add36 = 0, $add48 = 0, $add49 = 0, $add63 = 0, $add64 = 0, $add75 = 0, $add77 = 0, $add90 = 0, $add91 = 0, $and = 0, $and100 = 0, $and16 = 0, $and27 = 0; var $and43 = 0, $and5 = 0, $and58 = 0, $and70 = 0, $and85 = 0, $arrayidx107 = 0, $arrayidx126 = 0, $arrayidx22 = 0, $arrayidx3 = 0, $arrayidx52 = 0, $arrayidx57 = 0, $arrayidx6 = 0, $arrayidx79 = 0, $arrayidx80 = 0, $arrayidx9 = 0, $arrayidx92 = 0, $arrayidx93 = 0, $arrayidx94 = 0, $arrayidx99 = 0, $cmp = 0; var $cmp111 = 0, $cmp116 = 0, $cond124 = 0, $conv = 0, $conv101 = 0, $conv102 = 0, $conv125 = 0, $conv13 = 0, $conv14 = 0, $conv17 = 0, $conv18 = 0, $conv24 = 0, $conv25 = 0, $conv28 = 0, $conv29 = 0, $conv40 = 0, $conv41 = 0, $conv44 = 0, $conv45 = 0, $conv54 = 0; var $conv55 = 0, $conv59 = 0, $conv60 = 0, $conv67 = 0, $conv68 = 0, $conv71 = 0, $conv72 = 0, $conv82 = 0, $conv83 = 0, $conv86 = 0, $conv87 = 0, $conv96 = 0, $conv97 = 0, $in$addr = 0, $inc = 0, $inval = 0, $k = 0, $len$addr = 0, $mul = 0, $mul103 = 0; var $mul19 = 0, $mul26 = 0, $mul30 = 0, $mul42 = 0, $mul46 = 0, $mul56 = 0, $mul61 = 0, $mul69 = 0, $mul73 = 0, $mul84 = 0, $mul88 = 0, $mul98 = 0, $out$addr = 0, $out32_Q14 = 0, $shl = 0, $shr = 0, $shr104 = 0, $shr110 = 0, $shr115 = 0, $shr12 = 0; var $shr122 = 0, $shr20 = 0, $shr23 = 0, $shr31 = 0, $shr33 = 0, $shr35 = 0, $shr39 = 0, $shr47 = 0, $shr53 = 0, $shr62 = 0, $shr66 = 0, $shr74 = 0, $shr76 = 0, $shr78 = 0, $shr8 = 0, $shr81 = 0, $shr89 = 0, $shr95 = 0, $sub = 0, $sub109 = 0; var $sub114 = 0, $sub121 = 0, $sub2 = 0, $sub4 = 0, $sub7 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $in$addr = $in; $B_Q28$addr = $B_Q28; $A_Q28$addr = $A_Q28; $S$addr = $S; $out$addr = $out; $len$addr = $len; $0 = $A_Q28$addr; $1 = HEAP32[$0>>2]|0; $sub = (0 - ($1))|0; $and = $sub & 16383; $A0_L_Q28 = $and; $2 = $A_Q28$addr; $3 = HEAP32[$2>>2]|0; $sub2 = (0 - ($3))|0; $shr = $sub2 >> 14; $A0_U_Q28 = $shr; $4 = $A_Q28$addr; $arrayidx3 = ((($4)) + 4|0); $5 = HEAP32[$arrayidx3>>2]|0; $sub4 = (0 - ($5))|0; $and5 = $sub4 & 16383; $A1_L_Q28 = $and5; $6 = $A_Q28$addr; $arrayidx6 = ((($6)) + 4|0); $7 = HEAP32[$arrayidx6>>2]|0; $sub7 = (0 - ($7))|0; $shr8 = $sub7 >> 14; $A1_U_Q28 = $shr8; $k = 0; while(1) { $8 = $k; $9 = $len$addr; $cmp = ($8|0)<($9|0); if (!($cmp)) { break; } $10 = $in$addr; $11 = $k; $arrayidx9 = (($10) + ($11<<1)|0); $12 = HEAP16[$arrayidx9>>1]|0; $conv = $12 << 16 >> 16; $inval = $conv; $13 = $S$addr; $14 = HEAP32[$13>>2]|0; $15 = $B_Q28$addr; $16 = HEAP32[$15>>2]|0; $shr12 = $16 >> 16; $17 = $inval; $conv13 = $17&65535; $conv14 = $conv13 << 16 >> 16; $mul = Math_imul($shr12, $conv14)|0; $18 = $B_Q28$addr; $19 = HEAP32[$18>>2]|0; $and16 = $19 & 65535; $20 = $inval; $conv17 = $20&65535; $conv18 = $conv17 << 16 >> 16; $mul19 = Math_imul($and16, $conv18)|0; $shr20 = $mul19 >> 16; $add = (($mul) + ($shr20))|0; $add21 = (($14) + ($add))|0; $shl = $add21 << 2; $out32_Q14 = $shl; $21 = $S$addr; $arrayidx22 = ((($21)) + 4|0); $22 = HEAP32[$arrayidx22>>2]|0; $23 = $out32_Q14; $shr23 = $23 >> 16; $24 = $A0_L_Q28; $conv24 = $24&65535; $conv25 = $conv24 << 16 >> 16; $mul26 = Math_imul($shr23, $conv25)|0; $25 = $out32_Q14; $and27 = $25 & 65535; $26 = $A0_L_Q28; $conv28 = $26&65535; $conv29 = $conv28 << 16 >> 16; $mul30 = Math_imul($and27, $conv29)|0; $shr31 = $mul30 >> 16; $add32 = (($mul26) + ($shr31))|0; $shr33 = $add32 >> 13; $add34 = (($shr33) + 1)|0; $shr35 = $add34 >> 1; $add36 = (($22) + ($shr35))|0; $27 = $S$addr; HEAP32[$27>>2] = $add36; $28 = $S$addr; $29 = HEAP32[$28>>2]|0; $30 = $out32_Q14; $shr39 = $30 >> 16; $31 = $A0_U_Q28; $conv40 = $31&65535; $conv41 = $conv40 << 16 >> 16; $mul42 = Math_imul($shr39, $conv41)|0; $32 = $out32_Q14; $and43 = $32 & 65535; $33 = $A0_U_Q28; $conv44 = $33&65535; $conv45 = $conv44 << 16 >> 16; $mul46 = Math_imul($and43, $conv45)|0; $shr47 = $mul46 >> 16; $add48 = (($mul42) + ($shr47))|0; $add49 = (($29) + ($add48))|0; $34 = $S$addr; HEAP32[$34>>2] = $add49; $35 = $S$addr; $36 = HEAP32[$35>>2]|0; $37 = $B_Q28$addr; $arrayidx52 = ((($37)) + 4|0); $38 = HEAP32[$arrayidx52>>2]|0; $shr53 = $38 >> 16; $39 = $inval; $conv54 = $39&65535; $conv55 = $conv54 << 16 >> 16; $mul56 = Math_imul($shr53, $conv55)|0; $40 = $B_Q28$addr; $arrayidx57 = ((($40)) + 4|0); $41 = HEAP32[$arrayidx57>>2]|0; $and58 = $41 & 65535; $42 = $inval; $conv59 = $42&65535; $conv60 = $conv59 << 16 >> 16; $mul61 = Math_imul($and58, $conv60)|0; $shr62 = $mul61 >> 16; $add63 = (($mul56) + ($shr62))|0; $add64 = (($36) + ($add63))|0; $43 = $S$addr; HEAP32[$43>>2] = $add64; $44 = $out32_Q14; $shr66 = $44 >> 16; $45 = $A1_L_Q28; $conv67 = $45&65535; $conv68 = $conv67 << 16 >> 16; $mul69 = Math_imul($shr66, $conv68)|0; $46 = $out32_Q14; $and70 = $46 & 65535; $47 = $A1_L_Q28; $conv71 = $47&65535; $conv72 = $conv71 << 16 >> 16; $mul73 = Math_imul($and70, $conv72)|0; $shr74 = $mul73 >> 16; $add75 = (($mul69) + ($shr74))|0; $shr76 = $add75 >> 13; $add77 = (($shr76) + 1)|0; $shr78 = $add77 >> 1; $48 = $S$addr; $arrayidx79 = ((($48)) + 4|0); HEAP32[$arrayidx79>>2] = $shr78; $49 = $S$addr; $arrayidx80 = ((($49)) + 4|0); $50 = HEAP32[$arrayidx80>>2]|0; $51 = $out32_Q14; $shr81 = $51 >> 16; $52 = $A1_U_Q28; $conv82 = $52&65535; $conv83 = $conv82 << 16 >> 16; $mul84 = Math_imul($shr81, $conv83)|0; $53 = $out32_Q14; $and85 = $53 & 65535; $54 = $A1_U_Q28; $conv86 = $54&65535; $conv87 = $conv86 << 16 >> 16; $mul88 = Math_imul($and85, $conv87)|0; $shr89 = $mul88 >> 16; $add90 = (($mul84) + ($shr89))|0; $add91 = (($50) + ($add90))|0; $55 = $S$addr; $arrayidx92 = ((($55)) + 4|0); HEAP32[$arrayidx92>>2] = $add91; $56 = $S$addr; $arrayidx93 = ((($56)) + 4|0); $57 = HEAP32[$arrayidx93>>2]|0; $58 = $B_Q28$addr; $arrayidx94 = ((($58)) + 8|0); $59 = HEAP32[$arrayidx94>>2]|0; $shr95 = $59 >> 16; $60 = $inval; $conv96 = $60&65535; $conv97 = $conv96 << 16 >> 16; $mul98 = Math_imul($shr95, $conv97)|0; $61 = $B_Q28$addr; $arrayidx99 = ((($61)) + 8|0); $62 = HEAP32[$arrayidx99>>2]|0; $and100 = $62 & 65535; $63 = $inval; $conv101 = $63&65535; $conv102 = $conv101 << 16 >> 16; $mul103 = Math_imul($and100, $conv102)|0; $shr104 = $mul103 >> 16; $add105 = (($mul98) + ($shr104))|0; $add106 = (($57) + ($add105))|0; $64 = $S$addr; $arrayidx107 = ((($64)) + 4|0); HEAP32[$arrayidx107>>2] = $add106; $65 = $out32_Q14; $add108 = (($65) + 16384)|0; $sub109 = (($add108) - 1)|0; $shr110 = $sub109 >> 14; $cmp111 = ($shr110|0)>(32767); if ($cmp111) { $cond124 = 32767; } else { $66 = $out32_Q14; $add113 = (($66) + 16384)|0; $sub114 = (($add113) - 1)|0; $shr115 = $sub114 >> 14; $cmp116 = ($shr115|0)<(-32768); if ($cmp116) { $cond124 = -32768; } else { $67 = $out32_Q14; $add120 = (($67) + 16384)|0; $sub121 = (($add120) - 1)|0; $shr122 = $sub121 >> 14; $cond124 = $shr122; } } $conv125 = $cond124&65535; $68 = $out$addr; $69 = $k; $arrayidx126 = (($68) + ($69<<1)|0); HEAP16[$arrayidx126>>1] = $conv125; $70 = $k; $inc = (($70) + 1)|0; $k = $inc; } STACKTOP = sp;return; } function _silk_bwexpander_32($ar,$d,$chirp_Q16) { $ar = $ar|0; $d = $d|0; $chirp_Q16 = $chirp_Q16|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $add10 = 0, $add13 = 0, $add17 = 0, $add19 = 0, $add33 = 0, $add37 = 0; var $add40 = 0, $and = 0, $and26 = 0, $ar$addr = 0, $arrayidx = 0, $arrayidx14 = 0, $arrayidx22 = 0, $arrayidx28 = 0, $arrayidx3 = 0, $arrayidx35 = 0, $arrayidx42 = 0, $arrayidx8 = 0, $chirp_Q16$addr = 0, $chirp_minus_one_Q16 = 0, $cmp = 0, $conv = 0, $conv2 = 0, $conv23 = 0, $conv24 = 0, $conv29 = 0; var $conv30 = 0, $conv4 = 0, $conv5 = 0, $d$addr = 0, $i = 0, $inc = 0, $mul = 0, $mul12 = 0, $mul15 = 0, $mul25 = 0, $mul31 = 0, $mul39 = 0, $mul6 = 0, $shr = 0, $shr11 = 0, $shr16 = 0, $shr18 = 0, $shr32 = 0, $shr36 = 0, $shr38 = 0; var $shr7 = 0, $shr9 = 0, $sub = 0, $sub1 = 0, $sub21 = 0, $sub27 = 0, $sub34 = 0, $sub41 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $ar$addr = $ar; $d$addr = $d; $chirp_Q16$addr = $chirp_Q16; $0 = $chirp_Q16$addr; $sub = (($0) - 65536)|0; $chirp_minus_one_Q16 = $sub; $i = 0; while(1) { $1 = $i; $2 = $d$addr; $sub1 = (($2) - 1)|0; $cmp = ($1|0)<($sub1|0); $3 = $chirp_Q16$addr; $shr = $3 >> 16; $4 = $ar$addr; if (!($cmp)) { break; } $5 = $i; $arrayidx = (($4) + ($5<<2)|0); $6 = HEAP32[$arrayidx>>2]|0; $conv = $6&65535; $conv2 = $conv << 16 >> 16; $mul = Math_imul($shr, $conv2)|0; $7 = $chirp_Q16$addr; $and = $7 & 65535; $8 = $ar$addr; $9 = $i; $arrayidx3 = (($8) + ($9<<2)|0); $10 = HEAP32[$arrayidx3>>2]|0; $conv4 = $10&65535; $conv5 = $conv4 << 16 >> 16; $mul6 = Math_imul($and, $conv5)|0; $shr7 = $mul6 >> 16; $add = (($mul) + ($shr7))|0; $11 = $chirp_Q16$addr; $12 = $ar$addr; $13 = $i; $arrayidx8 = (($12) + ($13<<2)|0); $14 = HEAP32[$arrayidx8>>2]|0; $shr9 = $14 >> 15; $add10 = (($shr9) + 1)|0; $shr11 = $add10 >> 1; $mul12 = Math_imul($11, $shr11)|0; $add13 = (($add) + ($mul12))|0; $15 = $ar$addr; $16 = $i; $arrayidx14 = (($15) + ($16<<2)|0); HEAP32[$arrayidx14>>2] = $add13; $17 = $chirp_Q16$addr; $18 = $chirp_minus_one_Q16; $mul15 = Math_imul($17, $18)|0; $shr16 = $mul15 >> 15; $add17 = (($shr16) + 1)|0; $shr18 = $add17 >> 1; $19 = $chirp_Q16$addr; $add19 = (($19) + ($shr18))|0; $chirp_Q16$addr = $add19; $20 = $i; $inc = (($20) + 1)|0; $i = $inc; } $21 = $d$addr; $sub21 = (($21) - 1)|0; $arrayidx22 = (($4) + ($sub21<<2)|0); $22 = HEAP32[$arrayidx22>>2]|0; $conv23 = $22&65535; $conv24 = $conv23 << 16 >> 16; $mul25 = Math_imul($shr, $conv24)|0; $23 = $chirp_Q16$addr; $and26 = $23 & 65535; $24 = $ar$addr; $25 = $d$addr; $sub27 = (($25) - 1)|0; $arrayidx28 = (($24) + ($sub27<<2)|0); $26 = HEAP32[$arrayidx28>>2]|0; $conv29 = $26&65535; $conv30 = $conv29 << 16 >> 16; $mul31 = Math_imul($and26, $conv30)|0; $shr32 = $mul31 >> 16; $add33 = (($mul25) + ($shr32))|0; $27 = $chirp_Q16$addr; $28 = $ar$addr; $29 = $d$addr; $sub34 = (($29) - 1)|0; $arrayidx35 = (($28) + ($sub34<<2)|0); $30 = HEAP32[$arrayidx35>>2]|0; $shr36 = $30 >> 15; $add37 = (($shr36) + 1)|0; $shr38 = $add37 >> 1; $mul39 = Math_imul($27, $shr38)|0; $add40 = (($add33) + ($mul39))|0; $31 = $ar$addr; $32 = $d$addr; $sub41 = (($32) - 1)|0; $arrayidx42 = (($31) + ($sub41<<2)|0); HEAP32[$arrayidx42>>2] = $add40; STACKTOP = sp;return; } function _silk_bwexpander($ar,$d,$chirp_Q16) { $ar = $ar|0; $d = $d|0; $chirp_Q16 = $chirp_Q16|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $add15 = 0, $add7 = 0; var $add9 = 0, $ar$addr = 0, $arrayidx = 0, $arrayidx11 = 0, $arrayidx19 = 0, $arrayidx4 = 0, $chirp_Q16$addr = 0, $chirp_minus_one_Q16 = 0, $cmp = 0, $conv = 0, $conv12 = 0, $conv17 = 0, $conv3 = 0, $d$addr = 0, $i = 0, $inc = 0, $mul = 0, $mul13 = 0, $mul5 = 0, $shr = 0; var $shr14 = 0, $shr16 = 0, $shr2 = 0, $shr6 = 0, $shr8 = 0, $sub = 0, $sub1 = 0, $sub10 = 0, $sub18 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $ar$addr = $ar; $d$addr = $d; $chirp_Q16$addr = $chirp_Q16; $0 = $chirp_Q16$addr; $sub = (($0) - 65536)|0; $chirp_minus_one_Q16 = $sub; $i = 0; while(1) { $1 = $i; $2 = $d$addr; $sub1 = (($2) - 1)|0; $cmp = ($1|0)<($sub1|0); $3 = $chirp_Q16$addr; $4 = $ar$addr; if (!($cmp)) { break; } $5 = $i; $arrayidx = (($4) + ($5<<1)|0); $6 = HEAP16[$arrayidx>>1]|0; $conv = $6 << 16 >> 16; $mul = Math_imul($3, $conv)|0; $shr = $mul >> 15; $add = (($shr) + 1)|0; $shr2 = $add >> 1; $conv3 = $shr2&65535; $7 = $ar$addr; $8 = $i; $arrayidx4 = (($7) + ($8<<1)|0); HEAP16[$arrayidx4>>1] = $conv3; $9 = $chirp_Q16$addr; $10 = $chirp_minus_one_Q16; $mul5 = Math_imul($9, $10)|0; $shr6 = $mul5 >> 15; $add7 = (($shr6) + 1)|0; $shr8 = $add7 >> 1; $11 = $chirp_Q16$addr; $add9 = (($11) + ($shr8))|0; $chirp_Q16$addr = $add9; $12 = $i; $inc = (($12) + 1)|0; $i = $inc; } $13 = $d$addr; $sub10 = (($13) - 1)|0; $arrayidx11 = (($4) + ($sub10<<1)|0); $14 = HEAP16[$arrayidx11>>1]|0; $conv12 = $14 << 16 >> 16; $mul13 = Math_imul($3, $conv12)|0; $shr14 = $mul13 >> 15; $add15 = (($shr14) + 1)|0; $shr16 = $add15 >> 1; $conv17 = $shr16&65535; $15 = $ar$addr; $16 = $d$addr; $sub18 = (($16) - 1)|0; $arrayidx19 = (($15) + ($sub18<<1)|0); HEAP16[$arrayidx19>>1] = $conv17; STACKTOP = sp;return; } function _silk_decode_pitch($lagIndex,$contourIndex,$pitch_lags,$Fs_kHz,$nb_subfr) { $lagIndex = $lagIndex|0; $contourIndex = $contourIndex|0; $pitch_lags = $pitch_lags|0; $Fs_kHz = $Fs_kHz|0; $nb_subfr = $nb_subfr|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $5 = 0; var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $Fs_kHz$addr = 0, $Lag_CB_ptr = 0, $add = 0, $add$ptr = 0, $add18 = 0, $add20 = 0, $arrayidx = 0, $arrayidx23 = 0, $arrayidx27 = 0, $arrayidx32 = 0, $arrayidx41 = 0, $arrayidx46 = 0, $arrayidx53 = 0, $cbk_size = 0, $cmp = 0, $cmp1 = 0; var $cmp14 = 0, $cmp21 = 0, $cmp24 = 0, $cmp28 = 0, $cmp37 = 0, $cmp42 = 0, $cond52 = 0, $contourIndex$addr = 0, $conv = 0, $conv10 = 0, $conv11 = 0, $conv13 = 0, $conv17 = 0, $conv19 = 0, $conv9 = 0, $inc = 0, $k = 0, $lag = 0, $lagIndex$addr = 0, $max_lag = 0; var $min_lag = 0, $mul = 0, $mul12 = 0, $mul16 = 0, $nb_subfr$addr = 0, $pitch_lags$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $lagIndex$addr = $lagIndex; $contourIndex$addr = $contourIndex; $pitch_lags$addr = $pitch_lags; $Fs_kHz$addr = $Fs_kHz; $nb_subfr$addr = $nb_subfr; $0 = $Fs_kHz$addr; $cmp = ($0|0)==(8); $1 = $nb_subfr$addr; $cmp1 = ($1|0)==(4); do { if ($cmp) { if ($cmp1) { $Lag_CB_ptr = 35890; $cbk_size = 11; break; } else { $Lag_CB_ptr = 35856; $cbk_size = 3; break; } } else { if ($cmp1) { $Lag_CB_ptr = 35934; $cbk_size = 34; break; } else { $Lag_CB_ptr = 35862; $cbk_size = 12; break; } } } while(0); $2 = $Fs_kHz$addr; $conv = $2&65535; $conv9 = $conv << 16 >> 16; $mul = $conv9<<1; $min_lag = $mul; $3 = $Fs_kHz$addr; $conv10 = $3&65535; $conv11 = $conv10 << 16 >> 16; $mul12 = ($conv11*18)|0; $max_lag = $mul12; $4 = $min_lag; $5 = $lagIndex$addr; $conv13 = $5 << 16 >> 16; $add = (($4) + ($conv13))|0; $lag = $add; $k = 0; while(1) { $6 = $k; $7 = $nb_subfr$addr; $cmp14 = ($6|0)<($7|0); if (!($cmp14)) { break; } $8 = $lag; $9 = $Lag_CB_ptr; $10 = $k; $11 = $cbk_size; $mul16 = Math_imul($10, $11)|0; $12 = $contourIndex$addr; $conv17 = $12 << 24 >> 24; $add18 = (($mul16) + ($conv17))|0; $add$ptr = (($9) + ($add18)|0); $13 = HEAP8[$add$ptr>>0]|0; $conv19 = $13 << 24 >> 24; $add20 = (($8) + ($conv19))|0; $14 = $pitch_lags$addr; $15 = $k; $arrayidx = (($14) + ($15<<2)|0); HEAP32[$arrayidx>>2] = $add20; $16 = $min_lag; $17 = $max_lag; $cmp21 = ($16|0)>($17|0); $18 = $pitch_lags$addr; $19 = $k; $arrayidx23 = (($18) + ($19<<2)|0); $20 = HEAP32[$arrayidx23>>2]|0; do { if ($cmp21) { $21 = $min_lag; $cmp24 = ($20|0)>($21|0); if ($cmp24) { $22 = $min_lag; $cond52 = $22; break; } $23 = $pitch_lags$addr; $24 = $k; $arrayidx27 = (($23) + ($24<<2)|0); $25 = HEAP32[$arrayidx27>>2]|0; $26 = $max_lag; $cmp28 = ($25|0)<($26|0); if ($cmp28) { $27 = $max_lag; $cond52 = $27; break; } else { $28 = $pitch_lags$addr; $29 = $k; $arrayidx32 = (($28) + ($29<<2)|0); $30 = HEAP32[$arrayidx32>>2]|0; $cond52 = $30; break; } } else { $31 = $max_lag; $cmp37 = ($20|0)>($31|0); if ($cmp37) { $32 = $max_lag; $cond52 = $32; break; } $33 = $pitch_lags$addr; $34 = $k; $arrayidx41 = (($33) + ($34<<2)|0); $35 = HEAP32[$arrayidx41>>2]|0; $36 = $min_lag; $cmp42 = ($35|0)<($36|0); if ($cmp42) { $37 = $min_lag; $cond52 = $37; break; } else { $38 = $pitch_lags$addr; $39 = $k; $arrayidx46 = (($38) + ($39<<2)|0); $40 = HEAP32[$arrayidx46>>2]|0; $cond52 = $40; break; } } } while(0); $41 = $pitch_lags$addr; $42 = $k; $arrayidx53 = (($41) + ($42<<2)|0); HEAP32[$arrayidx53>>2] = $cond52; $43 = $k; $inc = (($43) + 1)|0; $k = $inc; } STACKTOP = sp;return; } function _silk_inner_prod_aligned_scale($inVec1,$inVec2,$scale,$len) { $inVec1 = $inVec1|0; $inVec2 = $inVec2|0; $scale = $scale|0; $len = $len|0; var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $arrayidx = 0, $arrayidx1 = 0, $cmp = 0, $conv = 0, $conv2 = 0, $i = 0, $inVec1$addr = 0, $inVec2$addr = 0; var $inc = 0, $len$addr = 0, $mul = 0, $scale$addr = 0, $shr = 0, $sum = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $inVec1$addr = $inVec1; $inVec2$addr = $inVec2; $scale$addr = $scale; $len$addr = $len; $sum = 0; $i = 0; while(1) { $0 = $i; $1 = $len$addr; $cmp = ($0|0)<($1|0); $2 = $sum; if (!($cmp)) { break; } $3 = $inVec1$addr; $4 = $i; $arrayidx = (($3) + ($4<<1)|0); $5 = HEAP16[$arrayidx>>1]|0; $conv = $5 << 16 >> 16; $6 = $inVec2$addr; $7 = $i; $arrayidx1 = (($6) + ($7<<1)|0); $8 = HEAP16[$arrayidx1>>1]|0; $conv2 = $8 << 16 >> 16; $mul = Math_imul($conv, $conv2)|0; $9 = $scale$addr; $shr = $mul >> $9; $add = (($2) + ($shr))|0; $sum = $add; $10 = $i; $inc = (($10) + 1)|0; $i = $inc; } STACKTOP = sp;return ($2|0); } function _silk_LPC_analysis_filter($out,$in,$B,$len,$d,$arch) { $out = $out|0; $in = $in|0; $B = $B|0; $len = $len|0; $d = $d|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; var $7 = 0, $8 = 0, $9 = 0, $B$addr = 0, $add = 0, $add14 = 0, $add20 = 0, $add26 = 0, $add32 = 0, $add43 = 0, $add48 = 0, $add52 = 0, $add53 = 0, $add57 = 0, $arch$addr = 0, $arrayidx = 0, $arrayidx11 = 0, $arrayidx15 = 0, $arrayidx17 = 0, $arrayidx21 = 0; var $arrayidx23 = 0, $arrayidx27 = 0, $arrayidx29 = 0, $arrayidx38 = 0, $arrayidx4 = 0, $arrayidx40 = 0, $arrayidx46 = 0, $arrayidx49 = 0, $arrayidx54 = 0, $arrayidx6 = 0, $arrayidx68 = 0, $arrayidx9 = 0, $cmp = 0, $cmp34 = 0, $cmp59 = 0, $cmp61 = 0, $cond = 0, $cond66 = 0, $conv = 0, $conv10 = 0; var $conv12 = 0, $conv16 = 0, $conv18 = 0, $conv22 = 0, $conv24 = 0, $conv28 = 0, $conv3 = 0, $conv30 = 0, $conv39 = 0, $conv41 = 0, $conv47 = 0, $conv5 = 0, $conv50 = 0, $conv55 = 0, $conv67 = 0, $conv7 = 0, $d$addr = 0, $in$addr = 0, $in_ptr = 0, $inc = 0; var $ix = 0, $j = 0, $len$addr = 0, $mul = 0, $mul13 = 0, $mul19 = 0, $mul25 = 0, $mul31 = 0, $mul42 = 0, $mul51 = 0, $mul71 = 0, $mul8 = 0, $out$addr = 0, $out32 = 0, $out32_Q12 = 0, $shl = 0, $shr = 0, $shr58 = 0, $sub = 0, $sub37 = 0; var $sub44 = 0, $sub45 = 0, $sub56 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $out$addr = $out; $in$addr = $in; $B$addr = $B; $len$addr = $len; $d$addr = $d; $arch$addr = $arch; $0 = $d$addr; $ix = $0; while(1) { $1 = $ix; $2 = $len$addr; $cmp = ($1|0)<($2|0); if (!($cmp)) { break; } $3 = $in$addr; $4 = $ix; $sub = (($4) - 1)|0; $arrayidx = (($3) + ($sub<<1)|0); $in_ptr = $arrayidx; $5 = $in_ptr; $6 = HEAP16[$5>>1]|0; $conv = $6 << 16 >> 16; $7 = $B$addr; $8 = HEAP16[$7>>1]|0; $conv3 = $8 << 16 >> 16; $mul = Math_imul($conv, $conv3)|0; $out32_Q12 = $mul; $9 = $out32_Q12; $10 = $in_ptr; $arrayidx4 = ((($10)) + -2|0); $11 = HEAP16[$arrayidx4>>1]|0; $conv5 = $11 << 16 >> 16; $12 = $B$addr; $arrayidx6 = ((($12)) + 2|0); $13 = HEAP16[$arrayidx6>>1]|0; $conv7 = $13 << 16 >> 16; $mul8 = Math_imul($conv5, $conv7)|0; $add = (($9) + ($mul8))|0; $out32_Q12 = $add; $14 = $out32_Q12; $15 = $in_ptr; $arrayidx9 = ((($15)) + -4|0); $16 = HEAP16[$arrayidx9>>1]|0; $conv10 = $16 << 16 >> 16; $17 = $B$addr; $arrayidx11 = ((($17)) + 4|0); $18 = HEAP16[$arrayidx11>>1]|0; $conv12 = $18 << 16 >> 16; $mul13 = Math_imul($conv10, $conv12)|0; $add14 = (($14) + ($mul13))|0; $out32_Q12 = $add14; $19 = $out32_Q12; $20 = $in_ptr; $arrayidx15 = ((($20)) + -6|0); $21 = HEAP16[$arrayidx15>>1]|0; $conv16 = $21 << 16 >> 16; $22 = $B$addr; $arrayidx17 = ((($22)) + 6|0); $23 = HEAP16[$arrayidx17>>1]|0; $conv18 = $23 << 16 >> 16; $mul19 = Math_imul($conv16, $conv18)|0; $add20 = (($19) + ($mul19))|0; $out32_Q12 = $add20; $24 = $out32_Q12; $25 = $in_ptr; $arrayidx21 = ((($25)) + -8|0); $26 = HEAP16[$arrayidx21>>1]|0; $conv22 = $26 << 16 >> 16; $27 = $B$addr; $arrayidx23 = ((($27)) + 8|0); $28 = HEAP16[$arrayidx23>>1]|0; $conv24 = $28 << 16 >> 16; $mul25 = Math_imul($conv22, $conv24)|0; $add26 = (($24) + ($mul25))|0; $out32_Q12 = $add26; $29 = $out32_Q12; $30 = $in_ptr; $arrayidx27 = ((($30)) + -10|0); $31 = HEAP16[$arrayidx27>>1]|0; $conv28 = $31 << 16 >> 16; $32 = $B$addr; $arrayidx29 = ((($32)) + 10|0); $33 = HEAP16[$arrayidx29>>1]|0; $conv30 = $33 << 16 >> 16; $mul31 = Math_imul($conv28, $conv30)|0; $add32 = (($29) + ($mul31))|0; $out32_Q12 = $add32; $j = 6; while(1) { $34 = $j; $35 = $d$addr; $cmp34 = ($34|0)<($35|0); if (!($cmp34)) { break; } $36 = $out32_Q12; $37 = $in_ptr; $38 = $j; $sub37 = (0 - ($38))|0; $arrayidx38 = (($37) + ($sub37<<1)|0); $39 = HEAP16[$arrayidx38>>1]|0; $conv39 = $39 << 16 >> 16; $40 = $B$addr; $41 = $j; $arrayidx40 = (($40) + ($41<<1)|0); $42 = HEAP16[$arrayidx40>>1]|0; $conv41 = $42 << 16 >> 16; $mul42 = Math_imul($conv39, $conv41)|0; $add43 = (($36) + ($mul42))|0; $out32_Q12 = $add43; $43 = $out32_Q12; $44 = $in_ptr; $45 = $j; $sub44 = (0 - ($45))|0; $sub45 = (($sub44) - 1)|0; $arrayidx46 = (($44) + ($sub45<<1)|0); $46 = HEAP16[$arrayidx46>>1]|0; $conv47 = $46 << 16 >> 16; $47 = $B$addr; $48 = $j; $add48 = (($48) + 1)|0; $arrayidx49 = (($47) + ($add48<<1)|0); $49 = HEAP16[$arrayidx49>>1]|0; $conv50 = $49 << 16 >> 16; $mul51 = Math_imul($conv47, $conv50)|0; $add52 = (($43) + ($mul51))|0; $out32_Q12 = $add52; $50 = $j; $add53 = (($50) + 2)|0; $j = $add53; } $51 = $in_ptr; $arrayidx54 = ((($51)) + 2|0); $52 = HEAP16[$arrayidx54>>1]|0; $conv55 = $52 << 16 >> 16; $shl = $conv55 << 12; $53 = $out32_Q12; $sub56 = (($shl) - ($53))|0; $out32_Q12 = $sub56; $54 = $out32_Q12; $shr = $54 >> 11; $add57 = (($shr) + 1)|0; $shr58 = $add57 >> 1; $out32 = $shr58; $55 = $out32; $cmp59 = ($55|0)>(32767); if ($cmp59) { $cond66 = 32767; } else { $56 = $out32; $cmp61 = ($56|0)<(-32768); $57 = $out32; $cond = $cmp61 ? -32768 : $57; $cond66 = $cond; } $conv67 = $cond66&65535; $58 = $out$addr; $59 = $ix; $arrayidx68 = (($58) + ($59<<1)|0); HEAP16[$arrayidx68>>1] = $conv67; $60 = $ix; $inc = (($60) + 1)|0; $ix = $inc; } $61 = $out$addr; $62 = $d$addr; $mul71 = $62<<1; _memset(($61|0),0,($mul71|0))|0; STACKTOP = sp;return; } function _silk_LPC_inverse_pred_gain_c($A_Q12,$order) { $A_Q12 = $A_Q12|0; $order = $order|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $A_Q12$addr = 0, $Atmp_QA = 0, $DC_resp = 0, $add = 0, $arrayidx = 0, $arrayidx1 = 0; var $arrayidx3 = 0, $call = 0, $cmp = 0, $cmp4 = 0, $conv = 0, $conv2 = 0, $inc = 0, $k = 0, $order$addr = 0, $retval = 0, $shl = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 128|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(128|0); $Atmp_QA = sp + 8|0; $A_Q12$addr = $A_Q12; $order$addr = $order; $DC_resp = 0; $k = 0; while(1) { $0 = $k; $1 = $order$addr; $cmp = ($0|0)<($1|0); if (!($cmp)) { break; } $2 = $A_Q12$addr; $3 = $k; $arrayidx = (($2) + ($3<<1)|0); $4 = HEAP16[$arrayidx>>1]|0; $conv = $4 << 16 >> 16; $5 = $DC_resp; $add = (($5) + ($conv))|0; $DC_resp = $add; $6 = $A_Q12$addr; $7 = $k; $arrayidx1 = (($6) + ($7<<1)|0); $8 = HEAP16[$arrayidx1>>1]|0; $conv2 = $8 << 16 >> 16; $shl = $conv2 << 12; $9 = $k; $arrayidx3 = (($Atmp_QA) + ($9<<2)|0); HEAP32[$arrayidx3>>2] = $shl; $10 = $k; $inc = (($10) + 1)|0; $k = $inc; } $11 = $DC_resp; $cmp4 = ($11|0)>=(4096); if ($cmp4) { $retval = 0; $13 = $retval; STACKTOP = sp;return ($13|0); } else { $12 = $order$addr; $call = (_LPC_inverse_pred_gain_QA_c($Atmp_QA,$12)|0); $retval = $call; $13 = $retval; STACKTOP = sp;return ($13|0); } return (0)|0; } function _LPC_inverse_pred_gain_QA_c($A_QA,$order) { $A_QA = $A_QA|0; $order = $order|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0; var $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0; var $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0; var $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0; var $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 = 0; var $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0; var $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0; var $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0, $601 = 0; var $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 = 0, $62 = 0; var $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0; var $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0; var $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $A_QA$addr = 0, $add = 0, $add25 = 0, $and = 0, $and107 = 0, $and119 = 0, $and120 = 0, $and143 = 0, $and144 = 0, $and186 = 0, $and187 = 0, $and210 = 0; var $and211 = 0, $and256 = 0, $and268 = 0, $and269 = 0, $and292 = 0, $and293 = 0, $and321 = 0, $and333 = 0, $and334 = 0, $and357 = 0, $and358 = 0, $and400 = 0, $and401 = 0, $and424 = 0, $and425 = 0, $and55 = 0, $and56 = 0, $and78 = 0, $and79 = 0, $arrayidx = 0; var $arrayidx2 = 0, $arrayidx244 = 0, $arrayidx30 = 0, $arrayidx33 = 0, $arrayidx4 = 0, $arrayidx461 = 0, $arrayidx468 = 0, $call = 0, $call23 = 0, $cmp = 0, $cmp1 = 0, $cmp108 = 0, $cmp15 = 0, $cmp19 = 0, $cmp245 = 0, $cmp257 = 0, $cmp27 = 0, $cmp3 = 0, $cmp322 = 0, $cmp34 = 0; var $cmp45 = 0, $cmp469 = 0, $cmp488 = 0, $cond = 0, $cond159 = 0, $cond226 = 0, $cond308 = 0, $cond373 = 0, $cond440 = 0, $cond94 = 0, $dec = 0, $inc = 0, $invGain_Q30 = 0, $k = 0, $mult2Q = 0, $n = 0, $or$cond = 0, $or$cond1 = 0, $order$addr = 0, $rc_Q31 = 0; var $rc_mult1_Q30 = 0, $rc_mult2 = 0, $retval = 0, $shl = 0, $shl14 = 0, $shl474 = 0, $shl487 = 0, $shr26 = 0, $sub = 0, $sub106 = 0, $sub131 = 0, $sub155 = 0, $sub198 = 0, $sub21 = 0, $sub22 = 0, $sub222 = 0, $sub230 = 0, $sub255 = 0, $sub280 = 0, $sub304 = 0; var $sub31 = 0, $sub32 = 0, $sub320 = 0, $sub345 = 0, $sub369 = 0, $sub412 = 0, $sub436 = 0, $sub44 = 0, $sub444 = 0, $sub459 = 0, $sub460 = 0, $sub475 = 0, $sub481 = 0, $sub5 = 0, $sub66 = 0, $sub8 = 0, $sub90 = 0, $tmp1 = 0, $tmp2 = 0, $tmp64 = 0; var $tobool = 0, $tobool121 = 0, $tobool145 = 0, $tobool188 = 0, $tobool212 = 0, $tobool270 = 0, $tobool294 = 0, $tobool335 = 0, $tobool359 = 0, $tobool402 = 0, $tobool426 = 0, $tobool80 = 0, $xor = 0, $xor118 = 0, $xor135 = 0, $xor185 = 0, $xor202 = 0, $xor267 = 0, $xor284 = 0, $xor332 = 0; var $xor349 = 0, $xor399 = 0, $xor416 = 0, $xor70 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $tmp64 = sp; $A_QA$addr = $A_QA; $order$addr = $order; $invGain_Q30 = 1073741824; $0 = $order$addr; $sub = (($0) - 1)|0; $k = $sub; L1: while(1) { $1 = $k; $cmp = ($1|0)>(0); $2 = $A_QA$addr; $3 = $k; $arrayidx = (($2) + ($3<<2)|0); $4 = HEAP32[$arrayidx>>2]|0; $cmp1 = ($4|0)>(16773022); if (!($cmp)) { label = 52; break; } if ($cmp1) { label = 5; break; } $5 = $A_QA$addr; $6 = $k; $arrayidx2 = (($5) + ($6<<2)|0); $7 = HEAP32[$arrayidx2>>2]|0; $cmp3 = ($7|0)<(-16773022); if ($cmp3) { label = 5; break; } $8 = $A_QA$addr; $9 = $k; $arrayidx4 = (($8) + ($9<<2)|0); $10 = HEAP32[$arrayidx4>>2]|0; $shl = $10 << 7; $sub5 = (0 - ($shl))|0; $rc_Q31 = $sub5; $11 = $rc_Q31; $12 = ($11|0)<(0); $13 = $12 << 31 >> 31; $14 = $rc_Q31; $15 = ($14|0)<(0); $16 = $15 << 31 >> 31; $17 = (___muldi3(($11|0),($13|0),($14|0),($16|0))|0); $18 = tempRet0; $19 = (_bitshift64Ashr(($17|0),($18|0),32)|0); $20 = tempRet0; $sub8 = (1073741824 - ($19))|0; $rc_mult1_Q30 = $sub8; $21 = $invGain_Q30; $22 = ($21|0)<(0); $23 = $22 << 31 >> 31; $24 = $rc_mult1_Q30; $25 = ($24|0)<(0); $26 = $25 << 31 >> 31; $27 = (___muldi3(($21|0),($23|0),($24|0),($26|0))|0); $28 = tempRet0; $29 = (_bitshift64Ashr(($27|0),($28|0),32)|0); $30 = tempRet0; $shl14 = $29 << 2; $invGain_Q30 = $shl14; $31 = $invGain_Q30; $cmp15 = ($31|0)<(107374); if ($cmp15) { label = 7; break; } $32 = $rc_mult1_Q30; $cmp19 = ($32|0)>(0); $33 = $rc_mult1_Q30; $sub21 = (0 - ($33))|0; $cond = $cmp19 ? $33 : $sub21; $call = (_silk_CLZ32_488($cond)|0); $sub22 = (32 - ($call))|0; $mult2Q = $sub22; $34 = $rc_mult1_Q30; $35 = $mult2Q; $add = (($35) + 30)|0; $call23 = (_silk_INVERSE32_varQ_489($34,$add)|0); $rc_mult2 = $call23; $n = 0; while(1) { $36 = $n; $37 = $k; $add25 = (($37) + 1)|0; $shr26 = $add25 >> 1; $cmp27 = ($36|0)<($shr26|0); if (!($cmp27)) { break; } $38 = $A_QA$addr; $39 = $n; $arrayidx30 = (($38) + ($39<<2)|0); $40 = HEAP32[$arrayidx30>>2]|0; $tmp1 = $40; $41 = $A_QA$addr; $42 = $k; $43 = $n; $sub31 = (($42) - ($43))|0; $sub32 = (($sub31) - 1)|0; $arrayidx33 = (($41) + ($sub32<<2)|0); $44 = HEAP32[$arrayidx33>>2]|0; $tmp2 = $44; $45 = $mult2Q; $cmp34 = ($45|0)==(1); $46 = $tmp1; $47 = $tmp2; $48 = ($47|0)<(0); $49 = $48 << 31 >> 31; $50 = $rc_Q31; $51 = ($50|0)<(0); $52 = $51 << 31 >> 31; $53 = (___muldi3(($47|0),($49|0),($50|0),($52|0))|0); $54 = tempRet0; $55 = (_bitshift64Ashr(($53|0),($54|0),30)|0); $56 = tempRet0; $57 = (_i64Add(($55|0),($56|0),1,0)|0); $58 = tempRet0; $59 = (_bitshift64Ashr(($57|0),($58|0),1)|0); $60 = tempRet0; $sub44 = (($46) - ($59))|0; $and = $sub44 & -2147483648; $cmp45 = ($and|0)==(0); $61 = $tmp1; if ($cmp34) { if ($cmp45) { $62 = $tmp2; $63 = ($62|0)<(0); $64 = $63 << 31 >> 31; $65 = $rc_Q31; $66 = ($65|0)<(0); $67 = $66 << 31 >> 31; $68 = (___muldi3(($62|0),($64|0),($65|0),($67|0))|0); $69 = tempRet0; $70 = (_bitshift64Ashr(($68|0),($69|0),30)|0); $71 = tempRet0; $72 = (_i64Add(($70|0),($71|0),1,0)|0); $73 = tempRet0; $74 = (_bitshift64Ashr(($72|0),($73|0),1)|0); $75 = tempRet0; $xor = $74 ^ -2147483648; $and55 = $61 & $xor; $and56 = $and55 & -2147483648; $tobool = ($and56|0)!=(0); if ($tobool) { $cond94 = -2147483648; } else { $76 = $tmp1; $77 = $tmp2; $78 = ($77|0)<(0); $79 = $78 << 31 >> 31; $80 = $rc_Q31; $81 = ($80|0)<(0); $82 = $81 << 31 >> 31; $83 = (___muldi3(($77|0),($79|0),($80|0),($82|0))|0); $84 = tempRet0; $85 = (_bitshift64Ashr(($83|0),($84|0),30)|0); $86 = tempRet0; $87 = (_i64Add(($85|0),($86|0),1,0)|0); $88 = tempRet0; $89 = (_bitshift64Ashr(($87|0),($88|0),1)|0); $90 = tempRet0; $sub66 = (($76) - ($89))|0; $cond94 = $sub66; } } else { $xor70 = $61 ^ -2147483648; $91 = $tmp2; $92 = ($91|0)<(0); $93 = $92 << 31 >> 31; $94 = $rc_Q31; $95 = ($94|0)<(0); $96 = $95 << 31 >> 31; $97 = (___muldi3(($91|0),($93|0),($94|0),($96|0))|0); $98 = tempRet0; $99 = (_bitshift64Ashr(($97|0),($98|0),30)|0); $100 = tempRet0; $101 = (_i64Add(($99|0),($100|0),1,0)|0); $102 = tempRet0; $103 = (_bitshift64Ashr(($101|0),($102|0),1)|0); $104 = tempRet0; $and78 = $xor70 & $103; $and79 = $and78 & -2147483648; $tobool80 = ($and79|0)!=(0); if ($tobool80) { $cond94 = 2147483647; } else { $105 = $tmp1; $106 = $tmp2; $107 = ($106|0)<(0); $108 = $107 << 31 >> 31; $109 = $rc_Q31; $110 = ($109|0)<(0); $111 = $110 << 31 >> 31; $112 = (___muldi3(($106|0),($108|0),($109|0),($111|0))|0); $113 = tempRet0; $114 = (_bitshift64Ashr(($112|0),($113|0),30)|0); $115 = tempRet0; $116 = (_i64Add(($114|0),($115|0),1,0)|0); $117 = tempRet0; $118 = (_bitshift64Ashr(($116|0),($117|0),1)|0); $119 = tempRet0; $sub90 = (($105) - ($118))|0; $cond94 = $sub90; } } $120 = ($cond94|0)<(0); $121 = $120 << 31 >> 31; $122 = $rc_mult2; $123 = ($122|0)<(0); $124 = $123 << 31 >> 31; $125 = (___muldi3(($cond94|0),($121|0),($122|0),($124|0))|0); $126 = tempRet0; $127 = (_bitshift64Ashr(($125|0),($126|0),1)|0); $128 = tempRet0; $129 = $tmp1; $130 = $tmp2; $131 = ($130|0)<(0); $132 = $131 << 31 >> 31; $133 = $rc_Q31; $134 = ($133|0)<(0); $135 = $134 << 31 >> 31; $136 = (___muldi3(($130|0),($132|0),($133|0),($135|0))|0); $137 = tempRet0; $138 = (_bitshift64Ashr(($136|0),($137|0),30)|0); $139 = tempRet0; $140 = (_i64Add(($138|0),($139|0),1,0)|0); $141 = tempRet0; $142 = (_bitshift64Ashr(($140|0),($141|0),1)|0); $143 = tempRet0; $sub106 = (($129) - ($142))|0; $and107 = $sub106 & -2147483648; $cmp108 = ($and107|0)==(0); $144 = $tmp1; if ($cmp108) { $145 = $tmp2; $146 = ($145|0)<(0); $147 = $146 << 31 >> 31; $148 = $rc_Q31; $149 = ($148|0)<(0); $150 = $149 << 31 >> 31; $151 = (___muldi3(($145|0),($147|0),($148|0),($150|0))|0); $152 = tempRet0; $153 = (_bitshift64Ashr(($151|0),($152|0),30)|0); $154 = tempRet0; $155 = (_i64Add(($153|0),($154|0),1,0)|0); $156 = tempRet0; $157 = (_bitshift64Ashr(($155|0),($156|0),1)|0); $158 = tempRet0; $xor118 = $157 ^ -2147483648; $and119 = $144 & $xor118; $and120 = $and119 & -2147483648; $tobool121 = ($and120|0)!=(0); if ($tobool121) { $cond159 = -2147483648; } else { $159 = $tmp1; $160 = $tmp2; $161 = ($160|0)<(0); $162 = $161 << 31 >> 31; $163 = $rc_Q31; $164 = ($163|0)<(0); $165 = $164 << 31 >> 31; $166 = (___muldi3(($160|0),($162|0),($163|0),($165|0))|0); $167 = tempRet0; $168 = (_bitshift64Ashr(($166|0),($167|0),30)|0); $169 = tempRet0; $170 = (_i64Add(($168|0),($169|0),1,0)|0); $171 = tempRet0; $172 = (_bitshift64Ashr(($170|0),($171|0),1)|0); $173 = tempRet0; $sub131 = (($159) - ($172))|0; $cond159 = $sub131; } } else { $xor135 = $144 ^ -2147483648; $174 = $tmp2; $175 = ($174|0)<(0); $176 = $175 << 31 >> 31; $177 = $rc_Q31; $178 = ($177|0)<(0); $179 = $178 << 31 >> 31; $180 = (___muldi3(($174|0),($176|0),($177|0),($179|0))|0); $181 = tempRet0; $182 = (_bitshift64Ashr(($180|0),($181|0),30)|0); $183 = tempRet0; $184 = (_i64Add(($182|0),($183|0),1,0)|0); $185 = tempRet0; $186 = (_bitshift64Ashr(($184|0),($185|0),1)|0); $187 = tempRet0; $and143 = $xor135 & $186; $and144 = $and143 & -2147483648; $tobool145 = ($and144|0)!=(0); if ($tobool145) { $cond159 = 2147483647; } else { $188 = $tmp1; $189 = $tmp2; $190 = ($189|0)<(0); $191 = $190 << 31 >> 31; $192 = $rc_Q31; $193 = ($192|0)<(0); $194 = $193 << 31 >> 31; $195 = (___muldi3(($189|0),($191|0),($192|0),($194|0))|0); $196 = tempRet0; $197 = (_bitshift64Ashr(($195|0),($196|0),30)|0); $198 = tempRet0; $199 = (_i64Add(($197|0),($198|0),1,0)|0); $200 = tempRet0; $201 = (_bitshift64Ashr(($199|0),($200|0),1)|0); $202 = tempRet0; $sub155 = (($188) - ($201))|0; $cond159 = $sub155; } } $203 = ($cond159|0)<(0); $204 = $203 << 31 >> 31; $205 = $rc_mult2; $206 = ($205|0)<(0); $207 = $206 << 31 >> 31; $208 = (___muldi3(($cond159|0),($204|0),($205|0),($207|0))|0); $209 = tempRet0; $210 = $208 & 1; $211 = (_i64Add(($127|0),($128|0),($210|0),0)|0); $212 = tempRet0; $287 = $211;$290 = $212; } else { if ($cmp45) { $213 = $tmp2; $214 = ($213|0)<(0); $215 = $214 << 31 >> 31; $216 = $rc_Q31; $217 = ($216|0)<(0); $218 = $217 << 31 >> 31; $219 = (___muldi3(($213|0),($215|0),($216|0),($218|0))|0); $220 = tempRet0; $221 = (_bitshift64Ashr(($219|0),($220|0),30)|0); $222 = tempRet0; $223 = (_i64Add(($221|0),($222|0),1,0)|0); $224 = tempRet0; $225 = (_bitshift64Ashr(($223|0),($224|0),1)|0); $226 = tempRet0; $xor185 = $225 ^ -2147483648; $and186 = $61 & $xor185; $and187 = $and186 & -2147483648; $tobool188 = ($and187|0)!=(0); if ($tobool188) { $cond226 = -2147483648; } else { $227 = $tmp1; $228 = $tmp2; $229 = ($228|0)<(0); $230 = $229 << 31 >> 31; $231 = $rc_Q31; $232 = ($231|0)<(0); $233 = $232 << 31 >> 31; $234 = (___muldi3(($228|0),($230|0),($231|0),($233|0))|0); $235 = tempRet0; $236 = (_bitshift64Ashr(($234|0),($235|0),30)|0); $237 = tempRet0; $238 = (_i64Add(($236|0),($237|0),1,0)|0); $239 = tempRet0; $240 = (_bitshift64Ashr(($238|0),($239|0),1)|0); $241 = tempRet0; $sub198 = (($227) - ($240))|0; $cond226 = $sub198; } } else { $xor202 = $61 ^ -2147483648; $242 = $tmp2; $243 = ($242|0)<(0); $244 = $243 << 31 >> 31; $245 = $rc_Q31; $246 = ($245|0)<(0); $247 = $246 << 31 >> 31; $248 = (___muldi3(($242|0),($244|0),($245|0),($247|0))|0); $249 = tempRet0; $250 = (_bitshift64Ashr(($248|0),($249|0),30)|0); $251 = tempRet0; $252 = (_i64Add(($250|0),($251|0),1,0)|0); $253 = tempRet0; $254 = (_bitshift64Ashr(($252|0),($253|0),1)|0); $255 = tempRet0; $and210 = $xor202 & $254; $and211 = $and210 & -2147483648; $tobool212 = ($and211|0)!=(0); if ($tobool212) { $cond226 = 2147483647; } else { $256 = $tmp1; $257 = $tmp2; $258 = ($257|0)<(0); $259 = $258 << 31 >> 31; $260 = $rc_Q31; $261 = ($260|0)<(0); $262 = $261 << 31 >> 31; $263 = (___muldi3(($257|0),($259|0),($260|0),($262|0))|0); $264 = tempRet0; $265 = (_bitshift64Ashr(($263|0),($264|0),30)|0); $266 = tempRet0; $267 = (_i64Add(($265|0),($266|0),1,0)|0); $268 = tempRet0; $269 = (_bitshift64Ashr(($267|0),($268|0),1)|0); $270 = tempRet0; $sub222 = (($256) - ($269))|0; $cond226 = $sub222; } } $271 = ($cond226|0)<(0); $272 = $271 << 31 >> 31; $273 = $rc_mult2; $274 = ($273|0)<(0); $275 = $274 << 31 >> 31; $276 = (___muldi3(($cond226|0),($272|0),($273|0),($275|0))|0); $277 = tempRet0; $278 = $mult2Q; $sub230 = (($278) - 1)|0; $279 = (_bitshift64Ashr(($276|0),($277|0),($sub230|0))|0); $280 = tempRet0; $281 = (_i64Add(($279|0),($280|0),1,0)|0); $282 = tempRet0; $283 = (_bitshift64Ashr(($281|0),($282|0),1)|0); $284 = tempRet0; $287 = $283;$290 = $284; } $285 = $tmp64; $286 = $285; HEAP32[$286>>2] = $287; $288 = (($285) + 4)|0; $289 = $288; HEAP32[$289>>2] = $290; $291 = $tmp64; $292 = $291; $293 = HEAP32[$292>>2]|0; $294 = (($291) + 4)|0; $295 = $294; $296 = HEAP32[$295>>2]|0; $297 = ($296|0)>(0); $298 = ($293>>>0)>(2147483647); $299 = ($296|0)==(0); $300 = $299 & $298; $301 = $297 | $300; $302 = $tmp64; $303 = $302; $304 = HEAP32[$303>>2]|0; $305 = (($302) + 4)|0; $306 = $305; $307 = HEAP32[$306>>2]|0; $308 = ($307|0)<(-1); $309 = ($304>>>0)<(2147483648); $310 = ($307|0)==(-1); $311 = $310 & $309; $312 = $308 | $311; $or$cond = $301 | $312; if ($or$cond) { label = 29; break L1; } $313 = $tmp64; $314 = $313; $315 = HEAP32[$314>>2]|0; $316 = (($313) + 4)|0; $317 = $316; $318 = HEAP32[$317>>2]|0; $319 = $A_QA$addr; $320 = $n; $arrayidx244 = (($319) + ($320<<2)|0); HEAP32[$arrayidx244>>2] = $315; $321 = $mult2Q; $cmp245 = ($321|0)==(1); $322 = $tmp2; $323 = $tmp1; $324 = ($323|0)<(0); $325 = $324 << 31 >> 31; $326 = $rc_Q31; $327 = ($326|0)<(0); $328 = $327 << 31 >> 31; $329 = (___muldi3(($323|0),($325|0),($326|0),($328|0))|0); $330 = tempRet0; $331 = (_bitshift64Ashr(($329|0),($330|0),30)|0); $332 = tempRet0; $333 = (_i64Add(($331|0),($332|0),1,0)|0); $334 = tempRet0; $335 = (_bitshift64Ashr(($333|0),($334|0),1)|0); $336 = tempRet0; $sub255 = (($322) - ($335))|0; $and256 = $sub255 & -2147483648; $cmp257 = ($and256|0)==(0); $337 = $tmp2; if ($cmp245) { if ($cmp257) { $338 = $tmp1; $339 = ($338|0)<(0); $340 = $339 << 31 >> 31; $341 = $rc_Q31; $342 = ($341|0)<(0); $343 = $342 << 31 >> 31; $344 = (___muldi3(($338|0),($340|0),($341|0),($343|0))|0); $345 = tempRet0; $346 = (_bitshift64Ashr(($344|0),($345|0),30)|0); $347 = tempRet0; $348 = (_i64Add(($346|0),($347|0),1,0)|0); $349 = tempRet0; $350 = (_bitshift64Ashr(($348|0),($349|0),1)|0); $351 = tempRet0; $xor267 = $350 ^ -2147483648; $and268 = $337 & $xor267; $and269 = $and268 & -2147483648; $tobool270 = ($and269|0)!=(0); if ($tobool270) { $cond308 = -2147483648; } else { $352 = $tmp2; $353 = $tmp1; $354 = ($353|0)<(0); $355 = $354 << 31 >> 31; $356 = $rc_Q31; $357 = ($356|0)<(0); $358 = $357 << 31 >> 31; $359 = (___muldi3(($353|0),($355|0),($356|0),($358|0))|0); $360 = tempRet0; $361 = (_bitshift64Ashr(($359|0),($360|0),30)|0); $362 = tempRet0; $363 = (_i64Add(($361|0),($362|0),1,0)|0); $364 = tempRet0; $365 = (_bitshift64Ashr(($363|0),($364|0),1)|0); $366 = tempRet0; $sub280 = (($352) - ($365))|0; $cond308 = $sub280; } } else { $xor284 = $337 ^ -2147483648; $367 = $tmp1; $368 = ($367|0)<(0); $369 = $368 << 31 >> 31; $370 = $rc_Q31; $371 = ($370|0)<(0); $372 = $371 << 31 >> 31; $373 = (___muldi3(($367|0),($369|0),($370|0),($372|0))|0); $374 = tempRet0; $375 = (_bitshift64Ashr(($373|0),($374|0),30)|0); $376 = tempRet0; $377 = (_i64Add(($375|0),($376|0),1,0)|0); $378 = tempRet0; $379 = (_bitshift64Ashr(($377|0),($378|0),1)|0); $380 = tempRet0; $and292 = $xor284 & $379; $and293 = $and292 & -2147483648; $tobool294 = ($and293|0)!=(0); if ($tobool294) { $cond308 = 2147483647; } else { $381 = $tmp2; $382 = $tmp1; $383 = ($382|0)<(0); $384 = $383 << 31 >> 31; $385 = $rc_Q31; $386 = ($385|0)<(0); $387 = $386 << 31 >> 31; $388 = (___muldi3(($382|0),($384|0),($385|0),($387|0))|0); $389 = tempRet0; $390 = (_bitshift64Ashr(($388|0),($389|0),30)|0); $391 = tempRet0; $392 = (_i64Add(($390|0),($391|0),1,0)|0); $393 = tempRet0; $394 = (_bitshift64Ashr(($392|0),($393|0),1)|0); $395 = tempRet0; $sub304 = (($381) - ($394))|0; $cond308 = $sub304; } } $396 = ($cond308|0)<(0); $397 = $396 << 31 >> 31; $398 = $rc_mult2; $399 = ($398|0)<(0); $400 = $399 << 31 >> 31; $401 = (___muldi3(($cond308|0),($397|0),($398|0),($400|0))|0); $402 = tempRet0; $403 = (_bitshift64Ashr(($401|0),($402|0),1)|0); $404 = tempRet0; $405 = $tmp2; $406 = $tmp1; $407 = ($406|0)<(0); $408 = $407 << 31 >> 31; $409 = $rc_Q31; $410 = ($409|0)<(0); $411 = $410 << 31 >> 31; $412 = (___muldi3(($406|0),($408|0),($409|0),($411|0))|0); $413 = tempRet0; $414 = (_bitshift64Ashr(($412|0),($413|0),30)|0); $415 = tempRet0; $416 = (_i64Add(($414|0),($415|0),1,0)|0); $417 = tempRet0; $418 = (_bitshift64Ashr(($416|0),($417|0),1)|0); $419 = tempRet0; $sub320 = (($405) - ($418))|0; $and321 = $sub320 & -2147483648; $cmp322 = ($and321|0)==(0); $420 = $tmp2; if ($cmp322) { $421 = $tmp1; $422 = ($421|0)<(0); $423 = $422 << 31 >> 31; $424 = $rc_Q31; $425 = ($424|0)<(0); $426 = $425 << 31 >> 31; $427 = (___muldi3(($421|0),($423|0),($424|0),($426|0))|0); $428 = tempRet0; $429 = (_bitshift64Ashr(($427|0),($428|0),30)|0); $430 = tempRet0; $431 = (_i64Add(($429|0),($430|0),1,0)|0); $432 = tempRet0; $433 = (_bitshift64Ashr(($431|0),($432|0),1)|0); $434 = tempRet0; $xor332 = $433 ^ -2147483648; $and333 = $420 & $xor332; $and334 = $and333 & -2147483648; $tobool335 = ($and334|0)!=(0); if ($tobool335) { $cond373 = -2147483648; } else { $435 = $tmp2; $436 = $tmp1; $437 = ($436|0)<(0); $438 = $437 << 31 >> 31; $439 = $rc_Q31; $440 = ($439|0)<(0); $441 = $440 << 31 >> 31; $442 = (___muldi3(($436|0),($438|0),($439|0),($441|0))|0); $443 = tempRet0; $444 = (_bitshift64Ashr(($442|0),($443|0),30)|0); $445 = tempRet0; $446 = (_i64Add(($444|0),($445|0),1,0)|0); $447 = tempRet0; $448 = (_bitshift64Ashr(($446|0),($447|0),1)|0); $449 = tempRet0; $sub345 = (($435) - ($448))|0; $cond373 = $sub345; } } else { $xor349 = $420 ^ -2147483648; $450 = $tmp1; $451 = ($450|0)<(0); $452 = $451 << 31 >> 31; $453 = $rc_Q31; $454 = ($453|0)<(0); $455 = $454 << 31 >> 31; $456 = (___muldi3(($450|0),($452|0),($453|0),($455|0))|0); $457 = tempRet0; $458 = (_bitshift64Ashr(($456|0),($457|0),30)|0); $459 = tempRet0; $460 = (_i64Add(($458|0),($459|0),1,0)|0); $461 = tempRet0; $462 = (_bitshift64Ashr(($460|0),($461|0),1)|0); $463 = tempRet0; $and357 = $xor349 & $462; $and358 = $and357 & -2147483648; $tobool359 = ($and358|0)!=(0); if ($tobool359) { $cond373 = 2147483647; } else { $464 = $tmp2; $465 = $tmp1; $466 = ($465|0)<(0); $467 = $466 << 31 >> 31; $468 = $rc_Q31; $469 = ($468|0)<(0); $470 = $469 << 31 >> 31; $471 = (___muldi3(($465|0),($467|0),($468|0),($470|0))|0); $472 = tempRet0; $473 = (_bitshift64Ashr(($471|0),($472|0),30)|0); $474 = tempRet0; $475 = (_i64Add(($473|0),($474|0),1,0)|0); $476 = tempRet0; $477 = (_bitshift64Ashr(($475|0),($476|0),1)|0); $478 = tempRet0; $sub369 = (($464) - ($477))|0; $cond373 = $sub369; } } $479 = ($cond373|0)<(0); $480 = $479 << 31 >> 31; $481 = $rc_mult2; $482 = ($481|0)<(0); $483 = $482 << 31 >> 31; $484 = (___muldi3(($cond373|0),($480|0),($481|0),($483|0))|0); $485 = tempRet0; $486 = $484 & 1; $487 = (_i64Add(($403|0),($404|0),($486|0),0)|0); $488 = tempRet0; $563 = $487;$566 = $488; } else { if ($cmp257) { $489 = $tmp1; $490 = ($489|0)<(0); $491 = $490 << 31 >> 31; $492 = $rc_Q31; $493 = ($492|0)<(0); $494 = $493 << 31 >> 31; $495 = (___muldi3(($489|0),($491|0),($492|0),($494|0))|0); $496 = tempRet0; $497 = (_bitshift64Ashr(($495|0),($496|0),30)|0); $498 = tempRet0; $499 = (_i64Add(($497|0),($498|0),1,0)|0); $500 = tempRet0; $501 = (_bitshift64Ashr(($499|0),($500|0),1)|0); $502 = tempRet0; $xor399 = $501 ^ -2147483648; $and400 = $337 & $xor399; $and401 = $and400 & -2147483648; $tobool402 = ($and401|0)!=(0); if ($tobool402) { $cond440 = -2147483648; } else { $503 = $tmp2; $504 = $tmp1; $505 = ($504|0)<(0); $506 = $505 << 31 >> 31; $507 = $rc_Q31; $508 = ($507|0)<(0); $509 = $508 << 31 >> 31; $510 = (___muldi3(($504|0),($506|0),($507|0),($509|0))|0); $511 = tempRet0; $512 = (_bitshift64Ashr(($510|0),($511|0),30)|0); $513 = tempRet0; $514 = (_i64Add(($512|0),($513|0),1,0)|0); $515 = tempRet0; $516 = (_bitshift64Ashr(($514|0),($515|0),1)|0); $517 = tempRet0; $sub412 = (($503) - ($516))|0; $cond440 = $sub412; } } else { $xor416 = $337 ^ -2147483648; $518 = $tmp1; $519 = ($518|0)<(0); $520 = $519 << 31 >> 31; $521 = $rc_Q31; $522 = ($521|0)<(0); $523 = $522 << 31 >> 31; $524 = (___muldi3(($518|0),($520|0),($521|0),($523|0))|0); $525 = tempRet0; $526 = (_bitshift64Ashr(($524|0),($525|0),30)|0); $527 = tempRet0; $528 = (_i64Add(($526|0),($527|0),1,0)|0); $529 = tempRet0; $530 = (_bitshift64Ashr(($528|0),($529|0),1)|0); $531 = tempRet0; $and424 = $xor416 & $530; $and425 = $and424 & -2147483648; $tobool426 = ($and425|0)!=(0); if ($tobool426) { $cond440 = 2147483647; } else { $532 = $tmp2; $533 = $tmp1; $534 = ($533|0)<(0); $535 = $534 << 31 >> 31; $536 = $rc_Q31; $537 = ($536|0)<(0); $538 = $537 << 31 >> 31; $539 = (___muldi3(($533|0),($535|0),($536|0),($538|0))|0); $540 = tempRet0; $541 = (_bitshift64Ashr(($539|0),($540|0),30)|0); $542 = tempRet0; $543 = (_i64Add(($541|0),($542|0),1,0)|0); $544 = tempRet0; $545 = (_bitshift64Ashr(($543|0),($544|0),1)|0); $546 = tempRet0; $sub436 = (($532) - ($545))|0; $cond440 = $sub436; } } $547 = ($cond440|0)<(0); $548 = $547 << 31 >> 31; $549 = $rc_mult2; $550 = ($549|0)<(0); $551 = $550 << 31 >> 31; $552 = (___muldi3(($cond440|0),($548|0),($549|0),($551|0))|0); $553 = tempRet0; $554 = $mult2Q; $sub444 = (($554) - 1)|0; $555 = (_bitshift64Ashr(($552|0),($553|0),($sub444|0))|0); $556 = tempRet0; $557 = (_i64Add(($555|0),($556|0),1,0)|0); $558 = tempRet0; $559 = (_bitshift64Ashr(($557|0),($558|0),1)|0); $560 = tempRet0; $563 = $559;$566 = $560; } $561 = $tmp64; $562 = $561; HEAP32[$562>>2] = $563; $564 = (($561) + 4)|0; $565 = $564; HEAP32[$565>>2] = $566; $567 = $tmp64; $568 = $567; $569 = HEAP32[$568>>2]|0; $570 = (($567) + 4)|0; $571 = $570; $572 = HEAP32[$571>>2]|0; $573 = ($572|0)>(0); $574 = ($569>>>0)>(2147483647); $575 = ($572|0)==(0); $576 = $575 & $574; $577 = $573 | $576; $578 = $tmp64; $579 = $578; $580 = HEAP32[$579>>2]|0; $581 = (($578) + 4)|0; $582 = $581; $583 = HEAP32[$582>>2]|0; $584 = ($583|0)<(-1); $585 = ($580>>>0)<(2147483648); $586 = ($583|0)==(-1); $587 = $586 & $585; $588 = $584 | $587; $or$cond1 = $577 | $588; if ($or$cond1) { label = 49; break L1; } $589 = $tmp64; $590 = $589; $591 = HEAP32[$590>>2]|0; $592 = (($589) + 4)|0; $593 = $592; $594 = HEAP32[$593>>2]|0; $595 = $A_QA$addr; $596 = $k; $597 = $n; $sub459 = (($596) - ($597))|0; $sub460 = (($sub459) - 1)|0; $arrayidx461 = (($595) + ($sub460<<2)|0); HEAP32[$arrayidx461>>2] = $591; $598 = $n; $inc = (($598) + 1)|0; $n = $inc; } $599 = $k; $dec = (($599) + -1)|0; $k = $dec; } if ((label|0) == 5) { $retval = 0; $627 = $retval; STACKTOP = sp;return ($627|0); } else if ((label|0) == 7) { $retval = 0; $627 = $retval; STACKTOP = sp;return ($627|0); } else if ((label|0) == 29) { $retval = 0; $627 = $retval; STACKTOP = sp;return ($627|0); } else if ((label|0) == 49) { $retval = 0; $627 = $retval; STACKTOP = sp;return ($627|0); } else if ((label|0) == 52) { if (!($cmp1)) { $600 = $A_QA$addr; $601 = $k; $arrayidx468 = (($600) + ($601<<2)|0); $602 = HEAP32[$arrayidx468>>2]|0; $cmp469 = ($602|0)<(-16773022); if (!($cmp469)) { $603 = $A_QA$addr; $604 = HEAP32[$603>>2]|0; $shl474 = $604 << 7; $sub475 = (0 - ($shl474))|0; $rc_Q31 = $sub475; $605 = $rc_Q31; $606 = ($605|0)<(0); $607 = $606 << 31 >> 31; $608 = $rc_Q31; $609 = ($608|0)<(0); $610 = $609 << 31 >> 31; $611 = (___muldi3(($605|0),($607|0),($608|0),($610|0))|0); $612 = tempRet0; $613 = (_bitshift64Ashr(($611|0),($612|0),32)|0); $614 = tempRet0; $sub481 = (1073741824 - ($613))|0; $rc_mult1_Q30 = $sub481; $615 = $invGain_Q30; $616 = ($615|0)<(0); $617 = $616 << 31 >> 31; $618 = $rc_mult1_Q30; $619 = ($618|0)<(0); $620 = $619 << 31 >> 31; $621 = (___muldi3(($615|0),($617|0),($618|0),($620|0))|0); $622 = tempRet0; $623 = (_bitshift64Ashr(($621|0),($622|0),32)|0); $624 = tempRet0; $shl487 = $623 << 2; $invGain_Q30 = $shl487; $625 = $invGain_Q30; $cmp488 = ($625|0)<(107374); if ($cmp488) { $retval = 0; $627 = $retval; STACKTOP = sp;return ($627|0); } else { $626 = $invGain_Q30; $retval = $626; $627 = $retval; STACKTOP = sp;return ($627|0); } } } $retval = 0; $627 = $retval; STACKTOP = sp;return ($627|0); } return (0)|0; } function _silk_CLZ32_488($in32) { $in32 = $in32|0; var $0 = 0, $1 = 0, $2 = 0, $cond = 0, $in32$addr = 0, $sub = 0, $sub1 = 0, $tobool = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $in32$addr = $in32; $0 = $in32$addr; $tobool = ($0|0)!=(0); if (!($tobool)) { $cond = 32; STACKTOP = sp;return ($cond|0); } $1 = $in32$addr; $2 = (Math_clz32(($1|0))|0); $sub = (32 - ($2))|0; $sub1 = (32 - ($sub))|0; $cond = $sub1; STACKTOP = sp;return ($cond|0); } function _silk_INVERSE32_varQ_489($b32,$Qres) { $b32 = $b32|0; $Qres = $Qres|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $Qres$addr = 0, $add = 0; var $add20 = 0, $add21 = 0, $add23 = 0, $add26 = 0, $and = 0, $and15 = 0, $b32$addr = 0, $b32_inv = 0, $b32_nrm = 0, $b_headrm = 0, $call = 0, $cmp = 0, $cmp29 = 0, $cmp35 = 0, $cmp40 = 0, $cmp48 = 0, $cmp61 = 0, $cmp69 = 0, $cmp83 = 0, $cond = 0; var $cond80 = 0, $conv = 0, $conv12 = 0, $conv13 = 0, $conv16 = 0, $conv17 = 0, $conv4 = 0, $conv5 = 0, $conv6 = 0, $div = 0, $err_Q32 = 0, $lshift = 0, $mul = 0, $mul14 = 0, $mul18 = 0, $mul25 = 0, $mul7 = 0, $result = 0, $retval = 0, $shl = 0; var $shl10 = 0, $shl2 = 0, $shl82 = 0, $shr = 0, $shr11 = 0, $shr19 = 0, $shr22 = 0, $shr24 = 0, $shr3 = 0, $shr32 = 0, $shr34 = 0, $shr39 = 0, $shr44 = 0, $shr47 = 0, $shr52 = 0, $shr60 = 0, $shr65 = 0, $shr68 = 0, $shr73 = 0, $shr8 = 0; var $shr86 = 0, $sub = 0, $sub1 = 0, $sub27 = 0, $sub28 = 0, $sub31 = 0, $sub33 = 0, $sub38 = 0, $sub43 = 0, $sub46 = 0, $sub51 = 0, $sub64 = 0, $sub67 = 0, $sub72 = 0, $sub81 = 0, $sub9 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $b32$addr = $b32; $Qres$addr = $Qres; $0 = $b32$addr; $cmp = ($0|0)>(0); $1 = $b32$addr; $sub = (0 - ($1))|0; $cond = $cmp ? $1 : $sub; $call = (_silk_CLZ32_488($cond)|0); $sub1 = (($call) - 1)|0; $b_headrm = $sub1; $2 = $b32$addr; $3 = $b_headrm; $shl = $2 << $3; $b32_nrm = $shl; $4 = $b32_nrm; $shr = $4 >> 16; $div = (536870911 / ($shr|0))&-1; $b32_inv = $div; $5 = $b32_inv; $shl2 = $5 << 16; $result = $shl2; $6 = $b32_nrm; $shr3 = $6 >> 16; $7 = $b32_inv; $conv = $7&65535; $conv4 = $conv << 16 >> 16; $mul = Math_imul($shr3, $conv4)|0; $8 = $b32_nrm; $and = $8 & 65535; $9 = $b32_inv; $conv5 = $9&65535; $conv6 = $conv5 << 16 >> 16; $mul7 = Math_imul($and, $conv6)|0; $shr8 = $mul7 >> 16; $add = (($mul) + ($shr8))|0; $sub9 = (536870912 - ($add))|0; $shl10 = $sub9 << 3; $err_Q32 = $shl10; $10 = $result; $11 = $err_Q32; $shr11 = $11 >> 16; $12 = $b32_inv; $conv12 = $12&65535; $conv13 = $conv12 << 16 >> 16; $mul14 = Math_imul($shr11, $conv13)|0; $13 = $err_Q32; $and15 = $13 & 65535; $14 = $b32_inv; $conv16 = $14&65535; $conv17 = $conv16 << 16 >> 16; $mul18 = Math_imul($and15, $conv17)|0; $shr19 = $mul18 >> 16; $add20 = (($mul14) + ($shr19))|0; $add21 = (($10) + ($add20))|0; $15 = $err_Q32; $16 = $b32_inv; $shr22 = $16 >> 15; $add23 = (($shr22) + 1)|0; $shr24 = $add23 >> 1; $mul25 = Math_imul($15, $shr24)|0; $add26 = (($add21) + ($mul25))|0; $result = $add26; $17 = $b_headrm; $sub27 = (61 - ($17))|0; $18 = $Qres$addr; $sub28 = (($sub27) - ($18))|0; $lshift = $sub28; $19 = $lshift; $cmp29 = ($19|0)<=(0); $20 = $lshift; if (!($cmp29)) { $cmp83 = ($20|0)<(32); if ($cmp83) { $35 = $result; $36 = $lshift; $shr86 = $35 >> $36; $retval = $shr86; $37 = $retval; STACKTOP = sp;return ($37|0); } else { $retval = 0; $37 = $retval; STACKTOP = sp;return ($37|0); } } $sub31 = (0 - ($20))|0; $shr32 = -2147483648 >> $sub31; $21 = $lshift; $sub33 = (0 - ($21))|0; $shr34 = 2147483647 >> $sub33; $cmp35 = ($shr32|0)>($shr34|0); $22 = $result; $23 = $lshift; $sub38 = (0 - ($23))|0; do { if ($cmp35) { $shr39 = -2147483648 >> $sub38; $cmp40 = ($22|0)>($shr39|0); if ($cmp40) { $24 = $lshift; $sub43 = (0 - ($24))|0; $shr44 = -2147483648 >> $sub43; $cond80 = $shr44; break; } $25 = $result; $26 = $lshift; $sub46 = (0 - ($26))|0; $shr47 = 2147483647 >> $sub46; $cmp48 = ($25|0)<($shr47|0); if ($cmp48) { $27 = $lshift; $sub51 = (0 - ($27))|0; $shr52 = 2147483647 >> $sub51; $cond80 = $shr52; break; } else { $28 = $result; $cond80 = $28; break; } } else { $shr60 = 2147483647 >> $sub38; $cmp61 = ($22|0)>($shr60|0); if ($cmp61) { $29 = $lshift; $sub64 = (0 - ($29))|0; $shr65 = 2147483647 >> $sub64; $cond80 = $shr65; break; } $30 = $result; $31 = $lshift; $sub67 = (0 - ($31))|0; $shr68 = -2147483648 >> $sub67; $cmp69 = ($30|0)<($shr68|0); if ($cmp69) { $32 = $lshift; $sub72 = (0 - ($32))|0; $shr73 = -2147483648 >> $sub72; $cond80 = $shr73; break; } else { $33 = $result; $cond80 = $33; break; } } } while(0); $34 = $lshift; $sub81 = (0 - ($34))|0; $shl82 = $cond80 << $sub81; $retval = $shl82; $37 = $retval; STACKTOP = sp;return ($37|0); } function _silk_NLSF2A($a_Q12,$NLSF,$d,$arch) { $a_Q12 = $a_Q12|0; $NLSF = $NLSF|0; $d = $d|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $NLSF$addr = 0; var $P = 0, $Ptmp = 0, $Q = 0, $Qtmp = 0, $a32_QA1 = 0, $a_Q12$addr = 0, $add = 0, $add10 = 0, $add12 = 0, $add24 = 0, $add27 = 0, $add28 = 0, $add58 = 0, $arch$addr = 0, $arrayidx = 0, $arrayidx14 = 0, $arrayidx15 = 0, $arrayidx19 = 0, $arrayidx2 = 0, $arrayidx25 = 0; var $arrayidx26 = 0, $arrayidx29 = 0, $arrayidx30 = 0, $arrayidx34 = 0, $arrayidx38 = 0, $arrayidx4 = 0, $arrayidx56 = 0, $arrayidx6 = 0, $arrayidx61 = 0, $call = 0, $cmp = 0, $cmp1 = 0, $cmp21 = 0, $cmp44 = 0, $cmp46 = 0, $cmp53 = 0, $cond = 0, $conv = 0, $conv3 = 0, $conv5 = 0; var $conv60 = 0, $conv7 = 0, $cos_LSF_QA = 0, $cos_val = 0, $d$addr = 0, $dd = 0, $delta = 0, $f_frac = 0, $f_int = 0, $i = 0, $idxprom = 0, $inc = 0, $inc40 = 0, $inc63 = 0, $inc66 = 0, $k = 0, $mul = 0, $ordering = 0, $shl = 0, $shl50 = 0; var $shl9 = 0, $shr = 0, $shr11 = 0, $shr13 = 0, $shr16 = 0, $shr57 = 0, $shr59 = 0, $sub = 0, $sub31 = 0, $sub32 = 0, $sub33 = 0, $sub35 = 0, $sub36 = 0, $sub37 = 0, $sub51 = 0, $sub8 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 352|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(352|0); $cos_LSF_QA = sp + 224|0; $P = sp + 172|0; $Q = sp + 120|0; $a32_QA1 = sp; $a_Q12$addr = $a_Q12; $NLSF$addr = $NLSF; $d$addr = $d; $arch$addr = $arch; $0 = $d$addr; $cmp = ($0|0)==(16); $cond = $cmp ? 35830 : 35846; $ordering = $cond; $k = 0; while(1) { $1 = $k; $2 = $d$addr; $cmp1 = ($1|0)<($2|0); if (!($cmp1)) { break; } $3 = $NLSF$addr; $4 = $k; $arrayidx = (($3) + ($4<<1)|0); $5 = HEAP16[$arrayidx>>1]|0; $conv = $5 << 16 >> 16; $shr = $conv >> 8; $f_int = $shr; $6 = $NLSF$addr; $7 = $k; $arrayidx2 = (($6) + ($7<<1)|0); $8 = HEAP16[$arrayidx2>>1]|0; $conv3 = $8 << 16 >> 16; $9 = $f_int; $shl = $9 << 8; $sub = (($conv3) - ($shl))|0; $f_frac = $sub; $10 = $f_int; $arrayidx4 = (25640 + ($10<<1)|0); $11 = HEAP16[$arrayidx4>>1]|0; $conv5 = $11 << 16 >> 16; $cos_val = $conv5; $12 = $f_int; $add = (($12) + 1)|0; $arrayidx6 = (25640 + ($add<<1)|0); $13 = HEAP16[$arrayidx6>>1]|0; $conv7 = $13 << 16 >> 16; $14 = $cos_val; $sub8 = (($conv7) - ($14))|0; $delta = $sub8; $15 = $cos_val; $shl9 = $15 << 8; $16 = $delta; $17 = $f_frac; $mul = Math_imul($16, $17)|0; $add10 = (($shl9) + ($mul))|0; $shr11 = $add10 >> 3; $add12 = (($shr11) + 1)|0; $shr13 = $add12 >> 1; $18 = $ordering; $19 = $k; $arrayidx14 = (($18) + ($19)|0); $20 = HEAP8[$arrayidx14>>0]|0; $idxprom = $20&255; $arrayidx15 = (($cos_LSF_QA) + ($idxprom<<2)|0); HEAP32[$arrayidx15>>2] = $shr13; $21 = $k; $inc = (($21) + 1)|0; $k = $inc; } $22 = $d$addr; $shr16 = $22 >> 1; $dd = $shr16; $23 = $dd; _silk_NLSF2A_find_poly($P,$cos_LSF_QA,$23); $arrayidx19 = ((($cos_LSF_QA)) + 4|0); $24 = $dd; _silk_NLSF2A_find_poly($Q,$arrayidx19,$24); $k = 0; while(1) { $25 = $k; $26 = $dd; $cmp21 = ($25|0)<($26|0); if (!($cmp21)) { break; } $27 = $k; $add24 = (($27) + 1)|0; $arrayidx25 = (($P) + ($add24<<2)|0); $28 = HEAP32[$arrayidx25>>2]|0; $29 = $k; $arrayidx26 = (($P) + ($29<<2)|0); $30 = HEAP32[$arrayidx26>>2]|0; $add27 = (($28) + ($30))|0; $Ptmp = $add27; $31 = $k; $add28 = (($31) + 1)|0; $arrayidx29 = (($Q) + ($add28<<2)|0); $32 = HEAP32[$arrayidx29>>2]|0; $33 = $k; $arrayidx30 = (($Q) + ($33<<2)|0); $34 = HEAP32[$arrayidx30>>2]|0; $sub31 = (($32) - ($34))|0; $Qtmp = $sub31; $35 = $Qtmp; $sub32 = (0 - ($35))|0; $36 = $Ptmp; $sub33 = (($sub32) - ($36))|0; $37 = $k; $arrayidx34 = (($a32_QA1) + ($37<<2)|0); HEAP32[$arrayidx34>>2] = $sub33; $38 = $Qtmp; $39 = $Ptmp; $sub35 = (($38) - ($39))|0; $40 = $d$addr; $41 = $k; $sub36 = (($40) - ($41))|0; $sub37 = (($sub36) - 1)|0; $arrayidx38 = (($a32_QA1) + ($sub37<<2)|0); HEAP32[$arrayidx38>>2] = $sub35; $42 = $k; $inc40 = (($42) + 1)|0; $k = $inc40; } $43 = $a_Q12$addr; $44 = $d$addr; _silk_LPC_fit($43,$a32_QA1,12,17,$44); $i = 0; while(1) { $45 = $a_Q12$addr; $46 = $d$addr; $call = (_silk_LPC_inverse_pred_gain_c($45,$46)|0); $cmp44 = ($call|0)==(0); $47 = $i; $cmp46 = ($47|0)<(16); $48 = $cmp44 ? $cmp46 : 0; if (!($48)) { break; } $49 = $d$addr; $50 = $i; $shl50 = 2 << $50; $sub51 = (65536 - ($shl50))|0; _silk_bwexpander_32($a32_QA1,$49,$sub51); $k = 0; while(1) { $51 = $k; $52 = $d$addr; $cmp53 = ($51|0)<($52|0); if (!($cmp53)) { break; } $53 = $k; $arrayidx56 = (($a32_QA1) + ($53<<2)|0); $54 = HEAP32[$arrayidx56>>2]|0; $shr57 = $54 >> 4; $add58 = (($shr57) + 1)|0; $shr59 = $add58 >> 1; $conv60 = $shr59&65535; $55 = $a_Q12$addr; $56 = $k; $arrayidx61 = (($55) + ($56<<1)|0); HEAP16[$arrayidx61>>1] = $conv60; $57 = $k; $inc63 = (($57) + 1)|0; $k = $inc63; } $58 = $i; $inc66 = (($58) + 1)|0; $i = $inc66; } STACKTOP = sp;return; } function _silk_NLSF2A_find_poly($out,$cLSF,$dd) { $out = $out|0; $cLSF = $cLSF|0; $dd = $dd|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add12 = 0; var $add31 = 0, $arrayidx13 = 0, $arrayidx19 = 0, $arrayidx2 = 0, $arrayidx22 = 0, $arrayidx3 = 0, $arrayidx30 = 0, $arrayidx32 = 0, $arrayidx5 = 0, $arrayidx6 = 0, $cLSF$addr = 0, $cmp = 0, $cmp15 = 0, $dd$addr = 0, $dec = 0, $ftmp = 0, $inc = 0, $k = 0, $mul = 0, $n = 0; var $out$addr = 0, $shl = 0, $sub = 0, $sub11 = 0, $sub18 = 0, $sub21 = 0, $sub29 = 0, $sub33 = 0, $sub4 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $out$addr = $out; $cLSF$addr = $cLSF; $dd$addr = $dd; $0 = $out$addr; HEAP32[$0>>2] = 65536; $1 = $cLSF$addr; $2 = HEAP32[$1>>2]|0; $sub = (0 - ($2))|0; $3 = $out$addr; $arrayidx2 = ((($3)) + 4|0); HEAP32[$arrayidx2>>2] = $sub; $k = 1; while(1) { $4 = $k; $5 = $dd$addr; $cmp = ($4|0)<($5|0); if (!($cmp)) { break; } $6 = $cLSF$addr; $7 = $k; $mul = $7<<1; $arrayidx3 = (($6) + ($mul<<2)|0); $8 = HEAP32[$arrayidx3>>2]|0; $ftmp = $8; $9 = $out$addr; $10 = $k; $sub4 = (($10) - 1)|0; $arrayidx5 = (($9) + ($sub4<<2)|0); $11 = HEAP32[$arrayidx5>>2]|0; $shl = $11 << 1; $12 = $ftmp; $13 = ($12|0)<(0); $14 = $13 << 31 >> 31; $15 = $out$addr; $16 = $k; $arrayidx6 = (($15) + ($16<<2)|0); $17 = HEAP32[$arrayidx6>>2]|0; $18 = ($17|0)<(0); $19 = $18 << 31 >> 31; $20 = (___muldi3(($12|0),($14|0),($17|0),($19|0))|0); $21 = tempRet0; $22 = (_bitshift64Ashr(($20|0),($21|0),15)|0); $23 = tempRet0; $24 = (_i64Add(($22|0),($23|0),1,0)|0); $25 = tempRet0; $26 = (_bitshift64Ashr(($24|0),($25|0),1)|0); $27 = tempRet0; $sub11 = (($shl) - ($26))|0; $28 = $out$addr; $29 = $k; $add12 = (($29) + 1)|0; $arrayidx13 = (($28) + ($add12<<2)|0); HEAP32[$arrayidx13>>2] = $sub11; $30 = $k; $n = $30; while(1) { $31 = $n; $cmp15 = ($31|0)>(1); if (!($cmp15)) { break; } $32 = $out$addr; $33 = $n; $sub18 = (($33) - 2)|0; $arrayidx19 = (($32) + ($sub18<<2)|0); $34 = HEAP32[$arrayidx19>>2]|0; $35 = $ftmp; $36 = ($35|0)<(0); $37 = $36 << 31 >> 31; $38 = $out$addr; $39 = $n; $sub21 = (($39) - 1)|0; $arrayidx22 = (($38) + ($sub21<<2)|0); $40 = HEAP32[$arrayidx22>>2]|0; $41 = ($40|0)<(0); $42 = $41 << 31 >> 31; $43 = (___muldi3(($35|0),($37|0),($40|0),($42|0))|0); $44 = tempRet0; $45 = (_bitshift64Ashr(($43|0),($44|0),15)|0); $46 = tempRet0; $47 = (_i64Add(($45|0),($46|0),1,0)|0); $48 = tempRet0; $49 = (_bitshift64Ashr(($47|0),($48|0),1)|0); $50 = tempRet0; $sub29 = (($34) - ($49))|0; $51 = $out$addr; $52 = $n; $arrayidx30 = (($51) + ($52<<2)|0); $53 = HEAP32[$arrayidx30>>2]|0; $add31 = (($53) + ($sub29))|0; HEAP32[$arrayidx30>>2] = $add31; $54 = $n; $dec = (($54) + -1)|0; $n = $dec; } $55 = $ftmp; $56 = $out$addr; $arrayidx32 = ((($56)) + 4|0); $57 = HEAP32[$arrayidx32>>2]|0; $sub33 = (($57) - ($55))|0; HEAP32[$arrayidx32>>2] = $sub33; $58 = $k; $inc = (($58) + 1)|0; $k = $inc; } STACKTOP = sp;return; } function _silk_NLSF_stabilize($NLSF_Q15,$NDeltaMin_Q15,$L) { $NLSF_Q15 = $NLSF_Q15|0; $NDeltaMin_Q15 = $NDeltaMin_Q15|0; $L = $L|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $21 = 0, $22 = 0, $23 = 0; var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0; var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0; var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0; var $97 = 0, $98 = 0, $99 = 0, $I = 0, $L$addr = 0, $NDeltaMin_Q15$addr = 0, $NLSF_Q15$addr = 0, $add = 0, $add105 = 0, $add107 = 0, $add117 = 0, $add124 = 0, $add126 = 0, $add154 = 0, $add161 = 0, $add163 = 0, $add173 = 0, $add180 = 0, $add182 = 0, $add203 = 0; var $add23 = 0, $add232 = 0, $add242 = 0, $add252 = 0, $add282 = 0, $add285 = 0, $add54 = 0, $add60 = 0, $add81 = 0, $add88 = 0, $add89 = 0, $add98 = 0, $and = 0, $and106 = 0, $and125 = 0, $and162 = 0, $and181 = 0, $arrayidx101 = 0, $arrayidx103 = 0, $arrayidx11 = 0; var $arrayidx113 = 0, $arrayidx115 = 0, $arrayidx120 = 0, $arrayidx122 = 0, $arrayidx13 = 0, $arrayidx150 = 0, $arrayidx152 = 0, $arrayidx157 = 0, $arrayidx159 = 0, $arrayidx169 = 0, $arrayidx171 = 0, $arrayidx176 = 0, $arrayidx178 = 0, $arrayidx19 = 0, $arrayidx191 = 0, $arrayidx197 = 0, $arrayidx199 = 0, $arrayidx201 = 0, $arrayidx205 = 0, $arrayidx205$sink = 0; var $arrayidx21 = 0, $arrayidx225 = 0, $arrayidx228 = 0, $arrayidx230 = 0, $arrayidx238 = 0, $arrayidx240 = 0, $arrayidx248 = 0, $arrayidx250 = 0, $arrayidx261 = 0, $arrayidx266 = 0, $arrayidx268 = 0, $arrayidx274 = 0, $arrayidx280 = 0, $arrayidx283 = 0, $arrayidx286 = 0, $arrayidx291 = 0, $arrayidx41 = 0, $arrayidx46 = 0, $arrayidx52 = 0, $arrayidx58 = 0; var $arrayidx65 = 0, $arrayidx70 = 0, $arrayidx77 = 0, $arrayidx79 = 0, $arrayidx8 = 0, $arrayidx84 = 0, $arrayidx86 = 0, $arrayidx94 = 0, $arrayidx96 = 0, $call = 0, $call259 = 0, $call271 = 0, $call289 = 0, $center_freq_Q15 = 0, $cmp = 0, $cmp108 = 0, $cmp145 = 0, $cmp16 = 0, $cmp164 = 0, $cmp211 = 0; var $cmp222 = 0, $cmp233 = 0, $cmp243 = 0, $cmp25 = 0, $cmp277 = 0, $cmp29 = 0, $cmp33 = 0, $cmp38 = 0, $cmp49 = 0, $cmp5 = 0, $cmp62 = 0, $cmp74 = 0, $cmp90 = 0, $cond188 = 0, $cond256 = 0, $conv = 0, $conv102 = 0, $conv104 = 0, $conv114 = 0, $conv116 = 0; var $conv12 = 0, $conv121 = 0, $conv123 = 0, $conv14 = 0, $conv151 = 0, $conv153 = 0, $conv158 = 0, $conv160 = 0, $conv170 = 0, $conv172 = 0, $conv177 = 0, $conv179 = 0, $conv189 = 0, $conv190 = 0, $conv192 = 0, $conv195 = 0, $conv2 = 0, $conv20 = 0, $conv200 = 0, $conv202 = 0; var $conv204 = 0, $conv204$sink = 0, $conv216 = 0, $conv218 = 0, $conv219 = 0, $conv22 = 0, $conv226 = 0, $conv229 = 0, $conv231 = 0, $conv239 = 0, $conv241 = 0, $conv249 = 0, $conv251 = 0, $conv257 = 0, $conv258 = 0, $conv260 = 0, $conv267 = 0, $conv269 = 0, $conv272 = 0, $conv281 = 0; var $conv284 = 0, $conv287 = 0, $conv290 = 0, $conv42 = 0, $conv44 = 0, $conv53 = 0, $conv59 = 0, $conv66 = 0, $conv71 = 0, $conv78 = 0, $conv80 = 0, $conv85 = 0, $conv87 = 0, $conv9 = 0, $conv95 = 0, $conv97 = 0, $dec = 0, $dec293 = 0, $diff_Q15 = 0, $i = 0; var $inc = 0, $inc209 = 0, $inc263 = 0, $inc56 = 0, $k = 0, $loops = 0, $max_center_Q15 = 0, $min_center_Q15 = 0, $min_diff_Q15 = 0, $shr = 0, $shr118 = 0, $shr155 = 0, $shr174 = 0, $shr193 = 0, $shr72 = 0, $shr82 = 0, $shr99 = 0, $sub = 0, $sub10 = 0, $sub100 = 0; var $sub112 = 0, $sub119 = 0, $sub149 = 0, $sub15 = 0, $sub156 = 0, $sub168 = 0, $sub175 = 0, $sub18 = 0, $sub194 = 0, $sub196 = 0, $sub198 = 0, $sub227 = 0, $sub237 = 0, $sub24 = 0, $sub247 = 0, $sub265 = 0, $sub270 = 0, $sub273 = 0, $sub275 = 0, $sub288 = 0; var $sub4 = 0, $sub43 = 0, $sub45 = 0, $sub67 = 0, $sub73 = 0, $sub76 = 0, $sub83 = 0, $sub93 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $NLSF_Q15$addr = $NLSF_Q15; $NDeltaMin_Q15$addr = $NDeltaMin_Q15; $L$addr = $L; $I = 0; $loops = 0; while(1) { $0 = $loops; $cmp = ($0|0)<(20); if (!($cmp)) { break; } $1 = $NLSF_Q15$addr; $2 = HEAP16[$1>>1]|0; $conv = $2 << 16 >> 16; $3 = $NDeltaMin_Q15$addr; $4 = HEAP16[$3>>1]|0; $conv2 = $4 << 16 >> 16; $sub = (($conv) - ($conv2))|0; $min_diff_Q15 = $sub; $I = 0; $i = 1; while(1) { $5 = $i; $6 = $L$addr; $sub4 = (($6) - 1)|0; $cmp5 = ($5|0)<=($sub4|0); $7 = $NLSF_Q15$addr; if (!($cmp5)) { break; } $8 = $i; $arrayidx8 = (($7) + ($8<<1)|0); $9 = HEAP16[$arrayidx8>>1]|0; $conv9 = $9 << 16 >> 16; $10 = $NLSF_Q15$addr; $11 = $i; $sub10 = (($11) - 1)|0; $arrayidx11 = (($10) + ($sub10<<1)|0); $12 = HEAP16[$arrayidx11>>1]|0; $conv12 = $12 << 16 >> 16; $13 = $NDeltaMin_Q15$addr; $14 = $i; $arrayidx13 = (($13) + ($14<<1)|0); $15 = HEAP16[$arrayidx13>>1]|0; $conv14 = $15 << 16 >> 16; $add = (($conv12) + ($conv14))|0; $sub15 = (($conv9) - ($add))|0; $diff_Q15 = $sub15; $16 = $diff_Q15; $17 = $min_diff_Q15; $cmp16 = ($16|0)<($17|0); if ($cmp16) { $18 = $diff_Q15; $min_diff_Q15 = $18; $19 = $i; $I = $19; } $20 = $i; $inc = (($20) + 1)|0; $i = $inc; } $21 = $L$addr; $sub18 = (($21) - 1)|0; $arrayidx19 = (($7) + ($sub18<<1)|0); $22 = HEAP16[$arrayidx19>>1]|0; $conv20 = $22 << 16 >> 16; $23 = $NDeltaMin_Q15$addr; $24 = $L$addr; $arrayidx21 = (($23) + ($24<<1)|0); $25 = HEAP16[$arrayidx21>>1]|0; $conv22 = $25 << 16 >> 16; $add23 = (($conv20) + ($conv22))|0; $sub24 = (32768 - ($add23))|0; $diff_Q15 = $sub24; $26 = $diff_Q15; $27 = $min_diff_Q15; $cmp25 = ($26|0)<($27|0); if ($cmp25) { $28 = $diff_Q15; $min_diff_Q15 = $28; $29 = $L$addr; $I = $29; } $30 = $min_diff_Q15; $cmp29 = ($30|0)>=(0); if ($cmp29) { label = 45; break; } $31 = $I; $cmp33 = ($31|0)==(0); if ($cmp33) { $32 = $NDeltaMin_Q15$addr; $33 = HEAP16[$32>>1]|0; $34 = $NLSF_Q15$addr; HEAP16[$34>>1] = $33; } else { $35 = $I; $36 = $L$addr; $cmp38 = ($35|0)==($36|0); if ($cmp38) { $37 = $NDeltaMin_Q15$addr; $38 = $L$addr; $arrayidx41 = (($37) + ($38<<1)|0); $39 = HEAP16[$arrayidx41>>1]|0; $conv42 = $39 << 16 >> 16; $sub43 = (32768 - ($conv42))|0; $conv44 = $sub43&65535; $40 = $NLSF_Q15$addr; $41 = $L$addr; $sub45 = (($41) - 1)|0; $arrayidx46 = (($40) + ($sub45<<1)|0); $arrayidx205$sink = $arrayidx46;$conv204$sink = $conv44; } else { $min_center_Q15 = 0; $k = 0; while(1) { $42 = $k; $43 = $I; $cmp49 = ($42|0)<($43|0); $44 = $NDeltaMin_Q15$addr; if (!($cmp49)) { break; } $45 = $k; $arrayidx52 = (($44) + ($45<<1)|0); $46 = HEAP16[$arrayidx52>>1]|0; $conv53 = $46 << 16 >> 16; $47 = $min_center_Q15; $add54 = (($47) + ($conv53))|0; $min_center_Q15 = $add54; $48 = $k; $inc56 = (($48) + 1)|0; $k = $inc56; } $49 = $I; $arrayidx58 = (($44) + ($49<<1)|0); $50 = HEAP16[$arrayidx58>>1]|0; $conv59 = $50 << 16 >> 16; $shr = $conv59 >> 1; $51 = $min_center_Q15; $add60 = (($51) + ($shr))|0; $min_center_Q15 = $add60; $max_center_Q15 = 32768; $52 = $L$addr; $k = $52; while(1) { $53 = $k; $54 = $I; $cmp62 = ($53|0)>($54|0); $55 = $NDeltaMin_Q15$addr; if (!($cmp62)) { break; } $56 = $k; $arrayidx65 = (($55) + ($56<<1)|0); $57 = HEAP16[$arrayidx65>>1]|0; $conv66 = $57 << 16 >> 16; $58 = $max_center_Q15; $sub67 = (($58) - ($conv66))|0; $max_center_Q15 = $sub67; $59 = $k; $dec = (($59) + -1)|0; $k = $dec; } $60 = $I; $arrayidx70 = (($55) + ($60<<1)|0); $61 = HEAP16[$arrayidx70>>1]|0; $conv71 = $61 << 16 >> 16; $shr72 = $conv71 >> 1; $62 = $max_center_Q15; $sub73 = (($62) - ($shr72))|0; $max_center_Q15 = $sub73; $63 = $min_center_Q15; $64 = $max_center_Q15; $cmp74 = ($63|0)>($64|0); $65 = $NLSF_Q15$addr; $66 = $I; $sub76 = (($66) - 1)|0; $arrayidx77 = (($65) + ($sub76<<1)|0); $67 = HEAP16[$arrayidx77>>1]|0; $conv78 = $67 << 16 >> 16; $68 = $NLSF_Q15$addr; $69 = $I; $arrayidx79 = (($68) + ($69<<1)|0); $70 = HEAP16[$arrayidx79>>1]|0; $conv80 = $70 << 16 >> 16; $add81 = (($conv78) + ($conv80))|0; $shr82 = $add81 >> 1; $71 = $NLSF_Q15$addr; $72 = $I; $sub83 = (($72) - 1)|0; $arrayidx84 = (($71) + ($sub83<<1)|0); $73 = HEAP16[$arrayidx84>>1]|0; $conv85 = $73 << 16 >> 16; $74 = $NLSF_Q15$addr; $75 = $I; $arrayidx86 = (($74) + ($75<<1)|0); $76 = HEAP16[$arrayidx86>>1]|0; $conv87 = $76 << 16 >> 16; $add88 = (($conv85) + ($conv87))|0; $and = $add88 & 1; $add89 = (($shr82) + ($and))|0; do { if ($cmp74) { $77 = $min_center_Q15; $cmp90 = ($add89|0)>($77|0); if ($cmp90) { $78 = $min_center_Q15; $cond188 = $78; break; } $79 = $NLSF_Q15$addr; $80 = $I; $sub93 = (($80) - 1)|0; $arrayidx94 = (($79) + ($sub93<<1)|0); $81 = HEAP16[$arrayidx94>>1]|0; $conv95 = $81 << 16 >> 16; $82 = $NLSF_Q15$addr; $83 = $I; $arrayidx96 = (($82) + ($83<<1)|0); $84 = HEAP16[$arrayidx96>>1]|0; $conv97 = $84 << 16 >> 16; $add98 = (($conv95) + ($conv97))|0; $shr99 = $add98 >> 1; $85 = $NLSF_Q15$addr; $86 = $I; $sub100 = (($86) - 1)|0; $arrayidx101 = (($85) + ($sub100<<1)|0); $87 = HEAP16[$arrayidx101>>1]|0; $conv102 = $87 << 16 >> 16; $88 = $NLSF_Q15$addr; $89 = $I; $arrayidx103 = (($88) + ($89<<1)|0); $90 = HEAP16[$arrayidx103>>1]|0; $conv104 = $90 << 16 >> 16; $add105 = (($conv102) + ($conv104))|0; $and106 = $add105 & 1; $add107 = (($shr99) + ($and106))|0; $91 = $max_center_Q15; $cmp108 = ($add107|0)<($91|0); if ($cmp108) { $92 = $max_center_Q15; $cond188 = $92; break; } else { $93 = $NLSF_Q15$addr; $94 = $I; $sub112 = (($94) - 1)|0; $arrayidx113 = (($93) + ($sub112<<1)|0); $95 = HEAP16[$arrayidx113>>1]|0; $conv114 = $95 << 16 >> 16; $96 = $NLSF_Q15$addr; $97 = $I; $arrayidx115 = (($96) + ($97<<1)|0); $98 = HEAP16[$arrayidx115>>1]|0; $conv116 = $98 << 16 >> 16; $add117 = (($conv114) + ($conv116))|0; $shr118 = $add117 >> 1; $99 = $NLSF_Q15$addr; $100 = $I; $sub119 = (($100) - 1)|0; $arrayidx120 = (($99) + ($sub119<<1)|0); $101 = HEAP16[$arrayidx120>>1]|0; $conv121 = $101 << 16 >> 16; $102 = $NLSF_Q15$addr; $103 = $I; $arrayidx122 = (($102) + ($103<<1)|0); $104 = HEAP16[$arrayidx122>>1]|0; $conv123 = $104 << 16 >> 16; $add124 = (($conv121) + ($conv123))|0; $and125 = $add124 & 1; $add126 = (($shr118) + ($and125))|0; $cond188 = $add126; break; } } else { $105 = $max_center_Q15; $cmp145 = ($add89|0)>($105|0); if ($cmp145) { $106 = $max_center_Q15; $cond188 = $106; break; } $107 = $NLSF_Q15$addr; $108 = $I; $sub149 = (($108) - 1)|0; $arrayidx150 = (($107) + ($sub149<<1)|0); $109 = HEAP16[$arrayidx150>>1]|0; $conv151 = $109 << 16 >> 16; $110 = $NLSF_Q15$addr; $111 = $I; $arrayidx152 = (($110) + ($111<<1)|0); $112 = HEAP16[$arrayidx152>>1]|0; $conv153 = $112 << 16 >> 16; $add154 = (($conv151) + ($conv153))|0; $shr155 = $add154 >> 1; $113 = $NLSF_Q15$addr; $114 = $I; $sub156 = (($114) - 1)|0; $arrayidx157 = (($113) + ($sub156<<1)|0); $115 = HEAP16[$arrayidx157>>1]|0; $conv158 = $115 << 16 >> 16; $116 = $NLSF_Q15$addr; $117 = $I; $arrayidx159 = (($116) + ($117<<1)|0); $118 = HEAP16[$arrayidx159>>1]|0; $conv160 = $118 << 16 >> 16; $add161 = (($conv158) + ($conv160))|0; $and162 = $add161 & 1; $add163 = (($shr155) + ($and162))|0; $119 = $min_center_Q15; $cmp164 = ($add163|0)<($119|0); if ($cmp164) { $120 = $min_center_Q15; $cond188 = $120; break; } else { $121 = $NLSF_Q15$addr; $122 = $I; $sub168 = (($122) - 1)|0; $arrayidx169 = (($121) + ($sub168<<1)|0); $123 = HEAP16[$arrayidx169>>1]|0; $conv170 = $123 << 16 >> 16; $124 = $NLSF_Q15$addr; $125 = $I; $arrayidx171 = (($124) + ($125<<1)|0); $126 = HEAP16[$arrayidx171>>1]|0; $conv172 = $126 << 16 >> 16; $add173 = (($conv170) + ($conv172))|0; $shr174 = $add173 >> 1; $127 = $NLSF_Q15$addr; $128 = $I; $sub175 = (($128) - 1)|0; $arrayidx176 = (($127) + ($sub175<<1)|0); $129 = HEAP16[$arrayidx176>>1]|0; $conv177 = $129 << 16 >> 16; $130 = $NLSF_Q15$addr; $131 = $I; $arrayidx178 = (($130) + ($131<<1)|0); $132 = HEAP16[$arrayidx178>>1]|0; $conv179 = $132 << 16 >> 16; $add180 = (($conv177) + ($conv179))|0; $and181 = $add180 & 1; $add182 = (($shr174) + ($and181))|0; $cond188 = $add182; break; } } } while(0); $conv189 = $cond188&65535; $center_freq_Q15 = $conv189; $133 = $center_freq_Q15; $conv190 = $133 << 16 >> 16; $134 = $NDeltaMin_Q15$addr; $135 = $I; $arrayidx191 = (($134) + ($135<<1)|0); $136 = HEAP16[$arrayidx191>>1]|0; $conv192 = $136 << 16 >> 16; $shr193 = $conv192 >> 1; $sub194 = (($conv190) - ($shr193))|0; $conv195 = $sub194&65535; $137 = $NLSF_Q15$addr; $138 = $I; $sub196 = (($138) - 1)|0; $arrayidx197 = (($137) + ($sub196<<1)|0); HEAP16[$arrayidx197>>1] = $conv195; $139 = $NLSF_Q15$addr; $140 = $I; $sub198 = (($140) - 1)|0; $arrayidx199 = (($139) + ($sub198<<1)|0); $141 = HEAP16[$arrayidx199>>1]|0; $conv200 = $141 << 16 >> 16; $142 = $NDeltaMin_Q15$addr; $143 = $I; $arrayidx201 = (($142) + ($143<<1)|0); $144 = HEAP16[$arrayidx201>>1]|0; $conv202 = $144 << 16 >> 16; $add203 = (($conv200) + ($conv202))|0; $conv204 = $add203&65535; $145 = $NLSF_Q15$addr; $146 = $I; $arrayidx205 = (($145) + ($146<<1)|0); $arrayidx205$sink = $arrayidx205;$conv204$sink = $conv204; } HEAP16[$arrayidx205$sink>>1] = $conv204$sink; } $147 = $loops; $inc209 = (($147) + 1)|0; $loops = $inc209; } if ((label|0) == 45) { STACKTOP = sp;return; } $148 = $loops; $cmp211 = ($148|0)==(20); if (!($cmp211)) { STACKTOP = sp;return; } $149 = $NLSF_Q15$addr; $150 = $L$addr; _silk_insertion_sort_increasing_all_values_int16($149,$150); $151 = $NLSF_Q15$addr; $152 = HEAP16[$151>>1]|0; $conv216 = $152 << 16 >> 16; $153 = $NDeltaMin_Q15$addr; $154 = HEAP16[$153>>1]|0; $conv218 = $154 << 16 >> 16; $call = (_silk_max_int_496($conv216,$conv218)|0); $conv219 = $call&65535; $155 = $NLSF_Q15$addr; HEAP16[$155>>1] = $conv219; $i = 1; while(1) { $156 = $i; $157 = $L$addr; $cmp222 = ($156|0)<($157|0); $158 = $NLSF_Q15$addr; if (!($cmp222)) { break; } $159 = $i; $arrayidx225 = (($158) + ($159<<1)|0); $160 = HEAP16[$arrayidx225>>1]|0; $conv226 = $160 << 16 >> 16; $161 = $NLSF_Q15$addr; $162 = $i; $sub227 = (($162) - 1)|0; $arrayidx228 = (($161) + ($sub227<<1)|0); $163 = HEAP16[$arrayidx228>>1]|0; $conv229 = $163 << 16 >> 16; $164 = $NDeltaMin_Q15$addr; $165 = $i; $arrayidx230 = (($164) + ($165<<1)|0); $166 = HEAP16[$arrayidx230>>1]|0; $conv231 = $166 << 16 >> 16; $add232 = (($conv229) + ($conv231))|0; $cmp233 = ($add232|0)>(32767); if ($cmp233) { $cond256 = 32767; } else { $167 = $NLSF_Q15$addr; $168 = $i; $sub237 = (($168) - 1)|0; $arrayidx238 = (($167) + ($sub237<<1)|0); $169 = HEAP16[$arrayidx238>>1]|0; $conv239 = $169 << 16 >> 16; $170 = $NDeltaMin_Q15$addr; $171 = $i; $arrayidx240 = (($170) + ($171<<1)|0); $172 = HEAP16[$arrayidx240>>1]|0; $conv241 = $172 << 16 >> 16; $add242 = (($conv239) + ($conv241))|0; $cmp243 = ($add242|0)<(-32768); if ($cmp243) { $cond256 = -32768; } else { $173 = $NLSF_Q15$addr; $174 = $i; $sub247 = (($174) - 1)|0; $arrayidx248 = (($173) + ($sub247<<1)|0); $175 = HEAP16[$arrayidx248>>1]|0; $conv249 = $175 << 16 >> 16; $176 = $NDeltaMin_Q15$addr; $177 = $i; $arrayidx250 = (($176) + ($177<<1)|0); $178 = HEAP16[$arrayidx250>>1]|0; $conv251 = $178 << 16 >> 16; $add252 = (($conv249) + ($conv251))|0; $cond256 = $add252; } } $conv257 = $cond256&65535; $conv258 = $conv257 << 16 >> 16; $call259 = (_silk_max_int_496($conv226,$conv258)|0); $conv260 = $call259&65535; $179 = $NLSF_Q15$addr; $180 = $i; $arrayidx261 = (($179) + ($180<<1)|0); HEAP16[$arrayidx261>>1] = $conv260; $181 = $i; $inc263 = (($181) + 1)|0; $i = $inc263; } $182 = $L$addr; $sub265 = (($182) - 1)|0; $arrayidx266 = (($158) + ($sub265<<1)|0); $183 = HEAP16[$arrayidx266>>1]|0; $conv267 = $183 << 16 >> 16; $184 = $NDeltaMin_Q15$addr; $185 = $L$addr; $arrayidx268 = (($184) + ($185<<1)|0); $186 = HEAP16[$arrayidx268>>1]|0; $conv269 = $186 << 16 >> 16; $sub270 = (32768 - ($conv269))|0; $call271 = (_silk_min_int_497($conv267,$sub270)|0); $conv272 = $call271&65535; $187 = $NLSF_Q15$addr; $188 = $L$addr; $sub273 = (($188) - 1)|0; $arrayidx274 = (($187) + ($sub273<<1)|0); HEAP16[$arrayidx274>>1] = $conv272; $189 = $L$addr; $sub275 = (($189) - 2)|0; $i = $sub275; while(1) { $190 = $i; $cmp277 = ($190|0)>=(0); if (!($cmp277)) { break; } $191 = $NLSF_Q15$addr; $192 = $i; $arrayidx280 = (($191) + ($192<<1)|0); $193 = HEAP16[$arrayidx280>>1]|0; $conv281 = $193 << 16 >> 16; $194 = $NLSF_Q15$addr; $195 = $i; $add282 = (($195) + 1)|0; $arrayidx283 = (($194) + ($add282<<1)|0); $196 = HEAP16[$arrayidx283>>1]|0; $conv284 = $196 << 16 >> 16; $197 = $NDeltaMin_Q15$addr; $198 = $i; $add285 = (($198) + 1)|0; $arrayidx286 = (($197) + ($add285<<1)|0); $199 = HEAP16[$arrayidx286>>1]|0; $conv287 = $199 << 16 >> 16; $sub288 = (($conv284) - ($conv287))|0; $call289 = (_silk_min_int_497($conv281,$sub288)|0); $conv290 = $call289&65535; $200 = $NLSF_Q15$addr; $201 = $i; $arrayidx291 = (($200) + ($201<<1)|0); HEAP16[$arrayidx291>>1] = $conv290; $202 = $i; $dec293 = (($202) + -1)|0; $i = $dec293; } STACKTOP = sp;return; } function _silk_max_int_496($a,$b) { $a = $a|0; $b = $b|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $a$addr = 0, $b$addr = 0, $cmp = 0, $cond = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $a$addr = $a; $b$addr = $b; $0 = $a$addr; $1 = $b$addr; $cmp = ($0|0)>($1|0); $2 = $a$addr; $3 = $b$addr; $cond = $cmp ? $2 : $3; STACKTOP = sp;return ($cond|0); } function _silk_min_int_497($a,$b) { $a = $a|0; $b = $b|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $a$addr = 0, $b$addr = 0, $cmp = 0, $cond = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $a$addr = $a; $b$addr = $b; $0 = $a$addr; $1 = $b$addr; $cmp = ($0|0)<($1|0); $2 = $a$addr; $3 = $b$addr; $cond = $cmp ? $2 : $3; STACKTOP = sp;return ($cond|0); } function _silk_NLSF_VQ_weights_laroia($pNLSFW_Q_OUT,$pNLSF_Q15,$D) { $pNLSFW_Q_OUT = $pNLSFW_Q_OUT|0; $pNLSF_Q15 = $pNLSF_Q15|0; $D = $D|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $5 = 0, $6 = 0; var $7 = 0, $8 = 0, $9 = 0, $D$addr = 0, $add = 0, $add12 = 0, $add20 = 0, $add24 = 0, $add27 = 0, $add33 = 0, $add36 = 0, $add38 = 0, $add45 = 0, $arrayidx1 = 0, $arrayidx13 = 0, $arrayidx15 = 0, $arrayidx23 = 0, $arrayidx25 = 0, $arrayidx28 = 0, $arrayidx37 = 0; var $arrayidx40 = 0, $arrayidx49 = 0, $call = 0, $call18 = 0, $call21 = 0, $call31 = 0, $call34 = 0, $call43 = 0, $call46 = 0, $call5 = 0, $call7 = 0, $cmp = 0, $conv = 0, $conv14 = 0, $conv16 = 0, $conv2 = 0, $conv22 = 0, $conv26 = 0, $conv29 = 0, $conv35 = 0; var $conv4 = 0, $conv41 = 0, $conv47 = 0, $conv8 = 0, $div = 0, $div19 = 0, $div32 = 0, $div44 = 0, $div6 = 0, $k = 0, $pNLSFW_Q_OUT$addr = 0, $pNLSF_Q15$addr = 0, $sub = 0, $sub10 = 0, $sub17 = 0, $sub30 = 0, $sub39 = 0, $sub42 = 0, $sub48 = 0, $tmp1_int = 0; var $tmp2_int = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $pNLSFW_Q_OUT$addr = $pNLSFW_Q_OUT; $pNLSF_Q15$addr = $pNLSF_Q15; $D$addr = $D; $0 = $pNLSF_Q15$addr; $1 = HEAP16[$0>>1]|0; $conv = $1 << 16 >> 16; $call = (_silk_max_int_500($conv,1)|0); $tmp1_int = $call; $2 = $tmp1_int; $div = (131072 / ($2|0))&-1; $tmp1_int = $div; $3 = $pNLSF_Q15$addr; $arrayidx1 = ((($3)) + 2|0); $4 = HEAP16[$arrayidx1>>1]|0; $conv2 = $4 << 16 >> 16; $5 = $pNLSF_Q15$addr; $6 = HEAP16[$5>>1]|0; $conv4 = $6 << 16 >> 16; $sub = (($conv2) - ($conv4))|0; $call5 = (_silk_max_int_500($sub,1)|0); $tmp2_int = $call5; $7 = $tmp2_int; $div6 = (131072 / ($7|0))&-1; $tmp2_int = $div6; $8 = $tmp1_int; $9 = $tmp2_int; $add = (($8) + ($9))|0; $call7 = (_silk_min_int_501($add,32767)|0); $conv8 = $call7&65535; $10 = $pNLSFW_Q_OUT$addr; HEAP16[$10>>1] = $conv8; $k = 1; while(1) { $11 = $k; $12 = $D$addr; $sub10 = (($12) - 1)|0; $cmp = ($11|0)<($sub10|0); $13 = $pNLSF_Q15$addr; if (!($cmp)) { break; } $14 = $k; $add12 = (($14) + 1)|0; $arrayidx13 = (($13) + ($add12<<1)|0); $15 = HEAP16[$arrayidx13>>1]|0; $conv14 = $15 << 16 >> 16; $16 = $pNLSF_Q15$addr; $17 = $k; $arrayidx15 = (($16) + ($17<<1)|0); $18 = HEAP16[$arrayidx15>>1]|0; $conv16 = $18 << 16 >> 16; $sub17 = (($conv14) - ($conv16))|0; $call18 = (_silk_max_int_500($sub17,1)|0); $tmp1_int = $call18; $19 = $tmp1_int; $div19 = (131072 / ($19|0))&-1; $tmp1_int = $div19; $20 = $tmp1_int; $21 = $tmp2_int; $add20 = (($20) + ($21))|0; $call21 = (_silk_min_int_501($add20,32767)|0); $conv22 = $call21&65535; $22 = $pNLSFW_Q_OUT$addr; $23 = $k; $arrayidx23 = (($22) + ($23<<1)|0); HEAP16[$arrayidx23>>1] = $conv22; $24 = $pNLSF_Q15$addr; $25 = $k; $add24 = (($25) + 2)|0; $arrayidx25 = (($24) + ($add24<<1)|0); $26 = HEAP16[$arrayidx25>>1]|0; $conv26 = $26 << 16 >> 16; $27 = $pNLSF_Q15$addr; $28 = $k; $add27 = (($28) + 1)|0; $arrayidx28 = (($27) + ($add27<<1)|0); $29 = HEAP16[$arrayidx28>>1]|0; $conv29 = $29 << 16 >> 16; $sub30 = (($conv26) - ($conv29))|0; $call31 = (_silk_max_int_500($sub30,1)|0); $tmp2_int = $call31; $30 = $tmp2_int; $div32 = (131072 / ($30|0))&-1; $tmp2_int = $div32; $31 = $tmp1_int; $32 = $tmp2_int; $add33 = (($31) + ($32))|0; $call34 = (_silk_min_int_501($add33,32767)|0); $conv35 = $call34&65535; $33 = $pNLSFW_Q_OUT$addr; $34 = $k; $add36 = (($34) + 1)|0; $arrayidx37 = (($33) + ($add36<<1)|0); HEAP16[$arrayidx37>>1] = $conv35; $35 = $k; $add38 = (($35) + 2)|0; $k = $add38; } $36 = $D$addr; $sub39 = (($36) - 1)|0; $arrayidx40 = (($13) + ($sub39<<1)|0); $37 = HEAP16[$arrayidx40>>1]|0; $conv41 = $37 << 16 >> 16; $sub42 = (32768 - ($conv41))|0; $call43 = (_silk_max_int_500($sub42,1)|0); $tmp1_int = $call43; $38 = $tmp1_int; $div44 = (131072 / ($38|0))&-1; $tmp1_int = $div44; $39 = $tmp1_int; $40 = $tmp2_int; $add45 = (($39) + ($40))|0; $call46 = (_silk_min_int_501($add45,32767)|0); $conv47 = $call46&65535; $41 = $pNLSFW_Q_OUT$addr; $42 = $D$addr; $sub48 = (($42) - 1)|0; $arrayidx49 = (($41) + ($sub48<<1)|0); HEAP16[$arrayidx49>>1] = $conv47; STACKTOP = sp;return; } function _silk_max_int_500($a,$b) { $a = $a|0; $b = $b|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $a$addr = 0, $b$addr = 0, $cmp = 0, $cond = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $a$addr = $a; $b$addr = $b; $0 = $a$addr; $1 = $b$addr; $cmp = ($0|0)>($1|0); $2 = $a$addr; $3 = $b$addr; $cond = $cmp ? $2 : $3; STACKTOP = sp;return ($cond|0); } function _silk_min_int_501($a,$b) { $a = $a|0; $b = $b|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $a$addr = 0, $b$addr = 0, $cmp = 0, $cond = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $a$addr = $a; $b$addr = $b; $0 = $a$addr; $1 = $b$addr; $cmp = ($0|0)<($1|0); $2 = $a$addr; $3 = $b$addr; $cond = $cmp ? $2 : $3; STACKTOP = sp;return ($cond|0); } function _silk_resampler_down2_3($S,$out,$in,$inLen) { $S = $S|0; $out = $out|0; $in = $in|0; $inLen = $inLen|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $9 = 0; var $S$addr = 0, $add = 0, $add$ptr = 0, $add$ptr132 = 0, $add107 = 0, $add108 = 0, $add110 = 0, $add117 = 0, $add124 = 0, $add20 = 0, $add21 = 0, $add31 = 0, $add32 = 0, $add42 = 0, $add43 = 0, $add45 = 0, $add52 = 0, $add59 = 0, $add75 = 0, $add85 = 0; var $add86 = 0, $add96 = 0, $add97 = 0, $and = 0, $and103 = 0, $and16 = 0, $and27 = 0, $and38 = 0, $and71 = 0, $and81 = 0, $and92 = 0, $arrayidx = 0, $arrayidx1 = 0, $arrayidx102 = 0, $arrayidx11 = 0, $arrayidx137 = 0, $arrayidx139 = 0, $arrayidx15 = 0, $arrayidx22 = 0, $arrayidx26 = 0; var $arrayidx33 = 0, $arrayidx37 = 0, $arrayidx66 = 0, $arrayidx70 = 0, $arrayidx76 = 0, $arrayidx80 = 0, $arrayidx87 = 0, $arrayidx91 = 0, $arrayidx98 = 0, $buf = 0, $buf_ptr = 0, $cmp = 0, $cmp112 = 0, $cmp119 = 0, $cmp134 = 0, $cmp4 = 0, $cmp47 = 0, $cmp54 = 0, $cond = 0, $cond129 = 0; var $cond64 = 0, $conv = 0, $conv100 = 0, $conv104 = 0, $conv13 = 0, $conv130 = 0, $conv17 = 0, $conv24 = 0, $conv28 = 0, $conv35 = 0, $conv39 = 0, $conv65 = 0, $conv68 = 0, $conv72 = 0, $conv78 = 0, $conv8 = 0, $conv82 = 0, $conv89 = 0, $conv93 = 0, $counter = 0; var $in$addr = 0, $inLen$addr = 0, $incdec$ptr = 0, $incdec$ptr131 = 0, $mul = 0, $mul101 = 0, $mul105 = 0, $mul14 = 0, $mul18 = 0, $mul25 = 0, $mul29 = 0, $mul36 = 0, $mul40 = 0, $mul69 = 0, $mul73 = 0, $mul79 = 0, $mul83 = 0, $mul9 = 0, $mul90 = 0, $mul94 = 0; var $nSamplesIn = 0, $out$addr = 0, $res_Q6 = 0, $shr = 0, $shr10 = 0, $shr106 = 0, $shr109 = 0, $shr111 = 0, $shr116 = 0, $shr118 = 0, $shr12 = 0, $shr123 = 0, $shr125 = 0, $shr19 = 0, $shr23 = 0, $shr30 = 0, $shr34 = 0, $shr41 = 0, $shr44 = 0, $shr46 = 0; var $shr51 = 0, $shr53 = 0, $shr58 = 0, $shr60 = 0, $shr67 = 0, $shr74 = 0, $shr77 = 0, $shr84 = 0, $shr88 = 0, $shr95 = 0, $shr99 = 0, $sub = 0, $sub133 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 1968|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(1968|0); $buf = sp; $S$addr = $S; $out$addr = $out; $in$addr = $in; $inLen$addr = $inLen; $0 = $S$addr; ;HEAP32[$buf>>2]=HEAP32[$0>>2]|0;HEAP32[$buf+4>>2]=HEAP32[$0+4>>2]|0;HEAP32[$buf+8>>2]=HEAP32[$0+8>>2]|0;HEAP32[$buf+12>>2]=HEAP32[$0+12>>2]|0; while(1) { $1 = $inLen$addr; $cmp = ($1|0)<(480); $2 = $inLen$addr; $cond = $cmp ? $2 : 480; $nSamplesIn = $cond; $3 = $S$addr; $arrayidx = ((($3)) + 16|0); $arrayidx1 = ((($buf)) + 16|0); $4 = $in$addr; $5 = $nSamplesIn; _silk_resampler_private_AR2($arrayidx,$arrayidx1,$4,23784,$5); $buf_ptr = $buf; $6 = $nSamplesIn; $counter = $6; while(1) { $7 = $counter; $cmp4 = ($7|0)>(2); if (!($cmp4)) { break; } $8 = $buf_ptr; $9 = HEAP32[$8>>2]|0; $shr = $9 >> 16; $10 = HEAP16[(23788)>>1]|0; $conv = $10 << 16 >> 16; $mul = Math_imul($shr, $conv)|0; $11 = $buf_ptr; $12 = HEAP32[$11>>2]|0; $and = $12 & 65535; $13 = HEAP16[(23788)>>1]|0; $conv8 = $13 << 16 >> 16; $mul9 = Math_imul($and, $conv8)|0; $shr10 = $mul9 >> 16; $add = (($mul) + ($shr10))|0; $res_Q6 = $add; $14 = $res_Q6; $15 = $buf_ptr; $arrayidx11 = ((($15)) + 4|0); $16 = HEAP32[$arrayidx11>>2]|0; $shr12 = $16 >> 16; $17 = HEAP16[(23790)>>1]|0; $conv13 = $17 << 16 >> 16; $mul14 = Math_imul($shr12, $conv13)|0; $18 = $buf_ptr; $arrayidx15 = ((($18)) + 4|0); $19 = HEAP32[$arrayidx15>>2]|0; $and16 = $19 & 65535; $20 = HEAP16[(23790)>>1]|0; $conv17 = $20 << 16 >> 16; $mul18 = Math_imul($and16, $conv17)|0; $shr19 = $mul18 >> 16; $add20 = (($mul14) + ($shr19))|0; $add21 = (($14) + ($add20))|0; $res_Q6 = $add21; $21 = $res_Q6; $22 = $buf_ptr; $arrayidx22 = ((($22)) + 8|0); $23 = HEAP32[$arrayidx22>>2]|0; $shr23 = $23 >> 16; $24 = HEAP16[(23794)>>1]|0; $conv24 = $24 << 16 >> 16; $mul25 = Math_imul($shr23, $conv24)|0; $25 = $buf_ptr; $arrayidx26 = ((($25)) + 8|0); $26 = HEAP32[$arrayidx26>>2]|0; $and27 = $26 & 65535; $27 = HEAP16[(23794)>>1]|0; $conv28 = $27 << 16 >> 16; $mul29 = Math_imul($and27, $conv28)|0; $shr30 = $mul29 >> 16; $add31 = (($mul25) + ($shr30))|0; $add32 = (($21) + ($add31))|0; $res_Q6 = $add32; $28 = $res_Q6; $29 = $buf_ptr; $arrayidx33 = ((($29)) + 12|0); $30 = HEAP32[$arrayidx33>>2]|0; $shr34 = $30 >> 16; $31 = HEAP16[(23792)>>1]|0; $conv35 = $31 << 16 >> 16; $mul36 = Math_imul($shr34, $conv35)|0; $32 = $buf_ptr; $arrayidx37 = ((($32)) + 12|0); $33 = HEAP32[$arrayidx37>>2]|0; $and38 = $33 & 65535; $34 = HEAP16[(23792)>>1]|0; $conv39 = $34 << 16 >> 16; $mul40 = Math_imul($and38, $conv39)|0; $shr41 = $mul40 >> 16; $add42 = (($mul36) + ($shr41))|0; $add43 = (($28) + ($add42))|0; $res_Q6 = $add43; $35 = $res_Q6; $shr44 = $35 >> 5; $add45 = (($shr44) + 1)|0; $shr46 = $add45 >> 1; $cmp47 = ($shr46|0)>(32767); if ($cmp47) { $cond64 = 32767; } else { $36 = $res_Q6; $shr51 = $36 >> 5; $add52 = (($shr51) + 1)|0; $shr53 = $add52 >> 1; $cmp54 = ($shr53|0)<(-32768); if ($cmp54) { $cond64 = -32768; } else { $37 = $res_Q6; $shr58 = $37 >> 5; $add59 = (($shr58) + 1)|0; $shr60 = $add59 >> 1; $cond64 = $shr60; } } $conv65 = $cond64&65535; $38 = $out$addr; $incdec$ptr = ((($38)) + 2|0); $out$addr = $incdec$ptr; HEAP16[$38>>1] = $conv65; $39 = $buf_ptr; $arrayidx66 = ((($39)) + 4|0); $40 = HEAP32[$arrayidx66>>2]|0; $shr67 = $40 >> 16; $41 = HEAP16[(23792)>>1]|0; $conv68 = $41 << 16 >> 16; $mul69 = Math_imul($shr67, $conv68)|0; $42 = $buf_ptr; $arrayidx70 = ((($42)) + 4|0); $43 = HEAP32[$arrayidx70>>2]|0; $and71 = $43 & 65535; $44 = HEAP16[(23792)>>1]|0; $conv72 = $44 << 16 >> 16; $mul73 = Math_imul($and71, $conv72)|0; $shr74 = $mul73 >> 16; $add75 = (($mul69) + ($shr74))|0; $res_Q6 = $add75; $45 = $res_Q6; $46 = $buf_ptr; $arrayidx76 = ((($46)) + 8|0); $47 = HEAP32[$arrayidx76>>2]|0; $shr77 = $47 >> 16; $48 = HEAP16[(23794)>>1]|0; $conv78 = $48 << 16 >> 16; $mul79 = Math_imul($shr77, $conv78)|0; $49 = $buf_ptr; $arrayidx80 = ((($49)) + 8|0); $50 = HEAP32[$arrayidx80>>2]|0; $and81 = $50 & 65535; $51 = HEAP16[(23794)>>1]|0; $conv82 = $51 << 16 >> 16; $mul83 = Math_imul($and81, $conv82)|0; $shr84 = $mul83 >> 16; $add85 = (($mul79) + ($shr84))|0; $add86 = (($45) + ($add85))|0; $res_Q6 = $add86; $52 = $res_Q6; $53 = $buf_ptr; $arrayidx87 = ((($53)) + 12|0); $54 = HEAP32[$arrayidx87>>2]|0; $shr88 = $54 >> 16; $55 = HEAP16[(23790)>>1]|0; $conv89 = $55 << 16 >> 16; $mul90 = Math_imul($shr88, $conv89)|0; $56 = $buf_ptr; $arrayidx91 = ((($56)) + 12|0); $57 = HEAP32[$arrayidx91>>2]|0; $and92 = $57 & 65535; $58 = HEAP16[(23790)>>1]|0; $conv93 = $58 << 16 >> 16; $mul94 = Math_imul($and92, $conv93)|0; $shr95 = $mul94 >> 16; $add96 = (($mul90) + ($shr95))|0; $add97 = (($52) + ($add96))|0; $res_Q6 = $add97; $59 = $res_Q6; $60 = $buf_ptr; $arrayidx98 = ((($60)) + 16|0); $61 = HEAP32[$arrayidx98>>2]|0; $shr99 = $61 >> 16; $62 = HEAP16[(23788)>>1]|0; $conv100 = $62 << 16 >> 16; $mul101 = Math_imul($shr99, $conv100)|0; $63 = $buf_ptr; $arrayidx102 = ((($63)) + 16|0); $64 = HEAP32[$arrayidx102>>2]|0; $and103 = $64 & 65535; $65 = HEAP16[(23788)>>1]|0; $conv104 = $65 << 16 >> 16; $mul105 = Math_imul($and103, $conv104)|0; $shr106 = $mul105 >> 16; $add107 = (($mul101) + ($shr106))|0; $add108 = (($59) + ($add107))|0; $res_Q6 = $add108; $66 = $res_Q6; $shr109 = $66 >> 5; $add110 = (($shr109) + 1)|0; $shr111 = $add110 >> 1; $cmp112 = ($shr111|0)>(32767); if ($cmp112) { $cond129 = 32767; } else { $67 = $res_Q6; $shr116 = $67 >> 5; $add117 = (($shr116) + 1)|0; $shr118 = $add117 >> 1; $cmp119 = ($shr118|0)<(-32768); if ($cmp119) { $cond129 = -32768; } else { $68 = $res_Q6; $shr123 = $68 >> 5; $add124 = (($shr123) + 1)|0; $shr125 = $add124 >> 1; $cond129 = $shr125; } } $conv130 = $cond129&65535; $69 = $out$addr; $incdec$ptr131 = ((($69)) + 2|0); $out$addr = $incdec$ptr131; HEAP16[$69>>1] = $conv130; $70 = $buf_ptr; $add$ptr = ((($70)) + 12|0); $buf_ptr = $add$ptr; $71 = $counter; $sub = (($71) - 3)|0; $counter = $sub; } $72 = $nSamplesIn; $73 = $in$addr; $add$ptr132 = (($73) + ($72<<1)|0); $in$addr = $add$ptr132; $74 = $nSamplesIn; $75 = $inLen$addr; $sub133 = (($75) - ($74))|0; $inLen$addr = $sub133; $76 = $inLen$addr; $cmp134 = ($76|0)>(0); if (!($cmp134)) { break; } $77 = $nSamplesIn; $arrayidx137 = (($buf) + ($77<<2)|0); ;HEAP32[$buf>>2]=HEAP32[$arrayidx137>>2]|0;HEAP32[$buf+4>>2]=HEAP32[$arrayidx137+4>>2]|0;HEAP32[$buf+8>>2]=HEAP32[$arrayidx137+8>>2]|0;HEAP32[$buf+12>>2]=HEAP32[$arrayidx137+12>>2]|0; } $78 = $S$addr; $79 = $nSamplesIn; $arrayidx139 = (($buf) + ($79<<2)|0); ;HEAP32[$78>>2]=HEAP32[$arrayidx139>>2]|0;HEAP32[$78+4>>2]=HEAP32[$arrayidx139+4>>2]|0;HEAP32[$78+8>>2]=HEAP32[$arrayidx139+8>>2]|0;HEAP32[$78+12>>2]=HEAP32[$arrayidx139+12>>2]|0; STACKTOP = sp;return; } function _silk_resampler_down2($S,$out,$in,$inLen) { $S = $S|0; $out = $out|0; $in = $in|0; $inLen = $inLen|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; var $S$addr = 0, $X = 0, $Y = 0, $add = 0, $add12 = 0, $add23 = 0, $add25 = 0, $add26 = 0, $add27 = 0, $add30 = 0, $add35 = 0, $add42 = 0, $add6 = 0, $add8 = 0, $add9 = 0, $and = 0, $and20 = 0, $arrayidx = 0, $arrayidx13 = 0, $arrayidx16 = 0; var $arrayidx24 = 0, $arrayidx28 = 0, $arrayidx47 = 0, $cmp = 0, $cmp32 = 0, $cmp37 = 0, $cond45 = 0, $conv = 0, $conv14 = 0, $conv46 = 0, $in$addr = 0, $in32 = 0, $inLen$addr = 0, $inc = 0, $k = 0, $len2 = 0, $mul = 0, $mul11 = 0, $mul19 = 0, $mul21 = 0; var $mul3 = 0, $mul4 = 0, $out$addr = 0, $out32 = 0, $shl = 0, $shl15 = 0, $shr = 0, $shr18 = 0, $shr2 = 0, $shr22 = 0, $shr29 = 0, $shr31 = 0, $shr34 = 0, $shr36 = 0, $shr41 = 0, $shr43 = 0, $shr5 = 0, $sub = 0, $sub17 = 0, label = 0; var sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $S$addr = $S; $out$addr = $out; $in$addr = $in; $inLen$addr = $inLen; $0 = $inLen$addr; $shr = $0 >> 1; $len2 = $shr; $k = 0; while(1) { $1 = $k; $2 = $len2; $cmp = ($1|0)<($2|0); if (!($cmp)) { break; } $3 = $in$addr; $4 = $k; $mul = $4<<1; $arrayidx = (($3) + ($mul<<1)|0); $5 = HEAP16[$arrayidx>>1]|0; $conv = $5 << 16 >> 16; $shl = $conv << 10; $in32 = $shl; $6 = $in32; $7 = $S$addr; $8 = HEAP32[$7>>2]|0; $sub = (($6) - ($8))|0; $Y = $sub; $9 = $Y; $10 = $Y; $shr2 = $10 >> 16; $mul3 = Math_imul($shr2, -25727)|0; $11 = $Y; $and = $11 & 65535; $mul4 = Math_imul($and, -25727)|0; $shr5 = $mul4 >> 16; $add = (($mul3) + ($shr5))|0; $add6 = (($9) + ($add))|0; $X = $add6; $12 = $S$addr; $13 = HEAP32[$12>>2]|0; $14 = $X; $add8 = (($13) + ($14))|0; $out32 = $add8; $15 = $in32; $16 = $X; $add9 = (($15) + ($16))|0; $17 = $S$addr; HEAP32[$17>>2] = $add9; $18 = $in$addr; $19 = $k; $mul11 = $19<<1; $add12 = (($mul11) + 1)|0; $arrayidx13 = (($18) + ($add12<<1)|0); $20 = HEAP16[$arrayidx13>>1]|0; $conv14 = $20 << 16 >> 16; $shl15 = $conv14 << 10; $in32 = $shl15; $21 = $in32; $22 = $S$addr; $arrayidx16 = ((($22)) + 4|0); $23 = HEAP32[$arrayidx16>>2]|0; $sub17 = (($21) - ($23))|0; $Y = $sub17; $24 = $Y; $shr18 = $24 >> 16; $mul19 = ($shr18*9872)|0; $25 = $Y; $and20 = $25 & 65535; $mul21 = ($and20*9872)|0; $shr22 = $mul21 >> 16; $add23 = (($mul19) + ($shr22))|0; $X = $add23; $26 = $out32; $27 = $S$addr; $arrayidx24 = ((($27)) + 4|0); $28 = HEAP32[$arrayidx24>>2]|0; $add25 = (($26) + ($28))|0; $out32 = $add25; $29 = $out32; $30 = $X; $add26 = (($29) + ($30))|0; $out32 = $add26; $31 = $in32; $32 = $X; $add27 = (($31) + ($32))|0; $33 = $S$addr; $arrayidx28 = ((($33)) + 4|0); HEAP32[$arrayidx28>>2] = $add27; $34 = $out32; $shr29 = $34 >> 10; $add30 = (($shr29) + 1)|0; $shr31 = $add30 >> 1; $cmp32 = ($shr31|0)>(32767); if ($cmp32) { $cond45 = 32767; } else { $35 = $out32; $shr34 = $35 >> 10; $add35 = (($shr34) + 1)|0; $shr36 = $add35 >> 1; $cmp37 = ($shr36|0)<(-32768); if ($cmp37) { $cond45 = -32768; } else { $36 = $out32; $shr41 = $36 >> 10; $add42 = (($shr41) + 1)|0; $shr43 = $add42 >> 1; $cond45 = $shr43; } } $conv46 = $cond45&65535; $37 = $out$addr; $38 = $k; $arrayidx47 = (($37) + ($38<<1)|0); HEAP16[$arrayidx47>>1] = $conv46; $39 = $k; $inc = (($39) + 1)|0; $k = $inc; } STACKTOP = sp;return; } function _silk_resampler_private_AR2($S,$out_Q8,$in,$A_Q14,$len) { $S = $S|0; $out_Q8 = $out_Q8|0; $in = $in|0; $A_Q14 = $A_Q14|0; $len = $len|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $A_Q14$addr = 0, $S$addr = 0, $add = 0, $add11 = 0, $add12 = 0, $add23 = 0, $and = 0, $and18 = 0, $arrayidx1 = 0, $arrayidx15 = 0, $arrayidx19 = 0, $arrayidx2 = 0; var $arrayidx24 = 0, $arrayidx4 = 0, $cmp = 0, $conv = 0, $conv16 = 0, $conv20 = 0, $conv6 = 0, $conv8 = 0, $in$addr = 0, $inc = 0, $k = 0, $len$addr = 0, $mul = 0, $mul17 = 0, $mul21 = 0, $mul9 = 0, $out32 = 0, $out_Q8$addr = 0, $shl = 0, $shl3 = 0; var $shr = 0, $shr10 = 0, $shr14 = 0, $shr22 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $S$addr = $S; $out_Q8$addr = $out_Q8; $in$addr = $in; $A_Q14$addr = $A_Q14; $len$addr = $len; $k = 0; while(1) { $0 = $k; $1 = $len$addr; $cmp = ($0|0)<($1|0); if (!($cmp)) { break; } $2 = $S$addr; $3 = HEAP32[$2>>2]|0; $4 = $in$addr; $5 = $k; $arrayidx1 = (($4) + ($5<<1)|0); $6 = HEAP16[$arrayidx1>>1]|0; $conv = $6 << 16 >> 16; $shl = $conv << 8; $add = (($3) + ($shl))|0; $out32 = $add; $7 = $out32; $8 = $out_Q8$addr; $9 = $k; $arrayidx2 = (($8) + ($9<<2)|0); HEAP32[$arrayidx2>>2] = $7; $10 = $out32; $shl3 = $10 << 2; $out32 = $shl3; $11 = $S$addr; $arrayidx4 = ((($11)) + 4|0); $12 = HEAP32[$arrayidx4>>2]|0; $13 = $out32; $shr = $13 >> 16; $14 = $A_Q14$addr; $15 = HEAP16[$14>>1]|0; $conv6 = $15 << 16 >> 16; $mul = Math_imul($shr, $conv6)|0; $16 = $out32; $and = $16 & 65535; $17 = $A_Q14$addr; $18 = HEAP16[$17>>1]|0; $conv8 = $18 << 16 >> 16; $mul9 = Math_imul($and, $conv8)|0; $shr10 = $mul9 >> 16; $add11 = (($mul) + ($shr10))|0; $add12 = (($12) + ($add11))|0; $19 = $S$addr; HEAP32[$19>>2] = $add12; $20 = $out32; $shr14 = $20 >> 16; $21 = $A_Q14$addr; $arrayidx15 = ((($21)) + 2|0); $22 = HEAP16[$arrayidx15>>1]|0; $conv16 = $22 << 16 >> 16; $mul17 = Math_imul($shr14, $conv16)|0; $23 = $out32; $and18 = $23 & 65535; $24 = $A_Q14$addr; $arrayidx19 = ((($24)) + 2|0); $25 = HEAP16[$arrayidx19>>1]|0; $conv20 = $25 << 16 >> 16; $mul21 = Math_imul($and18, $conv20)|0; $shr22 = $mul21 >> 16; $add23 = (($mul17) + ($shr22))|0; $26 = $S$addr; $arrayidx24 = ((($26)) + 4|0); HEAP32[$arrayidx24>>2] = $add23; $27 = $k; $inc = (($27) + 1)|0; $k = $inc; } STACKTOP = sp;return; } function _silk_sigm_Q15($in_Q5) { $in_Q5 = $in_Q5|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $and = 0, $and18 = 0, $arrayidx = 0; var $arrayidx14 = 0, $arrayidx15 = 0, $arrayidx3 = 0, $cmp = 0, $cmp1 = 0, $cmp9 = 0, $conv = 0, $conv16 = 0, $conv17 = 0, $conv19 = 0, $conv20 = 0, $conv4 = 0, $conv5 = 0, $conv6 = 0, $in_Q5$addr = 0, $ind = 0, $mul = 0, $mul21 = 0, $retval = 0, $shr = 0; var $shr13 = 0, $sub = 0, $sub7 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $in_Q5$addr = $in_Q5; $0 = $in_Q5$addr; $cmp = ($0|0)<(0); $1 = $in_Q5$addr; if ($cmp) { $sub = (0 - ($1))|0; $in_Q5$addr = $sub; $2 = $in_Q5$addr; $cmp1 = ($2|0)>=(192); if ($cmp1) { $retval = 0; $15 = $retval; STACKTOP = sp;return ($15|0); } else { $3 = $in_Q5$addr; $shr = $3 >> 5; $ind = $shr; $4 = $ind; $arrayidx = (20820 + ($4<<2)|0); $5 = HEAP32[$arrayidx>>2]|0; $6 = $ind; $arrayidx3 = (20844 + ($6<<2)|0); $7 = HEAP32[$arrayidx3>>2]|0; $conv = $7&65535; $conv4 = $conv << 16 >> 16; $8 = $in_Q5$addr; $and = $8 & 31; $conv5 = $and&65535; $conv6 = $conv5 << 16 >> 16; $mul = Math_imul($conv4, $conv6)|0; $sub7 = (($5) - ($mul))|0; $retval = $sub7; $15 = $retval; STACKTOP = sp;return ($15|0); } } else { $cmp9 = ($1|0)>=(192); if ($cmp9) { $retval = 32767; $15 = $retval; STACKTOP = sp;return ($15|0); } else { $9 = $in_Q5$addr; $shr13 = $9 >> 5; $ind = $shr13; $10 = $ind; $arrayidx14 = (20868 + ($10<<2)|0); $11 = HEAP32[$arrayidx14>>2]|0; $12 = $ind; $arrayidx15 = (20844 + ($12<<2)|0); $13 = HEAP32[$arrayidx15>>2]|0; $conv16 = $13&65535; $conv17 = $conv16 << 16 >> 16; $14 = $in_Q5$addr; $and18 = $14 & 31; $conv19 = $and18&65535; $conv20 = $conv19 << 16 >> 16; $mul21 = Math_imul($conv17, $conv20)|0; $add = (($11) + ($mul21))|0; $retval = $add; $15 = $retval; STACKTOP = sp;return ($15|0); } } return (0)|0; } function _silk_insertion_sort_increasing($a,$idx,$L,$K) { $a = $a|0; $idx = $idx|0; $L = $L|0; $K = $K|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $7 = 0, $8 = 0, $9 = 0, $K$addr = 0, $L$addr = 0, $a$addr = 0, $add = 0, $add13 = 0, $add17 = 0, $add19 = 0, $add40 = 0, $add43 = 0, $add48 = 0, $add50 = 0; var $arrayidx = 0, $arrayidx10 = 0, $arrayidx11 = 0, $arrayidx12 = 0, $arrayidx14 = 0, $arrayidx18 = 0, $arrayidx20 = 0, $arrayidx27 = 0, $arrayidx29 = 0, $arrayidx35 = 0, $arrayidx39 = 0, $arrayidx4 = 0, $arrayidx41 = 0, $arrayidx42 = 0, $arrayidx44 = 0, $arrayidx49 = 0, $arrayidx51 = 0, $arrayidx7 = 0, $cmp = 0, $cmp2 = 0; var $cmp25 = 0, $cmp30 = 0, $cmp33 = 0, $cmp36 = 0, $cmp6 = 0, $cmp8 = 0, $dec = 0, $dec46 = 0, $i = 0, $idx$addr = 0, $inc = 0, $inc22 = 0, $inc53 = 0, $j = 0, $sub = 0, $sub28 = 0, $sub31 = 0, $value = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $a$addr = $a; $idx$addr = $idx; $L$addr = $L; $K$addr = $K; $i = 0; while(1) { $0 = $i; $1 = $K$addr; $cmp = ($0|0)<($1|0); if (!($cmp)) { break; } $2 = $i; $3 = $idx$addr; $4 = $i; $arrayidx = (($3) + ($4<<2)|0); HEAP32[$arrayidx>>2] = $2; $5 = $i; $inc = (($5) + 1)|0; $i = $inc; } $i = 1; while(1) { $6 = $i; $7 = $K$addr; $cmp2 = ($6|0)<($7|0); if (!($cmp2)) { break; } $8 = $a$addr; $9 = $i; $arrayidx4 = (($8) + ($9<<2)|0); $10 = HEAP32[$arrayidx4>>2]|0; $value = $10; $11 = $i; $sub = (($11) - 1)|0; $j = $sub; while(1) { $12 = $j; $cmp6 = ($12|0)>=(0); if (!($cmp6)) { break; } $13 = $value; $14 = $a$addr; $15 = $j; $arrayidx7 = (($14) + ($15<<2)|0); $16 = HEAP32[$arrayidx7>>2]|0; $cmp8 = ($13|0)<($16|0); if (!($cmp8)) { break; } $17 = $a$addr; $18 = $j; $arrayidx10 = (($17) + ($18<<2)|0); $19 = HEAP32[$arrayidx10>>2]|0; $20 = $a$addr; $21 = $j; $add = (($21) + 1)|0; $arrayidx11 = (($20) + ($add<<2)|0); HEAP32[$arrayidx11>>2] = $19; $22 = $idx$addr; $23 = $j; $arrayidx12 = (($22) + ($23<<2)|0); $24 = HEAP32[$arrayidx12>>2]|0; $25 = $idx$addr; $26 = $j; $add13 = (($26) + 1)|0; $arrayidx14 = (($25) + ($add13<<2)|0); HEAP32[$arrayidx14>>2] = $24; $27 = $j; $dec = (($27) + -1)|0; $j = $dec; } $28 = $value; $29 = $a$addr; $30 = $j; $add17 = (($30) + 1)|0; $arrayidx18 = (($29) + ($add17<<2)|0); HEAP32[$arrayidx18>>2] = $28; $31 = $i; $32 = $idx$addr; $33 = $j; $add19 = (($33) + 1)|0; $arrayidx20 = (($32) + ($add19<<2)|0); HEAP32[$arrayidx20>>2] = $31; $34 = $i; $inc22 = (($34) + 1)|0; $i = $inc22; } $35 = $K$addr; $i = $35; while(1) { $36 = $i; $37 = $L$addr; $cmp25 = ($36|0)<($37|0); if (!($cmp25)) { break; } $38 = $a$addr; $39 = $i; $arrayidx27 = (($38) + ($39<<2)|0); $40 = HEAP32[$arrayidx27>>2]|0; $value = $40; $41 = $value; $42 = $a$addr; $43 = $K$addr; $sub28 = (($43) - 1)|0; $arrayidx29 = (($42) + ($sub28<<2)|0); $44 = HEAP32[$arrayidx29>>2]|0; $cmp30 = ($41|0)<($44|0); if ($cmp30) { $45 = $K$addr; $sub31 = (($45) - 2)|0; $j = $sub31; while(1) { $46 = $j; $cmp33 = ($46|0)>=(0); if (!($cmp33)) { break; } $47 = $value; $48 = $a$addr; $49 = $j; $arrayidx35 = (($48) + ($49<<2)|0); $50 = HEAP32[$arrayidx35>>2]|0; $cmp36 = ($47|0)<($50|0); if (!($cmp36)) { break; } $51 = $a$addr; $52 = $j; $arrayidx39 = (($51) + ($52<<2)|0); $53 = HEAP32[$arrayidx39>>2]|0; $54 = $a$addr; $55 = $j; $add40 = (($55) + 1)|0; $arrayidx41 = (($54) + ($add40<<2)|0); HEAP32[$arrayidx41>>2] = $53; $56 = $idx$addr; $57 = $j; $arrayidx42 = (($56) + ($57<<2)|0); $58 = HEAP32[$arrayidx42>>2]|0; $59 = $idx$addr; $60 = $j; $add43 = (($60) + 1)|0; $arrayidx44 = (($59) + ($add43<<2)|0); HEAP32[$arrayidx44>>2] = $58; $61 = $j; $dec46 = (($61) + -1)|0; $j = $dec46; } $62 = $value; $63 = $a$addr; $64 = $j; $add48 = (($64) + 1)|0; $arrayidx49 = (($63) + ($add48<<2)|0); HEAP32[$arrayidx49>>2] = $62; $65 = $i; $66 = $idx$addr; $67 = $j; $add50 = (($67) + 1)|0; $arrayidx51 = (($66) + ($add50<<2)|0); HEAP32[$arrayidx51>>2] = $65; } $68 = $i; $inc53 = (($68) + 1)|0; $i = $inc53; } STACKTOP = sp;return; } function _silk_insertion_sort_increasing_all_values_int16($a,$L) { $a = $a|0; $L = $L|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; var $9 = 0, $L$addr = 0, $a$addr = 0, $add = 0, $add12 = 0, $arrayidx = 0, $arrayidx10 = 0, $arrayidx13 = 0, $arrayidx4 = 0, $arrayidx9 = 0, $cmp = 0, $cmp2 = 0, $cmp6 = 0, $conv = 0, $conv11 = 0, $conv5 = 0, $dec = 0, $i = 0, $inc = 0, $j = 0; var $sub = 0, $value = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $a$addr = $a; $L$addr = $L; $i = 1; while(1) { $0 = $i; $1 = $L$addr; $cmp = ($0|0)<($1|0); if (!($cmp)) { break; } $2 = $a$addr; $3 = $i; $arrayidx = (($2) + ($3<<1)|0); $4 = HEAP16[$arrayidx>>1]|0; $conv = $4 << 16 >> 16; $value = $conv; $5 = $i; $sub = (($5) - 1)|0; $j = $sub; while(1) { $6 = $j; $cmp2 = ($6|0)>=(0); if (!($cmp2)) { break; } $7 = $value; $8 = $a$addr; $9 = $j; $arrayidx4 = (($8) + ($9<<1)|0); $10 = HEAP16[$arrayidx4>>1]|0; $conv5 = $10 << 16 >> 16; $cmp6 = ($7|0)<($conv5|0); if (!($cmp6)) { break; } $11 = $a$addr; $12 = $j; $arrayidx9 = (($11) + ($12<<1)|0); $13 = HEAP16[$arrayidx9>>1]|0; $14 = $a$addr; $15 = $j; $add = (($15) + 1)|0; $arrayidx10 = (($14) + ($add<<1)|0); HEAP16[$arrayidx10>>1] = $13; $16 = $j; $dec = (($16) + -1)|0; $j = $dec; } $17 = $value; $conv11 = $17&65535; $18 = $a$addr; $19 = $j; $add12 = (($19) + 1)|0; $arrayidx13 = (($18) + ($add12<<1)|0); HEAP16[$arrayidx13>>1] = $conv11; $20 = $i; $inc = (($20) + 1)|0; $i = $inc; } STACKTOP = sp;return; } function _silk_sum_sqr_shift($energy,$shift,$x,$len) { $energy = $energy|0; $shift = $shift|0; $x = $x|0; $len = $len|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $add10 = 0, $add11 = 0, $add12 = 0, $add21 = 0, $add22 = 0, $add36 = 0, $add39 = 0, $add43 = 0, $add45 = 0, $add47 = 0, $add58 = 0; var $add6 = 0, $arrayidx = 0, $arrayidx15 = 0, $arrayidx17 = 0, $arrayidx2 = 0, $arrayidx31 = 0, $arrayidx33 = 0, $arrayidx37 = 0, $arrayidx4 = 0, $arrayidx40 = 0, $arrayidx52 = 0, $arrayidx54 = 0, $arrayidx7 = 0, $call = 0, $call23 = 0, $call25 = 0, $cmp = 0, $cmp13 = 0, $cmp28 = 0, $cmp49 = 0; var $conv = 0, $conv16 = 0, $conv18 = 0, $conv3 = 0, $conv32 = 0, $conv34 = 0, $conv38 = 0, $conv41 = 0, $conv5 = 0, $conv53 = 0, $conv55 = 0, $conv8 = 0, $energy$addr = 0, $i = 0, $len$addr = 0, $mul = 0, $mul19 = 0, $mul35 = 0, $mul42 = 0, $mul56 = 0; var $mul9 = 0, $nrg = 0, $nrg_tmp = 0, $shft = 0, $shift$addr = 0, $shr = 0, $shr20 = 0, $shr44 = 0, $shr57 = 0, $sub = 0, $sub1 = 0, $sub24 = 0, $sub27 = 0, $x$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $energy$addr = $energy; $shift$addr = $shift; $x$addr = $x; $len$addr = $len; $0 = $len$addr; $call = (_silk_CLZ32_528($0)|0); $sub = (31 - ($call))|0; $shft = $sub; $1 = $len$addr; $nrg = $1; $i = 0; while(1) { $2 = $i; $3 = $len$addr; $sub1 = (($3) - 1)|0; $cmp = ($2|0)<($sub1|0); if (!($cmp)) { break; } $4 = $x$addr; $5 = $i; $arrayidx = (($4) + ($5<<1)|0); $6 = HEAP16[$arrayidx>>1]|0; $conv = $6 << 16 >> 16; $7 = $x$addr; $8 = $i; $arrayidx2 = (($7) + ($8<<1)|0); $9 = HEAP16[$arrayidx2>>1]|0; $conv3 = $9 << 16 >> 16; $mul = Math_imul($conv, $conv3)|0; $nrg_tmp = $mul; $10 = $nrg_tmp; $11 = $x$addr; $12 = $i; $add = (($12) + 1)|0; $arrayidx4 = (($11) + ($add<<1)|0); $13 = HEAP16[$arrayidx4>>1]|0; $conv5 = $13 << 16 >> 16; $14 = $x$addr; $15 = $i; $add6 = (($15) + 1)|0; $arrayidx7 = (($14) + ($add6<<1)|0); $16 = HEAP16[$arrayidx7>>1]|0; $conv8 = $16 << 16 >> 16; $mul9 = Math_imul($conv5, $conv8)|0; $add10 = (($10) + ($mul9))|0; $nrg_tmp = $add10; $17 = $nrg; $18 = $nrg_tmp; $19 = $shft; $shr = $18 >>> $19; $add11 = (($17) + ($shr))|0; $nrg = $add11; $20 = $i; $add12 = (($20) + 2)|0; $i = $add12; } $21 = $i; $22 = $len$addr; $cmp13 = ($21|0)<($22|0); if ($cmp13) { $23 = $x$addr; $24 = $i; $arrayidx15 = (($23) + ($24<<1)|0); $25 = HEAP16[$arrayidx15>>1]|0; $conv16 = $25 << 16 >> 16; $26 = $x$addr; $27 = $i; $arrayidx17 = (($26) + ($27<<1)|0); $28 = HEAP16[$arrayidx17>>1]|0; $conv18 = $28 << 16 >> 16; $mul19 = Math_imul($conv16, $conv18)|0; $nrg_tmp = $mul19; $29 = $nrg; $30 = $nrg_tmp; $31 = $shft; $shr20 = $30 >>> $31; $add21 = (($29) + ($shr20))|0; $nrg = $add21; } $32 = $shft; $add22 = (($32) + 3)|0; $33 = $nrg; $call23 = (_silk_CLZ32_528($33)|0); $sub24 = (($add22) - ($call23))|0; $call25 = (_silk_max_32_529(0,$sub24)|0); $shft = $call25; $nrg = 0; $i = 0; while(1) { $34 = $i; $35 = $len$addr; $sub27 = (($35) - 1)|0; $cmp28 = ($34|0)<($sub27|0); if (!($cmp28)) { break; } $36 = $x$addr; $37 = $i; $arrayidx31 = (($36) + ($37<<1)|0); $38 = HEAP16[$arrayidx31>>1]|0; $conv32 = $38 << 16 >> 16; $39 = $x$addr; $40 = $i; $arrayidx33 = (($39) + ($40<<1)|0); $41 = HEAP16[$arrayidx33>>1]|0; $conv34 = $41 << 16 >> 16; $mul35 = Math_imul($conv32, $conv34)|0; $nrg_tmp = $mul35; $42 = $nrg_tmp; $43 = $x$addr; $44 = $i; $add36 = (($44) + 1)|0; $arrayidx37 = (($43) + ($add36<<1)|0); $45 = HEAP16[$arrayidx37>>1]|0; $conv38 = $45 << 16 >> 16; $46 = $x$addr; $47 = $i; $add39 = (($47) + 1)|0; $arrayidx40 = (($46) + ($add39<<1)|0); $48 = HEAP16[$arrayidx40>>1]|0; $conv41 = $48 << 16 >> 16; $mul42 = Math_imul($conv38, $conv41)|0; $add43 = (($42) + ($mul42))|0; $nrg_tmp = $add43; $49 = $nrg; $50 = $nrg_tmp; $51 = $shft; $shr44 = $50 >>> $51; $add45 = (($49) + ($shr44))|0; $nrg = $add45; $52 = $i; $add47 = (($52) + 2)|0; $i = $add47; } $53 = $i; $54 = $len$addr; $cmp49 = ($53|0)<($54|0); if (!($cmp49)) { $64 = $shft; $65 = $shift$addr; HEAP32[$65>>2] = $64; $66 = $nrg; $67 = $energy$addr; HEAP32[$67>>2] = $66; STACKTOP = sp;return; } $55 = $x$addr; $56 = $i; $arrayidx52 = (($55) + ($56<<1)|0); $57 = HEAP16[$arrayidx52>>1]|0; $conv53 = $57 << 16 >> 16; $58 = $x$addr; $59 = $i; $arrayidx54 = (($58) + ($59<<1)|0); $60 = HEAP16[$arrayidx54>>1]|0; $conv55 = $60 << 16 >> 16; $mul56 = Math_imul($conv53, $conv55)|0; $nrg_tmp = $mul56; $61 = $nrg; $62 = $nrg_tmp; $63 = $shft; $shr57 = $62 >>> $63; $add58 = (($61) + ($shr57))|0; $nrg = $add58; $64 = $shft; $65 = $shift$addr; HEAP32[$65>>2] = $64; $66 = $nrg; $67 = $energy$addr; HEAP32[$67>>2] = $66; STACKTOP = sp;return; } function _silk_CLZ32_528($in32) { $in32 = $in32|0; var $0 = 0, $1 = 0, $2 = 0, $cond = 0, $in32$addr = 0, $sub = 0, $sub1 = 0, $tobool = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $in32$addr = $in32; $0 = $in32$addr; $tobool = ($0|0)!=(0); if (!($tobool)) { $cond = 32; STACKTOP = sp;return ($cond|0); } $1 = $in32$addr; $2 = (Math_clz32(($1|0))|0); $sub = (32 - ($2))|0; $sub1 = (32 - ($sub))|0; $cond = $sub1; STACKTOP = sp;return ($cond|0); } function _silk_max_32_529($a,$b) { $a = $a|0; $b = $b|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $a$addr = 0, $b$addr = 0, $cmp = 0, $cond = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $a$addr = $a; $b$addr = $b; $0 = $a$addr; $1 = $b$addr; $cmp = ($0|0)>($1|0); $2 = $a$addr; $3 = $b$addr; $cond = $cmp ? $2 : $3; STACKTOP = sp;return ($cond|0); } function _silk_LPC_fit($a_QOUT,$a_QIN,$QOUT,$QIN,$d) { $a_QOUT = $a_QOUT|0; $a_QIN = $a_QIN|0; $QOUT = $QOUT|0; $QIN = $QIN|0; $d = $d|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $9 = 0, $QIN$addr = 0, $QOUT$addr = 0, $a_QIN$addr = 0, $a_QOUT$addr = 0, $absval = 0, $add = 0, $add122 = 0, $add128 = 0, $add15 = 0, $add27 = 0, $add46 = 0, $add52 = 0; var $add66 = 0, $add72 = 0, $add86 = 0, $add92 = 0, $and = 0, $and121 = 0, $and45 = 0, $and65 = 0, $and85 = 0, $arrayidx = 0, $arrayidx100 = 0, $arrayidx101 = 0, $arrayidx105 = 0, $arrayidx118 = 0, $arrayidx120 = 0, $arrayidx133 = 0, $arrayidx42 = 0, $arrayidx44 = 0, $arrayidx5 = 0, $arrayidx62 = 0; var $arrayidx64 = 0, $arrayidx82 = 0, $arrayidx84 = 0, $chirp_Q16 = 0, $cmp = 0, $cmp111 = 0, $cmp115 = 0, $cmp19 = 0, $cmp2 = 0, $cmp21 = 0, $cmp34 = 0, $cmp37 = 0, $cmp4 = 0, $cmp40 = 0, $cmp56 = 0, $cmp60 = 0, $cmp7 = 0, $cmp76 = 0, $cmp80 = 0, $cmp9 = 0; var $cond = 0, $cond131 = 0, $cond18 = 0, $cond25 = 0, $cond55 = 0, $cond75 = 0, $cond99 = 0, $conv = 0, $conv102 = 0, $conv132 = 0, $d$addr = 0, $div = 0, $i = 0, $idx = 0, $inc = 0, $inc107 = 0, $inc135 = 0, $inc32 = 0, $k = 0, $maxabs = 0; var $mul = 0, $shl = 0, $shl104 = 0, $shr = 0, $shr119 = 0, $shr127 = 0, $shr129 = 0, $shr14 = 0, $shr16 = 0, $shr28 = 0, $shr43 = 0, $shr51 = 0, $shr53 = 0, $shr63 = 0, $shr71 = 0, $shr73 = 0, $shr83 = 0, $shr91 = 0, $shr93 = 0, $sub = 0; var $sub103 = 0, $sub114 = 0, $sub12 = 0, $sub125 = 0, $sub126 = 0, $sub13 = 0, $sub26 = 0, $sub29 = 0, $sub39 = 0, $sub49 = 0, $sub50 = 0, $sub59 = 0, $sub69 = 0, $sub70 = 0, $sub79 = 0, $sub8 = 0, $sub89 = 0, $sub90 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $a_QOUT$addr = $a_QOUT; $a_QIN$addr = $a_QIN; $QOUT$addr = $QOUT; $QIN$addr = $QIN; $d$addr = $d; $idx = 0; $i = 0; while(1) { $0 = $i; $cmp = ($0|0)<(10); if (!($cmp)) { break; } $maxabs = 0; $k = 0; while(1) { $1 = $k; $2 = $d$addr; $cmp2 = ($1|0)<($2|0); if (!($cmp2)) { break; } $3 = $a_QIN$addr; $4 = $k; $arrayidx = (($3) + ($4<<2)|0); $5 = HEAP32[$arrayidx>>2]|0; $cmp4 = ($5|0)>(0); $6 = $a_QIN$addr; $7 = $k; $arrayidx5 = (($6) + ($7<<2)|0); $8 = HEAP32[$arrayidx5>>2]|0; $sub = (0 - ($8))|0; $cond = $cmp4 ? $8 : $sub; $absval = $cond; $9 = $absval; $10 = $maxabs; $cmp7 = ($9|0)>($10|0); if ($cmp7) { $11 = $absval; $maxabs = $11; $12 = $k; $idx = $12; } $13 = $k; $inc = (($13) + 1)|0; $k = $inc; } $14 = $QIN$addr; $15 = $QOUT$addr; $sub8 = (($14) - ($15))|0; $cmp9 = ($sub8|0)==(1); $16 = $maxabs; if ($cmp9) { $shr = $16 >> 1; $17 = $maxabs; $and = $17 & 1; $add = (($shr) + ($and))|0; $cond18 = $add; } else { $18 = $QIN$addr; $19 = $QOUT$addr; $sub12 = (($18) - ($19))|0; $sub13 = (($sub12) - 1)|0; $shr14 = $16 >> $sub13; $add15 = (($shr14) + 1)|0; $shr16 = $add15 >> 1; $cond18 = $shr16; } $maxabs = $cond18; $20 = $maxabs; $cmp19 = ($20|0)>(32767); if (!($cmp19)) { break; } $21 = $maxabs; $cmp21 = ($21|0)<(163838); $22 = $maxabs; $cond25 = $cmp21 ? $22 : 163838; $maxabs = $cond25; $23 = $maxabs; $sub26 = (($23) - 32767)|0; $shl = $sub26 << 14; $24 = $maxabs; $25 = $idx; $add27 = (($25) + 1)|0; $mul = Math_imul($24, $add27)|0; $shr28 = $mul >> 2; $div = (($shl|0) / ($shr28|0))&-1; $sub29 = (65470 - ($div))|0; $chirp_Q16 = $sub29; $26 = $a_QIN$addr; $27 = $d$addr; $28 = $chirp_Q16; _silk_bwexpander_32($26,$27,$28); $29 = $i; $inc32 = (($29) + 1)|0; $i = $inc32; } $30 = $i; $cmp34 = ($30|0)==(10); $k = 0; if (!($cmp34)) { while(1) { $73 = $k; $74 = $d$addr; $cmp111 = ($73|0)<($74|0); if (!($cmp111)) { break; } $75 = $QIN$addr; $76 = $QOUT$addr; $sub114 = (($75) - ($76))|0; $cmp115 = ($sub114|0)==(1); $77 = $a_QIN$addr; $78 = $k; $arrayidx118 = (($77) + ($78<<2)|0); $79 = HEAP32[$arrayidx118>>2]|0; if ($cmp115) { $shr119 = $79 >> 1; $80 = $a_QIN$addr; $81 = $k; $arrayidx120 = (($80) + ($81<<2)|0); $82 = HEAP32[$arrayidx120>>2]|0; $and121 = $82 & 1; $add122 = (($shr119) + ($and121))|0; $cond131 = $add122; } else { $83 = $QIN$addr; $84 = $QOUT$addr; $sub125 = (($83) - ($84))|0; $sub126 = (($sub125) - 1)|0; $shr127 = $79 >> $sub126; $add128 = (($shr127) + 1)|0; $shr129 = $add128 >> 1; $cond131 = $shr129; } $conv132 = $cond131&65535; $85 = $a_QOUT$addr; $86 = $k; $arrayidx133 = (($85) + ($86<<1)|0); HEAP16[$arrayidx133>>1] = $conv132; $87 = $k; $inc135 = (($87) + 1)|0; $k = $inc135; } STACKTOP = sp;return; } while(1) { $31 = $k; $32 = $d$addr; $cmp37 = ($31|0)<($32|0); if (!($cmp37)) { break; } $33 = $QIN$addr; $34 = $QOUT$addr; $sub39 = (($33) - ($34))|0; $cmp40 = ($sub39|0)==(1); $35 = $a_QIN$addr; $36 = $k; $arrayidx42 = (($35) + ($36<<2)|0); $37 = HEAP32[$arrayidx42>>2]|0; if ($cmp40) { $shr43 = $37 >> 1; $38 = $a_QIN$addr; $39 = $k; $arrayidx44 = (($38) + ($39<<2)|0); $40 = HEAP32[$arrayidx44>>2]|0; $and45 = $40 & 1; $add46 = (($shr43) + ($and45))|0; $cond55 = $add46; } else { $41 = $QIN$addr; $42 = $QOUT$addr; $sub49 = (($41) - ($42))|0; $sub50 = (($sub49) - 1)|0; $shr51 = $37 >> $sub50; $add52 = (($shr51) + 1)|0; $shr53 = $add52 >> 1; $cond55 = $shr53; } $cmp56 = ($cond55|0)>(32767); do { if ($cmp56) { $cond99 = 32767; } else { $43 = $QIN$addr; $44 = $QOUT$addr; $sub59 = (($43) - ($44))|0; $cmp60 = ($sub59|0)==(1); $45 = $a_QIN$addr; $46 = $k; $arrayidx62 = (($45) + ($46<<2)|0); $47 = HEAP32[$arrayidx62>>2]|0; if ($cmp60) { $shr63 = $47 >> 1; $48 = $a_QIN$addr; $49 = $k; $arrayidx64 = (($48) + ($49<<2)|0); $50 = HEAP32[$arrayidx64>>2]|0; $and65 = $50 & 1; $add66 = (($shr63) + ($and65))|0; $cond75 = $add66; } else { $51 = $QIN$addr; $52 = $QOUT$addr; $sub69 = (($51) - ($52))|0; $sub70 = (($sub69) - 1)|0; $shr71 = $47 >> $sub70; $add72 = (($shr71) + 1)|0; $shr73 = $add72 >> 1; $cond75 = $shr73; } $cmp76 = ($cond75|0)<(-32768); if ($cmp76) { $cond99 = -32768; } else { $53 = $QIN$addr; $54 = $QOUT$addr; $sub79 = (($53) - ($54))|0; $cmp80 = ($sub79|0)==(1); $55 = $a_QIN$addr; $56 = $k; $arrayidx82 = (($55) + ($56<<2)|0); $57 = HEAP32[$arrayidx82>>2]|0; if ($cmp80) { $shr83 = $57 >> 1; $58 = $a_QIN$addr; $59 = $k; $arrayidx84 = (($58) + ($59<<2)|0); $60 = HEAP32[$arrayidx84>>2]|0; $and85 = $60 & 1; $add86 = (($shr83) + ($and85))|0; $cond99 = $add86; break; } else { $61 = $QIN$addr; $62 = $QOUT$addr; $sub89 = (($61) - ($62))|0; $sub90 = (($sub89) - 1)|0; $shr91 = $57 >> $sub90; $add92 = (($shr91) + 1)|0; $shr93 = $add92 >> 1; $cond99 = $shr93; break; } } } } while(0); $conv = $cond99&65535; $63 = $a_QOUT$addr; $64 = $k; $arrayidx100 = (($63) + ($64<<1)|0); HEAP16[$arrayidx100>>1] = $conv; $65 = $a_QOUT$addr; $66 = $k; $arrayidx101 = (($65) + ($66<<1)|0); $67 = HEAP16[$arrayidx101>>1]|0; $conv102 = $67 << 16 >> 16; $68 = $QIN$addr; $69 = $QOUT$addr; $sub103 = (($68) - ($69))|0; $shl104 = $conv102 << $sub103; $70 = $a_QIN$addr; $71 = $k; $arrayidx105 = (($70) + ($71<<2)|0); HEAP32[$arrayidx105>>2] = $shl104; $72 = $k; $inc107 = (($72) + 1)|0; $k = $inc107; } STACKTOP = sp;return; } function _silk_apply_sine_window_FLP($px_win,$px,$win_type,$length) { $px_win = $px_win|0; $px = $px|0; $win_type = $win_type|0; $length = $length|0; var $0 = 0, $1 = 0.0, $10 = 0.0, $11 = 0.0, $12 = 0.0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0.0, $18 = 0.0, $19 = 0, $2 = 0.0, $20 = 0, $21 = 0.0, $22 = 0.0, $23 = 0.0, $24 = 0, $25 = 0, $26 = 0.0; var $27 = 0.0, $28 = 0.0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0.0, $34 = 0.0, $35 = 0, $36 = 0, $37 = 0.0, $38 = 0.0, $39 = 0.0, $4 = 0.0, $40 = 0, $5 = 0.0, $6 = 0, $7 = 0, $8 = 0; var $9 = 0, $S0 = 0.0, $S1 = 0.0, $add = 0, $add11 = 0, $add14 = 0, $add18 = 0, $add21 = 0.0, $add23 = 0, $add25 = 0, $add28 = 0, $add32 = 0, $add5 = 0, $add7 = 0.0, $add9 = 0, $arrayidx = 0, $arrayidx10 = 0, $arrayidx12 = 0, $arrayidx15 = 0, $arrayidx19 = 0; var $arrayidx24 = 0, $arrayidx26 = 0, $arrayidx29 = 0, $c = 0.0, $cmp = 0, $cmp3 = 0, $conv = 0.0, $div = 0.0, $freq = 0.0, $k = 0, $length$addr = 0, $mul = 0.0, $mul13 = 0.0, $mul16 = 0.0, $mul2 = 0.0, $mul20 = 0.0, $mul22 = 0.0, $mul27 = 0.0, $mul30 = 0.0, $mul6 = 0.0; var $mul8 = 0.0, $px$addr = 0, $px_win$addr = 0, $sub = 0.0, $sub17 = 0.0, $sub31 = 0.0, $win_type$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $px_win$addr = $px_win; $px$addr = $px; $win_type$addr = $win_type; $length$addr = $length; $0 = $length$addr; $add = (($0) + 1)|0; $conv = (+($add|0)); $div = 3.1415927410125732 / $conv; $freq = $div; $1 = $freq; $2 = $freq; $mul = $1 * $2; $sub = 2.0 - $mul; $c = $sub; $3 = $win_type$addr; $cmp = ($3|0)<(2); if ($cmp) { $S0 = 0.0; $4 = $freq; $S1 = $4; } else { $S0 = 1.0; $5 = $c; $mul2 = 0.5 * $5; $S1 = $mul2; } $k = 0; while(1) { $6 = $k; $7 = $length$addr; $cmp3 = ($6|0)<($7|0); if (!($cmp3)) { break; } $8 = $px$addr; $9 = $k; $add5 = (($9) + 0)|0; $arrayidx = (($8) + ($add5<<2)|0); $10 = +HEAPF32[$arrayidx>>2]; $mul6 = $10 * 0.5; $11 = $S0; $12 = $S1; $add7 = $11 + $12; $mul8 = $mul6 * $add7; $13 = $px_win$addr; $14 = $k; $add9 = (($14) + 0)|0; $arrayidx10 = (($13) + ($add9<<2)|0); HEAPF32[$arrayidx10>>2] = $mul8; $15 = $px$addr; $16 = $k; $add11 = (($16) + 1)|0; $arrayidx12 = (($15) + ($add11<<2)|0); $17 = +HEAPF32[$arrayidx12>>2]; $18 = $S1; $mul13 = $17 * $18; $19 = $px_win$addr; $20 = $k; $add14 = (($20) + 1)|0; $arrayidx15 = (($19) + ($add14<<2)|0); HEAPF32[$arrayidx15>>2] = $mul13; $21 = $c; $22 = $S1; $mul16 = $21 * $22; $23 = $S0; $sub17 = $mul16 - $23; $S0 = $sub17; $24 = $px$addr; $25 = $k; $add18 = (($25) + 2)|0; $arrayidx19 = (($24) + ($add18<<2)|0); $26 = +HEAPF32[$arrayidx19>>2]; $mul20 = $26 * 0.5; $27 = $S1; $28 = $S0; $add21 = $27 + $28; $mul22 = $mul20 * $add21; $29 = $px_win$addr; $30 = $k; $add23 = (($30) + 2)|0; $arrayidx24 = (($29) + ($add23<<2)|0); HEAPF32[$arrayidx24>>2] = $mul22; $31 = $px$addr; $32 = $k; $add25 = (($32) + 3)|0; $arrayidx26 = (($31) + ($add25<<2)|0); $33 = +HEAPF32[$arrayidx26>>2]; $34 = $S0; $mul27 = $33 * $34; $35 = $px_win$addr; $36 = $k; $add28 = (($36) + 3)|0; $arrayidx29 = (($35) + ($add28<<2)|0); HEAPF32[$arrayidx29>>2] = $mul27; $37 = $c; $38 = $S0; $mul30 = $37 * $38; $39 = $S1; $sub31 = $mul30 - $39; $S1 = $sub31; $40 = $k; $add32 = (($40) + 4)|0; $k = $add32; } STACKTOP = sp;return; } function _silk_find_LPC_FLP($psEncC,$NLSF_Q15,$x,$minInvGain) { $psEncC = $psEncC|0; $NLSF_Q15 = $NLSF_Q15|0; $x = $x|0; $minInvGain = +$minInvGain; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0.0, $21 = 0, $22 = 0, $23 = 0, $24 = 0.0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0.0, $54 = 0.0, $55 = 0.0, $56 = 0, $57 = 0, $58 = 0.0, $59 = 0.0, $6 = 0.0, $60 = 0, $61 = 0, $62 = 0; var $63 = 0, $64 = 0, $65 = 0, $7 = 0, $8 = 0, $9 = 0, $LPC_res = 0, $NLSF0_Q15 = 0, $NLSFInterpCoef_Q2 = 0, $NLSFInterpCoef_Q241 = 0, $NLSFInterpCoef_Q248 = 0, $NLSF_Q15$addr = 0, $a = 0, $a_tmp = 0, $add = 0, $add$ptr = 0, $add$ptr24 = 0, $add$ptr30 = 0, $add$ptr31 = 0, $add35 = 0.0; var $arch = 0, $call = 0.0, $call27 = 0.0, $call34 = 0.0, $call8 = 0.0, $cmp = 0, $cmp11 = 0, $cmp36 = 0, $cmp42 = 0, $cmp50 = 0, $conv = 0.0, $conv39 = 0, $conv49 = 0, $dec = 0, $first_frame_after_reset = 0, $indices = 0, $indices40 = 0, $indices47 = 0, $k = 0, $minInvGain$addr = 0.0; var $mul = 0, $mul20 = 0, $nb_subfr = 0, $nb_subfr5 = 0, $predictLPCOrder = 0, $predictLPCOrder10 = 0, $predictLPCOrder14 = 0, $predictLPCOrder17 = 0, $predictLPCOrder2 = 0, $predictLPCOrder21 = 0, $predictLPCOrder23 = 0, $predictLPCOrder25 = 0, $predictLPCOrder29 = 0, $predictLPCOrder32 = 0, $predictLPCOrder54 = 0, $predictLPCOrder7 = 0, $prev_NLSFq_Q15 = 0, $psEncC$addr = 0, $res_nrg = 0.0, $res_nrg_2nd = 0.0; var $res_nrg_interp = 0.0, $sub = 0.0, $sub26 = 0, $sub33 = 0, $subfr_length = 0, $subfr_length1 = 0, $tobool = 0, $tobool3 = 0, $useInterpolatedNLSFs = 0, $x$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 1744|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(1744|0); $a = sp + 1616|0; $NLSF0_Q15 = sp + 1704|0; $a_tmp = sp + 1536|0; $LPC_res = sp; $psEncC$addr = $psEncC; $NLSF_Q15$addr = $NLSF_Q15; $x$addr = $x; $minInvGain$addr = $minInvGain; $0 = $psEncC$addr; $subfr_length1 = ((($0)) + 4584|0); $1 = HEAP32[$subfr_length1>>2]|0; $2 = $psEncC$addr; $predictLPCOrder = ((($2)) + 4636|0); $3 = HEAP32[$predictLPCOrder>>2]|0; $add = (($1) + ($3))|0; $subfr_length = $add; $4 = $psEncC$addr; $indices = ((($4)) + 4732|0); $NLSFInterpCoef_Q2 = ((($indices)) + 31|0); HEAP8[$NLSFInterpCoef_Q2>>0] = 4; $5 = $x$addr; $6 = $minInvGain$addr; $7 = $subfr_length; $8 = $psEncC$addr; $nb_subfr = ((($8)) + 4576|0); $9 = HEAP32[$nb_subfr>>2]|0; $10 = $psEncC$addr; $predictLPCOrder2 = ((($10)) + 4636|0); $11 = HEAP32[$predictLPCOrder2>>2]|0; $call = (+_silk_burg_modified_FLP($a,$5,$6,$7,$9,$11)); $res_nrg = $call; $12 = $psEncC$addr; $useInterpolatedNLSFs = ((($12)) + 4628|0); $13 = HEAP32[$useInterpolatedNLSFs>>2]|0; $tobool = ($13|0)!=(0); L1: do { if ($tobool) { $14 = $psEncC$addr; $first_frame_after_reset = ((($14)) + 4660|0); $15 = HEAP32[$first_frame_after_reset>>2]|0; $tobool3 = ($15|0)!=(0); if (!($tobool3)) { $16 = $psEncC$addr; $nb_subfr5 = ((($16)) + 4576|0); $17 = HEAP32[$nb_subfr5>>2]|0; $cmp = ($17|0)==(4); if ($cmp) { $18 = $x$addr; $19 = $subfr_length; $mul = $19<<1; $add$ptr = (($18) + ($mul<<2)|0); $20 = $minInvGain$addr; $21 = $subfr_length; $22 = $psEncC$addr; $predictLPCOrder7 = ((($22)) + 4636|0); $23 = HEAP32[$predictLPCOrder7>>2]|0; $call8 = (+_silk_burg_modified_FLP($a_tmp,$add$ptr,$20,$21,2,$23)); $24 = $res_nrg; $sub = $24 - $call8; $res_nrg = $sub; $25 = $NLSF_Q15$addr; $26 = $psEncC$addr; $predictLPCOrder10 = ((($26)) + 4636|0); $27 = HEAP32[$predictLPCOrder10>>2]|0; _silk_A2NLSF_FLP($25,$a_tmp,$27); $res_nrg_2nd = 3.4028234663852886E+38; $k = 3; while(1) { $28 = $k; $cmp11 = ($28|0)>=(0); if (!($cmp11)) { break L1; } $29 = $psEncC$addr; $prev_NLSFq_Q15 = ((($29)) + 4496|0); $30 = $NLSF_Q15$addr; $31 = $k; $32 = $psEncC$addr; $predictLPCOrder14 = ((($32)) + 4636|0); $33 = HEAP32[$predictLPCOrder14>>2]|0; _silk_interpolate($NLSF0_Q15,$prev_NLSFq_Q15,$30,$31,$33); $34 = $psEncC$addr; $predictLPCOrder17 = ((($34)) + 4636|0); $35 = HEAP32[$predictLPCOrder17>>2]|0; $36 = $psEncC$addr; $arch = ((($36)) + 5088|0); $37 = HEAP32[$arch>>2]|0; _silk_NLSF2A_FLP($a_tmp,$NLSF0_Q15,$35,$37); $38 = $x$addr; $39 = $subfr_length; $mul20 = $39<<1; $40 = $psEncC$addr; $predictLPCOrder21 = ((($40)) + 4636|0); $41 = HEAP32[$predictLPCOrder21>>2]|0; _silk_LPC_analysis_filter_FLP($LPC_res,$a_tmp,$38,$mul20,$41); $42 = $psEncC$addr; $predictLPCOrder23 = ((($42)) + 4636|0); $43 = HEAP32[$predictLPCOrder23>>2]|0; $add$ptr24 = (($LPC_res) + ($43<<2)|0); $44 = $subfr_length; $45 = $psEncC$addr; $predictLPCOrder25 = ((($45)) + 4636|0); $46 = HEAP32[$predictLPCOrder25>>2]|0; $sub26 = (($44) - ($46))|0; $call27 = (+_silk_energy_FLP($add$ptr24,$sub26)); $47 = $psEncC$addr; $predictLPCOrder29 = ((($47)) + 4636|0); $48 = HEAP32[$predictLPCOrder29>>2]|0; $add$ptr30 = (($LPC_res) + ($48<<2)|0); $49 = $subfr_length; $add$ptr31 = (($add$ptr30) + ($49<<2)|0); $50 = $subfr_length; $51 = $psEncC$addr; $predictLPCOrder32 = ((($51)) + 4636|0); $52 = HEAP32[$predictLPCOrder32>>2]|0; $sub33 = (($50) - ($52))|0; $call34 = (+_silk_energy_FLP($add$ptr31,$sub33)); $add35 = $call27 + $call34; $conv = $add35; $res_nrg_interp = $conv; $53 = $res_nrg_interp; $54 = $res_nrg; $cmp36 = $53 < $54; $55 = $res_nrg_interp; if ($cmp36) { $res_nrg = $55; $56 = $k; $conv39 = $56&255; $57 = $psEncC$addr; $indices40 = ((($57)) + 4732|0); $NLSFInterpCoef_Q241 = ((($indices40)) + 31|0); HEAP8[$NLSFInterpCoef_Q241>>0] = $conv39; } else { $58 = $res_nrg_2nd; $cmp42 = $55 > $58; if ($cmp42) { break L1; } } $59 = $res_nrg_interp; $res_nrg_2nd = $59; $60 = $k; $dec = (($60) + -1)|0; $k = $dec; } } } } } while(0); $61 = $psEncC$addr; $indices47 = ((($61)) + 4732|0); $NLSFInterpCoef_Q248 = ((($indices47)) + 31|0); $62 = HEAP8[$NLSFInterpCoef_Q248>>0]|0; $conv49 = $62 << 24 >> 24; $cmp50 = ($conv49|0)==(4); if (!($cmp50)) { STACKTOP = sp;return; } $63 = $NLSF_Q15$addr; $64 = $psEncC$addr; $predictLPCOrder54 = ((($64)) + 4636|0); $65 = HEAP32[$predictLPCOrder54>>2]|0; _silk_A2NLSF_FLP($63,$a,$65); STACKTOP = sp;return; } function _silk_find_LTP_FLP($XX,$xX,$r_ptr,$lag,$subfr_length,$nb_subfr) { $XX = $XX|0; $xX = $xX|0; $r_ptr = $r_ptr|0; $lag = $lag|0; $subfr_length = $subfr_length|0; $nb_subfr = $nb_subfr|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0.0, $18 = 0, $19 = 0.0, $2 = 0, $20 = 0, $21 = 0.0, $22 = 0.0, $23 = 0, $24 = 0.0, $25 = 0, $26 = 0.0; var $27 = 0, $28 = 0.0, $29 = 0, $3 = 0, $30 = 0.0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $XX$addr = 0, $XX_ptr = 0, $add = 0, $add$ptr = 0; var $add$ptr13 = 0, $add$ptr14 = 0, $add$ptr15 = 0, $add1 = 0, $add10 = 0.0, $add12 = 0.0, $add4 = 0.0, $add5 = 0.0, $arrayidx = 0, $arrayidx3 = 0, $arrayidx9 = 0, $call = 0.0, $cmp = 0, $cmp6 = 0, $cond = 0.0, $conv = 0.0, $div = 0.0, $idx$neg = 0, $inc = 0, $k = 0; var $lag$addr = 0, $lag_ptr = 0, $mul = 0.0, $mul11 = 0.0, $nb_subfr$addr = 0, $r_ptr$addr = 0, $subfr_length$addr = 0, $temp = 0.0, $xX$addr = 0, $xX_ptr = 0, $xx = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $XX$addr = $XX; $xX$addr = $xX; $r_ptr$addr = $r_ptr; $lag$addr = $lag; $subfr_length$addr = $subfr_length; $nb_subfr$addr = $nb_subfr; $0 = $xX$addr; $xX_ptr = $0; $1 = $XX$addr; $XX_ptr = $1; $k = 0; while(1) { $2 = $k; $3 = $nb_subfr$addr; $cmp = ($2|0)<($3|0); if (!($cmp)) { break; } $4 = $r_ptr$addr; $5 = $lag$addr; $6 = $k; $arrayidx = (($5) + ($6<<2)|0); $7 = HEAP32[$arrayidx>>2]|0; $add = (($7) + 2)|0; $idx$neg = (0 - ($add))|0; $add$ptr = (($4) + ($idx$neg<<2)|0); $lag_ptr = $add$ptr; $8 = $lag_ptr; $9 = $subfr_length$addr; $10 = $XX_ptr; _silk_corrMatrix_FLP($8,$9,5,$10); $11 = $lag_ptr; $12 = $r_ptr$addr; $13 = $subfr_length$addr; $14 = $xX_ptr; _silk_corrVector_FLP($11,$12,$13,5,$14); $15 = $r_ptr$addr; $16 = $subfr_length$addr; $add1 = (($16) + 5)|0; $call = (+_silk_energy_FLP($15,$add1)); $conv = $call; $xx = $conv; $17 = $xx; $18 = $XX_ptr; $19 = +HEAPF32[$18>>2]; $20 = $XX_ptr; $arrayidx3 = ((($20)) + 96|0); $21 = +HEAPF32[$arrayidx3>>2]; $add4 = $19 + $21; $mul = 0.014999999664723873 * $add4; $add5 = $mul + 1.0; $cmp6 = $17 > $add5; if ($cmp6) { $22 = $xx; $cond = $22; } else { $23 = $XX_ptr; $24 = +HEAPF32[$23>>2]; $25 = $XX_ptr; $arrayidx9 = ((($25)) + 96|0); $26 = +HEAPF32[$arrayidx9>>2]; $add10 = $24 + $26; $mul11 = 0.014999999664723873 * $add10; $add12 = $mul11 + 1.0; $cond = $add12; } $div = 1.0 / $cond; $temp = $div; $27 = $XX_ptr; $28 = $temp; _silk_scale_vector_FLP($27,$28,25); $29 = $xX_ptr; $30 = $temp; _silk_scale_vector_FLP($29,$30,5); $31 = $subfr_length$addr; $32 = $r_ptr$addr; $add$ptr13 = (($32) + ($31<<2)|0); $r_ptr$addr = $add$ptr13; $33 = $XX_ptr; $add$ptr14 = ((($33)) + 100|0); $XX_ptr = $add$ptr14; $34 = $xX_ptr; $add$ptr15 = ((($34)) + 20|0); $xX_ptr = $add$ptr15; $35 = $k; $inc = (($35) + 1)|0; $k = $inc; } STACKTOP = sp;return; } function _silk_burg_modified_FLP($A,$x,$minInvGain,$subfr_length,$nb_subfr,$D) { $A = $A|0; $x = $x|0; $minInvGain = +$minInvGain; $subfr_length = $subfr_length|0; $nb_subfr = $nb_subfr|0; $D = $D|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0.0, $103 = 0.0, $104 = 0.0, $105 = 0, $106 = 0, $107 = 0.0, $108 = 0.0, $109 = 0.0, $11 = 0, $110 = 0, $111 = 0.0, $112 = 0, $113 = 0.0, $114 = 0, $115 = 0; var $116 = 0.0, $117 = 0.0, $118 = 0.0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0.0, $123 = 0, $124 = 0, $125 = 0.0, $126 = 0.0, $127 = 0.0, $128 = 0, $129 = 0.0, $13 = 0, $130 = 0.0, $131 = 0.0, $132 = 0, $133 = 0.0; var $134 = 0.0, $135 = 0.0, $136 = 0, $137 = 0.0, $138 = 0.0, $139 = 0.0, $14 = 0, $140 = 0.0, $141 = 0.0, $142 = 0.0, $143 = 0.0, $144 = 0.0, $145 = 0.0, $146 = 0.0, $147 = 0.0, $148 = 0.0, $149 = 0.0, $15 = 0, $150 = 0.0, $151 = 0; var $152 = 0, $153 = 0, $154 = 0.0, $155 = 0, $156 = 0, $157 = 0.0, $158 = 0.0, $159 = 0.0, $16 = 0.0, $160 = 0.0, $161 = 0, $162 = 0.0, $163 = 0.0, $164 = 0.0, $165 = 0, $166 = 0, $167 = 0, $168 = 0.0, $169 = 0, $17 = 0; var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0.0, $18 = 0, $180 = 0.0, $181 = 0, $182 = 0, $183 = 0.0, $184 = 0, $185 = 0.0, $186 = 0.0, $187 = 0.0, $188 = 0; var $189 = 0, $19 = 0.0, $190 = 0.0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0.0, $198 = 0, $199 = 0, $2 = 0, $20 = 0.0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; var $206 = 0, $207 = 0.0, $208 = 0, $209 = 0.0, $21 = 0, $210 = 0.0, $211 = 0.0, $212 = 0, $213 = 0, $214 = 0, $215 = 0.0, $216 = 0, $217 = 0.0, $218 = 0.0, $219 = 0.0, $22 = 0, $220 = 0.0, $221 = 0.0, $222 = 0.0, $223 = 0.0; var $224 = 0, $225 = 0, $226 = 0, $227 = 0.0, $228 = 0.0, $229 = 0.0, $23 = 0, $230 = 0.0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0.0, $31 = 0, $32 = 0, $33 = 0, $34 = 0.0; var $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0.0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0.0, $44 = 0, $45 = 0.0, $46 = 0, $47 = 0, $48 = 0, $49 = 0.0, $5 = 0, $50 = 0, $51 = 0, $52 = 0; var $53 = 0, $54 = 0.0, $55 = 0, $56 = 0.0, $57 = 0, $58 = 0.0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0.0, $63 = 0.0, $64 = 0.0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0.0, $7 = 0, $70 = 0.0; var $71 = 0.0, $72 = 0, $73 = 0, $74 = 0, $75 = 0.0, $76 = 0, $77 = 0, $78 = 0, $79 = 0.0, $8 = 0, $80 = 0, $81 = 0.0, $82 = 0.0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0.0, $88 = 0, $89 = 0.0; var $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0.0, $94 = 0, $95 = 0.0, $96 = 0, $97 = 0, $98 = 0, $99 = 0.0, $A$addr = 0, $Af = 0, $Atmp = 0.0, $C0 = 0.0, $CAb = 0, $CAf = 0, $C_first_row = 0, $C_last_row = 0, $D$addr = 0; var $add = 0, $add$ptr = 0, $add$ptr233 = 0, $add$ptr26 = 0, $add$ptr5 = 0, $add105 = 0.0, $add110 = 0.0, $add114 = 0, $add116 = 0, $add118 = 0, $add130 = 0.0, $add131 = 0, $add134 = 0.0, $add135 = 0, $add138 = 0.0, $add143 = 0.0, $add15 = 0.0, $add16 = 0.0, $add161 = 0, $add170 = 0.0; var $add173 = 0.0, $add182 = 0, $add193 = 0, $add199 = 0, $add203 = 0.0, $add206 = 0, $add208 = 0.0, $add247 = 0, $add250 = 0.0, $add252 = 0.0, $add48 = 0, $add60 = 0.0, $add62 = 0, $add66 = 0.0, $add8 = 0.0, $add81 = 0, $arrayidx = 0, $arrayidx100 = 0, $arrayidx103 = 0, $arrayidx108 = 0; var $arrayidx115 = 0, $arrayidx117 = 0, $arrayidx119 = 0, $arrayidx126 = 0, $arrayidx128 = 0, $arrayidx132 = 0, $arrayidx136 = 0, $arrayidx165 = 0, $arrayidx168 = 0, $arrayidx171 = 0, $arrayidx176 = 0, $arrayidx180 = 0, $arrayidx187 = 0, $arrayidx197 = 0, $arrayidx200 = 0, $arrayidx202 = 0, $arrayidx207 = 0, $arrayidx221 = 0, $arrayidx224 = 0, $arrayidx246 = 0; var $arrayidx248 = 0, $arrayidx255 = 0, $arrayidx27 = 0, $arrayidx30 = 0, $arrayidx36 = 0, $arrayidx39 = 0, $arrayidx42 = 0, $arrayidx46 = 0, $arrayidx49 = 0, $arrayidx52 = 0, $arrayidx54 = 0, $arrayidx57 = 0, $arrayidx63 = 0, $arrayidx75 = 0, $arrayidx78 = 0, $arrayidx83 = 0, $arrayidx86 = 0, $arrayidx94 = 0, $arrayidx95 = 0, $call = 0.0; var $call153 = 0.0, $call234 = 0.0, $call6 = 0.0, $cmp = 0, $cmp123 = 0, $cmp148 = 0, $cmp154 = 0, $cmp162 = 0, $cmp184 = 0, $cmp194 = 0, $cmp20 = 0, $cmp218 = 0, $cmp229 = 0, $cmp23 = 0, $cmp243 = 0, $cmp3 = 0, $cmp33 = 0, $cmp71 = 0, $cmp97 = 0, $conv = 0.0; var $conv147 = 0.0, $conv150 = 0.0, $conv158 = 0.0, $conv223 = 0.0, $conv254 = 0.0, $conv263 = 0.0, $conv31 = 0.0, $conv41 = 0.0, $conv51 = 0.0, $conv58 = 0.0, $conv64 = 0.0, $conv76 = 0.0, $conv84 = 0.0, $div = 0.0, $div151 = 0.0, $inc = 0, $inc10 = 0, $inc112 = 0, $inc140 = 0, $inc178 = 0; var $inc189 = 0, $inc210 = 0, $inc213 = 0, $inc226 = 0, $inc237 = 0, $inc257 = 0, $inc68 = 0, $inc89 = 0, $inc92 = 0, $invGain = 0.0, $k = 0, $minInvGain$addr = 0.0, $mul = 0, $mul1 = 0, $mul104 = 0.0, $mul109 = 0.0, $mul129 = 0.0, $mul133 = 0.0, $mul137 = 0.0, $mul14 = 0.0; var $mul142 = 0.0, $mul144 = 0.0, $mul146 = 0.0, $mul169 = 0.0, $mul172 = 0.0, $mul201 = 0.0, $mul204 = 0.0, $mul232 = 0, $mul239 = 0.0, $mul249 = 0.0, $mul25 = 0, $mul251 = 0.0, $mul259 = 0.0, $mul260 = 0.0, $mul40 = 0.0, $mul50 = 0.0, $mul59 = 0.0, $mul65 = 0.0, $mul77 = 0.0, $mul85 = 0.0; var $n = 0, $nb_subfr$addr = 0, $nrg_b = 0.0, $nrg_f = 0.0, $num = 0.0, $rc = 0.0, $reached_max_gain = 0, $s = 0, $shr = 0, $sub = 0, $sub101 = 0, $sub102 = 0, $sub106 = 0, $sub107 = 0, $sub127 = 0, $sub145 = 0.0, $sub152 = 0.0, $sub157 = 0.0, $sub166 = 0, $sub167 = 0; var $sub174 = 0, $sub175 = 0, $sub198 = 0, $sub205 = 0, $sub222 = 0.0, $sub235 = 0.0, $sub253 = 0.0, $sub261 = 0.0, $sub28 = 0, $sub29 = 0, $sub37 = 0, $sub38 = 0, $sub43 = 0.0, $sub44 = 0, $sub45 = 0, $sub47 = 0, $sub53 = 0.0, $sub55 = 0, $sub56 = 0, $sub61 = 0; var $sub7 = 0, $sub74 = 0, $sub79 = 0.0, $sub80 = 0, $sub82 = 0, $sub87 = 0.0, $subfr_length$addr = 0, $tmp1 = 0.0, $tmp2 = 0.0, $tobool = 0, $tobool215 = 0, $x$addr = 0, $x_ptr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 1104|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(1104|0); $C_first_row = sp + 784|0; $C_last_row = sp + 592|0; $CAf = sp + 392|0; $CAb = sp + 192|0; $Af = sp; $A$addr = $A; $x$addr = $x; $minInvGain$addr = $minInvGain; $subfr_length$addr = $subfr_length; $nb_subfr$addr = $nb_subfr; $D$addr = $D; $0 = $x$addr; $1 = $nb_subfr$addr; $2 = $subfr_length$addr; $mul = Math_imul($1, $2)|0; $call = (+_silk_energy_FLP($0,$mul)); $C0 = $call; _memset(($C_first_row|0),0,192)|0; $s = 0; while(1) { $3 = $s; $4 = $nb_subfr$addr; $cmp = ($3|0)<($4|0); if (!($cmp)) { break; } $5 = $x$addr; $6 = $s; $7 = $subfr_length$addr; $mul1 = Math_imul($6, $7)|0; $add$ptr = (($5) + ($mul1<<2)|0); $x_ptr = $add$ptr; $n = 1; while(1) { $8 = $n; $9 = $D$addr; $add = (($9) + 1)|0; $cmp3 = ($8|0)<($add|0); if (!($cmp3)) { break; } $10 = $x_ptr; $11 = $x_ptr; $12 = $n; $add$ptr5 = (($11) + ($12<<2)|0); $13 = $subfr_length$addr; $14 = $n; $sub = (($13) - ($14))|0; $call6 = (+_silk_inner_product_FLP($10,$add$ptr5,$sub)); $15 = $n; $sub7 = (($15) - 1)|0; $arrayidx = (($C_first_row) + ($sub7<<3)|0); $16 = +HEAPF64[$arrayidx>>3]; $add8 = $16 + $call6; HEAPF64[$arrayidx>>3] = $add8; $17 = $n; $inc = (($17) + 1)|0; $n = $inc; } $18 = $s; $inc10 = (($18) + 1)|0; $s = $inc10; } _memcpy(($C_last_row|0),($C_first_row|0),192)|0; $19 = $C0; $20 = $C0; $mul14 = 9.9999997473787516E-6 * $20; $add15 = $19 + $mul14; $add16 = $add15 + 9.9999997171806853E-10; HEAPF64[$CAf>>3] = $add16; HEAPF64[$CAb>>3] = $add16; $invGain = 1.0; $reached_max_gain = 0; $n = 0; while(1) { $21 = $n; $22 = $D$addr; $cmp20 = ($21|0)<($22|0); if (!($cmp20)) { break; } $s = 0; while(1) { $23 = $s; $24 = $nb_subfr$addr; $cmp23 = ($23|0)<($24|0); if (!($cmp23)) { break; } $25 = $x$addr; $26 = $s; $27 = $subfr_length$addr; $mul25 = Math_imul($26, $27)|0; $add$ptr26 = (($25) + ($mul25<<2)|0); $x_ptr = $add$ptr26; $28 = $x_ptr; $29 = $n; $arrayidx27 = (($28) + ($29<<2)|0); $30 = +HEAPF32[$arrayidx27>>2]; $conv = $30; $tmp1 = $conv; $31 = $x_ptr; $32 = $subfr_length$addr; $33 = $n; $sub28 = (($32) - ($33))|0; $sub29 = (($sub28) - 1)|0; $arrayidx30 = (($31) + ($sub29<<2)|0); $34 = +HEAPF32[$arrayidx30>>2]; $conv31 = $34; $tmp2 = $conv31; $k = 0; while(1) { $35 = $k; $36 = $n; $cmp33 = ($35|0)<($36|0); if (!($cmp33)) { break; } $37 = $x_ptr; $38 = $n; $arrayidx36 = (($37) + ($38<<2)|0); $39 = +HEAPF32[$arrayidx36>>2]; $40 = $x_ptr; $41 = $n; $42 = $k; $sub37 = (($41) - ($42))|0; $sub38 = (($sub37) - 1)|0; $arrayidx39 = (($40) + ($sub38<<2)|0); $43 = +HEAPF32[$arrayidx39>>2]; $mul40 = $39 * $43; $conv41 = $mul40; $44 = $k; $arrayidx42 = (($C_first_row) + ($44<<3)|0); $45 = +HEAPF64[$arrayidx42>>3]; $sub43 = $45 - $conv41; HEAPF64[$arrayidx42>>3] = $sub43; $46 = $x_ptr; $47 = $subfr_length$addr; $48 = $n; $sub44 = (($47) - ($48))|0; $sub45 = (($sub44) - 1)|0; $arrayidx46 = (($46) + ($sub45<<2)|0); $49 = +HEAPF32[$arrayidx46>>2]; $50 = $x_ptr; $51 = $subfr_length$addr; $52 = $n; $sub47 = (($51) - ($52))|0; $53 = $k; $add48 = (($sub47) + ($53))|0; $arrayidx49 = (($50) + ($add48<<2)|0); $54 = +HEAPF32[$arrayidx49>>2]; $mul50 = $49 * $54; $conv51 = $mul50; $55 = $k; $arrayidx52 = (($C_last_row) + ($55<<3)|0); $56 = +HEAPF64[$arrayidx52>>3]; $sub53 = $56 - $conv51; HEAPF64[$arrayidx52>>3] = $sub53; $57 = $k; $arrayidx54 = (($Af) + ($57<<3)|0); $58 = +HEAPF64[$arrayidx54>>3]; $Atmp = $58; $59 = $x_ptr; $60 = $n; $61 = $k; $sub55 = (($60) - ($61))|0; $sub56 = (($sub55) - 1)|0; $arrayidx57 = (($59) + ($sub56<<2)|0); $62 = +HEAPF32[$arrayidx57>>2]; $conv58 = $62; $63 = $Atmp; $mul59 = $conv58 * $63; $64 = $tmp1; $add60 = $64 + $mul59; $tmp1 = $add60; $65 = $x_ptr; $66 = $subfr_length$addr; $67 = $n; $sub61 = (($66) - ($67))|0; $68 = $k; $add62 = (($sub61) + ($68))|0; $arrayidx63 = (($65) + ($add62<<2)|0); $69 = +HEAPF32[$arrayidx63>>2]; $conv64 = $69; $70 = $Atmp; $mul65 = $conv64 * $70; $71 = $tmp2; $add66 = $71 + $mul65; $tmp2 = $add66; $72 = $k; $inc68 = (($72) + 1)|0; $k = $inc68; } $k = 0; while(1) { $73 = $k; $74 = $n; $cmp71 = ($73|0)<=($74|0); if (!($cmp71)) { break; } $75 = $tmp1; $76 = $x_ptr; $77 = $n; $78 = $k; $sub74 = (($77) - ($78))|0; $arrayidx75 = (($76) + ($sub74<<2)|0); $79 = +HEAPF32[$arrayidx75>>2]; $conv76 = $79; $mul77 = $75 * $conv76; $80 = $k; $arrayidx78 = (($CAf) + ($80<<3)|0); $81 = +HEAPF64[$arrayidx78>>3]; $sub79 = $81 - $mul77; HEAPF64[$arrayidx78>>3] = $sub79; $82 = $tmp2; $83 = $x_ptr; $84 = $subfr_length$addr; $85 = $n; $sub80 = (($84) - ($85))|0; $86 = $k; $add81 = (($sub80) + ($86))|0; $sub82 = (($add81) - 1)|0; $arrayidx83 = (($83) + ($sub82<<2)|0); $87 = +HEAPF32[$arrayidx83>>2]; $conv84 = $87; $mul85 = $82 * $conv84; $88 = $k; $arrayidx86 = (($CAb) + ($88<<3)|0); $89 = +HEAPF64[$arrayidx86>>3]; $sub87 = $89 - $mul85; HEAPF64[$arrayidx86>>3] = $sub87; $90 = $k; $inc89 = (($90) + 1)|0; $k = $inc89; } $91 = $s; $inc92 = (($91) + 1)|0; $s = $inc92; } $92 = $n; $arrayidx94 = (($C_first_row) + ($92<<3)|0); $93 = +HEAPF64[$arrayidx94>>3]; $tmp1 = $93; $94 = $n; $arrayidx95 = (($C_last_row) + ($94<<3)|0); $95 = +HEAPF64[$arrayidx95>>3]; $tmp2 = $95; $k = 0; while(1) { $96 = $k; $97 = $n; $cmp97 = ($96|0)<($97|0); if (!($cmp97)) { break; } $98 = $k; $arrayidx100 = (($Af) + ($98<<3)|0); $99 = +HEAPF64[$arrayidx100>>3]; $Atmp = $99; $100 = $n; $101 = $k; $sub101 = (($100) - ($101))|0; $sub102 = (($sub101) - 1)|0; $arrayidx103 = (($C_last_row) + ($sub102<<3)|0); $102 = +HEAPF64[$arrayidx103>>3]; $103 = $Atmp; $mul104 = $102 * $103; $104 = $tmp1; $add105 = $104 + $mul104; $tmp1 = $add105; $105 = $n; $106 = $k; $sub106 = (($105) - ($106))|0; $sub107 = (($sub106) - 1)|0; $arrayidx108 = (($C_first_row) + ($sub107<<3)|0); $107 = +HEAPF64[$arrayidx108>>3]; $108 = $Atmp; $mul109 = $107 * $108; $109 = $tmp2; $add110 = $109 + $mul109; $tmp2 = $add110; $110 = $k; $inc112 = (($110) + 1)|0; $k = $inc112; } $111 = $tmp1; $112 = $n; $add114 = (($112) + 1)|0; $arrayidx115 = (($CAf) + ($add114<<3)|0); HEAPF64[$arrayidx115>>3] = $111; $113 = $tmp2; $114 = $n; $add116 = (($114) + 1)|0; $arrayidx117 = (($CAb) + ($add116<<3)|0); HEAPF64[$arrayidx117>>3] = $113; $115 = $n; $add118 = (($115) + 1)|0; $arrayidx119 = (($CAb) + ($add118<<3)|0); $116 = +HEAPF64[$arrayidx119>>3]; $num = $116; $117 = +HEAPF64[$CAb>>3]; $nrg_b = $117; $118 = +HEAPF64[$CAf>>3]; $nrg_f = $118; $k = 0; while(1) { $119 = $k; $120 = $n; $cmp123 = ($119|0)<($120|0); if (!($cmp123)) { break; } $121 = $k; $arrayidx126 = (($Af) + ($121<<3)|0); $122 = +HEAPF64[$arrayidx126>>3]; $Atmp = $122; $123 = $n; $124 = $k; $sub127 = (($123) - ($124))|0; $arrayidx128 = (($CAb) + ($sub127<<3)|0); $125 = +HEAPF64[$arrayidx128>>3]; $126 = $Atmp; $mul129 = $125 * $126; $127 = $num; $add130 = $127 + $mul129; $num = $add130; $128 = $k; $add131 = (($128) + 1)|0; $arrayidx132 = (($CAb) + ($add131<<3)|0); $129 = +HEAPF64[$arrayidx132>>3]; $130 = $Atmp; $mul133 = $129 * $130; $131 = $nrg_b; $add134 = $131 + $mul133; $nrg_b = $add134; $132 = $k; $add135 = (($132) + 1)|0; $arrayidx136 = (($CAf) + ($add135<<3)|0); $133 = +HEAPF64[$arrayidx136>>3]; $134 = $Atmp; $mul137 = $133 * $134; $135 = $nrg_f; $add138 = $135 + $mul137; $nrg_f = $add138; $136 = $k; $inc140 = (($136) + 1)|0; $k = $inc140; } $137 = $num; $mul142 = -2.0 * $137; $138 = $nrg_f; $139 = $nrg_b; $add143 = $138 + $139; $div = $mul142 / $add143; $rc = $div; $140 = $invGain; $141 = $rc; $142 = $rc; $mul144 = $141 * $142; $sub145 = 1.0 - $mul144; $mul146 = $140 * $sub145; $tmp1 = $mul146; $143 = $tmp1; $144 = $minInvGain$addr; $conv147 = $144; $cmp148 = $143 <= $conv147; if ($cmp148) { $145 = $minInvGain$addr; $conv150 = $145; $146 = $invGain; $div151 = $conv150 / $146; $sub152 = 1.0 - $div151; $call153 = (+Math_sqrt((+$sub152))); $rc = $call153; $147 = $num; $cmp154 = $147 > 0.0; if ($cmp154) { $148 = $rc; $sub157 = - $148; $rc = $sub157; } $149 = $minInvGain$addr; $conv158 = $149; $invGain = $conv158; $reached_max_gain = 1; } else { $150 = $tmp1; $invGain = $150; } $k = 0; while(1) { $151 = $k; $152 = $n; $add161 = (($152) + 1)|0; $shr = $add161 >> 1; $cmp162 = ($151|0)<($shr|0); if (!($cmp162)) { break; } $153 = $k; $arrayidx165 = (($Af) + ($153<<3)|0); $154 = +HEAPF64[$arrayidx165>>3]; $tmp1 = $154; $155 = $n; $156 = $k; $sub166 = (($155) - ($156))|0; $sub167 = (($sub166) - 1)|0; $arrayidx168 = (($Af) + ($sub167<<3)|0); $157 = +HEAPF64[$arrayidx168>>3]; $tmp2 = $157; $158 = $tmp1; $159 = $rc; $160 = $tmp2; $mul169 = $159 * $160; $add170 = $158 + $mul169; $161 = $k; $arrayidx171 = (($Af) + ($161<<3)|0); HEAPF64[$arrayidx171>>3] = $add170; $162 = $tmp2; $163 = $rc; $164 = $tmp1; $mul172 = $163 * $164; $add173 = $162 + $mul172; $165 = $n; $166 = $k; $sub174 = (($165) - ($166))|0; $sub175 = (($sub174) - 1)|0; $arrayidx176 = (($Af) + ($sub175<<3)|0); HEAPF64[$arrayidx176>>3] = $add173; $167 = $k; $inc178 = (($167) + 1)|0; $k = $inc178; } $168 = $rc; $169 = $n; $arrayidx180 = (($Af) + ($169<<3)|0); HEAPF64[$arrayidx180>>3] = $168; $170 = $reached_max_gain; $tobool = ($170|0)!=(0); if ($tobool) { label = 33; break; } $k = 0; while(1) { $176 = $k; $177 = $n; $add193 = (($177) + 1)|0; $cmp194 = ($176|0)<=($add193|0); if (!($cmp194)) { break; } $178 = $k; $arrayidx197 = (($CAf) + ($178<<3)|0); $179 = +HEAPF64[$arrayidx197>>3]; $tmp1 = $179; $180 = $rc; $181 = $n; $182 = $k; $sub198 = (($181) - ($182))|0; $add199 = (($sub198) + 1)|0; $arrayidx200 = (($CAb) + ($add199<<3)|0); $183 = +HEAPF64[$arrayidx200>>3]; $mul201 = $180 * $183; $184 = $k; $arrayidx202 = (($CAf) + ($184<<3)|0); $185 = +HEAPF64[$arrayidx202>>3]; $add203 = $185 + $mul201; HEAPF64[$arrayidx202>>3] = $add203; $186 = $rc; $187 = $tmp1; $mul204 = $186 * $187; $188 = $n; $189 = $k; $sub205 = (($188) - ($189))|0; $add206 = (($sub205) + 1)|0; $arrayidx207 = (($CAb) + ($add206<<3)|0); $190 = +HEAPF64[$arrayidx207>>3]; $add208 = $190 + $mul204; HEAPF64[$arrayidx207>>3] = $add208; $191 = $k; $inc210 = (($191) + 1)|0; $k = $inc210; } $192 = $n; $inc213 = (($192) + 1)|0; $n = $inc213; } L48: do { if ((label|0) == 33) { $171 = $n; $add182 = (($171) + 1)|0; $k = $add182; while(1) { $172 = $k; $173 = $D$addr; $cmp184 = ($172|0)<($173|0); if (!($cmp184)) { break L48; } $174 = $k; $arrayidx187 = (($Af) + ($174<<3)|0); HEAPF64[$arrayidx187>>3] = 0.0; $175 = $k; $inc189 = (($175) + 1)|0; $k = $inc189; } } } while(0); $193 = $reached_max_gain; $tobool215 = ($193|0)!=(0); if (!($tobool215)) { $211 = +HEAPF64[$CAf>>3]; $nrg_f = $211; $tmp1 = 1.0; $k = 0; while(1) { $212 = $k; $213 = $D$addr; $cmp243 = ($212|0)<($213|0); if (!($cmp243)) { break; } $214 = $k; $arrayidx246 = (($Af) + ($214<<3)|0); $215 = +HEAPF64[$arrayidx246>>3]; $Atmp = $215; $216 = $k; $add247 = (($216) + 1)|0; $arrayidx248 = (($CAf) + ($add247<<3)|0); $217 = +HEAPF64[$arrayidx248>>3]; $218 = $Atmp; $mul249 = $217 * $218; $219 = $nrg_f; $add250 = $219 + $mul249; $nrg_f = $add250; $220 = $Atmp; $221 = $Atmp; $mul251 = $220 * $221; $222 = $tmp1; $add252 = $222 + $mul251; $tmp1 = $add252; $223 = $Atmp; $sub253 = - $223; $conv254 = $sub253; $224 = $A$addr; $225 = $k; $arrayidx255 = (($224) + ($225<<2)|0); HEAPF32[$arrayidx255>>2] = $conv254; $226 = $k; $inc257 = (($226) + 1)|0; $k = $inc257; } $227 = $C0; $mul259 = 9.9999997473787516E-6 * $227; $228 = $tmp1; $mul260 = $mul259 * $228; $229 = $nrg_f; $sub261 = $229 - $mul260; $nrg_f = $sub261; $230 = $nrg_f; $conv263 = $230; STACKTOP = sp;return (+$conv263); } $k = 0; while(1) { $194 = $k; $195 = $D$addr; $cmp218 = ($194|0)<($195|0); if (!($cmp218)) { break; } $196 = $k; $arrayidx221 = (($Af) + ($196<<3)|0); $197 = +HEAPF64[$arrayidx221>>3]; $sub222 = - $197; $conv223 = $sub222; $198 = $A$addr; $199 = $k; $arrayidx224 = (($198) + ($199<<2)|0); HEAPF32[$arrayidx224>>2] = $conv223; $200 = $k; $inc226 = (($200) + 1)|0; $k = $inc226; } $s = 0; while(1) { $201 = $s; $202 = $nb_subfr$addr; $cmp229 = ($201|0)<($202|0); if (!($cmp229)) { break; } $203 = $x$addr; $204 = $s; $205 = $subfr_length$addr; $mul232 = Math_imul($204, $205)|0; $add$ptr233 = (($203) + ($mul232<<2)|0); $206 = $D$addr; $call234 = (+_silk_energy_FLP($add$ptr233,$206)); $207 = $C0; $sub235 = $207 - $call234; $C0 = $sub235; $208 = $s; $inc237 = (($208) + 1)|0; $s = $inc237; } $209 = $C0; $210 = $invGain; $mul239 = $209 * $210; $nrg_f = $mul239; $230 = $nrg_f; $conv263 = $230; STACKTOP = sp;return (+$conv263); } function _silk_scale_vector_FLP($data1,$gain,$dataSize) { $data1 = $data1|0; $gain = +$gain; $dataSize = $dataSize|0; var $0 = 0, $1 = 0, $10 = 0.0, $11 = 0.0, $12 = 0, $13 = 0, $14 = 0.0, $15 = 0.0, $16 = 0, $17 = 0, $18 = 0.0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0.0, $23 = 0, $24 = 0, $25 = 0.0, $26 = 0; var $3 = 0.0, $4 = 0, $5 = 0, $6 = 0.0, $7 = 0.0, $8 = 0, $9 = 0, $add = 0, $add1 = 0, $add10 = 0, $add4 = 0, $add7 = 0, $and = 0, $arrayidx = 0, $arrayidx14 = 0, $arrayidx2 = 0, $arrayidx5 = 0, $arrayidx8 = 0, $cmp = 0, $cmp12 = 0; var $data1$addr = 0, $dataSize$addr = 0, $dataSize4 = 0, $gain$addr = 0.0, $i = 0, $inc = 0, $mul = 0.0, $mul15 = 0.0, $mul3 = 0.0, $mul6 = 0.0, $mul9 = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $data1$addr = $data1; $gain$addr = $gain; $dataSize$addr = $dataSize; $0 = $dataSize$addr; $and = $0 & 65532; $dataSize4 = $and; $i = 0; while(1) { $1 = $i; $2 = $dataSize4; $cmp = ($1|0)<($2|0); if (!($cmp)) { break; } $3 = $gain$addr; $4 = $data1$addr; $5 = $i; $add = (($5) + 0)|0; $arrayidx = (($4) + ($add<<2)|0); $6 = +HEAPF32[$arrayidx>>2]; $mul = $6 * $3; HEAPF32[$arrayidx>>2] = $mul; $7 = $gain$addr; $8 = $data1$addr; $9 = $i; $add1 = (($9) + 1)|0; $arrayidx2 = (($8) + ($add1<<2)|0); $10 = +HEAPF32[$arrayidx2>>2]; $mul3 = $10 * $7; HEAPF32[$arrayidx2>>2] = $mul3; $11 = $gain$addr; $12 = $data1$addr; $13 = $i; $add4 = (($13) + 2)|0; $arrayidx5 = (($12) + ($add4<<2)|0); $14 = +HEAPF32[$arrayidx5>>2]; $mul6 = $14 * $11; HEAPF32[$arrayidx5>>2] = $mul6; $15 = $gain$addr; $16 = $data1$addr; $17 = $i; $add7 = (($17) + 3)|0; $arrayidx8 = (($16) + ($add7<<2)|0); $18 = +HEAPF32[$arrayidx8>>2]; $mul9 = $18 * $15; HEAPF32[$arrayidx8>>2] = $mul9; $19 = $i; $add10 = (($19) + 4)|0; $i = $add10; } while(1) { $20 = $i; $21 = $dataSize$addr; $cmp12 = ($20|0)<($21|0); if (!($cmp12)) { break; } $22 = $gain$addr; $23 = $data1$addr; $24 = $i; $arrayidx14 = (($23) + ($24<<2)|0); $25 = +HEAPF32[$arrayidx14>>2]; $mul15 = $25 * $22; HEAPF32[$arrayidx14>>2] = $mul15; $26 = $i; $inc = (($26) + 1)|0; $i = $inc; } STACKTOP = sp;return; } function _silk_CNG_Reset($psDec) { $psDec = $psDec|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $CNG_smth_Gain_Q16 = 0, $CNG_smth_NLSF_Q15 = 0, $LPC_order = 0, $LPC_order1 = 0, $NLSF_acc_Q15 = 0, $NLSF_step_Q15 = 0, $add = 0; var $add2 = 0, $arrayidx = 0, $cmp = 0, $conv = 0, $div = 0, $i = 0, $inc = 0, $psDec$addr = 0, $rand_seed = 0, $sCNG = 0, $sCNG3 = 0, $sCNG4 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $psDec$addr = $psDec; $0 = $psDec$addr; $LPC_order = ((($0)) + 2340|0); $1 = HEAP32[$LPC_order>>2]|0; $add = (($1) + 1)|0; $div = (32767 / ($add|0))&-1; $NLSF_step_Q15 = $div; $NLSF_acc_Q15 = 0; $i = 0; while(1) { $2 = $i; $3 = $psDec$addr; $LPC_order1 = ((($3)) + 2340|0); $4 = HEAP32[$LPC_order1>>2]|0; $cmp = ($2|0)<($4|0); if (!($cmp)) { break; } $5 = $NLSF_step_Q15; $6 = $NLSF_acc_Q15; $add2 = (($6) + ($5))|0; $NLSF_acc_Q15 = $add2; $7 = $NLSF_acc_Q15; $conv = $7&65535; $8 = $psDec$addr; $sCNG = ((($8)) + 2772|0); $CNG_smth_NLSF_Q15 = ((($sCNG)) + 1280|0); $9 = $i; $arrayidx = (($CNG_smth_NLSF_Q15) + ($9<<1)|0); HEAP16[$arrayidx>>1] = $conv; $10 = $i; $inc = (($10) + 1)|0; $i = $inc; } $11 = $psDec$addr; $sCNG3 = ((($11)) + 2772|0); $CNG_smth_Gain_Q16 = ((($sCNG3)) + 1376|0); HEAP32[$CNG_smth_Gain_Q16>>2] = 0; $12 = $psDec$addr; $sCNG4 = ((($12)) + 2772|0); $rand_seed = ((($sCNG4)) + 1380|0); HEAP32[$rand_seed>>2] = 3176576; STACKTOP = sp;return; } function _silk_CNG($psDec,$psDecCtrl,$frame,$length) { $psDec = $psDec|0; $psDecCtrl = $psDecCtrl|0; $frame = $frame|0; $length = $length|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0; var $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0; var $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0; var $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $A_Q12 = 0, $CNG_smth_Gain_Q16 = 0, $CNG_smth_Gain_Q16111 = 0, $CNG_smth_Gain_Q16118 = 0, $CNG_smth_Gain_Q16120 = 0, $CNG_smth_Gain_Q16140 = 0, $CNG_smth_Gain_Q16142 = 0, $CNG_smth_Gain_Q16146 = 0; var $CNG_smth_Gain_Q16148 = 0, $CNG_smth_Gain_Q16154 = 0, $CNG_smth_Gain_Q16155 = 0, $CNG_smth_Gain_Q1664 = 0, $CNG_smth_Gain_Q1670 = 0, $CNG_smth_NLSF_Q15 = 0, $CNG_smth_NLSF_Q1513 = 0, $CNG_smth_NLSF_Q15170 = 0, $CNG_smth_NLSF_Q1519 = 0, $CNG_synth_state = 0, $CNG_synth_state833 = 0, $CNG_synth_state837 = 0, $Gains_Q16 = 0, $Gains_Q1632 = 0, $Gains_Q1657 = 0, $Gains_Q1662 = 0, $LPC_order = 0, $LPC_order172 = 0, $LPC_order178 = 0, $LPC_order350 = 0; var $LPC_order839 = 0, $LPC_pred_Q10 = 0, $add = 0, $add$ptr = 0, $add105 = 0, $add108 = 0, $add134 = 0, $add136 = 0, $add139 = 0, $add153 = 0, $add157 = 0, $add160 = 0, $add180 = 0, $add187 = 0, $add195 = 0, $add196 = 0, $add197 = 0, $add204 = 0, $add212 = 0, $add213 = 0; var $add214 = 0, $add22 = 0, $add221 = 0, $add229 = 0, $add230 = 0, $add231 = 0, $add238 = 0, $add246 = 0, $add247 = 0, $add248 = 0, $add255 = 0, $add263 = 0, $add264 = 0, $add265 = 0, $add272 = 0, $add280 = 0, $add281 = 0, $add282 = 0, $add289 = 0, $add297 = 0; var $add298 = 0, $add299 = 0, $add306 = 0, $add314 = 0, $add315 = 0, $add316 = 0, $add323 = 0, $add331 = 0, $add332 = 0, $add333 = 0, $add340 = 0, $add348 = 0, $add349 = 0, $add354 = 0, $add361 = 0, $add369 = 0, $add370 = 0, $add371 = 0, $add378 = 0, $add386 = 0; var $add387 = 0, $add388 = 0, $add395 = 0, $add403 = 0, $add404 = 0, $add405 = 0, $add412 = 0, $add420 = 0, $add421 = 0, $add422 = 0, $add429 = 0, $add437 = 0, $add438 = 0, $add439 = 0, $add446 = 0, $add454 = 0, $add455 = 0, $add457 = 0, $add468 = 0, $add473 = 0; var $add494 = 0, $add509 = 0, $add533 = 0, $add548 = 0, $add553 = 0, $add557 = 0, $add563 = 0, $add570 = 0, $add571 = 0, $add574 = 0, $add577 = 0, $add579 = 0, $add585 = 0, $add591 = 0, $add598 = 0, $add599 = 0, $add602 = 0, $add605 = 0, $add607 = 0, $add613 = 0; var $add619 = 0, $add626 = 0, $add627 = 0, $add630 = 0, $add633 = 0, $add635 = 0, $add641 = 0, $add648 = 0, $add654 = 0, $add661 = 0, $add662 = 0, $add665 = 0, $add668 = 0, $add670 = 0, $add676 = 0, $add682 = 0, $add689 = 0, $add69 = 0, $add690 = 0, $add693 = 0; var $add696 = 0, $add698 = 0, $add704 = 0, $add71 = 0, $add710 = 0, $add717 = 0, $add718 = 0, $add721 = 0, $add724 = 0, $add726 = 0, $add732 = 0, $add739 = 0, $add745 = 0, $add752 = 0, $add753 = 0, $add756 = 0, $add759 = 0, $add761 = 0, $add767 = 0, $add773 = 0; var $add78 = 0, $add780 = 0, $add781 = 0, $add784 = 0, $add787 = 0, $add789 = 0, $add795 = 0, $add801 = 0, $add808 = 0, $add809 = 0, $add812 = 0, $add815 = 0, $add817 = 0, $add823 = 0, $add97 = 0, $and = 0, $and129 = 0, $and147 = 0, $and190 = 0, $and207 = 0; var $and224 = 0, $and241 = 0, $and258 = 0, $and275 = 0, $and292 = 0, $and309 = 0, $and326 = 0, $and343 = 0, $and364 = 0, $and381 = 0, $and398 = 0, $and415 = 0, $and432 = 0, $and449 = 0, $and469 = 0, $and488 = 0, $and489 = 0, $and528 = 0, $and565 = 0, $and593 = 0; var $and621 = 0, $and656 = 0, $and66 = 0, $and684 = 0, $and712 = 0, $and747 = 0, $and775 = 0, $and803 = 0, $and89 = 0, $arch = 0, $arrayidx = 0, $arrayidx103 = 0, $arrayidx11 = 0, $arrayidx14 = 0, $arrayidx182 = 0, $arrayidx189 = 0, $arrayidx199 = 0, $arrayidx20 = 0, $arrayidx201 = 0, $arrayidx206 = 0; var $arrayidx208 = 0, $arrayidx216 = 0, $arrayidx218 = 0, $arrayidx223 = 0, $arrayidx225 = 0, $arrayidx233 = 0, $arrayidx235 = 0, $arrayidx240 = 0, $arrayidx242 = 0, $arrayidx250 = 0, $arrayidx252 = 0, $arrayidx257 = 0, $arrayidx259 = 0, $arrayidx267 = 0, $arrayidx269 = 0, $arrayidx274 = 0, $arrayidx276 = 0, $arrayidx28 = 0, $arrayidx284 = 0, $arrayidx286 = 0; var $arrayidx291 = 0, $arrayidx293 = 0, $arrayidx301 = 0, $arrayidx303 = 0, $arrayidx308 = 0, $arrayidx310 = 0, $arrayidx318 = 0, $arrayidx320 = 0, $arrayidx325 = 0, $arrayidx327 = 0, $arrayidx33 = 0, $arrayidx335 = 0, $arrayidx337 = 0, $arrayidx342 = 0, $arrayidx344 = 0, $arrayidx356 = 0, $arrayidx358 = 0, $arrayidx363 = 0, $arrayidx365 = 0, $arrayidx373 = 0; var $arrayidx375 = 0, $arrayidx38 = 0, $arrayidx380 = 0, $arrayidx382 = 0, $arrayidx390 = 0, $arrayidx392 = 0, $arrayidx397 = 0, $arrayidx399 = 0, $arrayidx407 = 0, $arrayidx409 = 0, $arrayidx414 = 0, $arrayidx416 = 0, $arrayidx424 = 0, $arrayidx426 = 0, $arrayidx431 = 0, $arrayidx433 = 0, $arrayidx441 = 0, $arrayidx443 = 0, $arrayidx448 = 0, $arrayidx450 = 0; var $arrayidx458 = 0, $arrayidx474 = 0, $arrayidx49 = 0, $arrayidx495 = 0, $arrayidx534 = 0, $arrayidx554 = 0, $arrayidx555 = 0, $arrayidx558 = 0, $arrayidx564 = 0, $arrayidx572 = 0, $arrayidx58 = 0, $arrayidx586 = 0, $arrayidx592 = 0, $arrayidx600 = 0, $arrayidx614 = 0, $arrayidx620 = 0, $arrayidx628 = 0, $arrayidx63 = 0, $arrayidx646 = 0, $arrayidx649 = 0; var $arrayidx655 = 0, $arrayidx663 = 0, $arrayidx677 = 0, $arrayidx683 = 0, $arrayidx691 = 0, $arrayidx705 = 0, $arrayidx711 = 0, $arrayidx719 = 0, $arrayidx737 = 0, $arrayidx740 = 0, $arrayidx746 = 0, $arrayidx754 = 0, $arrayidx768 = 0, $arrayidx774 = 0, $arrayidx782 = 0, $arrayidx796 = 0, $arrayidx8 = 0, $arrayidx802 = 0, $arrayidx810 = 0, $arrayidx82 = 0; var $arrayidx829 = 0, $arrayidx835 = 0, $arrayidx92 = 0, $call = 0, $call163 = 0, $cmp = 0, $cmp109 = 0, $cmp112 = 0, $cmp175 = 0, $cmp25 = 0, $cmp29 = 0, $cmp351 = 0, $cmp4 = 0, $cmp459 = 0, $cmp461 = 0, $cmp470 = 0, $cmp475 = 0, $cmp479 = 0, $cmp490 = 0, $cmp496 = 0; var $cmp5 = 0, $cmp500 = 0, $cmp519 = 0, $cmp529 = 0, $cmp535 = 0, $cmp539 = 0, $cmp54 = 0, $cmp581 = 0, $cmp609 = 0, $cmp642 = 0, $cmp672 = 0, $cmp7 = 0, $cmp700 = 0, $cmp733 = 0, $cmp763 = 0, $cmp791 = 0, $cond = 0, $cond466 = 0, $cond484 = 0, $cond486 = 0; var $cond505 = 0, $cond507 = 0, $cond524 = 0, $cond526 = 0, $cond544 = 0, $cond546 = 0, $cond552 = 0, $cond640 = 0, $cond731 = 0, $cond822 = 0, $cond827 = 0, $conv = 0, $conv100 = 0, $conv12 = 0, $conv126 = 0, $conv127 = 0, $conv130 = 0, $conv131 = 0, $conv143 = 0, $conv144 = 0; var $conv149 = 0, $conv15 = 0, $conv150 = 0, $conv185 = 0, $conv192 = 0, $conv202 = 0, $conv209 = 0, $conv21 = 0, $conv219 = 0, $conv226 = 0, $conv23 = 0, $conv236 = 0, $conv243 = 0, $conv253 = 0, $conv260 = 0, $conv270 = 0, $conv277 = 0, $conv287 = 0, $conv294 = 0, $conv304 = 0; var $conv311 = 0, $conv321 = 0, $conv328 = 0, $conv338 = 0, $conv345 = 0, $conv359 = 0, $conv366 = 0, $conv376 = 0, $conv383 = 0, $conv393 = 0, $conv400 = 0, $conv410 = 0, $conv417 = 0, $conv427 = 0, $conv434 = 0, $conv444 = 0, $conv451 = 0, $conv556 = 0, $conv560 = 0, $conv561 = 0; var $conv566 = 0, $conv567 = 0, $conv588 = 0, $conv589 = 0, $conv594 = 0, $conv595 = 0, $conv616 = 0, $conv617 = 0, $conv622 = 0, $conv623 = 0, $conv647 = 0, $conv651 = 0, $conv652 = 0, $conv657 = 0, $conv658 = 0, $conv679 = 0, $conv680 = 0, $conv685 = 0, $conv686 = 0, $conv707 = 0; var $conv708 = 0, $conv713 = 0, $conv714 = 0, $conv738 = 0, $conv742 = 0, $conv743 = 0, $conv748 = 0, $conv749 = 0, $conv770 = 0, $conv771 = 0, $conv776 = 0, $conv777 = 0, $conv79 = 0, $conv798 = 0, $conv799 = 0, $conv804 = 0, $conv805 = 0, $conv828 = 0, $conv83 = 0, $conv84 = 0; var $conv88 = 0, $conv9 = 0, $conv93 = 0, $conv94 = 0, $exc_Q14 = 0, $frame$addr = 0, $fs_kHz = 0, $fs_kHz1 = 0, $fs_kHz2 = 0, $fs_kHz3 = 0, $gain_Q10 = 0, $gain_Q16 = 0, $i = 0, $inc = 0, $inc36 = 0, $inc73 = 0, $inc831 = 0, $length$addr = 0, $lossCnt = 0, $lossCnt76 = 0; var $max_Gain_Q16 = 0, $mul = 0, $mul107 = 0, $mul117 = 0, $mul122 = 0, $mul128 = 0, $mul132 = 0, $mul138 = 0, $mul145 = 0, $mul151 = 0, $mul159 = 0, $mul17 = 0, $mul186 = 0, $mul193 = 0, $mul203 = 0, $mul210 = 0, $mul220 = 0, $mul227 = 0, $mul237 = 0, $mul244 = 0; var $mul254 = 0, $mul261 = 0, $mul271 = 0, $mul278 = 0, $mul288 = 0, $mul295 = 0, $mul305 = 0, $mul312 = 0, $mul322 = 0, $mul329 = 0, $mul339 = 0, $mul346 = 0, $mul360 = 0, $mul367 = 0, $mul377 = 0, $mul384 = 0, $mul394 = 0, $mul401 = 0, $mul411 = 0, $mul418 = 0; var $mul428 = 0, $mul43 = 0, $mul435 = 0, $mul44 = 0, $mul445 = 0, $mul452 = 0, $mul48 = 0, $mul51 = 0, $mul562 = 0, $mul568 = 0, $mul576 = 0, $mul590 = 0, $mul596 = 0, $mul604 = 0, $mul61 = 0, $mul618 = 0, $mul624 = 0, $mul632 = 0, $mul653 = 0, $mul659 = 0; var $mul667 = 0, $mul67 = 0, $mul681 = 0, $mul687 = 0, $mul695 = 0, $mul709 = 0, $mul715 = 0, $mul723 = 0, $mul744 = 0, $mul750 = 0, $mul758 = 0, $mul772 = 0, $mul778 = 0, $mul786 = 0, $mul800 = 0, $mul806 = 0, $mul814 = 0, $mul840 = 0, $mul85 = 0, $mul95 = 0; var $nb_subfr = 0, $nb_subfr40 = 0, $nb_subfr53 = 0, $or = 0, $prevGain_Q16 = 0, $prevGain_Q16102 = 0, $prevGain_Q1691 = 0, $prevNLSF_Q15 = 0, $prevNLSF_Q1510 = 0, $prevSignalType = 0, $psCNG = 0, $psDec$addr = 0, $psDecCtrl$addr = 0, $randScale_Q14 = 0, $randScale_Q1487 = 0, $randScale_Q1499 = 0, $rand_seed = 0, $sCNG = 0, $sPLC = 0, $sPLC101 = 0; var $sPLC81 = 0, $sPLC86 = 0, $sPLC90 = 0, $sPLC98 = 0, $saved_stack = 0, $shl = 0, $shl124 = 0, $shl161 = 0, $shl164 = 0, $shl467 = 0, $shl487 = 0, $shl508 = 0, $shl527 = 0, $shl547 = 0, $shr = 0, $shr104 = 0, $shr106 = 0, $shr115 = 0, $shr116 = 0, $shr119 = 0; var $shr121 = 0, $shr125 = 0, $shr133 = 0, $shr135 = 0, $shr137 = 0, $shr141 = 0, $shr152 = 0, $shr156 = 0, $shr158 = 0, $shr166 = 0, $shr179 = 0, $shr18 = 0, $shr183 = 0, $shr194 = 0, $shr200 = 0, $shr211 = 0, $shr217 = 0, $shr228 = 0, $shr234 = 0, $shr245 = 0; var $shr251 = 0, $shr262 = 0, $shr268 = 0, $shr279 = 0, $shr285 = 0, $shr296 = 0, $shr302 = 0, $shr313 = 0, $shr319 = 0, $shr330 = 0, $shr336 = 0, $shr347 = 0, $shr357 = 0, $shr368 = 0, $shr374 = 0, $shr385 = 0, $shr391 = 0, $shr402 = 0, $shr408 = 0, $shr419 = 0; var $shr425 = 0, $shr436 = 0, $shr442 = 0, $shr453 = 0, $shr559 = 0, $shr569 = 0, $shr573 = 0, $shr575 = 0, $shr578 = 0, $shr580 = 0, $shr587 = 0, $shr597 = 0, $shr60 = 0, $shr601 = 0, $shr603 = 0, $shr606 = 0, $shr608 = 0, $shr615 = 0, $shr625 = 0, $shr629 = 0; var $shr631 = 0, $shr634 = 0, $shr636 = 0, $shr650 = 0, $shr660 = 0, $shr664 = 0, $shr666 = 0, $shr669 = 0, $shr671 = 0, $shr678 = 0, $shr68 = 0, $shr688 = 0, $shr692 = 0, $shr694 = 0, $shr697 = 0, $shr699 = 0, $shr706 = 0, $shr716 = 0, $shr720 = 0, $shr722 = 0; var $shr725 = 0, $shr727 = 0, $shr741 = 0, $shr751 = 0, $shr755 = 0, $shr757 = 0, $shr760 = 0, $shr762 = 0, $shr769 = 0, $shr779 = 0, $shr783 = 0, $shr785 = 0, $shr788 = 0, $shr790 = 0, $shr797 = 0, $shr80 = 0, $shr807 = 0, $shr811 = 0, $shr813 = 0, $shr816 = 0; var $shr818 = 0, $shr96 = 0, $sub = 0, $sub123 = 0, $sub16 = 0, $sub162 = 0, $sub181 = 0, $sub188 = 0, $sub198 = 0, $sub205 = 0, $sub215 = 0, $sub222 = 0, $sub232 = 0, $sub239 = 0, $sub249 = 0, $sub256 = 0, $sub266 = 0, $sub273 = 0, $sub283 = 0, $sub290 = 0; var $sub300 = 0, $sub307 = 0, $sub317 = 0, $sub324 = 0, $sub334 = 0, $sub341 = 0, $sub355 = 0, $sub362 = 0, $sub372 = 0, $sub379 = 0, $sub389 = 0, $sub396 = 0, $sub406 = 0, $sub41 = 0, $sub413 = 0, $sub423 = 0, $sub430 = 0, $sub440 = 0, $sub447 = 0, $sub59 = 0; var $sub65 = 0, $subfr = 0, $subfr_length = 0, $subfr_length42 = 0, $subfr_length47 = 0, $subfr_length50 = 0, $tobool = 0, $vla = 0, $vla$alloca_mul = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; sp = STACKTOP; STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(80|0); $A_Q12 = sp + 48|0; $psDec$addr = $psDec; $psDecCtrl$addr = $psDecCtrl; $frame$addr = $frame; $length$addr = $length; $0 = $psDec$addr; $sCNG = ((($0)) + 2772|0); $psCNG = $sCNG; $1 = $psDec$addr; $fs_kHz = ((($1)) + 2316|0); $2 = HEAP32[$fs_kHz>>2]|0; $3 = $psCNG; $fs_kHz1 = ((($3)) + 1384|0); $4 = HEAP32[$fs_kHz1>>2]|0; $cmp = ($2|0)!=($4|0); if ($cmp) { $5 = $psDec$addr; _silk_CNG_Reset($5); $6 = $psDec$addr; $fs_kHz2 = ((($6)) + 2316|0); $7 = HEAP32[$fs_kHz2>>2]|0; $8 = $psCNG; $fs_kHz3 = ((($8)) + 1384|0); HEAP32[$fs_kHz3>>2] = $7; } $9 = $psDec$addr; $lossCnt = ((($9)) + 4160|0); $10 = HEAP32[$lossCnt>>2]|0; $cmp4 = ($10|0)==(0); L4: do { if ($cmp4) { $11 = $psDec$addr; $prevSignalType = ((($11)) + 4164|0); $12 = HEAP32[$prevSignalType>>2]|0; $cmp5 = ($12|0)==(0); if ($cmp5) { $i = 0; while(1) { $13 = $i; $14 = $psDec$addr; $LPC_order = ((($14)) + 2340|0); $15 = HEAP32[$LPC_order>>2]|0; $cmp7 = ($13|0)<($15|0); if (!($cmp7)) { break; } $16 = $psDec$addr; $prevNLSF_Q15 = ((($16)) + 2344|0); $17 = $i; $arrayidx = (($prevNLSF_Q15) + ($17<<1)|0); $18 = HEAP16[$arrayidx>>1]|0; $conv = $18 << 16 >> 16; $19 = $psCNG; $CNG_smth_NLSF_Q15 = ((($19)) + 1280|0); $20 = $i; $arrayidx8 = (($CNG_smth_NLSF_Q15) + ($20<<1)|0); $21 = HEAP16[$arrayidx8>>1]|0; $conv9 = $21 << 16 >> 16; $sub = (($conv) - ($conv9))|0; $shr = $sub >> 16; $mul = ($shr*16348)|0; $22 = $psDec$addr; $prevNLSF_Q1510 = ((($22)) + 2344|0); $23 = $i; $arrayidx11 = (($prevNLSF_Q1510) + ($23<<1)|0); $24 = HEAP16[$arrayidx11>>1]|0; $conv12 = $24 << 16 >> 16; $25 = $psCNG; $CNG_smth_NLSF_Q1513 = ((($25)) + 1280|0); $26 = $i; $arrayidx14 = (($CNG_smth_NLSF_Q1513) + ($26<<1)|0); $27 = HEAP16[$arrayidx14>>1]|0; $conv15 = $27 << 16 >> 16; $sub16 = (($conv12) - ($conv15))|0; $and = $sub16 & 65535; $mul17 = ($and*16348)|0; $shr18 = $mul17 >> 16; $add = (($mul) + ($shr18))|0; $28 = $psCNG; $CNG_smth_NLSF_Q1519 = ((($28)) + 1280|0); $29 = $i; $arrayidx20 = (($CNG_smth_NLSF_Q1519) + ($29<<1)|0); $30 = HEAP16[$arrayidx20>>1]|0; $conv21 = $30 << 16 >> 16; $add22 = (($conv21) + ($add))|0; $conv23 = $add22&65535; HEAP16[$arrayidx20>>1] = $conv23; $31 = $i; $inc = (($31) + 1)|0; $i = $inc; } $max_Gain_Q16 = 0; $subfr = 0; $i = 0; while(1) { $32 = $i; $33 = $psDec$addr; $nb_subfr = ((($33)) + 2324|0); $34 = HEAP32[$nb_subfr>>2]|0; $cmp25 = ($32|0)<($34|0); if (!($cmp25)) { break; } $35 = $psDecCtrl$addr; $Gains_Q16 = ((($35)) + 16|0); $36 = $i; $arrayidx28 = (($Gains_Q16) + ($36<<2)|0); $37 = HEAP32[$arrayidx28>>2]|0; $38 = $max_Gain_Q16; $cmp29 = ($37|0)>($38|0); if ($cmp29) { $39 = $psDecCtrl$addr; $Gains_Q1632 = ((($39)) + 16|0); $40 = $i; $arrayidx33 = (($Gains_Q1632) + ($40<<2)|0); $41 = HEAP32[$arrayidx33>>2]|0; $max_Gain_Q16 = $41; $42 = $i; $subfr = $42; } $43 = $i; $inc36 = (($43) + 1)|0; $i = $inc36; } $44 = $psCNG; $45 = $psDec$addr; $subfr_length = ((($45)) + 2332|0); $46 = HEAP32[$subfr_length>>2]|0; $arrayidx38 = (($44) + ($46<<2)|0); $47 = $psCNG; $48 = $psDec$addr; $nb_subfr40 = ((($48)) + 2324|0); $49 = HEAP32[$nb_subfr40>>2]|0; $sub41 = (($49) - 1)|0; $50 = $psDec$addr; $subfr_length42 = ((($50)) + 2332|0); $51 = HEAP32[$subfr_length42>>2]|0; $mul43 = Math_imul($sub41, $51)|0; $mul44 = $mul43<<2; _memmove(($arrayidx38|0),($47|0),($mul44|0))|0; $52 = $psCNG; $53 = $psDec$addr; $exc_Q14 = ((($53)) + 4|0); $54 = $subfr; $55 = $psDec$addr; $subfr_length47 = ((($55)) + 2332|0); $56 = HEAP32[$subfr_length47>>2]|0; $mul48 = Math_imul($54, $56)|0; $arrayidx49 = (($exc_Q14) + ($mul48<<2)|0); $57 = $psDec$addr; $subfr_length50 = ((($57)) + 2332|0); $58 = HEAP32[$subfr_length50>>2]|0; $mul51 = $58<<2; _memcpy(($52|0),($arrayidx49|0),($mul51|0))|0; $i = 0; while(1) { $59 = $i; $60 = $psDec$addr; $nb_subfr53 = ((($60)) + 2324|0); $61 = HEAP32[$nb_subfr53>>2]|0; $cmp54 = ($59|0)<($61|0); if (!($cmp54)) { break L4; } $62 = $psDecCtrl$addr; $Gains_Q1657 = ((($62)) + 16|0); $63 = $i; $arrayidx58 = (($Gains_Q1657) + ($63<<2)|0); $64 = HEAP32[$arrayidx58>>2]|0; $65 = $psCNG; $CNG_smth_Gain_Q16 = ((($65)) + 1376|0); $66 = HEAP32[$CNG_smth_Gain_Q16>>2]|0; $sub59 = (($64) - ($66))|0; $shr60 = $sub59 >> 16; $mul61 = ($shr60*4634)|0; $67 = $psDecCtrl$addr; $Gains_Q1662 = ((($67)) + 16|0); $68 = $i; $arrayidx63 = (($Gains_Q1662) + ($68<<2)|0); $69 = HEAP32[$arrayidx63>>2]|0; $70 = $psCNG; $CNG_smth_Gain_Q1664 = ((($70)) + 1376|0); $71 = HEAP32[$CNG_smth_Gain_Q1664>>2]|0; $sub65 = (($69) - ($71))|0; $and66 = $sub65 & 65535; $mul67 = ($and66*4634)|0; $shr68 = $mul67 >> 16; $add69 = (($mul61) + ($shr68))|0; $72 = $psCNG; $CNG_smth_Gain_Q1670 = ((($72)) + 1376|0); $73 = HEAP32[$CNG_smth_Gain_Q1670>>2]|0; $add71 = (($73) + ($add69))|0; HEAP32[$CNG_smth_Gain_Q1670>>2] = $add71; $74 = $i; $inc73 = (($74) + 1)|0; $i = $inc73; } } } } while(0); $75 = $psDec$addr; $lossCnt76 = ((($75)) + 4160|0); $76 = HEAP32[$lossCnt76>>2]|0; $tobool = ($76|0)!=(0); if (!($tobool)) { $369 = $psCNG; $CNG_synth_state837 = ((($369)) + 1312|0); $370 = $psDec$addr; $LPC_order839 = ((($370)) + 2340|0); $371 = HEAP32[$LPC_order839>>2]|0; $mul840 = $371<<2; _memset(($CNG_synth_state837|0),0,($mul840|0))|0; STACKTOP = sp;return; } $77 = $length$addr; $add78 = (($77) + 16)|0; $78 = (_llvm_stacksave()|0); $saved_stack = $78; $vla$alloca_mul = $add78<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $79 = $psDec$addr; $sPLC = ((($79)) + 4172|0); $randScale_Q14 = ((($sPLC)) + 56|0); $80 = HEAP16[$randScale_Q14>>1]|0; $conv79 = $80 << 16 >> 16; $shr80 = $conv79 >> 16; $81 = $psDec$addr; $sPLC81 = ((($81)) + 4172|0); $prevGain_Q16 = ((($sPLC81)) + 72|0); $arrayidx82 = ((($prevGain_Q16)) + 4|0); $82 = HEAP32[$arrayidx82>>2]|0; $conv83 = $82&65535; $conv84 = $conv83 << 16 >> 16; $mul85 = Math_imul($shr80, $conv84)|0; $83 = $psDec$addr; $sPLC86 = ((($83)) + 4172|0); $randScale_Q1487 = ((($sPLC86)) + 56|0); $84 = HEAP16[$randScale_Q1487>>1]|0; $conv88 = $84 << 16 >> 16; $and89 = $conv88 & 65535; $85 = $psDec$addr; $sPLC90 = ((($85)) + 4172|0); $prevGain_Q1691 = ((($sPLC90)) + 72|0); $arrayidx92 = ((($prevGain_Q1691)) + 4|0); $86 = HEAP32[$arrayidx92>>2]|0; $conv93 = $86&65535; $conv94 = $conv93 << 16 >> 16; $mul95 = Math_imul($and89, $conv94)|0; $shr96 = $mul95 >> 16; $add97 = (($mul85) + ($shr96))|0; $87 = $psDec$addr; $sPLC98 = ((($87)) + 4172|0); $randScale_Q1499 = ((($sPLC98)) + 56|0); $88 = HEAP16[$randScale_Q1499>>1]|0; $conv100 = $88 << 16 >> 16; $89 = $psDec$addr; $sPLC101 = ((($89)) + 4172|0); $prevGain_Q16102 = ((($sPLC101)) + 72|0); $arrayidx103 = ((($prevGain_Q16102)) + 4|0); $90 = HEAP32[$arrayidx103>>2]|0; $shr104 = $90 >> 15; $add105 = (($shr104) + 1)|0; $shr106 = $add105 >> 1; $mul107 = Math_imul($conv100, $shr106)|0; $add108 = (($add97) + ($mul107))|0; $gain_Q16 = $add108; $91 = $gain_Q16; $cmp109 = ($91|0)>=(2097152); if ($cmp109) { label = 19; } else { $92 = $psCNG; $CNG_smth_Gain_Q16111 = ((($92)) + 1376|0); $93 = HEAP32[$CNG_smth_Gain_Q16111>>2]|0; $cmp112 = ($93|0)>(8388608); if ($cmp112) { label = 19; } else { $102 = $gain_Q16; $shr125 = $102 >> 16; $103 = $gain_Q16; $conv126 = $103&65535; $conv127 = $conv126 << 16 >> 16; $mul128 = Math_imul($shr125, $conv127)|0; $104 = $gain_Q16; $and129 = $104 & 65535; $105 = $gain_Q16; $conv130 = $105&65535; $conv131 = $conv130 << 16 >> 16; $mul132 = Math_imul($and129, $conv131)|0; $shr133 = $mul132 >> 16; $add134 = (($mul128) + ($shr133))|0; $106 = $gain_Q16; $107 = $gain_Q16; $shr135 = $107 >> 15; $add136 = (($shr135) + 1)|0; $shr137 = $add136 >> 1; $mul138 = Math_imul($106, $shr137)|0; $add139 = (($add134) + ($mul138))|0; $gain_Q16 = $add139; $108 = $psCNG; $CNG_smth_Gain_Q16140 = ((($108)) + 1376|0); $109 = HEAP32[$CNG_smth_Gain_Q16140>>2]|0; $shr141 = $109 >> 16; $110 = $psCNG; $CNG_smth_Gain_Q16142 = ((($110)) + 1376|0); $111 = HEAP32[$CNG_smth_Gain_Q16142>>2]|0; $conv143 = $111&65535; $conv144 = $conv143 << 16 >> 16; $mul145 = Math_imul($shr141, $conv144)|0; $112 = $psCNG; $CNG_smth_Gain_Q16146 = ((($112)) + 1376|0); $113 = HEAP32[$CNG_smth_Gain_Q16146>>2]|0; $and147 = $113 & 65535; $114 = $psCNG; $CNG_smth_Gain_Q16148 = ((($114)) + 1376|0); $115 = HEAP32[$CNG_smth_Gain_Q16148>>2]|0; $conv149 = $115&65535; $conv150 = $conv149 << 16 >> 16; $mul151 = Math_imul($and147, $conv150)|0; $shr152 = $mul151 >> 16; $add153 = (($mul145) + ($shr152))|0; $116 = $psCNG; $CNG_smth_Gain_Q16154 = ((($116)) + 1376|0); $117 = HEAP32[$CNG_smth_Gain_Q16154>>2]|0; $118 = $psCNG; $CNG_smth_Gain_Q16155 = ((($118)) + 1376|0); $119 = HEAP32[$CNG_smth_Gain_Q16155>>2]|0; $shr156 = $119 >> 15; $add157 = (($shr156) + 1)|0; $shr158 = $add157 >> 1; $mul159 = Math_imul($117, $shr158)|0; $add160 = (($add153) + ($mul159))|0; $120 = $gain_Q16; $shl161 = $120 << 5; $sub162 = (($add160) - ($shl161))|0; $gain_Q16 = $sub162; $121 = $gain_Q16; $call163 = (_silk_SQRT_APPROX_546($121)|0); $shl164 = $call163 << 8; $gain_Q16 = $shl164; } } if ((label|0) == 19) { $94 = $gain_Q16; $shr115 = $94 >> 16; $95 = $gain_Q16; $shr116 = $95 >> 16; $mul117 = Math_imul($shr115, $shr116)|0; $gain_Q16 = $mul117; $96 = $psCNG; $CNG_smth_Gain_Q16118 = ((($96)) + 1376|0); $97 = HEAP32[$CNG_smth_Gain_Q16118>>2]|0; $shr119 = $97 >> 16; $98 = $psCNG; $CNG_smth_Gain_Q16120 = ((($98)) + 1376|0); $99 = HEAP32[$CNG_smth_Gain_Q16120>>2]|0; $shr121 = $99 >> 16; $mul122 = Math_imul($shr119, $shr121)|0; $100 = $gain_Q16; $shl = $100 << 5; $sub123 = (($mul122) - ($shl))|0; $gain_Q16 = $sub123; $101 = $gain_Q16; $call = (_silk_SQRT_APPROX_546($101)|0); $shl124 = $call << 16; $gain_Q16 = $shl124; } $122 = $gain_Q16; $shr166 = $122 >> 6; $gain_Q10 = $shr166; $add$ptr = ((($vla)) + 64|0); $123 = $psCNG; $124 = $length$addr; $125 = $psCNG; $rand_seed = ((($125)) + 1380|0); _silk_CNG_exc($add$ptr,$123,$124,$rand_seed); $126 = $psCNG; $CNG_smth_NLSF_Q15170 = ((($126)) + 1280|0); $127 = $psDec$addr; $LPC_order172 = ((($127)) + 2340|0); $128 = HEAP32[$LPC_order172>>2]|0; $129 = $psDec$addr; $arch = ((($129)) + 4168|0); $130 = HEAP32[$arch>>2]|0; _silk_NLSF2A($A_Q12,$CNG_smth_NLSF_Q15170,$128,$130); $131 = $psCNG; $CNG_synth_state = ((($131)) + 1312|0); dest=$vla; src=$CNG_synth_state; stop=dest+64|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); $i = 0; while(1) { $132 = $i; $133 = $length$addr; $cmp175 = ($132|0)<($133|0); if (!($cmp175)) { break; } $134 = $psDec$addr; $LPC_order178 = ((($134)) + 2340|0); $135 = HEAP32[$LPC_order178>>2]|0; $shr179 = $135 >> 1; $LPC_pred_Q10 = $shr179; $136 = $LPC_pred_Q10; $137 = $i; $add180 = (16 + ($137))|0; $sub181 = (($add180) - 1)|0; $arrayidx182 = (($vla) + ($sub181<<2)|0); $138 = HEAP32[$arrayidx182>>2]|0; $shr183 = $138 >> 16; $139 = HEAP16[$A_Q12>>1]|0; $conv185 = $139 << 16 >> 16; $mul186 = Math_imul($shr183, $conv185)|0; $140 = $i; $add187 = (16 + ($140))|0; $sub188 = (($add187) - 1)|0; $arrayidx189 = (($vla) + ($sub188<<2)|0); $141 = HEAP32[$arrayidx189>>2]|0; $and190 = $141 & 65535; $142 = HEAP16[$A_Q12>>1]|0; $conv192 = $142 << 16 >> 16; $mul193 = Math_imul($and190, $conv192)|0; $shr194 = $mul193 >> 16; $add195 = (($mul186) + ($shr194))|0; $add196 = (($136) + ($add195))|0; $LPC_pred_Q10 = $add196; $143 = $LPC_pred_Q10; $144 = $i; $add197 = (16 + ($144))|0; $sub198 = (($add197) - 2)|0; $arrayidx199 = (($vla) + ($sub198<<2)|0); $145 = HEAP32[$arrayidx199>>2]|0; $shr200 = $145 >> 16; $arrayidx201 = ((($A_Q12)) + 2|0); $146 = HEAP16[$arrayidx201>>1]|0; $conv202 = $146 << 16 >> 16; $mul203 = Math_imul($shr200, $conv202)|0; $147 = $i; $add204 = (16 + ($147))|0; $sub205 = (($add204) - 2)|0; $arrayidx206 = (($vla) + ($sub205<<2)|0); $148 = HEAP32[$arrayidx206>>2]|0; $and207 = $148 & 65535; $arrayidx208 = ((($A_Q12)) + 2|0); $149 = HEAP16[$arrayidx208>>1]|0; $conv209 = $149 << 16 >> 16; $mul210 = Math_imul($and207, $conv209)|0; $shr211 = $mul210 >> 16; $add212 = (($mul203) + ($shr211))|0; $add213 = (($143) + ($add212))|0; $LPC_pred_Q10 = $add213; $150 = $LPC_pred_Q10; $151 = $i; $add214 = (16 + ($151))|0; $sub215 = (($add214) - 3)|0; $arrayidx216 = (($vla) + ($sub215<<2)|0); $152 = HEAP32[$arrayidx216>>2]|0; $shr217 = $152 >> 16; $arrayidx218 = ((($A_Q12)) + 4|0); $153 = HEAP16[$arrayidx218>>1]|0; $conv219 = $153 << 16 >> 16; $mul220 = Math_imul($shr217, $conv219)|0; $154 = $i; $add221 = (16 + ($154))|0; $sub222 = (($add221) - 3)|0; $arrayidx223 = (($vla) + ($sub222<<2)|0); $155 = HEAP32[$arrayidx223>>2]|0; $and224 = $155 & 65535; $arrayidx225 = ((($A_Q12)) + 4|0); $156 = HEAP16[$arrayidx225>>1]|0; $conv226 = $156 << 16 >> 16; $mul227 = Math_imul($and224, $conv226)|0; $shr228 = $mul227 >> 16; $add229 = (($mul220) + ($shr228))|0; $add230 = (($150) + ($add229))|0; $LPC_pred_Q10 = $add230; $157 = $LPC_pred_Q10; $158 = $i; $add231 = (16 + ($158))|0; $sub232 = (($add231) - 4)|0; $arrayidx233 = (($vla) + ($sub232<<2)|0); $159 = HEAP32[$arrayidx233>>2]|0; $shr234 = $159 >> 16; $arrayidx235 = ((($A_Q12)) + 6|0); $160 = HEAP16[$arrayidx235>>1]|0; $conv236 = $160 << 16 >> 16; $mul237 = Math_imul($shr234, $conv236)|0; $161 = $i; $add238 = (16 + ($161))|0; $sub239 = (($add238) - 4)|0; $arrayidx240 = (($vla) + ($sub239<<2)|0); $162 = HEAP32[$arrayidx240>>2]|0; $and241 = $162 & 65535; $arrayidx242 = ((($A_Q12)) + 6|0); $163 = HEAP16[$arrayidx242>>1]|0; $conv243 = $163 << 16 >> 16; $mul244 = Math_imul($and241, $conv243)|0; $shr245 = $mul244 >> 16; $add246 = (($mul237) + ($shr245))|0; $add247 = (($157) + ($add246))|0; $LPC_pred_Q10 = $add247; $164 = $LPC_pred_Q10; $165 = $i; $add248 = (16 + ($165))|0; $sub249 = (($add248) - 5)|0; $arrayidx250 = (($vla) + ($sub249<<2)|0); $166 = HEAP32[$arrayidx250>>2]|0; $shr251 = $166 >> 16; $arrayidx252 = ((($A_Q12)) + 8|0); $167 = HEAP16[$arrayidx252>>1]|0; $conv253 = $167 << 16 >> 16; $mul254 = Math_imul($shr251, $conv253)|0; $168 = $i; $add255 = (16 + ($168))|0; $sub256 = (($add255) - 5)|0; $arrayidx257 = (($vla) + ($sub256<<2)|0); $169 = HEAP32[$arrayidx257>>2]|0; $and258 = $169 & 65535; $arrayidx259 = ((($A_Q12)) + 8|0); $170 = HEAP16[$arrayidx259>>1]|0; $conv260 = $170 << 16 >> 16; $mul261 = Math_imul($and258, $conv260)|0; $shr262 = $mul261 >> 16; $add263 = (($mul254) + ($shr262))|0; $add264 = (($164) + ($add263))|0; $LPC_pred_Q10 = $add264; $171 = $LPC_pred_Q10; $172 = $i; $add265 = (16 + ($172))|0; $sub266 = (($add265) - 6)|0; $arrayidx267 = (($vla) + ($sub266<<2)|0); $173 = HEAP32[$arrayidx267>>2]|0; $shr268 = $173 >> 16; $arrayidx269 = ((($A_Q12)) + 10|0); $174 = HEAP16[$arrayidx269>>1]|0; $conv270 = $174 << 16 >> 16; $mul271 = Math_imul($shr268, $conv270)|0; $175 = $i; $add272 = (16 + ($175))|0; $sub273 = (($add272) - 6)|0; $arrayidx274 = (($vla) + ($sub273<<2)|0); $176 = HEAP32[$arrayidx274>>2]|0; $and275 = $176 & 65535; $arrayidx276 = ((($A_Q12)) + 10|0); $177 = HEAP16[$arrayidx276>>1]|0; $conv277 = $177 << 16 >> 16; $mul278 = Math_imul($and275, $conv277)|0; $shr279 = $mul278 >> 16; $add280 = (($mul271) + ($shr279))|0; $add281 = (($171) + ($add280))|0; $LPC_pred_Q10 = $add281; $178 = $LPC_pred_Q10; $179 = $i; $add282 = (16 + ($179))|0; $sub283 = (($add282) - 7)|0; $arrayidx284 = (($vla) + ($sub283<<2)|0); $180 = HEAP32[$arrayidx284>>2]|0; $shr285 = $180 >> 16; $arrayidx286 = ((($A_Q12)) + 12|0); $181 = HEAP16[$arrayidx286>>1]|0; $conv287 = $181 << 16 >> 16; $mul288 = Math_imul($shr285, $conv287)|0; $182 = $i; $add289 = (16 + ($182))|0; $sub290 = (($add289) - 7)|0; $arrayidx291 = (($vla) + ($sub290<<2)|0); $183 = HEAP32[$arrayidx291>>2]|0; $and292 = $183 & 65535; $arrayidx293 = ((($A_Q12)) + 12|0); $184 = HEAP16[$arrayidx293>>1]|0; $conv294 = $184 << 16 >> 16; $mul295 = Math_imul($and292, $conv294)|0; $shr296 = $mul295 >> 16; $add297 = (($mul288) + ($shr296))|0; $add298 = (($178) + ($add297))|0; $LPC_pred_Q10 = $add298; $185 = $LPC_pred_Q10; $186 = $i; $add299 = (16 + ($186))|0; $sub300 = (($add299) - 8)|0; $arrayidx301 = (($vla) + ($sub300<<2)|0); $187 = HEAP32[$arrayidx301>>2]|0; $shr302 = $187 >> 16; $arrayidx303 = ((($A_Q12)) + 14|0); $188 = HEAP16[$arrayidx303>>1]|0; $conv304 = $188 << 16 >> 16; $mul305 = Math_imul($shr302, $conv304)|0; $189 = $i; $add306 = (16 + ($189))|0; $sub307 = (($add306) - 8)|0; $arrayidx308 = (($vla) + ($sub307<<2)|0); $190 = HEAP32[$arrayidx308>>2]|0; $and309 = $190 & 65535; $arrayidx310 = ((($A_Q12)) + 14|0); $191 = HEAP16[$arrayidx310>>1]|0; $conv311 = $191 << 16 >> 16; $mul312 = Math_imul($and309, $conv311)|0; $shr313 = $mul312 >> 16; $add314 = (($mul305) + ($shr313))|0; $add315 = (($185) + ($add314))|0; $LPC_pred_Q10 = $add315; $192 = $LPC_pred_Q10; $193 = $i; $add316 = (16 + ($193))|0; $sub317 = (($add316) - 9)|0; $arrayidx318 = (($vla) + ($sub317<<2)|0); $194 = HEAP32[$arrayidx318>>2]|0; $shr319 = $194 >> 16; $arrayidx320 = ((($A_Q12)) + 16|0); $195 = HEAP16[$arrayidx320>>1]|0; $conv321 = $195 << 16 >> 16; $mul322 = Math_imul($shr319, $conv321)|0; $196 = $i; $add323 = (16 + ($196))|0; $sub324 = (($add323) - 9)|0; $arrayidx325 = (($vla) + ($sub324<<2)|0); $197 = HEAP32[$arrayidx325>>2]|0; $and326 = $197 & 65535; $arrayidx327 = ((($A_Q12)) + 16|0); $198 = HEAP16[$arrayidx327>>1]|0; $conv328 = $198 << 16 >> 16; $mul329 = Math_imul($and326, $conv328)|0; $shr330 = $mul329 >> 16; $add331 = (($mul322) + ($shr330))|0; $add332 = (($192) + ($add331))|0; $LPC_pred_Q10 = $add332; $199 = $LPC_pred_Q10; $200 = $i; $add333 = (16 + ($200))|0; $sub334 = (($add333) - 10)|0; $arrayidx335 = (($vla) + ($sub334<<2)|0); $201 = HEAP32[$arrayidx335>>2]|0; $shr336 = $201 >> 16; $arrayidx337 = ((($A_Q12)) + 18|0); $202 = HEAP16[$arrayidx337>>1]|0; $conv338 = $202 << 16 >> 16; $mul339 = Math_imul($shr336, $conv338)|0; $203 = $i; $add340 = (16 + ($203))|0; $sub341 = (($add340) - 10)|0; $arrayidx342 = (($vla) + ($sub341<<2)|0); $204 = HEAP32[$arrayidx342>>2]|0; $and343 = $204 & 65535; $arrayidx344 = ((($A_Q12)) + 18|0); $205 = HEAP16[$arrayidx344>>1]|0; $conv345 = $205 << 16 >> 16; $mul346 = Math_imul($and343, $conv345)|0; $shr347 = $mul346 >> 16; $add348 = (($mul339) + ($shr347))|0; $add349 = (($199) + ($add348))|0; $LPC_pred_Q10 = $add349; $206 = $psDec$addr; $LPC_order350 = ((($206)) + 2340|0); $207 = HEAP32[$LPC_order350>>2]|0; $cmp351 = ($207|0)==(16); if ($cmp351) { $208 = $LPC_pred_Q10; $209 = $i; $add354 = (16 + ($209))|0; $sub355 = (($add354) - 11)|0; $arrayidx356 = (($vla) + ($sub355<<2)|0); $210 = HEAP32[$arrayidx356>>2]|0; $shr357 = $210 >> 16; $arrayidx358 = ((($A_Q12)) + 20|0); $211 = HEAP16[$arrayidx358>>1]|0; $conv359 = $211 << 16 >> 16; $mul360 = Math_imul($shr357, $conv359)|0; $212 = $i; $add361 = (16 + ($212))|0; $sub362 = (($add361) - 11)|0; $arrayidx363 = (($vla) + ($sub362<<2)|0); $213 = HEAP32[$arrayidx363>>2]|0; $and364 = $213 & 65535; $arrayidx365 = ((($A_Q12)) + 20|0); $214 = HEAP16[$arrayidx365>>1]|0; $conv366 = $214 << 16 >> 16; $mul367 = Math_imul($and364, $conv366)|0; $shr368 = $mul367 >> 16; $add369 = (($mul360) + ($shr368))|0; $add370 = (($208) + ($add369))|0; $LPC_pred_Q10 = $add370; $215 = $LPC_pred_Q10; $216 = $i; $add371 = (16 + ($216))|0; $sub372 = (($add371) - 12)|0; $arrayidx373 = (($vla) + ($sub372<<2)|0); $217 = HEAP32[$arrayidx373>>2]|0; $shr374 = $217 >> 16; $arrayidx375 = ((($A_Q12)) + 22|0); $218 = HEAP16[$arrayidx375>>1]|0; $conv376 = $218 << 16 >> 16; $mul377 = Math_imul($shr374, $conv376)|0; $219 = $i; $add378 = (16 + ($219))|0; $sub379 = (($add378) - 12)|0; $arrayidx380 = (($vla) + ($sub379<<2)|0); $220 = HEAP32[$arrayidx380>>2]|0; $and381 = $220 & 65535; $arrayidx382 = ((($A_Q12)) + 22|0); $221 = HEAP16[$arrayidx382>>1]|0; $conv383 = $221 << 16 >> 16; $mul384 = Math_imul($and381, $conv383)|0; $shr385 = $mul384 >> 16; $add386 = (($mul377) + ($shr385))|0; $add387 = (($215) + ($add386))|0; $LPC_pred_Q10 = $add387; $222 = $LPC_pred_Q10; $223 = $i; $add388 = (16 + ($223))|0; $sub389 = (($add388) - 13)|0; $arrayidx390 = (($vla) + ($sub389<<2)|0); $224 = HEAP32[$arrayidx390>>2]|0; $shr391 = $224 >> 16; $arrayidx392 = ((($A_Q12)) + 24|0); $225 = HEAP16[$arrayidx392>>1]|0; $conv393 = $225 << 16 >> 16; $mul394 = Math_imul($shr391, $conv393)|0; $226 = $i; $add395 = (16 + ($226))|0; $sub396 = (($add395) - 13)|0; $arrayidx397 = (($vla) + ($sub396<<2)|0); $227 = HEAP32[$arrayidx397>>2]|0; $and398 = $227 & 65535; $arrayidx399 = ((($A_Q12)) + 24|0); $228 = HEAP16[$arrayidx399>>1]|0; $conv400 = $228 << 16 >> 16; $mul401 = Math_imul($and398, $conv400)|0; $shr402 = $mul401 >> 16; $add403 = (($mul394) + ($shr402))|0; $add404 = (($222) + ($add403))|0; $LPC_pred_Q10 = $add404; $229 = $LPC_pred_Q10; $230 = $i; $add405 = (16 + ($230))|0; $sub406 = (($add405) - 14)|0; $arrayidx407 = (($vla) + ($sub406<<2)|0); $231 = HEAP32[$arrayidx407>>2]|0; $shr408 = $231 >> 16; $arrayidx409 = ((($A_Q12)) + 26|0); $232 = HEAP16[$arrayidx409>>1]|0; $conv410 = $232 << 16 >> 16; $mul411 = Math_imul($shr408, $conv410)|0; $233 = $i; $add412 = (16 + ($233))|0; $sub413 = (($add412) - 14)|0; $arrayidx414 = (($vla) + ($sub413<<2)|0); $234 = HEAP32[$arrayidx414>>2]|0; $and415 = $234 & 65535; $arrayidx416 = ((($A_Q12)) + 26|0); $235 = HEAP16[$arrayidx416>>1]|0; $conv417 = $235 << 16 >> 16; $mul418 = Math_imul($and415, $conv417)|0; $shr419 = $mul418 >> 16; $add420 = (($mul411) + ($shr419))|0; $add421 = (($229) + ($add420))|0; $LPC_pred_Q10 = $add421; $236 = $LPC_pred_Q10; $237 = $i; $add422 = (16 + ($237))|0; $sub423 = (($add422) - 15)|0; $arrayidx424 = (($vla) + ($sub423<<2)|0); $238 = HEAP32[$arrayidx424>>2]|0; $shr425 = $238 >> 16; $arrayidx426 = ((($A_Q12)) + 28|0); $239 = HEAP16[$arrayidx426>>1]|0; $conv427 = $239 << 16 >> 16; $mul428 = Math_imul($shr425, $conv427)|0; $240 = $i; $add429 = (16 + ($240))|0; $sub430 = (($add429) - 15)|0; $arrayidx431 = (($vla) + ($sub430<<2)|0); $241 = HEAP32[$arrayidx431>>2]|0; $and432 = $241 & 65535; $arrayidx433 = ((($A_Q12)) + 28|0); $242 = HEAP16[$arrayidx433>>1]|0; $conv434 = $242 << 16 >> 16; $mul435 = Math_imul($and432, $conv434)|0; $shr436 = $mul435 >> 16; $add437 = (($mul428) + ($shr436))|0; $add438 = (($236) + ($add437))|0; $LPC_pred_Q10 = $add438; $243 = $LPC_pred_Q10; $244 = $i; $add439 = (16 + ($244))|0; $sub440 = (($add439) - 16)|0; $arrayidx441 = (($vla) + ($sub440<<2)|0); $245 = HEAP32[$arrayidx441>>2]|0; $shr442 = $245 >> 16; $arrayidx443 = ((($A_Q12)) + 30|0); $246 = HEAP16[$arrayidx443>>1]|0; $conv444 = $246 << 16 >> 16; $mul445 = Math_imul($shr442, $conv444)|0; $247 = $i; $add446 = (16 + ($247))|0; $sub447 = (($add446) - 16)|0; $arrayidx448 = (($vla) + ($sub447<<2)|0); $248 = HEAP32[$arrayidx448>>2]|0; $and449 = $248 & 65535; $arrayidx450 = ((($A_Q12)) + 30|0); $249 = HEAP16[$arrayidx450>>1]|0; $conv451 = $249 << 16 >> 16; $mul452 = Math_imul($and449, $conv451)|0; $shr453 = $mul452 >> 16; $add454 = (($mul445) + ($shr453))|0; $add455 = (($243) + ($add454))|0; $LPC_pred_Q10 = $add455; } $250 = $i; $add457 = (16 + ($250))|0; $arrayidx458 = (($vla) + ($add457<<2)|0); $251 = HEAP32[$arrayidx458>>2]|0; $252 = $LPC_pred_Q10; $cmp459 = ($252|0)>(134217727); if ($cmp459) { $cond466 = 134217727; } else { $253 = $LPC_pred_Q10; $cmp461 = ($253|0)<(-134217728); $254 = $LPC_pred_Q10; $cond = $cmp461 ? -134217728 : $254; $cond466 = $cond; } $shl467 = $cond466 << 4; $add468 = (($251) + ($shl467))|0; $and469 = $add468 & -2147483648; $cmp470 = ($and469|0)==(0); $255 = $i; $add473 = (16 + ($255))|0; $arrayidx474 = (($vla) + ($add473<<2)|0); $256 = HEAP32[$arrayidx474>>2]|0; $257 = $LPC_pred_Q10; $cmp475 = ($257|0)>(134217727); if ($cmp470) { if ($cmp475) { $cond486 = 134217727; } else { $258 = $LPC_pred_Q10; $cmp479 = ($258|0)<(-134217728); $259 = $LPC_pred_Q10; $cond484 = $cmp479 ? -134217728 : $259; $cond486 = $cond484; } $shl487 = $cond486 << 4; $and488 = $256 & $shl487; $and489 = $and488 & -2147483648; $cmp490 = ($and489|0)!=(0); if ($cmp490) { $cond552 = -2147483648; } else { $260 = $i; $add494 = (16 + ($260))|0; $arrayidx495 = (($vla) + ($add494<<2)|0); $261 = HEAP32[$arrayidx495>>2]|0; $262 = $LPC_pred_Q10; $cmp496 = ($262|0)>(134217727); if ($cmp496) { $cond507 = 134217727; } else { $263 = $LPC_pred_Q10; $cmp500 = ($263|0)<(-134217728); $264 = $LPC_pred_Q10; $cond505 = $cmp500 ? -134217728 : $264; $cond507 = $cond505; } $shl508 = $cond507 << 4; $add509 = (($261) + ($shl508))|0; $cond552 = $add509; } } else { if ($cmp475) { $cond526 = 134217727; } else { $265 = $LPC_pred_Q10; $cmp519 = ($265|0)<(-134217728); $266 = $LPC_pred_Q10; $cond524 = $cmp519 ? -134217728 : $266; $cond526 = $cond524; } $shl527 = $cond526 << 4; $or = $256 | $shl527; $and528 = $or & -2147483648; $cmp529 = ($and528|0)==(0); if ($cmp529) { $cond552 = 2147483647; } else { $267 = $i; $add533 = (16 + ($267))|0; $arrayidx534 = (($vla) + ($add533<<2)|0); $268 = HEAP32[$arrayidx534>>2]|0; $269 = $LPC_pred_Q10; $cmp535 = ($269|0)>(134217727); if ($cmp535) { $cond546 = 134217727; } else { $270 = $LPC_pred_Q10; $cmp539 = ($270|0)<(-134217728); $271 = $LPC_pred_Q10; $cond544 = $cmp539 ? -134217728 : $271; $cond546 = $cond544; } $shl547 = $cond546 << 4; $add548 = (($268) + ($shl547))|0; $cond552 = $add548; } } $272 = $i; $add553 = (16 + ($272))|0; $arrayidx554 = (($vla) + ($add553<<2)|0); HEAP32[$arrayidx554>>2] = $cond552; $273 = $frame$addr; $274 = $i; $arrayidx555 = (($273) + ($274<<1)|0); $275 = HEAP16[$arrayidx555>>1]|0; $conv556 = $275 << 16 >> 16; $276 = $i; $add557 = (16 + ($276))|0; $arrayidx558 = (($vla) + ($add557<<2)|0); $277 = HEAP32[$arrayidx558>>2]|0; $shr559 = $277 >> 16; $278 = $gain_Q10; $conv560 = $278&65535; $conv561 = $conv560 << 16 >> 16; $mul562 = Math_imul($shr559, $conv561)|0; $279 = $i; $add563 = (16 + ($279))|0; $arrayidx564 = (($vla) + ($add563<<2)|0); $280 = HEAP32[$arrayidx564>>2]|0; $and565 = $280 & 65535; $281 = $gain_Q10; $conv566 = $281&65535; $conv567 = $conv566 << 16 >> 16; $mul568 = Math_imul($and565, $conv567)|0; $shr569 = $mul568 >> 16; $add570 = (($mul562) + ($shr569))|0; $282 = $i; $add571 = (16 + ($282))|0; $arrayidx572 = (($vla) + ($add571<<2)|0); $283 = HEAP32[$arrayidx572>>2]|0; $284 = $gain_Q10; $shr573 = $284 >> 15; $add574 = (($shr573) + 1)|0; $shr575 = $add574 >> 1; $mul576 = Math_imul($283, $shr575)|0; $add577 = (($add570) + ($mul576))|0; $shr578 = $add577 >> 7; $add579 = (($shr578) + 1)|0; $shr580 = $add579 >> 1; $cmp581 = ($shr580|0)>(32767); if ($cmp581) { $cond640 = 32767; } else { $285 = $i; $add585 = (16 + ($285))|0; $arrayidx586 = (($vla) + ($add585<<2)|0); $286 = HEAP32[$arrayidx586>>2]|0; $shr587 = $286 >> 16; $287 = $gain_Q10; $conv588 = $287&65535; $conv589 = $conv588 << 16 >> 16; $mul590 = Math_imul($shr587, $conv589)|0; $288 = $i; $add591 = (16 + ($288))|0; $arrayidx592 = (($vla) + ($add591<<2)|0); $289 = HEAP32[$arrayidx592>>2]|0; $and593 = $289 & 65535; $290 = $gain_Q10; $conv594 = $290&65535; $conv595 = $conv594 << 16 >> 16; $mul596 = Math_imul($and593, $conv595)|0; $shr597 = $mul596 >> 16; $add598 = (($mul590) + ($shr597))|0; $291 = $i; $add599 = (16 + ($291))|0; $arrayidx600 = (($vla) + ($add599<<2)|0); $292 = HEAP32[$arrayidx600>>2]|0; $293 = $gain_Q10; $shr601 = $293 >> 15; $add602 = (($shr601) + 1)|0; $shr603 = $add602 >> 1; $mul604 = Math_imul($292, $shr603)|0; $add605 = (($add598) + ($mul604))|0; $shr606 = $add605 >> 7; $add607 = (($shr606) + 1)|0; $shr608 = $add607 >> 1; $cmp609 = ($shr608|0)<(-32768); if ($cmp609) { $cond640 = -32768; } else { $294 = $i; $add613 = (16 + ($294))|0; $arrayidx614 = (($vla) + ($add613<<2)|0); $295 = HEAP32[$arrayidx614>>2]|0; $shr615 = $295 >> 16; $296 = $gain_Q10; $conv616 = $296&65535; $conv617 = $conv616 << 16 >> 16; $mul618 = Math_imul($shr615, $conv617)|0; $297 = $i; $add619 = (16 + ($297))|0; $arrayidx620 = (($vla) + ($add619<<2)|0); $298 = HEAP32[$arrayidx620>>2]|0; $and621 = $298 & 65535; $299 = $gain_Q10; $conv622 = $299&65535; $conv623 = $conv622 << 16 >> 16; $mul624 = Math_imul($and621, $conv623)|0; $shr625 = $mul624 >> 16; $add626 = (($mul618) + ($shr625))|0; $300 = $i; $add627 = (16 + ($300))|0; $arrayidx628 = (($vla) + ($add627<<2)|0); $301 = HEAP32[$arrayidx628>>2]|0; $302 = $gain_Q10; $shr629 = $302 >> 15; $add630 = (($shr629) + 1)|0; $shr631 = $add630 >> 1; $mul632 = Math_imul($301, $shr631)|0; $add633 = (($add626) + ($mul632))|0; $shr634 = $add633 >> 7; $add635 = (($shr634) + 1)|0; $shr636 = $add635 >> 1; $cond640 = $shr636; } } $add641 = (($conv556) + ($cond640))|0; $cmp642 = ($add641|0)>(32767); if ($cmp642) { $cond827 = 32767; } else { $303 = $frame$addr; $304 = $i; $arrayidx646 = (($303) + ($304<<1)|0); $305 = HEAP16[$arrayidx646>>1]|0; $conv647 = $305 << 16 >> 16; $306 = $i; $add648 = (16 + ($306))|0; $arrayidx649 = (($vla) + ($add648<<2)|0); $307 = HEAP32[$arrayidx649>>2]|0; $shr650 = $307 >> 16; $308 = $gain_Q10; $conv651 = $308&65535; $conv652 = $conv651 << 16 >> 16; $mul653 = Math_imul($shr650, $conv652)|0; $309 = $i; $add654 = (16 + ($309))|0; $arrayidx655 = (($vla) + ($add654<<2)|0); $310 = HEAP32[$arrayidx655>>2]|0; $and656 = $310 & 65535; $311 = $gain_Q10; $conv657 = $311&65535; $conv658 = $conv657 << 16 >> 16; $mul659 = Math_imul($and656, $conv658)|0; $shr660 = $mul659 >> 16; $add661 = (($mul653) + ($shr660))|0; $312 = $i; $add662 = (16 + ($312))|0; $arrayidx663 = (($vla) + ($add662<<2)|0); $313 = HEAP32[$arrayidx663>>2]|0; $314 = $gain_Q10; $shr664 = $314 >> 15; $add665 = (($shr664) + 1)|0; $shr666 = $add665 >> 1; $mul667 = Math_imul($313, $shr666)|0; $add668 = (($add661) + ($mul667))|0; $shr669 = $add668 >> 7; $add670 = (($shr669) + 1)|0; $shr671 = $add670 >> 1; $cmp672 = ($shr671|0)>(32767); if ($cmp672) { $cond731 = 32767; } else { $315 = $i; $add676 = (16 + ($315))|0; $arrayidx677 = (($vla) + ($add676<<2)|0); $316 = HEAP32[$arrayidx677>>2]|0; $shr678 = $316 >> 16; $317 = $gain_Q10; $conv679 = $317&65535; $conv680 = $conv679 << 16 >> 16; $mul681 = Math_imul($shr678, $conv680)|0; $318 = $i; $add682 = (16 + ($318))|0; $arrayidx683 = (($vla) + ($add682<<2)|0); $319 = HEAP32[$arrayidx683>>2]|0; $and684 = $319 & 65535; $320 = $gain_Q10; $conv685 = $320&65535; $conv686 = $conv685 << 16 >> 16; $mul687 = Math_imul($and684, $conv686)|0; $shr688 = $mul687 >> 16; $add689 = (($mul681) + ($shr688))|0; $321 = $i; $add690 = (16 + ($321))|0; $arrayidx691 = (($vla) + ($add690<<2)|0); $322 = HEAP32[$arrayidx691>>2]|0; $323 = $gain_Q10; $shr692 = $323 >> 15; $add693 = (($shr692) + 1)|0; $shr694 = $add693 >> 1; $mul695 = Math_imul($322, $shr694)|0; $add696 = (($add689) + ($mul695))|0; $shr697 = $add696 >> 7; $add698 = (($shr697) + 1)|0; $shr699 = $add698 >> 1; $cmp700 = ($shr699|0)<(-32768); if ($cmp700) { $cond731 = -32768; } else { $324 = $i; $add704 = (16 + ($324))|0; $arrayidx705 = (($vla) + ($add704<<2)|0); $325 = HEAP32[$arrayidx705>>2]|0; $shr706 = $325 >> 16; $326 = $gain_Q10; $conv707 = $326&65535; $conv708 = $conv707 << 16 >> 16; $mul709 = Math_imul($shr706, $conv708)|0; $327 = $i; $add710 = (16 + ($327))|0; $arrayidx711 = (($vla) + ($add710<<2)|0); $328 = HEAP32[$arrayidx711>>2]|0; $and712 = $328 & 65535; $329 = $gain_Q10; $conv713 = $329&65535; $conv714 = $conv713 << 16 >> 16; $mul715 = Math_imul($and712, $conv714)|0; $shr716 = $mul715 >> 16; $add717 = (($mul709) + ($shr716))|0; $330 = $i; $add718 = (16 + ($330))|0; $arrayidx719 = (($vla) + ($add718<<2)|0); $331 = HEAP32[$arrayidx719>>2]|0; $332 = $gain_Q10; $shr720 = $332 >> 15; $add721 = (($shr720) + 1)|0; $shr722 = $add721 >> 1; $mul723 = Math_imul($331, $shr722)|0; $add724 = (($add717) + ($mul723))|0; $shr725 = $add724 >> 7; $add726 = (($shr725) + 1)|0; $shr727 = $add726 >> 1; $cond731 = $shr727; } } $add732 = (($conv647) + ($cond731))|0; $cmp733 = ($add732|0)<(-32768); if ($cmp733) { $cond827 = -32768; } else { $333 = $frame$addr; $334 = $i; $arrayidx737 = (($333) + ($334<<1)|0); $335 = HEAP16[$arrayidx737>>1]|0; $conv738 = $335 << 16 >> 16; $336 = $i; $add739 = (16 + ($336))|0; $arrayidx740 = (($vla) + ($add739<<2)|0); $337 = HEAP32[$arrayidx740>>2]|0; $shr741 = $337 >> 16; $338 = $gain_Q10; $conv742 = $338&65535; $conv743 = $conv742 << 16 >> 16; $mul744 = Math_imul($shr741, $conv743)|0; $339 = $i; $add745 = (16 + ($339))|0; $arrayidx746 = (($vla) + ($add745<<2)|0); $340 = HEAP32[$arrayidx746>>2]|0; $and747 = $340 & 65535; $341 = $gain_Q10; $conv748 = $341&65535; $conv749 = $conv748 << 16 >> 16; $mul750 = Math_imul($and747, $conv749)|0; $shr751 = $mul750 >> 16; $add752 = (($mul744) + ($shr751))|0; $342 = $i; $add753 = (16 + ($342))|0; $arrayidx754 = (($vla) + ($add753<<2)|0); $343 = HEAP32[$arrayidx754>>2]|0; $344 = $gain_Q10; $shr755 = $344 >> 15; $add756 = (($shr755) + 1)|0; $shr757 = $add756 >> 1; $mul758 = Math_imul($343, $shr757)|0; $add759 = (($add752) + ($mul758))|0; $shr760 = $add759 >> 7; $add761 = (($shr760) + 1)|0; $shr762 = $add761 >> 1; $cmp763 = ($shr762|0)>(32767); if ($cmp763) { $cond822 = 32767; } else { $345 = $i; $add767 = (16 + ($345))|0; $arrayidx768 = (($vla) + ($add767<<2)|0); $346 = HEAP32[$arrayidx768>>2]|0; $shr769 = $346 >> 16; $347 = $gain_Q10; $conv770 = $347&65535; $conv771 = $conv770 << 16 >> 16; $mul772 = Math_imul($shr769, $conv771)|0; $348 = $i; $add773 = (16 + ($348))|0; $arrayidx774 = (($vla) + ($add773<<2)|0); $349 = HEAP32[$arrayidx774>>2]|0; $and775 = $349 & 65535; $350 = $gain_Q10; $conv776 = $350&65535; $conv777 = $conv776 << 16 >> 16; $mul778 = Math_imul($and775, $conv777)|0; $shr779 = $mul778 >> 16; $add780 = (($mul772) + ($shr779))|0; $351 = $i; $add781 = (16 + ($351))|0; $arrayidx782 = (($vla) + ($add781<<2)|0); $352 = HEAP32[$arrayidx782>>2]|0; $353 = $gain_Q10; $shr783 = $353 >> 15; $add784 = (($shr783) + 1)|0; $shr785 = $add784 >> 1; $mul786 = Math_imul($352, $shr785)|0; $add787 = (($add780) + ($mul786))|0; $shr788 = $add787 >> 7; $add789 = (($shr788) + 1)|0; $shr790 = $add789 >> 1; $cmp791 = ($shr790|0)<(-32768); if ($cmp791) { $cond822 = -32768; } else { $354 = $i; $add795 = (16 + ($354))|0; $arrayidx796 = (($vla) + ($add795<<2)|0); $355 = HEAP32[$arrayidx796>>2]|0; $shr797 = $355 >> 16; $356 = $gain_Q10; $conv798 = $356&65535; $conv799 = $conv798 << 16 >> 16; $mul800 = Math_imul($shr797, $conv799)|0; $357 = $i; $add801 = (16 + ($357))|0; $arrayidx802 = (($vla) + ($add801<<2)|0); $358 = HEAP32[$arrayidx802>>2]|0; $and803 = $358 & 65535; $359 = $gain_Q10; $conv804 = $359&65535; $conv805 = $conv804 << 16 >> 16; $mul806 = Math_imul($and803, $conv805)|0; $shr807 = $mul806 >> 16; $add808 = (($mul800) + ($shr807))|0; $360 = $i; $add809 = (16 + ($360))|0; $arrayidx810 = (($vla) + ($add809<<2)|0); $361 = HEAP32[$arrayidx810>>2]|0; $362 = $gain_Q10; $shr811 = $362 >> 15; $add812 = (($shr811) + 1)|0; $shr813 = $add812 >> 1; $mul814 = Math_imul($361, $shr813)|0; $add815 = (($add808) + ($mul814))|0; $shr816 = $add815 >> 7; $add817 = (($shr816) + 1)|0; $shr818 = $add817 >> 1; $cond822 = $shr818; } } $add823 = (($conv738) + ($cond822))|0; $cond827 = $add823; } } $conv828 = $cond827&65535; $363 = $frame$addr; $364 = $i; $arrayidx829 = (($363) + ($364<<1)|0); HEAP16[$arrayidx829>>1] = $conv828; $365 = $i; $inc831 = (($365) + 1)|0; $i = $inc831; } $366 = $psCNG; $CNG_synth_state833 = ((($366)) + 1312|0); $367 = $length$addr; $arrayidx835 = (($vla) + ($367<<2)|0); dest=$CNG_synth_state833; src=$arrayidx835; stop=dest+64|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); $368 = $saved_stack; _llvm_stackrestore(($368|0)); STACKTOP = sp;return; } function _silk_SQRT_APPROX_546($x) { $x = $x|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $add17 = 0, $and = 0, $and9 = 0, $cmp = 0, $conv = 0, $conv10 = 0, $conv11 = 0; var $conv13 = 0, $conv14 = 0, $conv5 = 0, $conv6 = 0, $conv7 = 0, $frac_Q7 = 0, $lz = 0, $mul = 0, $mul12 = 0, $mul15 = 0, $mul8 = 0, $retval = 0, $shr = 0, $shr16 = 0, $shr3 = 0, $shr4 = 0, $tobool = 0, $x$addr = 0, $y = 0, label = 0; var sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $lz = sp + 4|0; $frac_Q7 = sp; $x$addr = $x; $0 = $x$addr; $cmp = ($0|0)<=(0); if ($cmp) { $retval = 0; $11 = $retval; STACKTOP = sp;return ($11|0); } $1 = $x$addr; _silk_CLZ_FRAC_547($1,$lz,$frac_Q7); $2 = HEAP32[$lz>>2]|0; $and = $2 & 1; $tobool = ($and|0)!=(0); if ($tobool) { $y = 32768; } else { $y = 46214; } $3 = HEAP32[$lz>>2]|0; $shr = $3 >> 1; $4 = $y; $shr3 = $4 >> $shr; $y = $shr3; $5 = $y; $6 = $y; $shr4 = $6 >> 16; $7 = HEAP32[$frac_Q7>>2]|0; $conv = $7&65535; $conv5 = $conv << 16 >> 16; $mul = ($conv5*213)|0; $conv6 = $mul&65535; $conv7 = $conv6 << 16 >> 16; $mul8 = Math_imul($shr4, $conv7)|0; $8 = $y; $and9 = $8 & 65535; $9 = HEAP32[$frac_Q7>>2]|0; $conv10 = $9&65535; $conv11 = $conv10 << 16 >> 16; $mul12 = ($conv11*213)|0; $conv13 = $mul12&65535; $conv14 = $conv13 << 16 >> 16; $mul15 = Math_imul($and9, $conv14)|0; $shr16 = $mul15 >> 16; $add = (($mul8) + ($shr16))|0; $add17 = (($5) + ($add))|0; $y = $add17; $10 = $y; $retval = $10; $11 = $retval; STACKTOP = sp;return ($11|0); } function _silk_CNG_exc($exc_Q14,$exc_buf_Q14,$length,$rand_seed) { $exc_Q14 = $exc_Q14|0; $exc_buf_Q14 = $exc_buf_Q14|0; $length = $length|0; $rand_seed = $rand_seed|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $and = 0, $arrayidx = 0; var $arrayidx3 = 0, $cmp = 0, $cmp1 = 0, $exc_Q14$addr = 0, $exc_buf_Q14$addr = 0, $exc_mask = 0, $i = 0, $idx = 0, $inc = 0, $length$addr = 0, $mul = 0, $rand_seed$addr = 0, $seed = 0, $shr = 0, $shr2 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $exc_Q14$addr = $exc_Q14; $exc_buf_Q14$addr = $exc_buf_Q14; $length$addr = $length; $rand_seed$addr = $rand_seed; $exc_mask = 255; while(1) { $0 = $exc_mask; $1 = $length$addr; $cmp = ($0|0)>($1|0); if (!($cmp)) { break; } $2 = $exc_mask; $shr = $2 >> 1; $exc_mask = $shr; } $3 = $rand_seed$addr; $4 = HEAP32[$3>>2]|0; $seed = $4; $i = 0; while(1) { $5 = $i; $6 = $length$addr; $cmp1 = ($5|0)<($6|0); $7 = $seed; if (!($cmp1)) { break; } $mul = Math_imul($7, 196314165)|0; $add = (907633515 + ($mul))|0; $seed = $add; $8 = $seed; $shr2 = $8 >> 24; $9 = $exc_mask; $and = $shr2 & $9; $idx = $and; $10 = $exc_buf_Q14$addr; $11 = $idx; $arrayidx = (($10) + ($11<<2)|0); $12 = HEAP32[$arrayidx>>2]|0; $13 = $exc_Q14$addr; $14 = $i; $arrayidx3 = (($13) + ($14<<2)|0); HEAP32[$arrayidx3>>2] = $12; $15 = $i; $inc = (($15) + 1)|0; $i = $inc; } $16 = $rand_seed$addr; HEAP32[$16>>2] = $7; STACKTOP = sp;return; } function _silk_CLZ_FRAC_547($in,$lz,$frac_Q7) { $in = $in|0; $lz = $lz|0; $frac_Q7 = $frac_Q7|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $and = 0, $call = 0, $call1 = 0, $frac_Q7$addr = 0, $in$addr = 0, $lz$addr = 0, $lzeros = 0, $sub = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $in$addr = $in; $lz$addr = $lz; $frac_Q7$addr = $frac_Q7; $0 = $in$addr; $call = (_silk_CLZ32_548($0)|0); $lzeros = $call; $1 = $lzeros; $2 = $lz$addr; HEAP32[$2>>2] = $1; $3 = $in$addr; $4 = $lzeros; $sub = (24 - ($4))|0; $call1 = (_silk_ROR32_549($3,$sub)|0); $and = $call1 & 127; $5 = $frac_Q7$addr; HEAP32[$5>>2] = $and; STACKTOP = sp;return; } function _silk_CLZ32_548($in32) { $in32 = $in32|0; var $0 = 0, $1 = 0, $2 = 0, $cond = 0, $in32$addr = 0, $sub = 0, $sub1 = 0, $tobool = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $in32$addr = $in32; $0 = $in32$addr; $tobool = ($0|0)!=(0); if (!($tobool)) { $cond = 32; STACKTOP = sp;return ($cond|0); } $1 = $in32$addr; $2 = (Math_clz32(($1|0))|0); $sub = (32 - ($2))|0; $sub1 = (32 - ($sub))|0; $cond = $sub1; STACKTOP = sp;return ($cond|0); } function _silk_ROR32_549($a32,$rot) { $a32 = $a32|0; $rot = $rot|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $a32$addr = 0, $cmp = 0, $cmp1 = 0, $m = 0, $or = 0, $or8 = 0; var $r = 0, $retval = 0, $rot$addr = 0, $shl = 0, $shl6 = 0, $shr = 0, $shr7 = 0, $sub = 0, $sub3 = 0, $sub5 = 0, $x = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $a32$addr = $a32; $rot$addr = $rot; $0 = $a32$addr; $x = $0; $1 = $rot$addr; $r = $1; $2 = $rot$addr; $sub = (0 - ($2))|0; $m = $sub; $3 = $rot$addr; $cmp = ($3|0)==(0); if ($cmp) { $4 = $a32$addr; $retval = $4; $13 = $retval; STACKTOP = sp;return ($13|0); } $5 = $rot$addr; $cmp1 = ($5|0)<(0); $6 = $x; if ($cmp1) { $7 = $m; $shl = $6 << $7; $8 = $x; $9 = $m; $sub3 = (32 - ($9))|0; $shr = $8 >>> $sub3; $or = $shl | $shr; $retval = $or; $13 = $retval; STACKTOP = sp;return ($13|0); } else { $10 = $r; $sub5 = (32 - ($10))|0; $shl6 = $6 << $sub5; $11 = $x; $12 = $r; $shr7 = $11 >>> $12; $or8 = $shl6 | $shr7; $retval = $or8; $13 = $retval; STACKTOP = sp;return ($13|0); } return (0)|0; } function _silk_decode_core($psDec,$psDecCtrl,$xq,$pulses,$arch) { $psDec = $psDec|0; $psDecCtrl = $psDecCtrl|0; $xq = $xq|0; $pulses = $pulses|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $44 = 0, $45 = 0; var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0; var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0; var $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $A_Q12 = 0; var $A_Q12_tmp = 0, $B_Q14 = 0, $Gain_Q10 = 0, $Gains_Q16 = 0, $Gains_Q16114 = 0, $Gains_Q1676 = 0, $Gains_Q1678 = 0, $Gains_Q1684 = 0, $LPC_order = 0, $LPC_order146 = 0, $LPC_order166 = 0, $LPC_order346 = 0, $LPC_order518 = 0, $LPC_pred_Q10 = 0, $LTPCoef_Q14 = 0, $LTP_pred_Q13 = 0, $LTP_scale_Q14 = 0, $LTP_scale_Q14175 = 0, $NLSFInterpCoef_Q2 = 0, $NLSF_interpolation_flag = 0; var $PredCoef_Q12 = 0, $Seed = 0, $add = 0, $add$ptr = 0, $add$ptr811 = 0, $add101 = 0, $add104 = 0, $add107 = 0, $add162 = 0, $add180 = 0, $add184 = 0, $add19 = 0, $add203 = 0, $add215 = 0, $add234 = 0, $add239 = 0, $add242 = 0, $add256 = 0, $add274 = 0, $add275 = 0; var $add287 = 0, $add288 = 0, $add300 = 0, $add301 = 0, $add313 = 0, $add314 = 0, $add326 = 0, $add327 = 0, $add330 = 0, $add348 = 0, $add355 = 0, $add363 = 0, $add364 = 0, $add365 = 0, $add372 = 0, $add38 = 0, $add380 = 0, $add381 = 0, $add382 = 0, $add389 = 0; var $add397 = 0, $add398 = 0, $add399 = 0, $add406 = 0, $add414 = 0, $add415 = 0, $add416 = 0, $add423 = 0, $add431 = 0, $add432 = 0, $add433 = 0, $add44 = 0, $add440 = 0, $add448 = 0, $add449 = 0, $add450 = 0, $add457 = 0, $add465 = 0, $add466 = 0, $add467 = 0; var $add474 = 0, $add482 = 0, $add483 = 0, $add484 = 0, $add491 = 0, $add499 = 0, $add5 = 0, $add500 = 0, $add501 = 0, $add508 = 0, $add516 = 0, $add517 = 0, $add522 = 0, $add529 = 0, $add537 = 0, $add538 = 0, $add539 = 0, $add546 = 0, $add554 = 0, $add555 = 0; var $add556 = 0, $add56 = 0, $add563 = 0, $add571 = 0, $add572 = 0, $add573 = 0, $add580 = 0, $add588 = 0, $add589 = 0, $add590 = 0, $add597 = 0, $add605 = 0, $add606 = 0, $add607 = 0, $add614 = 0, $add622 = 0, $add623 = 0, $add635 = 0, $add674 = 0, $add711 = 0; var $add716 = 0, $add718 = 0, $add724 = 0, $add731 = 0, $add732 = 0, $add735 = 0, $add738 = 0, $add740 = 0, $add746 = 0, $add752 = 0, $add759 = 0, $add760 = 0, $add763 = 0, $add766 = 0, $add768 = 0, $add774 = 0, $add780 = 0, $add787 = 0, $add788 = 0, $add791 = 0; var $add794 = 0, $add796 = 0, $and = 0, $and174 = 0, $and195 = 0, $and226 = 0, $and269 = 0, $and282 = 0, $and295 = 0, $and308 = 0, $and321 = 0, $and358 = 0, $and375 = 0, $and392 = 0, $and409 = 0, $and426 = 0, $and443 = 0, $and460 = 0, $and477 = 0, $and494 = 0; var $and511 = 0, $and532 = 0, $and549 = 0, $and566 = 0, $and583 = 0, $and600 = 0, $and617 = 0, $and636 = 0, $and654 = 0, $and655 = 0, $and692 = 0, $and726 = 0, $and754 = 0, $and782 = 0, $arch$addr = 0, $arrayidx = 0, $arrayidx102 = 0, $arrayidx108 = 0, $arrayidx115 = 0, $arrayidx129 = 0; var $arrayidx130 = 0, $arrayidx136 = 0, $arrayidx153 = 0, $arrayidx158 = 0, $arrayidx163 = 0, $arrayidx192 = 0, $arrayidx199 = 0, $arrayidx20 = 0, $arrayidx206 = 0, $arrayidx22 = 0, $arrayidx222 = 0, $arrayidx229 = 0, $arrayidx237 = 0, $arrayidx24 = 0, $arrayidx245 = 0, $arrayidx257 = 0, $arrayidx276 = 0, $arrayidx278 = 0, $arrayidx281 = 0, $arrayidx283 = 0; var $arrayidx289 = 0, $arrayidx29 = 0, $arrayidx291 = 0, $arrayidx294 = 0, $arrayidx296 = 0, $arrayidx302 = 0, $arrayidx304 = 0, $arrayidx307 = 0, $arrayidx309 = 0, $arrayidx315 = 0, $arrayidx317 = 0, $arrayidx320 = 0, $arrayidx322 = 0, $arrayidx328 = 0, $arrayidx331 = 0, $arrayidx332 = 0, $arrayidx334 = 0, $arrayidx350 = 0, $arrayidx357 = 0, $arrayidx367 = 0; var $arrayidx369 = 0, $arrayidx37 = 0, $arrayidx374 = 0, $arrayidx376 = 0, $arrayidx384 = 0, $arrayidx386 = 0, $arrayidx391 = 0, $arrayidx393 = 0, $arrayidx401 = 0, $arrayidx403 = 0, $arrayidx408 = 0, $arrayidx410 = 0, $arrayidx418 = 0, $arrayidx420 = 0, $arrayidx425 = 0, $arrayidx427 = 0, $arrayidx43 = 0, $arrayidx435 = 0, $arrayidx437 = 0, $arrayidx442 = 0; var $arrayidx444 = 0, $arrayidx452 = 0, $arrayidx454 = 0, $arrayidx459 = 0, $arrayidx461 = 0, $arrayidx469 = 0, $arrayidx471 = 0, $arrayidx476 = 0, $arrayidx478 = 0, $arrayidx486 = 0, $arrayidx488 = 0, $arrayidx49 = 0, $arrayidx493 = 0, $arrayidx495 = 0, $arrayidx503 = 0, $arrayidx505 = 0, $arrayidx510 = 0, $arrayidx512 = 0, $arrayidx52 = 0, $arrayidx524 = 0; var $arrayidx526 = 0, $arrayidx531 = 0, $arrayidx533 = 0, $arrayidx54 = 0, $arrayidx541 = 0, $arrayidx543 = 0, $arrayidx548 = 0, $arrayidx550 = 0, $arrayidx558 = 0, $arrayidx560 = 0, $arrayidx565 = 0, $arrayidx567 = 0, $arrayidx575 = 0, $arrayidx577 = 0, $arrayidx582 = 0, $arrayidx584 = 0, $arrayidx592 = 0, $arrayidx594 = 0, $arrayidx599 = 0, $arrayidx601 = 0; var $arrayidx609 = 0, $arrayidx611 = 0, $arrayidx616 = 0, $arrayidx618 = 0, $arrayidx625 = 0, $arrayidx640 = 0, $arrayidx65 = 0, $arrayidx660 = 0, $arrayidx697 = 0, $arrayidx70 = 0, $arrayidx717 = 0, $arrayidx719 = 0, $arrayidx725 = 0, $arrayidx733 = 0, $arrayidx74 = 0, $arrayidx747 = 0, $arrayidx753 = 0, $arrayidx761 = 0, $arrayidx77 = 0, $arrayidx775 = 0; var $arrayidx781 = 0, $arrayidx789 = 0, $arrayidx79 = 0, $arrayidx803 = 0, $arrayidx808 = 0, $arrayidx85 = 0, $arrayidx9 = 0, $arrayidx92 = 0, $arrayidx96 = 0, $call = 0, $call86 = 0, $cmp = 0, $cmp117 = 0, $cmp123 = 0, $cmp126 = 0, $cmp132 = 0, $cmp137 = 0, $cmp139 = 0, $cmp149 = 0, $cmp167 = 0; var $cmp17 = 0, $cmp185 = 0, $cmp211 = 0, $cmp216 = 0, $cmp25 = 0, $cmp252 = 0, $cmp260 = 0, $cmp33 = 0, $cmp343 = 0, $cmp45 = 0, $cmp519 = 0, $cmp61 = 0, $cmp626 = 0, $cmp628 = 0, $cmp637 = 0, $cmp641 = 0, $cmp645 = 0, $cmp656 = 0, $cmp661 = 0, $cmp665 = 0; var $cmp683 = 0, $cmp693 = 0, $cmp698 = 0, $cmp702 = 0, $cmp742 = 0, $cmp770 = 0, $cmp80 = 0, $cmp88 = 0, $cond = 0, $cond633 = 0, $cond650 = 0, $cond652 = 0, $cond670 = 0, $cond672 = 0, $cond688 = 0, $cond690 = 0, $cond707 = 0, $cond709 = 0, $cond715 = 0, $cond801 = 0; var $conv = 0, $conv10 = 0, $conv12 = 0, $conv122 = 0, $conv15 = 0, $conv171 = 0, $conv172 = 0, $conv176 = 0, $conv177 = 0, $conv193 = 0, $conv200 = 0, $conv21 = 0, $conv223 = 0, $conv224 = 0, $conv230 = 0, $conv231 = 0, $conv266 = 0, $conv271 = 0, $conv279 = 0, $conv284 = 0; var $conv292 = 0, $conv297 = 0, $conv305 = 0, $conv310 = 0, $conv318 = 0, $conv323 = 0, $conv353 = 0, $conv360 = 0, $conv370 = 0, $conv377 = 0, $conv387 = 0, $conv394 = 0, $conv404 = 0, $conv411 = 0, $conv421 = 0, $conv428 = 0, $conv438 = 0, $conv445 = 0, $conv455 = 0, $conv462 = 0; var $conv472 = 0, $conv479 = 0, $conv489 = 0, $conv496 = 0, $conv506 = 0, $conv513 = 0, $conv527 = 0, $conv534 = 0, $conv544 = 0, $conv55 = 0, $conv551 = 0, $conv561 = 0, $conv568 = 0, $conv578 = 0, $conv585 = 0, $conv595 = 0, $conv602 = 0, $conv612 = 0, $conv619 = 0, $conv721 = 0; var $conv722 = 0, $conv727 = 0, $conv728 = 0, $conv73 = 0, $conv749 = 0, $conv750 = 0, $conv755 = 0, $conv756 = 0, $conv777 = 0, $conv778 = 0, $conv783 = 0, $conv784 = 0, $conv802 = 0, $conv93 = 0, $conv94 = 0, $conv97 = 0, $conv98 = 0, $exc_Q14 = 0, $exc_Q1423 = 0, $exc_Q1428 = 0; var $exc_Q1436 = 0, $exc_Q1442 = 0, $exc_Q1448 = 0, $exc_Q1451 = 0, $exc_Q1457 = 0, $frame_length = 0, $frame_length16 = 0, $gain_adj_Q16 = 0, $i = 0, $idxprom = 0, $inc = 0, $inc110 = 0, $inc208 = 0, $inc247 = 0, $inc335 = 0, $inc337 = 0, $inc805 = 0, $inc813 = 0, $incdec$ptr = 0, $indices = 0; var $indices11 = 0, $indices120 = 0, $indices14 = 0, $indices71 = 0, $indices8 = 0, $inv_gain_Q31 = 0, $k = 0, $lag = 0, $lagPrev = 0, $lossCnt = 0, $ltp_mem_length = 0, $ltp_mem_length1 = 0, $ltp_mem_length144 = 0, $ltp_mem_length152 = 0, $ltp_mem_length164 = 0, $ltp_mem_length189 = 0, $ltp_mem_length196 = 0, $ltp_mem_length59 = 0, $mul = 0, $mul106 = 0; var $mul155 = 0, $mul156 = 0, $mul161 = 0, $mul173 = 0, $mul178 = 0, $mul194 = 0, $mul201 = 0, $mul225 = 0, $mul232 = 0, $mul241 = 0, $mul267 = 0, $mul272 = 0, $mul280 = 0, $mul285 = 0, $mul293 = 0, $mul298 = 0, $mul306 = 0, $mul311 = 0, $mul319 = 0, $mul324 = 0; var $mul354 = 0, $mul361 = 0, $mul371 = 0, $mul378 = 0, $mul388 = 0, $mul395 = 0, $mul405 = 0, $mul412 = 0, $mul422 = 0, $mul429 = 0, $mul439 = 0, $mul446 = 0, $mul456 = 0, $mul463 = 0, $mul473 = 0, $mul480 = 0, $mul490 = 0, $mul497 = 0, $mul507 = 0, $mul514 = 0; var $mul528 = 0, $mul535 = 0, $mul545 = 0, $mul552 = 0, $mul562 = 0, $mul569 = 0, $mul579 = 0, $mul586 = 0, $mul596 = 0, $mul603 = 0, $mul613 = 0, $mul620 = 0, $mul68 = 0, $mul69 = 0, $mul723 = 0, $mul729 = 0, $mul737 = 0, $mul751 = 0, $mul757 = 0, $mul765 = 0; var $mul779 = 0, $mul785 = 0, $mul793 = 0, $mul95 = 0, $mul99 = 0, $nb_subfr = 0, $offset_Q10 = 0, $or = 0, $or$cond = 0, $or$cond1 = 0, $outBuf = 0, $outBuf159 = 0, $pexc_Q14 = 0, $pred_lag_ptr = 0, $pres_Q14 = 0, $prevSignalType = 0, $psDec$addr = 0, $psDecCtrl$addr = 0, $pulses$addr = 0, $pxq = 0; var $quantOffsetType = 0, $rand_seed = 0, $sLPC_Q14_buf = 0, $sLPC_Q14_buf815 = 0, $sLTP_buf_idx = 0, $saved_stack = 0, $shl = 0, $shl181 = 0, $shl329 = 0, $shl333 = 0, $shl41 = 0, $shl634 = 0, $shl653 = 0, $shl673 = 0, $shl691 = 0, $shl710 = 0, $shr = 0, $shr100 = 0, $shr103 = 0, $shr105 = 0; var $shr170 = 0, $shr179 = 0, $shr188 = 0, $shr202 = 0, $shr219 = 0, $shr233 = 0, $shr238 = 0, $shr240 = 0, $shr264 = 0, $shr273 = 0, $shr277 = 0, $shr286 = 0, $shr290 = 0, $shr299 = 0, $shr303 = 0, $shr312 = 0, $shr316 = 0, $shr325 = 0, $shr347 = 0, $shr351 = 0; var $shr362 = 0, $shr368 = 0, $shr379 = 0, $shr385 = 0, $shr396 = 0, $shr402 = 0, $shr413 = 0, $shr419 = 0, $shr430 = 0, $shr436 = 0, $shr447 = 0, $shr453 = 0, $shr464 = 0, $shr470 = 0, $shr481 = 0, $shr487 = 0, $shr498 = 0, $shr504 = 0, $shr515 = 0, $shr525 = 0; var $shr536 = 0, $shr542 = 0, $shr553 = 0, $shr559 = 0, $shr570 = 0, $shr576 = 0, $shr587 = 0, $shr593 = 0, $shr604 = 0, $shr610 = 0, $shr621 = 0, $shr64 = 0, $shr720 = 0, $shr730 = 0, $shr734 = 0, $shr736 = 0, $shr739 = 0, $shr741 = 0, $shr748 = 0, $shr75 = 0; var $shr758 = 0, $shr762 = 0, $shr764 = 0, $shr767 = 0, $shr769 = 0, $shr776 = 0, $shr786 = 0, $shr790 = 0, $shr792 = 0, $shr795 = 0, $shr797 = 0, $shr91 = 0, $signalType = 0, $signalType121 = 0, $signalType7 = 0, $signalType72 = 0, $start_idx = 0, $sub = 0, $sub145 = 0, $sub147 = 0; var $sub148 = 0, $sub165 = 0, $sub190 = 0, $sub191 = 0, $sub197 = 0, $sub198 = 0, $sub204 = 0, $sub205 = 0, $sub220 = 0, $sub221 = 0, $sub227 = 0, $sub228 = 0, $sub235 = 0, $sub236 = 0, $sub243 = 0, $sub244 = 0, $sub255 = 0, $sub349 = 0, $sub356 = 0, $sub366 = 0; var $sub373 = 0, $sub383 = 0, $sub390 = 0, $sub400 = 0, $sub407 = 0, $sub417 = 0, $sub424 = 0, $sub434 = 0, $sub441 = 0, $sub451 = 0, $sub458 = 0, $sub468 = 0, $sub475 = 0, $sub485 = 0, $sub492 = 0, $sub50 = 0, $sub502 = 0, $sub509 = 0, $sub523 = 0, $sub530 = 0; var $sub540 = 0, $sub547 = 0, $sub557 = 0, $sub564 = 0, $sub574 = 0, $sub581 = 0, $sub591 = 0, $sub598 = 0, $sub608 = 0, $sub615 = 0, $subfr_length = 0, $subfr_length154 = 0, $subfr_length160 = 0, $subfr_length259 = 0, $subfr_length342 = 0, $subfr_length4 = 0, $subfr_length807 = 0, $subfr_length809 = 0, $subfr_length810 = 0, $tobool = 0; var $tobool142 = 0, $vla = 0, $vla$alloca_mul = 0, $vla2 = 0, $vla2$alloca_mul = 0, $vla3 = 0, $vla3$alloca_mul = 0, $vla6 = 0, $vla6$alloca_mul = 0, $xq$addr = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; sp = STACKTOP; STACKTOP = STACKTOP + 144|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(144|0); $A_Q12_tmp = sp + 104|0; $psDec$addr = $psDec; $psDecCtrl$addr = $psDecCtrl; $xq$addr = $xq; $pulses$addr = $pulses; $arch$addr = $arch; $lag = 0; $0 = $psDec$addr; $ltp_mem_length = ((($0)) + 2336|0); $1 = HEAP32[$ltp_mem_length>>2]|0; $2 = (_llvm_stacksave()|0); $saved_stack = $2; $vla$alloca_mul = $1<<1; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $3 = $psDec$addr; $ltp_mem_length1 = ((($3)) + 2336|0); $4 = HEAP32[$ltp_mem_length1>>2]|0; $5 = $psDec$addr; $frame_length = ((($5)) + 2328|0); $6 = HEAP32[$frame_length>>2]|0; $add = (($4) + ($6))|0; $vla2$alloca_mul = $add<<2; $vla2 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla2$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla2$alloca_mul)|0)+15)&-16)|0);; $7 = $psDec$addr; $subfr_length = ((($7)) + 2332|0); $8 = HEAP32[$subfr_length>>2]|0; $vla3$alloca_mul = $8<<2; $vla3 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla3$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla3$alloca_mul)|0)+15)&-16)|0);; $9 = $psDec$addr; $subfr_length4 = ((($9)) + 2332|0); $10 = HEAP32[$subfr_length4>>2]|0; $add5 = (($10) + 16)|0; $vla6$alloca_mul = $add5<<2; $vla6 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla6$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla6$alloca_mul)|0)+15)&-16)|0);; $11 = $psDec$addr; $indices = ((($11)) + 2736|0); $signalType7 = ((($indices)) + 29|0); $12 = HEAP8[$signalType7>>0]|0; $conv = $12 << 24 >> 24; $shr = $conv >> 1; $arrayidx = (23512 + ($shr<<2)|0); $13 = $psDec$addr; $indices8 = ((($13)) + 2736|0); $quantOffsetType = ((($indices8)) + 30|0); $14 = HEAP8[$quantOffsetType>>0]|0; $idxprom = $14 << 24 >> 24; $arrayidx9 = (($arrayidx) + ($idxprom<<1)|0); $15 = HEAP16[$arrayidx9>>1]|0; $conv10 = $15 << 16 >> 16; $offset_Q10 = $conv10; $16 = $psDec$addr; $indices11 = ((($16)) + 2736|0); $NLSFInterpCoef_Q2 = ((($indices11)) + 31|0); $17 = HEAP8[$NLSFInterpCoef_Q2>>0]|0; $conv12 = $17 << 24 >> 24; $cmp = ($conv12|0)<(4); if ($cmp) { $NLSF_interpolation_flag = 1; } else { $NLSF_interpolation_flag = 0; } $18 = $psDec$addr; $indices14 = ((($18)) + 2736|0); $Seed = ((($indices14)) + 34|0); $19 = HEAP8[$Seed>>0]|0; $conv15 = $19 << 24 >> 24; $rand_seed = $conv15; $i = 0; while(1) { $20 = $i; $21 = $psDec$addr; $frame_length16 = ((($21)) + 2328|0); $22 = HEAP32[$frame_length16>>2]|0; $cmp17 = ($20|0)<($22|0); if (!($cmp17)) { break; } $23 = $rand_seed; $mul = Math_imul($23, 196314165)|0; $add19 = (907633515 + ($mul))|0; $rand_seed = $add19; $24 = $pulses$addr; $25 = $i; $arrayidx20 = (($24) + ($25<<1)|0); $26 = HEAP16[$arrayidx20>>1]|0; $conv21 = $26 << 16 >> 16; $shl = $conv21 << 14; $27 = $psDec$addr; $exc_Q14 = ((($27)) + 4|0); $28 = $i; $arrayidx22 = (($exc_Q14) + ($28<<2)|0); HEAP32[$arrayidx22>>2] = $shl; $29 = $psDec$addr; $exc_Q1423 = ((($29)) + 4|0); $30 = $i; $arrayidx24 = (($exc_Q1423) + ($30<<2)|0); $31 = HEAP32[$arrayidx24>>2]|0; $cmp25 = ($31|0)>(0); $32 = $psDec$addr; $exc_Q1428 = ((($32)) + 4|0); $33 = $i; $arrayidx29 = (($exc_Q1428) + ($33<<2)|0); $34 = HEAP32[$arrayidx29>>2]|0; if ($cmp25) { $sub = (($34) - 1280)|0; HEAP32[$arrayidx29>>2] = $sub; } else { $cmp33 = ($34|0)<(0); if ($cmp33) { $35 = $psDec$addr; $exc_Q1436 = ((($35)) + 4|0); $36 = $i; $arrayidx37 = (($exc_Q1436) + ($36<<2)|0); $37 = HEAP32[$arrayidx37>>2]|0; $add38 = (($37) + 1280)|0; HEAP32[$arrayidx37>>2] = $add38; } } $38 = $offset_Q10; $shl41 = $38 << 4; $39 = $psDec$addr; $exc_Q1442 = ((($39)) + 4|0); $40 = $i; $arrayidx43 = (($exc_Q1442) + ($40<<2)|0); $41 = HEAP32[$arrayidx43>>2]|0; $add44 = (($41) + ($shl41))|0; HEAP32[$arrayidx43>>2] = $add44; $42 = $rand_seed; $cmp45 = ($42|0)<(0); if ($cmp45) { $43 = $psDec$addr; $exc_Q1448 = ((($43)) + 4|0); $44 = $i; $arrayidx49 = (($exc_Q1448) + ($44<<2)|0); $45 = HEAP32[$arrayidx49>>2]|0; $sub50 = (0 - ($45))|0; $46 = $psDec$addr; $exc_Q1451 = ((($46)) + 4|0); $47 = $i; $arrayidx52 = (($exc_Q1451) + ($47<<2)|0); HEAP32[$arrayidx52>>2] = $sub50; } $48 = $rand_seed; $49 = $pulses$addr; $50 = $i; $arrayidx54 = (($49) + ($50<<1)|0); $51 = HEAP16[$arrayidx54>>1]|0; $conv55 = $51 << 16 >> 16; $add56 = (($48) + ($conv55))|0; $rand_seed = $add56; $52 = $i; $inc = (($52) + 1)|0; $i = $inc; } $53 = $psDec$addr; $sLPC_Q14_buf = ((($53)) + 1284|0); dest=$vla6; src=$sLPC_Q14_buf; stop=dest+64|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); $54 = $psDec$addr; $exc_Q1457 = ((($54)) + 4|0); $pexc_Q14 = $exc_Q1457; $55 = $xq$addr; $pxq = $55; $56 = $psDec$addr; $ltp_mem_length59 = ((($56)) + 2336|0); $57 = HEAP32[$ltp_mem_length59>>2]|0; $sLTP_buf_idx = $57; $k = 0; while(1) { $58 = $k; $59 = $psDec$addr; $nb_subfr = ((($59)) + 2324|0); $60 = HEAP32[$nb_subfr>>2]|0; $cmp61 = ($58|0)<($60|0); if (!($cmp61)) { break; } $pres_Q14 = $vla3; $61 = $psDecCtrl$addr; $PredCoef_Q12 = ((($61)) + 32|0); $62 = $k; $shr64 = $62 >> 1; $arrayidx65 = (($PredCoef_Q12) + ($shr64<<5)|0); $A_Q12 = $arrayidx65; $63 = $A_Q12; $64 = $psDec$addr; $LPC_order = ((($64)) + 2340|0); $65 = HEAP32[$LPC_order>>2]|0; $mul68 = $65<<1; _memcpy(($A_Q12_tmp|0),($63|0),($mul68|0))|0; $66 = $psDecCtrl$addr; $LTPCoef_Q14 = ((($66)) + 96|0); $67 = $k; $mul69 = ($67*5)|0; $arrayidx70 = (($LTPCoef_Q14) + ($mul69<<1)|0); $B_Q14 = $arrayidx70; $68 = $psDec$addr; $indices71 = ((($68)) + 2736|0); $signalType72 = ((($indices71)) + 29|0); $69 = HEAP8[$signalType72>>0]|0; $conv73 = $69 << 24 >> 24; $signalType = $conv73; $70 = $psDecCtrl$addr; $Gains_Q16 = ((($70)) + 16|0); $71 = $k; $arrayidx74 = (($Gains_Q16) + ($71<<2)|0); $72 = HEAP32[$arrayidx74>>2]|0; $shr75 = $72 >> 6; $Gain_Q10 = $shr75; $73 = $psDecCtrl$addr; $Gains_Q1676 = ((($73)) + 16|0); $74 = $k; $arrayidx77 = (($Gains_Q1676) + ($74<<2)|0); $75 = HEAP32[$arrayidx77>>2]|0; $call = (_silk_INVERSE32_varQ_552($75,47)|0); $inv_gain_Q31 = $call; $76 = $psDecCtrl$addr; $Gains_Q1678 = ((($76)) + 16|0); $77 = $k; $arrayidx79 = (($Gains_Q1678) + ($77<<2)|0); $78 = HEAP32[$arrayidx79>>2]|0; $79 = $psDec$addr; $80 = HEAP32[$79>>2]|0; $cmp80 = ($78|0)!=($80|0); L20: do { if ($cmp80) { $81 = $psDec$addr; $82 = HEAP32[$81>>2]|0; $83 = $psDecCtrl$addr; $Gains_Q1684 = ((($83)) + 16|0); $84 = $k; $arrayidx85 = (($Gains_Q1684) + ($84<<2)|0); $85 = HEAP32[$arrayidx85>>2]|0; $call86 = (_silk_DIV32_varQ_553($82,$85,16)|0); $gain_adj_Q16 = $call86; $i = 0; while(1) { $86 = $i; $cmp88 = ($86|0)<(16); if (!($cmp88)) { break L20; } $87 = $gain_adj_Q16; $shr91 = $87 >> 16; $88 = $i; $arrayidx92 = (($vla6) + ($88<<2)|0); $89 = HEAP32[$arrayidx92>>2]|0; $conv93 = $89&65535; $conv94 = $conv93 << 16 >> 16; $mul95 = Math_imul($shr91, $conv94)|0; $90 = $gain_adj_Q16; $and = $90 & 65535; $91 = $i; $arrayidx96 = (($vla6) + ($91<<2)|0); $92 = HEAP32[$arrayidx96>>2]|0; $conv97 = $92&65535; $conv98 = $conv97 << 16 >> 16; $mul99 = Math_imul($and, $conv98)|0; $shr100 = $mul99 >> 16; $add101 = (($mul95) + ($shr100))|0; $93 = $gain_adj_Q16; $94 = $i; $arrayidx102 = (($vla6) + ($94<<2)|0); $95 = HEAP32[$arrayidx102>>2]|0; $shr103 = $95 >> 15; $add104 = (($shr103) + 1)|0; $shr105 = $add104 >> 1; $mul106 = Math_imul($93, $shr105)|0; $add107 = (($add101) + ($mul106))|0; $96 = $i; $arrayidx108 = (($vla6) + ($96<<2)|0); HEAP32[$arrayidx108>>2] = $add107; $97 = $i; $inc110 = (($97) + 1)|0; $i = $inc110; } } else { $gain_adj_Q16 = 65536; } } while(0); $98 = $psDecCtrl$addr; $Gains_Q16114 = ((($98)) + 16|0); $99 = $k; $arrayidx115 = (($Gains_Q16114) + ($99<<2)|0); $100 = HEAP32[$arrayidx115>>2]|0; $101 = $psDec$addr; HEAP32[$101>>2] = $100; $102 = $psDec$addr; $lossCnt = ((($102)) + 4160|0); $103 = HEAP32[$lossCnt>>2]|0; $tobool = ($103|0)!=(0); if ($tobool) { $104 = $psDec$addr; $prevSignalType = ((($104)) + 4164|0); $105 = HEAP32[$prevSignalType>>2]|0; $cmp117 = ($105|0)==(2); if ($cmp117) { $106 = $psDec$addr; $indices120 = ((($106)) + 2736|0); $signalType121 = ((($indices120)) + 29|0); $107 = HEAP8[$signalType121>>0]|0; $conv122 = $107 << 24 >> 24; $cmp123 = ($conv122|0)!=(2); $108 = $k; $cmp126 = ($108|0)<(2); $or$cond = $cmp123 & $cmp126; if ($or$cond) { $109 = $B_Q14; ;HEAP16[$109>>1]=0|0;HEAP16[$109+2>>1]=0|0;HEAP16[$109+4>>1]=0|0;HEAP16[$109+6>>1]=0|0;HEAP16[$109+8>>1]=0|0; $110 = $B_Q14; $arrayidx129 = ((($110)) + 4|0); HEAP16[$arrayidx129>>1] = 4096; $signalType = 2; $111 = $psDec$addr; $lagPrev = ((($111)) + 2308|0); $112 = HEAP32[$lagPrev>>2]|0; $113 = $psDecCtrl$addr; $114 = $k; $arrayidx130 = (($113) + ($114<<2)|0); HEAP32[$arrayidx130>>2] = $112; } } } $115 = $signalType; $cmp132 = ($115|0)==(2); L32: do { if ($cmp132) { $116 = $psDecCtrl$addr; $117 = $k; $arrayidx136 = (($116) + ($117<<2)|0); $118 = HEAP32[$arrayidx136>>2]|0; $lag = $118; $119 = $k; $cmp137 = ($119|0)==(0); if (!($cmp137)) { $120 = $k; $cmp139 = ($120|0)==(2); $121 = $NLSF_interpolation_flag; $tobool142 = ($121|0)!=(0); $or$cond1 = $cmp139 & $tobool142; if (!($or$cond1)) { $169 = $gain_adj_Q16; $cmp211 = ($169|0)!=(65536); if (!($cmp211)) { break; } $i = 0; while(1) { $170 = $i; $171 = $lag; $add215 = (($171) + 2)|0; $cmp216 = ($170|0)<($add215|0); if (!($cmp216)) { break L32; } $172 = $gain_adj_Q16; $shr219 = $172 >> 16; $173 = $sLTP_buf_idx; $174 = $i; $sub220 = (($173) - ($174))|0; $sub221 = (($sub220) - 1)|0; $arrayidx222 = (($vla2) + ($sub221<<2)|0); $175 = HEAP32[$arrayidx222>>2]|0; $conv223 = $175&65535; $conv224 = $conv223 << 16 >> 16; $mul225 = Math_imul($shr219, $conv224)|0; $176 = $gain_adj_Q16; $and226 = $176 & 65535; $177 = $sLTP_buf_idx; $178 = $i; $sub227 = (($177) - ($178))|0; $sub228 = (($sub227) - 1)|0; $arrayidx229 = (($vla2) + ($sub228<<2)|0); $179 = HEAP32[$arrayidx229>>2]|0; $conv230 = $179&65535; $conv231 = $conv230 << 16 >> 16; $mul232 = Math_imul($and226, $conv231)|0; $shr233 = $mul232 >> 16; $add234 = (($mul225) + ($shr233))|0; $180 = $gain_adj_Q16; $181 = $sLTP_buf_idx; $182 = $i; $sub235 = (($181) - ($182))|0; $sub236 = (($sub235) - 1)|0; $arrayidx237 = (($vla2) + ($sub236<<2)|0); $183 = HEAP32[$arrayidx237>>2]|0; $shr238 = $183 >> 15; $add239 = (($shr238) + 1)|0; $shr240 = $add239 >> 1; $mul241 = Math_imul($180, $shr240)|0; $add242 = (($add234) + ($mul241))|0; $184 = $sLTP_buf_idx; $185 = $i; $sub243 = (($184) - ($185))|0; $sub244 = (($sub243) - 1)|0; $arrayidx245 = (($vla2) + ($sub244<<2)|0); HEAP32[$arrayidx245>>2] = $add242; $186 = $i; $inc247 = (($186) + 1)|0; $i = $inc247; } } } $122 = $psDec$addr; $ltp_mem_length144 = ((($122)) + 2336|0); $123 = HEAP32[$ltp_mem_length144>>2]|0; $124 = $lag; $sub145 = (($123) - ($124))|0; $125 = $psDec$addr; $LPC_order146 = ((($125)) + 2340|0); $126 = HEAP32[$LPC_order146>>2]|0; $sub147 = (($sub145) - ($126))|0; $sub148 = (($sub147) - 2)|0; $start_idx = $sub148; $127 = $k; $cmp149 = ($127|0)==(2); if ($cmp149) { $128 = $psDec$addr; $outBuf = ((($128)) + 1348|0); $129 = $psDec$addr; $ltp_mem_length152 = ((($129)) + 2336|0); $130 = HEAP32[$ltp_mem_length152>>2]|0; $arrayidx153 = (($outBuf) + ($130<<1)|0); $131 = $xq$addr; $132 = $psDec$addr; $subfr_length154 = ((($132)) + 2332|0); $133 = HEAP32[$subfr_length154>>2]|0; $mul155 = $133<<1; $mul156 = $mul155<<1; _memcpy(($arrayidx153|0),($131|0),($mul156|0))|0; } $134 = $start_idx; $arrayidx158 = (($vla) + ($134<<1)|0); $135 = $psDec$addr; $outBuf159 = ((($135)) + 1348|0); $136 = $start_idx; $137 = $k; $138 = $psDec$addr; $subfr_length160 = ((($138)) + 2332|0); $139 = HEAP32[$subfr_length160>>2]|0; $mul161 = Math_imul($137, $139)|0; $add162 = (($136) + ($mul161))|0; $arrayidx163 = (($outBuf159) + ($add162<<1)|0); $140 = $A_Q12; $141 = $psDec$addr; $ltp_mem_length164 = ((($141)) + 2336|0); $142 = HEAP32[$ltp_mem_length164>>2]|0; $143 = $start_idx; $sub165 = (($142) - ($143))|0; $144 = $psDec$addr; $LPC_order166 = ((($144)) + 2340|0); $145 = HEAP32[$LPC_order166>>2]|0; $146 = $arch$addr; _silk_LPC_analysis_filter($arrayidx158,$arrayidx163,$140,$sub165,$145,$146); $147 = $k; $cmp167 = ($147|0)==(0); if ($cmp167) { $148 = $inv_gain_Q31; $shr170 = $148 >> 16; $149 = $psDecCtrl$addr; $LTP_scale_Q14 = ((($149)) + 136|0); $150 = HEAP32[$LTP_scale_Q14>>2]|0; $conv171 = $150&65535; $conv172 = $conv171 << 16 >> 16; $mul173 = Math_imul($shr170, $conv172)|0; $151 = $inv_gain_Q31; $and174 = $151 & 65535; $152 = $psDecCtrl$addr; $LTP_scale_Q14175 = ((($152)) + 136|0); $153 = HEAP32[$LTP_scale_Q14175>>2]|0; $conv176 = $153&65535; $conv177 = $conv176 << 16 >> 16; $mul178 = Math_imul($and174, $conv177)|0; $shr179 = $mul178 >> 16; $add180 = (($mul173) + ($shr179))|0; $shl181 = $add180 << 2; $inv_gain_Q31 = $shl181; } $i = 0; while(1) { $154 = $i; $155 = $lag; $add184 = (($155) + 2)|0; $cmp185 = ($154|0)<($add184|0); if (!($cmp185)) { break L32; } $156 = $inv_gain_Q31; $shr188 = $156 >> 16; $157 = $psDec$addr; $ltp_mem_length189 = ((($157)) + 2336|0); $158 = HEAP32[$ltp_mem_length189>>2]|0; $159 = $i; $sub190 = (($158) - ($159))|0; $sub191 = (($sub190) - 1)|0; $arrayidx192 = (($vla) + ($sub191<<1)|0); $160 = HEAP16[$arrayidx192>>1]|0; $conv193 = $160 << 16 >> 16; $mul194 = Math_imul($shr188, $conv193)|0; $161 = $inv_gain_Q31; $and195 = $161 & 65535; $162 = $psDec$addr; $ltp_mem_length196 = ((($162)) + 2336|0); $163 = HEAP32[$ltp_mem_length196>>2]|0; $164 = $i; $sub197 = (($163) - ($164))|0; $sub198 = (($sub197) - 1)|0; $arrayidx199 = (($vla) + ($sub198<<1)|0); $165 = HEAP16[$arrayidx199>>1]|0; $conv200 = $165 << 16 >> 16; $mul201 = Math_imul($and195, $conv200)|0; $shr202 = $mul201 >> 16; $add203 = (($mul194) + ($shr202))|0; $166 = $sLTP_buf_idx; $167 = $i; $sub204 = (($166) - ($167))|0; $sub205 = (($sub204) - 1)|0; $arrayidx206 = (($vla2) + ($sub205<<2)|0); HEAP32[$arrayidx206>>2] = $add203; $168 = $i; $inc208 = (($168) + 1)|0; $i = $inc208; } } } while(0); $187 = $signalType; $cmp252 = ($187|0)==(2); L52: do { if ($cmp252) { $188 = $sLTP_buf_idx; $189 = $lag; $sub255 = (($188) - ($189))|0; $add256 = (($sub255) + 2)|0; $arrayidx257 = (($vla2) + ($add256<<2)|0); $pred_lag_ptr = $arrayidx257; $i = 0; while(1) { $190 = $i; $191 = $psDec$addr; $subfr_length259 = ((($191)) + 2332|0); $192 = HEAP32[$subfr_length259>>2]|0; $cmp260 = ($190|0)<($192|0); if (!($cmp260)) { break L52; } $LTP_pred_Q13 = 2; $193 = $LTP_pred_Q13; $194 = $pred_lag_ptr; $195 = HEAP32[$194>>2]|0; $shr264 = $195 >> 16; $196 = $B_Q14; $197 = HEAP16[$196>>1]|0; $conv266 = $197 << 16 >> 16; $mul267 = Math_imul($shr264, $conv266)|0; $198 = $pred_lag_ptr; $199 = HEAP32[$198>>2]|0; $and269 = $199 & 65535; $200 = $B_Q14; $201 = HEAP16[$200>>1]|0; $conv271 = $201 << 16 >> 16; $mul272 = Math_imul($and269, $conv271)|0; $shr273 = $mul272 >> 16; $add274 = (($mul267) + ($shr273))|0; $add275 = (($193) + ($add274))|0; $LTP_pred_Q13 = $add275; $202 = $LTP_pred_Q13; $203 = $pred_lag_ptr; $arrayidx276 = ((($203)) + -4|0); $204 = HEAP32[$arrayidx276>>2]|0; $shr277 = $204 >> 16; $205 = $B_Q14; $arrayidx278 = ((($205)) + 2|0); $206 = HEAP16[$arrayidx278>>1]|0; $conv279 = $206 << 16 >> 16; $mul280 = Math_imul($shr277, $conv279)|0; $207 = $pred_lag_ptr; $arrayidx281 = ((($207)) + -4|0); $208 = HEAP32[$arrayidx281>>2]|0; $and282 = $208 & 65535; $209 = $B_Q14; $arrayidx283 = ((($209)) + 2|0); $210 = HEAP16[$arrayidx283>>1]|0; $conv284 = $210 << 16 >> 16; $mul285 = Math_imul($and282, $conv284)|0; $shr286 = $mul285 >> 16; $add287 = (($mul280) + ($shr286))|0; $add288 = (($202) + ($add287))|0; $LTP_pred_Q13 = $add288; $211 = $LTP_pred_Q13; $212 = $pred_lag_ptr; $arrayidx289 = ((($212)) + -8|0); $213 = HEAP32[$arrayidx289>>2]|0; $shr290 = $213 >> 16; $214 = $B_Q14; $arrayidx291 = ((($214)) + 4|0); $215 = HEAP16[$arrayidx291>>1]|0; $conv292 = $215 << 16 >> 16; $mul293 = Math_imul($shr290, $conv292)|0; $216 = $pred_lag_ptr; $arrayidx294 = ((($216)) + -8|0); $217 = HEAP32[$arrayidx294>>2]|0; $and295 = $217 & 65535; $218 = $B_Q14; $arrayidx296 = ((($218)) + 4|0); $219 = HEAP16[$arrayidx296>>1]|0; $conv297 = $219 << 16 >> 16; $mul298 = Math_imul($and295, $conv297)|0; $shr299 = $mul298 >> 16; $add300 = (($mul293) + ($shr299))|0; $add301 = (($211) + ($add300))|0; $LTP_pred_Q13 = $add301; $220 = $LTP_pred_Q13; $221 = $pred_lag_ptr; $arrayidx302 = ((($221)) + -12|0); $222 = HEAP32[$arrayidx302>>2]|0; $shr303 = $222 >> 16; $223 = $B_Q14; $arrayidx304 = ((($223)) + 6|0); $224 = HEAP16[$arrayidx304>>1]|0; $conv305 = $224 << 16 >> 16; $mul306 = Math_imul($shr303, $conv305)|0; $225 = $pred_lag_ptr; $arrayidx307 = ((($225)) + -12|0); $226 = HEAP32[$arrayidx307>>2]|0; $and308 = $226 & 65535; $227 = $B_Q14; $arrayidx309 = ((($227)) + 6|0); $228 = HEAP16[$arrayidx309>>1]|0; $conv310 = $228 << 16 >> 16; $mul311 = Math_imul($and308, $conv310)|0; $shr312 = $mul311 >> 16; $add313 = (($mul306) + ($shr312))|0; $add314 = (($220) + ($add313))|0; $LTP_pred_Q13 = $add314; $229 = $LTP_pred_Q13; $230 = $pred_lag_ptr; $arrayidx315 = ((($230)) + -16|0); $231 = HEAP32[$arrayidx315>>2]|0; $shr316 = $231 >> 16; $232 = $B_Q14; $arrayidx317 = ((($232)) + 8|0); $233 = HEAP16[$arrayidx317>>1]|0; $conv318 = $233 << 16 >> 16; $mul319 = Math_imul($shr316, $conv318)|0; $234 = $pred_lag_ptr; $arrayidx320 = ((($234)) + -16|0); $235 = HEAP32[$arrayidx320>>2]|0; $and321 = $235 & 65535; $236 = $B_Q14; $arrayidx322 = ((($236)) + 8|0); $237 = HEAP16[$arrayidx322>>1]|0; $conv323 = $237 << 16 >> 16; $mul324 = Math_imul($and321, $conv323)|0; $shr325 = $mul324 >> 16; $add326 = (($mul319) + ($shr325))|0; $add327 = (($229) + ($add326))|0; $LTP_pred_Q13 = $add327; $238 = $pred_lag_ptr; $incdec$ptr = ((($238)) + 4|0); $pred_lag_ptr = $incdec$ptr; $239 = $pexc_Q14; $240 = $i; $arrayidx328 = (($239) + ($240<<2)|0); $241 = HEAP32[$arrayidx328>>2]|0; $242 = $LTP_pred_Q13; $shl329 = $242 << 1; $add330 = (($241) + ($shl329))|0; $243 = $pres_Q14; $244 = $i; $arrayidx331 = (($243) + ($244<<2)|0); HEAP32[$arrayidx331>>2] = $add330; $245 = $pres_Q14; $246 = $i; $arrayidx332 = (($245) + ($246<<2)|0); $247 = HEAP32[$arrayidx332>>2]|0; $shl333 = $247 << 1; $248 = $sLTP_buf_idx; $arrayidx334 = (($vla2) + ($248<<2)|0); HEAP32[$arrayidx334>>2] = $shl333; $249 = $sLTP_buf_idx; $inc335 = (($249) + 1)|0; $sLTP_buf_idx = $inc335; $250 = $i; $inc337 = (($250) + 1)|0; $i = $inc337; } } else { $251 = $pexc_Q14; $pres_Q14 = $251; } } while(0); $i = 0; while(1) { $252 = $i; $253 = $psDec$addr; $subfr_length342 = ((($253)) + 2332|0); $254 = HEAP32[$subfr_length342>>2]|0; $cmp343 = ($252|0)<($254|0); if (!($cmp343)) { break; } $255 = $psDec$addr; $LPC_order346 = ((($255)) + 2340|0); $256 = HEAP32[$LPC_order346>>2]|0; $shr347 = $256 >> 1; $LPC_pred_Q10 = $shr347; $257 = $LPC_pred_Q10; $258 = $i; $add348 = (16 + ($258))|0; $sub349 = (($add348) - 1)|0; $arrayidx350 = (($vla6) + ($sub349<<2)|0); $259 = HEAP32[$arrayidx350>>2]|0; $shr351 = $259 >> 16; $260 = HEAP16[$A_Q12_tmp>>1]|0; $conv353 = $260 << 16 >> 16; $mul354 = Math_imul($shr351, $conv353)|0; $261 = $i; $add355 = (16 + ($261))|0; $sub356 = (($add355) - 1)|0; $arrayidx357 = (($vla6) + ($sub356<<2)|0); $262 = HEAP32[$arrayidx357>>2]|0; $and358 = $262 & 65535; $263 = HEAP16[$A_Q12_tmp>>1]|0; $conv360 = $263 << 16 >> 16; $mul361 = Math_imul($and358, $conv360)|0; $shr362 = $mul361 >> 16; $add363 = (($mul354) + ($shr362))|0; $add364 = (($257) + ($add363))|0; $LPC_pred_Q10 = $add364; $264 = $LPC_pred_Q10; $265 = $i; $add365 = (16 + ($265))|0; $sub366 = (($add365) - 2)|0; $arrayidx367 = (($vla6) + ($sub366<<2)|0); $266 = HEAP32[$arrayidx367>>2]|0; $shr368 = $266 >> 16; $arrayidx369 = ((($A_Q12_tmp)) + 2|0); $267 = HEAP16[$arrayidx369>>1]|0; $conv370 = $267 << 16 >> 16; $mul371 = Math_imul($shr368, $conv370)|0; $268 = $i; $add372 = (16 + ($268))|0; $sub373 = (($add372) - 2)|0; $arrayidx374 = (($vla6) + ($sub373<<2)|0); $269 = HEAP32[$arrayidx374>>2]|0; $and375 = $269 & 65535; $arrayidx376 = ((($A_Q12_tmp)) + 2|0); $270 = HEAP16[$arrayidx376>>1]|0; $conv377 = $270 << 16 >> 16; $mul378 = Math_imul($and375, $conv377)|0; $shr379 = $mul378 >> 16; $add380 = (($mul371) + ($shr379))|0; $add381 = (($264) + ($add380))|0; $LPC_pred_Q10 = $add381; $271 = $LPC_pred_Q10; $272 = $i; $add382 = (16 + ($272))|0; $sub383 = (($add382) - 3)|0; $arrayidx384 = (($vla6) + ($sub383<<2)|0); $273 = HEAP32[$arrayidx384>>2]|0; $shr385 = $273 >> 16; $arrayidx386 = ((($A_Q12_tmp)) + 4|0); $274 = HEAP16[$arrayidx386>>1]|0; $conv387 = $274 << 16 >> 16; $mul388 = Math_imul($shr385, $conv387)|0; $275 = $i; $add389 = (16 + ($275))|0; $sub390 = (($add389) - 3)|0; $arrayidx391 = (($vla6) + ($sub390<<2)|0); $276 = HEAP32[$arrayidx391>>2]|0; $and392 = $276 & 65535; $arrayidx393 = ((($A_Q12_tmp)) + 4|0); $277 = HEAP16[$arrayidx393>>1]|0; $conv394 = $277 << 16 >> 16; $mul395 = Math_imul($and392, $conv394)|0; $shr396 = $mul395 >> 16; $add397 = (($mul388) + ($shr396))|0; $add398 = (($271) + ($add397))|0; $LPC_pred_Q10 = $add398; $278 = $LPC_pred_Q10; $279 = $i; $add399 = (16 + ($279))|0; $sub400 = (($add399) - 4)|0; $arrayidx401 = (($vla6) + ($sub400<<2)|0); $280 = HEAP32[$arrayidx401>>2]|0; $shr402 = $280 >> 16; $arrayidx403 = ((($A_Q12_tmp)) + 6|0); $281 = HEAP16[$arrayidx403>>1]|0; $conv404 = $281 << 16 >> 16; $mul405 = Math_imul($shr402, $conv404)|0; $282 = $i; $add406 = (16 + ($282))|0; $sub407 = (($add406) - 4)|0; $arrayidx408 = (($vla6) + ($sub407<<2)|0); $283 = HEAP32[$arrayidx408>>2]|0; $and409 = $283 & 65535; $arrayidx410 = ((($A_Q12_tmp)) + 6|0); $284 = HEAP16[$arrayidx410>>1]|0; $conv411 = $284 << 16 >> 16; $mul412 = Math_imul($and409, $conv411)|0; $shr413 = $mul412 >> 16; $add414 = (($mul405) + ($shr413))|0; $add415 = (($278) + ($add414))|0; $LPC_pred_Q10 = $add415; $285 = $LPC_pred_Q10; $286 = $i; $add416 = (16 + ($286))|0; $sub417 = (($add416) - 5)|0; $arrayidx418 = (($vla6) + ($sub417<<2)|0); $287 = HEAP32[$arrayidx418>>2]|0; $shr419 = $287 >> 16; $arrayidx420 = ((($A_Q12_tmp)) + 8|0); $288 = HEAP16[$arrayidx420>>1]|0; $conv421 = $288 << 16 >> 16; $mul422 = Math_imul($shr419, $conv421)|0; $289 = $i; $add423 = (16 + ($289))|0; $sub424 = (($add423) - 5)|0; $arrayidx425 = (($vla6) + ($sub424<<2)|0); $290 = HEAP32[$arrayidx425>>2]|0; $and426 = $290 & 65535; $arrayidx427 = ((($A_Q12_tmp)) + 8|0); $291 = HEAP16[$arrayidx427>>1]|0; $conv428 = $291 << 16 >> 16; $mul429 = Math_imul($and426, $conv428)|0; $shr430 = $mul429 >> 16; $add431 = (($mul422) + ($shr430))|0; $add432 = (($285) + ($add431))|0; $LPC_pred_Q10 = $add432; $292 = $LPC_pred_Q10; $293 = $i; $add433 = (16 + ($293))|0; $sub434 = (($add433) - 6)|0; $arrayidx435 = (($vla6) + ($sub434<<2)|0); $294 = HEAP32[$arrayidx435>>2]|0; $shr436 = $294 >> 16; $arrayidx437 = ((($A_Q12_tmp)) + 10|0); $295 = HEAP16[$arrayidx437>>1]|0; $conv438 = $295 << 16 >> 16; $mul439 = Math_imul($shr436, $conv438)|0; $296 = $i; $add440 = (16 + ($296))|0; $sub441 = (($add440) - 6)|0; $arrayidx442 = (($vla6) + ($sub441<<2)|0); $297 = HEAP32[$arrayidx442>>2]|0; $and443 = $297 & 65535; $arrayidx444 = ((($A_Q12_tmp)) + 10|0); $298 = HEAP16[$arrayidx444>>1]|0; $conv445 = $298 << 16 >> 16; $mul446 = Math_imul($and443, $conv445)|0; $shr447 = $mul446 >> 16; $add448 = (($mul439) + ($shr447))|0; $add449 = (($292) + ($add448))|0; $LPC_pred_Q10 = $add449; $299 = $LPC_pred_Q10; $300 = $i; $add450 = (16 + ($300))|0; $sub451 = (($add450) - 7)|0; $arrayidx452 = (($vla6) + ($sub451<<2)|0); $301 = HEAP32[$arrayidx452>>2]|0; $shr453 = $301 >> 16; $arrayidx454 = ((($A_Q12_tmp)) + 12|0); $302 = HEAP16[$arrayidx454>>1]|0; $conv455 = $302 << 16 >> 16; $mul456 = Math_imul($shr453, $conv455)|0; $303 = $i; $add457 = (16 + ($303))|0; $sub458 = (($add457) - 7)|0; $arrayidx459 = (($vla6) + ($sub458<<2)|0); $304 = HEAP32[$arrayidx459>>2]|0; $and460 = $304 & 65535; $arrayidx461 = ((($A_Q12_tmp)) + 12|0); $305 = HEAP16[$arrayidx461>>1]|0; $conv462 = $305 << 16 >> 16; $mul463 = Math_imul($and460, $conv462)|0; $shr464 = $mul463 >> 16; $add465 = (($mul456) + ($shr464))|0; $add466 = (($299) + ($add465))|0; $LPC_pred_Q10 = $add466; $306 = $LPC_pred_Q10; $307 = $i; $add467 = (16 + ($307))|0; $sub468 = (($add467) - 8)|0; $arrayidx469 = (($vla6) + ($sub468<<2)|0); $308 = HEAP32[$arrayidx469>>2]|0; $shr470 = $308 >> 16; $arrayidx471 = ((($A_Q12_tmp)) + 14|0); $309 = HEAP16[$arrayidx471>>1]|0; $conv472 = $309 << 16 >> 16; $mul473 = Math_imul($shr470, $conv472)|0; $310 = $i; $add474 = (16 + ($310))|0; $sub475 = (($add474) - 8)|0; $arrayidx476 = (($vla6) + ($sub475<<2)|0); $311 = HEAP32[$arrayidx476>>2]|0; $and477 = $311 & 65535; $arrayidx478 = ((($A_Q12_tmp)) + 14|0); $312 = HEAP16[$arrayidx478>>1]|0; $conv479 = $312 << 16 >> 16; $mul480 = Math_imul($and477, $conv479)|0; $shr481 = $mul480 >> 16; $add482 = (($mul473) + ($shr481))|0; $add483 = (($306) + ($add482))|0; $LPC_pred_Q10 = $add483; $313 = $LPC_pred_Q10; $314 = $i; $add484 = (16 + ($314))|0; $sub485 = (($add484) - 9)|0; $arrayidx486 = (($vla6) + ($sub485<<2)|0); $315 = HEAP32[$arrayidx486>>2]|0; $shr487 = $315 >> 16; $arrayidx488 = ((($A_Q12_tmp)) + 16|0); $316 = HEAP16[$arrayidx488>>1]|0; $conv489 = $316 << 16 >> 16; $mul490 = Math_imul($shr487, $conv489)|0; $317 = $i; $add491 = (16 + ($317))|0; $sub492 = (($add491) - 9)|0; $arrayidx493 = (($vla6) + ($sub492<<2)|0); $318 = HEAP32[$arrayidx493>>2]|0; $and494 = $318 & 65535; $arrayidx495 = ((($A_Q12_tmp)) + 16|0); $319 = HEAP16[$arrayidx495>>1]|0; $conv496 = $319 << 16 >> 16; $mul497 = Math_imul($and494, $conv496)|0; $shr498 = $mul497 >> 16; $add499 = (($mul490) + ($shr498))|0; $add500 = (($313) + ($add499))|0; $LPC_pred_Q10 = $add500; $320 = $LPC_pred_Q10; $321 = $i; $add501 = (16 + ($321))|0; $sub502 = (($add501) - 10)|0; $arrayidx503 = (($vla6) + ($sub502<<2)|0); $322 = HEAP32[$arrayidx503>>2]|0; $shr504 = $322 >> 16; $arrayidx505 = ((($A_Q12_tmp)) + 18|0); $323 = HEAP16[$arrayidx505>>1]|0; $conv506 = $323 << 16 >> 16; $mul507 = Math_imul($shr504, $conv506)|0; $324 = $i; $add508 = (16 + ($324))|0; $sub509 = (($add508) - 10)|0; $arrayidx510 = (($vla6) + ($sub509<<2)|0); $325 = HEAP32[$arrayidx510>>2]|0; $and511 = $325 & 65535; $arrayidx512 = ((($A_Q12_tmp)) + 18|0); $326 = HEAP16[$arrayidx512>>1]|0; $conv513 = $326 << 16 >> 16; $mul514 = Math_imul($and511, $conv513)|0; $shr515 = $mul514 >> 16; $add516 = (($mul507) + ($shr515))|0; $add517 = (($320) + ($add516))|0; $LPC_pred_Q10 = $add517; $327 = $psDec$addr; $LPC_order518 = ((($327)) + 2340|0); $328 = HEAP32[$LPC_order518>>2]|0; $cmp519 = ($328|0)==(16); if ($cmp519) { $329 = $LPC_pred_Q10; $330 = $i; $add522 = (16 + ($330))|0; $sub523 = (($add522) - 11)|0; $arrayidx524 = (($vla6) + ($sub523<<2)|0); $331 = HEAP32[$arrayidx524>>2]|0; $shr525 = $331 >> 16; $arrayidx526 = ((($A_Q12_tmp)) + 20|0); $332 = HEAP16[$arrayidx526>>1]|0; $conv527 = $332 << 16 >> 16; $mul528 = Math_imul($shr525, $conv527)|0; $333 = $i; $add529 = (16 + ($333))|0; $sub530 = (($add529) - 11)|0; $arrayidx531 = (($vla6) + ($sub530<<2)|0); $334 = HEAP32[$arrayidx531>>2]|0; $and532 = $334 & 65535; $arrayidx533 = ((($A_Q12_tmp)) + 20|0); $335 = HEAP16[$arrayidx533>>1]|0; $conv534 = $335 << 16 >> 16; $mul535 = Math_imul($and532, $conv534)|0; $shr536 = $mul535 >> 16; $add537 = (($mul528) + ($shr536))|0; $add538 = (($329) + ($add537))|0; $LPC_pred_Q10 = $add538; $336 = $LPC_pred_Q10; $337 = $i; $add539 = (16 + ($337))|0; $sub540 = (($add539) - 12)|0; $arrayidx541 = (($vla6) + ($sub540<<2)|0); $338 = HEAP32[$arrayidx541>>2]|0; $shr542 = $338 >> 16; $arrayidx543 = ((($A_Q12_tmp)) + 22|0); $339 = HEAP16[$arrayidx543>>1]|0; $conv544 = $339 << 16 >> 16; $mul545 = Math_imul($shr542, $conv544)|0; $340 = $i; $add546 = (16 + ($340))|0; $sub547 = (($add546) - 12)|0; $arrayidx548 = (($vla6) + ($sub547<<2)|0); $341 = HEAP32[$arrayidx548>>2]|0; $and549 = $341 & 65535; $arrayidx550 = ((($A_Q12_tmp)) + 22|0); $342 = HEAP16[$arrayidx550>>1]|0; $conv551 = $342 << 16 >> 16; $mul552 = Math_imul($and549, $conv551)|0; $shr553 = $mul552 >> 16; $add554 = (($mul545) + ($shr553))|0; $add555 = (($336) + ($add554))|0; $LPC_pred_Q10 = $add555; $343 = $LPC_pred_Q10; $344 = $i; $add556 = (16 + ($344))|0; $sub557 = (($add556) - 13)|0; $arrayidx558 = (($vla6) + ($sub557<<2)|0); $345 = HEAP32[$arrayidx558>>2]|0; $shr559 = $345 >> 16; $arrayidx560 = ((($A_Q12_tmp)) + 24|0); $346 = HEAP16[$arrayidx560>>1]|0; $conv561 = $346 << 16 >> 16; $mul562 = Math_imul($shr559, $conv561)|0; $347 = $i; $add563 = (16 + ($347))|0; $sub564 = (($add563) - 13)|0; $arrayidx565 = (($vla6) + ($sub564<<2)|0); $348 = HEAP32[$arrayidx565>>2]|0; $and566 = $348 & 65535; $arrayidx567 = ((($A_Q12_tmp)) + 24|0); $349 = HEAP16[$arrayidx567>>1]|0; $conv568 = $349 << 16 >> 16; $mul569 = Math_imul($and566, $conv568)|0; $shr570 = $mul569 >> 16; $add571 = (($mul562) + ($shr570))|0; $add572 = (($343) + ($add571))|0; $LPC_pred_Q10 = $add572; $350 = $LPC_pred_Q10; $351 = $i; $add573 = (16 + ($351))|0; $sub574 = (($add573) - 14)|0; $arrayidx575 = (($vla6) + ($sub574<<2)|0); $352 = HEAP32[$arrayidx575>>2]|0; $shr576 = $352 >> 16; $arrayidx577 = ((($A_Q12_tmp)) + 26|0); $353 = HEAP16[$arrayidx577>>1]|0; $conv578 = $353 << 16 >> 16; $mul579 = Math_imul($shr576, $conv578)|0; $354 = $i; $add580 = (16 + ($354))|0; $sub581 = (($add580) - 14)|0; $arrayidx582 = (($vla6) + ($sub581<<2)|0); $355 = HEAP32[$arrayidx582>>2]|0; $and583 = $355 & 65535; $arrayidx584 = ((($A_Q12_tmp)) + 26|0); $356 = HEAP16[$arrayidx584>>1]|0; $conv585 = $356 << 16 >> 16; $mul586 = Math_imul($and583, $conv585)|0; $shr587 = $mul586 >> 16; $add588 = (($mul579) + ($shr587))|0; $add589 = (($350) + ($add588))|0; $LPC_pred_Q10 = $add589; $357 = $LPC_pred_Q10; $358 = $i; $add590 = (16 + ($358))|0; $sub591 = (($add590) - 15)|0; $arrayidx592 = (($vla6) + ($sub591<<2)|0); $359 = HEAP32[$arrayidx592>>2]|0; $shr593 = $359 >> 16; $arrayidx594 = ((($A_Q12_tmp)) + 28|0); $360 = HEAP16[$arrayidx594>>1]|0; $conv595 = $360 << 16 >> 16; $mul596 = Math_imul($shr593, $conv595)|0; $361 = $i; $add597 = (16 + ($361))|0; $sub598 = (($add597) - 15)|0; $arrayidx599 = (($vla6) + ($sub598<<2)|0); $362 = HEAP32[$arrayidx599>>2]|0; $and600 = $362 & 65535; $arrayidx601 = ((($A_Q12_tmp)) + 28|0); $363 = HEAP16[$arrayidx601>>1]|0; $conv602 = $363 << 16 >> 16; $mul603 = Math_imul($and600, $conv602)|0; $shr604 = $mul603 >> 16; $add605 = (($mul596) + ($shr604))|0; $add606 = (($357) + ($add605))|0; $LPC_pred_Q10 = $add606; $364 = $LPC_pred_Q10; $365 = $i; $add607 = (16 + ($365))|0; $sub608 = (($add607) - 16)|0; $arrayidx609 = (($vla6) + ($sub608<<2)|0); $366 = HEAP32[$arrayidx609>>2]|0; $shr610 = $366 >> 16; $arrayidx611 = ((($A_Q12_tmp)) + 30|0); $367 = HEAP16[$arrayidx611>>1]|0; $conv612 = $367 << 16 >> 16; $mul613 = Math_imul($shr610, $conv612)|0; $368 = $i; $add614 = (16 + ($368))|0; $sub615 = (($add614) - 16)|0; $arrayidx616 = (($vla6) + ($sub615<<2)|0); $369 = HEAP32[$arrayidx616>>2]|0; $and617 = $369 & 65535; $arrayidx618 = ((($A_Q12_tmp)) + 30|0); $370 = HEAP16[$arrayidx618>>1]|0; $conv619 = $370 << 16 >> 16; $mul620 = Math_imul($and617, $conv619)|0; $shr621 = $mul620 >> 16; $add622 = (($mul613) + ($shr621))|0; $add623 = (($364) + ($add622))|0; $LPC_pred_Q10 = $add623; } $371 = $pres_Q14; $372 = $i; $arrayidx625 = (($371) + ($372<<2)|0); $373 = HEAP32[$arrayidx625>>2]|0; $374 = $LPC_pred_Q10; $cmp626 = ($374|0)>(134217727); if ($cmp626) { $cond633 = 134217727; } else { $375 = $LPC_pred_Q10; $cmp628 = ($375|0)<(-134217728); $376 = $LPC_pred_Q10; $cond = $cmp628 ? -134217728 : $376; $cond633 = $cond; } $shl634 = $cond633 << 4; $add635 = (($373) + ($shl634))|0; $and636 = $add635 & -2147483648; $cmp637 = ($and636|0)==(0); $377 = $pres_Q14; $378 = $i; $arrayidx640 = (($377) + ($378<<2)|0); $379 = HEAP32[$arrayidx640>>2]|0; $380 = $LPC_pred_Q10; $cmp641 = ($380|0)>(134217727); if ($cmp637) { if ($cmp641) { $cond652 = 134217727; } else { $381 = $LPC_pred_Q10; $cmp645 = ($381|0)<(-134217728); $382 = $LPC_pred_Q10; $cond650 = $cmp645 ? -134217728 : $382; $cond652 = $cond650; } $shl653 = $cond652 << 4; $and654 = $379 & $shl653; $and655 = $and654 & -2147483648; $cmp656 = ($and655|0)!=(0); if ($cmp656) { $cond715 = -2147483648; } else { $383 = $pres_Q14; $384 = $i; $arrayidx660 = (($383) + ($384<<2)|0); $385 = HEAP32[$arrayidx660>>2]|0; $386 = $LPC_pred_Q10; $cmp661 = ($386|0)>(134217727); if ($cmp661) { $cond672 = 134217727; } else { $387 = $LPC_pred_Q10; $cmp665 = ($387|0)<(-134217728); $388 = $LPC_pred_Q10; $cond670 = $cmp665 ? -134217728 : $388; $cond672 = $cond670; } $shl673 = $cond672 << 4; $add674 = (($385) + ($shl673))|0; $cond715 = $add674; } } else { if ($cmp641) { $cond690 = 134217727; } else { $389 = $LPC_pred_Q10; $cmp683 = ($389|0)<(-134217728); $390 = $LPC_pred_Q10; $cond688 = $cmp683 ? -134217728 : $390; $cond690 = $cond688; } $shl691 = $cond690 << 4; $or = $379 | $shl691; $and692 = $or & -2147483648; $cmp693 = ($and692|0)==(0); if ($cmp693) { $cond715 = 2147483647; } else { $391 = $pres_Q14; $392 = $i; $arrayidx697 = (($391) + ($392<<2)|0); $393 = HEAP32[$arrayidx697>>2]|0; $394 = $LPC_pred_Q10; $cmp698 = ($394|0)>(134217727); if ($cmp698) { $cond709 = 134217727; } else { $395 = $LPC_pred_Q10; $cmp702 = ($395|0)<(-134217728); $396 = $LPC_pred_Q10; $cond707 = $cmp702 ? -134217728 : $396; $cond709 = $cond707; } $shl710 = $cond709 << 4; $add711 = (($393) + ($shl710))|0; $cond715 = $add711; } } $397 = $i; $add716 = (16 + ($397))|0; $arrayidx717 = (($vla6) + ($add716<<2)|0); HEAP32[$arrayidx717>>2] = $cond715; $398 = $i; $add718 = (16 + ($398))|0; $arrayidx719 = (($vla6) + ($add718<<2)|0); $399 = HEAP32[$arrayidx719>>2]|0; $shr720 = $399 >> 16; $400 = $Gain_Q10; $conv721 = $400&65535; $conv722 = $conv721 << 16 >> 16; $mul723 = Math_imul($shr720, $conv722)|0; $401 = $i; $add724 = (16 + ($401))|0; $arrayidx725 = (($vla6) + ($add724<<2)|0); $402 = HEAP32[$arrayidx725>>2]|0; $and726 = $402 & 65535; $403 = $Gain_Q10; $conv727 = $403&65535; $conv728 = $conv727 << 16 >> 16; $mul729 = Math_imul($and726, $conv728)|0; $shr730 = $mul729 >> 16; $add731 = (($mul723) + ($shr730))|0; $404 = $i; $add732 = (16 + ($404))|0; $arrayidx733 = (($vla6) + ($add732<<2)|0); $405 = HEAP32[$arrayidx733>>2]|0; $406 = $Gain_Q10; $shr734 = $406 >> 15; $add735 = (($shr734) + 1)|0; $shr736 = $add735 >> 1; $mul737 = Math_imul($405, $shr736)|0; $add738 = (($add731) + ($mul737))|0; $shr739 = $add738 >> 7; $add740 = (($shr739) + 1)|0; $shr741 = $add740 >> 1; $cmp742 = ($shr741|0)>(32767); if ($cmp742) { $cond801 = 32767; } else { $407 = $i; $add746 = (16 + ($407))|0; $arrayidx747 = (($vla6) + ($add746<<2)|0); $408 = HEAP32[$arrayidx747>>2]|0; $shr748 = $408 >> 16; $409 = $Gain_Q10; $conv749 = $409&65535; $conv750 = $conv749 << 16 >> 16; $mul751 = Math_imul($shr748, $conv750)|0; $410 = $i; $add752 = (16 + ($410))|0; $arrayidx753 = (($vla6) + ($add752<<2)|0); $411 = HEAP32[$arrayidx753>>2]|0; $and754 = $411 & 65535; $412 = $Gain_Q10; $conv755 = $412&65535; $conv756 = $conv755 << 16 >> 16; $mul757 = Math_imul($and754, $conv756)|0; $shr758 = $mul757 >> 16; $add759 = (($mul751) + ($shr758))|0; $413 = $i; $add760 = (16 + ($413))|0; $arrayidx761 = (($vla6) + ($add760<<2)|0); $414 = HEAP32[$arrayidx761>>2]|0; $415 = $Gain_Q10; $shr762 = $415 >> 15; $add763 = (($shr762) + 1)|0; $shr764 = $add763 >> 1; $mul765 = Math_imul($414, $shr764)|0; $add766 = (($add759) + ($mul765))|0; $shr767 = $add766 >> 7; $add768 = (($shr767) + 1)|0; $shr769 = $add768 >> 1; $cmp770 = ($shr769|0)<(-32768); if ($cmp770) { $cond801 = -32768; } else { $416 = $i; $add774 = (16 + ($416))|0; $arrayidx775 = (($vla6) + ($add774<<2)|0); $417 = HEAP32[$arrayidx775>>2]|0; $shr776 = $417 >> 16; $418 = $Gain_Q10; $conv777 = $418&65535; $conv778 = $conv777 << 16 >> 16; $mul779 = Math_imul($shr776, $conv778)|0; $419 = $i; $add780 = (16 + ($419))|0; $arrayidx781 = (($vla6) + ($add780<<2)|0); $420 = HEAP32[$arrayidx781>>2]|0; $and782 = $420 & 65535; $421 = $Gain_Q10; $conv783 = $421&65535; $conv784 = $conv783 << 16 >> 16; $mul785 = Math_imul($and782, $conv784)|0; $shr786 = $mul785 >> 16; $add787 = (($mul779) + ($shr786))|0; $422 = $i; $add788 = (16 + ($422))|0; $arrayidx789 = (($vla6) + ($add788<<2)|0); $423 = HEAP32[$arrayidx789>>2]|0; $424 = $Gain_Q10; $shr790 = $424 >> 15; $add791 = (($shr790) + 1)|0; $shr792 = $add791 >> 1; $mul793 = Math_imul($423, $shr792)|0; $add794 = (($add787) + ($mul793))|0; $shr795 = $add794 >> 7; $add796 = (($shr795) + 1)|0; $shr797 = $add796 >> 1; $cond801 = $shr797; } } $conv802 = $cond801&65535; $425 = $pxq; $426 = $i; $arrayidx803 = (($425) + ($426<<1)|0); HEAP16[$arrayidx803>>1] = $conv802; $427 = $i; $inc805 = (($427) + 1)|0; $i = $inc805; } $428 = $psDec$addr; $subfr_length807 = ((($428)) + 2332|0); $429 = HEAP32[$subfr_length807>>2]|0; $arrayidx808 = (($vla6) + ($429<<2)|0); dest=$vla6; src=$arrayidx808; stop=dest+64|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); $430 = $psDec$addr; $subfr_length809 = ((($430)) + 2332|0); $431 = HEAP32[$subfr_length809>>2]|0; $432 = $pexc_Q14; $add$ptr = (($432) + ($431<<2)|0); $pexc_Q14 = $add$ptr; $433 = $psDec$addr; $subfr_length810 = ((($433)) + 2332|0); $434 = HEAP32[$subfr_length810>>2]|0; $435 = $pxq; $add$ptr811 = (($435) + ($434<<1)|0); $pxq = $add$ptr811; $436 = $k; $inc813 = (($436) + 1)|0; $k = $inc813; } $437 = $psDec$addr; $sLPC_Q14_buf815 = ((($437)) + 1284|0); dest=$sLPC_Q14_buf815; src=$vla6; stop=dest+64|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); $438 = $saved_stack; _llvm_stackrestore(($438|0)); STACKTOP = sp;return; } function _silk_INVERSE32_varQ_552($b32,$Qres) { $b32 = $b32|0; $Qres = $Qres|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $Qres$addr = 0, $add = 0; var $add20 = 0, $add21 = 0, $add23 = 0, $add26 = 0, $and = 0, $and15 = 0, $b32$addr = 0, $b32_inv = 0, $b32_nrm = 0, $b_headrm = 0, $call = 0, $cmp = 0, $cmp29 = 0, $cmp35 = 0, $cmp40 = 0, $cmp48 = 0, $cmp61 = 0, $cmp69 = 0, $cmp83 = 0, $cond = 0; var $cond80 = 0, $conv = 0, $conv12 = 0, $conv13 = 0, $conv16 = 0, $conv17 = 0, $conv4 = 0, $conv5 = 0, $conv6 = 0, $div = 0, $err_Q32 = 0, $lshift = 0, $mul = 0, $mul14 = 0, $mul18 = 0, $mul25 = 0, $mul7 = 0, $result = 0, $retval = 0, $shl = 0; var $shl10 = 0, $shl2 = 0, $shl82 = 0, $shr = 0, $shr11 = 0, $shr19 = 0, $shr22 = 0, $shr24 = 0, $shr3 = 0, $shr32 = 0, $shr34 = 0, $shr39 = 0, $shr44 = 0, $shr47 = 0, $shr52 = 0, $shr60 = 0, $shr65 = 0, $shr68 = 0, $shr73 = 0, $shr8 = 0; var $shr86 = 0, $sub = 0, $sub1 = 0, $sub27 = 0, $sub28 = 0, $sub31 = 0, $sub33 = 0, $sub38 = 0, $sub43 = 0, $sub46 = 0, $sub51 = 0, $sub64 = 0, $sub67 = 0, $sub72 = 0, $sub81 = 0, $sub9 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $b32$addr = $b32; $Qres$addr = $Qres; $0 = $b32$addr; $cmp = ($0|0)>(0); $1 = $b32$addr; $sub = (0 - ($1))|0; $cond = $cmp ? $1 : $sub; $call = (_silk_CLZ32_554($cond)|0); $sub1 = (($call) - 1)|0; $b_headrm = $sub1; $2 = $b32$addr; $3 = $b_headrm; $shl = $2 << $3; $b32_nrm = $shl; $4 = $b32_nrm; $shr = $4 >> 16; $div = (536870911 / ($shr|0))&-1; $b32_inv = $div; $5 = $b32_inv; $shl2 = $5 << 16; $result = $shl2; $6 = $b32_nrm; $shr3 = $6 >> 16; $7 = $b32_inv; $conv = $7&65535; $conv4 = $conv << 16 >> 16; $mul = Math_imul($shr3, $conv4)|0; $8 = $b32_nrm; $and = $8 & 65535; $9 = $b32_inv; $conv5 = $9&65535; $conv6 = $conv5 << 16 >> 16; $mul7 = Math_imul($and, $conv6)|0; $shr8 = $mul7 >> 16; $add = (($mul) + ($shr8))|0; $sub9 = (536870912 - ($add))|0; $shl10 = $sub9 << 3; $err_Q32 = $shl10; $10 = $result; $11 = $err_Q32; $shr11 = $11 >> 16; $12 = $b32_inv; $conv12 = $12&65535; $conv13 = $conv12 << 16 >> 16; $mul14 = Math_imul($shr11, $conv13)|0; $13 = $err_Q32; $and15 = $13 & 65535; $14 = $b32_inv; $conv16 = $14&65535; $conv17 = $conv16 << 16 >> 16; $mul18 = Math_imul($and15, $conv17)|0; $shr19 = $mul18 >> 16; $add20 = (($mul14) + ($shr19))|0; $add21 = (($10) + ($add20))|0; $15 = $err_Q32; $16 = $b32_inv; $shr22 = $16 >> 15; $add23 = (($shr22) + 1)|0; $shr24 = $add23 >> 1; $mul25 = Math_imul($15, $shr24)|0; $add26 = (($add21) + ($mul25))|0; $result = $add26; $17 = $b_headrm; $sub27 = (61 - ($17))|0; $18 = $Qres$addr; $sub28 = (($sub27) - ($18))|0; $lshift = $sub28; $19 = $lshift; $cmp29 = ($19|0)<=(0); $20 = $lshift; if (!($cmp29)) { $cmp83 = ($20|0)<(32); if ($cmp83) { $35 = $result; $36 = $lshift; $shr86 = $35 >> $36; $retval = $shr86; $37 = $retval; STACKTOP = sp;return ($37|0); } else { $retval = 0; $37 = $retval; STACKTOP = sp;return ($37|0); } } $sub31 = (0 - ($20))|0; $shr32 = -2147483648 >> $sub31; $21 = $lshift; $sub33 = (0 - ($21))|0; $shr34 = 2147483647 >> $sub33; $cmp35 = ($shr32|0)>($shr34|0); $22 = $result; $23 = $lshift; $sub38 = (0 - ($23))|0; do { if ($cmp35) { $shr39 = -2147483648 >> $sub38; $cmp40 = ($22|0)>($shr39|0); if ($cmp40) { $24 = $lshift; $sub43 = (0 - ($24))|0; $shr44 = -2147483648 >> $sub43; $cond80 = $shr44; break; } $25 = $result; $26 = $lshift; $sub46 = (0 - ($26))|0; $shr47 = 2147483647 >> $sub46; $cmp48 = ($25|0)<($shr47|0); if ($cmp48) { $27 = $lshift; $sub51 = (0 - ($27))|0; $shr52 = 2147483647 >> $sub51; $cond80 = $shr52; break; } else { $28 = $result; $cond80 = $28; break; } } else { $shr60 = 2147483647 >> $sub38; $cmp61 = ($22|0)>($shr60|0); if ($cmp61) { $29 = $lshift; $sub64 = (0 - ($29))|0; $shr65 = 2147483647 >> $sub64; $cond80 = $shr65; break; } $30 = $result; $31 = $lshift; $sub67 = (0 - ($31))|0; $shr68 = -2147483648 >> $sub67; $cmp69 = ($30|0)<($shr68|0); if ($cmp69) { $32 = $lshift; $sub72 = (0 - ($32))|0; $shr73 = -2147483648 >> $sub72; $cond80 = $shr73; break; } else { $33 = $result; $cond80 = $33; break; } } } while(0); $34 = $lshift; $sub81 = (0 - ($34))|0; $shl82 = $cond80 << $sub81; $retval = $shl82; $37 = $retval; STACKTOP = sp;return ($37|0); } function _silk_DIV32_varQ_553($a32,$b32,$Qres) { $a32 = $a32|0; $b32 = $b32|0; $Qres = $Qres|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $Qres$addr = 0, $a32$addr = 0, $a32_nrm = 0, $a_headrm = 0, $add = 0, $add33 = 0, $add34 = 0, $add35 = 0, $and = 0; var $and28 = 0, $b32$addr = 0, $b32_inv = 0, $b32_nrm = 0, $b_headrm = 0, $call = 0, $call8 = 0, $cmp = 0, $cmp2 = 0, $cmp38 = 0, $cmp44 = 0, $cmp49 = 0, $cmp57 = 0, $cmp70 = 0, $cmp78 = 0, $cmp92 = 0, $cond = 0, $cond7 = 0, $cond89 = 0, $conv = 0; var $conv12 = 0, $conv13 = 0, $conv14 = 0, $conv25 = 0, $conv26 = 0, $conv29 = 0, $conv30 = 0, $div = 0, $lshift = 0, $mul = 0, $mul15 = 0, $mul27 = 0, $mul31 = 0, $result = 0, $retval = 0, $shl = 0, $shl10 = 0, $shl22 = 0, $shl91 = 0, $shr = 0; var $shr11 = 0, $shr16 = 0, $shr24 = 0, $shr32 = 0, $shr41 = 0, $shr43 = 0, $shr48 = 0, $shr53 = 0, $shr56 = 0, $shr61 = 0, $shr69 = 0, $shr74 = 0, $shr77 = 0, $shr82 = 0, $shr95 = 0, $sub = 0, $sub1 = 0, $sub23 = 0, $sub36 = 0, $sub37 = 0; var $sub40 = 0, $sub42 = 0, $sub47 = 0, $sub5 = 0, $sub52 = 0, $sub55 = 0, $sub60 = 0, $sub73 = 0, $sub76 = 0, $sub81 = 0, $sub9 = 0, $sub90 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $a32$addr = $a32; $b32$addr = $b32; $Qres$addr = $Qres; $0 = $a32$addr; $cmp = ($0|0)>(0); $1 = $a32$addr; $sub = (0 - ($1))|0; $cond = $cmp ? $1 : $sub; $call = (_silk_CLZ32_554($cond)|0); $sub1 = (($call) - 1)|0; $a_headrm = $sub1; $2 = $a32$addr; $3 = $a_headrm; $shl = $2 << $3; $a32_nrm = $shl; $4 = $b32$addr; $cmp2 = ($4|0)>(0); $5 = $b32$addr; $sub5 = (0 - ($5))|0; $cond7 = $cmp2 ? $5 : $sub5; $call8 = (_silk_CLZ32_554($cond7)|0); $sub9 = (($call8) - 1)|0; $b_headrm = $sub9; $6 = $b32$addr; $7 = $b_headrm; $shl10 = $6 << $7; $b32_nrm = $shl10; $8 = $b32_nrm; $shr = $8 >> 16; $div = (536870911 / ($shr|0))&-1; $b32_inv = $div; $9 = $a32_nrm; $shr11 = $9 >> 16; $10 = $b32_inv; $conv = $10&65535; $conv12 = $conv << 16 >> 16; $mul = Math_imul($shr11, $conv12)|0; $11 = $a32_nrm; $and = $11 & 65535; $12 = $b32_inv; $conv13 = $12&65535; $conv14 = $conv13 << 16 >> 16; $mul15 = Math_imul($and, $conv14)|0; $shr16 = $mul15 >> 16; $add = (($mul) + ($shr16))|0; $result = $add; $13 = $a32_nrm; $14 = $b32_nrm; $15 = ($14|0)<(0); $16 = $15 << 31 >> 31; $17 = $result; $18 = ($17|0)<(0); $19 = $18 << 31 >> 31; $20 = (___muldi3(($14|0),($16|0),($17|0),($19|0))|0); $21 = tempRet0; $22 = (_bitshift64Ashr(($20|0),($21|0),32)|0); $23 = tempRet0; $shl22 = $22 << 3; $sub23 = (($13) - ($shl22))|0; $a32_nrm = $sub23; $24 = $result; $25 = $a32_nrm; $shr24 = $25 >> 16; $26 = $b32_inv; $conv25 = $26&65535; $conv26 = $conv25 << 16 >> 16; $mul27 = Math_imul($shr24, $conv26)|0; $27 = $a32_nrm; $and28 = $27 & 65535; $28 = $b32_inv; $conv29 = $28&65535; $conv30 = $conv29 << 16 >> 16; $mul31 = Math_imul($and28, $conv30)|0; $shr32 = $mul31 >> 16; $add33 = (($mul27) + ($shr32))|0; $add34 = (($24) + ($add33))|0; $result = $add34; $29 = $a_headrm; $add35 = (29 + ($29))|0; $30 = $b_headrm; $sub36 = (($add35) - ($30))|0; $31 = $Qres$addr; $sub37 = (($sub36) - ($31))|0; $lshift = $sub37; $32 = $lshift; $cmp38 = ($32|0)<(0); $33 = $lshift; if (!($cmp38)) { $cmp92 = ($33|0)<(32); if ($cmp92) { $48 = $result; $49 = $lshift; $shr95 = $48 >> $49; $retval = $shr95; $50 = $retval; STACKTOP = sp;return ($50|0); } else { $retval = 0; $50 = $retval; STACKTOP = sp;return ($50|0); } } $sub40 = (0 - ($33))|0; $shr41 = -2147483648 >> $sub40; $34 = $lshift; $sub42 = (0 - ($34))|0; $shr43 = 2147483647 >> $sub42; $cmp44 = ($shr41|0)>($shr43|0); $35 = $result; $36 = $lshift; $sub47 = (0 - ($36))|0; do { if ($cmp44) { $shr48 = -2147483648 >> $sub47; $cmp49 = ($35|0)>($shr48|0); if ($cmp49) { $37 = $lshift; $sub52 = (0 - ($37))|0; $shr53 = -2147483648 >> $sub52; $cond89 = $shr53; break; } $38 = $result; $39 = $lshift; $sub55 = (0 - ($39))|0; $shr56 = 2147483647 >> $sub55; $cmp57 = ($38|0)<($shr56|0); if ($cmp57) { $40 = $lshift; $sub60 = (0 - ($40))|0; $shr61 = 2147483647 >> $sub60; $cond89 = $shr61; break; } else { $41 = $result; $cond89 = $41; break; } } else { $shr69 = 2147483647 >> $sub47; $cmp70 = ($35|0)>($shr69|0); if ($cmp70) { $42 = $lshift; $sub73 = (0 - ($42))|0; $shr74 = 2147483647 >> $sub73; $cond89 = $shr74; break; } $43 = $result; $44 = $lshift; $sub76 = (0 - ($44))|0; $shr77 = -2147483648 >> $sub76; $cmp78 = ($43|0)<($shr77|0); if ($cmp78) { $45 = $lshift; $sub81 = (0 - ($45))|0; $shr82 = -2147483648 >> $sub81; $cond89 = $shr82; break; } else { $46 = $result; $cond89 = $46; break; } } } while(0); $47 = $lshift; $sub90 = (0 - ($47))|0; $shl91 = $cond89 << $sub90; $retval = $shl91; $50 = $retval; STACKTOP = sp;return ($50|0); } function _silk_CLZ32_554($in32) { $in32 = $in32|0; var $0 = 0, $1 = 0, $2 = 0, $cond = 0, $in32$addr = 0, $sub = 0, $sub1 = 0, $tobool = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $in32$addr = $in32; $0 = $in32$addr; $tobool = ($0|0)!=(0); if (!($tobool)) { $cond = 32; STACKTOP = sp;return ($cond|0); } $1 = $in32$addr; $2 = (Math_clz32(($1|0))|0); $sub = (32 - ($2))|0; $sub1 = (32 - ($sub))|0; $cond = $sub1; STACKTOP = sp;return ($cond|0); } function _silk_interpolate($xi,$x0,$x1,$ifact_Q2,$d) { $xi = $xi|0; $x0 = $x0|0; $x1 = $x1|0; $ifact_Q2 = $ifact_Q2|0; $d = $d|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $arrayidx = 0, $arrayidx1 = 0, $arrayidx10 = 0, $arrayidx3 = 0; var $cmp = 0, $conv = 0, $conv2 = 0, $conv4 = 0, $conv5 = 0, $conv6 = 0, $conv7 = 0, $conv8 = 0, $conv9 = 0, $d$addr = 0, $i = 0, $ifact_Q2$addr = 0, $inc = 0, $mul = 0, $shr = 0, $sub = 0, $x0$addr = 0, $x1$addr = 0, $xi$addr = 0, label = 0; var sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $xi$addr = $xi; $x0$addr = $x0; $x1$addr = $x1; $ifact_Q2$addr = $ifact_Q2; $d$addr = $d; $i = 0; while(1) { $0 = $i; $1 = $d$addr; $cmp = ($0|0)<($1|0); if (!($cmp)) { break; } $2 = $x0$addr; $3 = $i; $arrayidx = (($2) + ($3<<1)|0); $4 = HEAP16[$arrayidx>>1]|0; $conv = $4 << 16 >> 16; $5 = $x1$addr; $6 = $i; $arrayidx1 = (($5) + ($6<<1)|0); $7 = HEAP16[$arrayidx1>>1]|0; $conv2 = $7 << 16 >> 16; $8 = $x0$addr; $9 = $i; $arrayidx3 = (($8) + ($9<<1)|0); $10 = HEAP16[$arrayidx3>>1]|0; $conv4 = $10 << 16 >> 16; $sub = (($conv2) - ($conv4))|0; $conv5 = $sub&65535; $conv6 = $conv5 << 16 >> 16; $11 = $ifact_Q2$addr; $conv7 = $11&65535; $conv8 = $conv7 << 16 >> 16; $mul = Math_imul($conv6, $conv8)|0; $shr = $mul >> 2; $add = (($conv) + ($shr))|0; $conv9 = $add&65535; $12 = $xi$addr; $13 = $i; $arrayidx10 = (($12) + ($13<<1)|0); HEAP16[$arrayidx10>>1] = $conv9; $14 = $i; $inc = (($14) + 1)|0; $i = $inc; } STACKTOP = sp;return; } function _silk_NLSF_encode($NLSFIndices,$pNLSF_Q15,$psNLSF_CB,$pW_Q2,$NLSF_mu_Q20,$nSurvivors,$signalType) { $NLSFIndices = $NLSFIndices|0; $pNLSF_Q15 = $pNLSF_Q15|0; $psNLSF_CB = $psNLSF_CB|0; $pW_Q2 = $pW_Q2|0; $NLSF_mu_Q20 = $NLSF_mu_Q20|0; $nSurvivors = $nSurvivors|0; $signalType = $signalType|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0; var $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0; var $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $CB1_NLSF_Q8 = 0, $CB1_NLSF_Q811 = 0, $CB1_Wght_Q9 = 0, $CB1_Wght_Q916 = 0, $CB1_iCDF = 0, $NLSFIndices$addr = 0, $NLSF_mu_Q20$addr = 0, $NLSF_tmp_Q15 = 0, $W_adj_Q5 = 0, $W_tmp_Q9 = 0, $add = 0; var $arrayidx = 0, $arrayidx15 = 0, $arrayidx20 = 0, $arrayidx27 = 0, $arrayidx31 = 0, $arrayidx32 = 0, $arrayidx34 = 0, $arrayidx36 = 0, $arrayidx44 = 0, $arrayidx45 = 0, $arrayidx53 = 0, $arrayidx56 = 0, $arrayidx64 = 0, $arrayidx69 = 0, $arrayidx72 = 0, $arrayidx76 = 0, $arrayidx78 = 0, $arrayidx83 = 0, $arrayidx90 = 0, $arrayidx94 = 0; var $arrayidx97 = 0, $arrayidx99 = 0, $bestIndex = 0, $bits_q7 = 0, $call = 0, $call63 = 0, $call81 = 0, $cmp = 0, $cmp24 = 0, $cmp70 = 0, $conv = 0, $conv101 = 0, $conv13 = 0, $conv18 = 0, $conv2 = 0, $conv23 = 0, $conv28 = 0, $conv29 = 0, $conv30 = 0, $conv33 = 0; var $conv35 = 0, $conv37 = 0, $conv38 = 0, $conv39 = 0, $conv4 = 0, $conv40 = 0, $conv41 = 0, $conv43 = 0, $conv46 = 0, $conv47 = 0, $conv48 = 0, $conv49 = 0, $conv50 = 0, $conv52 = 0, $conv61 = 0, $conv67 = 0, $conv7 = 0, $conv73 = 0, $conv77 = 0, $conv79 = 0; var $conv84 = 0, $conv85 = 0, $conv87 = 0, $conv88 = 0, $conv95 = 0, $deltaMin_Q15 = 0, $ec_Rates_Q5 = 0, $ec_ix = 0, $i = 0, $iCDF_ptr = 0, $inc = 0, $inc92 = 0, $ind1 = 0, $invQuantStepSize_Q6 = 0, $mul = 0, $mul102 = 0, $mul14 = 0, $mul19 = 0, $mul42 = 0, $mul51 = 0; var $mul55 = 0, $mul68 = 0, $mul89 = 0, $mul98 = 0, $nSurvivors$addr = 0, $order = 0, $order100 = 0, $order12 = 0, $order17 = 0, $order22 = 0, $order3 = 0, $order62 = 0, $pCB_Wght_Q9 = 0, $pCB_element = 0, $pNLSF_Q15$addr = 0, $pW_Q2$addr = 0, $pred_Q8 = 0, $prob_Q8 = 0, $psNLSF_CB$addr = 0, $quantStepSize_Q16 = 0; var $res_Q10 = 0, $ret = 0, $s = 0, $saved_stack = 0, $shl = 0, $shr = 0, $shr65 = 0, $shr86 = 0, $signalType$addr = 0, $sub = 0, $sub74 = 0, $sub75 = 0, $sub80 = 0, $sub82 = 0, $vla = 0, $vla$alloca_mul = 0, $vla5 = 0, $vla5$alloca_mul = 0, $vla8 = 0, $vla8$alloca_mul = 0; var $vla9 = 0, $vla9$alloca_mul = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 224|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(224|0); $bestIndex = sp + 32|0; $res_Q10 = sp + 176|0; $NLSF_tmp_Q15 = sp + 144|0; $W_adj_Q5 = sp + 112|0; $pred_Q8 = sp + 208|0; $ec_ix = sp + 80|0; $NLSFIndices$addr = $NLSFIndices; $pNLSF_Q15$addr = $pNLSF_Q15; $psNLSF_CB$addr = $psNLSF_CB; $pW_Q2$addr = $pW_Q2; $NLSF_mu_Q20$addr = $NLSF_mu_Q20; $nSurvivors$addr = $nSurvivors; $signalType$addr = $signalType; $0 = $pNLSF_Q15$addr; $1 = $psNLSF_CB$addr; $deltaMin_Q15 = ((($1)) + 36|0); $2 = HEAP32[$deltaMin_Q15>>2]|0; $3 = $psNLSF_CB$addr; $order = ((($3)) + 2|0); $4 = HEAP16[$order>>1]|0; $conv = $4 << 16 >> 16; _silk_NLSF_stabilize($0,$2,$conv); $5 = $psNLSF_CB$addr; $6 = HEAP16[$5>>1]|0; $7 = $6&65535; $8 = (_llvm_stacksave()|0); $saved_stack = $8; $vla$alloca_mul = $7<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $9 = $pNLSF_Q15$addr; $10 = $psNLSF_CB$addr; $CB1_NLSF_Q8 = ((($10)) + 8|0); $11 = HEAP32[$CB1_NLSF_Q8>>2]|0; $12 = $psNLSF_CB$addr; $CB1_Wght_Q9 = ((($12)) + 12|0); $13 = HEAP32[$CB1_Wght_Q9>>2]|0; $14 = $psNLSF_CB$addr; $15 = HEAP16[$14>>1]|0; $conv2 = $15 << 16 >> 16; $16 = $psNLSF_CB$addr; $order3 = ((($16)) + 2|0); $17 = HEAP16[$order3>>1]|0; $conv4 = $17 << 16 >> 16; _silk_NLSF_VQ($vla,$9,$11,$13,$conv2,$conv4); $18 = $nSurvivors$addr; $vla5$alloca_mul = $18<<2; $vla5 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla5$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla5$alloca_mul)|0)+15)&-16)|0);; $19 = $psNLSF_CB$addr; $20 = HEAP16[$19>>1]|0; $conv7 = $20 << 16 >> 16; $21 = $nSurvivors$addr; _silk_insertion_sort_increasing($vla,$vla5,$conv7,$21); $22 = $nSurvivors$addr; $vla8$alloca_mul = $22<<2; $vla8 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla8$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla8$alloca_mul)|0)+15)&-16)|0);; $23 = $nSurvivors$addr; $mul = $23<<4; $vla9$alloca_mul = $mul; $vla9 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla9$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla9$alloca_mul)|0)+15)&-16)|0);; $s = 0; while(1) { $24 = $s; $25 = $nSurvivors$addr; $cmp = ($24|0)<($25|0); if (!($cmp)) { break; } $26 = $s; $arrayidx = (($vla5) + ($26<<2)|0); $27 = HEAP32[$arrayidx>>2]|0; $ind1 = $27; $28 = $psNLSF_CB$addr; $CB1_NLSF_Q811 = ((($28)) + 8|0); $29 = HEAP32[$CB1_NLSF_Q811>>2]|0; $30 = $ind1; $31 = $psNLSF_CB$addr; $order12 = ((($31)) + 2|0); $32 = HEAP16[$order12>>1]|0; $conv13 = $32 << 16 >> 16; $mul14 = Math_imul($30, $conv13)|0; $arrayidx15 = (($29) + ($mul14)|0); $pCB_element = $arrayidx15; $33 = $psNLSF_CB$addr; $CB1_Wght_Q916 = ((($33)) + 12|0); $34 = HEAP32[$CB1_Wght_Q916>>2]|0; $35 = $ind1; $36 = $psNLSF_CB$addr; $order17 = ((($36)) + 2|0); $37 = HEAP16[$order17>>1]|0; $conv18 = $37 << 16 >> 16; $mul19 = Math_imul($35, $conv18)|0; $arrayidx20 = (($34) + ($mul19<<1)|0); $pCB_Wght_Q9 = $arrayidx20; $i = 0; while(1) { $38 = $i; $39 = $psNLSF_CB$addr; $order22 = ((($39)) + 2|0); $40 = HEAP16[$order22>>1]|0; $conv23 = $40 << 16 >> 16; $cmp24 = ($38|0)<($conv23|0); if (!($cmp24)) { break; } $41 = $pCB_element; $42 = $i; $arrayidx27 = (($41) + ($42)|0); $43 = HEAP8[$arrayidx27>>0]|0; $conv28 = $43&255; $conv29 = $conv28&65535; $shl = $conv29 << 7; $conv30 = $shl&65535; $44 = $i; $arrayidx31 = (($NLSF_tmp_Q15) + ($44<<1)|0); HEAP16[$arrayidx31>>1] = $conv30; $45 = $pCB_Wght_Q9; $46 = $i; $arrayidx32 = (($45) + ($46<<1)|0); $47 = HEAP16[$arrayidx32>>1]|0; $conv33 = $47 << 16 >> 16; $W_tmp_Q9 = $conv33; $48 = $pNLSF_Q15$addr; $49 = $i; $arrayidx34 = (($48) + ($49<<1)|0); $50 = HEAP16[$arrayidx34>>1]|0; $conv35 = $50 << 16 >> 16; $51 = $i; $arrayidx36 = (($NLSF_tmp_Q15) + ($51<<1)|0); $52 = HEAP16[$arrayidx36>>1]|0; $conv37 = $52 << 16 >> 16; $sub = (($conv35) - ($conv37))|0; $conv38 = $sub&65535; $conv39 = $conv38 << 16 >> 16; $53 = $W_tmp_Q9; $conv40 = $53&65535; $conv41 = $conv40 << 16 >> 16; $mul42 = Math_imul($conv39, $conv41)|0; $shr = $mul42 >> 14; $conv43 = $shr&65535; $54 = $i; $arrayidx44 = (($res_Q10) + ($54<<1)|0); HEAP16[$arrayidx44>>1] = $conv43; $55 = $pW_Q2$addr; $56 = $i; $arrayidx45 = (($55) + ($56<<1)|0); $57 = HEAP16[$arrayidx45>>1]|0; $conv46 = $57 << 16 >> 16; $58 = $W_tmp_Q9; $conv47 = $58&65535; $conv48 = $conv47 << 16 >> 16; $59 = $W_tmp_Q9; $conv49 = $59&65535; $conv50 = $conv49 << 16 >> 16; $mul51 = Math_imul($conv48, $conv50)|0; $call = (_silk_DIV32_varQ_559($conv46,$mul51,21)|0); $conv52 = $call&65535; $60 = $i; $arrayidx53 = (($W_adj_Q5) + ($60<<1)|0); HEAP16[$arrayidx53>>1] = $conv52; $61 = $i; $inc = (($61) + 1)|0; $i = $inc; } $62 = $psNLSF_CB$addr; $63 = $ind1; _silk_NLSF_unpack($ec_ix,$pred_Q8,$62,$63); $64 = $s; $mul55 = $64<<4; $arrayidx56 = (($vla9) + ($mul55)|0); $65 = $psNLSF_CB$addr; $ec_Rates_Q5 = ((($65)) + 32|0); $66 = HEAP32[$ec_Rates_Q5>>2]|0; $67 = $psNLSF_CB$addr; $quantStepSize_Q16 = ((($67)) + 4|0); $68 = HEAP16[$quantStepSize_Q16>>1]|0; $conv61 = $68 << 16 >> 16; $69 = $psNLSF_CB$addr; $invQuantStepSize_Q6 = ((($69)) + 6|0); $70 = HEAP16[$invQuantStepSize_Q6>>1]|0; $71 = $NLSF_mu_Q20$addr; $72 = $psNLSF_CB$addr; $order62 = ((($72)) + 2|0); $73 = HEAP16[$order62>>1]|0; $call63 = (_silk_NLSF_del_dec_quant($arrayidx56,$res_Q10,$W_adj_Q5,$pred_Q8,$ec_ix,$66,$conv61,$70,$71,$73)|0); $74 = $s; $arrayidx64 = (($vla8) + ($74<<2)|0); HEAP32[$arrayidx64>>2] = $call63; $75 = $psNLSF_CB$addr; $CB1_iCDF = ((($75)) + 16|0); $76 = HEAP32[$CB1_iCDF>>2]|0; $77 = $signalType$addr; $shr65 = $77 >> 1; $78 = $psNLSF_CB$addr; $79 = HEAP16[$78>>1]|0; $conv67 = $79 << 16 >> 16; $mul68 = Math_imul($shr65, $conv67)|0; $arrayidx69 = (($76) + ($mul68)|0); $iCDF_ptr = $arrayidx69; $80 = $ind1; $cmp70 = ($80|0)==(0); $81 = $iCDF_ptr; $82 = $ind1; if ($cmp70) { $arrayidx72 = (($81) + ($82)|0); $83 = HEAP8[$arrayidx72>>0]|0; $conv73 = $83&255; $sub74 = (256 - ($conv73))|0; $prob_Q8 = $sub74; } else { $sub75 = (($82) - 1)|0; $arrayidx76 = (($81) + ($sub75)|0); $84 = HEAP8[$arrayidx76>>0]|0; $conv77 = $84&255; $85 = $iCDF_ptr; $86 = $ind1; $arrayidx78 = (($85) + ($86)|0); $87 = HEAP8[$arrayidx78>>0]|0; $conv79 = $87&255; $sub80 = (($conv77) - ($conv79))|0; $prob_Q8 = $sub80; } $88 = $prob_Q8; $call81 = (_silk_lin2log($88)|0); $sub82 = (1024 - ($call81))|0; $bits_q7 = $sub82; $89 = $s; $arrayidx83 = (($vla8) + ($89<<2)|0); $90 = HEAP32[$arrayidx83>>2]|0; $91 = $bits_q7; $conv84 = $91&65535; $conv85 = $conv84 << 16 >> 16; $92 = $NLSF_mu_Q20$addr; $shr86 = $92 >> 2; $conv87 = $shr86&65535; $conv88 = $conv87 << 16 >> 16; $mul89 = Math_imul($conv85, $conv88)|0; $add = (($90) + ($mul89))|0; $93 = $s; $arrayidx90 = (($vla8) + ($93<<2)|0); HEAP32[$arrayidx90>>2] = $add; $94 = $s; $inc92 = (($94) + 1)|0; $s = $inc92; } $95 = $nSurvivors$addr; _silk_insertion_sort_increasing($vla8,$bestIndex,$95,1); $96 = HEAP32[$bestIndex>>2]|0; $arrayidx94 = (($vla5) + ($96<<2)|0); $97 = HEAP32[$arrayidx94>>2]|0; $conv95 = $97&255; $98 = $NLSFIndices$addr; HEAP8[$98>>0] = $conv95; $99 = $NLSFIndices$addr; $arrayidx97 = ((($99)) + 1|0); $100 = HEAP32[$bestIndex>>2]|0; $mul98 = $100<<4; $arrayidx99 = (($vla9) + ($mul98)|0); $101 = $psNLSF_CB$addr; $order100 = ((($101)) + 2|0); $102 = HEAP16[$order100>>1]|0; $conv101 = $102 << 16 >> 16; $mul102 = $conv101; _memcpy(($arrayidx97|0),($arrayidx99|0),($mul102|0))|0; $103 = $pNLSF_Q15$addr; $104 = $NLSFIndices$addr; $105 = $psNLSF_CB$addr; _silk_NLSF_decode($103,$104,$105); $106 = HEAP32[$vla8>>2]|0; $ret = $106; $107 = $ret; $108 = $saved_stack; _llvm_stackrestore(($108|0)); STACKTOP = sp;return ($107|0); } function _silk_DIV32_varQ_559($a32,$b32,$Qres) { $a32 = $a32|0; $b32 = $b32|0; $Qres = $Qres|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $Qres$addr = 0, $a32$addr = 0, $a32_nrm = 0, $a_headrm = 0, $add = 0, $add33 = 0, $add34 = 0, $add35 = 0, $and = 0; var $and28 = 0, $b32$addr = 0, $b32_inv = 0, $b32_nrm = 0, $b_headrm = 0, $call = 0, $call8 = 0, $cmp = 0, $cmp2 = 0, $cmp38 = 0, $cmp44 = 0, $cmp49 = 0, $cmp57 = 0, $cmp70 = 0, $cmp78 = 0, $cmp92 = 0, $cond = 0, $cond7 = 0, $cond89 = 0, $conv = 0; var $conv12 = 0, $conv13 = 0, $conv14 = 0, $conv25 = 0, $conv26 = 0, $conv29 = 0, $conv30 = 0, $div = 0, $lshift = 0, $mul = 0, $mul15 = 0, $mul27 = 0, $mul31 = 0, $result = 0, $retval = 0, $shl = 0, $shl10 = 0, $shl22 = 0, $shl91 = 0, $shr = 0; var $shr11 = 0, $shr16 = 0, $shr24 = 0, $shr32 = 0, $shr41 = 0, $shr43 = 0, $shr48 = 0, $shr53 = 0, $shr56 = 0, $shr61 = 0, $shr69 = 0, $shr74 = 0, $shr77 = 0, $shr82 = 0, $shr95 = 0, $sub = 0, $sub1 = 0, $sub23 = 0, $sub36 = 0, $sub37 = 0; var $sub40 = 0, $sub42 = 0, $sub47 = 0, $sub5 = 0, $sub52 = 0, $sub55 = 0, $sub60 = 0, $sub73 = 0, $sub76 = 0, $sub81 = 0, $sub9 = 0, $sub90 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $a32$addr = $a32; $b32$addr = $b32; $Qres$addr = $Qres; $0 = $a32$addr; $cmp = ($0|0)>(0); $1 = $a32$addr; $sub = (0 - ($1))|0; $cond = $cmp ? $1 : $sub; $call = (_silk_CLZ32_560($cond)|0); $sub1 = (($call) - 1)|0; $a_headrm = $sub1; $2 = $a32$addr; $3 = $a_headrm; $shl = $2 << $3; $a32_nrm = $shl; $4 = $b32$addr; $cmp2 = ($4|0)>(0); $5 = $b32$addr; $sub5 = (0 - ($5))|0; $cond7 = $cmp2 ? $5 : $sub5; $call8 = (_silk_CLZ32_560($cond7)|0); $sub9 = (($call8) - 1)|0; $b_headrm = $sub9; $6 = $b32$addr; $7 = $b_headrm; $shl10 = $6 << $7; $b32_nrm = $shl10; $8 = $b32_nrm; $shr = $8 >> 16; $div = (536870911 / ($shr|0))&-1; $b32_inv = $div; $9 = $a32_nrm; $shr11 = $9 >> 16; $10 = $b32_inv; $conv = $10&65535; $conv12 = $conv << 16 >> 16; $mul = Math_imul($shr11, $conv12)|0; $11 = $a32_nrm; $and = $11 & 65535; $12 = $b32_inv; $conv13 = $12&65535; $conv14 = $conv13 << 16 >> 16; $mul15 = Math_imul($and, $conv14)|0; $shr16 = $mul15 >> 16; $add = (($mul) + ($shr16))|0; $result = $add; $13 = $a32_nrm; $14 = $b32_nrm; $15 = ($14|0)<(0); $16 = $15 << 31 >> 31; $17 = $result; $18 = ($17|0)<(0); $19 = $18 << 31 >> 31; $20 = (___muldi3(($14|0),($16|0),($17|0),($19|0))|0); $21 = tempRet0; $22 = (_bitshift64Ashr(($20|0),($21|0),32)|0); $23 = tempRet0; $shl22 = $22 << 3; $sub23 = (($13) - ($shl22))|0; $a32_nrm = $sub23; $24 = $result; $25 = $a32_nrm; $shr24 = $25 >> 16; $26 = $b32_inv; $conv25 = $26&65535; $conv26 = $conv25 << 16 >> 16; $mul27 = Math_imul($shr24, $conv26)|0; $27 = $a32_nrm; $and28 = $27 & 65535; $28 = $b32_inv; $conv29 = $28&65535; $conv30 = $conv29 << 16 >> 16; $mul31 = Math_imul($and28, $conv30)|0; $shr32 = $mul31 >> 16; $add33 = (($mul27) + ($shr32))|0; $add34 = (($24) + ($add33))|0; $result = $add34; $29 = $a_headrm; $add35 = (29 + ($29))|0; $30 = $b_headrm; $sub36 = (($add35) - ($30))|0; $31 = $Qres$addr; $sub37 = (($sub36) - ($31))|0; $lshift = $sub37; $32 = $lshift; $cmp38 = ($32|0)<(0); $33 = $lshift; if (!($cmp38)) { $cmp92 = ($33|0)<(32); if ($cmp92) { $48 = $result; $49 = $lshift; $shr95 = $48 >> $49; $retval = $shr95; $50 = $retval; STACKTOP = sp;return ($50|0); } else { $retval = 0; $50 = $retval; STACKTOP = sp;return ($50|0); } } $sub40 = (0 - ($33))|0; $shr41 = -2147483648 >> $sub40; $34 = $lshift; $sub42 = (0 - ($34))|0; $shr43 = 2147483647 >> $sub42; $cmp44 = ($shr41|0)>($shr43|0); $35 = $result; $36 = $lshift; $sub47 = (0 - ($36))|0; do { if ($cmp44) { $shr48 = -2147483648 >> $sub47; $cmp49 = ($35|0)>($shr48|0); if ($cmp49) { $37 = $lshift; $sub52 = (0 - ($37))|0; $shr53 = -2147483648 >> $sub52; $cond89 = $shr53; break; } $38 = $result; $39 = $lshift; $sub55 = (0 - ($39))|0; $shr56 = 2147483647 >> $sub55; $cmp57 = ($38|0)<($shr56|0); if ($cmp57) { $40 = $lshift; $sub60 = (0 - ($40))|0; $shr61 = 2147483647 >> $sub60; $cond89 = $shr61; break; } else { $41 = $result; $cond89 = $41; break; } } else { $shr69 = 2147483647 >> $sub47; $cmp70 = ($35|0)>($shr69|0); if ($cmp70) { $42 = $lshift; $sub73 = (0 - ($42))|0; $shr74 = 2147483647 >> $sub73; $cond89 = $shr74; break; } $43 = $result; $44 = $lshift; $sub76 = (0 - ($44))|0; $shr77 = -2147483648 >> $sub76; $cmp78 = ($43|0)<($shr77|0); if ($cmp78) { $45 = $lshift; $sub81 = (0 - ($45))|0; $shr82 = -2147483648 >> $sub81; $cond89 = $shr82; break; } else { $46 = $result; $cond89 = $46; break; } } } while(0); $47 = $lshift; $sub90 = (0 - ($47))|0; $shl91 = $cond89 << $sub90; $retval = $shl91; $50 = $retval; STACKTOP = sp;return ($50|0); } function _silk_CLZ32_560($in32) { $in32 = $in32|0; var $0 = 0, $1 = 0, $2 = 0, $cond = 0, $in32$addr = 0, $sub = 0, $sub1 = 0, $tobool = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $in32$addr = $in32; $0 = $in32$addr; $tobool = ($0|0)!=(0); if (!($tobool)) { $cond = 32; STACKTOP = sp;return ($cond|0); } $1 = $in32$addr; $2 = (Math_clz32(($1|0))|0); $sub = (32 - ($2))|0; $sub1 = (32 - ($sub))|0; $cond = $sub1; STACKTOP = sp;return ($cond|0); } function _silk_NLSF_VQ($err_Q24,$in_Q15,$pCB_Q8,$pWght_Q9,$K,$LPC_order) { $err_Q24 = $err_Q24|0; $in_Q15 = $in_Q15|0; $pCB_Q8 = $pCB_Q8|0; $pWght_Q9 = $pWght_Q9|0; $K = $K|0; $LPC_order = $LPC_order|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $K$addr = 0, $LPC_order$addr = 0, $add = 0, $add$ptr = 0, $add$ptr49 = 0, $add10 = 0, $add21 = 0, $add4 = 0, $add46 = 0, $arrayidx = 0, $arrayidx11 = 0, $arrayidx22 = 0, $arrayidx24 = 0; var $arrayidx30 = 0, $arrayidx48 = 0, $arrayidx5 = 0, $cb_Q8_ptr = 0, $cmp = 0, $cmp14 = 0, $cmp2 = 0, $cmp35 = 0, $cond = 0, $cond45 = 0, $conv = 0, $conv12 = 0, $conv23 = 0, $conv25 = 0, $conv28 = 0, $conv29 = 0, $conv31 = 0, $conv6 = 0, $conv8 = 0, $conv9 = 0; var $diff_Q15 = 0, $diffw_Q24 = 0, $err_Q24$addr = 0, $i = 0, $in_Q15$addr = 0, $inc = 0, $m = 0, $mul = 0, $mul32 = 0, $pCB_Q8$addr = 0, $pWght_Q9$addr = 0, $pred_Q24 = 0, $shl = 0, $shl26 = 0, $shr = 0, $shr16 = 0, $shr33 = 0, $shr38 = 0, $sub = 0, $sub13 = 0; var $sub17 = 0, $sub20 = 0, $sub27 = 0, $sub34 = 0, $sub39 = 0, $sub43 = 0, $sub47 = 0, $sub7 = 0, $sum_error_Q24 = 0, $w_Q9_ptr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $err_Q24$addr = $err_Q24; $in_Q15$addr = $in_Q15; $pCB_Q8$addr = $pCB_Q8; $pWght_Q9$addr = $pWght_Q9; $K$addr = $K; $LPC_order$addr = $LPC_order; $0 = $pCB_Q8$addr; $cb_Q8_ptr = $0; $1 = $pWght_Q9$addr; $w_Q9_ptr = $1; $i = 0; while(1) { $2 = $i; $3 = $K$addr; $cmp = ($2|0)<($3|0); if (!($cmp)) { break; } $sum_error_Q24 = 0; $pred_Q24 = 0; $4 = $LPC_order$addr; $sub = (($4) - 2)|0; $m = $sub; while(1) { $5 = $m; $cmp2 = ($5|0)>=(0); if (!($cmp2)) { break; } $6 = $in_Q15$addr; $7 = $m; $add = (($7) + 1)|0; $arrayidx = (($6) + ($add<<1)|0); $8 = HEAP16[$arrayidx>>1]|0; $conv = $8 << 16 >> 16; $9 = $cb_Q8_ptr; $10 = $m; $add4 = (($10) + 1)|0; $arrayidx5 = (($9) + ($add4)|0); $11 = HEAP8[$arrayidx5>>0]|0; $conv6 = $11&255; $shl = $conv6 << 7; $sub7 = (($conv) - ($shl))|0; $diff_Q15 = $sub7; $12 = $diff_Q15; $conv8 = $12&65535; $conv9 = $conv8 << 16 >> 16; $13 = $w_Q9_ptr; $14 = $m; $add10 = (($14) + 1)|0; $arrayidx11 = (($13) + ($add10<<1)|0); $15 = HEAP16[$arrayidx11>>1]|0; $conv12 = $15 << 16 >> 16; $mul = Math_imul($conv9, $conv12)|0; $diffw_Q24 = $mul; $16 = $sum_error_Q24; $17 = $diffw_Q24; $18 = $pred_Q24; $shr = $18 >> 1; $sub13 = (($17) - ($shr))|0; $cmp14 = ($sub13|0)>(0); $19 = $diffw_Q24; $20 = $pred_Q24; $shr16 = $20 >> 1; $sub17 = (($19) - ($shr16))|0; $sub20 = (0 - ($sub17))|0; $cond = $cmp14 ? $sub17 : $sub20; $add21 = (($16) + ($cond))|0; $sum_error_Q24 = $add21; $21 = $diffw_Q24; $pred_Q24 = $21; $22 = $in_Q15$addr; $23 = $m; $arrayidx22 = (($22) + ($23<<1)|0); $24 = HEAP16[$arrayidx22>>1]|0; $conv23 = $24 << 16 >> 16; $25 = $cb_Q8_ptr; $26 = $m; $arrayidx24 = (($25) + ($26)|0); $27 = HEAP8[$arrayidx24>>0]|0; $conv25 = $27&255; $shl26 = $conv25 << 7; $sub27 = (($conv23) - ($shl26))|0; $diff_Q15 = $sub27; $28 = $diff_Q15; $conv28 = $28&65535; $conv29 = $conv28 << 16 >> 16; $29 = $w_Q9_ptr; $30 = $m; $arrayidx30 = (($29) + ($30<<1)|0); $31 = HEAP16[$arrayidx30>>1]|0; $conv31 = $31 << 16 >> 16; $mul32 = Math_imul($conv29, $conv31)|0; $diffw_Q24 = $mul32; $32 = $sum_error_Q24; $33 = $diffw_Q24; $34 = $pred_Q24; $shr33 = $34 >> 1; $sub34 = (($33) - ($shr33))|0; $cmp35 = ($sub34|0)>(0); $35 = $diffw_Q24; $36 = $pred_Q24; $shr38 = $36 >> 1; $sub39 = (($35) - ($shr38))|0; $sub43 = (0 - ($sub39))|0; $cond45 = $cmp35 ? $sub39 : $sub43; $add46 = (($32) + ($cond45))|0; $sum_error_Q24 = $add46; $37 = $diffw_Q24; $pred_Q24 = $37; $38 = $m; $sub47 = (($38) - 2)|0; $m = $sub47; } $39 = $sum_error_Q24; $40 = $err_Q24$addr; $41 = $i; $arrayidx48 = (($40) + ($41<<2)|0); HEAP32[$arrayidx48>>2] = $39; $42 = $LPC_order$addr; $43 = $cb_Q8_ptr; $add$ptr = (($43) + ($42)|0); $cb_Q8_ptr = $add$ptr; $44 = $LPC_order$addr; $45 = $w_Q9_ptr; $add$ptr49 = (($45) + ($44<<1)|0); $w_Q9_ptr = $add$ptr49; $46 = $i; $inc = (($46) + 1)|0; $i = $inc; } STACKTOP = sp;return; } function _silk_NLSF_del_dec_quant($indices,$x_Q10,$w_Q5,$pred_coef_Q8,$ec_ix,$ec_rates_Q5,$quant_step_size_Q16,$inv_quant_step_size_Q6,$mu_Q20,$order) { $indices = $indices|0; $x_Q10 = $x_Q10|0; $w_Q5 = $w_Q5|0; $pred_coef_Q8 = $pred_coef_Q8|0; $ec_ix = $ec_ix|0; $ec_rates_Q5 = $ec_rates_Q5|0; $quant_step_size_Q16 = $quant_step_size_Q16|0; $inv_quant_step_size_Q6 = $inv_quant_step_size_Q6|0; $mu_Q20 = $mu_Q20|0; $order = $order|0; var $$sink = 0, $$sink1 = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0; var $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0; var $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0; var $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0; var $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0; var $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0; var $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0; var $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0; var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0; var $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0; var $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $RD_Q25 = 0, $RD_max_Q25 = 0, $RD_min_Q25 = 0, $RD_tmp_Q25 = 0, $add = 0, $add102 = 0, $add106 = 0, $add113 = 0, $add114 = 0; var $add123 = 0, $add124 = 0, $add131 = 0, $add135 = 0, $add138 = 0, $add139 = 0, $add155 = 0, $add161 = 0, $add173 = 0, $add179 = 0, $add180 = 0, $add195 = 0, $add197 = 0, $add21 = 0, $add222 = 0, $add229 = 0, $add235 = 0, $add238 = 0, $add241 = 0, $add243 = 0; var $add248 = 0, $add28 = 0, $add281 = 0, $add284 = 0, $add301 = 0, $add336 = 0, $add35 = 0, $add41 = 0, $add83 = 0, $add86 = 0, $add90 = 0, $add93 = 0, $add96 = 0, $add98 = 0, $and = 0, $arrayidx = 0, $arrayidx107 = 0, $arrayidx125 = 0, $arrayidx136 = 0, $arrayidx140 = 0; var $arrayidx144 = 0, $arrayidx152 = 0, $arrayidx162 = 0, $arrayidx170 = 0, $arrayidx181 = 0, $arrayidx192 = 0, $arrayidx193 = 0, $arrayidx198 = 0, $arrayidx199 = 0, $arrayidx209 = 0, $arrayidx210 = 0, $arrayidx211 = 0, $arrayidx212 = 0, $arrayidx221 = 0, $arrayidx223 = 0, $arrayidx227 = 0, $arrayidx228 = 0, $arrayidx230 = 0, $arrayidx231 = 0, $arrayidx232 = 0; var $arrayidx233 = 0, $arrayidx234 = 0, $arrayidx236 = 0, $arrayidx237 = 0, $arrayidx239 = 0, $arrayidx240 = 0, $arrayidx242 = 0, $arrayidx247 = 0, $arrayidx249 = 0, $arrayidx250 = 0, $arrayidx251 = 0, $arrayidx260 = 0, $arrayidx264 = 0, $arrayidx266 = 0, $arrayidx270 = 0, $arrayidx279 = 0, $arrayidx280 = 0, $arrayidx282 = 0, $arrayidx283 = 0, $arrayidx285 = 0; var $arrayidx286 = 0, $arrayidx287 = 0, $arrayidx288 = 0, $arrayidx289 = 0, $arrayidx290 = 0, $arrayidx296 = 0, $arrayidx298 = 0, $arrayidx299 = 0, $arrayidx313 = 0, $arrayidx317 = 0, $arrayidx327 = 0, $arrayidx328 = 0, $arrayidx329 = 0, $arrayidx42 = 0, $arrayidx51 = 0, $arrayidx52 = 0, $arrayidx53 = 0, $arrayidx59 = 0, $arrayidx62 = 0, $arrayidx81 = 0; var $arrayidx82 = 0, $arrayidx84 = 0, $arrayidx87 = 0, $arrayidx95 = 0, $arrayidx97 = 0, $cmp = 0, $cmp10 = 0, $cmp103 = 0, $cmp117 = 0, $cmp120 = 0, $cmp17 = 0, $cmp185 = 0, $cmp189 = 0, $cmp205 = 0, $cmp218 = 0, $cmp224 = 0, $cmp257 = 0, $cmp261 = 0, $cmp267 = 0, $cmp275 = 0; var $cmp293 = 0, $cmp3 = 0, $cmp310 = 0, $cmp314 = 0, $cmp324 = 0, $cmp48 = 0, $cmp56 = 0, $cmp72 = 0, $cmp74 = 0, $cmp99 = 0, $cond = 0, $cond79 = 0, $conv = 0, $conv1 = 0, $conv108 = 0, $conv110 = 0, $conv111 = 0, $conv126 = 0, $conv128 = 0, $conv129 = 0; var $conv13 = 0, $conv137 = 0, $conv141 = 0, $conv145 = 0, $conv147 = 0, $conv148 = 0, $conv149 = 0, $conv15 = 0, $conv150 = 0, $conv153 = 0, $conv156 = 0, $conv157 = 0, $conv158 = 0, $conv159 = 0, $conv163 = 0, $conv165 = 0, $conv166 = 0, $conv167 = 0, $conv168 = 0, $conv171 = 0; var $conv174 = 0, $conv175 = 0, $conv176 = 0, $conv177 = 0, $conv194 = 0, $conv196 = 0, $conv2 = 0, $conv20 = 0, $conv22 = 0, $conv27 = 0, $conv29 = 0, $conv300 = 0, $conv302 = 0, $conv32 = 0, $conv323 = 0, $conv33 = 0, $conv335 = 0, $conv337 = 0, $conv34 = 0, $conv36 = 0; var $conv37 = 0, $conv38 = 0, $conv45 = 0, $conv5 = 0, $conv54 = 0, $conv6 = 0, $conv60 = 0, $conv61 = 0, $conv63 = 0, $conv67 = 0, $conv68 = 0, $conv69 = 0, $conv7 = 0, $conv80 = 0, $conv85 = 0, $conv88 = 0, $conv89 = 0, $conv9 = 0, $conv91 = 0, $conv92 = 0; var $conv94 = 0, $dec = 0, $diff_Q10 = 0, $ec_ix$addr = 0, $ec_rates_Q5$addr = 0, $i = 0, $idxprom = 0, $in_Q10 = 0, $inc = 0, $inc183 = 0, $inc201 = 0, $inc214 = 0, $inc254 = 0, $inc273 = 0, $inc304 = 0, $inc320 = 0, $inc331 = 0, $ind = 0, $ind_max_min = 0, $ind_min_max = 0; var $ind_sort = 0, $ind_tmp = 0, $indices$addr = 0, $inv_quant_step_size_Q6$addr = 0, $j = 0, $max_min_Q25 = 0, $min_Q25 = 0, $min_max_Q25 = 0, $mu_Q20$addr = 0, $mul = 0, $mul112 = 0, $mul130 = 0, $mul151 = 0, $mul154 = 0, $mul160 = 0, $mul169 = 0, $mul172 = 0, $mul178 = 0, $mul39 = 0, $mul64 = 0; var $mul70 = 0, $nStates = 0, $order$addr = 0, $out0_Q10 = 0, $out0_Q10_table = 0, $out1_Q10 = 0, $out1_Q10_table = 0, $pred_Q10 = 0, $pred_coef_Q8$addr = 0, $prev_out_Q10 = 0, $quant_step_size_Q16$addr = 0, $rate0_Q5 = 0, $rate1_Q5 = 0, $rates_Q5 = 0, $res_Q10 = 0, $shl = 0, $shl203 = 0, $shr = 0, $shr297 = 0, $shr333 = 0; var $shr40 = 0, $shr65 = 0, $shr71 = 0, $sub = 0, $sub132 = 0, $sub14 = 0, $sub146 = 0, $sub164 = 0, $sub208 = 0, $sub46 = 0, $sub66 = 0, $sub8 = 0, $w_Q5$addr = 0, $x_Q10$addr = 0, $xor = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; sp = STACKTOP; STACKTOP = STACKTOP + 432|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(432|0); $ind_sort = sp + 232|0; $ind = sp + 368|0; $prev_out_Q10 = sp + 344|0; $RD_Q25 = sp + 200|0; $RD_min_Q25 = sp + 184|0; $RD_max_Q25 = sp + 168|0; $out0_Q10_table = sp + 80|0; $out1_Q10_table = sp; $indices$addr = $indices; $x_Q10$addr = $x_Q10; $w_Q5$addr = $w_Q5; $pred_coef_Q8$addr = $pred_coef_Q8; $ec_ix$addr = $ec_ix; $ec_rates_Q5$addr = $ec_rates_Q5; $quant_step_size_Q16$addr = $quant_step_size_Q16; $inv_quant_step_size_Q6$addr = $inv_quant_step_size_Q6; $mu_Q20$addr = $mu_Q20; $order$addr = $order; $i = -10; while(1) { $0 = $i; $cmp = ($0|0)<=(9); if (!($cmp)) { break; } $1 = $i; $shl = $1 << 10; $conv = $shl&65535; $out0_Q10 = $conv; $2 = $out0_Q10; $conv1 = $2 << 16 >> 16; $add = (($conv1) + 1024)|0; $conv2 = $add&65535; $out1_Q10 = $conv2; $3 = $i; $cmp3 = ($3|0)>(0); do { if ($cmp3) { $4 = $out0_Q10; $conv5 = $4 << 16 >> 16; $sub = (($conv5) - 102)|0; $conv6 = $sub&65535; $out0_Q10 = $conv6; $5 = $out1_Q10; $conv7 = $5 << 16 >> 16; $sub8 = (($conv7) - 102)|0; $conv9 = $sub8&65535; $out1_Q10 = $conv9; } else { $6 = $i; $cmp10 = ($6|0)==(0); if ($cmp10) { $7 = $out1_Q10; $conv13 = $7 << 16 >> 16; $sub14 = (($conv13) - 102)|0; $conv15 = $sub14&65535; $out1_Q10 = $conv15; break; } $8 = $i; $cmp17 = ($8|0)==(-1); $9 = $out0_Q10; $conv20 = $9 << 16 >> 16; $add21 = (($conv20) + 102)|0; $conv22 = $add21&65535; $out0_Q10 = $conv22; if (!($cmp17)) { $10 = $out1_Q10; $conv27 = $10 << 16 >> 16; $add28 = (($conv27) + 102)|0; $conv29 = $add28&65535; $out1_Q10 = $conv29; } } } while(0); $11 = $out0_Q10; $conv32 = $11 << 16 >> 16; $12 = $quant_step_size_Q16$addr; $conv33 = $12&65535; $conv34 = $conv33 << 16 >> 16; $mul = Math_imul($conv32, $conv34)|0; $shr = $mul >> 16; $13 = $i; $add35 = (($13) + 10)|0; $arrayidx = (($out0_Q10_table) + ($add35<<2)|0); HEAP32[$arrayidx>>2] = $shr; $14 = $out1_Q10; $conv36 = $14 << 16 >> 16; $15 = $quant_step_size_Q16$addr; $conv37 = $15&65535; $conv38 = $conv37 << 16 >> 16; $mul39 = Math_imul($conv36, $conv38)|0; $shr40 = $mul39 >> 16; $16 = $i; $add41 = (($16) + 10)|0; $arrayidx42 = (($out1_Q10_table) + ($add41<<2)|0); HEAP32[$arrayidx42>>2] = $shr40; $17 = $i; $inc = (($17) + 1)|0; $i = $inc; } $nStates = 1; HEAP32[$RD_Q25>>2] = 0; HEAP16[$prev_out_Q10>>1] = 0; $18 = $order$addr; $conv45 = $18 << 16 >> 16; $sub46 = (($conv45) - 1)|0; $i = $sub46; while(1) { $19 = $i; $cmp48 = ($19|0)>=(0); if (!($cmp48)) { break; } $20 = $ec_rates_Q5$addr; $21 = $ec_ix$addr; $22 = $i; $arrayidx51 = (($21) + ($22<<1)|0); $23 = HEAP16[$arrayidx51>>1]|0; $idxprom = $23 << 16 >> 16; $arrayidx52 = (($20) + ($idxprom)|0); $rates_Q5 = $arrayidx52; $24 = $x_Q10$addr; $25 = $i; $arrayidx53 = (($24) + ($25<<1)|0); $26 = HEAP16[$arrayidx53>>1]|0; $conv54 = $26 << 16 >> 16; $in_Q10 = $conv54; $j = 0; while(1) { $27 = $j; $28 = $nStates; $cmp56 = ($27|0)<($28|0); if (!($cmp56)) { break; } $29 = $pred_coef_Q8$addr; $30 = $i; $arrayidx59 = (($29) + ($30)|0); $31 = HEAP8[$arrayidx59>>0]|0; $conv60 = $31&255; $conv61 = $conv60 << 16 >> 16; $32 = $j; $arrayidx62 = (($prev_out_Q10) + ($32<<1)|0); $33 = HEAP16[$arrayidx62>>1]|0; $conv63 = $33 << 16 >> 16; $mul64 = Math_imul($conv61, $conv63)|0; $shr65 = $mul64 >> 8; $pred_Q10 = $shr65; $34 = $in_Q10; $35 = $pred_Q10; $sub66 = (($34) - ($35))|0; $res_Q10 = $sub66; $36 = $inv_quant_step_size_Q6$addr; $conv67 = $36 << 16 >> 16; $37 = $res_Q10; $conv68 = $37&65535; $conv69 = $conv68 << 16 >> 16; $mul70 = Math_imul($conv67, $conv69)|0; $shr71 = $mul70 >> 16; $ind_tmp = $shr71; $38 = $ind_tmp; $cmp72 = ($38|0)>(9); if ($cmp72) { $cond79 = 9; } else { $39 = $ind_tmp; $cmp74 = ($39|0)<(-10); $40 = $ind_tmp; $cond = $cmp74 ? -10 : $40; $cond79 = $cond; } $ind_tmp = $cond79; $41 = $ind_tmp; $conv80 = $41&255; $42 = $j; $arrayidx81 = (($ind) + ($42<<4)|0); $43 = $i; $arrayidx82 = (($arrayidx81) + ($43)|0); HEAP8[$arrayidx82>>0] = $conv80; $44 = $ind_tmp; $add83 = (($44) + 10)|0; $arrayidx84 = (($out0_Q10_table) + ($add83<<2)|0); $45 = HEAP32[$arrayidx84>>2]|0; $conv85 = $45&65535; $out0_Q10 = $conv85; $46 = $ind_tmp; $add86 = (($46) + 10)|0; $arrayidx87 = (($out1_Q10_table) + ($add86<<2)|0); $47 = HEAP32[$arrayidx87>>2]|0; $conv88 = $47&65535; $out1_Q10 = $conv88; $48 = $out0_Q10; $conv89 = $48 << 16 >> 16; $49 = $pred_Q10; $add90 = (($conv89) + ($49))|0; $conv91 = $add90&65535; $out0_Q10 = $conv91; $50 = $out1_Q10; $conv92 = $50 << 16 >> 16; $51 = $pred_Q10; $add93 = (($conv92) + ($51))|0; $conv94 = $add93&65535; $out1_Q10 = $conv94; $52 = $out0_Q10; $53 = $j; $arrayidx95 = (($prev_out_Q10) + ($53<<1)|0); HEAP16[$arrayidx95>>1] = $52; $54 = $out1_Q10; $55 = $j; $56 = $nStates; $add96 = (($55) + ($56))|0; $arrayidx97 = (($prev_out_Q10) + ($add96<<1)|0); HEAP16[$arrayidx97>>1] = $54; $57 = $ind_tmp; $add98 = (($57) + 1)|0; $cmp99 = ($add98|0)>=(4); $58 = $ind_tmp; do { if ($cmp99) { $add102 = (($58) + 1)|0; $cmp103 = ($add102|0)==(4); if ($cmp103) { $59 = $rates_Q5; $60 = $ind_tmp; $add106 = (($60) + 4)|0; $arrayidx107 = (($59) + ($add106)|0); $61 = HEAP8[$arrayidx107>>0]|0; $conv108 = $61&255; $rate0_Q5 = $conv108; $rate1_Q5 = 280; break; } else { $62 = $ind_tmp; $conv110 = $62&65535; $conv111 = $conv110 << 16 >> 16; $mul112 = ($conv111*43)|0; $add113 = (108 + ($mul112))|0; $rate0_Q5 = $add113; $63 = $rate0_Q5; $add114 = (($63) + 43)|0; $rate1_Q5 = $add114; break; } } else { $cmp117 = ($58|0)<=(-4); if (!($cmp117)) { $70 = $rates_Q5; $71 = $ind_tmp; $add135 = (($71) + 4)|0; $arrayidx136 = (($70) + ($add135)|0); $72 = HEAP8[$arrayidx136>>0]|0; $conv137 = $72&255; $rate0_Q5 = $conv137; $73 = $rates_Q5; $74 = $ind_tmp; $add138 = (($74) + 1)|0; $add139 = (($add138) + 4)|0; $arrayidx140 = (($73) + ($add139)|0); $75 = HEAP8[$arrayidx140>>0]|0; $conv141 = $75&255; $rate1_Q5 = $conv141; break; } $64 = $ind_tmp; $cmp120 = ($64|0)==(-4); if ($cmp120) { $rate0_Q5 = 280; $65 = $rates_Q5; $66 = $ind_tmp; $add123 = (($66) + 1)|0; $add124 = (($add123) + 4)|0; $arrayidx125 = (($65) + ($add124)|0); $67 = HEAP8[$arrayidx125>>0]|0; $conv126 = $67&255; $rate1_Q5 = $conv126; break; } else { $68 = $ind_tmp; $conv128 = $68&65535; $conv129 = $conv128 << 16 >> 16; $mul130 = Math_imul(-43, $conv129)|0; $add131 = (108 + ($mul130))|0; $rate0_Q5 = $add131; $69 = $rate0_Q5; $sub132 = (($69) - 43)|0; $rate1_Q5 = $sub132; break; } } } while(0); $76 = $j; $arrayidx144 = (($RD_Q25) + ($76<<2)|0); $77 = HEAP32[$arrayidx144>>2]|0; $RD_tmp_Q25 = $77; $78 = $in_Q10; $79 = $out0_Q10; $conv145 = $79 << 16 >> 16; $sub146 = (($78) - ($conv145))|0; $diff_Q10 = $sub146; $80 = $RD_tmp_Q25; $81 = $diff_Q10; $conv147 = $81&65535; $conv148 = $conv147 << 16 >> 16; $82 = $diff_Q10; $conv149 = $82&65535; $conv150 = $conv149 << 16 >> 16; $mul151 = Math_imul($conv148, $conv150)|0; $83 = $w_Q5$addr; $84 = $i; $arrayidx152 = (($83) + ($84<<1)|0); $85 = HEAP16[$arrayidx152>>1]|0; $conv153 = $85 << 16 >> 16; $mul154 = Math_imul($mul151, $conv153)|0; $add155 = (($80) + ($mul154))|0; $86 = $mu_Q20$addr; $conv156 = $86&65535; $conv157 = $conv156 << 16 >> 16; $87 = $rate0_Q5; $conv158 = $87&65535; $conv159 = $conv158 << 16 >> 16; $mul160 = Math_imul($conv157, $conv159)|0; $add161 = (($add155) + ($mul160))|0; $88 = $j; $arrayidx162 = (($RD_Q25) + ($88<<2)|0); HEAP32[$arrayidx162>>2] = $add161; $89 = $in_Q10; $90 = $out1_Q10; $conv163 = $90 << 16 >> 16; $sub164 = (($89) - ($conv163))|0; $diff_Q10 = $sub164; $91 = $RD_tmp_Q25; $92 = $diff_Q10; $conv165 = $92&65535; $conv166 = $conv165 << 16 >> 16; $93 = $diff_Q10; $conv167 = $93&65535; $conv168 = $conv167 << 16 >> 16; $mul169 = Math_imul($conv166, $conv168)|0; $94 = $w_Q5$addr; $95 = $i; $arrayidx170 = (($94) + ($95<<1)|0); $96 = HEAP16[$arrayidx170>>1]|0; $conv171 = $96 << 16 >> 16; $mul172 = Math_imul($mul169, $conv171)|0; $add173 = (($91) + ($mul172))|0; $97 = $mu_Q20$addr; $conv174 = $97&65535; $conv175 = $conv174 << 16 >> 16; $98 = $rate1_Q5; $conv176 = $98&65535; $conv177 = $conv176 << 16 >> 16; $mul178 = Math_imul($conv175, $conv177)|0; $add179 = (($add173) + ($mul178))|0; $99 = $j; $100 = $nStates; $add180 = (($99) + ($100))|0; $arrayidx181 = (($RD_Q25) + ($add180<<2)|0); HEAP32[$arrayidx181>>2] = $add179; $101 = $j; $inc183 = (($101) + 1)|0; $j = $inc183; } $102 = $nStates; $cmp185 = ($102|0)<=(2); $j = 0; L36: do { if ($cmp185) { while(1) { $103 = $j; $104 = $nStates; $cmp189 = ($103|0)<($104|0); if (!($cmp189)) { break; } $105 = $j; $arrayidx192 = (($ind) + ($105<<4)|0); $106 = $i; $arrayidx193 = (($arrayidx192) + ($106)|0); $107 = HEAP8[$arrayidx193>>0]|0; $conv194 = $107 << 24 >> 24; $add195 = (($conv194) + 1)|0; $conv196 = $add195&255; $108 = $j; $109 = $nStates; $add197 = (($108) + ($109))|0; $arrayidx198 = (($ind) + ($add197<<4)|0); $110 = $i; $arrayidx199 = (($arrayidx198) + ($110)|0); HEAP8[$arrayidx199>>0] = $conv196; $111 = $j; $inc201 = (($111) + 1)|0; $j = $inc201; } $112 = $nStates; $shl203 = $112 << 1; $nStates = $shl203; $113 = $nStates; $j = $113; while(1) { $114 = $j; $cmp205 = ($114|0)<(4); if (!($cmp205)) { break L36; } $115 = $j; $116 = $nStates; $sub208 = (($115) - ($116))|0; $arrayidx209 = (($ind) + ($sub208<<4)|0); $117 = $i; $arrayidx210 = (($arrayidx209) + ($117)|0); $118 = HEAP8[$arrayidx210>>0]|0; $119 = $j; $arrayidx211 = (($ind) + ($119<<4)|0); $120 = $i; $arrayidx212 = (($arrayidx211) + ($120)|0); HEAP8[$arrayidx212>>0] = $118; $121 = $j; $inc214 = (($121) + 1)|0; $j = $inc214; } } else { while(1) { $122 = $j; $cmp218 = ($122|0)<(4); if (!($cmp218)) { break; } $123 = $j; $arrayidx221 = (($RD_Q25) + ($123<<2)|0); $124 = HEAP32[$arrayidx221>>2]|0; $125 = $j; $add222 = (($125) + 4)|0; $arrayidx223 = (($RD_Q25) + ($add222<<2)|0); $126 = HEAP32[$arrayidx223>>2]|0; $cmp224 = ($124|0)>($126|0); $127 = $j; $arrayidx227 = (($RD_Q25) + ($127<<2)|0); $128 = HEAP32[$arrayidx227>>2]|0; $129 = $j; if ($cmp224) { $arrayidx228 = (($RD_max_Q25) + ($129<<2)|0); HEAP32[$arrayidx228>>2] = $128; $130 = $j; $add229 = (($130) + 4)|0; $arrayidx230 = (($RD_Q25) + ($add229<<2)|0); $131 = HEAP32[$arrayidx230>>2]|0; $132 = $j; $arrayidx231 = (($RD_min_Q25) + ($132<<2)|0); HEAP32[$arrayidx231>>2] = $131; $133 = $j; $arrayidx232 = (($RD_min_Q25) + ($133<<2)|0); $134 = HEAP32[$arrayidx232>>2]|0; $135 = $j; $arrayidx233 = (($RD_Q25) + ($135<<2)|0); HEAP32[$arrayidx233>>2] = $134; $136 = $j; $arrayidx234 = (($RD_max_Q25) + ($136<<2)|0); $137 = HEAP32[$arrayidx234>>2]|0; $138 = $j; $add235 = (($138) + 4)|0; $arrayidx236 = (($RD_Q25) + ($add235<<2)|0); HEAP32[$arrayidx236>>2] = $137; $139 = $j; $arrayidx237 = (($prev_out_Q10) + ($139<<1)|0); $140 = HEAP16[$arrayidx237>>1]|0; $out0_Q10 = $140; $141 = $j; $add238 = (($141) + 4)|0; $arrayidx239 = (($prev_out_Q10) + ($add238<<1)|0); $142 = HEAP16[$arrayidx239>>1]|0; $143 = $j; $arrayidx240 = (($prev_out_Q10) + ($143<<1)|0); HEAP16[$arrayidx240>>1] = $142; $144 = $out0_Q10; $145 = $j; $add241 = (($145) + 4)|0; $arrayidx242 = (($prev_out_Q10) + ($add241<<1)|0); HEAP16[$arrayidx242>>1] = $144; $146 = $j; $add243 = (($146) + 4)|0; $147 = $j; $$sink = $add243;$$sink1 = $147; } else { $arrayidx247 = (($RD_min_Q25) + ($129<<2)|0); HEAP32[$arrayidx247>>2] = $128; $148 = $j; $add248 = (($148) + 4)|0; $arrayidx249 = (($RD_Q25) + ($add248<<2)|0); $149 = HEAP32[$arrayidx249>>2]|0; $150 = $j; $arrayidx250 = (($RD_max_Q25) + ($150<<2)|0); HEAP32[$arrayidx250>>2] = $149; $151 = $j; $152 = $j; $$sink = $151;$$sink1 = $152; } $arrayidx251 = (($ind_sort) + ($$sink1<<2)|0); HEAP32[$arrayidx251>>2] = $$sink; $153 = $j; $inc254 = (($153) + 1)|0; $j = $inc254; } while(1) { $min_max_Q25 = 2147483647; $max_min_Q25 = 0; $ind_min_max = 0; $ind_max_min = 0; $j = 0; while(1) { $154 = $j; $cmp257 = ($154|0)<(4); $155 = $min_max_Q25; if (!($cmp257)) { break; } $156 = $j; $arrayidx260 = (($RD_max_Q25) + ($156<<2)|0); $157 = HEAP32[$arrayidx260>>2]|0; $cmp261 = ($155|0)>($157|0); if ($cmp261) { $158 = $j; $arrayidx264 = (($RD_max_Q25) + ($158<<2)|0); $159 = HEAP32[$arrayidx264>>2]|0; $min_max_Q25 = $159; $160 = $j; $ind_min_max = $160; } $161 = $max_min_Q25; $162 = $j; $arrayidx266 = (($RD_min_Q25) + ($162<<2)|0); $163 = HEAP32[$arrayidx266>>2]|0; $cmp267 = ($161|0)<($163|0); if ($cmp267) { $164 = $j; $arrayidx270 = (($RD_min_Q25) + ($164<<2)|0); $165 = HEAP32[$arrayidx270>>2]|0; $max_min_Q25 = $165; $166 = $j; $ind_max_min = $166; } $167 = $j; $inc273 = (($167) + 1)|0; $j = $inc273; } $168 = $max_min_Q25; $cmp275 = ($155|0)>=($168|0); if ($cmp275) { break; } $169 = $ind_min_max; $arrayidx279 = (($ind_sort) + ($169<<2)|0); $170 = HEAP32[$arrayidx279>>2]|0; $xor = $170 ^ 4; $171 = $ind_max_min; $arrayidx280 = (($ind_sort) + ($171<<2)|0); HEAP32[$arrayidx280>>2] = $xor; $172 = $ind_min_max; $add281 = (($172) + 4)|0; $arrayidx282 = (($RD_Q25) + ($add281<<2)|0); $173 = HEAP32[$arrayidx282>>2]|0; $174 = $ind_max_min; $arrayidx283 = (($RD_Q25) + ($174<<2)|0); HEAP32[$arrayidx283>>2] = $173; $175 = $ind_min_max; $add284 = (($175) + 4)|0; $arrayidx285 = (($prev_out_Q10) + ($add284<<1)|0); $176 = HEAP16[$arrayidx285>>1]|0; $177 = $ind_max_min; $arrayidx286 = (($prev_out_Q10) + ($177<<1)|0); HEAP16[$arrayidx286>>1] = $176; $178 = $ind_max_min; $arrayidx287 = (($RD_min_Q25) + ($178<<2)|0); HEAP32[$arrayidx287>>2] = 0; $179 = $ind_min_max; $arrayidx288 = (($RD_max_Q25) + ($179<<2)|0); HEAP32[$arrayidx288>>2] = 2147483647; $180 = $ind_max_min; $arrayidx289 = (($ind) + ($180<<4)|0); $181 = $ind_min_max; $arrayidx290 = (($ind) + ($181<<4)|0); dest=$arrayidx289; src=$arrayidx290; stop=dest+16|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); } $j = 0; while(1) { $182 = $j; $cmp293 = ($182|0)<(4); if (!($cmp293)) { break L36; } $183 = $j; $arrayidx296 = (($ind_sort) + ($183<<2)|0); $184 = HEAP32[$arrayidx296>>2]|0; $shr297 = $184 >> 2; $185 = $j; $arrayidx298 = (($ind) + ($185<<4)|0); $186 = $i; $arrayidx299 = (($arrayidx298) + ($186)|0); $187 = HEAP8[$arrayidx299>>0]|0; $conv300 = $187 << 24 >> 24; $add301 = (($conv300) + ($shr297))|0; $conv302 = $add301&255; HEAP8[$arrayidx299>>0] = $conv302; $188 = $j; $inc304 = (($188) + 1)|0; $j = $inc304; } } } while(0); $189 = $i; $dec = (($189) + -1)|0; $i = $dec; } $ind_tmp = 0; $min_Q25 = 2147483647; $j = 0; while(1) { $190 = $j; $cmp310 = ($190|0)<(8); if (!($cmp310)) { break; } $191 = $min_Q25; $192 = $j; $arrayidx313 = (($RD_Q25) + ($192<<2)|0); $193 = HEAP32[$arrayidx313>>2]|0; $cmp314 = ($191|0)>($193|0); if ($cmp314) { $194 = $j; $arrayidx317 = (($RD_Q25) + ($194<<2)|0); $195 = HEAP32[$arrayidx317>>2]|0; $min_Q25 = $195; $196 = $j; $ind_tmp = $196; } $197 = $j; $inc320 = (($197) + 1)|0; $j = $inc320; } $j = 0; while(1) { $198 = $j; $199 = $order$addr; $conv323 = $199 << 16 >> 16; $cmp324 = ($198|0)<($conv323|0); $200 = $ind_tmp; if (!($cmp324)) { break; } $and = $200 & 3; $arrayidx327 = (($ind) + ($and<<4)|0); $201 = $j; $arrayidx328 = (($arrayidx327) + ($201)|0); $202 = HEAP8[$arrayidx328>>0]|0; $203 = $indices$addr; $204 = $j; $arrayidx329 = (($203) + ($204)|0); HEAP8[$arrayidx329>>0] = $202; $205 = $j; $inc331 = (($205) + 1)|0; $j = $inc331; } $shr333 = $200 >> 2; $206 = $indices$addr; $207 = HEAP8[$206>>0]|0; $conv335 = $207 << 24 >> 24; $add336 = (($conv335) + ($shr333))|0; $conv337 = $add336&255; HEAP8[$206>>0] = $conv337; $208 = $min_Q25; STACKTOP = sp;return ($208|0); } function _silk_corrVector_FLP($x,$t,$L,$Order,$Xt) { $x = $x|0; $t = $t|0; $L = $L|0; $Order = $Order|0; $Xt = $Xt|0; var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $L$addr = 0, $Order$addr = 0, $Xt$addr = 0, $arrayidx = 0, $arrayidx1 = 0, $call = 0.0, $cmp = 0, $conv = 0.0, $inc = 0; var $incdec$ptr = 0, $lag = 0, $ptr1 = 0, $sub = 0, $t$addr = 0, $x$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $x$addr = $x; $t$addr = $t; $L$addr = $L; $Order$addr = $Order; $Xt$addr = $Xt; $0 = $x$addr; $1 = $Order$addr; $sub = (($1) - 1)|0; $arrayidx = (($0) + ($sub<<2)|0); $ptr1 = $arrayidx; $lag = 0; while(1) { $2 = $lag; $3 = $Order$addr; $cmp = ($2|0)<($3|0); if (!($cmp)) { break; } $4 = $ptr1; $5 = $t$addr; $6 = $L$addr; $call = (+_silk_inner_product_FLP($4,$5,$6)); $conv = $call; $7 = $Xt$addr; $8 = $lag; $arrayidx1 = (($7) + ($8<<2)|0); HEAPF32[$arrayidx1>>2] = $conv; $9 = $ptr1; $incdec$ptr = ((($9)) + -4|0); $ptr1 = $incdec$ptr; $10 = $lag; $inc = (($10) + 1)|0; $lag = $inc; } STACKTOP = sp;return; } function _silk_corrMatrix_FLP($x,$L,$Order,$XX) { $x = $x|0; $L = $L|0; $Order = $Order|0; $XX = $XX|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0.0, $12 = 0, $13 = 0, $14 = 0.0, $15 = 0, $16 = 0, $17 = 0, $18 = 0.0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0.0, $23 = 0.0, $24 = 0.0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0.0, $38 = 0, $39 = 0, $4 = 0.0, $40 = 0, $41 = 0.0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0.0, $51 = 0, $52 = 0, $53 = 0.0, $54 = 0, $55 = 0, $56 = 0, $57 = 0.0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0.0, $62 = 0.0; var $63 = 0.0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0.0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $8 = 0, $9 = 0, $L$addr = 0, $Order$addr = 0; var $XX$addr = 0, $add = 0, $add$ptr = 0, $add$ptr18 = 0, $add$ptr29 = 0, $add$ptr33 = 0, $add$ptr56 = 0, $add$ptr61 = 0, $add14 = 0.0, $add17 = 0, $add28 = 0, $add32 = 0, $add51 = 0.0, $add53 = 0, $add55 = 0, $add59 = 0, $add60 = 0, $arrayidx = 0, $arrayidx10 = 0, $arrayidx20 = 0; var $arrayidx3 = 0, $arrayidx40 = 0, $arrayidx42 = 0, $arrayidx45 = 0, $arrayidx47 = 0, $arrayidx5 = 0, $arrayidx8 = 0, $call = 0.0, $call25 = 0.0, $cmp = 0, $cmp22 = 0, $cmp36 = 0, $conv = 0.0, $conv13 = 0.0, $conv15 = 0.0, $conv26 = 0.0, $conv30 = 0.0, $conv50 = 0.0, $conv52 = 0.0, $conv57 = 0.0; var $energy = 0.0, $inc = 0, $inc63 = 0, $inc66 = 0, $incdec$ptr = 0, $j = 0, $lag = 0, $mul = 0, $mul11 = 0.0, $mul16 = 0, $mul27 = 0, $mul31 = 0, $mul43 = 0.0, $mul48 = 0.0, $mul54 = 0, $mul58 = 0, $mul6 = 0.0, $ptr1 = 0, $ptr2 = 0, $sub = 0; var $sub12 = 0.0, $sub19 = 0, $sub2 = 0, $sub35 = 0, $sub39 = 0, $sub4 = 0, $sub41 = 0, $sub44 = 0, $sub46 = 0, $sub49 = 0.0, $sub7 = 0, $sub9 = 0, $x$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $x$addr = $x; $L$addr = $L; $Order$addr = $Order; $XX$addr = $XX; $0 = $x$addr; $1 = $Order$addr; $sub = (($1) - 1)|0; $arrayidx = (($0) + ($sub<<2)|0); $ptr1 = $arrayidx; $2 = $ptr1; $3 = $L$addr; $call = (+_silk_energy_FLP($2,$3)); $energy = $call; $4 = $energy; $conv = $4; $5 = $XX$addr; $6 = $Order$addr; $mul = 0; $add = (($mul) + 0)|0; $add$ptr = (($5) + ($add<<2)|0); HEAPF32[$add$ptr>>2] = $conv; $j = 1; while(1) { $7 = $j; $8 = $Order$addr; $cmp = ($7|0)<($8|0); if (!($cmp)) { break; } $9 = $ptr1; $10 = $j; $sub2 = (0 - ($10))|0; $arrayidx3 = (($9) + ($sub2<<2)|0); $11 = +HEAPF32[$arrayidx3>>2]; $12 = $ptr1; $13 = $j; $sub4 = (0 - ($13))|0; $arrayidx5 = (($12) + ($sub4<<2)|0); $14 = +HEAPF32[$arrayidx5>>2]; $mul6 = $11 * $14; $15 = $ptr1; $16 = $L$addr; $17 = $j; $sub7 = (($16) - ($17))|0; $arrayidx8 = (($15) + ($sub7<<2)|0); $18 = +HEAPF32[$arrayidx8>>2]; $19 = $ptr1; $20 = $L$addr; $21 = $j; $sub9 = (($20) - ($21))|0; $arrayidx10 = (($19) + ($sub9<<2)|0); $22 = +HEAPF32[$arrayidx10>>2]; $mul11 = $18 * $22; $sub12 = $mul6 - $mul11; $conv13 = $sub12; $23 = $energy; $add14 = $23 + $conv13; $energy = $add14; $24 = $energy; $conv15 = $24; $25 = $XX$addr; $26 = $j; $27 = $Order$addr; $mul16 = Math_imul($26, $27)|0; $28 = $j; $add17 = (($mul16) + ($28))|0; $add$ptr18 = (($25) + ($add17<<2)|0); HEAPF32[$add$ptr18>>2] = $conv15; $29 = $j; $inc = (($29) + 1)|0; $j = $inc; } $30 = $x$addr; $31 = $Order$addr; $sub19 = (($31) - 2)|0; $arrayidx20 = (($30) + ($sub19<<2)|0); $ptr2 = $arrayidx20; $lag = 1; while(1) { $32 = $lag; $33 = $Order$addr; $cmp22 = ($32|0)<($33|0); if (!($cmp22)) { break; } $34 = $ptr1; $35 = $ptr2; $36 = $L$addr; $call25 = (+_silk_inner_product_FLP($34,$35,$36)); $energy = $call25; $37 = $energy; $conv26 = $37; $38 = $XX$addr; $39 = $lag; $40 = $Order$addr; $mul27 = Math_imul($39, $40)|0; $add28 = (($mul27) + 0)|0; $add$ptr29 = (($38) + ($add28<<2)|0); HEAPF32[$add$ptr29>>2] = $conv26; $41 = $energy; $conv30 = $41; $42 = $XX$addr; $43 = $Order$addr; $mul31 = 0; $44 = $lag; $add32 = (($mul31) + ($44))|0; $add$ptr33 = (($42) + ($add32<<2)|0); HEAPF32[$add$ptr33>>2] = $conv30; $j = 1; while(1) { $45 = $j; $46 = $Order$addr; $47 = $lag; $sub35 = (($46) - ($47))|0; $cmp36 = ($45|0)<($sub35|0); if (!($cmp36)) { break; } $48 = $ptr1; $49 = $j; $sub39 = (0 - ($49))|0; $arrayidx40 = (($48) + ($sub39<<2)|0); $50 = +HEAPF32[$arrayidx40>>2]; $51 = $ptr2; $52 = $j; $sub41 = (0 - ($52))|0; $arrayidx42 = (($51) + ($sub41<<2)|0); $53 = +HEAPF32[$arrayidx42>>2]; $mul43 = $50 * $53; $54 = $ptr1; $55 = $L$addr; $56 = $j; $sub44 = (($55) - ($56))|0; $arrayidx45 = (($54) + ($sub44<<2)|0); $57 = +HEAPF32[$arrayidx45>>2]; $58 = $ptr2; $59 = $L$addr; $60 = $j; $sub46 = (($59) - ($60))|0; $arrayidx47 = (($58) + ($sub46<<2)|0); $61 = +HEAPF32[$arrayidx47>>2]; $mul48 = $57 * $61; $sub49 = $mul43 - $mul48; $conv50 = $sub49; $62 = $energy; $add51 = $62 + $conv50; $energy = $add51; $63 = $energy; $conv52 = $63; $64 = $XX$addr; $65 = $lag; $66 = $j; $add53 = (($65) + ($66))|0; $67 = $Order$addr; $mul54 = Math_imul($add53, $67)|0; $68 = $j; $add55 = (($mul54) + ($68))|0; $add$ptr56 = (($64) + ($add55<<2)|0); HEAPF32[$add$ptr56>>2] = $conv52; $69 = $energy; $conv57 = $69; $70 = $XX$addr; $71 = $j; $72 = $Order$addr; $mul58 = Math_imul($71, $72)|0; $73 = $lag; $74 = $j; $add59 = (($73) + ($74))|0; $add60 = (($mul58) + ($add59))|0; $add$ptr61 = (($70) + ($add60<<2)|0); HEAPF32[$add$ptr61>>2] = $conv57; $75 = $j; $inc63 = (($75) + 1)|0; $j = $inc63; } $76 = $ptr2; $incdec$ptr = ((($76)) + -4|0); $ptr2 = $incdec$ptr; $77 = $lag; $inc66 = (($77) + 1)|0; $lag = $inc66; } STACKTOP = sp;return; } function _malloc($bytes) { $bytes = $bytes|0; var $$pre = 0, $$pre$i = 0, $$pre$i$i = 0, $$pre$i179 = 0, $$pre$i182 = 0, $$pre$i44$i = 0, $$pre$phi$i$iZ2D = 0, $$pre$phi$i180Z2D = 0, $$pre$phi$i45$iZ2D = 0, $$pre$phi$iZ2D = 0, $$pre$phiZ2D = 0, $$pre6$i$i = 0, $$sink$i = 0, $$sink$i$i = 0, $$sink$i158 = 0, $$sink2$i = 0, $$sink2$i176 = 0, $$sink5$i = 0, $$v$0$i = 0, $0 = 0; var $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0; var $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0; var $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0; var $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0; var $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0; var $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0; var $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0; var $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0; var $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0; var $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $F$0$i$i = 0, $F104$0 = 0, $F197$0$i = 0; var $F224$0$i$i = 0, $F290$0$i = 0, $I252$0$i$i = 0, $I316$0$i = 0, $I57$0$i$i = 0, $K105$0$i$i = 0, $K305$0$i$i = 0, $K373$0$i = 0, $R$1$i = 0, $R$1$i$i = 0, $R$1$i169 = 0, $R$3$i = 0, $R$3$i$i = 0, $R$3$i172 = 0, $RP$1$i = 0, $RP$1$i$i = 0, $RP$1$i168 = 0, $T$0$i = 0, $T$0$i$i = 0, $T$0$i46$i = 0; var $add$i = 0, $add$i$i = 0, $add$i148 = 0, $add$i183 = 0, $add$ptr = 0, $add$ptr$i = 0, $add$ptr$i$i = 0, $add$ptr$i$i$i = 0, $add$ptr$i13$i = 0, $add$ptr$i162 = 0, $add$ptr$i19$i = 0, $add$ptr$i196 = 0, $add$ptr$i3$i$i = 0, $add$ptr$i48$i = 0, $add$ptr14$i$i = 0, $add$ptr15$i$i = 0, $add$ptr16$i$i = 0, $add$ptr166 = 0, $add$ptr169 = 0, $add$ptr17$i$i = 0; var $add$ptr178 = 0, $add$ptr181$i = 0, $add$ptr182 = 0, $add$ptr189$i = 0, $add$ptr190$i = 0, $add$ptr193 = 0, $add$ptr199 = 0, $add$ptr2$i$i = 0, $add$ptr205$i$i = 0, $add$ptr212$i$i = 0, $add$ptr225$i = 0, $add$ptr227$i = 0, $add$ptr24$i$i = 0, $add$ptr262$i = 0, $add$ptr269$i = 0, $add$ptr273$i = 0, $add$ptr282$i = 0, $add$ptr3$i$i = 0, $add$ptr30$i$i = 0, $add$ptr369$i$i = 0; var $add$ptr4$i$i = 0, $add$ptr4$i$i$i = 0, $add$ptr4$i25$i = 0, $add$ptr4$i54$i = 0, $add$ptr441$i = 0, $add$ptr5$i$i = 0, $add$ptr6$i$i = 0, $add$ptr6$i$i$i = 0, $add$ptr6$i58$i = 0, $add$ptr7$i$i = 0, $add$ptr81$i$i = 0, $add$ptr95 = 0, $add$ptr98 = 0, $add10$i = 0, $add101$i = 0, $add110$i = 0, $add13$i = 0, $add14$i = 0, $add140$i = 0, $add144 = 0; var $add150$i = 0, $add17$i = 0, $add17$i186 = 0, $add177$i = 0, $add18$i = 0, $add19$i = 0, $add2 = 0, $add20$i = 0, $add206$i$i = 0, $add212$i = 0, $add215$i = 0, $add22$i = 0, $add246$i = 0, $add26$i$i = 0, $add268$i = 0, $add269$i$i = 0, $add274$i$i = 0, $add278$i$i = 0, $add280$i$i = 0, $add283$i$i = 0; var $add337$i = 0, $add342$i = 0, $add346$i = 0, $add348$i = 0, $add351$i = 0, $add46$i = 0, $add50 = 0, $add51$i = 0, $add54 = 0, $add54$i = 0, $add58 = 0, $add62 = 0, $add64 = 0, $add74$i$i = 0, $add77$i = 0, $add78$i = 0, $add79$i$i = 0, $add8 = 0, $add82$i = 0, $add83$i$i = 0; var $add85$i$i = 0, $add86$i = 0, $add88$i$i = 0, $add9$i = 0, $add90$i = 0, $add92$i = 0, $and = 0, $and$i = 0, $and$i$i = 0, $and$i$i$i = 0, $and$i14$i = 0, $and$i145 = 0, $and$i20$i = 0, $and$i49$i = 0, $and100$i = 0, $and103$i = 0, $and104$i = 0, $and106 = 0, $and11$add51$i = 0, $and11$i = 0; var $and119$i$i = 0, $and12$i = 0, $and13$i = 0, $and13$i$i = 0, $and133$i$i = 0, $and14 = 0, $and145 = 0, $and17$i = 0, $and194$i = 0, $and194$i207 = 0, $and199$i = 0, $and209$i$i = 0, $and21$i = 0, $and21$i151 = 0, $and227$i$i = 0, $and236$i = 0, $and264$i$i = 0, $and268$i$i = 0, $and273$i$i = 0, $and282$i$i = 0; var $and29$i = 0, $and292$i = 0, $and295$i$i = 0, $and3$i = 0, $and3$i$i = 0, $and3$i$i$i = 0, $and3$i23$i = 0, $and3$i52$i = 0, $and30$i = 0, $and318$i$i = 0, $and32$i = 0, $and32$i$i = 0, $and33$i$i = 0, $and331$i = 0, $and336$i = 0, $and341$i = 0, $and350$i = 0, $and363$i = 0, $and37$i$i = 0, $and387$i = 0; var $and4 = 0, $and40$i$i = 0, $and41 = 0, $and42$i = 0, $and43 = 0, $and46 = 0, $and49 = 0, $and49$i = 0, $and49$i$i = 0, $and53 = 0, $and57 = 0, $and6$i = 0, $and6$i$i = 0, $and6$i10$i = 0, $and6$i26$i = 0, $and61 = 0, $and64$i = 0, $and68$i = 0, $and69$i$i = 0, $and7 = 0; var $and73$i = 0, $and73$i$i = 0, $and74 = 0, $and77$i = 0, $and78$i$i = 0, $and8$i = 0, $and80$i = 0, $and81$i = 0, $and85$i = 0, $and87$i$i = 0, $and89$i = 0, $and9$i = 0, $and96$i$i = 0, $arrayidx = 0, $arrayidx$i = 0, $arrayidx$i$i = 0, $arrayidx$i152 = 0, $arrayidx$i36$i = 0, $arrayidx103 = 0, $arrayidx103$i$i = 0; var $arrayidx106$i = 0, $arrayidx107$i$i = 0, $arrayidx113$i = 0, $arrayidx113$i159 = 0, $arrayidx121$i = 0, $arrayidx123$i$i = 0, $arrayidx126$i$i = 0, $arrayidx137$i = 0, $arrayidx143$i$i = 0, $arrayidx148$i = 0, $arrayidx151$i = 0, $arrayidx151$i$i = 0, $arrayidx154$i = 0, $arrayidx155$i = 0, $arrayidx161$i = 0, $arrayidx165$i = 0, $arrayidx165$i170 = 0, $arrayidx178$i$i = 0, $arrayidx184$i = 0, $arrayidx184$i$i = 0; var $arrayidx195$i$i = 0, $arrayidx196$i = 0, $arrayidx204$i = 0, $arrayidx212$i = 0, $arrayidx223$i$i = 0, $arrayidx228$i = 0, $arrayidx23$i = 0, $arrayidx233$i = 0, $arrayidx239$i = 0, $arrayidx245$i = 0, $arrayidx256$i = 0, $arrayidx27$i = 0, $arrayidx276$i = 0, $arrayidx287$i$i = 0, $arrayidx289$i = 0, $arrayidx290$i$i = 0, $arrayidx325$i$i = 0, $arrayidx355$i = 0, $arrayidx358$i = 0, $arrayidx394$i = 0; var $arrayidx40$i = 0, $arrayidx44$i = 0, $arrayidx61$i = 0, $arrayidx65$i = 0, $arrayidx66 = 0, $arrayidx71$i = 0, $arrayidx75$i = 0, $arrayidx91$i$i = 0, $arrayidx92$i$i = 0, $arrayidx94$i = 0, $arrayidx94$i156 = 0, $arrayidx96$i$i = 0, $bk = 0, $bk$i = 0, $bk$i$i = 0, $bk$i164 = 0, $bk$i34$i = 0, $bk102$i$i = 0, $bk122 = 0, $bk124 = 0; var $bk136$i = 0, $bk139$i$i = 0, $bk158$i$i = 0, $bk161$i$i = 0, $bk218$i = 0, $bk220$i = 0, $bk246$i$i = 0, $bk248$i$i = 0, $bk302$i$i = 0, $bk311$i = 0, $bk313$i = 0, $bk338$i$i = 0, $bk357$i$i = 0, $bk360$i$i = 0, $bk370$i = 0, $bk407$i = 0, $bk429$i = 0, $bk43$i$i = 0, $bk432$i = 0, $bk47$i = 0; var $bk55$i$i = 0, $bk67$i$i = 0, $bk74$i$i = 0, $bk78 = 0, $bk82$i$i = 0, $br$2$ph$i = 0, $call107$i = 0, $call131$i = 0, $call132$i = 0, $call275$i = 0, $call37$i = 0, $call68$i = 0, $call83$i = 0, $child$i$i = 0, $child166$i$i = 0, $child289$i$i = 0, $child357$i = 0, $cmp = 0, $cmp$i = 0, $cmp$i$i$i = 0; var $cmp$i11$i = 0, $cmp$i142 = 0, $cmp$i15$i = 0, $cmp$i181 = 0, $cmp$i21$i = 0, $cmp$i4$i$i = 0, $cmp$i50$i = 0, $cmp$i9$i = 0, $cmp1 = 0, $cmp1$i = 0, $cmp10 = 0, $cmp100$i$i = 0, $cmp102$i = 0, $cmp104$i$i = 0, $cmp105$i = 0, $cmp106$i$i = 0, $cmp107$i = 0, $cmp107$i157 = 0, $cmp108$i = 0, $cmp108$i$i = 0; var $cmp112$i$i = 0, $cmp113 = 0, $cmp114$i = 0, $cmp116$i = 0, $cmp118$i = 0, $cmp119$i = 0, $cmp12$i = 0, $cmp120$i$i = 0, $cmp120$i41$i = 0, $cmp121$i = 0, $cmp123$i = 0, $cmp124$i$i = 0, $cmp126$i = 0, $cmp127$i = 0, $cmp128 = 0, $cmp128$i = 0, $cmp128$i$i = 0, $cmp130$i = 0, $cmp133$i = 0, $cmp133$i$i = 0; var $cmp133$i199 = 0, $cmp135$i = 0, $cmp137$i = 0, $cmp137$i$i = 0, $cmp137$i200 = 0, $cmp138$i = 0, $cmp139 = 0, $cmp140$i = 0, $cmp141$i = 0, $cmp142$i = 0, $cmp144$i$i = 0, $cmp146 = 0, $cmp147$i = 0, $cmp14799$i = 0, $cmp15 = 0, $cmp15$i = 0, $cmp150$i$i = 0, $cmp151$i = 0, $cmp152$i = 0, $cmp153$i$i = 0; var $cmp155$i = 0, $cmp156 = 0, $cmp156$i = 0, $cmp156$i$i = 0, $cmp157$i = 0, $cmp159$i = 0, $cmp159$i202 = 0, $cmp16 = 0, $cmp160$i$i = 0, $cmp162 = 0, $cmp162$i = 0, $cmp162$i203 = 0, $cmp166$i = 0, $cmp168$i$i = 0, $cmp171$i = 0, $cmp172$i$i = 0, $cmp174$i = 0, $cmp180$i = 0, $cmp185$i = 0, $cmp185$i$i = 0; var $cmp186 = 0, $cmp186$i = 0, $cmp189$i$i = 0, $cmp19$i = 0, $cmp190$i = 0, $cmp191$i = 0, $cmp198$i = 0, $cmp2$i$i = 0, $cmp2$i$i$i = 0, $cmp20$i$i = 0, $cmp203$i = 0, $cmp205$i = 0, $cmp208$i = 0, $cmp209$i = 0, $cmp21$i = 0, $cmp215$i$i = 0, $cmp217$i = 0, $cmp218$i = 0, $cmp221$i = 0, $cmp224$i = 0; var $cmp228$i = 0, $cmp229$i = 0, $cmp233$i = 0, $cmp236$i$i = 0, $cmp24$i = 0, $cmp24$i$i = 0, $cmp246$i = 0, $cmp250$i = 0, $cmp254$i$i = 0, $cmp257$i = 0, $cmp258$i$i = 0, $cmp26$i = 0, $cmp265$i = 0, $cmp27$i$i = 0, $cmp28$i = 0, $cmp28$i$i = 0, $cmp284$i = 0, $cmp287$i = 0, $cmp29 = 0, $cmp3$i$i = 0; var $cmp301$i = 0, $cmp306$i$i = 0, $cmp31 = 0, $cmp319$i = 0, $cmp319$i$i = 0, $cmp32$i = 0, $cmp32$i187 = 0, $cmp323$i = 0, $cmp327$i$i = 0, $cmp33$i = 0, $cmp332$i$i = 0, $cmp34$i = 0, $cmp34$i$i = 0, $cmp346$i$i = 0, $cmp35$i = 0, $cmp350$i$i = 0, $cmp36$i = 0, $cmp36$i$i = 0, $cmp374$i = 0, $cmp38$i = 0; var $cmp38$i$i = 0, $cmp388$i = 0, $cmp396$i = 0, $cmp4$i = 0, $cmp40$i = 0, $cmp401$i = 0, $cmp41$i$i = 0, $cmp418$i = 0, $cmp42$i$i = 0, $cmp422$i = 0, $cmp43$i = 0, $cmp44$i$i = 0, $cmp45$i = 0, $cmp45$i155 = 0, $cmp46$i = 0, $cmp46$i$i = 0, $cmp46$i37$i = 0, $cmp48$i = 0, $cmp49$i = 0, $cmp5 = 0; var $cmp51$i = 0, $cmp54$i$i = 0, $cmp55$i = 0, $cmp55$i188 = 0, $cmp57$i = 0, $cmp57$i$i = 0, $cmp57$i189 = 0, $cmp59$i$i = 0, $cmp60$i = 0, $cmp60$i$i = 0, $cmp62$i = 0, $cmp63$i = 0, $cmp63$i$i = 0, $cmp65$i = 0, $cmp66$i = 0, $cmp66$i192 = 0, $cmp69$i = 0, $cmp7$i$i = 0, $cmp70 = 0, $cmp72$i = 0; var $cmp75$i$i = 0, $cmp76 = 0, $cmp76$i = 0, $cmp79 = 0, $cmp81$i = 0, $cmp81$i$i = 0, $cmp81$i194 = 0, $cmp83$i$i = 0, $cmp85$i = 0, $cmp86$i$i = 0, $cmp89$i = 0, $cmp9$i$i = 0, $cmp90$i = 0, $cmp91$i = 0, $cmp93$i = 0, $cmp95$i = 0, $cmp96$i = 0, $cmp97$i = 0, $cmp97$i$i = 0, $cmp978$i = 0; var $cmp99 = 0, $cond = 0, $cond$i = 0, $cond$i$i = 0, $cond$i$i$i = 0, $cond$i153 = 0, $cond$i17$i = 0, $cond$i24$i = 0, $cond$i53$i = 0, $cond115$i$i = 0, $cond13$i$i = 0, $cond15$i$i = 0, $cond3$i$i = 0, $cond315$i$i = 0, $cond383$i = 0, $cond4$i = 0, $fd$i = 0, $fd$i$i = 0, $fd$i165 = 0, $fd103$i$i = 0; var $fd123 = 0, $fd139$i = 0, $fd140$i$i = 0, $fd148$i$i = 0, $fd160$i$i = 0, $fd219$i = 0, $fd247$i$i = 0, $fd303$i$i = 0, $fd312$i = 0, $fd339$i$i = 0, $fd344$i$i = 0, $fd359$i$i = 0, $fd371$i = 0, $fd408$i = 0, $fd416$i = 0, $fd431$i = 0, $fd50$i = 0, $fd54$i$i = 0, $fd59$i$i = 0, $fd68$pre$phi$i$iZ2D = 0; var $fd69 = 0, $fd78$i$i = 0, $fd85$i$i = 0, $fd9 = 0, $head = 0, $head$i = 0, $head$i$i = 0, $head$i$i$i = 0, $head$i154 = 0, $head$i18$i = 0, $head$i30$i = 0, $head$i57$i = 0, $head118$i$i = 0, $head168 = 0, $head173 = 0, $head177 = 0, $head179 = 0, $head179$i = 0, $head182$i = 0, $head187$i = 0; var $head189$i = 0, $head195 = 0, $head198 = 0, $head208$i$i = 0, $head211$i$i = 0, $head23$i$i = 0, $head25 = 0, $head26$i$i = 0, $head265$i = 0, $head268$i = 0, $head271$i = 0, $head274$i = 0, $head279$i = 0, $head281$i = 0, $head29$i = 0, $head29$i$i = 0, $head317$i$i = 0, $head32$i$i = 0, $head34$i$i = 0, $head386$i = 0; var $head7$i$i = 0, $head7$i$i$i = 0, $head7$i59$i = 0, $head94 = 0, $head97 = 0, $head99$i = 0, $idx$0$i = 0, $index$i = 0, $index$i$i = 0, $index$i173 = 0, $index$i42$i = 0, $index288$i$i = 0, $index356$i = 0, $magic$i$i = 0, $nb$0 = 0, $neg = 0, $neg$i = 0, $neg$i$i = 0, $neg$i174 = 0, $neg$i185 = 0; var $neg103$i = 0, $neg13 = 0, $neg132$i$i = 0, $neg48$i = 0, $neg73 = 0, $next$i = 0, $next$i$i = 0, $next$i$i$i = 0, $next231$i = 0, $not$cmp141$i = 0, $not$cmp495$i = 0, $oldfirst$0$i$i = 0, $or$cond$i = 0, $or$cond$i190 = 0, $or$cond1$i = 0, $or$cond2$i = 0, $or$cond2$i193 = 0, $or$cond3$i = 0, $or$cond4$i = 0, $or$cond5$i = 0; var $or$cond7$i = 0, $or$cond7$not$i = 0, $or$cond8$i = 0, $or$cond97$i = 0, $or$cond98$i = 0, $or$i = 0, $or$i$i = 0, $or$i$i$i = 0, $or$i198 = 0, $or$i56$i = 0, $or101$i$i = 0, $or110 = 0, $or167 = 0, $or172 = 0, $or176 = 0, $or178$i = 0, $or180 = 0, $or183$i = 0, $or186$i = 0, $or188$i = 0; var $or19$i$i = 0, $or194 = 0, $or197 = 0, $or204$i = 0, $or210$i$i = 0, $or22$i$i = 0, $or23 = 0, $or232$i$i = 0, $or26 = 0, $or264$i = 0, $or267$i = 0, $or270$i = 0, $or275$i = 0, $or278$i = 0, $or28$i$i = 0, $or280$i = 0, $or297$i = 0, $or300$i$i = 0, $or33$i$i = 0, $or368$i = 0; var $or40 = 0, $or44$i$i = 0, $or93 = 0, $or96 = 0, $parent$i = 0, $parent$i$i = 0, $parent$i163 = 0, $parent$i39$i = 0, $parent135$i = 0, $parent138$i$i = 0, $parent149$i = 0, $parent162$i$i = 0, $parent165$i$i = 0, $parent166$i = 0, $parent179$i$i = 0, $parent196$i$i = 0, $parent226$i = 0, $parent240$i = 0, $parent257$i = 0, $parent301$i$i = 0; var $parent337$i$i = 0, $parent361$i$i = 0, $parent369$i = 0, $parent406$i = 0, $parent433$i = 0, $qsize$0$i$i = 0, $retval$0 = 0, $rsize$0$i = 0, $rsize$0$lcssa$i = 0, $rsize$08$i = 0, $rsize$1$i = 0, $rsize$3$i = 0, $rsize$4$lcssa$i = 0, $rsize$410$i = 0, $rst$0$i = 0, $rst$1$i = 0, $sflags193$i = 0, $sflags235$i = 0, $shl = 0, $shl$i = 0; var $shl$i$i = 0, $shl$i146 = 0, $shl$i35$i = 0, $shl102 = 0, $shl105 = 0, $shl116$i$i = 0, $shl12 = 0, $shl127$i$i = 0, $shl131$i$i = 0, $shl15$i = 0, $shl18$i = 0, $shl192$i = 0, $shl195$i = 0, $shl198$i = 0, $shl22 = 0, $shl222$i$i = 0, $shl226$i$i = 0, $shl265$i$i = 0, $shl270$i$i = 0, $shl276$i$i = 0; var $shl279$i$i = 0, $shl288$i = 0, $shl291$i = 0, $shl294$i$i = 0, $shl31$i = 0, $shl316$i$i = 0, $shl326$i$i = 0, $shl333$i = 0, $shl338$i = 0, $shl344$i = 0, $shl347$i = 0, $shl35 = 0, $shl362$i = 0, $shl37 = 0, $shl384$i = 0, $shl39$i$i = 0, $shl395$i = 0, $shl48$i$i = 0, $shl52$i = 0, $shl60$i = 0; var $shl65 = 0, $shl70$i$i = 0, $shl72 = 0, $shl75$i$i = 0, $shl81$i$i = 0, $shl84$i$i = 0, $shl9$i = 0, $shl90 = 0, $shl95$i$i = 0, $shr = 0, $shr$i = 0, $shr$i$i = 0, $shr$i141 = 0, $shr$i33$i = 0, $shr101 = 0, $shr11$i = 0, $shr11$i149 = 0, $shr110$i$i = 0, $shr12$i = 0, $shr124$i$i = 0; var $shr15$i = 0, $shr16$i = 0, $shr16$i150 = 0, $shr19$i = 0, $shr194$i = 0, $shr20$i = 0, $shr214$i$i = 0, $shr253$i$i = 0, $shr263$i$i = 0, $shr267$i$i = 0, $shr27$i = 0, $shr272$i$i = 0, $shr277$i$i = 0, $shr281$i$i = 0, $shr283$i = 0, $shr3 = 0, $shr310$i$i = 0, $shr318$i = 0, $shr323$i$i = 0, $shr330$i = 0; var $shr335$i = 0, $shr340$i = 0, $shr345$i = 0, $shr349$i = 0, $shr378$i = 0, $shr392$i = 0, $shr4$i = 0, $shr42$i = 0, $shr45 = 0, $shr47 = 0, $shr48 = 0, $shr5$i = 0, $shr5$i144 = 0, $shr51 = 0, $shr52 = 0, $shr55 = 0, $shr56 = 0, $shr58$i$i = 0, $shr59 = 0, $shr60 = 0; var $shr63 = 0, $shr68$i$i = 0, $shr7$i = 0, $shr7$i147 = 0, $shr72$i = 0, $shr72$i$i = 0, $shr75$i = 0, $shr76$i = 0, $shr77$i$i = 0, $shr79$i = 0, $shr8$i = 0, $shr80$i = 0, $shr82$i$i = 0, $shr83$i = 0, $shr84$i = 0, $shr86$i$i = 0, $shr87$i = 0, $shr88$i = 0, $shr91$i = 0, $size$i$i = 0; var $size$i$i$i = 0, $size188$i = 0, $size245$i = 0, $sizebits$0$i = 0, $sizebits$0$shl52$i = 0, $sp$0$i$i = 0, $sp$0$i$i$i = 0, $sp$0108$i = 0, $sp$1107$i = 0, $ssize$2$ph$i = 0, $sub = 0, $sub$i = 0, $sub$i$i = 0, $sub$i$i$i = 0, $sub$i140 = 0, $sub$i16$i = 0, $sub$i184 = 0, $sub$i22$i = 0, $sub$i51$i = 0, $sub$ptr$lhs$cast$i = 0; var $sub$ptr$lhs$cast$i$i = 0, $sub$ptr$lhs$cast$i27$i = 0, $sub$ptr$rhs$cast$i = 0, $sub$ptr$rhs$cast$i$i = 0, $sub$ptr$rhs$cast$i28$i = 0, $sub$ptr$sub$i = 0, $sub$ptr$sub$i$i = 0, $sub$ptr$sub$i29$i = 0, $sub$ptr$sub$tsize$4$i = 0, $sub10$i = 0, $sub101$i = 0, $sub101$rsize$4$i = 0, $sub112$i = 0, $sub113$i$i = 0, $sub118$i = 0, $sub12$i$i = 0, $sub14$i = 0, $sub16$i$i = 0, $sub160 = 0, $sub172$i = 0; var $sub18$i$i = 0, $sub190 = 0, $sub2$i = 0, $sub22$i = 0, $sub260$i = 0, $sub262$i$i = 0, $sub266$i$i = 0, $sub271$i$i = 0, $sub275$i$i = 0, $sub30$i = 0, $sub31$i = 0, $sub31$rsize$0$i = 0, $sub313$i$i = 0, $sub329$i = 0, $sub33$i = 0, $sub334$i = 0, $sub339$i = 0, $sub343$i = 0, $sub381$i = 0, $sub4$i = 0; var $sub41$i = 0, $sub42 = 0, $sub44 = 0, $sub5$i$i = 0, $sub5$i$i$i = 0, $sub5$i55$i = 0, $sub50$i = 0, $sub6$i = 0, $sub63$i = 0, $sub67$i = 0, $sub67$i$i = 0, $sub70$i = 0, $sub71$i$i = 0, $sub76$i$i = 0, $sub80$i$i = 0, $sub91 = 0, $sub99$i = 0, $t$0$i = 0, $t$2$i = 0, $t$4$ph$i = 0; var $t$4$v$4$i = 0, $t$49$i = 0, $tbase$796$i = 0, $tobool$i$i = 0, $tobool107 = 0, $tobool195$i = 0, $tobool200$i = 0, $tobool228$i$i = 0, $tobool237$i = 0, $tobool293$i = 0, $tobool296$i$i = 0, $tobool30$i = 0, $tobool364$i = 0, $tobool97$i$i = 0, $tsize$2657583$i = 0, $tsize$4$i = 0, $tsize$795$i = 0, $v$0$i = 0, $v$0$lcssa$i = 0, $v$09$i = 0; var $v$1$i = 0, $v$3$i = 0, $v$4$lcssa$i = 0, $v$4$ph$i = 0, $v$411$i = 0, $xor$i$i = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $magic$i$i = sp; $cmp = ($bytes>>>0)<(245); do { if ($cmp) { $cmp1 = ($bytes>>>0)<(11); $add2 = (($bytes) + 11)|0; $and = $add2 & -8; $cond = $cmp1 ? 16 : $and; $shr = $cond >>> 3; $0 = HEAP32[9672]|0; $shr3 = $0 >>> $shr; $and4 = $shr3 & 3; $cmp5 = ($and4|0)==(0); if (!($cmp5)) { $neg = $shr3 & 1; $and7 = $neg ^ 1; $add8 = (($and7) + ($shr))|0; $shl = $add8 << 1; $arrayidx = (38728 + ($shl<<2)|0); $1 = ((($arrayidx)) + 8|0); $2 = HEAP32[$1>>2]|0; $fd9 = ((($2)) + 8|0); $3 = HEAP32[$fd9>>2]|0; $cmp10 = ($3|0)==($arrayidx|0); do { if ($cmp10) { $shl12 = 1 << $add8; $neg13 = $shl12 ^ -1; $and14 = $0 & $neg13; HEAP32[9672] = $and14; } else { $4 = HEAP32[(38704)>>2]|0; $cmp15 = ($4>>>0)>($3>>>0); if ($cmp15) { _abort(); // unreachable; } $bk = ((($3)) + 12|0); $5 = HEAP32[$bk>>2]|0; $cmp16 = ($5|0)==($2|0); if ($cmp16) { HEAP32[$bk>>2] = $arrayidx; HEAP32[$1>>2] = $3; break; } else { _abort(); // unreachable; } } } while(0); $shl22 = $add8 << 3; $or23 = $shl22 | 3; $head = ((($2)) + 4|0); HEAP32[$head>>2] = $or23; $add$ptr = (($2) + ($shl22)|0); $head25 = ((($add$ptr)) + 4|0); $6 = HEAP32[$head25>>2]|0; $or26 = $6 | 1; HEAP32[$head25>>2] = $or26; $retval$0 = $fd9; STACKTOP = sp;return ($retval$0|0); } $7 = HEAP32[(38696)>>2]|0; $cmp29 = ($cond>>>0)>($7>>>0); if ($cmp29) { $cmp31 = ($shr3|0)==(0); if (!($cmp31)) { $shl35 = $shr3 << $shr; $shl37 = 2 << $shr; $sub = (0 - ($shl37))|0; $or40 = $shl37 | $sub; $and41 = $shl35 & $or40; $sub42 = (0 - ($and41))|0; $and43 = $and41 & $sub42; $sub44 = (($and43) + -1)|0; $shr45 = $sub44 >>> 12; $and46 = $shr45 & 16; $shr47 = $sub44 >>> $and46; $shr48 = $shr47 >>> 5; $and49 = $shr48 & 8; $add50 = $and49 | $and46; $shr51 = $shr47 >>> $and49; $shr52 = $shr51 >>> 2; $and53 = $shr52 & 4; $add54 = $add50 | $and53; $shr55 = $shr51 >>> $and53; $shr56 = $shr55 >>> 1; $and57 = $shr56 & 2; $add58 = $add54 | $and57; $shr59 = $shr55 >>> $and57; $shr60 = $shr59 >>> 1; $and61 = $shr60 & 1; $add62 = $add58 | $and61; $shr63 = $shr59 >>> $and61; $add64 = (($add62) + ($shr63))|0; $shl65 = $add64 << 1; $arrayidx66 = (38728 + ($shl65<<2)|0); $8 = ((($arrayidx66)) + 8|0); $9 = HEAP32[$8>>2]|0; $fd69 = ((($9)) + 8|0); $10 = HEAP32[$fd69>>2]|0; $cmp70 = ($10|0)==($arrayidx66|0); do { if ($cmp70) { $shl72 = 1 << $add64; $neg73 = $shl72 ^ -1; $and74 = $0 & $neg73; HEAP32[9672] = $and74; $14 = $and74; } else { $11 = HEAP32[(38704)>>2]|0; $cmp76 = ($11>>>0)>($10>>>0); if ($cmp76) { _abort(); // unreachable; } $bk78 = ((($10)) + 12|0); $12 = HEAP32[$bk78>>2]|0; $cmp79 = ($12|0)==($9|0); if ($cmp79) { HEAP32[$bk78>>2] = $arrayidx66; HEAP32[$8>>2] = $10; $14 = $0; break; } else { _abort(); // unreachable; } } } while(0); $shl90 = $add64 << 3; $sub91 = (($shl90) - ($cond))|0; $or93 = $cond | 3; $head94 = ((($9)) + 4|0); HEAP32[$head94>>2] = $or93; $add$ptr95 = (($9) + ($cond)|0); $or96 = $sub91 | 1; $head97 = ((($add$ptr95)) + 4|0); HEAP32[$head97>>2] = $or96; $add$ptr98 = (($9) + ($shl90)|0); HEAP32[$add$ptr98>>2] = $sub91; $cmp99 = ($7|0)==(0); if (!($cmp99)) { $13 = HEAP32[(38708)>>2]|0; $shr101 = $7 >>> 3; $shl102 = $shr101 << 1; $arrayidx103 = (38728 + ($shl102<<2)|0); $shl105 = 1 << $shr101; $and106 = $14 & $shl105; $tobool107 = ($and106|0)==(0); if ($tobool107) { $or110 = $14 | $shl105; HEAP32[9672] = $or110; $$pre = ((($arrayidx103)) + 8|0); $$pre$phiZ2D = $$pre;$F104$0 = $arrayidx103; } else { $15 = ((($arrayidx103)) + 8|0); $16 = HEAP32[$15>>2]|0; $17 = HEAP32[(38704)>>2]|0; $cmp113 = ($17>>>0)>($16>>>0); if ($cmp113) { _abort(); // unreachable; } else { $$pre$phiZ2D = $15;$F104$0 = $16; } } HEAP32[$$pre$phiZ2D>>2] = $13; $bk122 = ((($F104$0)) + 12|0); HEAP32[$bk122>>2] = $13; $fd123 = ((($13)) + 8|0); HEAP32[$fd123>>2] = $F104$0; $bk124 = ((($13)) + 12|0); HEAP32[$bk124>>2] = $arrayidx103; } HEAP32[(38696)>>2] = $sub91; HEAP32[(38708)>>2] = $add$ptr95; $retval$0 = $fd69; STACKTOP = sp;return ($retval$0|0); } $18 = HEAP32[(38692)>>2]|0; $cmp128 = ($18|0)==(0); if ($cmp128) { $nb$0 = $cond; } else { $sub$i = (0 - ($18))|0; $and$i = $18 & $sub$i; $sub2$i = (($and$i) + -1)|0; $shr$i = $sub2$i >>> 12; $and3$i = $shr$i & 16; $shr4$i = $sub2$i >>> $and3$i; $shr5$i = $shr4$i >>> 5; $and6$i = $shr5$i & 8; $add$i = $and6$i | $and3$i; $shr7$i = $shr4$i >>> $and6$i; $shr8$i = $shr7$i >>> 2; $and9$i = $shr8$i & 4; $add10$i = $add$i | $and9$i; $shr11$i = $shr7$i >>> $and9$i; $shr12$i = $shr11$i >>> 1; $and13$i = $shr12$i & 2; $add14$i = $add10$i | $and13$i; $shr15$i = $shr11$i >>> $and13$i; $shr16$i = $shr15$i >>> 1; $and17$i = $shr16$i & 1; $add18$i = $add14$i | $and17$i; $shr19$i = $shr15$i >>> $and17$i; $add20$i = (($add18$i) + ($shr19$i))|0; $arrayidx$i = (38992 + ($add20$i<<2)|0); $19 = HEAP32[$arrayidx$i>>2]|0; $head$i = ((($19)) + 4|0); $20 = HEAP32[$head$i>>2]|0; $and21$i = $20 & -8; $sub22$i = (($and21$i) - ($cond))|0; $arrayidx233$i = ((($19)) + 16|0); $21 = HEAP32[$arrayidx233$i>>2]|0; $cmp4$i = ($21|0)==(0|0); $$sink5$i = $cmp4$i&1; $arrayidx276$i = (((($19)) + 16|0) + ($$sink5$i<<2)|0); $22 = HEAP32[$arrayidx276$i>>2]|0; $cmp287$i = ($22|0)==(0|0); if ($cmp287$i) { $rsize$0$lcssa$i = $sub22$i;$v$0$lcssa$i = $19; } else { $23 = $22;$rsize$08$i = $sub22$i;$v$09$i = $19; while(1) { $head29$i = ((($23)) + 4|0); $24 = HEAP32[$head29$i>>2]|0; $and30$i = $24 & -8; $sub31$i = (($and30$i) - ($cond))|0; $cmp32$i = ($sub31$i>>>0)<($rsize$08$i>>>0); $sub31$rsize$0$i = $cmp32$i ? $sub31$i : $rsize$08$i; $$v$0$i = $cmp32$i ? $23 : $v$09$i; $arrayidx23$i = ((($23)) + 16|0); $25 = HEAP32[$arrayidx23$i>>2]|0; $cmp$i = ($25|0)==(0|0); $$sink$i = $cmp$i&1; $arrayidx27$i = (((($23)) + 16|0) + ($$sink$i<<2)|0); $26 = HEAP32[$arrayidx27$i>>2]|0; $cmp28$i = ($26|0)==(0|0); if ($cmp28$i) { $rsize$0$lcssa$i = $sub31$rsize$0$i;$v$0$lcssa$i = $$v$0$i; break; } else { $23 = $26;$rsize$08$i = $sub31$rsize$0$i;$v$09$i = $$v$0$i; } } } $27 = HEAP32[(38704)>>2]|0; $cmp33$i = ($27>>>0)>($v$0$lcssa$i>>>0); if ($cmp33$i) { _abort(); // unreachable; } $add$ptr$i = (($v$0$lcssa$i) + ($cond)|0); $cmp35$i = ($add$ptr$i>>>0)>($v$0$lcssa$i>>>0); if (!($cmp35$i)) { _abort(); // unreachable; } $parent$i = ((($v$0$lcssa$i)) + 24|0); $28 = HEAP32[$parent$i>>2]|0; $bk$i = ((($v$0$lcssa$i)) + 12|0); $29 = HEAP32[$bk$i>>2]|0; $cmp40$i = ($29|0)==($v$0$lcssa$i|0); do { if ($cmp40$i) { $arrayidx61$i = ((($v$0$lcssa$i)) + 20|0); $33 = HEAP32[$arrayidx61$i>>2]|0; $cmp62$i = ($33|0)==(0|0); if ($cmp62$i) { $arrayidx65$i = ((($v$0$lcssa$i)) + 16|0); $34 = HEAP32[$arrayidx65$i>>2]|0; $cmp66$i = ($34|0)==(0|0); if ($cmp66$i) { $R$3$i = 0; break; } else { $R$1$i = $34;$RP$1$i = $arrayidx65$i; } } else { $R$1$i = $33;$RP$1$i = $arrayidx61$i; } while(1) { $arrayidx71$i = ((($R$1$i)) + 20|0); $35 = HEAP32[$arrayidx71$i>>2]|0; $cmp72$i = ($35|0)==(0|0); if (!($cmp72$i)) { $R$1$i = $35;$RP$1$i = $arrayidx71$i; continue; } $arrayidx75$i = ((($R$1$i)) + 16|0); $36 = HEAP32[$arrayidx75$i>>2]|0; $cmp76$i = ($36|0)==(0|0); if ($cmp76$i) { break; } else { $R$1$i = $36;$RP$1$i = $arrayidx75$i; } } $cmp81$i = ($27>>>0)>($RP$1$i>>>0); if ($cmp81$i) { _abort(); // unreachable; } else { HEAP32[$RP$1$i>>2] = 0; $R$3$i = $R$1$i; break; } } else { $fd$i = ((($v$0$lcssa$i)) + 8|0); $30 = HEAP32[$fd$i>>2]|0; $cmp45$i = ($27>>>0)>($30>>>0); if ($cmp45$i) { _abort(); // unreachable; } $bk47$i = ((($30)) + 12|0); $31 = HEAP32[$bk47$i>>2]|0; $cmp48$i = ($31|0)==($v$0$lcssa$i|0); if (!($cmp48$i)) { _abort(); // unreachable; } $fd50$i = ((($29)) + 8|0); $32 = HEAP32[$fd50$i>>2]|0; $cmp51$i = ($32|0)==($v$0$lcssa$i|0); if ($cmp51$i) { HEAP32[$bk47$i>>2] = $29; HEAP32[$fd50$i>>2] = $30; $R$3$i = $29; break; } else { _abort(); // unreachable; } } } while(0); $cmp90$i = ($28|0)==(0|0); L73: do { if (!($cmp90$i)) { $index$i = ((($v$0$lcssa$i)) + 28|0); $37 = HEAP32[$index$i>>2]|0; $arrayidx94$i = (38992 + ($37<<2)|0); $38 = HEAP32[$arrayidx94$i>>2]|0; $cmp95$i = ($v$0$lcssa$i|0)==($38|0); do { if ($cmp95$i) { HEAP32[$arrayidx94$i>>2] = $R$3$i; $cond$i = ($R$3$i|0)==(0|0); if ($cond$i) { $shl$i = 1 << $37; $neg$i = $shl$i ^ -1; $and103$i = $18 & $neg$i; HEAP32[(38692)>>2] = $and103$i; break L73; } } else { $39 = HEAP32[(38704)>>2]|0; $cmp107$i = ($39>>>0)>($28>>>0); if ($cmp107$i) { _abort(); // unreachable; } else { $arrayidx113$i = ((($28)) + 16|0); $40 = HEAP32[$arrayidx113$i>>2]|0; $cmp114$i = ($40|0)!=($v$0$lcssa$i|0); $$sink2$i = $cmp114$i&1; $arrayidx121$i = (((($28)) + 16|0) + ($$sink2$i<<2)|0); HEAP32[$arrayidx121$i>>2] = $R$3$i; $cmp126$i = ($R$3$i|0)==(0|0); if ($cmp126$i) { break L73; } else { break; } } } } while(0); $41 = HEAP32[(38704)>>2]|0; $cmp130$i = ($41>>>0)>($R$3$i>>>0); if ($cmp130$i) { _abort(); // unreachable; } $parent135$i = ((($R$3$i)) + 24|0); HEAP32[$parent135$i>>2] = $28; $arrayidx137$i = ((($v$0$lcssa$i)) + 16|0); $42 = HEAP32[$arrayidx137$i>>2]|0; $cmp138$i = ($42|0)==(0|0); do { if (!($cmp138$i)) { $cmp142$i = ($41>>>0)>($42>>>0); if ($cmp142$i) { _abort(); // unreachable; } else { $arrayidx148$i = ((($R$3$i)) + 16|0); HEAP32[$arrayidx148$i>>2] = $42; $parent149$i = ((($42)) + 24|0); HEAP32[$parent149$i>>2] = $R$3$i; break; } } } while(0); $arrayidx154$i = ((($v$0$lcssa$i)) + 20|0); $43 = HEAP32[$arrayidx154$i>>2]|0; $cmp155$i = ($43|0)==(0|0); if (!($cmp155$i)) { $44 = HEAP32[(38704)>>2]|0; $cmp159$i = ($44>>>0)>($43>>>0); if ($cmp159$i) { _abort(); // unreachable; } else { $arrayidx165$i = ((($R$3$i)) + 20|0); HEAP32[$arrayidx165$i>>2] = $43; $parent166$i = ((($43)) + 24|0); HEAP32[$parent166$i>>2] = $R$3$i; break; } } } } while(0); $cmp174$i = ($rsize$0$lcssa$i>>>0)<(16); if ($cmp174$i) { $add177$i = (($rsize$0$lcssa$i) + ($cond))|0; $or178$i = $add177$i | 3; $head179$i = ((($v$0$lcssa$i)) + 4|0); HEAP32[$head179$i>>2] = $or178$i; $add$ptr181$i = (($v$0$lcssa$i) + ($add177$i)|0); $head182$i = ((($add$ptr181$i)) + 4|0); $45 = HEAP32[$head182$i>>2]|0; $or183$i = $45 | 1; HEAP32[$head182$i>>2] = $or183$i; } else { $or186$i = $cond | 3; $head187$i = ((($v$0$lcssa$i)) + 4|0); HEAP32[$head187$i>>2] = $or186$i; $or188$i = $rsize$0$lcssa$i | 1; $head189$i = ((($add$ptr$i)) + 4|0); HEAP32[$head189$i>>2] = $or188$i; $add$ptr190$i = (($add$ptr$i) + ($rsize$0$lcssa$i)|0); HEAP32[$add$ptr190$i>>2] = $rsize$0$lcssa$i; $cmp191$i = ($7|0)==(0); if (!($cmp191$i)) { $46 = HEAP32[(38708)>>2]|0; $shr194$i = $7 >>> 3; $shl195$i = $shr194$i << 1; $arrayidx196$i = (38728 + ($shl195$i<<2)|0); $shl198$i = 1 << $shr194$i; $and199$i = $0 & $shl198$i; $tobool200$i = ($and199$i|0)==(0); if ($tobool200$i) { $or204$i = $0 | $shl198$i; HEAP32[9672] = $or204$i; $$pre$i = ((($arrayidx196$i)) + 8|0); $$pre$phi$iZ2D = $$pre$i;$F197$0$i = $arrayidx196$i; } else { $47 = ((($arrayidx196$i)) + 8|0); $48 = HEAP32[$47>>2]|0; $49 = HEAP32[(38704)>>2]|0; $cmp208$i = ($49>>>0)>($48>>>0); if ($cmp208$i) { _abort(); // unreachable; } else { $$pre$phi$iZ2D = $47;$F197$0$i = $48; } } HEAP32[$$pre$phi$iZ2D>>2] = $46; $bk218$i = ((($F197$0$i)) + 12|0); HEAP32[$bk218$i>>2] = $46; $fd219$i = ((($46)) + 8|0); HEAP32[$fd219$i>>2] = $F197$0$i; $bk220$i = ((($46)) + 12|0); HEAP32[$bk220$i>>2] = $arrayidx196$i; } HEAP32[(38696)>>2] = $rsize$0$lcssa$i; HEAP32[(38708)>>2] = $add$ptr$i; } $add$ptr225$i = ((($v$0$lcssa$i)) + 8|0); $retval$0 = $add$ptr225$i; STACKTOP = sp;return ($retval$0|0); } } else { $nb$0 = $cond; } } else { $cmp139 = ($bytes>>>0)>(4294967231); if ($cmp139) { $nb$0 = -1; } else { $add144 = (($bytes) + 11)|0; $and145 = $add144 & -8; $50 = HEAP32[(38692)>>2]|0; $cmp146 = ($50|0)==(0); if ($cmp146) { $nb$0 = $and145; } else { $sub$i140 = (0 - ($and145))|0; $shr$i141 = $add144 >>> 8; $cmp$i142 = ($shr$i141|0)==(0); if ($cmp$i142) { $idx$0$i = 0; } else { $cmp1$i = ($and145>>>0)>(16777215); if ($cmp1$i) { $idx$0$i = 31; } else { $sub4$i = (($shr$i141) + 1048320)|0; $shr5$i144 = $sub4$i >>> 16; $and$i145 = $shr5$i144 & 8; $shl$i146 = $shr$i141 << $and$i145; $sub6$i = (($shl$i146) + 520192)|0; $shr7$i147 = $sub6$i >>> 16; $and8$i = $shr7$i147 & 4; $add$i148 = $and8$i | $and$i145; $shl9$i = $shl$i146 << $and8$i; $sub10$i = (($shl9$i) + 245760)|0; $shr11$i149 = $sub10$i >>> 16; $and12$i = $shr11$i149 & 2; $add13$i = $add$i148 | $and12$i; $sub14$i = (14 - ($add13$i))|0; $shl15$i = $shl9$i << $and12$i; $shr16$i150 = $shl15$i >>> 15; $add17$i = (($sub14$i) + ($shr16$i150))|0; $shl18$i = $add17$i << 1; $add19$i = (($add17$i) + 7)|0; $shr20$i = $and145 >>> $add19$i; $and21$i151 = $shr20$i & 1; $add22$i = $and21$i151 | $shl18$i; $idx$0$i = $add22$i; } } $arrayidx$i152 = (38992 + ($idx$0$i<<2)|0); $51 = HEAP32[$arrayidx$i152>>2]|0; $cmp24$i = ($51|0)==(0|0); L117: do { if ($cmp24$i) { $rsize$3$i = $sub$i140;$t$2$i = 0;$v$3$i = 0; label = 81; } else { $cmp26$i = ($idx$0$i|0)==(31); $shr27$i = $idx$0$i >>> 1; $sub30$i = (25 - ($shr27$i))|0; $cond$i153 = $cmp26$i ? 0 : $sub30$i; $shl31$i = $and145 << $cond$i153; $rsize$0$i = $sub$i140;$rst$0$i = 0;$sizebits$0$i = $shl31$i;$t$0$i = $51;$v$0$i = 0; while(1) { $head$i154 = ((($t$0$i)) + 4|0); $52 = HEAP32[$head$i154>>2]|0; $and32$i = $52 & -8; $sub33$i = (($and32$i) - ($and145))|0; $cmp34$i = ($sub33$i>>>0)<($rsize$0$i>>>0); if ($cmp34$i) { $cmp36$i = ($sub33$i|0)==(0); if ($cmp36$i) { $rsize$410$i = 0;$t$49$i = $t$0$i;$v$411$i = $t$0$i; label = 85; break L117; } else { $rsize$1$i = $sub33$i;$v$1$i = $t$0$i; } } else { $rsize$1$i = $rsize$0$i;$v$1$i = $v$0$i; } $arrayidx40$i = ((($t$0$i)) + 20|0); $53 = HEAP32[$arrayidx40$i>>2]|0; $shr42$i = $sizebits$0$i >>> 31; $arrayidx44$i = (((($t$0$i)) + 16|0) + ($shr42$i<<2)|0); $54 = HEAP32[$arrayidx44$i>>2]|0; $cmp45$i155 = ($53|0)==(0|0); $cmp46$i = ($53|0)==($54|0); $or$cond2$i = $cmp45$i155 | $cmp46$i; $rst$1$i = $or$cond2$i ? $rst$0$i : $53; $cmp49$i = ($54|0)==(0|0); $not$cmp495$i = $cmp49$i ^ 1; $shl52$i = $not$cmp495$i&1; $sizebits$0$shl52$i = $sizebits$0$i << $shl52$i; if ($cmp49$i) { $rsize$3$i = $rsize$1$i;$t$2$i = $rst$1$i;$v$3$i = $v$1$i; label = 81; break; } else { $rsize$0$i = $rsize$1$i;$rst$0$i = $rst$1$i;$sizebits$0$i = $sizebits$0$shl52$i;$t$0$i = $54;$v$0$i = $v$1$i; } } } } while(0); if ((label|0) == 81) { $cmp55$i = ($t$2$i|0)==(0|0); $cmp57$i = ($v$3$i|0)==(0|0); $or$cond$i = $cmp55$i & $cmp57$i; if ($or$cond$i) { $shl60$i = 2 << $idx$0$i; $sub63$i = (0 - ($shl60$i))|0; $or$i = $shl60$i | $sub63$i; $and64$i = $50 & $or$i; $cmp65$i = ($and64$i|0)==(0); if ($cmp65$i) { $nb$0 = $and145; break; } $sub67$i = (0 - ($and64$i))|0; $and68$i = $and64$i & $sub67$i; $sub70$i = (($and68$i) + -1)|0; $shr72$i = $sub70$i >>> 12; $and73$i = $shr72$i & 16; $shr75$i = $sub70$i >>> $and73$i; $shr76$i = $shr75$i >>> 5; $and77$i = $shr76$i & 8; $add78$i = $and77$i | $and73$i; $shr79$i = $shr75$i >>> $and77$i; $shr80$i = $shr79$i >>> 2; $and81$i = $shr80$i & 4; $add82$i = $add78$i | $and81$i; $shr83$i = $shr79$i >>> $and81$i; $shr84$i = $shr83$i >>> 1; $and85$i = $shr84$i & 2; $add86$i = $add82$i | $and85$i; $shr87$i = $shr83$i >>> $and85$i; $shr88$i = $shr87$i >>> 1; $and89$i = $shr88$i & 1; $add90$i = $add86$i | $and89$i; $shr91$i = $shr87$i >>> $and89$i; $add92$i = (($add90$i) + ($shr91$i))|0; $arrayidx94$i156 = (38992 + ($add92$i<<2)|0); $55 = HEAP32[$arrayidx94$i156>>2]|0; $t$4$ph$i = $55;$v$4$ph$i = 0; } else { $t$4$ph$i = $t$2$i;$v$4$ph$i = $v$3$i; } $cmp978$i = ($t$4$ph$i|0)==(0|0); if ($cmp978$i) { $rsize$4$lcssa$i = $rsize$3$i;$v$4$lcssa$i = $v$4$ph$i; } else { $rsize$410$i = $rsize$3$i;$t$49$i = $t$4$ph$i;$v$411$i = $v$4$ph$i; label = 85; } } if ((label|0) == 85) { while(1) { label = 0; $head99$i = ((($t$49$i)) + 4|0); $56 = HEAP32[$head99$i>>2]|0; $and100$i = $56 & -8; $sub101$i = (($and100$i) - ($and145))|0; $cmp102$i = ($sub101$i>>>0)<($rsize$410$i>>>0); $sub101$rsize$4$i = $cmp102$i ? $sub101$i : $rsize$410$i; $t$4$v$4$i = $cmp102$i ? $t$49$i : $v$411$i; $arrayidx106$i = ((($t$49$i)) + 16|0); $57 = HEAP32[$arrayidx106$i>>2]|0; $cmp107$i157 = ($57|0)==(0|0); $$sink$i158 = $cmp107$i157&1; $arrayidx113$i159 = (((($t$49$i)) + 16|0) + ($$sink$i158<<2)|0); $58 = HEAP32[$arrayidx113$i159>>2]|0; $cmp97$i = ($58|0)==(0|0); if ($cmp97$i) { $rsize$4$lcssa$i = $sub101$rsize$4$i;$v$4$lcssa$i = $t$4$v$4$i; break; } else { $rsize$410$i = $sub101$rsize$4$i;$t$49$i = $58;$v$411$i = $t$4$v$4$i; label = 85; } } } $cmp116$i = ($v$4$lcssa$i|0)==(0|0); if ($cmp116$i) { $nb$0 = $and145; } else { $59 = HEAP32[(38696)>>2]|0; $sub118$i = (($59) - ($and145))|0; $cmp119$i = ($rsize$4$lcssa$i>>>0)<($sub118$i>>>0); if ($cmp119$i) { $60 = HEAP32[(38704)>>2]|0; $cmp121$i = ($60>>>0)>($v$4$lcssa$i>>>0); if ($cmp121$i) { _abort(); // unreachable; } $add$ptr$i162 = (($v$4$lcssa$i) + ($and145)|0); $cmp123$i = ($add$ptr$i162>>>0)>($v$4$lcssa$i>>>0); if (!($cmp123$i)) { _abort(); // unreachable; } $parent$i163 = ((($v$4$lcssa$i)) + 24|0); $61 = HEAP32[$parent$i163>>2]|0; $bk$i164 = ((($v$4$lcssa$i)) + 12|0); $62 = HEAP32[$bk$i164>>2]|0; $cmp128$i = ($62|0)==($v$4$lcssa$i|0); do { if ($cmp128$i) { $arrayidx151$i = ((($v$4$lcssa$i)) + 20|0); $66 = HEAP32[$arrayidx151$i>>2]|0; $cmp152$i = ($66|0)==(0|0); if ($cmp152$i) { $arrayidx155$i = ((($v$4$lcssa$i)) + 16|0); $67 = HEAP32[$arrayidx155$i>>2]|0; $cmp156$i = ($67|0)==(0|0); if ($cmp156$i) { $R$3$i172 = 0; break; } else { $R$1$i169 = $67;$RP$1$i168 = $arrayidx155$i; } } else { $R$1$i169 = $66;$RP$1$i168 = $arrayidx151$i; } while(1) { $arrayidx161$i = ((($R$1$i169)) + 20|0); $68 = HEAP32[$arrayidx161$i>>2]|0; $cmp162$i = ($68|0)==(0|0); if (!($cmp162$i)) { $R$1$i169 = $68;$RP$1$i168 = $arrayidx161$i; continue; } $arrayidx165$i170 = ((($R$1$i169)) + 16|0); $69 = HEAP32[$arrayidx165$i170>>2]|0; $cmp166$i = ($69|0)==(0|0); if ($cmp166$i) { break; } else { $R$1$i169 = $69;$RP$1$i168 = $arrayidx165$i170; } } $cmp171$i = ($60>>>0)>($RP$1$i168>>>0); if ($cmp171$i) { _abort(); // unreachable; } else { HEAP32[$RP$1$i168>>2] = 0; $R$3$i172 = $R$1$i169; break; } } else { $fd$i165 = ((($v$4$lcssa$i)) + 8|0); $63 = HEAP32[$fd$i165>>2]|0; $cmp133$i = ($60>>>0)>($63>>>0); if ($cmp133$i) { _abort(); // unreachable; } $bk136$i = ((($63)) + 12|0); $64 = HEAP32[$bk136$i>>2]|0; $cmp137$i = ($64|0)==($v$4$lcssa$i|0); if (!($cmp137$i)) { _abort(); // unreachable; } $fd139$i = ((($62)) + 8|0); $65 = HEAP32[$fd139$i>>2]|0; $cmp140$i = ($65|0)==($v$4$lcssa$i|0); if ($cmp140$i) { HEAP32[$bk136$i>>2] = $62; HEAP32[$fd139$i>>2] = $63; $R$3$i172 = $62; break; } else { _abort(); // unreachable; } } } while(0); $cmp180$i = ($61|0)==(0|0); L164: do { if ($cmp180$i) { $83 = $50; } else { $index$i173 = ((($v$4$lcssa$i)) + 28|0); $70 = HEAP32[$index$i173>>2]|0; $arrayidx184$i = (38992 + ($70<<2)|0); $71 = HEAP32[$arrayidx184$i>>2]|0; $cmp185$i = ($v$4$lcssa$i|0)==($71|0); do { if ($cmp185$i) { HEAP32[$arrayidx184$i>>2] = $R$3$i172; $cond4$i = ($R$3$i172|0)==(0|0); if ($cond4$i) { $shl192$i = 1 << $70; $neg$i174 = $shl192$i ^ -1; $and194$i = $50 & $neg$i174; HEAP32[(38692)>>2] = $and194$i; $83 = $and194$i; break L164; } } else { $72 = HEAP32[(38704)>>2]|0; $cmp198$i = ($72>>>0)>($61>>>0); if ($cmp198$i) { _abort(); // unreachable; } else { $arrayidx204$i = ((($61)) + 16|0); $73 = HEAP32[$arrayidx204$i>>2]|0; $cmp205$i = ($73|0)!=($v$4$lcssa$i|0); $$sink2$i176 = $cmp205$i&1; $arrayidx212$i = (((($61)) + 16|0) + ($$sink2$i176<<2)|0); HEAP32[$arrayidx212$i>>2] = $R$3$i172; $cmp217$i = ($R$3$i172|0)==(0|0); if ($cmp217$i) { $83 = $50; break L164; } else { break; } } } } while(0); $74 = HEAP32[(38704)>>2]|0; $cmp221$i = ($74>>>0)>($R$3$i172>>>0); if ($cmp221$i) { _abort(); // unreachable; } $parent226$i = ((($R$3$i172)) + 24|0); HEAP32[$parent226$i>>2] = $61; $arrayidx228$i = ((($v$4$lcssa$i)) + 16|0); $75 = HEAP32[$arrayidx228$i>>2]|0; $cmp229$i = ($75|0)==(0|0); do { if (!($cmp229$i)) { $cmp233$i = ($74>>>0)>($75>>>0); if ($cmp233$i) { _abort(); // unreachable; } else { $arrayidx239$i = ((($R$3$i172)) + 16|0); HEAP32[$arrayidx239$i>>2] = $75; $parent240$i = ((($75)) + 24|0); HEAP32[$parent240$i>>2] = $R$3$i172; break; } } } while(0); $arrayidx245$i = ((($v$4$lcssa$i)) + 20|0); $76 = HEAP32[$arrayidx245$i>>2]|0; $cmp246$i = ($76|0)==(0|0); if ($cmp246$i) { $83 = $50; } else { $77 = HEAP32[(38704)>>2]|0; $cmp250$i = ($77>>>0)>($76>>>0); if ($cmp250$i) { _abort(); // unreachable; } else { $arrayidx256$i = ((($R$3$i172)) + 20|0); HEAP32[$arrayidx256$i>>2] = $76; $parent257$i = ((($76)) + 24|0); HEAP32[$parent257$i>>2] = $R$3$i172; $83 = $50; break; } } } } while(0); $cmp265$i = ($rsize$4$lcssa$i>>>0)<(16); do { if ($cmp265$i) { $add268$i = (($rsize$4$lcssa$i) + ($and145))|0; $or270$i = $add268$i | 3; $head271$i = ((($v$4$lcssa$i)) + 4|0); HEAP32[$head271$i>>2] = $or270$i; $add$ptr273$i = (($v$4$lcssa$i) + ($add268$i)|0); $head274$i = ((($add$ptr273$i)) + 4|0); $78 = HEAP32[$head274$i>>2]|0; $or275$i = $78 | 1; HEAP32[$head274$i>>2] = $or275$i; } else { $or278$i = $and145 | 3; $head279$i = ((($v$4$lcssa$i)) + 4|0); HEAP32[$head279$i>>2] = $or278$i; $or280$i = $rsize$4$lcssa$i | 1; $head281$i = ((($add$ptr$i162)) + 4|0); HEAP32[$head281$i>>2] = $or280$i; $add$ptr282$i = (($add$ptr$i162) + ($rsize$4$lcssa$i)|0); HEAP32[$add$ptr282$i>>2] = $rsize$4$lcssa$i; $shr283$i = $rsize$4$lcssa$i >>> 3; $cmp284$i = ($rsize$4$lcssa$i>>>0)<(256); if ($cmp284$i) { $shl288$i = $shr283$i << 1; $arrayidx289$i = (38728 + ($shl288$i<<2)|0); $79 = HEAP32[9672]|0; $shl291$i = 1 << $shr283$i; $and292$i = $79 & $shl291$i; $tobool293$i = ($and292$i|0)==(0); if ($tobool293$i) { $or297$i = $79 | $shl291$i; HEAP32[9672] = $or297$i; $$pre$i179 = ((($arrayidx289$i)) + 8|0); $$pre$phi$i180Z2D = $$pre$i179;$F290$0$i = $arrayidx289$i; } else { $80 = ((($arrayidx289$i)) + 8|0); $81 = HEAP32[$80>>2]|0; $82 = HEAP32[(38704)>>2]|0; $cmp301$i = ($82>>>0)>($81>>>0); if ($cmp301$i) { _abort(); // unreachable; } else { $$pre$phi$i180Z2D = $80;$F290$0$i = $81; } } HEAP32[$$pre$phi$i180Z2D>>2] = $add$ptr$i162; $bk311$i = ((($F290$0$i)) + 12|0); HEAP32[$bk311$i>>2] = $add$ptr$i162; $fd312$i = ((($add$ptr$i162)) + 8|0); HEAP32[$fd312$i>>2] = $F290$0$i; $bk313$i = ((($add$ptr$i162)) + 12|0); HEAP32[$bk313$i>>2] = $arrayidx289$i; break; } $shr318$i = $rsize$4$lcssa$i >>> 8; $cmp319$i = ($shr318$i|0)==(0); if ($cmp319$i) { $I316$0$i = 0; } else { $cmp323$i = ($rsize$4$lcssa$i>>>0)>(16777215); if ($cmp323$i) { $I316$0$i = 31; } else { $sub329$i = (($shr318$i) + 1048320)|0; $shr330$i = $sub329$i >>> 16; $and331$i = $shr330$i & 8; $shl333$i = $shr318$i << $and331$i; $sub334$i = (($shl333$i) + 520192)|0; $shr335$i = $sub334$i >>> 16; $and336$i = $shr335$i & 4; $add337$i = $and336$i | $and331$i; $shl338$i = $shl333$i << $and336$i; $sub339$i = (($shl338$i) + 245760)|0; $shr340$i = $sub339$i >>> 16; $and341$i = $shr340$i & 2; $add342$i = $add337$i | $and341$i; $sub343$i = (14 - ($add342$i))|0; $shl344$i = $shl338$i << $and341$i; $shr345$i = $shl344$i >>> 15; $add346$i = (($sub343$i) + ($shr345$i))|0; $shl347$i = $add346$i << 1; $add348$i = (($add346$i) + 7)|0; $shr349$i = $rsize$4$lcssa$i >>> $add348$i; $and350$i = $shr349$i & 1; $add351$i = $and350$i | $shl347$i; $I316$0$i = $add351$i; } } $arrayidx355$i = (38992 + ($I316$0$i<<2)|0); $index356$i = ((($add$ptr$i162)) + 28|0); HEAP32[$index356$i>>2] = $I316$0$i; $child357$i = ((($add$ptr$i162)) + 16|0); $arrayidx358$i = ((($child357$i)) + 4|0); HEAP32[$arrayidx358$i>>2] = 0; HEAP32[$child357$i>>2] = 0; $shl362$i = 1 << $I316$0$i; $and363$i = $83 & $shl362$i; $tobool364$i = ($and363$i|0)==(0); if ($tobool364$i) { $or368$i = $83 | $shl362$i; HEAP32[(38692)>>2] = $or368$i; HEAP32[$arrayidx355$i>>2] = $add$ptr$i162; $parent369$i = ((($add$ptr$i162)) + 24|0); HEAP32[$parent369$i>>2] = $arrayidx355$i; $bk370$i = ((($add$ptr$i162)) + 12|0); HEAP32[$bk370$i>>2] = $add$ptr$i162; $fd371$i = ((($add$ptr$i162)) + 8|0); HEAP32[$fd371$i>>2] = $add$ptr$i162; break; } $84 = HEAP32[$arrayidx355$i>>2]|0; $cmp374$i = ($I316$0$i|0)==(31); $shr378$i = $I316$0$i >>> 1; $sub381$i = (25 - ($shr378$i))|0; $cond383$i = $cmp374$i ? 0 : $sub381$i; $shl384$i = $rsize$4$lcssa$i << $cond383$i; $K373$0$i = $shl384$i;$T$0$i = $84; while(1) { $head386$i = ((($T$0$i)) + 4|0); $85 = HEAP32[$head386$i>>2]|0; $and387$i = $85 & -8; $cmp388$i = ($and387$i|0)==($rsize$4$lcssa$i|0); if ($cmp388$i) { label = 139; break; } $shr392$i = $K373$0$i >>> 31; $arrayidx394$i = (((($T$0$i)) + 16|0) + ($shr392$i<<2)|0); $shl395$i = $K373$0$i << 1; $86 = HEAP32[$arrayidx394$i>>2]|0; $cmp396$i = ($86|0)==(0|0); if ($cmp396$i) { label = 136; break; } else { $K373$0$i = $shl395$i;$T$0$i = $86; } } if ((label|0) == 136) { $87 = HEAP32[(38704)>>2]|0; $cmp401$i = ($87>>>0)>($arrayidx394$i>>>0); if ($cmp401$i) { _abort(); // unreachable; } else { HEAP32[$arrayidx394$i>>2] = $add$ptr$i162; $parent406$i = ((($add$ptr$i162)) + 24|0); HEAP32[$parent406$i>>2] = $T$0$i; $bk407$i = ((($add$ptr$i162)) + 12|0); HEAP32[$bk407$i>>2] = $add$ptr$i162; $fd408$i = ((($add$ptr$i162)) + 8|0); HEAP32[$fd408$i>>2] = $add$ptr$i162; break; } } else if ((label|0) == 139) { $fd416$i = ((($T$0$i)) + 8|0); $88 = HEAP32[$fd416$i>>2]|0; $89 = HEAP32[(38704)>>2]|0; $cmp418$i = ($89>>>0)<=($T$0$i>>>0); $cmp422$i = ($89>>>0)<=($88>>>0); $90 = $cmp422$i & $cmp418$i; if ($90) { $bk429$i = ((($88)) + 12|0); HEAP32[$bk429$i>>2] = $add$ptr$i162; HEAP32[$fd416$i>>2] = $add$ptr$i162; $fd431$i = ((($add$ptr$i162)) + 8|0); HEAP32[$fd431$i>>2] = $88; $bk432$i = ((($add$ptr$i162)) + 12|0); HEAP32[$bk432$i>>2] = $T$0$i; $parent433$i = ((($add$ptr$i162)) + 24|0); HEAP32[$parent433$i>>2] = 0; break; } else { _abort(); // unreachable; } } } } while(0); $add$ptr441$i = ((($v$4$lcssa$i)) + 8|0); $retval$0 = $add$ptr441$i; STACKTOP = sp;return ($retval$0|0); } else { $nb$0 = $and145; } } } } } } while(0); $91 = HEAP32[(38696)>>2]|0; $cmp156 = ($91>>>0)<($nb$0>>>0); if (!($cmp156)) { $sub160 = (($91) - ($nb$0))|0; $92 = HEAP32[(38708)>>2]|0; $cmp162 = ($sub160>>>0)>(15); if ($cmp162) { $add$ptr166 = (($92) + ($nb$0)|0); HEAP32[(38708)>>2] = $add$ptr166; HEAP32[(38696)>>2] = $sub160; $or167 = $sub160 | 1; $head168 = ((($add$ptr166)) + 4|0); HEAP32[$head168>>2] = $or167; $add$ptr169 = (($92) + ($91)|0); HEAP32[$add$ptr169>>2] = $sub160; $or172 = $nb$0 | 3; $head173 = ((($92)) + 4|0); HEAP32[$head173>>2] = $or172; } else { HEAP32[(38696)>>2] = 0; HEAP32[(38708)>>2] = 0; $or176 = $91 | 3; $head177 = ((($92)) + 4|0); HEAP32[$head177>>2] = $or176; $add$ptr178 = (($92) + ($91)|0); $head179 = ((($add$ptr178)) + 4|0); $93 = HEAP32[$head179>>2]|0; $or180 = $93 | 1; HEAP32[$head179>>2] = $or180; } $add$ptr182 = ((($92)) + 8|0); $retval$0 = $add$ptr182; STACKTOP = sp;return ($retval$0|0); } $94 = HEAP32[(38700)>>2]|0; $cmp186 = ($94>>>0)>($nb$0>>>0); if ($cmp186) { $sub190 = (($94) - ($nb$0))|0; HEAP32[(38700)>>2] = $sub190; $95 = HEAP32[(38712)>>2]|0; $add$ptr193 = (($95) + ($nb$0)|0); HEAP32[(38712)>>2] = $add$ptr193; $or194 = $sub190 | 1; $head195 = ((($add$ptr193)) + 4|0); HEAP32[$head195>>2] = $or194; $or197 = $nb$0 | 3; $head198 = ((($95)) + 4|0); HEAP32[$head198>>2] = $or197; $add$ptr199 = ((($95)) + 8|0); $retval$0 = $add$ptr199; STACKTOP = sp;return ($retval$0|0); } $96 = HEAP32[9790]|0; $cmp$i181 = ($96|0)==(0); if ($cmp$i181) { HEAP32[(39168)>>2] = 4096; HEAP32[(39164)>>2] = 4096; HEAP32[(39172)>>2] = -1; HEAP32[(39176)>>2] = -1; HEAP32[(39180)>>2] = 0; HEAP32[(39132)>>2] = 0; $97 = $magic$i$i; $xor$i$i = $97 & -16; $and6$i$i = $xor$i$i ^ 1431655768; HEAP32[9790] = $and6$i$i; $98 = 4096; } else { $$pre$i182 = HEAP32[(39168)>>2]|0; $98 = $$pre$i182; } $add$i183 = (($nb$0) + 48)|0; $sub$i184 = (($nb$0) + 47)|0; $add9$i = (($98) + ($sub$i184))|0; $neg$i185 = (0 - ($98))|0; $and11$i = $add9$i & $neg$i185; $cmp12$i = ($and11$i>>>0)>($nb$0>>>0); if (!($cmp12$i)) { $retval$0 = 0; STACKTOP = sp;return ($retval$0|0); } $99 = HEAP32[(39128)>>2]|0; $cmp15$i = ($99|0)==(0); if (!($cmp15$i)) { $100 = HEAP32[(39120)>>2]|0; $add17$i186 = (($100) + ($and11$i))|0; $cmp19$i = ($add17$i186>>>0)<=($100>>>0); $cmp21$i = ($add17$i186>>>0)>($99>>>0); $or$cond1$i = $cmp19$i | $cmp21$i; if ($or$cond1$i) { $retval$0 = 0; STACKTOP = sp;return ($retval$0|0); } } $101 = HEAP32[(39132)>>2]|0; $and29$i = $101 & 4; $tobool30$i = ($and29$i|0)==(0); L244: do { if ($tobool30$i) { $102 = HEAP32[(38712)>>2]|0; $cmp32$i187 = ($102|0)==(0|0); L246: do { if ($cmp32$i187) { label = 163; } else { $sp$0$i$i = (39136); while(1) { $103 = HEAP32[$sp$0$i$i>>2]|0; $cmp$i11$i = ($103>>>0)>($102>>>0); if (!($cmp$i11$i)) { $size$i$i = ((($sp$0$i$i)) + 4|0); $104 = HEAP32[$size$i$i>>2]|0; $add$ptr$i$i = (($103) + ($104)|0); $cmp2$i$i = ($add$ptr$i$i>>>0)>($102>>>0); if ($cmp2$i$i) { break; } } $next$i$i = ((($sp$0$i$i)) + 8|0); $105 = HEAP32[$next$i$i>>2]|0; $cmp3$i$i = ($105|0)==(0|0); if ($cmp3$i$i) { label = 163; break L246; } else { $sp$0$i$i = $105; } } $add77$i = (($add9$i) - ($94))|0; $and80$i = $add77$i & $neg$i185; $cmp81$i194 = ($and80$i>>>0)<(2147483647); if ($cmp81$i194) { $call83$i = (_sbrk(($and80$i|0))|0); $110 = HEAP32[$sp$0$i$i>>2]|0; $111 = HEAP32[$size$i$i>>2]|0; $add$ptr$i196 = (($110) + ($111)|0); $cmp85$i = ($call83$i|0)==($add$ptr$i196|0); if ($cmp85$i) { $cmp89$i = ($call83$i|0)==((-1)|0); if ($cmp89$i) { $tsize$2657583$i = $and80$i; } else { $tbase$796$i = $call83$i;$tsize$795$i = $and80$i; label = 180; break L244; } } else { $br$2$ph$i = $call83$i;$ssize$2$ph$i = $and80$i; label = 171; } } else { $tsize$2657583$i = 0; } } } while(0); do { if ((label|0) == 163) { $call37$i = (_sbrk(0)|0); $cmp38$i = ($call37$i|0)==((-1)|0); if ($cmp38$i) { $tsize$2657583$i = 0; } else { $106 = $call37$i; $107 = HEAP32[(39164)>>2]|0; $sub41$i = (($107) + -1)|0; $and42$i = $sub41$i & $106; $cmp43$i = ($and42$i|0)==(0); $add46$i = (($sub41$i) + ($106))|0; $neg48$i = (0 - ($107))|0; $and49$i = $add46$i & $neg48$i; $sub50$i = (($and49$i) - ($106))|0; $add51$i = $cmp43$i ? 0 : $sub50$i; $and11$add51$i = (($add51$i) + ($and11$i))|0; $108 = HEAP32[(39120)>>2]|0; $add54$i = (($and11$add51$i) + ($108))|0; $cmp55$i188 = ($and11$add51$i>>>0)>($nb$0>>>0); $cmp57$i189 = ($and11$add51$i>>>0)<(2147483647); $or$cond$i190 = $cmp55$i188 & $cmp57$i189; if ($or$cond$i190) { $109 = HEAP32[(39128)>>2]|0; $cmp60$i = ($109|0)==(0); if (!($cmp60$i)) { $cmp63$i = ($add54$i>>>0)<=($108>>>0); $cmp66$i192 = ($add54$i>>>0)>($109>>>0); $or$cond2$i193 = $cmp63$i | $cmp66$i192; if ($or$cond2$i193) { $tsize$2657583$i = 0; break; } } $call68$i = (_sbrk(($and11$add51$i|0))|0); $cmp69$i = ($call68$i|0)==($call37$i|0); if ($cmp69$i) { $tbase$796$i = $call37$i;$tsize$795$i = $and11$add51$i; label = 180; break L244; } else { $br$2$ph$i = $call68$i;$ssize$2$ph$i = $and11$add51$i; label = 171; } } else { $tsize$2657583$i = 0; } } } } while(0); do { if ((label|0) == 171) { $sub112$i = (0 - ($ssize$2$ph$i))|0; $cmp91$i = ($br$2$ph$i|0)!=((-1)|0); $cmp93$i = ($ssize$2$ph$i>>>0)<(2147483647); $or$cond5$i = $cmp93$i & $cmp91$i; $cmp96$i = ($add$i183>>>0)>($ssize$2$ph$i>>>0); $or$cond3$i = $cmp96$i & $or$cond5$i; if (!($or$cond3$i)) { $cmp118$i = ($br$2$ph$i|0)==((-1)|0); if ($cmp118$i) { $tsize$2657583$i = 0; break; } else { $tbase$796$i = $br$2$ph$i;$tsize$795$i = $ssize$2$ph$i; label = 180; break L244; } } $112 = HEAP32[(39168)>>2]|0; $sub99$i = (($sub$i184) - ($ssize$2$ph$i))|0; $add101$i = (($sub99$i) + ($112))|0; $neg103$i = (0 - ($112))|0; $and104$i = $add101$i & $neg103$i; $cmp105$i = ($and104$i>>>0)<(2147483647); if (!($cmp105$i)) { $tbase$796$i = $br$2$ph$i;$tsize$795$i = $ssize$2$ph$i; label = 180; break L244; } $call107$i = (_sbrk(($and104$i|0))|0); $cmp108$i = ($call107$i|0)==((-1)|0); if ($cmp108$i) { (_sbrk(($sub112$i|0))|0); $tsize$2657583$i = 0; break; } else { $add110$i = (($and104$i) + ($ssize$2$ph$i))|0; $tbase$796$i = $br$2$ph$i;$tsize$795$i = $add110$i; label = 180; break L244; } } } while(0); $113 = HEAP32[(39132)>>2]|0; $or$i198 = $113 | 4; HEAP32[(39132)>>2] = $or$i198; $tsize$4$i = $tsize$2657583$i; label = 178; } else { $tsize$4$i = 0; label = 178; } } while(0); if ((label|0) == 178) { $cmp127$i = ($and11$i>>>0)<(2147483647); if ($cmp127$i) { $call131$i = (_sbrk(($and11$i|0))|0); $call132$i = (_sbrk(0)|0); $cmp133$i199 = ($call131$i|0)!=((-1)|0); $cmp135$i = ($call132$i|0)!=((-1)|0); $or$cond4$i = $cmp133$i199 & $cmp135$i; $cmp137$i200 = ($call131$i>>>0)<($call132$i>>>0); $or$cond7$i = $cmp137$i200 & $or$cond4$i; $sub$ptr$lhs$cast$i = $call132$i; $sub$ptr$rhs$cast$i = $call131$i; $sub$ptr$sub$i = (($sub$ptr$lhs$cast$i) - ($sub$ptr$rhs$cast$i))|0; $add140$i = (($nb$0) + 40)|0; $cmp141$i = ($sub$ptr$sub$i>>>0)>($add140$i>>>0); $sub$ptr$sub$tsize$4$i = $cmp141$i ? $sub$ptr$sub$i : $tsize$4$i; $or$cond7$not$i = $or$cond7$i ^ 1; $cmp14799$i = ($call131$i|0)==((-1)|0); $not$cmp141$i = $cmp141$i ^ 1; $cmp147$i = $cmp14799$i | $not$cmp141$i; $or$cond97$i = $cmp147$i | $or$cond7$not$i; if (!($or$cond97$i)) { $tbase$796$i = $call131$i;$tsize$795$i = $sub$ptr$sub$tsize$4$i; label = 180; } } } if ((label|0) == 180) { $114 = HEAP32[(39120)>>2]|0; $add150$i = (($114) + ($tsize$795$i))|0; HEAP32[(39120)>>2] = $add150$i; $115 = HEAP32[(39124)>>2]|0; $cmp151$i = ($add150$i>>>0)>($115>>>0); if ($cmp151$i) { HEAP32[(39124)>>2] = $add150$i; } $116 = HEAP32[(38712)>>2]|0; $cmp157$i = ($116|0)==(0|0); do { if ($cmp157$i) { $117 = HEAP32[(38704)>>2]|0; $cmp159$i202 = ($117|0)==(0|0); $cmp162$i203 = ($tbase$796$i>>>0)<($117>>>0); $or$cond8$i = $cmp159$i202 | $cmp162$i203; if ($or$cond8$i) { HEAP32[(38704)>>2] = $tbase$796$i; } HEAP32[(39136)>>2] = $tbase$796$i; HEAP32[(39140)>>2] = $tsize$795$i; HEAP32[(39148)>>2] = 0; $118 = HEAP32[9790]|0; HEAP32[(38724)>>2] = $118; HEAP32[(38720)>>2] = -1; HEAP32[(38740)>>2] = (38728); HEAP32[(38736)>>2] = (38728); HEAP32[(38748)>>2] = (38736); HEAP32[(38744)>>2] = (38736); HEAP32[(38756)>>2] = (38744); HEAP32[(38752)>>2] = (38744); HEAP32[(38764)>>2] = (38752); HEAP32[(38760)>>2] = (38752); HEAP32[(38772)>>2] = (38760); HEAP32[(38768)>>2] = (38760); HEAP32[(38780)>>2] = (38768); HEAP32[(38776)>>2] = (38768); HEAP32[(38788)>>2] = (38776); HEAP32[(38784)>>2] = (38776); HEAP32[(38796)>>2] = (38784); HEAP32[(38792)>>2] = (38784); HEAP32[(38804)>>2] = (38792); HEAP32[(38800)>>2] = (38792); HEAP32[(38812)>>2] = (38800); HEAP32[(38808)>>2] = (38800); HEAP32[(38820)>>2] = (38808); HEAP32[(38816)>>2] = (38808); HEAP32[(38828)>>2] = (38816); HEAP32[(38824)>>2] = (38816); HEAP32[(38836)>>2] = (38824); HEAP32[(38832)>>2] = (38824); HEAP32[(38844)>>2] = (38832); HEAP32[(38840)>>2] = (38832); HEAP32[(38852)>>2] = (38840); HEAP32[(38848)>>2] = (38840); HEAP32[(38860)>>2] = (38848); HEAP32[(38856)>>2] = (38848); HEAP32[(38868)>>2] = (38856); HEAP32[(38864)>>2] = (38856); HEAP32[(38876)>>2] = (38864); HEAP32[(38872)>>2] = (38864); HEAP32[(38884)>>2] = (38872); HEAP32[(38880)>>2] = (38872); HEAP32[(38892)>>2] = (38880); HEAP32[(38888)>>2] = (38880); HEAP32[(38900)>>2] = (38888); HEAP32[(38896)>>2] = (38888); HEAP32[(38908)>>2] = (38896); HEAP32[(38904)>>2] = (38896); HEAP32[(38916)>>2] = (38904); HEAP32[(38912)>>2] = (38904); HEAP32[(38924)>>2] = (38912); HEAP32[(38920)>>2] = (38912); HEAP32[(38932)>>2] = (38920); HEAP32[(38928)>>2] = (38920); HEAP32[(38940)>>2] = (38928); HEAP32[(38936)>>2] = (38928); HEAP32[(38948)>>2] = (38936); HEAP32[(38944)>>2] = (38936); HEAP32[(38956)>>2] = (38944); HEAP32[(38952)>>2] = (38944); HEAP32[(38964)>>2] = (38952); HEAP32[(38960)>>2] = (38952); HEAP32[(38972)>>2] = (38960); HEAP32[(38968)>>2] = (38960); HEAP32[(38980)>>2] = (38968); HEAP32[(38976)>>2] = (38968); HEAP32[(38988)>>2] = (38976); HEAP32[(38984)>>2] = (38976); $sub172$i = (($tsize$795$i) + -40)|0; $add$ptr$i13$i = ((($tbase$796$i)) + 8|0); $119 = $add$ptr$i13$i; $and$i14$i = $119 & 7; $cmp$i15$i = ($and$i14$i|0)==(0); $sub$i16$i = (0 - ($119))|0; $and3$i$i = $sub$i16$i & 7; $cond$i17$i = $cmp$i15$i ? 0 : $and3$i$i; $add$ptr4$i$i = (($tbase$796$i) + ($cond$i17$i)|0); $sub5$i$i = (($sub172$i) - ($cond$i17$i))|0; HEAP32[(38712)>>2] = $add$ptr4$i$i; HEAP32[(38700)>>2] = $sub5$i$i; $or$i$i = $sub5$i$i | 1; $head$i18$i = ((($add$ptr4$i$i)) + 4|0); HEAP32[$head$i18$i>>2] = $or$i$i; $add$ptr6$i$i = (($tbase$796$i) + ($sub172$i)|0); $head7$i$i = ((($add$ptr6$i$i)) + 4|0); HEAP32[$head7$i$i>>2] = 40; $120 = HEAP32[(39176)>>2]|0; HEAP32[(38716)>>2] = $120; } else { $sp$0108$i = (39136); while(1) { $121 = HEAP32[$sp$0108$i>>2]|0; $size188$i = ((($sp$0108$i)) + 4|0); $122 = HEAP32[$size188$i>>2]|0; $add$ptr189$i = (($121) + ($122)|0); $cmp190$i = ($tbase$796$i|0)==($add$ptr189$i|0); if ($cmp190$i) { label = 188; break; } $next$i = ((($sp$0108$i)) + 8|0); $123 = HEAP32[$next$i>>2]|0; $cmp186$i = ($123|0)==(0|0); if ($cmp186$i) { break; } else { $sp$0108$i = $123; } } if ((label|0) == 188) { $sflags193$i = ((($sp$0108$i)) + 12|0); $124 = HEAP32[$sflags193$i>>2]|0; $and194$i207 = $124 & 8; $tobool195$i = ($and194$i207|0)==(0); if ($tobool195$i) { $cmp203$i = ($121>>>0)<=($116>>>0); $cmp209$i = ($tbase$796$i>>>0)>($116>>>0); $or$cond98$i = $cmp209$i & $cmp203$i; if ($or$cond98$i) { $add212$i = (($122) + ($tsize$795$i))|0; HEAP32[$size188$i>>2] = $add212$i; $125 = HEAP32[(38700)>>2]|0; $add215$i = (($125) + ($tsize$795$i))|0; $add$ptr$i48$i = ((($116)) + 8|0); $126 = $add$ptr$i48$i; $and$i49$i = $126 & 7; $cmp$i50$i = ($and$i49$i|0)==(0); $sub$i51$i = (0 - ($126))|0; $and3$i52$i = $sub$i51$i & 7; $cond$i53$i = $cmp$i50$i ? 0 : $and3$i52$i; $add$ptr4$i54$i = (($116) + ($cond$i53$i)|0); $sub5$i55$i = (($add215$i) - ($cond$i53$i))|0; HEAP32[(38712)>>2] = $add$ptr4$i54$i; HEAP32[(38700)>>2] = $sub5$i55$i; $or$i56$i = $sub5$i55$i | 1; $head$i57$i = ((($add$ptr4$i54$i)) + 4|0); HEAP32[$head$i57$i>>2] = $or$i56$i; $add$ptr6$i58$i = (($116) + ($add215$i)|0); $head7$i59$i = ((($add$ptr6$i58$i)) + 4|0); HEAP32[$head7$i59$i>>2] = 40; $127 = HEAP32[(39176)>>2]|0; HEAP32[(38716)>>2] = $127; break; } } } $128 = HEAP32[(38704)>>2]|0; $cmp218$i = ($tbase$796$i>>>0)<($128>>>0); if ($cmp218$i) { HEAP32[(38704)>>2] = $tbase$796$i; $141 = $tbase$796$i; } else { $141 = $128; } $add$ptr227$i = (($tbase$796$i) + ($tsize$795$i)|0); $sp$1107$i = (39136); while(1) { $129 = HEAP32[$sp$1107$i>>2]|0; $cmp228$i = ($129|0)==($add$ptr227$i|0); if ($cmp228$i) { label = 196; break; } $next231$i = ((($sp$1107$i)) + 8|0); $130 = HEAP32[$next231$i>>2]|0; $cmp224$i = ($130|0)==(0|0); if ($cmp224$i) { $sp$0$i$i$i = (39136); break; } else { $sp$1107$i = $130; } } if ((label|0) == 196) { $sflags235$i = ((($sp$1107$i)) + 12|0); $131 = HEAP32[$sflags235$i>>2]|0; $and236$i = $131 & 8; $tobool237$i = ($and236$i|0)==(0); if ($tobool237$i) { HEAP32[$sp$1107$i>>2] = $tbase$796$i; $size245$i = ((($sp$1107$i)) + 4|0); $132 = HEAP32[$size245$i>>2]|0; $add246$i = (($132) + ($tsize$795$i))|0; HEAP32[$size245$i>>2] = $add246$i; $add$ptr$i19$i = ((($tbase$796$i)) + 8|0); $133 = $add$ptr$i19$i; $and$i20$i = $133 & 7; $cmp$i21$i = ($and$i20$i|0)==(0); $sub$i22$i = (0 - ($133))|0; $and3$i23$i = $sub$i22$i & 7; $cond$i24$i = $cmp$i21$i ? 0 : $and3$i23$i; $add$ptr4$i25$i = (($tbase$796$i) + ($cond$i24$i)|0); $add$ptr5$i$i = ((($add$ptr227$i)) + 8|0); $134 = $add$ptr5$i$i; $and6$i26$i = $134 & 7; $cmp7$i$i = ($and6$i26$i|0)==(0); $sub12$i$i = (0 - ($134))|0; $and13$i$i = $sub12$i$i & 7; $cond15$i$i = $cmp7$i$i ? 0 : $and13$i$i; $add$ptr16$i$i = (($add$ptr227$i) + ($cond15$i$i)|0); $sub$ptr$lhs$cast$i27$i = $add$ptr16$i$i; $sub$ptr$rhs$cast$i28$i = $add$ptr4$i25$i; $sub$ptr$sub$i29$i = (($sub$ptr$lhs$cast$i27$i) - ($sub$ptr$rhs$cast$i28$i))|0; $add$ptr17$i$i = (($add$ptr4$i25$i) + ($nb$0)|0); $sub18$i$i = (($sub$ptr$sub$i29$i) - ($nb$0))|0; $or19$i$i = $nb$0 | 3; $head$i30$i = ((($add$ptr4$i25$i)) + 4|0); HEAP32[$head$i30$i>>2] = $or19$i$i; $cmp20$i$i = ($116|0)==($add$ptr16$i$i|0); do { if ($cmp20$i$i) { $135 = HEAP32[(38700)>>2]|0; $add$i$i = (($135) + ($sub18$i$i))|0; HEAP32[(38700)>>2] = $add$i$i; HEAP32[(38712)>>2] = $add$ptr17$i$i; $or22$i$i = $add$i$i | 1; $head23$i$i = ((($add$ptr17$i$i)) + 4|0); HEAP32[$head23$i$i>>2] = $or22$i$i; } else { $136 = HEAP32[(38708)>>2]|0; $cmp24$i$i = ($136|0)==($add$ptr16$i$i|0); if ($cmp24$i$i) { $137 = HEAP32[(38696)>>2]|0; $add26$i$i = (($137) + ($sub18$i$i))|0; HEAP32[(38696)>>2] = $add26$i$i; HEAP32[(38708)>>2] = $add$ptr17$i$i; $or28$i$i = $add26$i$i | 1; $head29$i$i = ((($add$ptr17$i$i)) + 4|0); HEAP32[$head29$i$i>>2] = $or28$i$i; $add$ptr30$i$i = (($add$ptr17$i$i) + ($add26$i$i)|0); HEAP32[$add$ptr30$i$i>>2] = $add26$i$i; break; } $head32$i$i = ((($add$ptr16$i$i)) + 4|0); $138 = HEAP32[$head32$i$i>>2]|0; $and33$i$i = $138 & 3; $cmp34$i$i = ($and33$i$i|0)==(1); if ($cmp34$i$i) { $and37$i$i = $138 & -8; $shr$i33$i = $138 >>> 3; $cmp38$i$i = ($138>>>0)<(256); L311: do { if ($cmp38$i$i) { $fd$i$i = ((($add$ptr16$i$i)) + 8|0); $139 = HEAP32[$fd$i$i>>2]|0; $bk$i34$i = ((($add$ptr16$i$i)) + 12|0); $140 = HEAP32[$bk$i34$i>>2]|0; $shl$i35$i = $shr$i33$i << 1; $arrayidx$i36$i = (38728 + ($shl$i35$i<<2)|0); $cmp41$i$i = ($139|0)==($arrayidx$i36$i|0); do { if (!($cmp41$i$i)) { $cmp42$i$i = ($141>>>0)>($139>>>0); if ($cmp42$i$i) { _abort(); // unreachable; } $bk43$i$i = ((($139)) + 12|0); $142 = HEAP32[$bk43$i$i>>2]|0; $cmp44$i$i = ($142|0)==($add$ptr16$i$i|0); if ($cmp44$i$i) { break; } _abort(); // unreachable; } } while(0); $cmp46$i37$i = ($140|0)==($139|0); if ($cmp46$i37$i) { $shl48$i$i = 1 << $shr$i33$i; $neg$i$i = $shl48$i$i ^ -1; $143 = HEAP32[9672]|0; $and49$i$i = $143 & $neg$i$i; HEAP32[9672] = $and49$i$i; break; } $cmp54$i$i = ($140|0)==($arrayidx$i36$i|0); do { if ($cmp54$i$i) { $$pre6$i$i = ((($140)) + 8|0); $fd68$pre$phi$i$iZ2D = $$pre6$i$i; } else { $cmp57$i$i = ($141>>>0)>($140>>>0); if ($cmp57$i$i) { _abort(); // unreachable; } $fd59$i$i = ((($140)) + 8|0); $144 = HEAP32[$fd59$i$i>>2]|0; $cmp60$i$i = ($144|0)==($add$ptr16$i$i|0); if ($cmp60$i$i) { $fd68$pre$phi$i$iZ2D = $fd59$i$i; break; } _abort(); // unreachable; } } while(0); $bk67$i$i = ((($139)) + 12|0); HEAP32[$bk67$i$i>>2] = $140; HEAP32[$fd68$pre$phi$i$iZ2D>>2] = $139; } else { $parent$i39$i = ((($add$ptr16$i$i)) + 24|0); $145 = HEAP32[$parent$i39$i>>2]|0; $bk74$i$i = ((($add$ptr16$i$i)) + 12|0); $146 = HEAP32[$bk74$i$i>>2]|0; $cmp75$i$i = ($146|0)==($add$ptr16$i$i|0); do { if ($cmp75$i$i) { $child$i$i = ((($add$ptr16$i$i)) + 16|0); $arrayidx96$i$i = ((($child$i$i)) + 4|0); $150 = HEAP32[$arrayidx96$i$i>>2]|0; $cmp97$i$i = ($150|0)==(0|0); if ($cmp97$i$i) { $151 = HEAP32[$child$i$i>>2]|0; $cmp100$i$i = ($151|0)==(0|0); if ($cmp100$i$i) { $R$3$i$i = 0; break; } else { $R$1$i$i = $151;$RP$1$i$i = $child$i$i; } } else { $R$1$i$i = $150;$RP$1$i$i = $arrayidx96$i$i; } while(1) { $arrayidx103$i$i = ((($R$1$i$i)) + 20|0); $152 = HEAP32[$arrayidx103$i$i>>2]|0; $cmp104$i$i = ($152|0)==(0|0); if (!($cmp104$i$i)) { $R$1$i$i = $152;$RP$1$i$i = $arrayidx103$i$i; continue; } $arrayidx107$i$i = ((($R$1$i$i)) + 16|0); $153 = HEAP32[$arrayidx107$i$i>>2]|0; $cmp108$i$i = ($153|0)==(0|0); if ($cmp108$i$i) { break; } else { $R$1$i$i = $153;$RP$1$i$i = $arrayidx107$i$i; } } $cmp112$i$i = ($141>>>0)>($RP$1$i$i>>>0); if ($cmp112$i$i) { _abort(); // unreachable; } else { HEAP32[$RP$1$i$i>>2] = 0; $R$3$i$i = $R$1$i$i; break; } } else { $fd78$i$i = ((($add$ptr16$i$i)) + 8|0); $147 = HEAP32[$fd78$i$i>>2]|0; $cmp81$i$i = ($141>>>0)>($147>>>0); if ($cmp81$i$i) { _abort(); // unreachable; } $bk82$i$i = ((($147)) + 12|0); $148 = HEAP32[$bk82$i$i>>2]|0; $cmp83$i$i = ($148|0)==($add$ptr16$i$i|0); if (!($cmp83$i$i)) { _abort(); // unreachable; } $fd85$i$i = ((($146)) + 8|0); $149 = HEAP32[$fd85$i$i>>2]|0; $cmp86$i$i = ($149|0)==($add$ptr16$i$i|0); if ($cmp86$i$i) { HEAP32[$bk82$i$i>>2] = $146; HEAP32[$fd85$i$i>>2] = $147; $R$3$i$i = $146; break; } else { _abort(); // unreachable; } } } while(0); $cmp120$i41$i = ($145|0)==(0|0); if ($cmp120$i41$i) { break; } $index$i42$i = ((($add$ptr16$i$i)) + 28|0); $154 = HEAP32[$index$i42$i>>2]|0; $arrayidx123$i$i = (38992 + ($154<<2)|0); $155 = HEAP32[$arrayidx123$i$i>>2]|0; $cmp124$i$i = ($155|0)==($add$ptr16$i$i|0); do { if ($cmp124$i$i) { HEAP32[$arrayidx123$i$i>>2] = $R$3$i$i; $cond3$i$i = ($R$3$i$i|0)==(0|0); if (!($cond3$i$i)) { break; } $shl131$i$i = 1 << $154; $neg132$i$i = $shl131$i$i ^ -1; $156 = HEAP32[(38692)>>2]|0; $and133$i$i = $156 & $neg132$i$i; HEAP32[(38692)>>2] = $and133$i$i; break L311; } else { $157 = HEAP32[(38704)>>2]|0; $cmp137$i$i = ($157>>>0)>($145>>>0); if ($cmp137$i$i) { _abort(); // unreachable; } else { $arrayidx143$i$i = ((($145)) + 16|0); $158 = HEAP32[$arrayidx143$i$i>>2]|0; $cmp144$i$i = ($158|0)!=($add$ptr16$i$i|0); $$sink$i$i = $cmp144$i$i&1; $arrayidx151$i$i = (((($145)) + 16|0) + ($$sink$i$i<<2)|0); HEAP32[$arrayidx151$i$i>>2] = $R$3$i$i; $cmp156$i$i = ($R$3$i$i|0)==(0|0); if ($cmp156$i$i) { break L311; } else { break; } } } } while(0); $159 = HEAP32[(38704)>>2]|0; $cmp160$i$i = ($159>>>0)>($R$3$i$i>>>0); if ($cmp160$i$i) { _abort(); // unreachable; } $parent165$i$i = ((($R$3$i$i)) + 24|0); HEAP32[$parent165$i$i>>2] = $145; $child166$i$i = ((($add$ptr16$i$i)) + 16|0); $160 = HEAP32[$child166$i$i>>2]|0; $cmp168$i$i = ($160|0)==(0|0); do { if (!($cmp168$i$i)) { $cmp172$i$i = ($159>>>0)>($160>>>0); if ($cmp172$i$i) { _abort(); // unreachable; } else { $arrayidx178$i$i = ((($R$3$i$i)) + 16|0); HEAP32[$arrayidx178$i$i>>2] = $160; $parent179$i$i = ((($160)) + 24|0); HEAP32[$parent179$i$i>>2] = $R$3$i$i; break; } } } while(0); $arrayidx184$i$i = ((($child166$i$i)) + 4|0); $161 = HEAP32[$arrayidx184$i$i>>2]|0; $cmp185$i$i = ($161|0)==(0|0); if ($cmp185$i$i) { break; } $162 = HEAP32[(38704)>>2]|0; $cmp189$i$i = ($162>>>0)>($161>>>0); if ($cmp189$i$i) { _abort(); // unreachable; } else { $arrayidx195$i$i = ((($R$3$i$i)) + 20|0); HEAP32[$arrayidx195$i$i>>2] = $161; $parent196$i$i = ((($161)) + 24|0); HEAP32[$parent196$i$i>>2] = $R$3$i$i; break; } } } while(0); $add$ptr205$i$i = (($add$ptr16$i$i) + ($and37$i$i)|0); $add206$i$i = (($and37$i$i) + ($sub18$i$i))|0; $oldfirst$0$i$i = $add$ptr205$i$i;$qsize$0$i$i = $add206$i$i; } else { $oldfirst$0$i$i = $add$ptr16$i$i;$qsize$0$i$i = $sub18$i$i; } $head208$i$i = ((($oldfirst$0$i$i)) + 4|0); $163 = HEAP32[$head208$i$i>>2]|0; $and209$i$i = $163 & -2; HEAP32[$head208$i$i>>2] = $and209$i$i; $or210$i$i = $qsize$0$i$i | 1; $head211$i$i = ((($add$ptr17$i$i)) + 4|0); HEAP32[$head211$i$i>>2] = $or210$i$i; $add$ptr212$i$i = (($add$ptr17$i$i) + ($qsize$0$i$i)|0); HEAP32[$add$ptr212$i$i>>2] = $qsize$0$i$i; $shr214$i$i = $qsize$0$i$i >>> 3; $cmp215$i$i = ($qsize$0$i$i>>>0)<(256); if ($cmp215$i$i) { $shl222$i$i = $shr214$i$i << 1; $arrayidx223$i$i = (38728 + ($shl222$i$i<<2)|0); $164 = HEAP32[9672]|0; $shl226$i$i = 1 << $shr214$i$i; $and227$i$i = $164 & $shl226$i$i; $tobool228$i$i = ($and227$i$i|0)==(0); do { if ($tobool228$i$i) { $or232$i$i = $164 | $shl226$i$i; HEAP32[9672] = $or232$i$i; $$pre$i44$i = ((($arrayidx223$i$i)) + 8|0); $$pre$phi$i45$iZ2D = $$pre$i44$i;$F224$0$i$i = $arrayidx223$i$i; } else { $165 = ((($arrayidx223$i$i)) + 8|0); $166 = HEAP32[$165>>2]|0; $167 = HEAP32[(38704)>>2]|0; $cmp236$i$i = ($167>>>0)>($166>>>0); if (!($cmp236$i$i)) { $$pre$phi$i45$iZ2D = $165;$F224$0$i$i = $166; break; } _abort(); // unreachable; } } while(0); HEAP32[$$pre$phi$i45$iZ2D>>2] = $add$ptr17$i$i; $bk246$i$i = ((($F224$0$i$i)) + 12|0); HEAP32[$bk246$i$i>>2] = $add$ptr17$i$i; $fd247$i$i = ((($add$ptr17$i$i)) + 8|0); HEAP32[$fd247$i$i>>2] = $F224$0$i$i; $bk248$i$i = ((($add$ptr17$i$i)) + 12|0); HEAP32[$bk248$i$i>>2] = $arrayidx223$i$i; break; } $shr253$i$i = $qsize$0$i$i >>> 8; $cmp254$i$i = ($shr253$i$i|0)==(0); do { if ($cmp254$i$i) { $I252$0$i$i = 0; } else { $cmp258$i$i = ($qsize$0$i$i>>>0)>(16777215); if ($cmp258$i$i) { $I252$0$i$i = 31; break; } $sub262$i$i = (($shr253$i$i) + 1048320)|0; $shr263$i$i = $sub262$i$i >>> 16; $and264$i$i = $shr263$i$i & 8; $shl265$i$i = $shr253$i$i << $and264$i$i; $sub266$i$i = (($shl265$i$i) + 520192)|0; $shr267$i$i = $sub266$i$i >>> 16; $and268$i$i = $shr267$i$i & 4; $add269$i$i = $and268$i$i | $and264$i$i; $shl270$i$i = $shl265$i$i << $and268$i$i; $sub271$i$i = (($shl270$i$i) + 245760)|0; $shr272$i$i = $sub271$i$i >>> 16; $and273$i$i = $shr272$i$i & 2; $add274$i$i = $add269$i$i | $and273$i$i; $sub275$i$i = (14 - ($add274$i$i))|0; $shl276$i$i = $shl270$i$i << $and273$i$i; $shr277$i$i = $shl276$i$i >>> 15; $add278$i$i = (($sub275$i$i) + ($shr277$i$i))|0; $shl279$i$i = $add278$i$i << 1; $add280$i$i = (($add278$i$i) + 7)|0; $shr281$i$i = $qsize$0$i$i >>> $add280$i$i; $and282$i$i = $shr281$i$i & 1; $add283$i$i = $and282$i$i | $shl279$i$i; $I252$0$i$i = $add283$i$i; } } while(0); $arrayidx287$i$i = (38992 + ($I252$0$i$i<<2)|0); $index288$i$i = ((($add$ptr17$i$i)) + 28|0); HEAP32[$index288$i$i>>2] = $I252$0$i$i; $child289$i$i = ((($add$ptr17$i$i)) + 16|0); $arrayidx290$i$i = ((($child289$i$i)) + 4|0); HEAP32[$arrayidx290$i$i>>2] = 0; HEAP32[$child289$i$i>>2] = 0; $168 = HEAP32[(38692)>>2]|0; $shl294$i$i = 1 << $I252$0$i$i; $and295$i$i = $168 & $shl294$i$i; $tobool296$i$i = ($and295$i$i|0)==(0); if ($tobool296$i$i) { $or300$i$i = $168 | $shl294$i$i; HEAP32[(38692)>>2] = $or300$i$i; HEAP32[$arrayidx287$i$i>>2] = $add$ptr17$i$i; $parent301$i$i = ((($add$ptr17$i$i)) + 24|0); HEAP32[$parent301$i$i>>2] = $arrayidx287$i$i; $bk302$i$i = ((($add$ptr17$i$i)) + 12|0); HEAP32[$bk302$i$i>>2] = $add$ptr17$i$i; $fd303$i$i = ((($add$ptr17$i$i)) + 8|0); HEAP32[$fd303$i$i>>2] = $add$ptr17$i$i; break; } $169 = HEAP32[$arrayidx287$i$i>>2]|0; $cmp306$i$i = ($I252$0$i$i|0)==(31); $shr310$i$i = $I252$0$i$i >>> 1; $sub313$i$i = (25 - ($shr310$i$i))|0; $cond315$i$i = $cmp306$i$i ? 0 : $sub313$i$i; $shl316$i$i = $qsize$0$i$i << $cond315$i$i; $K305$0$i$i = $shl316$i$i;$T$0$i46$i = $169; while(1) { $head317$i$i = ((($T$0$i46$i)) + 4|0); $170 = HEAP32[$head317$i$i>>2]|0; $and318$i$i = $170 & -8; $cmp319$i$i = ($and318$i$i|0)==($qsize$0$i$i|0); if ($cmp319$i$i) { label = 263; break; } $shr323$i$i = $K305$0$i$i >>> 31; $arrayidx325$i$i = (((($T$0$i46$i)) + 16|0) + ($shr323$i$i<<2)|0); $shl326$i$i = $K305$0$i$i << 1; $171 = HEAP32[$arrayidx325$i$i>>2]|0; $cmp327$i$i = ($171|0)==(0|0); if ($cmp327$i$i) { label = 260; break; } else { $K305$0$i$i = $shl326$i$i;$T$0$i46$i = $171; } } if ((label|0) == 260) { $172 = HEAP32[(38704)>>2]|0; $cmp332$i$i = ($172>>>0)>($arrayidx325$i$i>>>0); if ($cmp332$i$i) { _abort(); // unreachable; } else { HEAP32[$arrayidx325$i$i>>2] = $add$ptr17$i$i; $parent337$i$i = ((($add$ptr17$i$i)) + 24|0); HEAP32[$parent337$i$i>>2] = $T$0$i46$i; $bk338$i$i = ((($add$ptr17$i$i)) + 12|0); HEAP32[$bk338$i$i>>2] = $add$ptr17$i$i; $fd339$i$i = ((($add$ptr17$i$i)) + 8|0); HEAP32[$fd339$i$i>>2] = $add$ptr17$i$i; break; } } else if ((label|0) == 263) { $fd344$i$i = ((($T$0$i46$i)) + 8|0); $173 = HEAP32[$fd344$i$i>>2]|0; $174 = HEAP32[(38704)>>2]|0; $cmp346$i$i = ($174>>>0)<=($T$0$i46$i>>>0); $cmp350$i$i = ($174>>>0)<=($173>>>0); $175 = $cmp350$i$i & $cmp346$i$i; if ($175) { $bk357$i$i = ((($173)) + 12|0); HEAP32[$bk357$i$i>>2] = $add$ptr17$i$i; HEAP32[$fd344$i$i>>2] = $add$ptr17$i$i; $fd359$i$i = ((($add$ptr17$i$i)) + 8|0); HEAP32[$fd359$i$i>>2] = $173; $bk360$i$i = ((($add$ptr17$i$i)) + 12|0); HEAP32[$bk360$i$i>>2] = $T$0$i46$i; $parent361$i$i = ((($add$ptr17$i$i)) + 24|0); HEAP32[$parent361$i$i>>2] = 0; break; } else { _abort(); // unreachable; } } } } while(0); $add$ptr369$i$i = ((($add$ptr4$i25$i)) + 8|0); $retval$0 = $add$ptr369$i$i; STACKTOP = sp;return ($retval$0|0); } else { $sp$0$i$i$i = (39136); } } while(1) { $176 = HEAP32[$sp$0$i$i$i>>2]|0; $cmp$i$i$i = ($176>>>0)>($116>>>0); if (!($cmp$i$i$i)) { $size$i$i$i = ((($sp$0$i$i$i)) + 4|0); $177 = HEAP32[$size$i$i$i>>2]|0; $add$ptr$i$i$i = (($176) + ($177)|0); $cmp2$i$i$i = ($add$ptr$i$i$i>>>0)>($116>>>0); if ($cmp2$i$i$i) { break; } } $next$i$i$i = ((($sp$0$i$i$i)) + 8|0); $178 = HEAP32[$next$i$i$i>>2]|0; $sp$0$i$i$i = $178; } $add$ptr2$i$i = ((($add$ptr$i$i$i)) + -47|0); $add$ptr3$i$i = ((($add$ptr2$i$i)) + 8|0); $179 = $add$ptr3$i$i; $and$i$i = $179 & 7; $cmp$i9$i = ($and$i$i|0)==(0); $sub$i$i = (0 - ($179))|0; $and6$i10$i = $sub$i$i & 7; $cond$i$i = $cmp$i9$i ? 0 : $and6$i10$i; $add$ptr7$i$i = (($add$ptr2$i$i) + ($cond$i$i)|0); $add$ptr81$i$i = ((($116)) + 16|0); $cmp9$i$i = ($add$ptr7$i$i>>>0)<($add$ptr81$i$i>>>0); $cond13$i$i = $cmp9$i$i ? $116 : $add$ptr7$i$i; $add$ptr14$i$i = ((($cond13$i$i)) + 8|0); $add$ptr15$i$i = ((($cond13$i$i)) + 24|0); $sub16$i$i = (($tsize$795$i) + -40)|0; $add$ptr$i3$i$i = ((($tbase$796$i)) + 8|0); $180 = $add$ptr$i3$i$i; $and$i$i$i = $180 & 7; $cmp$i4$i$i = ($and$i$i$i|0)==(0); $sub$i$i$i = (0 - ($180))|0; $and3$i$i$i = $sub$i$i$i & 7; $cond$i$i$i = $cmp$i4$i$i ? 0 : $and3$i$i$i; $add$ptr4$i$i$i = (($tbase$796$i) + ($cond$i$i$i)|0); $sub5$i$i$i = (($sub16$i$i) - ($cond$i$i$i))|0; HEAP32[(38712)>>2] = $add$ptr4$i$i$i; HEAP32[(38700)>>2] = $sub5$i$i$i; $or$i$i$i = $sub5$i$i$i | 1; $head$i$i$i = ((($add$ptr4$i$i$i)) + 4|0); HEAP32[$head$i$i$i>>2] = $or$i$i$i; $add$ptr6$i$i$i = (($tbase$796$i) + ($sub16$i$i)|0); $head7$i$i$i = ((($add$ptr6$i$i$i)) + 4|0); HEAP32[$head7$i$i$i>>2] = 40; $181 = HEAP32[(39176)>>2]|0; HEAP32[(38716)>>2] = $181; $head$i$i = ((($cond13$i$i)) + 4|0); HEAP32[$head$i$i>>2] = 27; ;HEAP32[$add$ptr14$i$i>>2]=HEAP32[(39136)>>2]|0;HEAP32[$add$ptr14$i$i+4>>2]=HEAP32[(39136)+4>>2]|0;HEAP32[$add$ptr14$i$i+8>>2]=HEAP32[(39136)+8>>2]|0;HEAP32[$add$ptr14$i$i+12>>2]=HEAP32[(39136)+12>>2]|0; HEAP32[(39136)>>2] = $tbase$796$i; HEAP32[(39140)>>2] = $tsize$795$i; HEAP32[(39148)>>2] = 0; HEAP32[(39144)>>2] = $add$ptr14$i$i; $182 = $add$ptr15$i$i; while(1) { $add$ptr24$i$i = ((($182)) + 4|0); HEAP32[$add$ptr24$i$i>>2] = 7; $head26$i$i = ((($182)) + 8|0); $cmp27$i$i = ($head26$i$i>>>0)<($add$ptr$i$i$i>>>0); if ($cmp27$i$i) { $182 = $add$ptr24$i$i; } else { break; } } $cmp28$i$i = ($cond13$i$i|0)==($116|0); if (!($cmp28$i$i)) { $sub$ptr$lhs$cast$i$i = $cond13$i$i; $sub$ptr$rhs$cast$i$i = $116; $sub$ptr$sub$i$i = (($sub$ptr$lhs$cast$i$i) - ($sub$ptr$rhs$cast$i$i))|0; $183 = HEAP32[$head$i$i>>2]|0; $and32$i$i = $183 & -2; HEAP32[$head$i$i>>2] = $and32$i$i; $or33$i$i = $sub$ptr$sub$i$i | 1; $head34$i$i = ((($116)) + 4|0); HEAP32[$head34$i$i>>2] = $or33$i$i; HEAP32[$cond13$i$i>>2] = $sub$ptr$sub$i$i; $shr$i$i = $sub$ptr$sub$i$i >>> 3; $cmp36$i$i = ($sub$ptr$sub$i$i>>>0)<(256); if ($cmp36$i$i) { $shl$i$i = $shr$i$i << 1; $arrayidx$i$i = (38728 + ($shl$i$i<<2)|0); $184 = HEAP32[9672]|0; $shl39$i$i = 1 << $shr$i$i; $and40$i$i = $184 & $shl39$i$i; $tobool$i$i = ($and40$i$i|0)==(0); if ($tobool$i$i) { $or44$i$i = $184 | $shl39$i$i; HEAP32[9672] = $or44$i$i; $$pre$i$i = ((($arrayidx$i$i)) + 8|0); $$pre$phi$i$iZ2D = $$pre$i$i;$F$0$i$i = $arrayidx$i$i; } else { $185 = ((($arrayidx$i$i)) + 8|0); $186 = HEAP32[$185>>2]|0; $187 = HEAP32[(38704)>>2]|0; $cmp46$i$i = ($187>>>0)>($186>>>0); if ($cmp46$i$i) { _abort(); // unreachable; } else { $$pre$phi$i$iZ2D = $185;$F$0$i$i = $186; } } HEAP32[$$pre$phi$i$iZ2D>>2] = $116; $bk$i$i = ((($F$0$i$i)) + 12|0); HEAP32[$bk$i$i>>2] = $116; $fd54$i$i = ((($116)) + 8|0); HEAP32[$fd54$i$i>>2] = $F$0$i$i; $bk55$i$i = ((($116)) + 12|0); HEAP32[$bk55$i$i>>2] = $arrayidx$i$i; break; } $shr58$i$i = $sub$ptr$sub$i$i >>> 8; $cmp59$i$i = ($shr58$i$i|0)==(0); if ($cmp59$i$i) { $I57$0$i$i = 0; } else { $cmp63$i$i = ($sub$ptr$sub$i$i>>>0)>(16777215); if ($cmp63$i$i) { $I57$0$i$i = 31; } else { $sub67$i$i = (($shr58$i$i) + 1048320)|0; $shr68$i$i = $sub67$i$i >>> 16; $and69$i$i = $shr68$i$i & 8; $shl70$i$i = $shr58$i$i << $and69$i$i; $sub71$i$i = (($shl70$i$i) + 520192)|0; $shr72$i$i = $sub71$i$i >>> 16; $and73$i$i = $shr72$i$i & 4; $add74$i$i = $and73$i$i | $and69$i$i; $shl75$i$i = $shl70$i$i << $and73$i$i; $sub76$i$i = (($shl75$i$i) + 245760)|0; $shr77$i$i = $sub76$i$i >>> 16; $and78$i$i = $shr77$i$i & 2; $add79$i$i = $add74$i$i | $and78$i$i; $sub80$i$i = (14 - ($add79$i$i))|0; $shl81$i$i = $shl75$i$i << $and78$i$i; $shr82$i$i = $shl81$i$i >>> 15; $add83$i$i = (($sub80$i$i) + ($shr82$i$i))|0; $shl84$i$i = $add83$i$i << 1; $add85$i$i = (($add83$i$i) + 7)|0; $shr86$i$i = $sub$ptr$sub$i$i >>> $add85$i$i; $and87$i$i = $shr86$i$i & 1; $add88$i$i = $and87$i$i | $shl84$i$i; $I57$0$i$i = $add88$i$i; } } $arrayidx91$i$i = (38992 + ($I57$0$i$i<<2)|0); $index$i$i = ((($116)) + 28|0); HEAP32[$index$i$i>>2] = $I57$0$i$i; $arrayidx92$i$i = ((($116)) + 20|0); HEAP32[$arrayidx92$i$i>>2] = 0; HEAP32[$add$ptr81$i$i>>2] = 0; $188 = HEAP32[(38692)>>2]|0; $shl95$i$i = 1 << $I57$0$i$i; $and96$i$i = $188 & $shl95$i$i; $tobool97$i$i = ($and96$i$i|0)==(0); if ($tobool97$i$i) { $or101$i$i = $188 | $shl95$i$i; HEAP32[(38692)>>2] = $or101$i$i; HEAP32[$arrayidx91$i$i>>2] = $116; $parent$i$i = ((($116)) + 24|0); HEAP32[$parent$i$i>>2] = $arrayidx91$i$i; $bk102$i$i = ((($116)) + 12|0); HEAP32[$bk102$i$i>>2] = $116; $fd103$i$i = ((($116)) + 8|0); HEAP32[$fd103$i$i>>2] = $116; break; } $189 = HEAP32[$arrayidx91$i$i>>2]|0; $cmp106$i$i = ($I57$0$i$i|0)==(31); $shr110$i$i = $I57$0$i$i >>> 1; $sub113$i$i = (25 - ($shr110$i$i))|0; $cond115$i$i = $cmp106$i$i ? 0 : $sub113$i$i; $shl116$i$i = $sub$ptr$sub$i$i << $cond115$i$i; $K105$0$i$i = $shl116$i$i;$T$0$i$i = $189; while(1) { $head118$i$i = ((($T$0$i$i)) + 4|0); $190 = HEAP32[$head118$i$i>>2]|0; $and119$i$i = $190 & -8; $cmp120$i$i = ($and119$i$i|0)==($sub$ptr$sub$i$i|0); if ($cmp120$i$i) { label = 289; break; } $shr124$i$i = $K105$0$i$i >>> 31; $arrayidx126$i$i = (((($T$0$i$i)) + 16|0) + ($shr124$i$i<<2)|0); $shl127$i$i = $K105$0$i$i << 1; $191 = HEAP32[$arrayidx126$i$i>>2]|0; $cmp128$i$i = ($191|0)==(0|0); if ($cmp128$i$i) { label = 286; break; } else { $K105$0$i$i = $shl127$i$i;$T$0$i$i = $191; } } if ((label|0) == 286) { $192 = HEAP32[(38704)>>2]|0; $cmp133$i$i = ($192>>>0)>($arrayidx126$i$i>>>0); if ($cmp133$i$i) { _abort(); // unreachable; } else { HEAP32[$arrayidx126$i$i>>2] = $116; $parent138$i$i = ((($116)) + 24|0); HEAP32[$parent138$i$i>>2] = $T$0$i$i; $bk139$i$i = ((($116)) + 12|0); HEAP32[$bk139$i$i>>2] = $116; $fd140$i$i = ((($116)) + 8|0); HEAP32[$fd140$i$i>>2] = $116; break; } } else if ((label|0) == 289) { $fd148$i$i = ((($T$0$i$i)) + 8|0); $193 = HEAP32[$fd148$i$i>>2]|0; $194 = HEAP32[(38704)>>2]|0; $cmp150$i$i = ($194>>>0)<=($T$0$i$i>>>0); $cmp153$i$i = ($194>>>0)<=($193>>>0); $195 = $cmp153$i$i & $cmp150$i$i; if ($195) { $bk158$i$i = ((($193)) + 12|0); HEAP32[$bk158$i$i>>2] = $116; HEAP32[$fd148$i$i>>2] = $116; $fd160$i$i = ((($116)) + 8|0); HEAP32[$fd160$i$i>>2] = $193; $bk161$i$i = ((($116)) + 12|0); HEAP32[$bk161$i$i>>2] = $T$0$i$i; $parent162$i$i = ((($116)) + 24|0); HEAP32[$parent162$i$i>>2] = 0; break; } else { _abort(); // unreachable; } } } } } while(0); $196 = HEAP32[(38700)>>2]|0; $cmp257$i = ($196>>>0)>($nb$0>>>0); if ($cmp257$i) { $sub260$i = (($196) - ($nb$0))|0; HEAP32[(38700)>>2] = $sub260$i; $197 = HEAP32[(38712)>>2]|0; $add$ptr262$i = (($197) + ($nb$0)|0); HEAP32[(38712)>>2] = $add$ptr262$i; $or264$i = $sub260$i | 1; $head265$i = ((($add$ptr262$i)) + 4|0); HEAP32[$head265$i>>2] = $or264$i; $or267$i = $nb$0 | 3; $head268$i = ((($197)) + 4|0); HEAP32[$head268$i>>2] = $or267$i; $add$ptr269$i = ((($197)) + 8|0); $retval$0 = $add$ptr269$i; STACKTOP = sp;return ($retval$0|0); } } $call275$i = (___errno_location()|0); HEAP32[$call275$i>>2] = 12; $retval$0 = 0; STACKTOP = sp;return ($retval$0|0); } function _free($mem) { $mem = $mem|0; var $$pre = 0, $$pre$phiZ2D = 0, $$pre309 = 0, $$pre310 = 0, $$sink = 0, $$sink4 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0; var $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0; var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0; var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0; var $8 = 0, $9 = 0, $F510$0 = 0, $I534$0 = 0, $K583$0 = 0, $R$1 = 0, $R$3 = 0, $R332$1 = 0, $R332$3 = 0, $RP$1 = 0, $RP360$1 = 0, $T$0 = 0, $add$ptr = 0, $add$ptr16 = 0, $add$ptr217 = 0, $add$ptr261 = 0, $add$ptr482 = 0, $add$ptr498 = 0, $add$ptr6 = 0, $add17 = 0; var $add246 = 0, $add258 = 0, $add267 = 0, $add550 = 0, $add555 = 0, $add559 = 0, $add561 = 0, $add564 = 0, $and = 0, $and140 = 0, $and210 = 0, $and215 = 0, $and232 = 0, $and240 = 0, $and266 = 0, $and301 = 0, $and410 = 0, $and46 = 0, $and495 = 0, $and5 = 0; var $and512 = 0, $and545 = 0, $and549 = 0, $and554 = 0, $and563 = 0, $and574 = 0, $and592 = 0, $and8 = 0, $arrayidx = 0, $arrayidx108 = 0, $arrayidx113 = 0, $arrayidx130 = 0, $arrayidx149 = 0, $arrayidx157 = 0, $arrayidx182 = 0, $arrayidx188 = 0, $arrayidx198 = 0, $arrayidx279 = 0, $arrayidx362 = 0, $arrayidx374 = 0; var $arrayidx379 = 0, $arrayidx400 = 0, $arrayidx419 = 0, $arrayidx427 = 0, $arrayidx454 = 0, $arrayidx460 = 0, $arrayidx470 = 0, $arrayidx509 = 0, $arrayidx567 = 0, $arrayidx570 = 0, $arrayidx599 = 0, $arrayidx99 = 0, $bk = 0, $bk275 = 0, $bk286 = 0, $bk321 = 0, $bk333 = 0, $bk34 = 0, $bk343 = 0, $bk529 = 0; var $bk531 = 0, $bk580 = 0, $bk611 = 0, $bk631 = 0, $bk634 = 0, $bk66 = 0, $bk73 = 0, $bk82 = 0, $child = 0, $child171 = 0, $child361 = 0, $child443 = 0, $child569 = 0, $cmp = 0, $cmp$i = 0, $cmp1 = 0, $cmp100 = 0, $cmp104 = 0, $cmp109 = 0, $cmp114 = 0; var $cmp118 = 0, $cmp127 = 0, $cmp13 = 0, $cmp131 = 0, $cmp143 = 0, $cmp150 = 0, $cmp162 = 0, $cmp165 = 0, $cmp173 = 0, $cmp176 = 0, $cmp18 = 0, $cmp189 = 0, $cmp192 = 0, $cmp2 = 0, $cmp211 = 0, $cmp22 = 0, $cmp228 = 0, $cmp243 = 0, $cmp249 = 0, $cmp25 = 0; var $cmp255 = 0, $cmp269 = 0, $cmp280 = 0, $cmp283 = 0, $cmp287 = 0, $cmp29 = 0, $cmp296 = 0, $cmp305 = 0, $cmp308 = 0, $cmp31 = 0, $cmp312 = 0, $cmp334 = 0, $cmp340 = 0, $cmp344 = 0, $cmp348 = 0, $cmp35 = 0, $cmp363 = 0, $cmp368 = 0, $cmp375 = 0, $cmp380 = 0; var $cmp386 = 0, $cmp395 = 0, $cmp401 = 0, $cmp413 = 0, $cmp42 = 0, $cmp420 = 0, $cmp432 = 0, $cmp435 = 0, $cmp445 = 0, $cmp448 = 0, $cmp461 = 0, $cmp464 = 0, $cmp484 = 0, $cmp50 = 0, $cmp502 = 0, $cmp519 = 0, $cmp53 = 0, $cmp536 = 0, $cmp540 = 0, $cmp57 = 0; var $cmp584 = 0, $cmp593 = 0, $cmp601 = 0, $cmp605 = 0, $cmp621 = 0, $cmp624 = 0, $cmp640 = 0, $cmp74 = 0, $cmp80 = 0, $cmp83 = 0, $cmp87 = 0, $cond = 0, $cond293 = 0, $cond294 = 0, $dec = 0, $fd = 0, $fd273 = 0, $fd311 = 0, $fd322$pre$phiZ2D = 0, $fd338 = 0; var $fd347 = 0, $fd530 = 0, $fd56 = 0, $fd581 = 0, $fd612 = 0, $fd620 = 0, $fd633 = 0, $fd67$pre$phiZ2D = 0, $fd78 = 0, $fd86 = 0, $head = 0, $head209 = 0, $head216 = 0, $head231 = 0, $head248 = 0, $head260 = 0, $head481 = 0, $head497 = 0, $head591 = 0, $idx$neg = 0; var $index = 0, $index399 = 0, $index568 = 0, $neg = 0, $neg139 = 0, $neg300 = 0, $neg409 = 0, $next4$i = 0, $or = 0, $or247 = 0, $or259 = 0, $or480 = 0, $or496 = 0, $or516 = 0, $or578 = 0, $p$1 = 0, $parent = 0, $parent170 = 0, $parent183 = 0, $parent199 = 0; var $parent331 = 0, $parent442 = 0, $parent455 = 0, $parent471 = 0, $parent579 = 0, $parent610 = 0, $parent635 = 0, $psize$1 = 0, $psize$2 = 0, $shl = 0, $shl138 = 0, $shl278 = 0, $shl299 = 0, $shl408 = 0, $shl45 = 0, $shl508 = 0, $shl511 = 0, $shl546 = 0, $shl551 = 0, $shl557 = 0; var $shl560 = 0, $shl573 = 0, $shl590 = 0, $shl600 = 0, $shr = 0, $shr268 = 0, $shr501 = 0, $shr535 = 0, $shr544 = 0, $shr548 = 0, $shr553 = 0, $shr558 = 0, $shr562 = 0, $shr586 = 0, $shr597 = 0, $sp$0$i = 0, $sp$0$in$i = 0, $sub = 0, $sub547 = 0, $sub552 = 0; var $sub556 = 0, $sub589 = 0, $tobool233 = 0, $tobool241 = 0, $tobool513 = 0, $tobool575 = 0, $tobool9 = 0, label = 0, sp = 0; sp = STACKTOP; $cmp = ($mem|0)==(0|0); if ($cmp) { return; } $add$ptr = ((($mem)) + -8|0); $0 = HEAP32[(38704)>>2]|0; $cmp1 = ($add$ptr>>>0)<($0>>>0); if ($cmp1) { _abort(); // unreachable; } $head = ((($mem)) + -4|0); $1 = HEAP32[$head>>2]|0; $and = $1 & 3; $cmp2 = ($and|0)==(1); if ($cmp2) { _abort(); // unreachable; } $and5 = $1 & -8; $add$ptr6 = (($add$ptr) + ($and5)|0); $and8 = $1 & 1; $tobool9 = ($and8|0)==(0); L10: do { if ($tobool9) { $2 = HEAP32[$add$ptr>>2]|0; $cmp13 = ($and|0)==(0); if ($cmp13) { return; } $idx$neg = (0 - ($2))|0; $add$ptr16 = (($add$ptr) + ($idx$neg)|0); $add17 = (($2) + ($and5))|0; $cmp18 = ($add$ptr16>>>0)<($0>>>0); if ($cmp18) { _abort(); // unreachable; } $3 = HEAP32[(38708)>>2]|0; $cmp22 = ($3|0)==($add$ptr16|0); if ($cmp22) { $head209 = ((($add$ptr6)) + 4|0); $27 = HEAP32[$head209>>2]|0; $and210 = $27 & 3; $cmp211 = ($and210|0)==(3); if (!($cmp211)) { $28 = $add$ptr16;$p$1 = $add$ptr16;$psize$1 = $add17; break; } HEAP32[(38696)>>2] = $add17; $and215 = $27 & -2; HEAP32[$head209>>2] = $and215; $or = $add17 | 1; $head216 = ((($add$ptr16)) + 4|0); HEAP32[$head216>>2] = $or; $add$ptr217 = (($add$ptr16) + ($add17)|0); HEAP32[$add$ptr217>>2] = $add17; return; } $shr = $2 >>> 3; $cmp25 = ($2>>>0)<(256); if ($cmp25) { $fd = ((($add$ptr16)) + 8|0); $4 = HEAP32[$fd>>2]|0; $bk = ((($add$ptr16)) + 12|0); $5 = HEAP32[$bk>>2]|0; $shl = $shr << 1; $arrayidx = (38728 + ($shl<<2)|0); $cmp29 = ($4|0)==($arrayidx|0); if (!($cmp29)) { $cmp31 = ($0>>>0)>($4>>>0); if ($cmp31) { _abort(); // unreachable; } $bk34 = ((($4)) + 12|0); $6 = HEAP32[$bk34>>2]|0; $cmp35 = ($6|0)==($add$ptr16|0); if (!($cmp35)) { _abort(); // unreachable; } } $cmp42 = ($5|0)==($4|0); if ($cmp42) { $shl45 = 1 << $shr; $neg = $shl45 ^ -1; $7 = HEAP32[9672]|0; $and46 = $7 & $neg; HEAP32[9672] = $and46; $28 = $add$ptr16;$p$1 = $add$ptr16;$psize$1 = $add17; break; } $cmp50 = ($5|0)==($arrayidx|0); if ($cmp50) { $$pre310 = ((($5)) + 8|0); $fd67$pre$phiZ2D = $$pre310; } else { $cmp53 = ($0>>>0)>($5>>>0); if ($cmp53) { _abort(); // unreachable; } $fd56 = ((($5)) + 8|0); $8 = HEAP32[$fd56>>2]|0; $cmp57 = ($8|0)==($add$ptr16|0); if ($cmp57) { $fd67$pre$phiZ2D = $fd56; } else { _abort(); // unreachable; } } $bk66 = ((($4)) + 12|0); HEAP32[$bk66>>2] = $5; HEAP32[$fd67$pre$phiZ2D>>2] = $4; $28 = $add$ptr16;$p$1 = $add$ptr16;$psize$1 = $add17; break; } $parent = ((($add$ptr16)) + 24|0); $9 = HEAP32[$parent>>2]|0; $bk73 = ((($add$ptr16)) + 12|0); $10 = HEAP32[$bk73>>2]|0; $cmp74 = ($10|0)==($add$ptr16|0); do { if ($cmp74) { $child = ((($add$ptr16)) + 16|0); $arrayidx99 = ((($child)) + 4|0); $14 = HEAP32[$arrayidx99>>2]|0; $cmp100 = ($14|0)==(0|0); if ($cmp100) { $15 = HEAP32[$child>>2]|0; $cmp104 = ($15|0)==(0|0); if ($cmp104) { $R$3 = 0; break; } else { $R$1 = $15;$RP$1 = $child; } } else { $R$1 = $14;$RP$1 = $arrayidx99; } while(1) { $arrayidx108 = ((($R$1)) + 20|0); $16 = HEAP32[$arrayidx108>>2]|0; $cmp109 = ($16|0)==(0|0); if (!($cmp109)) { $R$1 = $16;$RP$1 = $arrayidx108; continue; } $arrayidx113 = ((($R$1)) + 16|0); $17 = HEAP32[$arrayidx113>>2]|0; $cmp114 = ($17|0)==(0|0); if ($cmp114) { break; } else { $R$1 = $17;$RP$1 = $arrayidx113; } } $cmp118 = ($0>>>0)>($RP$1>>>0); if ($cmp118) { _abort(); // unreachable; } else { HEAP32[$RP$1>>2] = 0; $R$3 = $R$1; break; } } else { $fd78 = ((($add$ptr16)) + 8|0); $11 = HEAP32[$fd78>>2]|0; $cmp80 = ($0>>>0)>($11>>>0); if ($cmp80) { _abort(); // unreachable; } $bk82 = ((($11)) + 12|0); $12 = HEAP32[$bk82>>2]|0; $cmp83 = ($12|0)==($add$ptr16|0); if (!($cmp83)) { _abort(); // unreachable; } $fd86 = ((($10)) + 8|0); $13 = HEAP32[$fd86>>2]|0; $cmp87 = ($13|0)==($add$ptr16|0); if ($cmp87) { HEAP32[$bk82>>2] = $10; HEAP32[$fd86>>2] = $11; $R$3 = $10; break; } else { _abort(); // unreachable; } } } while(0); $cmp127 = ($9|0)==(0|0); if ($cmp127) { $28 = $add$ptr16;$p$1 = $add$ptr16;$psize$1 = $add17; } else { $index = ((($add$ptr16)) + 28|0); $18 = HEAP32[$index>>2]|0; $arrayidx130 = (38992 + ($18<<2)|0); $19 = HEAP32[$arrayidx130>>2]|0; $cmp131 = ($19|0)==($add$ptr16|0); do { if ($cmp131) { HEAP32[$arrayidx130>>2] = $R$3; $cond293 = ($R$3|0)==(0|0); if ($cond293) { $shl138 = 1 << $18; $neg139 = $shl138 ^ -1; $20 = HEAP32[(38692)>>2]|0; $and140 = $20 & $neg139; HEAP32[(38692)>>2] = $and140; $28 = $add$ptr16;$p$1 = $add$ptr16;$psize$1 = $add17; break L10; } } else { $21 = HEAP32[(38704)>>2]|0; $cmp143 = ($21>>>0)>($9>>>0); if ($cmp143) { _abort(); // unreachable; } else { $arrayidx149 = ((($9)) + 16|0); $22 = HEAP32[$arrayidx149>>2]|0; $cmp150 = ($22|0)!=($add$ptr16|0); $$sink = $cmp150&1; $arrayidx157 = (((($9)) + 16|0) + ($$sink<<2)|0); HEAP32[$arrayidx157>>2] = $R$3; $cmp162 = ($R$3|0)==(0|0); if ($cmp162) { $28 = $add$ptr16;$p$1 = $add$ptr16;$psize$1 = $add17; break L10; } else { break; } } } } while(0); $23 = HEAP32[(38704)>>2]|0; $cmp165 = ($23>>>0)>($R$3>>>0); if ($cmp165) { _abort(); // unreachable; } $parent170 = ((($R$3)) + 24|0); HEAP32[$parent170>>2] = $9; $child171 = ((($add$ptr16)) + 16|0); $24 = HEAP32[$child171>>2]|0; $cmp173 = ($24|0)==(0|0); do { if (!($cmp173)) { $cmp176 = ($23>>>0)>($24>>>0); if ($cmp176) { _abort(); // unreachable; } else { $arrayidx182 = ((($R$3)) + 16|0); HEAP32[$arrayidx182>>2] = $24; $parent183 = ((($24)) + 24|0); HEAP32[$parent183>>2] = $R$3; break; } } } while(0); $arrayidx188 = ((($child171)) + 4|0); $25 = HEAP32[$arrayidx188>>2]|0; $cmp189 = ($25|0)==(0|0); if ($cmp189) { $28 = $add$ptr16;$p$1 = $add$ptr16;$psize$1 = $add17; } else { $26 = HEAP32[(38704)>>2]|0; $cmp192 = ($26>>>0)>($25>>>0); if ($cmp192) { _abort(); // unreachable; } else { $arrayidx198 = ((($R$3)) + 20|0); HEAP32[$arrayidx198>>2] = $25; $parent199 = ((($25)) + 24|0); HEAP32[$parent199>>2] = $R$3; $28 = $add$ptr16;$p$1 = $add$ptr16;$psize$1 = $add17; break; } } } } else { $28 = $add$ptr;$p$1 = $add$ptr;$psize$1 = $and5; } } while(0); $cmp228 = ($28>>>0)<($add$ptr6>>>0); if (!($cmp228)) { _abort(); // unreachable; } $head231 = ((($add$ptr6)) + 4|0); $29 = HEAP32[$head231>>2]|0; $and232 = $29 & 1; $tobool233 = ($and232|0)==(0); if ($tobool233) { _abort(); // unreachable; } $and240 = $29 & 2; $tobool241 = ($and240|0)==(0); if ($tobool241) { $30 = HEAP32[(38712)>>2]|0; $cmp243 = ($30|0)==($add$ptr6|0); if ($cmp243) { $31 = HEAP32[(38700)>>2]|0; $add246 = (($31) + ($psize$1))|0; HEAP32[(38700)>>2] = $add246; HEAP32[(38712)>>2] = $p$1; $or247 = $add246 | 1; $head248 = ((($p$1)) + 4|0); HEAP32[$head248>>2] = $or247; $32 = HEAP32[(38708)>>2]|0; $cmp249 = ($p$1|0)==($32|0); if (!($cmp249)) { return; } HEAP32[(38708)>>2] = 0; HEAP32[(38696)>>2] = 0; return; } $33 = HEAP32[(38708)>>2]|0; $cmp255 = ($33|0)==($add$ptr6|0); if ($cmp255) { $34 = HEAP32[(38696)>>2]|0; $add258 = (($34) + ($psize$1))|0; HEAP32[(38696)>>2] = $add258; HEAP32[(38708)>>2] = $28; $or259 = $add258 | 1; $head260 = ((($p$1)) + 4|0); HEAP32[$head260>>2] = $or259; $add$ptr261 = (($28) + ($add258)|0); HEAP32[$add$ptr261>>2] = $add258; return; } $and266 = $29 & -8; $add267 = (($and266) + ($psize$1))|0; $shr268 = $29 >>> 3; $cmp269 = ($29>>>0)<(256); L108: do { if ($cmp269) { $fd273 = ((($add$ptr6)) + 8|0); $35 = HEAP32[$fd273>>2]|0; $bk275 = ((($add$ptr6)) + 12|0); $36 = HEAP32[$bk275>>2]|0; $shl278 = $shr268 << 1; $arrayidx279 = (38728 + ($shl278<<2)|0); $cmp280 = ($35|0)==($arrayidx279|0); if (!($cmp280)) { $37 = HEAP32[(38704)>>2]|0; $cmp283 = ($37>>>0)>($35>>>0); if ($cmp283) { _abort(); // unreachable; } $bk286 = ((($35)) + 12|0); $38 = HEAP32[$bk286>>2]|0; $cmp287 = ($38|0)==($add$ptr6|0); if (!($cmp287)) { _abort(); // unreachable; } } $cmp296 = ($36|0)==($35|0); if ($cmp296) { $shl299 = 1 << $shr268; $neg300 = $shl299 ^ -1; $39 = HEAP32[9672]|0; $and301 = $39 & $neg300; HEAP32[9672] = $and301; break; } $cmp305 = ($36|0)==($arrayidx279|0); if ($cmp305) { $$pre309 = ((($36)) + 8|0); $fd322$pre$phiZ2D = $$pre309; } else { $40 = HEAP32[(38704)>>2]|0; $cmp308 = ($40>>>0)>($36>>>0); if ($cmp308) { _abort(); // unreachable; } $fd311 = ((($36)) + 8|0); $41 = HEAP32[$fd311>>2]|0; $cmp312 = ($41|0)==($add$ptr6|0); if ($cmp312) { $fd322$pre$phiZ2D = $fd311; } else { _abort(); // unreachable; } } $bk321 = ((($35)) + 12|0); HEAP32[$bk321>>2] = $36; HEAP32[$fd322$pre$phiZ2D>>2] = $35; } else { $parent331 = ((($add$ptr6)) + 24|0); $42 = HEAP32[$parent331>>2]|0; $bk333 = ((($add$ptr6)) + 12|0); $43 = HEAP32[$bk333>>2]|0; $cmp334 = ($43|0)==($add$ptr6|0); do { if ($cmp334) { $child361 = ((($add$ptr6)) + 16|0); $arrayidx362 = ((($child361)) + 4|0); $48 = HEAP32[$arrayidx362>>2]|0; $cmp363 = ($48|0)==(0|0); if ($cmp363) { $49 = HEAP32[$child361>>2]|0; $cmp368 = ($49|0)==(0|0); if ($cmp368) { $R332$3 = 0; break; } else { $R332$1 = $49;$RP360$1 = $child361; } } else { $R332$1 = $48;$RP360$1 = $arrayidx362; } while(1) { $arrayidx374 = ((($R332$1)) + 20|0); $50 = HEAP32[$arrayidx374>>2]|0; $cmp375 = ($50|0)==(0|0); if (!($cmp375)) { $R332$1 = $50;$RP360$1 = $arrayidx374; continue; } $arrayidx379 = ((($R332$1)) + 16|0); $51 = HEAP32[$arrayidx379>>2]|0; $cmp380 = ($51|0)==(0|0); if ($cmp380) { break; } else { $R332$1 = $51;$RP360$1 = $arrayidx379; } } $52 = HEAP32[(38704)>>2]|0; $cmp386 = ($52>>>0)>($RP360$1>>>0); if ($cmp386) { _abort(); // unreachable; } else { HEAP32[$RP360$1>>2] = 0; $R332$3 = $R332$1; break; } } else { $fd338 = ((($add$ptr6)) + 8|0); $44 = HEAP32[$fd338>>2]|0; $45 = HEAP32[(38704)>>2]|0; $cmp340 = ($45>>>0)>($44>>>0); if ($cmp340) { _abort(); // unreachable; } $bk343 = ((($44)) + 12|0); $46 = HEAP32[$bk343>>2]|0; $cmp344 = ($46|0)==($add$ptr6|0); if (!($cmp344)) { _abort(); // unreachable; } $fd347 = ((($43)) + 8|0); $47 = HEAP32[$fd347>>2]|0; $cmp348 = ($47|0)==($add$ptr6|0); if ($cmp348) { HEAP32[$bk343>>2] = $43; HEAP32[$fd347>>2] = $44; $R332$3 = $43; break; } else { _abort(); // unreachable; } } } while(0); $cmp395 = ($42|0)==(0|0); if (!($cmp395)) { $index399 = ((($add$ptr6)) + 28|0); $53 = HEAP32[$index399>>2]|0; $arrayidx400 = (38992 + ($53<<2)|0); $54 = HEAP32[$arrayidx400>>2]|0; $cmp401 = ($54|0)==($add$ptr6|0); do { if ($cmp401) { HEAP32[$arrayidx400>>2] = $R332$3; $cond294 = ($R332$3|0)==(0|0); if ($cond294) { $shl408 = 1 << $53; $neg409 = $shl408 ^ -1; $55 = HEAP32[(38692)>>2]|0; $and410 = $55 & $neg409; HEAP32[(38692)>>2] = $and410; break L108; } } else { $56 = HEAP32[(38704)>>2]|0; $cmp413 = ($56>>>0)>($42>>>0); if ($cmp413) { _abort(); // unreachable; } else { $arrayidx419 = ((($42)) + 16|0); $57 = HEAP32[$arrayidx419>>2]|0; $cmp420 = ($57|0)!=($add$ptr6|0); $$sink4 = $cmp420&1; $arrayidx427 = (((($42)) + 16|0) + ($$sink4<<2)|0); HEAP32[$arrayidx427>>2] = $R332$3; $cmp432 = ($R332$3|0)==(0|0); if ($cmp432) { break L108; } else { break; } } } } while(0); $58 = HEAP32[(38704)>>2]|0; $cmp435 = ($58>>>0)>($R332$3>>>0); if ($cmp435) { _abort(); // unreachable; } $parent442 = ((($R332$3)) + 24|0); HEAP32[$parent442>>2] = $42; $child443 = ((($add$ptr6)) + 16|0); $59 = HEAP32[$child443>>2]|0; $cmp445 = ($59|0)==(0|0); do { if (!($cmp445)) { $cmp448 = ($58>>>0)>($59>>>0); if ($cmp448) { _abort(); // unreachable; } else { $arrayidx454 = ((($R332$3)) + 16|0); HEAP32[$arrayidx454>>2] = $59; $parent455 = ((($59)) + 24|0); HEAP32[$parent455>>2] = $R332$3; break; } } } while(0); $arrayidx460 = ((($child443)) + 4|0); $60 = HEAP32[$arrayidx460>>2]|0; $cmp461 = ($60|0)==(0|0); if (!($cmp461)) { $61 = HEAP32[(38704)>>2]|0; $cmp464 = ($61>>>0)>($60>>>0); if ($cmp464) { _abort(); // unreachable; } else { $arrayidx470 = ((($R332$3)) + 20|0); HEAP32[$arrayidx470>>2] = $60; $parent471 = ((($60)) + 24|0); HEAP32[$parent471>>2] = $R332$3; break; } } } } } while(0); $or480 = $add267 | 1; $head481 = ((($p$1)) + 4|0); HEAP32[$head481>>2] = $or480; $add$ptr482 = (($28) + ($add267)|0); HEAP32[$add$ptr482>>2] = $add267; $62 = HEAP32[(38708)>>2]|0; $cmp484 = ($p$1|0)==($62|0); if ($cmp484) { HEAP32[(38696)>>2] = $add267; return; } else { $psize$2 = $add267; } } else { $and495 = $29 & -2; HEAP32[$head231>>2] = $and495; $or496 = $psize$1 | 1; $head497 = ((($p$1)) + 4|0); HEAP32[$head497>>2] = $or496; $add$ptr498 = (($28) + ($psize$1)|0); HEAP32[$add$ptr498>>2] = $psize$1; $psize$2 = $psize$1; } $shr501 = $psize$2 >>> 3; $cmp502 = ($psize$2>>>0)<(256); if ($cmp502) { $shl508 = $shr501 << 1; $arrayidx509 = (38728 + ($shl508<<2)|0); $63 = HEAP32[9672]|0; $shl511 = 1 << $shr501; $and512 = $63 & $shl511; $tobool513 = ($and512|0)==(0); if ($tobool513) { $or516 = $63 | $shl511; HEAP32[9672] = $or516; $$pre = ((($arrayidx509)) + 8|0); $$pre$phiZ2D = $$pre;$F510$0 = $arrayidx509; } else { $64 = ((($arrayidx509)) + 8|0); $65 = HEAP32[$64>>2]|0; $66 = HEAP32[(38704)>>2]|0; $cmp519 = ($66>>>0)>($65>>>0); if ($cmp519) { _abort(); // unreachable; } else { $$pre$phiZ2D = $64;$F510$0 = $65; } } HEAP32[$$pre$phiZ2D>>2] = $p$1; $bk529 = ((($F510$0)) + 12|0); HEAP32[$bk529>>2] = $p$1; $fd530 = ((($p$1)) + 8|0); HEAP32[$fd530>>2] = $F510$0; $bk531 = ((($p$1)) + 12|0); HEAP32[$bk531>>2] = $arrayidx509; return; } $shr535 = $psize$2 >>> 8; $cmp536 = ($shr535|0)==(0); if ($cmp536) { $I534$0 = 0; } else { $cmp540 = ($psize$2>>>0)>(16777215); if ($cmp540) { $I534$0 = 31; } else { $sub = (($shr535) + 1048320)|0; $shr544 = $sub >>> 16; $and545 = $shr544 & 8; $shl546 = $shr535 << $and545; $sub547 = (($shl546) + 520192)|0; $shr548 = $sub547 >>> 16; $and549 = $shr548 & 4; $add550 = $and549 | $and545; $shl551 = $shl546 << $and549; $sub552 = (($shl551) + 245760)|0; $shr553 = $sub552 >>> 16; $and554 = $shr553 & 2; $add555 = $add550 | $and554; $sub556 = (14 - ($add555))|0; $shl557 = $shl551 << $and554; $shr558 = $shl557 >>> 15; $add559 = (($sub556) + ($shr558))|0; $shl560 = $add559 << 1; $add561 = (($add559) + 7)|0; $shr562 = $psize$2 >>> $add561; $and563 = $shr562 & 1; $add564 = $and563 | $shl560; $I534$0 = $add564; } } $arrayidx567 = (38992 + ($I534$0<<2)|0); $index568 = ((($p$1)) + 28|0); HEAP32[$index568>>2] = $I534$0; $child569 = ((($p$1)) + 16|0); $arrayidx570 = ((($p$1)) + 20|0); HEAP32[$arrayidx570>>2] = 0; HEAP32[$child569>>2] = 0; $67 = HEAP32[(38692)>>2]|0; $shl573 = 1 << $I534$0; $and574 = $67 & $shl573; $tobool575 = ($and574|0)==(0); do { if ($tobool575) { $or578 = $67 | $shl573; HEAP32[(38692)>>2] = $or578; HEAP32[$arrayidx567>>2] = $p$1; $parent579 = ((($p$1)) + 24|0); HEAP32[$parent579>>2] = $arrayidx567; $bk580 = ((($p$1)) + 12|0); HEAP32[$bk580>>2] = $p$1; $fd581 = ((($p$1)) + 8|0); HEAP32[$fd581>>2] = $p$1; } else { $68 = HEAP32[$arrayidx567>>2]|0; $cmp584 = ($I534$0|0)==(31); $shr586 = $I534$0 >>> 1; $sub589 = (25 - ($shr586))|0; $cond = $cmp584 ? 0 : $sub589; $shl590 = $psize$2 << $cond; $K583$0 = $shl590;$T$0 = $68; while(1) { $head591 = ((($T$0)) + 4|0); $69 = HEAP32[$head591>>2]|0; $and592 = $69 & -8; $cmp593 = ($and592|0)==($psize$2|0); if ($cmp593) { label = 124; break; } $shr597 = $K583$0 >>> 31; $arrayidx599 = (((($T$0)) + 16|0) + ($shr597<<2)|0); $shl600 = $K583$0 << 1; $70 = HEAP32[$arrayidx599>>2]|0; $cmp601 = ($70|0)==(0|0); if ($cmp601) { label = 121; break; } else { $K583$0 = $shl600;$T$0 = $70; } } if ((label|0) == 121) { $71 = HEAP32[(38704)>>2]|0; $cmp605 = ($71>>>0)>($arrayidx599>>>0); if ($cmp605) { _abort(); // unreachable; } else { HEAP32[$arrayidx599>>2] = $p$1; $parent610 = ((($p$1)) + 24|0); HEAP32[$parent610>>2] = $T$0; $bk611 = ((($p$1)) + 12|0); HEAP32[$bk611>>2] = $p$1; $fd612 = ((($p$1)) + 8|0); HEAP32[$fd612>>2] = $p$1; break; } } else if ((label|0) == 124) { $fd620 = ((($T$0)) + 8|0); $72 = HEAP32[$fd620>>2]|0; $73 = HEAP32[(38704)>>2]|0; $cmp621 = ($73>>>0)<=($T$0>>>0); $cmp624 = ($73>>>0)<=($72>>>0); $74 = $cmp624 & $cmp621; if ($74) { $bk631 = ((($72)) + 12|0); HEAP32[$bk631>>2] = $p$1; HEAP32[$fd620>>2] = $p$1; $fd633 = ((($p$1)) + 8|0); HEAP32[$fd633>>2] = $72; $bk634 = ((($p$1)) + 12|0); HEAP32[$bk634>>2] = $T$0; $parent635 = ((($p$1)) + 24|0); HEAP32[$parent635>>2] = 0; break; } else { _abort(); // unreachable; } } } } while(0); $75 = HEAP32[(38720)>>2]|0; $dec = (($75) + -1)|0; HEAP32[(38720)>>2] = $dec; $cmp640 = ($dec|0)==(0); if ($cmp640) { $sp$0$in$i = (39144); } else { return; } while(1) { $sp$0$i = HEAP32[$sp$0$in$i>>2]|0; $cmp$i = ($sp$0$i|0)==(0|0); $next4$i = ((($sp$0$i)) + 8|0); if ($cmp$i) { break; } else { $sp$0$in$i = $next4$i; } } HEAP32[(38720)>>2] = -1; return; } function ___stdio_close($f) { $f = $f|0; var $0 = 0, $call = 0, $call1 = 0, $call2 = 0, $fd = 0, $vararg_buffer = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $vararg_buffer = sp; $fd = ((($f)) + 60|0); $0 = HEAP32[$fd>>2]|0; $call = (_dummy($0)|0); HEAP32[$vararg_buffer>>2] = $call; $call1 = (___syscall6(6,($vararg_buffer|0))|0); $call2 = (___syscall_ret($call1)|0); STACKTOP = sp;return ($call2|0); } function ___stdio_seek($f,$off,$whence) { $f = $f|0; $off = $off|0; $whence = $whence|0; var $$pre = 0, $0 = 0, $1 = 0, $2 = 0, $call = 0, $call1 = 0, $cmp = 0, $fd = 0, $ret = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $vararg_buffer = sp; $ret = sp + 20|0; $fd = ((($f)) + 60|0); $0 = HEAP32[$fd>>2]|0; $1 = $ret; HEAP32[$vararg_buffer>>2] = $0; $vararg_ptr1 = ((($vararg_buffer)) + 4|0); HEAP32[$vararg_ptr1>>2] = 0; $vararg_ptr2 = ((($vararg_buffer)) + 8|0); HEAP32[$vararg_ptr2>>2] = $off; $vararg_ptr3 = ((($vararg_buffer)) + 12|0); HEAP32[$vararg_ptr3>>2] = $1; $vararg_ptr4 = ((($vararg_buffer)) + 16|0); HEAP32[$vararg_ptr4>>2] = $whence; $call = (___syscall140(140,($vararg_buffer|0))|0); $call1 = (___syscall_ret($call)|0); $cmp = ($call1|0)<(0); if ($cmp) { HEAP32[$ret>>2] = -1; $2 = -1; } else { $$pre = HEAP32[$ret>>2]|0; $2 = $$pre; } STACKTOP = sp;return ($2|0); } function ___syscall_ret($r) { $r = $r|0; var $call = 0, $cmp = 0, $retval$0 = 0, $sub = 0, label = 0, sp = 0; sp = STACKTOP; $cmp = ($r>>>0)>(4294963200); if ($cmp) { $sub = (0 - ($r))|0; $call = (___errno_location()|0); HEAP32[$call>>2] = $sub; $retval$0 = -1; } else { $retval$0 = $r; } return ($retval$0|0); } function ___errno_location() { var label = 0, sp = 0; sp = STACKTOP; return (39248|0); } function _dummy($fd) { $fd = $fd|0; var label = 0, sp = 0; sp = STACKTOP; return ($fd|0); } function ___stdout_write($f,$buf,$len) { $f = $f|0; $buf = $buf|0; $len = $len|0; var $0 = 0, $1 = 0, $2 = 0, $and = 0, $call = 0, $call3 = 0, $fd = 0, $lbf = 0, $tobool = 0, $tobool2 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $write = 0, $wsz = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $vararg_buffer = sp; $wsz = sp + 16|0; $write = ((($f)) + 36|0); HEAP32[$write>>2] = 22; $0 = HEAP32[$f>>2]|0; $and = $0 & 64; $tobool = ($and|0)==(0); if ($tobool) { $fd = ((($f)) + 60|0); $1 = HEAP32[$fd>>2]|0; $2 = $wsz; HEAP32[$vararg_buffer>>2] = $1; $vararg_ptr1 = ((($vararg_buffer)) + 4|0); HEAP32[$vararg_ptr1>>2] = 21523; $vararg_ptr2 = ((($vararg_buffer)) + 8|0); HEAP32[$vararg_ptr2>>2] = $2; $call = (___syscall54(54,($vararg_buffer|0))|0); $tobool2 = ($call|0)==(0); if (!($tobool2)) { $lbf = ((($f)) + 75|0); HEAP8[$lbf>>0] = -1; } } $call3 = (___stdio_write($f,$buf,$len)|0); STACKTOP = sp;return ($call3|0); } function ___stdio_write($f,$buf,$len) { $f = $f|0; $buf = $buf|0; $len = $len|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $add$ptr = 0, $add$ptr32 = 0, $buf8 = 0, $buf_size = 0, $call = 0; var $call40 = 0, $call7 = 0, $call741 = 0, $call746 = 0, $cmp = 0, $cmp12 = 0, $cmp17 = 0, $cmp24 = 0, $cmp42 = 0, $cnt$0 = 0, $dec = 0, $fd = 0, $incdec$ptr = 0, $iov$043 = 0, $iov$1 = 0, $iov_base2 = 0, $iov_len = 0, $iov_len19 = 0, $iov_len23 = 0, $iov_len3 = 0; var $iov_len36 = 0, $iovcnt$045 = 0, $iovcnt$1 = 0, $iovs = 0, $or = 0, $rem$044 = 0, $retval$0 = 0, $sub = 0, $sub$ptr$sub = 0, $sub21 = 0, $sub28 = 0, $sub37 = 0, $vararg_buffer = 0, $vararg_buffer3 = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, $wbase = 0, $wend = 0; var $wend14 = 0, $wpos = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $vararg_buffer3 = sp + 16|0; $vararg_buffer = sp; $iovs = sp + 32|0; $wbase = ((($f)) + 28|0); $0 = HEAP32[$wbase>>2]|0; HEAP32[$iovs>>2] = $0; $iov_len = ((($iovs)) + 4|0); $wpos = ((($f)) + 20|0); $1 = HEAP32[$wpos>>2]|0; $sub$ptr$sub = (($1) - ($0))|0; HEAP32[$iov_len>>2] = $sub$ptr$sub; $iov_base2 = ((($iovs)) + 8|0); HEAP32[$iov_base2>>2] = $buf; $iov_len3 = ((($iovs)) + 12|0); HEAP32[$iov_len3>>2] = $len; $add = (($sub$ptr$sub) + ($len))|0; $fd = ((($f)) + 60|0); $2 = HEAP32[$fd>>2]|0; $3 = $iovs; HEAP32[$vararg_buffer>>2] = $2; $vararg_ptr1 = ((($vararg_buffer)) + 4|0); HEAP32[$vararg_ptr1>>2] = $3; $vararg_ptr2 = ((($vararg_buffer)) + 8|0); HEAP32[$vararg_ptr2>>2] = 2; $call40 = (___syscall146(146,($vararg_buffer|0))|0); $call741 = (___syscall_ret($call40)|0); $cmp42 = ($add|0)==($call741|0); L1: do { if ($cmp42) { label = 3; } else { $call746 = $call741;$iov$043 = $iovs;$iovcnt$045 = 2;$rem$044 = $add; while(1) { $cmp12 = ($call746|0)<(0); if ($cmp12) { break; } $sub21 = (($rem$044) - ($call746))|0; $iov_len23 = ((($iov$043)) + 4|0); $9 = HEAP32[$iov_len23>>2]|0; $cmp24 = ($call746>>>0)>($9>>>0); $incdec$ptr = ((($iov$043)) + 8|0); $iov$1 = $cmp24 ? $incdec$ptr : $iov$043; $dec = $cmp24 << 31 >> 31; $iovcnt$1 = (($iovcnt$045) + ($dec))|0; $sub28 = $cmp24 ? $9 : 0; $cnt$0 = (($call746) - ($sub28))|0; $10 = HEAP32[$iov$1>>2]|0; $add$ptr32 = (($10) + ($cnt$0)|0); HEAP32[$iov$1>>2] = $add$ptr32; $iov_len36 = ((($iov$1)) + 4|0); $11 = HEAP32[$iov_len36>>2]|0; $sub37 = (($11) - ($cnt$0))|0; HEAP32[$iov_len36>>2] = $sub37; $12 = HEAP32[$fd>>2]|0; $13 = $iov$1; HEAP32[$vararg_buffer3>>2] = $12; $vararg_ptr6 = ((($vararg_buffer3)) + 4|0); HEAP32[$vararg_ptr6>>2] = $13; $vararg_ptr7 = ((($vararg_buffer3)) + 8|0); HEAP32[$vararg_ptr7>>2] = $iovcnt$1; $call = (___syscall146(146,($vararg_buffer3|0))|0); $call7 = (___syscall_ret($call)|0); $cmp = ($sub21|0)==($call7|0); if ($cmp) { label = 3; break L1; } else { $call746 = $call7;$iov$043 = $iov$1;$iovcnt$045 = $iovcnt$1;$rem$044 = $sub21; } } $wend14 = ((($f)) + 16|0); HEAP32[$wend14>>2] = 0; HEAP32[$wbase>>2] = 0; HEAP32[$wpos>>2] = 0; $7 = HEAP32[$f>>2]|0; $or = $7 | 32; HEAP32[$f>>2] = $or; $cmp17 = ($iovcnt$045|0)==(2); if ($cmp17) { $retval$0 = 0; } else { $iov_len19 = ((($iov$043)) + 4|0); $8 = HEAP32[$iov_len19>>2]|0; $sub = (($len) - ($8))|0; $retval$0 = $sub; } } } while(0); if ((label|0) == 3) { $buf8 = ((($f)) + 44|0); $4 = HEAP32[$buf8>>2]|0; $buf_size = ((($f)) + 48|0); $5 = HEAP32[$buf_size>>2]|0; $add$ptr = (($4) + ($5)|0); $wend = ((($f)) + 16|0); HEAP32[$wend>>2] = $add$ptr; $6 = $4; HEAP32[$wbase>>2] = $6; HEAP32[$wpos>>2] = $6; $retval$0 = $len; } STACKTOP = sp;return ($retval$0|0); } function _strcmp($l,$r) { $l = $l|0; $r = $r|0; var $$lcssa = 0, $$lcssa6 = 0, $0 = 0, $1 = 0, $2 = 0, $3 = 0, $cmp = 0, $cmp7 = 0, $conv5 = 0, $conv6 = 0, $incdec$ptr = 0, $incdec$ptr4 = 0, $l$addr$010 = 0, $or$cond = 0, $or$cond9 = 0, $r$addr$011 = 0, $sub = 0, $tobool = 0, $tobool8 = 0, label = 0; var sp = 0; sp = STACKTOP; $0 = HEAP8[$l>>0]|0; $1 = HEAP8[$r>>0]|0; $cmp7 = ($0<<24>>24)!=($1<<24>>24); $tobool8 = ($0<<24>>24)==(0); $or$cond9 = $tobool8 | $cmp7; if ($or$cond9) { $$lcssa = $1;$$lcssa6 = $0; } else { $l$addr$010 = $l;$r$addr$011 = $r; while(1) { $incdec$ptr = ((($l$addr$010)) + 1|0); $incdec$ptr4 = ((($r$addr$011)) + 1|0); $2 = HEAP8[$incdec$ptr>>0]|0; $3 = HEAP8[$incdec$ptr4>>0]|0; $cmp = ($2<<24>>24)!=($3<<24>>24); $tobool = ($2<<24>>24)==(0); $or$cond = $tobool | $cmp; if ($or$cond) { $$lcssa = $3;$$lcssa6 = $2; break; } else { $l$addr$010 = $incdec$ptr;$r$addr$011 = $incdec$ptr4; } } } $conv5 = $$lcssa6&255; $conv6 = $$lcssa&255; $sub = (($conv5) - ($conv6))|0; return ($sub|0); } function _vfprintf($f,$fmt,$ap) { $f = $f|0; $fmt = $fmt|0; $ap = $ap|0; var $$call21 = 0, $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $add$ptr = 0, $and = 0, $and11 = 0, $and36 = 0, $ap2 = 0, $buf = 0, $buf_size = 0, $call = 0, $call21 = 0, $call2130 = 0, $call6 = 0; var $cmp = 0, $cmp5 = 0, $cmp7 = 0, $cond = 0, $internal_buf = 0, $lock = 0, $mode = 0, $nl_arg = 0, $nl_type = 0, $or = 0, $ret$1 = 0, $ret$1$ = 0, $retval$0 = 0, $tobool = 0, $tobool22 = 0, $tobool26 = 0, $tobool37 = 0, $tobool41 = 0, $vacopy_currentptr = 0, $wbase = 0; var $wend = 0, $wpos = 0, $write = 0, dest = 0, label = 0, sp = 0, stop = 0; sp = STACKTOP; STACKTOP = STACKTOP + 224|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(224|0); $ap2 = sp + 120|0; $nl_type = sp + 80|0; $nl_arg = sp; $internal_buf = sp + 136|0; dest=$nl_type; stop=dest+40|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); $vacopy_currentptr = HEAP32[$ap>>2]|0; HEAP32[$ap2>>2] = $vacopy_currentptr; $call = (_printf_core(0,$fmt,$ap2,$nl_arg,$nl_type)|0); $cmp = ($call|0)<(0); if ($cmp) { $retval$0 = -1; } else { $lock = ((($f)) + 76|0); $0 = HEAP32[$lock>>2]|0; $cmp5 = ($0|0)>(-1); if ($cmp5) { $call6 = (___lockfile($f)|0); $cond = $call6; } else { $cond = 0; } $1 = HEAP32[$f>>2]|0; $and = $1 & 32; $mode = ((($f)) + 74|0); $2 = HEAP8[$mode>>0]|0; $cmp7 = ($2<<24>>24)<(1); if ($cmp7) { $and11 = $1 & -33; HEAP32[$f>>2] = $and11; } $buf_size = ((($f)) + 48|0); $3 = HEAP32[$buf_size>>2]|0; $tobool = ($3|0)==(0); if ($tobool) { $buf = ((($f)) + 44|0); $4 = HEAP32[$buf>>2]|0; HEAP32[$buf>>2] = $internal_buf; $wbase = ((($f)) + 28|0); HEAP32[$wbase>>2] = $internal_buf; $wpos = ((($f)) + 20|0); HEAP32[$wpos>>2] = $internal_buf; HEAP32[$buf_size>>2] = 80; $add$ptr = ((($internal_buf)) + 80|0); $wend = ((($f)) + 16|0); HEAP32[$wend>>2] = $add$ptr; $call21 = (_printf_core($f,$fmt,$ap2,$nl_arg,$nl_type)|0); $tobool22 = ($4|0)==(0|0); if ($tobool22) { $ret$1 = $call21; } else { $write = ((($f)) + 36|0); $5 = HEAP32[$write>>2]|0; (FUNCTION_TABLE_iiii[$5 & 31]($f,0,0)|0); $6 = HEAP32[$wpos>>2]|0; $tobool26 = ($6|0)==(0|0); $$call21 = $tobool26 ? -1 : $call21; HEAP32[$buf>>2] = $4; HEAP32[$buf_size>>2] = 0; HEAP32[$wend>>2] = 0; HEAP32[$wbase>>2] = 0; HEAP32[$wpos>>2] = 0; $ret$1 = $$call21; } } else { $call2130 = (_printf_core($f,$fmt,$ap2,$nl_arg,$nl_type)|0); $ret$1 = $call2130; } $7 = HEAP32[$f>>2]|0; $and36 = $7 & 32; $tobool37 = ($and36|0)==(0); $ret$1$ = $tobool37 ? $ret$1 : -1; $or = $7 | $and; HEAP32[$f>>2] = $or; $tobool41 = ($cond|0)==(0); if (!($tobool41)) { ___unlockfile($f); } $retval$0 = $ret$1$; } STACKTOP = sp;return ($retval$0|0); } function _printf_core($f,$fmt,$ap,$nl_arg,$nl_type) { $f = $f|0; $fmt = $fmt|0; $ap = $ap|0; $nl_arg = $nl_arg|0; $nl_type = $nl_type|0; var $$ = 0, $$$ = 0, $$194$ = 0, $$197 = 0, $$add$ptr258 = 0, $$l10n$0 = 0, $$lcssa = 0, $$pre = 0, $$pre248 = 0, $$pre249 = 0, $$pre249$pre = 0, $$pre250 = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0; var $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0; var $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0; var $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0.0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0; var $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0; var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0; var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0; var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0; var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $a$0 = 0, $a$0$add$ptr206 = 0, $a$1 = 0, $a$2 = 0, $add = 0, $add$ptr = 0, $add$ptr139 = 0, $add$ptr206 = 0, $add$ptr258 = 0, $add$ptr341 = 0, $add$ptr360 = 0, $add$ptr43 = 0, $add$ptr43$arrayidx31 = 0, $add$ptr474 = 0, $add$ptr88 = 0; var $add270 = 0, $add323 = 0, $add396 = 0, $add413 = 0, $add442 = 0, $and = 0, $and211 = 0, $and215 = 0, $and217 = 0, $and219 = 0, $and220 = 0, $and250 = 0, $and255 = 0, $and264 = 0, $and290 = 0, $and295 = 0, $and310 = 0, $and310$fl$4 = 0, $arg = 0, $arglist_current = 0; var $arglist_current2 = 0, $arglist_next = 0, $arglist_next3 = 0, $argpos$0 = 0, $arrayidx114 = 0, $arrayidx119 = 0, $arrayidx124 = 0, $arrayidx132 = 0, $arrayidx16 = 0, $arrayidx174 = 0, $arrayidx193 = 0, $arrayidx31 = 0, $arrayidx35 = 0, $arrayidx371 = 0, $arrayidx470 = 0, $arrayidx482 = 0, $arrayidx68 = 0, $arrayidx73 = 0, $arrayidx81 = 0, $brmerge = 0; var $brmerge221 = 0, $buf = 0, $call = 0, $call104 = 0, $call160 = 0, $call345 = 0, $call346 = 0, $call357 = 0, $call385 = 0, $call412 = 0, $call430 = 0, $cmp = 0, $cmp1 = 0, $cmp105 = 0, $cmp111 = 0, $cmp116 = 0, $cmp126 = 0, $cmp13 = 0, $cmp166 = 0, $cmp177 = 0; var $cmp18 = 0, $cmp182 = 0, $cmp185 = 0, $cmp212 = 0, $cmp241 = 0, $cmp271 = 0, $cmp307 = 0, $cmp324 = 0, $cmp37 = 0, $cmp378 = 0, $cmp378226 = 0, $cmp386 = 0, $cmp391 = 0, $cmp398 = 0, $cmp405 = 0, $cmp405236 = 0, $cmp414 = 0, $cmp422 = 0, $cmp435 = 0, $cmp443 = 0; var $cmp467 = 0, $cmp479 = 0, $cmp479206 = 0, $cmp50 = 0, $cmp50217 = 0, $cmp65 = 0, $cmp75 = 0, $cmp97 = 0, $cnt$0 = 0, $cnt$1 = 0, $cond149 = 0, $cond246 = 0, $cond355 = 0, $cond427 = 0, $conv120 = 0, $conv134 = 0, $conv164 = 0, $conv172 = 0, $conv175 = 0, $conv208 = 0; var $conv230 = 0, $conv233 = 0, $conv32 = 0, $conv48 = 0, $conv48215 = 0, $conv58 = 0, $conv69 = 0, $conv83 = 0, $expanded = 0, $expanded10 = 0, $expanded11 = 0, $expanded13 = 0, $expanded14 = 0, $expanded15 = 0, $expanded4 = 0, $expanded6 = 0, $expanded7 = 0, $expanded8 = 0, $fl$0$lcssa = 0, $fl$0222 = 0; var $fl$1 = 0, $fl$1$and220 = 0, $fl$3 = 0, $fl$4 = 0, $fl$6 = 0, $i$0$lcssa = 0, $i$0$lcssa257 = 0, $i$0228 = 0, $i$1237 = 0, $i$2$lcssa = 0, $i$2210 = 0, $i$3207 = 0, $i137 = 0, $i86 = 0, $inc = 0, $inc489 = 0, $incdec$ptr = 0, $incdec$ptr159 = 0, $incdec$ptr171 = 0, $incdec$ptr23 = 0; var $incdec$ptr384 = 0, $incdec$ptr411 = 0, $incdec$ptr62 = 0, $isdigit = 0, $isdigit188 = 0, $isdigit190 = 0, $isdigittmp = 0, $isdigittmp$ = 0, $isdigittmp187 = 0, $isdigittmp189 = 0, $l$0 = 0, $l$1227 = 0, $l$2 = 0, $l10n$0 = 0, $l10n$0$phi = 0, $l10n$1 = 0, $l10n$2 = 0, $l10n$3 = 0, $lnot = 0, $lnot$ext = 0; var $mb = 0, $or = 0, $or$cond = 0, $or$cond192 = 0, $or$cond193 = 0, $or$cond195 = 0, $or100 = 0, $or100$fl$0 = 0, $or247 = 0, $p$0 = 0, $p$0$p$0$add270 = 0, $p$1 = 0, $p$2 = 0, $p$2$add323 = 0, $p$2$add323$p$2 = 0, $p$3 = 0, $p$4254 = 0, $p$5 = 0, $pl$0 = 0, $pl$1 = 0; var $pl$2 = 0, $prefix$0 = 0, $prefix$1 = 0, $prefix$2 = 0, $retval$0 = 0, $s = 0, $shl = 0, $shl218 = 0, $shl60 = 0, $shr = 0, $st$0 = 0, $storemerge = 0, $storemerge191 = 0, $sub = 0, $sub$ptr$lhs$cast = 0, $sub$ptr$lhs$cast318 = 0, $sub$ptr$lhs$cast362 = 0, $sub$ptr$lhs$cast432 = 0, $sub$ptr$rhs$cast = 0, $sub$ptr$rhs$cast268 = 0; var $sub$ptr$rhs$cast319 = 0, $sub$ptr$rhs$cast363 = 0, $sub$ptr$rhs$cast433 = 0, $sub$ptr$sub = 0, $sub$ptr$sub269 = 0, $sub$ptr$sub320 = 0, $sub$ptr$sub364 = 0, $sub$ptr$sub434 = 0, $sub$ptr$sub434$p$5 = 0, $sub101 = 0, $sub101$w$0 = 0, $sub135 = 0, $sub165 = 0, $sub173 = 0, $sub176 = 0, $sub390 = 0, $sub49 = 0, $sub49216 = 0, $sub59 = 0, $sub84 = 0; var $t$0 = 0, $t$1 = 0, $tobool = 0, $tobool141 = 0, $tobool179 = 0, $tobool209 = 0, $tobool218 = 0, $tobool25 = 0, $tobool256 = 0, $tobool265 = 0, $tobool28 = 0, $tobool291 = 0, $tobool296 = 0, $tobool315 = 0, $tobool350 = 0, $tobool358 = 0, $tobool381 = 0, $tobool408 = 0, $tobool460 = 0, $tobool463 = 0; var $tobool471 = 0, $tobool483 = 0, $tobool55 = 0, $tobool55220 = 0, $tobool90 = 0, $trunc = 0, $w$0 = 0, $w$1 = 0, $w$2 = 0, $wc = 0, $ws$0229 = 0, $ws$1238 = 0, $xor = 0, $xor450 = 0, $xor458 = 0, $z$0$lcssa = 0, $z$0212 = 0, $z$1 = 0, $z$2 = 0, label = 0; var sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $s = sp + 16|0; $arg = sp; $buf = sp + 24|0; $wc = sp + 8|0; $mb = sp + 20|0; HEAP32[$s>>2] = $fmt; $tobool25 = ($f|0)!=(0|0); $add$ptr206 = ((($buf)) + 40|0); $sub$ptr$lhs$cast318 = $add$ptr206; $add$ptr341 = ((($buf)) + 39|0); $arrayidx371 = ((($wc)) + 4|0); $1 = $fmt;$cnt$0 = 0;$l$0 = 0;$l10n$0 = 0; L1: while(1) { $cmp = ($cnt$0|0)>(-1); do { if ($cmp) { $sub = (2147483647 - ($cnt$0))|0; $cmp1 = ($l$0|0)>($sub|0); if ($cmp1) { $call = (___errno_location()|0); HEAP32[$call>>2] = 75; $cnt$1 = -1; break; } else { $add = (($l$0) + ($cnt$0))|0; $cnt$1 = $add; break; } } else { $cnt$1 = $cnt$0; } } while(0); $0 = HEAP8[$1>>0]|0; $tobool = ($0<<24>>24)==(0); if ($tobool) { label = 86; break; } else { $2 = $0;$3 = $1; } L9: while(1) { switch ($2<<24>>24) { case 37: { $4 = $3;$z$0212 = $3; label = 9; break L9; break; } case 0: { $7 = $3;$z$0$lcssa = $3; break L9; break; } default: { } } $incdec$ptr = ((($3)) + 1|0); HEAP32[$s>>2] = $incdec$ptr; $$pre = HEAP8[$incdec$ptr>>0]|0; $2 = $$pre;$3 = $incdec$ptr; } L12: do { if ((label|0) == 9) { while(1) { label = 0; $arrayidx16 = ((($4)) + 1|0); $5 = HEAP8[$arrayidx16>>0]|0; $cmp18 = ($5<<24>>24)==(37); if (!($cmp18)) { $7 = $4;$z$0$lcssa = $z$0212; break L12; } $incdec$ptr23 = ((($z$0212)) + 1|0); $add$ptr = ((($4)) + 2|0); HEAP32[$s>>2] = $add$ptr; $6 = HEAP8[$add$ptr>>0]|0; $cmp13 = ($6<<24>>24)==(37); if ($cmp13) { $4 = $add$ptr;$z$0212 = $incdec$ptr23; label = 9; } else { $7 = $add$ptr;$z$0$lcssa = $incdec$ptr23; break; } } } } while(0); $sub$ptr$lhs$cast = $z$0$lcssa; $sub$ptr$rhs$cast = $1; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; if ($tobool25) { _out_102($f,$1,$sub$ptr$sub); } $tobool28 = ($sub$ptr$sub|0)==(0); if (!($tobool28)) { $l10n$0$phi = $l10n$0;$1 = $7;$cnt$0 = $cnt$1;$l$0 = $sub$ptr$sub;$l10n$0 = $l10n$0$phi; continue; } $arrayidx31 = ((($7)) + 1|0); $8 = HEAP8[$arrayidx31>>0]|0; $conv32 = $8 << 24 >> 24; $isdigittmp = (($conv32) + -48)|0; $isdigit = ($isdigittmp>>>0)<(10); if ($isdigit) { $arrayidx35 = ((($7)) + 2|0); $9 = HEAP8[$arrayidx35>>0]|0; $cmp37 = ($9<<24>>24)==(36); $add$ptr43 = ((($7)) + 3|0); $add$ptr43$arrayidx31 = $cmp37 ? $add$ptr43 : $arrayidx31; $$l10n$0 = $cmp37 ? 1 : $l10n$0; $isdigittmp$ = $cmp37 ? $isdigittmp : -1; $argpos$0 = $isdigittmp$;$l10n$1 = $$l10n$0;$storemerge = $add$ptr43$arrayidx31; } else { $argpos$0 = -1;$l10n$1 = $l10n$0;$storemerge = $arrayidx31; } HEAP32[$s>>2] = $storemerge; $10 = HEAP8[$storemerge>>0]|0; $conv48215 = $10 << 24 >> 24; $sub49216 = (($conv48215) + -32)|0; $cmp50217 = ($sub49216>>>0)>(31); $shl218 = 1 << $sub49216; $and219 = $shl218 & 75913; $tobool55220 = ($and219|0)==(0); $brmerge221 = $cmp50217 | $tobool55220; if ($brmerge221) { $$lcssa = $10;$14 = $storemerge;$fl$0$lcssa = 0; } else { $11 = $10;$12 = $storemerge;$fl$0222 = 0; while(1) { $conv58 = $11 << 24 >> 24; $sub59 = (($conv58) + -32)|0; $shl60 = 1 << $sub59; $or = $shl60 | $fl$0222; $incdec$ptr62 = ((($12)) + 1|0); HEAP32[$s>>2] = $incdec$ptr62; $13 = HEAP8[$incdec$ptr62>>0]|0; $conv48 = $13 << 24 >> 24; $sub49 = (($conv48) + -32)|0; $cmp50 = ($sub49>>>0)>(31); $shl = 1 << $sub49; $and = $shl & 75913; $tobool55 = ($and|0)==(0); $brmerge = $cmp50 | $tobool55; if ($brmerge) { $$lcssa = $13;$14 = $incdec$ptr62;$fl$0$lcssa = $or; break; } else { $11 = $13;$12 = $incdec$ptr62;$fl$0222 = $or; } } } $cmp65 = ($$lcssa<<24>>24)==(42); if ($cmp65) { $arrayidx68 = ((($14)) + 1|0); $15 = HEAP8[$arrayidx68>>0]|0; $conv69 = $15 << 24 >> 24; $isdigittmp189 = (($conv69) + -48)|0; $isdigit190 = ($isdigittmp189>>>0)<(10); if ($isdigit190) { $arrayidx73 = ((($14)) + 2|0); $16 = HEAP8[$arrayidx73>>0]|0; $cmp75 = ($16<<24>>24)==(36); if ($cmp75) { $arrayidx81 = (($nl_type) + ($isdigittmp189<<2)|0); HEAP32[$arrayidx81>>2] = 10; $17 = HEAP8[$arrayidx68>>0]|0; $conv83 = $17 << 24 >> 24; $sub84 = (($conv83) + -48)|0; $i86 = (($nl_arg) + ($sub84<<3)|0); $18 = $i86; $19 = $18; $20 = HEAP32[$19>>2]|0; $21 = (($18) + 4)|0; $22 = $21; $23 = HEAP32[$22>>2]|0; $add$ptr88 = ((($14)) + 3|0); $l10n$2 = 1;$storemerge191 = $add$ptr88;$w$0 = $20; } else { label = 22; } } else { label = 22; } if ((label|0) == 22) { label = 0; $tobool90 = ($l10n$1|0)==(0); if (!($tobool90)) { $retval$0 = -1; break; } if ($tobool25) { $arglist_current = HEAP32[$ap>>2]|0; $24 = $arglist_current; $25 = ((0) + 4|0); $expanded4 = $25; $expanded = (($expanded4) - 1)|0; $26 = (($24) + ($expanded))|0; $27 = ((0) + 4|0); $expanded8 = $27; $expanded7 = (($expanded8) - 1)|0; $expanded6 = $expanded7 ^ -1; $28 = $26 & $expanded6; $29 = $28; $30 = HEAP32[$29>>2]|0; $arglist_next = ((($29)) + 4|0); HEAP32[$ap>>2] = $arglist_next; $l10n$2 = 0;$storemerge191 = $arrayidx68;$w$0 = $30; } else { $l10n$2 = 0;$storemerge191 = $arrayidx68;$w$0 = 0; } } HEAP32[$s>>2] = $storemerge191; $cmp97 = ($w$0|0)<(0); $or100 = $fl$0$lcssa | 8192; $sub101 = (0 - ($w$0))|0; $or100$fl$0 = $cmp97 ? $or100 : $fl$0$lcssa; $sub101$w$0 = $cmp97 ? $sub101 : $w$0; $32 = $storemerge191;$fl$1 = $or100$fl$0;$l10n$3 = $l10n$2;$w$1 = $sub101$w$0; } else { $call104 = (_getint_103($s)|0); $cmp105 = ($call104|0)<(0); if ($cmp105) { $retval$0 = -1; break; } $$pre248 = HEAP32[$s>>2]|0; $32 = $$pre248;$fl$1 = $fl$0$lcssa;$l10n$3 = $l10n$1;$w$1 = $call104; } $31 = HEAP8[$32>>0]|0; $cmp111 = ($31<<24>>24)==(46); do { if ($cmp111) { $arrayidx114 = ((($32)) + 1|0); $33 = HEAP8[$arrayidx114>>0]|0; $cmp116 = ($33<<24>>24)==(42); if (!($cmp116)) { $incdec$ptr159 = ((($32)) + 1|0); HEAP32[$s>>2] = $incdec$ptr159; $call160 = (_getint_103($s)|0); $$pre249$pre = HEAP32[$s>>2]|0; $$pre249 = $$pre249$pre;$p$0 = $call160; break; } $arrayidx119 = ((($32)) + 2|0); $34 = HEAP8[$arrayidx119>>0]|0; $conv120 = $34 << 24 >> 24; $isdigittmp187 = (($conv120) + -48)|0; $isdigit188 = ($isdigittmp187>>>0)<(10); if ($isdigit188) { $arrayidx124 = ((($32)) + 3|0); $35 = HEAP8[$arrayidx124>>0]|0; $cmp126 = ($35<<24>>24)==(36); if ($cmp126) { $arrayidx132 = (($nl_type) + ($isdigittmp187<<2)|0); HEAP32[$arrayidx132>>2] = 10; $36 = HEAP8[$arrayidx119>>0]|0; $conv134 = $36 << 24 >> 24; $sub135 = (($conv134) + -48)|0; $i137 = (($nl_arg) + ($sub135<<3)|0); $37 = $i137; $38 = $37; $39 = HEAP32[$38>>2]|0; $40 = (($37) + 4)|0; $41 = $40; $42 = HEAP32[$41>>2]|0; $add$ptr139 = ((($32)) + 4|0); HEAP32[$s>>2] = $add$ptr139; $$pre249 = $add$ptr139;$p$0 = $39; break; } } $tobool141 = ($l10n$3|0)==(0); if (!($tobool141)) { $retval$0 = -1; break L1; } if ($tobool25) { $arglist_current2 = HEAP32[$ap>>2]|0; $43 = $arglist_current2; $44 = ((0) + 4|0); $expanded11 = $44; $expanded10 = (($expanded11) - 1)|0; $45 = (($43) + ($expanded10))|0; $46 = ((0) + 4|0); $expanded15 = $46; $expanded14 = (($expanded15) - 1)|0; $expanded13 = $expanded14 ^ -1; $47 = $45 & $expanded13; $48 = $47; $49 = HEAP32[$48>>2]|0; $arglist_next3 = ((($48)) + 4|0); HEAP32[$ap>>2] = $arglist_next3; $cond149 = $49; } else { $cond149 = 0; } HEAP32[$s>>2] = $arrayidx119; $$pre249 = $arrayidx119;$p$0 = $cond149; } else { $$pre249 = $32;$p$0 = -1; } } while(0); $51 = $$pre249;$st$0 = 0; while(1) { $50 = HEAP8[$51>>0]|0; $conv164 = $50 << 24 >> 24; $sub165 = (($conv164) + -65)|0; $cmp166 = ($sub165>>>0)>(57); if ($cmp166) { $retval$0 = -1; break L1; } $incdec$ptr171 = ((($51)) + 1|0); HEAP32[$s>>2] = $incdec$ptr171; $52 = HEAP8[$51>>0]|0; $conv172 = $52 << 24 >> 24; $sub173 = (($conv172) + -65)|0; $arrayidx174 = ((36097 + (($st$0*58)|0)|0) + ($sub173)|0); $53 = HEAP8[$arrayidx174>>0]|0; $conv175 = $53&255; $sub176 = (($conv175) + -1)|0; $cmp177 = ($sub176>>>0)<(8); if ($cmp177) { $51 = $incdec$ptr171;$st$0 = $conv175; } else { break; } } $tobool179 = ($53<<24>>24)==(0); if ($tobool179) { $retval$0 = -1; break; } $cmp182 = ($53<<24>>24)==(19); $cmp185 = ($argpos$0|0)>(-1); do { if ($cmp182) { if ($cmp185) { $retval$0 = -1; break L1; } else { label = 48; } } else { if ($cmp185) { $arrayidx193 = (($nl_type) + ($argpos$0<<2)|0); HEAP32[$arrayidx193>>2] = $conv175; $54 = (($nl_arg) + ($argpos$0<<3)|0); $55 = $54; $56 = $55; $57 = HEAP32[$56>>2]|0; $58 = (($55) + 4)|0; $59 = $58; $60 = HEAP32[$59>>2]|0; $61 = $arg; $62 = $61; HEAP32[$62>>2] = $57; $63 = (($61) + 4)|0; $64 = $63; HEAP32[$64>>2] = $60; label = 48; break; } if (!($tobool25)) { $retval$0 = 0; break L1; } _pop_arg_105($arg,$conv175,$ap); } } while(0); if ((label|0) == 48) { label = 0; if (!($tobool25)) { $1 = $incdec$ptr171;$cnt$0 = $cnt$1;$l$0 = 0;$l10n$0 = $l10n$3; continue; } } $65 = HEAP8[$51>>0]|0; $conv208 = $65 << 24 >> 24; $tobool209 = ($st$0|0)!=(0); $and211 = $conv208 & 15; $cmp212 = ($and211|0)==(3); $or$cond192 = $tobool209 & $cmp212; $and215 = $conv208 & -33; $t$0 = $or$cond192 ? $and215 : $conv208; $and217 = $fl$1 & 8192; $tobool218 = ($and217|0)==(0); $and220 = $fl$1 & -65537; $fl$1$and220 = $tobool218 ? $fl$1 : $and220; L70: do { switch ($t$0|0) { case 110: { $trunc = $st$0&255; switch ($trunc<<24>>24) { case 0: { $72 = HEAP32[$arg>>2]|0; HEAP32[$72>>2] = $cnt$1; $1 = $incdec$ptr171;$cnt$0 = $cnt$1;$l$0 = 0;$l10n$0 = $l10n$3; continue L1; break; } case 1: { $73 = HEAP32[$arg>>2]|0; HEAP32[$73>>2] = $cnt$1; $1 = $incdec$ptr171;$cnt$0 = $cnt$1;$l$0 = 0;$l10n$0 = $l10n$3; continue L1; break; } case 2: { $74 = ($cnt$1|0)<(0); $75 = $74 << 31 >> 31; $76 = HEAP32[$arg>>2]|0; $77 = $76; $78 = $77; HEAP32[$78>>2] = $cnt$1; $79 = (($77) + 4)|0; $80 = $79; HEAP32[$80>>2] = $75; $1 = $incdec$ptr171;$cnt$0 = $cnt$1;$l$0 = 0;$l10n$0 = $l10n$3; continue L1; break; } case 3: { $conv230 = $cnt$1&65535; $81 = HEAP32[$arg>>2]|0; HEAP16[$81>>1] = $conv230; $1 = $incdec$ptr171;$cnt$0 = $cnt$1;$l$0 = 0;$l10n$0 = $l10n$3; continue L1; break; } case 4: { $conv233 = $cnt$1&255; $82 = HEAP32[$arg>>2]|0; HEAP8[$82>>0] = $conv233; $1 = $incdec$ptr171;$cnt$0 = $cnt$1;$l$0 = 0;$l10n$0 = $l10n$3; continue L1; break; } case 6: { $83 = HEAP32[$arg>>2]|0; HEAP32[$83>>2] = $cnt$1; $1 = $incdec$ptr171;$cnt$0 = $cnt$1;$l$0 = 0;$l10n$0 = $l10n$3; continue L1; break; } case 7: { $84 = ($cnt$1|0)<(0); $85 = $84 << 31 >> 31; $86 = HEAP32[$arg>>2]|0; $87 = $86; $88 = $87; HEAP32[$88>>2] = $cnt$1; $89 = (($87) + 4)|0; $90 = $89; HEAP32[$90>>2] = $85; $1 = $incdec$ptr171;$cnt$0 = $cnt$1;$l$0 = 0;$l10n$0 = $l10n$3; continue L1; break; } default: { $1 = $incdec$ptr171;$cnt$0 = $cnt$1;$l$0 = 0;$l10n$0 = $l10n$3; continue L1; } } break; } case 112: { $cmp241 = ($p$0>>>0)>(8); $cond246 = $cmp241 ? $p$0 : 8; $or247 = $fl$1$and220 | 8; $fl$3 = $or247;$p$1 = $cond246;$t$1 = 120; label = 60; break; } case 88: case 120: { $fl$3 = $fl$1$and220;$p$1 = $p$0;$t$1 = $t$0; label = 60; break; } case 111: { $101 = $arg; $102 = $101; $103 = HEAP32[$102>>2]|0; $104 = (($101) + 4)|0; $105 = $104; $106 = HEAP32[$105>>2]|0; $107 = (_fmt_o($103,$106,$add$ptr206)|0); $and264 = $fl$1$and220 & 8; $tobool265 = ($and264|0)==(0); $sub$ptr$rhs$cast268 = $107; $sub$ptr$sub269 = (($sub$ptr$lhs$cast318) - ($sub$ptr$rhs$cast268))|0; $cmp271 = ($p$0|0)>($sub$ptr$sub269|0); $add270 = (($sub$ptr$sub269) + 1)|0; $108 = $tobool265 | $cmp271; $p$0$p$0$add270 = $108 ? $p$0 : $add270; $127 = $103;$129 = $106;$a$0 = $107;$fl$4 = $fl$1$and220;$p$2 = $p$0$p$0$add270;$pl$1 = 0;$prefix$1 = 36561; label = 66; break; } case 105: case 100: { $109 = $arg; $110 = $109; $111 = HEAP32[$110>>2]|0; $112 = (($109) + 4)|0; $113 = $112; $114 = HEAP32[$113>>2]|0; $115 = ($114|0)<(0); if ($115) { $116 = (_i64Subtract(0,0,($111|0),($114|0))|0); $117 = tempRet0; $118 = $arg; $119 = $118; HEAP32[$119>>2] = $116; $120 = (($118) + 4)|0; $121 = $120; HEAP32[$121>>2] = $117; $124 = $116;$125 = $117;$pl$0 = 1;$prefix$0 = 36561; label = 65; break L70; } else { $and290 = $fl$1$and220 & 2048; $tobool291 = ($and290|0)==(0); $and295 = $fl$1$and220 & 1; $tobool296 = ($and295|0)==(0); $$ = $tobool296 ? 36561 : (36563); $$$ = $tobool291 ? $$ : (36562); $122 = $fl$1$and220 & 2049; $123 = ($122|0)!=(0); $$194$ = $123&1; $124 = $111;$125 = $114;$pl$0 = $$194$;$prefix$0 = $$$; label = 65; break L70; } break; } case 117: { $66 = $arg; $67 = $66; $68 = HEAP32[$67>>2]|0; $69 = (($66) + 4)|0; $70 = $69; $71 = HEAP32[$70>>2]|0; $124 = $68;$125 = $71;$pl$0 = 0;$prefix$0 = 36561; label = 65; break; } case 99: { $132 = $arg; $133 = $132; $134 = HEAP32[$133>>2]|0; $135 = (($132) + 4)|0; $136 = $135; $137 = HEAP32[$136>>2]|0; $138 = $134&255; HEAP8[$add$ptr341>>0] = $138; $a$2 = $add$ptr341;$fl$6 = $and220;$p$5 = 1;$pl$2 = 0;$prefix$2 = 36561;$z$2 = $add$ptr206; break; } case 109: { $call345 = (___errno_location()|0); $139 = HEAP32[$call345>>2]|0; $call346 = (_strerror($139)|0); $a$1 = $call346; label = 70; break; } case 115: { $140 = HEAP32[$arg>>2]|0; $tobool350 = ($140|0)!=(0|0); $cond355 = $tobool350 ? $140 : 36571; $a$1 = $cond355; label = 70; break; } case 67: { $141 = $arg; $142 = $141; $143 = HEAP32[$142>>2]|0; $144 = (($141) + 4)|0; $145 = $144; $146 = HEAP32[$145>>2]|0; HEAP32[$wc>>2] = $143; HEAP32[$arrayidx371>>2] = 0; HEAP32[$arg>>2] = $wc; $152 = $wc;$p$4254 = -1; label = 74; break; } case 83: { $$pre250 = HEAP32[$arg>>2]|0; $cmp378226 = ($p$0|0)==(0); if ($cmp378226) { _pad_108($f,32,$w$1,0,$fl$1$and220); $i$0$lcssa257 = 0; label = 83; } else { $152 = $$pre250;$p$4254 = $p$0; label = 74; } break; } case 65: case 71: case 70: case 69: case 97: case 103: case 102: case 101: { $149 = +HEAPF64[$arg>>3]; $call430 = (_fmt_fp($f,$149,$w$1,$p$0,$fl$1$and220,$t$0)|0); $1 = $incdec$ptr171;$cnt$0 = $cnt$1;$l$0 = $call430;$l10n$0 = $l10n$3; continue L1; break; } default: { $a$2 = $1;$fl$6 = $fl$1$and220;$p$5 = $p$0;$pl$2 = 0;$prefix$2 = 36561;$z$2 = $add$ptr206; } } } while(0); L94: do { if ((label|0) == 60) { label = 0; $91 = $arg; $92 = $91; $93 = HEAP32[$92>>2]|0; $94 = (($91) + 4)|0; $95 = $94; $96 = HEAP32[$95>>2]|0; $and250 = $t$1 & 32; $97 = (_fmt_x($93,$96,$add$ptr206,$and250)|0); $98 = ($93|0)==(0); $99 = ($96|0)==(0); $100 = $98 & $99; $and255 = $fl$3 & 8; $tobool256 = ($and255|0)==(0); $or$cond193 = $tobool256 | $100; $shr = $t$1 >> 4; $add$ptr258 = (36561 + ($shr)|0); $$add$ptr258 = $or$cond193 ? 36561 : $add$ptr258; $$197 = $or$cond193 ? 0 : 2; $127 = $93;$129 = $96;$a$0 = $97;$fl$4 = $fl$3;$p$2 = $p$1;$pl$1 = $$197;$prefix$1 = $$add$ptr258; label = 66; } else if ((label|0) == 65) { label = 0; $126 = (_fmt_u($124,$125,$add$ptr206)|0); $127 = $124;$129 = $125;$a$0 = $126;$fl$4 = $fl$1$and220;$p$2 = $p$0;$pl$1 = $pl$0;$prefix$1 = $prefix$0; label = 66; } else if ((label|0) == 70) { label = 0; $call357 = (_memchr($a$1,0,$p$0)|0); $tobool358 = ($call357|0)==(0|0); $sub$ptr$lhs$cast362 = $call357; $sub$ptr$rhs$cast363 = $a$1; $sub$ptr$sub364 = (($sub$ptr$lhs$cast362) - ($sub$ptr$rhs$cast363))|0; $add$ptr360 = (($a$1) + ($p$0)|0); $p$3 = $tobool358 ? $p$0 : $sub$ptr$sub364; $z$1 = $tobool358 ? $add$ptr360 : $call357; $a$2 = $a$1;$fl$6 = $and220;$p$5 = $p$3;$pl$2 = 0;$prefix$2 = 36561;$z$2 = $z$1; } else if ((label|0) == 74) { label = 0; $i$0228 = 0;$l$1227 = 0;$ws$0229 = $152; while(1) { $147 = HEAP32[$ws$0229>>2]|0; $tobool381 = ($147|0)==(0); if ($tobool381) { $i$0$lcssa = $i$0228;$l$2 = $l$1227; break; } $call385 = (_wctomb($mb,$147)|0); $cmp386 = ($call385|0)<(0); $sub390 = (($p$4254) - ($i$0228))|0; $cmp391 = ($call385>>>0)>($sub390>>>0); $or$cond195 = $cmp386 | $cmp391; if ($or$cond195) { $i$0$lcssa = $i$0228;$l$2 = $call385; break; } $incdec$ptr384 = ((($ws$0229)) + 4|0); $add396 = (($call385) + ($i$0228))|0; $cmp378 = ($p$4254>>>0)>($add396>>>0); if ($cmp378) { $i$0228 = $add396;$l$1227 = $call385;$ws$0229 = $incdec$ptr384; } else { $i$0$lcssa = $add396;$l$2 = $call385; break; } } $cmp398 = ($l$2|0)<(0); if ($cmp398) { $retval$0 = -1; break L1; } _pad_108($f,32,$w$1,$i$0$lcssa,$fl$1$and220); $cmp405236 = ($i$0$lcssa|0)==(0); if ($cmp405236) { $i$0$lcssa257 = 0; label = 83; } else { $i$1237 = 0;$ws$1238 = $152; while(1) { $148 = HEAP32[$ws$1238>>2]|0; $tobool408 = ($148|0)==(0); if ($tobool408) { $i$0$lcssa257 = $i$0$lcssa; label = 83; break L94; } $call412 = (_wctomb($mb,$148)|0); $add413 = (($call412) + ($i$1237))|0; $cmp414 = ($add413|0)>($i$0$lcssa|0); if ($cmp414) { $i$0$lcssa257 = $i$0$lcssa; label = 83; break L94; } $incdec$ptr411 = ((($ws$1238)) + 4|0); _out_102($f,$mb,$call412); $cmp405 = ($add413>>>0)<($i$0$lcssa>>>0); if ($cmp405) { $i$1237 = $add413;$ws$1238 = $incdec$ptr411; } else { $i$0$lcssa257 = $i$0$lcssa; label = 83; break; } } } } } while(0); if ((label|0) == 66) { label = 0; $cmp307 = ($p$2|0)>(-1); $and310 = $fl$4 & -65537; $and310$fl$4 = $cmp307 ? $and310 : $fl$4; $128 = ($127|0)!=(0); $130 = ($129|0)!=(0); $131 = $128 | $130; $tobool315 = ($p$2|0)!=(0); $or$cond = $tobool315 | $131; $sub$ptr$rhs$cast319 = $a$0; $sub$ptr$sub320 = (($sub$ptr$lhs$cast318) - ($sub$ptr$rhs$cast319))|0; $lnot = $131 ^ 1; $lnot$ext = $lnot&1; $add323 = (($sub$ptr$sub320) + ($lnot$ext))|0; $cmp324 = ($p$2|0)>($add323|0); $p$2$add323 = $cmp324 ? $p$2 : $add323; $p$2$add323$p$2 = $or$cond ? $p$2$add323 : $p$2; $a$0$add$ptr206 = $or$cond ? $a$0 : $add$ptr206; $a$2 = $a$0$add$ptr206;$fl$6 = $and310$fl$4;$p$5 = $p$2$add323$p$2;$pl$2 = $pl$1;$prefix$2 = $prefix$1;$z$2 = $add$ptr206; } else if ((label|0) == 83) { label = 0; $xor = $fl$1$and220 ^ 8192; _pad_108($f,32,$w$1,$i$0$lcssa257,$xor); $cmp422 = ($w$1|0)>($i$0$lcssa257|0); $cond427 = $cmp422 ? $w$1 : $i$0$lcssa257; $1 = $incdec$ptr171;$cnt$0 = $cnt$1;$l$0 = $cond427;$l10n$0 = $l10n$3; continue; } $sub$ptr$lhs$cast432 = $z$2; $sub$ptr$rhs$cast433 = $a$2; $sub$ptr$sub434 = (($sub$ptr$lhs$cast432) - ($sub$ptr$rhs$cast433))|0; $cmp435 = ($p$5|0)<($sub$ptr$sub434|0); $sub$ptr$sub434$p$5 = $cmp435 ? $sub$ptr$sub434 : $p$5; $add442 = (($sub$ptr$sub434$p$5) + ($pl$2))|0; $cmp443 = ($w$1|0)<($add442|0); $w$2 = $cmp443 ? $add442 : $w$1; _pad_108($f,32,$w$2,$add442,$fl$6); _out_102($f,$prefix$2,$pl$2); $xor450 = $fl$6 ^ 65536; _pad_108($f,48,$w$2,$add442,$xor450); _pad_108($f,48,$sub$ptr$sub434$p$5,$sub$ptr$sub434,0); _out_102($f,$a$2,$sub$ptr$sub434); $xor458 = $fl$6 ^ 8192; _pad_108($f,32,$w$2,$add442,$xor458); $1 = $incdec$ptr171;$cnt$0 = $cnt$1;$l$0 = $w$2;$l10n$0 = $l10n$3; } L113: do { if ((label|0) == 86) { $tobool460 = ($f|0)==(0|0); if ($tobool460) { $tobool463 = ($l10n$0|0)==(0); if ($tobool463) { $retval$0 = 0; } else { $i$2210 = 1; while(1) { $arrayidx470 = (($nl_type) + ($i$2210<<2)|0); $150 = HEAP32[$arrayidx470>>2]|0; $tobool471 = ($150|0)==(0); if ($tobool471) { $i$2$lcssa = $i$2210; break; } $add$ptr474 = (($nl_arg) + ($i$2210<<3)|0); _pop_arg_105($add$ptr474,$150,$ap); $inc = (($i$2210) + 1)|0; $cmp467 = ($i$2210|0)<(9); if ($cmp467) { $i$2210 = $inc; } else { $i$2$lcssa = $inc; break; } } $cmp479206 = ($i$2$lcssa|0)<(10); if ($cmp479206) { $i$3207 = $i$2$lcssa; while(1) { $arrayidx482 = (($nl_type) + ($i$3207<<2)|0); $151 = HEAP32[$arrayidx482>>2]|0; $tobool483 = ($151|0)==(0); if (!($tobool483)) { $retval$0 = -1; break L113; } $inc489 = (($i$3207) + 1)|0; $cmp479 = ($i$3207|0)<(9); if ($cmp479) { $i$3207 = $inc489; } else { $retval$0 = 1; break; } } } else { $retval$0 = 1; } } } else { $retval$0 = $cnt$1; } } } while(0); STACKTOP = sp;return ($retval$0|0); } function ___lockfile($f) { $f = $f|0; var label = 0, sp = 0; sp = STACKTOP; return 0; } function ___unlockfile($f) { $f = $f|0; var label = 0, sp = 0; sp = STACKTOP; return; } function _out_102($f,$s,$l) { $f = $f|0; $s = $s|0; $l = $l|0; var $0 = 0, $and = 0, $tobool = 0, label = 0, sp = 0; sp = STACKTOP; $0 = HEAP32[$f>>2]|0; $and = $0 & 32; $tobool = ($and|0)==(0); if ($tobool) { (___fwritex($s,$l,$f)|0); } return; } function _getint_103($s) { $s = $s|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $add = 0, $conv = 0, $conv4 = 0, $i$0$lcssa = 0, $i$07 = 0, $incdec$ptr = 0, $isdigit = 0, $isdigit6 = 0, $isdigittmp = 0, $isdigittmp5 = 0, $isdigittmp8 = 0, $mul = 0, label = 0, sp = 0; sp = STACKTOP; $0 = HEAP32[$s>>2]|0; $1 = HEAP8[$0>>0]|0; $conv4 = $1 << 24 >> 24; $isdigittmp5 = (($conv4) + -48)|0; $isdigit6 = ($isdigittmp5>>>0)<(10); if ($isdigit6) { $2 = $0;$i$07 = 0;$isdigittmp8 = $isdigittmp5; while(1) { $mul = ($i$07*10)|0; $add = (($isdigittmp8) + ($mul))|0; $incdec$ptr = ((($2)) + 1|0); HEAP32[$s>>2] = $incdec$ptr; $3 = HEAP8[$incdec$ptr>>0]|0; $conv = $3 << 24 >> 24; $isdigittmp = (($conv) + -48)|0; $isdigit = ($isdigittmp>>>0)<(10); if ($isdigit) { $2 = $incdec$ptr;$i$07 = $add;$isdigittmp8 = $isdigittmp; } else { $i$0$lcssa = $add; break; } } } else { $i$0$lcssa = 0; } return ($i$0$lcssa|0); } function _pop_arg_105($arg,$type,$ap) { $arg = $arg|0; $type = $type|0; $ap = $ap|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0.0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0.0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0; var $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0; var $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0; var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0; var $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0; var $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $arglist_current = 0, $arglist_current11 = 0, $arglist_current14 = 0, $arglist_current17 = 0, $arglist_current2 = 0, $arglist_current20 = 0, $arglist_current23 = 0, $arglist_current26 = 0, $arglist_current5 = 0; var $arglist_current8 = 0, $arglist_next = 0, $arglist_next12 = 0, $arglist_next15 = 0, $arglist_next18 = 0, $arglist_next21 = 0, $arglist_next24 = 0, $arglist_next27 = 0, $arglist_next3 = 0, $arglist_next6 = 0, $arglist_next9 = 0, $cmp = 0, $conv16 = 0, $conv22$mask = 0, $conv28 = 0, $conv34$mask = 0, $expanded = 0, $expanded28 = 0, $expanded30 = 0, $expanded31 = 0; var $expanded32 = 0, $expanded34 = 0, $expanded35 = 0, $expanded37 = 0, $expanded38 = 0, $expanded39 = 0, $expanded41 = 0, $expanded42 = 0, $expanded44 = 0, $expanded45 = 0, $expanded46 = 0, $expanded48 = 0, $expanded49 = 0, $expanded51 = 0, $expanded52 = 0, $expanded53 = 0, $expanded55 = 0, $expanded56 = 0, $expanded58 = 0, $expanded59 = 0; var $expanded60 = 0, $expanded62 = 0, $expanded63 = 0, $expanded65 = 0, $expanded66 = 0, $expanded67 = 0, $expanded69 = 0, $expanded70 = 0, $expanded72 = 0, $expanded73 = 0, $expanded74 = 0, $expanded76 = 0, $expanded77 = 0, $expanded79 = 0, $expanded80 = 0, $expanded81 = 0, $expanded83 = 0, $expanded84 = 0, $expanded86 = 0, $expanded87 = 0; var $expanded88 = 0, $expanded90 = 0, $expanded91 = 0, $expanded93 = 0, $expanded94 = 0, $expanded95 = 0, label = 0, sp = 0; sp = STACKTOP; $cmp = ($type>>>0)>(20); L1: do { if (!($cmp)) { do { switch ($type|0) { case 9: { $arglist_current = HEAP32[$ap>>2]|0; $0 = $arglist_current; $1 = ((0) + 4|0); $expanded28 = $1; $expanded = (($expanded28) - 1)|0; $2 = (($0) + ($expanded))|0; $3 = ((0) + 4|0); $expanded32 = $3; $expanded31 = (($expanded32) - 1)|0; $expanded30 = $expanded31 ^ -1; $4 = $2 & $expanded30; $5 = $4; $6 = HEAP32[$5>>2]|0; $arglist_next = ((($5)) + 4|0); HEAP32[$ap>>2] = $arglist_next; HEAP32[$arg>>2] = $6; break L1; break; } case 10: { $arglist_current2 = HEAP32[$ap>>2]|0; $7 = $arglist_current2; $8 = ((0) + 4|0); $expanded35 = $8; $expanded34 = (($expanded35) - 1)|0; $9 = (($7) + ($expanded34))|0; $10 = ((0) + 4|0); $expanded39 = $10; $expanded38 = (($expanded39) - 1)|0; $expanded37 = $expanded38 ^ -1; $11 = $9 & $expanded37; $12 = $11; $13 = HEAP32[$12>>2]|0; $arglist_next3 = ((($12)) + 4|0); HEAP32[$ap>>2] = $arglist_next3; $14 = ($13|0)<(0); $15 = $14 << 31 >> 31; $16 = $arg; $17 = $16; HEAP32[$17>>2] = $13; $18 = (($16) + 4)|0; $19 = $18; HEAP32[$19>>2] = $15; break L1; break; } case 11: { $arglist_current5 = HEAP32[$ap>>2]|0; $20 = $arglist_current5; $21 = ((0) + 4|0); $expanded42 = $21; $expanded41 = (($expanded42) - 1)|0; $22 = (($20) + ($expanded41))|0; $23 = ((0) + 4|0); $expanded46 = $23; $expanded45 = (($expanded46) - 1)|0; $expanded44 = $expanded45 ^ -1; $24 = $22 & $expanded44; $25 = $24; $26 = HEAP32[$25>>2]|0; $arglist_next6 = ((($25)) + 4|0); HEAP32[$ap>>2] = $arglist_next6; $27 = $arg; $28 = $27; HEAP32[$28>>2] = $26; $29 = (($27) + 4)|0; $30 = $29; HEAP32[$30>>2] = 0; break L1; break; } case 12: { $arglist_current8 = HEAP32[$ap>>2]|0; $31 = $arglist_current8; $32 = ((0) + 8|0); $expanded49 = $32; $expanded48 = (($expanded49) - 1)|0; $33 = (($31) + ($expanded48))|0; $34 = ((0) + 8|0); $expanded53 = $34; $expanded52 = (($expanded53) - 1)|0; $expanded51 = $expanded52 ^ -1; $35 = $33 & $expanded51; $36 = $35; $37 = $36; $38 = $37; $39 = HEAP32[$38>>2]|0; $40 = (($37) + 4)|0; $41 = $40; $42 = HEAP32[$41>>2]|0; $arglist_next9 = ((($36)) + 8|0); HEAP32[$ap>>2] = $arglist_next9; $43 = $arg; $44 = $43; HEAP32[$44>>2] = $39; $45 = (($43) + 4)|0; $46 = $45; HEAP32[$46>>2] = $42; break L1; break; } case 13: { $arglist_current11 = HEAP32[$ap>>2]|0; $47 = $arglist_current11; $48 = ((0) + 4|0); $expanded56 = $48; $expanded55 = (($expanded56) - 1)|0; $49 = (($47) + ($expanded55))|0; $50 = ((0) + 4|0); $expanded60 = $50; $expanded59 = (($expanded60) - 1)|0; $expanded58 = $expanded59 ^ -1; $51 = $49 & $expanded58; $52 = $51; $53 = HEAP32[$52>>2]|0; $arglist_next12 = ((($52)) + 4|0); HEAP32[$ap>>2] = $arglist_next12; $conv16 = $53&65535; $54 = $conv16 << 16 >> 16; $55 = ($54|0)<(0); $56 = $55 << 31 >> 31; $57 = $arg; $58 = $57; HEAP32[$58>>2] = $54; $59 = (($57) + 4)|0; $60 = $59; HEAP32[$60>>2] = $56; break L1; break; } case 14: { $arglist_current14 = HEAP32[$ap>>2]|0; $61 = $arglist_current14; $62 = ((0) + 4|0); $expanded63 = $62; $expanded62 = (($expanded63) - 1)|0; $63 = (($61) + ($expanded62))|0; $64 = ((0) + 4|0); $expanded67 = $64; $expanded66 = (($expanded67) - 1)|0; $expanded65 = $expanded66 ^ -1; $65 = $63 & $expanded65; $66 = $65; $67 = HEAP32[$66>>2]|0; $arglist_next15 = ((($66)) + 4|0); HEAP32[$ap>>2] = $arglist_next15; $conv22$mask = $67 & 65535; $68 = $arg; $69 = $68; HEAP32[$69>>2] = $conv22$mask; $70 = (($68) + 4)|0; $71 = $70; HEAP32[$71>>2] = 0; break L1; break; } case 15: { $arglist_current17 = HEAP32[$ap>>2]|0; $72 = $arglist_current17; $73 = ((0) + 4|0); $expanded70 = $73; $expanded69 = (($expanded70) - 1)|0; $74 = (($72) + ($expanded69))|0; $75 = ((0) + 4|0); $expanded74 = $75; $expanded73 = (($expanded74) - 1)|0; $expanded72 = $expanded73 ^ -1; $76 = $74 & $expanded72; $77 = $76; $78 = HEAP32[$77>>2]|0; $arglist_next18 = ((($77)) + 4|0); HEAP32[$ap>>2] = $arglist_next18; $conv28 = $78&255; $79 = $conv28 << 24 >> 24; $80 = ($79|0)<(0); $81 = $80 << 31 >> 31; $82 = $arg; $83 = $82; HEAP32[$83>>2] = $79; $84 = (($82) + 4)|0; $85 = $84; HEAP32[$85>>2] = $81; break L1; break; } case 16: { $arglist_current20 = HEAP32[$ap>>2]|0; $86 = $arglist_current20; $87 = ((0) + 4|0); $expanded77 = $87; $expanded76 = (($expanded77) - 1)|0; $88 = (($86) + ($expanded76))|0; $89 = ((0) + 4|0); $expanded81 = $89; $expanded80 = (($expanded81) - 1)|0; $expanded79 = $expanded80 ^ -1; $90 = $88 & $expanded79; $91 = $90; $92 = HEAP32[$91>>2]|0; $arglist_next21 = ((($91)) + 4|0); HEAP32[$ap>>2] = $arglist_next21; $conv34$mask = $92 & 255; $93 = $arg; $94 = $93; HEAP32[$94>>2] = $conv34$mask; $95 = (($93) + 4)|0; $96 = $95; HEAP32[$96>>2] = 0; break L1; break; } case 17: { $arglist_current23 = HEAP32[$ap>>2]|0; $97 = $arglist_current23; $98 = ((0) + 8|0); $expanded84 = $98; $expanded83 = (($expanded84) - 1)|0; $99 = (($97) + ($expanded83))|0; $100 = ((0) + 8|0); $expanded88 = $100; $expanded87 = (($expanded88) - 1)|0; $expanded86 = $expanded87 ^ -1; $101 = $99 & $expanded86; $102 = $101; $103 = +HEAPF64[$102>>3]; $arglist_next24 = ((($102)) + 8|0); HEAP32[$ap>>2] = $arglist_next24; HEAPF64[$arg>>3] = $103; break L1; break; } case 18: { $arglist_current26 = HEAP32[$ap>>2]|0; $104 = $arglist_current26; $105 = ((0) + 8|0); $expanded91 = $105; $expanded90 = (($expanded91) - 1)|0; $106 = (($104) + ($expanded90))|0; $107 = ((0) + 8|0); $expanded95 = $107; $expanded94 = (($expanded95) - 1)|0; $expanded93 = $expanded94 ^ -1; $108 = $106 & $expanded93; $109 = $108; $110 = +HEAPF64[$109>>3]; $arglist_next27 = ((($109)) + 8|0); HEAP32[$ap>>2] = $arglist_next27; HEAPF64[$arg>>3] = $110; break L1; break; } default: { break L1; } } } while(0); } } while(0); return; } function _fmt_x($0,$1,$s,$lower) { $0 = $0|0; $1 = $1|0; $s = $s|0; $lower = $lower|0; var $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $arrayidx = 0, $conv1 = 0, $conv4 = 0, $idxprom = 0, $incdec$ptr = 0, $or = 0, $s$addr$0$lcssa = 0, $s$addr$06 = 0, label = 0; var sp = 0; sp = STACKTOP; $2 = ($0|0)==(0); $3 = ($1|0)==(0); $4 = $2 & $3; if ($4) { $s$addr$0$lcssa = $s; } else { $5 = $0;$7 = $1;$s$addr$06 = $s; while(1) { $idxprom = $5 & 15; $arrayidx = (36613 + ($idxprom)|0); $6 = HEAP8[$arrayidx>>0]|0; $conv4 = $6&255; $or = $conv4 | $lower; $conv1 = $or&255; $incdec$ptr = ((($s$addr$06)) + -1|0); HEAP8[$incdec$ptr>>0] = $conv1; $8 = (_bitshift64Lshr(($5|0),($7|0),4)|0); $9 = tempRet0; $10 = ($8|0)==(0); $11 = ($9|0)==(0); $12 = $10 & $11; if ($12) { $s$addr$0$lcssa = $incdec$ptr; break; } else { $5 = $8;$7 = $9;$s$addr$06 = $incdec$ptr; } } } return ($s$addr$0$lcssa|0); } function _fmt_o($0,$1,$s) { $0 = $0|0; $1 = $1|0; $s = $s|0; var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $conv = 0, $incdec$ptr = 0, $s$addr$0$lcssa = 0, $s$addr$06 = 0, label = 0, sp = 0; sp = STACKTOP; $2 = ($0|0)==(0); $3 = ($1|0)==(0); $4 = $2 & $3; if ($4) { $s$addr$0$lcssa = $s; } else { $6 = $0;$8 = $1;$s$addr$06 = $s; while(1) { $5 = $6&255; $7 = $5 & 7; $conv = $7 | 48; $incdec$ptr = ((($s$addr$06)) + -1|0); HEAP8[$incdec$ptr>>0] = $conv; $9 = (_bitshift64Lshr(($6|0),($8|0),3)|0); $10 = tempRet0; $11 = ($9|0)==(0); $12 = ($10|0)==(0); $13 = $11 & $12; if ($13) { $s$addr$0$lcssa = $incdec$ptr; break; } else { $6 = $9;$8 = $10;$s$addr$06 = $incdec$ptr; } } } return ($s$addr$0$lcssa|0); } function _fmt_u($0,$1,$s) { $0 = $0|0; $1 = $1|0; $s = $s|0; var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add5 = 0, $conv = 0; var $conv6 = 0, $div9 = 0, $incdec$ptr = 0, $incdec$ptr7 = 0, $rem4 = 0, $s$addr$0$lcssa = 0, $s$addr$013 = 0, $s$addr$1$lcssa = 0, $s$addr$19 = 0, $tobool8 = 0, $x$addr$0$lcssa$off0 = 0, $y$010 = 0, label = 0, sp = 0; sp = STACKTOP; $2 = ($1>>>0)>(0); $3 = ($0>>>0)>(4294967295); $4 = ($1|0)==(0); $5 = $4 & $3; $6 = $2 | $5; if ($6) { $7 = $0;$8 = $1;$s$addr$013 = $s; while(1) { $9 = (___uremdi3(($7|0),($8|0),10,0)|0); $10 = tempRet0; $11 = $9&255; $conv = $11 | 48; $incdec$ptr = ((($s$addr$013)) + -1|0); HEAP8[$incdec$ptr>>0] = $conv; $12 = (___udivdi3(($7|0),($8|0),10,0)|0); $13 = tempRet0; $14 = ($8>>>0)>(9); $15 = ($7>>>0)>(4294967295); $16 = ($8|0)==(9); $17 = $16 & $15; $18 = $14 | $17; if ($18) { $7 = $12;$8 = $13;$s$addr$013 = $incdec$ptr; } else { break; } } $s$addr$0$lcssa = $incdec$ptr;$x$addr$0$lcssa$off0 = $12; } else { $s$addr$0$lcssa = $s;$x$addr$0$lcssa$off0 = $0; } $tobool8 = ($x$addr$0$lcssa$off0|0)==(0); if ($tobool8) { $s$addr$1$lcssa = $s$addr$0$lcssa; } else { $s$addr$19 = $s$addr$0$lcssa;$y$010 = $x$addr$0$lcssa$off0; while(1) { $rem4 = (($y$010>>>0) % 10)&-1; $add5 = $rem4 | 48; $conv6 = $add5&255; $incdec$ptr7 = ((($s$addr$19)) + -1|0); HEAP8[$incdec$ptr7>>0] = $conv6; $div9 = (($y$010>>>0) / 10)&-1; $19 = ($y$010>>>0)<(10); if ($19) { $s$addr$1$lcssa = $incdec$ptr7; break; } else { $s$addr$19 = $incdec$ptr7;$y$010 = $div9; } } } return ($s$addr$1$lcssa|0); } function _strerror($e) { $e = $e|0; var $0 = 0, $call = 0, $call1 = 0, $locale = 0, label = 0, sp = 0; sp = STACKTOP; $call = (___pthread_self_822()|0); $locale = ((($call)) + 188|0); $0 = HEAP32[$locale>>2]|0; $call1 = (___strerror_l($e,$0)|0); return ($call1|0); } function _memchr($src,$c,$n) { $src = $src|0; $c = $c|0; $n = $n|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $and = 0, $and15 = 0, $and16 = 0, $and39 = 0, $cmp = 0, $cmp11 = 0, $cmp1132 = 0, $cmp28 = 0, $cmp8 = 0, $cond = 0, $conv1 = 0, $dec = 0; var $dec34 = 0, $incdec$ptr = 0, $incdec$ptr21 = 0, $incdec$ptr33 = 0, $mul = 0, $n$addr$0$lcssa = 0, $n$addr$0$lcssa52 = 0, $n$addr$043 = 0, $n$addr$1$lcssa = 0, $n$addr$133 = 0, $n$addr$227 = 0, $n$addr$3 = 0, $neg = 0, $or$cond = 0, $or$cond42 = 0, $s$0$lcssa = 0, $s$0$lcssa53 = 0, $s$044 = 0, $s$128 = 0, $s$2 = 0; var $sub = 0, $sub22 = 0, $tobool = 0, $tobool17 = 0, $tobool2 = 0, $tobool2$lcssa = 0, $tobool241 = 0, $tobool25 = 0, $tobool2526 = 0, $tobool36 = 0, $tobool40 = 0, $w$0$lcssa = 0, $w$034 = 0, $xor = 0, label = 0, sp = 0; sp = STACKTOP; $conv1 = $c & 255; $0 = $src; $and39 = $0 & 3; $tobool40 = ($and39|0)!=(0); $tobool241 = ($n|0)!=(0); $or$cond42 = $tobool241 & $tobool40; L1: do { if ($or$cond42) { $1 = $c&255; $n$addr$043 = $n;$s$044 = $src; while(1) { $2 = HEAP8[$s$044>>0]|0; $cmp = ($2<<24>>24)==($1<<24>>24); if ($cmp) { $n$addr$0$lcssa52 = $n$addr$043;$s$0$lcssa53 = $s$044; label = 6; break L1; } $incdec$ptr = ((($s$044)) + 1|0); $dec = (($n$addr$043) + -1)|0; $3 = $incdec$ptr; $and = $3 & 3; $tobool = ($and|0)!=(0); $tobool2 = ($dec|0)!=(0); $or$cond = $tobool2 & $tobool; if ($or$cond) { $n$addr$043 = $dec;$s$044 = $incdec$ptr; } else { $n$addr$0$lcssa = $dec;$s$0$lcssa = $incdec$ptr;$tobool2$lcssa = $tobool2; label = 5; break; } } } else { $n$addr$0$lcssa = $n;$s$0$lcssa = $src;$tobool2$lcssa = $tobool241; label = 5; } } while(0); if ((label|0) == 5) { if ($tobool2$lcssa) { $n$addr$0$lcssa52 = $n$addr$0$lcssa;$s$0$lcssa53 = $s$0$lcssa; label = 6; } else { $n$addr$3 = 0;$s$2 = $s$0$lcssa; } } L8: do { if ((label|0) == 6) { $4 = HEAP8[$s$0$lcssa53>>0]|0; $5 = $c&255; $cmp8 = ($4<<24>>24)==($5<<24>>24); if ($cmp8) { $n$addr$3 = $n$addr$0$lcssa52;$s$2 = $s$0$lcssa53; } else { $mul = Math_imul($conv1, 16843009)|0; $cmp1132 = ($n$addr$0$lcssa52>>>0)>(3); L11: do { if ($cmp1132) { $n$addr$133 = $n$addr$0$lcssa52;$w$034 = $s$0$lcssa53; while(1) { $6 = HEAP32[$w$034>>2]|0; $xor = $6 ^ $mul; $sub = (($xor) + -16843009)|0; $neg = $xor & -2139062144; $and15 = $neg ^ -2139062144; $and16 = $and15 & $sub; $tobool17 = ($and16|0)==(0); if (!($tobool17)) { break; } $incdec$ptr21 = ((($w$034)) + 4|0); $sub22 = (($n$addr$133) + -4)|0; $cmp11 = ($sub22>>>0)>(3); if ($cmp11) { $n$addr$133 = $sub22;$w$034 = $incdec$ptr21; } else { $n$addr$1$lcssa = $sub22;$w$0$lcssa = $incdec$ptr21; label = 11; break L11; } } $n$addr$227 = $n$addr$133;$s$128 = $w$034; } else { $n$addr$1$lcssa = $n$addr$0$lcssa52;$w$0$lcssa = $s$0$lcssa53; label = 11; } } while(0); if ((label|0) == 11) { $tobool2526 = ($n$addr$1$lcssa|0)==(0); if ($tobool2526) { $n$addr$3 = 0;$s$2 = $w$0$lcssa; break; } else { $n$addr$227 = $n$addr$1$lcssa;$s$128 = $w$0$lcssa; } } while(1) { $7 = HEAP8[$s$128>>0]|0; $cmp28 = ($7<<24>>24)==($5<<24>>24); if ($cmp28) { $n$addr$3 = $n$addr$227;$s$2 = $s$128; break L8; } $incdec$ptr33 = ((($s$128)) + 1|0); $dec34 = (($n$addr$227) + -1)|0; $tobool25 = ($dec34|0)==(0); if ($tobool25) { $n$addr$3 = 0;$s$2 = $incdec$ptr33; break; } else { $n$addr$227 = $dec34;$s$128 = $incdec$ptr33; } } } } } while(0); $tobool36 = ($n$addr$3|0)!=(0); $cond = $tobool36 ? $s$2 : 0; return ($cond|0); } function _pad_108($f,$c,$w,$l,$fl) { $f = $f|0; $c = $c|0; $w = $w|0; $l = $l|0; $fl = $fl|0; var $0 = 0, $1 = 0, $2 = 0, $and = 0, $cmp = 0, $cmp3 = 0, $cmp38 = 0, $cond = 0, $l$addr$0$lcssa = 0, $l$addr$09 = 0, $or$cond = 0, $pad = 0, $sub = 0, $sub6 = 0, $tobool = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 256|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(256|0); $pad = sp; $and = $fl & 73728; $tobool = ($and|0)==(0); $cmp = ($w|0)>($l|0); $or$cond = $cmp & $tobool; if ($or$cond) { $sub = (($w) - ($l))|0; $0 = ($sub>>>0)<(256); $cond = $0 ? $sub : 256; _memset(($pad|0),($c|0),($cond|0))|0; $cmp38 = ($sub>>>0)>(255); if ($cmp38) { $1 = (($w) - ($l))|0; $l$addr$09 = $sub; while(1) { _out_102($f,$pad,256); $sub6 = (($l$addr$09) + -256)|0; $cmp3 = ($sub6>>>0)>(255); if ($cmp3) { $l$addr$09 = $sub6; } else { break; } } $2 = $1 & 255; $l$addr$0$lcssa = $2; } else { $l$addr$0$lcssa = $sub; } _out_102($f,$pad,$l$addr$0$lcssa); } STACKTOP = sp;return; } function _wctomb($s,$wc) { $s = $s|0; $wc = $wc|0; var $call = 0, $retval$0 = 0, $tobool = 0, label = 0, sp = 0; sp = STACKTOP; $tobool = ($s|0)==(0|0); if ($tobool) { $retval$0 = 0; } else { $call = (_wcrtomb($s,$wc,0)|0); $retval$0 = $call; } return ($retval$0|0); } function _fmt_fp($f,$y,$w,$p,$fl,$t) { $f = $f|0; $y = +$y; $w = $w|0; $p = $p|0; $fl = $fl|0; $t = $t|0; var $$ = 0, $$$ = 0, $$$405 = 0.0, $$394$ = 0, $$396 = 0.0, $$405 = 0.0, $$p = 0, $$p$inc468 = 0, $$pr = 0, $$pr406 = 0, $$pre = 0, $$pre486 = 0, $$pre487 = 0, $$pre489 = 0, $$sub514 = 0, $$sub562 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0; var $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0; var $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0; var $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0; var $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $8 = 0, $9 = 0, $a$1$lcssa = 0, $a$1476 = 0, $a$2$ph = 0, $a$3$lcssa = 0, $a$3466 = 0, $a$5$lcssa = 0, $a$5449 = 0, $a$6 = 0; var $a$8 = 0, $a$9$ph = 0, $add = 0, $add$ptr213 = 0, $add$ptr311 = 0, $add$ptr311$z$4 = 0, $add$ptr354 = 0, $add$ptr358 = 0, $add$ptr373 = 0, $add$ptr442 = 0, $add$ptr442$z$3 = 0, $add$ptr65 = 0, $add$ptr671 = 0, $add$ptr742 = 0, $add$ptr756 = 0, $add113 = 0, $add150 = 0, $add163 = 0, $add165 = 0, $add273 = 0; var $add275 = 0, $add284 = 0, $add313 = 0, $add355 = 0, $add410 = 0.0, $add414 = 0, $add477$neg = 0, $add561 = 0, $add608 = 0, $add612 = 0, $add620 = 0, $add653 = 0, $add653$sink402 = 0, $add67 = 0, $add737 = 0, $add810 = 0, $add87 = 0.0, $add90 = 0.0, $and = 0, $and12 = 0; var $and134 = 0, $and282 = 0, $and36 = 0, $and379 = 0, $and45 = 0, $and483 = 0, $and610$pre$phiZ2D = 0, $and62 = 0, $arraydecay208$add$ptr213 = 0, $arrayidx = 0, $arrayidx117 = 0, $arrayidx251 = 0, $arrayidx453 = 0, $arrayidx489 = 0, $big = 0, $buf = 0, $call55 = 0.0, $carry$0471 = 0, $carry262$0462 = 0, $cmp103 = 0; var $cmp127 = 0, $cmp131 = 0, $cmp147 = 0, $cmp196 = 0, $cmp205 = 0, $cmp225 = 0, $cmp225474 = 0, $cmp235 = 0, $cmp235470 = 0, $cmp249 = 0, $cmp259 = 0, $cmp259464 = 0, $cmp277 = 0, $cmp277460 = 0, $cmp299 = 0, $cmp308 = 0, $cmp315 = 0, $cmp324 = 0, $cmp324456 = 0, $cmp333 = 0; var $cmp338 = 0, $cmp350 = 0, $cmp363 = 0, $cmp363452 = 0, $cmp374 = 0, $cmp38 = 0, $cmp385 = 0, $cmp390 = 0, $cmp403 = 0, $cmp411 = 0, $cmp416 = 0, $cmp416447 = 0, $cmp420 = 0, $cmp433 = 0, $cmp433443 = 0, $cmp443 = 0, $cmp450 = 0, $cmp450$lcssa = 0, $cmp470 = 0, $cmp473 = 0; var $cmp495 = 0, $cmp495439 = 0, $cmp505 = 0, $cmp528 = 0, $cmp577 = 0, $cmp59 = 0, $cmp614 = 0, $cmp617 = 0, $cmp623 = 0, $cmp636 = 0, $cmp636434 = 0, $cmp660 = 0, $cmp665 = 0, $cmp673 = 0, $cmp678 = 0, $cmp678420 = 0, $cmp686 = 0, $cmp707 = 0, $cmp707415 = 0, $cmp710 = 0; var $cmp710416 = 0, $cmp722 = 0, $cmp722412 = 0, $cmp745 = 0, $cmp748 = 0, $cmp748428 = 0, $cmp760 = 0, $cmp765 = 0, $cmp770 = 0, $cmp770424 = 0, $cmp777 = 0, $cmp790 = 0, $cmp818 = 0, $cmp82 = 0, $cmp94 = 0, $cond = 0, $cond100 = 0, $cond233 = 0, $cond271 = 0, $cond304 = 0; var $cond43 = 0, $cond629 = 0, $cond732 = 0, $cond800 = 0, $conv111 = 0, $conv114 = 0, $conv116 = 0, $conv118393 = 0, $conv121 = 0, $conv123 = 0.0, $conv216 = 0, $conv218 = 0.0, $conv644 = 0, $conv646 = 0, $d$0 = 0, $d$0469 = 0, $d$0472 = 0, $d$1461 = 0, $d$4 = 0, $d$5423 = 0; var $d$6417 = 0, $d$7429 = 0, $dec = 0, $dec476 = 0, $dec481 = 0, $dec78 = 0, $div274 = 0, $div356 = 0, $div378 = 0, $div384 = 0, $e$0458 = 0, $e$1 = 0, $e$2445 = 0, $e$4 = 0, $e$5$ph = 0, $e2 = 0, $ebuf0 = 0, $estr$0 = 0, $estr$1$lcssa = 0, $estr$1435 = 0; var $estr$2 = 0, $i$0457 = 0, $i$1$lcssa = 0, $i$1453 = 0, $i$2444 = 0, $i$3440 = 0, $inc = 0, $inc425 = 0, $inc438 = 0, $inc468 = 0, $inc500 = 0, $incdec$ptr106 = 0, $incdec$ptr112 = 0, $incdec$ptr115 = 0, $incdec$ptr122 = 0, $incdec$ptr137 = 0, $incdec$ptr217 = 0, $incdec$ptr246 = 0, $incdec$ptr288 = 0, $incdec$ptr292 = 0; var $incdec$ptr292$a$3 = 0, $incdec$ptr292$a$3494 = 0, $incdec$ptr292$a$3496 = 0, $incdec$ptr292493 = 0, $incdec$ptr296 = 0, $incdec$ptr419 = 0, $incdec$ptr419$sink$lcssa = 0, $incdec$ptr419$sink448 = 0, $incdec$ptr423 = 0, $incdec$ptr639 = 0, $incdec$ptr645 = 0, $incdec$ptr647 = 0, $incdec$ptr681 = 0, $incdec$ptr689 = 0, $incdec$ptr698 = 0, $incdec$ptr725 = 0, $incdec$ptr734 = 0, $incdec$ptr763 = 0, $incdec$ptr773 = 0, $incdec$ptr776 = 0; var $incdec$ptr808 = 0, $j$0 = 0, $j$0$in454 = 0, $j$1441 = 0, $j$2 = 0, $l$1 = 0, $land$ext$neg = 0, $lor$ext = 0, $mul = 0.0, $mul125 = 0.0, $mul202 = 0.0, $mul220 = 0.0, $mul286 = 0, $mul322 = 0, $mul328 = 0, $mul335 = 0, $mul349 = 0, $mul367 = 0, $mul406 = 0.0, $mul406$$396 = 0.0; var $mul407 = 0.0, $mul407$$$405 = 0.0, $mul431 = 0, $mul437 = 0, $mul499 = 0, $mul513 = 0, $mul80 = 0.0, $not$tobool341 = 0, $or = 0, $or$cond = 0, $or$cond1$not = 0, $or$cond2 = 0, $or$cond395 = 0, $or$cond397 = 0, $or$cond401 = 0, $or120 = 0, $or504 = 0, $or613 = 0, $p$addr$2 = 0, $p$addr$2$$sub514398 = 0; var $p$addr$2$$sub562399 = 0, $p$addr$3 = 0, $p$addr$4$lcssa = 0, $p$addr$4418 = 0, $p$addr$5$lcssa = 0, $p$addr$5430 = 0, $pl$0 = 0, $prefix$0 = 0, $prefix$0$add$ptr65 = 0, $r$0$a$9 = 0, $re$1411 = 0, $rem360 = 0, $rem370 = 0, $rem494 = 0, $rem494438 = 0, $round$0410 = 0.0, $round377$1 = 0.0, $s$0 = 0, $s$1 = 0, $s35$0 = 0; var $s668$0421 = 0, $s668$1 = 0, $s715$0$lcssa = 0, $s715$0413 = 0, $s753$0 = 0, $s753$1425 = 0, $s753$2 = 0, $scevgep483 = 0, $scevgep483484 = 0, $shl280 = 0, $shr283 = 0, $shr285 = 0, $small$1 = 0.0, $sub = 0.0, $sub$ptr$div = 0, $sub$ptr$div321 = 0, $sub$ptr$div347 = 0, $sub$ptr$div430 = 0, $sub$ptr$div511 = 0, $sub$ptr$lhs$cast = 0; var $sub$ptr$lhs$cast160 = 0, $sub$ptr$lhs$cast305 = 0, $sub$ptr$lhs$cast318 = 0, $sub$ptr$lhs$cast344 = 0, $sub$ptr$lhs$cast508 = 0, $sub$ptr$lhs$cast633 = 0, $sub$ptr$lhs$cast694 = 0, $sub$ptr$lhs$cast787 = 0, $sub$ptr$lhs$cast811 = 0, $sub$ptr$rhs$cast = 0, $sub$ptr$rhs$cast161 = 0, $sub$ptr$rhs$cast306 = 0, $sub$ptr$rhs$cast319 = 0, $sub$ptr$rhs$cast428 = 0, $sub$ptr$rhs$cast634 = 0, $sub$ptr$rhs$cast634432 = 0, $sub$ptr$rhs$cast649 = 0, $sub$ptr$rhs$cast695 = 0, $sub$ptr$rhs$cast788 = 0, $sub$ptr$rhs$cast812 = 0; var $sub$ptr$sub = 0, $sub$ptr$sub145 = 0, $sub$ptr$sub159 = 0, $sub$ptr$sub159$sink = 0, $sub$ptr$sub162 = 0, $sub$ptr$sub172$pre$phiZZZ2D = 0, $sub$ptr$sub307 = 0, $sub$ptr$sub320 = 0, $sub$ptr$sub346 = 0, $sub$ptr$sub429 = 0, $sub$ptr$sub510 = 0, $sub$ptr$sub635 = 0, $sub$ptr$sub635433 = 0, $sub$ptr$sub650 = 0, $sub$ptr$sub650$pn = 0, $sub$ptr$sub696 = 0, $sub$ptr$sub789 = 0, $sub$ptr$sub813 = 0, $sub124 = 0.0, $sub146 = 0; var $sub181 = 0, $sub203 = 0, $sub219 = 0.0, $sub256 = 0, $sub264 = 0, $sub281 = 0, $sub336 = 0, $sub343 = 0, $sub357 = 0, $sub409 = 0, $sub478 = 0, $sub480 = 0, $sub514 = 0, $sub562 = 0, $sub626$le = 0, $sub735 = 0, $sub74 = 0, $sub806 = 0, $sub85 = 0.0, $sub86 = 0.0; var $sub88 = 0.0, $sub91 = 0.0, $sub97 = 0, $t$addr$0 = 0, $t$addr$1 = 0, $tobool129 = 0, $tobool13 = 0, $tobool135 = 0, $tobool139 = 0, $tobool140 = 0, $tobool222 = 0, $tobool244 = 0, $tobool252 = 0, $tobool290 = 0, $tobool290492 = 0, $tobool294 = 0, $tobool341 = 0, $tobool37 = 0, $tobool371 = 0, $tobool380 = 0; var $tobool400 = 0, $tobool454 = 0, $tobool484 = 0, $tobool490 = 0, $tobool56 = 0, $tobool63 = 0, $tobool76 = 0, $tobool76490 = 0, $tobool781 = 0, $tobool79 = 0, $tobool9 = 0, $w$add653 = 0, $xor = 0, $xor167 = 0, $xor186 = 0, $xor655 = 0, $xor816 = 0, $y$addr$0 = 0.0, $y$addr$1 = 0.0, $y$addr$2 = 0.0; var $y$addr$3 = 0.0, $y$addr$4 = 0.0, $z$0 = 0, $z$1$lcssa = 0, $z$1475 = 0, $z$2 = 0, $z$3$lcssa = 0, $z$3465 = 0, $z$4 = 0, $z$7 = 0, $z$7$add$ptr742 = 0, $z$7$ph = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 560|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(560|0); $big = sp + 8|0; $e2 = sp; $buf = sp + 524|0; $sub$ptr$rhs$cast = $buf; $ebuf0 = sp + 512|0; HEAP32[$e2>>2] = 0; $arrayidx = ((($ebuf0)) + 12|0); (___DOUBLE_BITS($y)|0); $0 = tempRet0; $1 = ($0|0)<(0); if ($1) { $sub = - $y; $pl$0 = 1;$prefix$0 = 36578;$y$addr$0 = $sub; } else { $and = $fl & 2048; $tobool9 = ($and|0)==(0); $and12 = $fl & 1; $tobool13 = ($and12|0)==(0); $$ = $tobool13 ? (36579) : (36584); $$$ = $tobool9 ? $$ : (36581); $2 = $fl & 2049; $3 = ($2|0)!=(0); $$394$ = $3&1; $pl$0 = $$394$;$prefix$0 = $$$;$y$addr$0 = $y; } (___DOUBLE_BITS($y$addr$0)|0); $4 = tempRet0; $5 = $4 & 2146435072; $6 = (0)==(0); $7 = ($5|0)==(2146435072); $8 = $6 & $7; do { if ($8) { $and36 = $t & 32; $tobool37 = ($and36|0)!=(0); $cond = $tobool37 ? 36597 : 36601; $cmp38 = ($y$addr$0 != $y$addr$0) | (0.0 != 0.0); $cond43 = $tobool37 ? 36605 : 36609; $s35$0 = $cmp38 ? $cond43 : $cond; $add = (($pl$0) + 3)|0; $and45 = $fl & -65537; _pad_108($f,32,$w,$add,$and45); _out_102($f,$prefix$0,$pl$0); _out_102($f,$s35$0,3); $xor = $fl ^ 8192; _pad_108($f,32,$w,$add,$xor); $add653$sink402 = $add; } else { $call55 = (+_frexpl($y$addr$0,$e2)); $mul = $call55 * 2.0; $tobool56 = $mul != 0.0; if ($tobool56) { $9 = HEAP32[$e2>>2]|0; $dec = (($9) + -1)|0; HEAP32[$e2>>2] = $dec; } $or = $t | 32; $cmp59 = ($or|0)==(97); if ($cmp59) { $and62 = $t & 32; $tobool63 = ($and62|0)==(0); $add$ptr65 = ((($prefix$0)) + 9|0); $prefix$0$add$ptr65 = $tobool63 ? $prefix$0 : $add$ptr65; $add67 = $pl$0 | 2; $10 = ($p>>>0)>(11); $sub74 = (12 - ($p))|0; $tobool76490 = ($sub74|0)==(0); $tobool76 = $10 | $tobool76490; do { if ($tobool76) { $y$addr$1 = $mul; } else { $re$1411 = $sub74;$round$0410 = 8.0; while(1) { $dec78 = (($re$1411) + -1)|0; $mul80 = $round$0410 * 16.0; $tobool79 = ($dec78|0)==(0); if ($tobool79) { break; } else { $re$1411 = $dec78;$round$0410 = $mul80; } } $11 = HEAP8[$prefix$0$add$ptr65>>0]|0; $cmp82 = ($11<<24>>24)==(45); if ($cmp82) { $sub85 = - $mul; $sub86 = $sub85 - $mul80; $add87 = $mul80 + $sub86; $sub88 = - $add87; $y$addr$1 = $sub88; break; } else { $add90 = $mul + $mul80; $sub91 = $add90 - $mul80; $y$addr$1 = $sub91; break; } } } while(0); $12 = HEAP32[$e2>>2]|0; $cmp94 = ($12|0)<(0); $sub97 = (0 - ($12))|0; $cond100 = $cmp94 ? $sub97 : $12; $13 = ($cond100|0)<(0); $14 = $13 << 31 >> 31; $15 = (_fmt_u($cond100,$14,$arrayidx)|0); $cmp103 = ($15|0)==($arrayidx|0); if ($cmp103) { $incdec$ptr106 = ((($ebuf0)) + 11|0); HEAP8[$incdec$ptr106>>0] = 48; $estr$0 = $incdec$ptr106; } else { $estr$0 = $15; } $16 = $12 >> 31; $17 = $16 & 2; $18 = (($17) + 43)|0; $conv111 = $18&255; $incdec$ptr112 = ((($estr$0)) + -1|0); HEAP8[$incdec$ptr112>>0] = $conv111; $add113 = (($t) + 15)|0; $conv114 = $add113&255; $incdec$ptr115 = ((($estr$0)) + -2|0); HEAP8[$incdec$ptr115>>0] = $conv114; $cmp131 = ($p|0)<(1); $and134 = $fl & 8; $tobool135 = ($and134|0)==(0); $s$0 = $buf;$y$addr$2 = $y$addr$1; while(1) { $conv116 = (~~(($y$addr$2))); $arrayidx117 = (36613 + ($conv116)|0); $19 = HEAP8[$arrayidx117>>0]|0; $conv118393 = $19&255; $or120 = $and62 | $conv118393; $conv121 = $or120&255; $incdec$ptr122 = ((($s$0)) + 1|0); HEAP8[$s$0>>0] = $conv121; $conv123 = (+($conv116|0)); $sub124 = $y$addr$2 - $conv123; $mul125 = $sub124 * 16.0; $sub$ptr$lhs$cast = $incdec$ptr122; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $cmp127 = ($sub$ptr$sub|0)==(1); if ($cmp127) { $tobool129 = $mul125 == 0.0; $or$cond1$not = $cmp131 & $tobool129; $or$cond = $tobool135 & $or$cond1$not; if ($or$cond) { $s$1 = $incdec$ptr122; } else { $incdec$ptr137 = ((($s$0)) + 2|0); HEAP8[$incdec$ptr122>>0] = 46; $s$1 = $incdec$ptr137; } } else { $s$1 = $incdec$ptr122; } $tobool139 = $mul125 != 0.0; if ($tobool139) { $s$0 = $s$1;$y$addr$2 = $mul125; } else { break; } } $tobool140 = ($p|0)==(0); $$pre487 = $s$1; if ($tobool140) { label = 24; } else { $sub$ptr$sub145 = (-2 - ($sub$ptr$rhs$cast))|0; $sub146 = (($sub$ptr$sub145) + ($$pre487))|0; $cmp147 = ($sub146|0)<($p|0); if ($cmp147) { $add150 = (($p) + 2)|0; $$pre486 = (($$pre487) - ($sub$ptr$rhs$cast))|0; $sub$ptr$sub159$sink = $add150;$sub$ptr$sub172$pre$phiZZZ2D = $$pre486; } else { label = 24; } } if ((label|0) == 24) { $sub$ptr$sub159 = (($$pre487) - ($sub$ptr$rhs$cast))|0; $sub$ptr$sub159$sink = $sub$ptr$sub159;$sub$ptr$sub172$pre$phiZZZ2D = $sub$ptr$sub159; } $sub$ptr$lhs$cast160 = $arrayidx; $sub$ptr$rhs$cast161 = $incdec$ptr115; $sub$ptr$sub162 = (($sub$ptr$lhs$cast160) - ($sub$ptr$rhs$cast161))|0; $add163 = (($sub$ptr$sub162) + ($add67))|0; $add165 = (($add163) + ($sub$ptr$sub159$sink))|0; _pad_108($f,32,$w,$add165,$fl); _out_102($f,$prefix$0$add$ptr65,$add67); $xor167 = $fl ^ 65536; _pad_108($f,48,$w,$add165,$xor167); _out_102($f,$buf,$sub$ptr$sub172$pre$phiZZZ2D); $sub181 = (($sub$ptr$sub159$sink) - ($sub$ptr$sub172$pre$phiZZZ2D))|0; _pad_108($f,48,$sub181,0,0); _out_102($f,$incdec$ptr115,$sub$ptr$sub162); $xor186 = $fl ^ 8192; _pad_108($f,32,$w,$add165,$xor186); $add653$sink402 = $add165; break; } $cmp196 = ($p|0)<(0); $$p = $cmp196 ? 6 : $p; if ($tobool56) { $mul202 = $mul * 268435456.0; $20 = HEAP32[$e2>>2]|0; $sub203 = (($20) + -28)|0; HEAP32[$e2>>2] = $sub203; $$pr = $sub203;$y$addr$3 = $mul202; } else { $$pre = HEAP32[$e2>>2]|0; $$pr = $$pre;$y$addr$3 = $mul; } $cmp205 = ($$pr|0)<(0); $add$ptr213 = ((($big)) + 288|0); $arraydecay208$add$ptr213 = $cmp205 ? $big : $add$ptr213; $y$addr$4 = $y$addr$3;$z$0 = $arraydecay208$add$ptr213; while(1) { $conv216 = (~~(($y$addr$4))>>>0); HEAP32[$z$0>>2] = $conv216; $incdec$ptr217 = ((($z$0)) + 4|0); $conv218 = (+($conv216>>>0)); $sub219 = $y$addr$4 - $conv218; $mul220 = $sub219 * 1.0E+9; $tobool222 = $mul220 != 0.0; if ($tobool222) { $y$addr$4 = $mul220;$z$0 = $incdec$ptr217; } else { break; } } $cmp225474 = ($$pr|0)>(0); if ($cmp225474) { $21 = $$pr;$a$1476 = $arraydecay208$add$ptr213;$z$1475 = $incdec$ptr217; while(1) { $22 = ($21|0)<(29); $cond233 = $22 ? $21 : 29; $d$0469 = ((($z$1475)) + -4|0); $cmp235470 = ($d$0469>>>0)<($a$1476>>>0); if ($cmp235470) { $a$2$ph = $a$1476; } else { $carry$0471 = 0;$d$0472 = $d$0469; while(1) { $23 = HEAP32[$d$0472>>2]|0; $24 = (_bitshift64Shl(($23|0),0,($cond233|0))|0); $25 = tempRet0; $26 = (_i64Add(($24|0),($25|0),($carry$0471|0),0)|0); $27 = tempRet0; $28 = (___uremdi3(($26|0),($27|0),1000000000,0)|0); $29 = tempRet0; HEAP32[$d$0472>>2] = $28; $30 = (___udivdi3(($26|0),($27|0),1000000000,0)|0); $31 = tempRet0; $d$0 = ((($d$0472)) + -4|0); $cmp235 = ($d$0>>>0)<($a$1476>>>0); if ($cmp235) { break; } else { $carry$0471 = $30;$d$0472 = $d$0; } } $tobool244 = ($30|0)==(0); if ($tobool244) { $a$2$ph = $a$1476; } else { $incdec$ptr246 = ((($a$1476)) + -4|0); HEAP32[$incdec$ptr246>>2] = $30; $a$2$ph = $incdec$ptr246; } } $z$2 = $z$1475; while(1) { $cmp249 = ($z$2>>>0)>($a$2$ph>>>0); if (!($cmp249)) { break; } $arrayidx251 = ((($z$2)) + -4|0); $32 = HEAP32[$arrayidx251>>2]|0; $tobool252 = ($32|0)==(0); if ($tobool252) { $z$2 = $arrayidx251; } else { break; } } $33 = HEAP32[$e2>>2]|0; $sub256 = (($33) - ($cond233))|0; HEAP32[$e2>>2] = $sub256; $cmp225 = ($sub256|0)>(0); if ($cmp225) { $21 = $sub256;$a$1476 = $a$2$ph;$z$1475 = $z$2; } else { $$pr406 = $sub256;$a$1$lcssa = $a$2$ph;$z$1$lcssa = $z$2; break; } } } else { $$pr406 = $$pr;$a$1$lcssa = $arraydecay208$add$ptr213;$z$1$lcssa = $incdec$ptr217; } $cmp259464 = ($$pr406|0)<(0); if ($cmp259464) { $add273 = (($$p) + 25)|0; $div274 = (($add273|0) / 9)&-1; $add275 = (($div274) + 1)|0; $cmp299 = ($or|0)==(102); $34 = $$pr406;$a$3466 = $a$1$lcssa;$z$3465 = $z$1$lcssa; while(1) { $sub264 = (0 - ($34))|0; $35 = ($sub264|0)<(9); $cond271 = $35 ? $sub264 : 9; $cmp277460 = ($a$3466>>>0)<($z$3465>>>0); if ($cmp277460) { $shl280 = 1 << $cond271; $sub281 = (($shl280) + -1)|0; $shr285 = 1000000000 >>> $cond271; $carry262$0462 = 0;$d$1461 = $a$3466; while(1) { $37 = HEAP32[$d$1461>>2]|0; $and282 = $37 & $sub281; $shr283 = $37 >>> $cond271; $add284 = (($shr283) + ($carry262$0462))|0; HEAP32[$d$1461>>2] = $add284; $mul286 = Math_imul($and282, $shr285)|0; $incdec$ptr288 = ((($d$1461)) + 4|0); $cmp277 = ($incdec$ptr288>>>0)<($z$3465>>>0); if ($cmp277) { $carry262$0462 = $mul286;$d$1461 = $incdec$ptr288; } else { break; } } $38 = HEAP32[$a$3466>>2]|0; $tobool290 = ($38|0)==(0); $incdec$ptr292 = ((($a$3466)) + 4|0); $incdec$ptr292$a$3 = $tobool290 ? $incdec$ptr292 : $a$3466; $tobool294 = ($mul286|0)==(0); if ($tobool294) { $incdec$ptr292$a$3496 = $incdec$ptr292$a$3;$z$4 = $z$3465; } else { $incdec$ptr296 = ((($z$3465)) + 4|0); HEAP32[$z$3465>>2] = $mul286; $incdec$ptr292$a$3496 = $incdec$ptr292$a$3;$z$4 = $incdec$ptr296; } } else { $36 = HEAP32[$a$3466>>2]|0; $tobool290492 = ($36|0)==(0); $incdec$ptr292493 = ((($a$3466)) + 4|0); $incdec$ptr292$a$3494 = $tobool290492 ? $incdec$ptr292493 : $a$3466; $incdec$ptr292$a$3496 = $incdec$ptr292$a$3494;$z$4 = $z$3465; } $cond304 = $cmp299 ? $arraydecay208$add$ptr213 : $incdec$ptr292$a$3496; $sub$ptr$lhs$cast305 = $z$4; $sub$ptr$rhs$cast306 = $cond304; $sub$ptr$sub307 = (($sub$ptr$lhs$cast305) - ($sub$ptr$rhs$cast306))|0; $sub$ptr$div = $sub$ptr$sub307 >> 2; $cmp308 = ($sub$ptr$div|0)>($add275|0); $add$ptr311 = (($cond304) + ($add275<<2)|0); $add$ptr311$z$4 = $cmp308 ? $add$ptr311 : $z$4; $39 = HEAP32[$e2>>2]|0; $add313 = (($39) + ($cond271))|0; HEAP32[$e2>>2] = $add313; $cmp259 = ($add313|0)<(0); if ($cmp259) { $34 = $add313;$a$3466 = $incdec$ptr292$a$3496;$z$3465 = $add$ptr311$z$4; } else { $a$3$lcssa = $incdec$ptr292$a$3496;$z$3$lcssa = $add$ptr311$z$4; break; } } } else { $a$3$lcssa = $a$1$lcssa;$z$3$lcssa = $z$1$lcssa; } $cmp315 = ($a$3$lcssa>>>0)<($z$3$lcssa>>>0); $sub$ptr$lhs$cast318 = $arraydecay208$add$ptr213; if ($cmp315) { $sub$ptr$rhs$cast319 = $a$3$lcssa; $sub$ptr$sub320 = (($sub$ptr$lhs$cast318) - ($sub$ptr$rhs$cast319))|0; $sub$ptr$div321 = $sub$ptr$sub320 >> 2; $mul322 = ($sub$ptr$div321*9)|0; $40 = HEAP32[$a$3$lcssa>>2]|0; $cmp324456 = ($40>>>0)<(10); if ($cmp324456) { $e$1 = $mul322; } else { $e$0458 = $mul322;$i$0457 = 10; while(1) { $mul328 = ($i$0457*10)|0; $inc = (($e$0458) + 1)|0; $cmp324 = ($40>>>0)<($mul328>>>0); if ($cmp324) { $e$1 = $inc; break; } else { $e$0458 = $inc;$i$0457 = $mul328; } } } } else { $e$1 = 0; } $cmp333 = ($or|0)!=(102); $mul335 = $cmp333 ? $e$1 : 0; $sub336 = (($$p) - ($mul335))|0; $cmp338 = ($or|0)==(103); $tobool341 = ($$p|0)!=(0); $41 = $tobool341 & $cmp338; $land$ext$neg = $41 << 31 >> 31; $sub343 = (($sub336) + ($land$ext$neg))|0; $sub$ptr$lhs$cast344 = $z$3$lcssa; $sub$ptr$sub346 = (($sub$ptr$lhs$cast344) - ($sub$ptr$lhs$cast318))|0; $sub$ptr$div347 = $sub$ptr$sub346 >> 2; $42 = ($sub$ptr$div347*9)|0; $mul349 = (($42) + -9)|0; $cmp350 = ($sub343|0)<($mul349|0); if ($cmp350) { $add$ptr354 = ((($arraydecay208$add$ptr213)) + 4|0); $add355 = (($sub343) + 9216)|0; $div356 = (($add355|0) / 9)&-1; $sub357 = (($div356) + -1024)|0; $add$ptr358 = (($add$ptr354) + ($sub357<<2)|0); $rem360 = (($add355|0) % 9)&-1; $cmp363452 = ($rem360|0)<(8); if ($cmp363452) { $i$1453 = 10;$j$0$in454 = $rem360; while(1) { $j$0 = (($j$0$in454) + 1)|0; $mul367 = ($i$1453*10)|0; $cmp363 = ($j$0$in454|0)<(7); if ($cmp363) { $i$1453 = $mul367;$j$0$in454 = $j$0; } else { $i$1$lcssa = $mul367; break; } } } else { $i$1$lcssa = 10; } $43 = HEAP32[$add$ptr358>>2]|0; $rem370 = (($43>>>0) % ($i$1$lcssa>>>0))&-1; $tobool371 = ($rem370|0)==(0); $add$ptr373 = ((($add$ptr358)) + 4|0); $cmp374 = ($add$ptr373|0)==($z$3$lcssa|0); $or$cond395 = $cmp374 & $tobool371; if ($or$cond395) { $a$8 = $a$3$lcssa;$d$4 = $add$ptr358;$e$4 = $e$1; } else { $div378 = (($43>>>0) / ($i$1$lcssa>>>0))&-1; $and379 = $div378 & 1; $tobool380 = ($and379|0)==(0); $$396 = $tobool380 ? 9007199254740992.0 : 9007199254740994.0; $div384 = (($i$1$lcssa|0) / 2)&-1; $cmp385 = ($rem370>>>0)<($div384>>>0); $cmp390 = ($rem370|0)==($div384|0); $or$cond397 = $cmp374 & $cmp390; $$405 = $or$cond397 ? 1.0 : 1.5; $$$405 = $cmp385 ? 0.5 : $$405; $tobool400 = ($pl$0|0)==(0); if ($tobool400) { $round377$1 = $$396;$small$1 = $$$405; } else { $44 = HEAP8[$prefix$0>>0]|0; $cmp403 = ($44<<24>>24)==(45); $mul406 = - $$396; $mul407 = - $$$405; $mul406$$396 = $cmp403 ? $mul406 : $$396; $mul407$$$405 = $cmp403 ? $mul407 : $$$405; $round377$1 = $mul406$$396;$small$1 = $mul407$$$405; } $sub409 = (($43) - ($rem370))|0; HEAP32[$add$ptr358>>2] = $sub409; $add410 = $round377$1 + $small$1; $cmp411 = $add410 != $round377$1; if ($cmp411) { $add414 = (($sub409) + ($i$1$lcssa))|0; HEAP32[$add$ptr358>>2] = $add414; $cmp416447 = ($add414>>>0)>(999999999); if ($cmp416447) { $a$5449 = $a$3$lcssa;$incdec$ptr419$sink448 = $add$ptr358; while(1) { $incdec$ptr419 = ((($incdec$ptr419$sink448)) + -4|0); HEAP32[$incdec$ptr419$sink448>>2] = 0; $cmp420 = ($incdec$ptr419>>>0)<($a$5449>>>0); if ($cmp420) { $incdec$ptr423 = ((($a$5449)) + -4|0); HEAP32[$incdec$ptr423>>2] = 0; $a$6 = $incdec$ptr423; } else { $a$6 = $a$5449; } $45 = HEAP32[$incdec$ptr419>>2]|0; $inc425 = (($45) + 1)|0; HEAP32[$incdec$ptr419>>2] = $inc425; $cmp416 = ($inc425>>>0)>(999999999); if ($cmp416) { $a$5449 = $a$6;$incdec$ptr419$sink448 = $incdec$ptr419; } else { $a$5$lcssa = $a$6;$incdec$ptr419$sink$lcssa = $incdec$ptr419; break; } } } else { $a$5$lcssa = $a$3$lcssa;$incdec$ptr419$sink$lcssa = $add$ptr358; } $sub$ptr$rhs$cast428 = $a$5$lcssa; $sub$ptr$sub429 = (($sub$ptr$lhs$cast318) - ($sub$ptr$rhs$cast428))|0; $sub$ptr$div430 = $sub$ptr$sub429 >> 2; $mul431 = ($sub$ptr$div430*9)|0; $46 = HEAP32[$a$5$lcssa>>2]|0; $cmp433443 = ($46>>>0)<(10); if ($cmp433443) { $a$8 = $a$5$lcssa;$d$4 = $incdec$ptr419$sink$lcssa;$e$4 = $mul431; } else { $e$2445 = $mul431;$i$2444 = 10; while(1) { $mul437 = ($i$2444*10)|0; $inc438 = (($e$2445) + 1)|0; $cmp433 = ($46>>>0)<($mul437>>>0); if ($cmp433) { $a$8 = $a$5$lcssa;$d$4 = $incdec$ptr419$sink$lcssa;$e$4 = $inc438; break; } else { $e$2445 = $inc438;$i$2444 = $mul437; } } } } else { $a$8 = $a$3$lcssa;$d$4 = $add$ptr358;$e$4 = $e$1; } } $add$ptr442 = ((($d$4)) + 4|0); $cmp443 = ($z$3$lcssa>>>0)>($add$ptr442>>>0); $add$ptr442$z$3 = $cmp443 ? $add$ptr442 : $z$3$lcssa; $a$9$ph = $a$8;$e$5$ph = $e$4;$z$7$ph = $add$ptr442$z$3; } else { $a$9$ph = $a$3$lcssa;$e$5$ph = $e$1;$z$7$ph = $z$3$lcssa; } $z$7 = $z$7$ph; while(1) { $cmp450 = ($z$7>>>0)>($a$9$ph>>>0); if (!($cmp450)) { $cmp450$lcssa = 0; break; } $arrayidx453 = ((($z$7)) + -4|0); $47 = HEAP32[$arrayidx453>>2]|0; $tobool454 = ($47|0)==(0); if ($tobool454) { $z$7 = $arrayidx453; } else { $cmp450$lcssa = 1; break; } } $sub626$le = (0 - ($e$5$ph))|0; do { if ($cmp338) { $not$tobool341 = $tobool341 ^ 1; $inc468 = $not$tobool341&1; $$p$inc468 = (($$p) + ($inc468))|0; $cmp470 = ($$p$inc468|0)>($e$5$ph|0); $cmp473 = ($e$5$ph|0)>(-5); $or$cond2 = $cmp470 & $cmp473; if ($or$cond2) { $dec476 = (($t) + -1)|0; $add477$neg = (($$p$inc468) + -1)|0; $sub478 = (($add477$neg) - ($e$5$ph))|0; $p$addr$2 = $sub478;$t$addr$0 = $dec476; } else { $sub480 = (($t) + -2)|0; $dec481 = (($$p$inc468) + -1)|0; $p$addr$2 = $dec481;$t$addr$0 = $sub480; } $and483 = $fl & 8; $tobool484 = ($and483|0)==(0); if ($tobool484) { if ($cmp450$lcssa) { $arrayidx489 = ((($z$7)) + -4|0); $48 = HEAP32[$arrayidx489>>2]|0; $tobool490 = ($48|0)==(0); if ($tobool490) { $j$2 = 9; } else { $rem494438 = (($48>>>0) % 10)&-1; $cmp495439 = ($rem494438|0)==(0); if ($cmp495439) { $i$3440 = 10;$j$1441 = 0; while(1) { $mul499 = ($i$3440*10)|0; $inc500 = (($j$1441) + 1)|0; $rem494 = (($48>>>0) % ($mul499>>>0))&-1; $cmp495 = ($rem494|0)==(0); if ($cmp495) { $i$3440 = $mul499;$j$1441 = $inc500; } else { $j$2 = $inc500; break; } } } else { $j$2 = 0; } } } else { $j$2 = 9; } $or504 = $t$addr$0 | 32; $cmp505 = ($or504|0)==(102); $sub$ptr$lhs$cast508 = $z$7; $sub$ptr$sub510 = (($sub$ptr$lhs$cast508) - ($sub$ptr$lhs$cast318))|0; $sub$ptr$div511 = $sub$ptr$sub510 >> 2; $49 = ($sub$ptr$div511*9)|0; $mul513 = (($49) + -9)|0; if ($cmp505) { $sub514 = (($mul513) - ($j$2))|0; $50 = ($sub514|0)>(0); $$sub514 = $50 ? $sub514 : 0; $cmp528 = ($p$addr$2|0)<($$sub514|0); $p$addr$2$$sub514398 = $cmp528 ? $p$addr$2 : $$sub514; $and610$pre$phiZ2D = 0;$p$addr$3 = $p$addr$2$$sub514398;$t$addr$1 = $t$addr$0; break; } else { $add561 = (($mul513) + ($e$5$ph))|0; $sub562 = (($add561) - ($j$2))|0; $51 = ($sub562|0)>(0); $$sub562 = $51 ? $sub562 : 0; $cmp577 = ($p$addr$2|0)<($$sub562|0); $p$addr$2$$sub562399 = $cmp577 ? $p$addr$2 : $$sub562; $and610$pre$phiZ2D = 0;$p$addr$3 = $p$addr$2$$sub562399;$t$addr$1 = $t$addr$0; break; } } else { $and610$pre$phiZ2D = $and483;$p$addr$3 = $p$addr$2;$t$addr$1 = $t$addr$0; } } else { $$pre489 = $fl & 8; $and610$pre$phiZ2D = $$pre489;$p$addr$3 = $$p;$t$addr$1 = $t; } } while(0); $52 = $p$addr$3 | $and610$pre$phiZ2D; $53 = ($52|0)!=(0); $lor$ext = $53&1; $or613 = $t$addr$1 | 32; $cmp614 = ($or613|0)==(102); if ($cmp614) { $cmp617 = ($e$5$ph|0)>(0); $add620 = $cmp617 ? $e$5$ph : 0; $estr$2 = 0;$sub$ptr$sub650$pn = $add620; } else { $cmp623 = ($e$5$ph|0)<(0); $cond629 = $cmp623 ? $sub626$le : $e$5$ph; $54 = ($cond629|0)<(0); $55 = $54 << 31 >> 31; $56 = (_fmt_u($cond629,$55,$arrayidx)|0); $sub$ptr$lhs$cast633 = $arrayidx; $sub$ptr$rhs$cast634432 = $56; $sub$ptr$sub635433 = (($sub$ptr$lhs$cast633) - ($sub$ptr$rhs$cast634432))|0; $cmp636434 = ($sub$ptr$sub635433|0)<(2); if ($cmp636434) { $estr$1435 = $56; while(1) { $incdec$ptr639 = ((($estr$1435)) + -1|0); HEAP8[$incdec$ptr639>>0] = 48; $sub$ptr$rhs$cast634 = $incdec$ptr639; $sub$ptr$sub635 = (($sub$ptr$lhs$cast633) - ($sub$ptr$rhs$cast634))|0; $cmp636 = ($sub$ptr$sub635|0)<(2); if ($cmp636) { $estr$1435 = $incdec$ptr639; } else { $estr$1$lcssa = $incdec$ptr639; break; } } } else { $estr$1$lcssa = $56; } $57 = $e$5$ph >> 31; $58 = $57 & 2; $59 = (($58) + 43)|0; $conv644 = $59&255; $incdec$ptr645 = ((($estr$1$lcssa)) + -1|0); HEAP8[$incdec$ptr645>>0] = $conv644; $conv646 = $t$addr$1&255; $incdec$ptr647 = ((($estr$1$lcssa)) + -2|0); HEAP8[$incdec$ptr647>>0] = $conv646; $sub$ptr$rhs$cast649 = $incdec$ptr647; $sub$ptr$sub650 = (($sub$ptr$lhs$cast633) - ($sub$ptr$rhs$cast649))|0; $estr$2 = $incdec$ptr647;$sub$ptr$sub650$pn = $sub$ptr$sub650; } $add608 = (($pl$0) + 1)|0; $add612 = (($add608) + ($p$addr$3))|0; $l$1 = (($add612) + ($lor$ext))|0; $add653 = (($l$1) + ($sub$ptr$sub650$pn))|0; _pad_108($f,32,$w,$add653,$fl); _out_102($f,$prefix$0,$pl$0); $xor655 = $fl ^ 65536; _pad_108($f,48,$w,$add653,$xor655); if ($cmp614) { $cmp660 = ($a$9$ph>>>0)>($arraydecay208$add$ptr213>>>0); $r$0$a$9 = $cmp660 ? $arraydecay208$add$ptr213 : $a$9$ph; $add$ptr671 = ((($buf)) + 9|0); $sub$ptr$lhs$cast694 = $add$ptr671; $incdec$ptr689 = ((($buf)) + 8|0); $d$5423 = $r$0$a$9; while(1) { $60 = HEAP32[$d$5423>>2]|0; $61 = (_fmt_u($60,0,$add$ptr671)|0); $cmp673 = ($d$5423|0)==($r$0$a$9|0); if ($cmp673) { $cmp686 = ($61|0)==($add$ptr671|0); if ($cmp686) { HEAP8[$incdec$ptr689>>0] = 48; $s668$1 = $incdec$ptr689; } else { $s668$1 = $61; } } else { $cmp678420 = ($61>>>0)>($buf>>>0); if ($cmp678420) { $62 = $61; $63 = (($62) - ($sub$ptr$rhs$cast))|0; _memset(($buf|0),48,($63|0))|0; $s668$0421 = $61; while(1) { $incdec$ptr681 = ((($s668$0421)) + -1|0); $cmp678 = ($incdec$ptr681>>>0)>($buf>>>0); if ($cmp678) { $s668$0421 = $incdec$ptr681; } else { $s668$1 = $incdec$ptr681; break; } } } else { $s668$1 = $61; } } $sub$ptr$rhs$cast695 = $s668$1; $sub$ptr$sub696 = (($sub$ptr$lhs$cast694) - ($sub$ptr$rhs$cast695))|0; _out_102($f,$s668$1,$sub$ptr$sub696); $incdec$ptr698 = ((($d$5423)) + 4|0); $cmp665 = ($incdec$ptr698>>>0)>($arraydecay208$add$ptr213>>>0); if ($cmp665) { break; } else { $d$5423 = $incdec$ptr698; } } $64 = ($52|0)==(0); if (!($64)) { _out_102($f,36629,1); } $cmp707415 = ($incdec$ptr698>>>0)<($z$7>>>0); $cmp710416 = ($p$addr$3|0)>(0); $65 = $cmp707415 & $cmp710416; if ($65) { $d$6417 = $incdec$ptr698;$p$addr$4418 = $p$addr$3; while(1) { $66 = HEAP32[$d$6417>>2]|0; $67 = (_fmt_u($66,0,$add$ptr671)|0); $cmp722412 = ($67>>>0)>($buf>>>0); if ($cmp722412) { $68 = $67; $69 = (($68) - ($sub$ptr$rhs$cast))|0; _memset(($buf|0),48,($69|0))|0; $s715$0413 = $67; while(1) { $incdec$ptr725 = ((($s715$0413)) + -1|0); $cmp722 = ($incdec$ptr725>>>0)>($buf>>>0); if ($cmp722) { $s715$0413 = $incdec$ptr725; } else { $s715$0$lcssa = $incdec$ptr725; break; } } } else { $s715$0$lcssa = $67; } $70 = ($p$addr$4418|0)<(9); $cond732 = $70 ? $p$addr$4418 : 9; _out_102($f,$s715$0$lcssa,$cond732); $incdec$ptr734 = ((($d$6417)) + 4|0); $sub735 = (($p$addr$4418) + -9)|0; $cmp707 = ($incdec$ptr734>>>0)<($z$7>>>0); $cmp710 = ($p$addr$4418|0)>(9); $71 = $cmp707 & $cmp710; if ($71) { $d$6417 = $incdec$ptr734;$p$addr$4418 = $sub735; } else { $p$addr$4$lcssa = $sub735; break; } } } else { $p$addr$4$lcssa = $p$addr$3; } $add737 = (($p$addr$4$lcssa) + 9)|0; _pad_108($f,48,$add737,9,0); } else { $add$ptr742 = ((($a$9$ph)) + 4|0); $z$7$add$ptr742 = $cmp450$lcssa ? $z$7 : $add$ptr742; $cmp748428 = ($p$addr$3|0)>(-1); if ($cmp748428) { $add$ptr756 = ((($buf)) + 9|0); $tobool781 = ($and610$pre$phiZ2D|0)==(0); $sub$ptr$lhs$cast787 = $add$ptr756; $72 = (0 - ($sub$ptr$rhs$cast))|0; $incdec$ptr763 = ((($buf)) + 8|0); $d$7429 = $a$9$ph;$p$addr$5430 = $p$addr$3; while(1) { $73 = HEAP32[$d$7429>>2]|0; $74 = (_fmt_u($73,0,$add$ptr756)|0); $cmp760 = ($74|0)==($add$ptr756|0); if ($cmp760) { HEAP8[$incdec$ptr763>>0] = 48; $s753$0 = $incdec$ptr763; } else { $s753$0 = $74; } $cmp765 = ($d$7429|0)==($a$9$ph|0); do { if ($cmp765) { $incdec$ptr776 = ((($s753$0)) + 1|0); _out_102($f,$s753$0,1); $cmp777 = ($p$addr$5430|0)<(1); $or$cond401 = $tobool781 & $cmp777; if ($or$cond401) { $s753$2 = $incdec$ptr776; break; } _out_102($f,36629,1); $s753$2 = $incdec$ptr776; } else { $cmp770424 = ($s753$0>>>0)>($buf>>>0); if (!($cmp770424)) { $s753$2 = $s753$0; break; } $scevgep483 = (($s753$0) + ($72)|0); $scevgep483484 = $scevgep483; _memset(($buf|0),48,($scevgep483484|0))|0; $s753$1425 = $s753$0; while(1) { $incdec$ptr773 = ((($s753$1425)) + -1|0); $cmp770 = ($incdec$ptr773>>>0)>($buf>>>0); if ($cmp770) { $s753$1425 = $incdec$ptr773; } else { $s753$2 = $incdec$ptr773; break; } } } } while(0); $sub$ptr$rhs$cast788 = $s753$2; $sub$ptr$sub789 = (($sub$ptr$lhs$cast787) - ($sub$ptr$rhs$cast788))|0; $cmp790 = ($p$addr$5430|0)>($sub$ptr$sub789|0); $cond800 = $cmp790 ? $sub$ptr$sub789 : $p$addr$5430; _out_102($f,$s753$2,$cond800); $sub806 = (($p$addr$5430) - ($sub$ptr$sub789))|0; $incdec$ptr808 = ((($d$7429)) + 4|0); $cmp745 = ($incdec$ptr808>>>0)<($z$7$add$ptr742>>>0); $cmp748 = ($sub806|0)>(-1); $75 = $cmp745 & $cmp748; if ($75) { $d$7429 = $incdec$ptr808;$p$addr$5430 = $sub806; } else { $p$addr$5$lcssa = $sub806; break; } } } else { $p$addr$5$lcssa = $p$addr$3; } $add810 = (($p$addr$5$lcssa) + 18)|0; _pad_108($f,48,$add810,18,0); $sub$ptr$lhs$cast811 = $arrayidx; $sub$ptr$rhs$cast812 = $estr$2; $sub$ptr$sub813 = (($sub$ptr$lhs$cast811) - ($sub$ptr$rhs$cast812))|0; _out_102($f,$estr$2,$sub$ptr$sub813); } $xor816 = $fl ^ 8192; _pad_108($f,32,$w,$add653,$xor816); $add653$sink402 = $add653; } } while(0); $cmp818 = ($add653$sink402|0)<($w|0); $w$add653 = $cmp818 ? $w : $add653$sink402; STACKTOP = sp;return ($w$add653|0); } function ___DOUBLE_BITS($__f) { $__f = +$__f; var $0 = 0, $1 = 0, label = 0, sp = 0; sp = STACKTOP; HEAPF64[tempDoublePtr>>3] = $__f;$0 = HEAP32[tempDoublePtr>>2]|0; $1 = HEAP32[tempDoublePtr+4>>2]|0; tempRet0 = ($1); return ($0|0); } function _frexpl($x,$e) { $x = +$x; $e = $e|0; var $call = 0.0, label = 0, sp = 0; sp = STACKTOP; $call = (+_frexp($x,$e)); return (+$call); } function _frexp($x,$e) { $x = +$x; $e = $e|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0.0, $call = 0.0, $conv = 0, $mul = 0.0, $retval$0 = 0.0, $storemerge = 0, $sub = 0, $sub8 = 0, $tobool1 = 0, $trunc$clear = 0, $x$addr$0 = 0.0, label = 0; var sp = 0; sp = STACKTOP; HEAPF64[tempDoublePtr>>3] = $x;$0 = HEAP32[tempDoublePtr>>2]|0; $1 = HEAP32[tempDoublePtr+4>>2]|0; $2 = (_bitshift64Lshr(($0|0),($1|0),52)|0); $3 = tempRet0; $4 = $2&65535; $trunc$clear = $4 & 2047; switch ($trunc$clear<<16>>16) { case 0: { $tobool1 = $x != 0.0; if ($tobool1) { $mul = $x * 1.8446744073709552E+19; $call = (+_frexp($mul,$e)); $5 = HEAP32[$e>>2]|0; $sub = (($5) + -64)|0; $storemerge = $sub;$x$addr$0 = $call; } else { $storemerge = 0;$x$addr$0 = $x; } HEAP32[$e>>2] = $storemerge; $retval$0 = $x$addr$0; break; } case 2047: { $retval$0 = $x; break; } default: { $conv = $2 & 2047; $sub8 = (($conv) + -1022)|0; HEAP32[$e>>2] = $sub8; $6 = $1 & -2146435073; $7 = $6 | 1071644672; HEAP32[tempDoublePtr>>2] = $0;HEAP32[tempDoublePtr+4>>2] = $7;$8 = +HEAPF64[tempDoublePtr>>3]; $retval$0 = $8; } } return (+$retval$0); } function _wcrtomb($s,$wc,$st) { $s = $s|0; $wc = $wc|0; $st = $st|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $and = 0, $and32 = 0, $and36 = 0, $and49 = 0, $and54 = 0, $and58 = 0, $call = 0, $call10 = 0, $call66 = 0, $cmp = 0; var $cmp14 = 0, $cmp21 = 0, $cmp24 = 0, $cmp41 = 0, $cmp7 = 0, $conv = 0, $conv12 = 0, $conv17 = 0, $conv19 = 0, $conv29 = 0, $conv34 = 0, $conv38 = 0, $conv46 = 0, $conv51 = 0, $conv56 = 0, $conv60 = 0, $incdec$ptr = 0, $incdec$ptr30 = 0, $incdec$ptr35 = 0, $incdec$ptr47 = 0; var $incdec$ptr52 = 0, $incdec$ptr57 = 0, $locale = 0, $or = 0, $or$cond = 0, $or18 = 0, $or28 = 0, $or33 = 0, $or37 = 0, $or45 = 0, $or50 = 0, $or55 = 0, $or59 = 0, $retval$0 = 0, $sub40 = 0, $tobool = 0, $tobool2 = 0, label = 0, sp = 0; sp = STACKTOP; $tobool = ($s|0)==(0|0); do { if ($tobool) { $retval$0 = 1; } else { $cmp = ($wc>>>0)<(128); if ($cmp) { $conv = $wc&255; HEAP8[$s>>0] = $conv; $retval$0 = 1; break; } $call = (___pthread_self_581()|0); $locale = ((($call)) + 188|0); $0 = HEAP32[$locale>>2]|0; $1 = HEAP32[$0>>2]|0; $tobool2 = ($1|0)==(0|0); if ($tobool2) { $2 = $wc & -128; $cmp7 = ($2|0)==(57216); if ($cmp7) { $conv12 = $wc&255; HEAP8[$s>>0] = $conv12; $retval$0 = 1; break; } else { $call10 = (___errno_location()|0); HEAP32[$call10>>2] = 84; $retval$0 = -1; break; } } $cmp14 = ($wc>>>0)<(2048); if ($cmp14) { $3 = $wc >>> 6; $or = $3 | 192; $conv17 = $or&255; $incdec$ptr = ((($s)) + 1|0); HEAP8[$s>>0] = $conv17; $and = $wc & 63; $or18 = $and | 128; $conv19 = $or18&255; HEAP8[$incdec$ptr>>0] = $conv19; $retval$0 = 2; break; } $cmp21 = ($wc>>>0)<(55296); $4 = $wc & -8192; $cmp24 = ($4|0)==(57344); $or$cond = $cmp21 | $cmp24; if ($or$cond) { $5 = $wc >>> 12; $or28 = $5 | 224; $conv29 = $or28&255; $incdec$ptr30 = ((($s)) + 1|0); HEAP8[$s>>0] = $conv29; $6 = $wc >>> 6; $and32 = $6 & 63; $or33 = $and32 | 128; $conv34 = $or33&255; $incdec$ptr35 = ((($s)) + 2|0); HEAP8[$incdec$ptr30>>0] = $conv34; $and36 = $wc & 63; $or37 = $and36 | 128; $conv38 = $or37&255; HEAP8[$incdec$ptr35>>0] = $conv38; $retval$0 = 3; break; } $sub40 = (($wc) + -65536)|0; $cmp41 = ($sub40>>>0)<(1048576); if ($cmp41) { $7 = $wc >>> 18; $or45 = $7 | 240; $conv46 = $or45&255; $incdec$ptr47 = ((($s)) + 1|0); HEAP8[$s>>0] = $conv46; $8 = $wc >>> 12; $and49 = $8 & 63; $or50 = $and49 | 128; $conv51 = $or50&255; $incdec$ptr52 = ((($s)) + 2|0); HEAP8[$incdec$ptr47>>0] = $conv51; $9 = $wc >>> 6; $and54 = $9 & 63; $or55 = $and54 | 128; $conv56 = $or55&255; $incdec$ptr57 = ((($s)) + 3|0); HEAP8[$incdec$ptr52>>0] = $conv56; $and58 = $wc & 63; $or59 = $and58 | 128; $conv60 = $or59&255; HEAP8[$incdec$ptr57>>0] = $conv60; $retval$0 = 4; break; } else { $call66 = (___errno_location()|0); HEAP32[$call66>>2] = 84; $retval$0 = -1; break; } } } while(0); return ($retval$0|0); } function ___pthread_self_581() { var $call = 0, label = 0, sp = 0; sp = STACKTOP; $call = (_pthread_self()|0); return ($call|0); } function _pthread_self() { var label = 0, sp = 0; sp = STACKTOP; return (21024|0); } function ___pthread_self_822() { var $call = 0, label = 0, sp = 0; sp = STACKTOP; $call = (_pthread_self()|0); return ($call|0); } function ___strerror_l($e,$loc) { $e = $e|0; $loc = $loc|0; var $0 = 0, $1 = 0, $2 = 0, $arrayidx = 0, $arrayidx15 = 0, $call = 0, $cmp = 0, $conv = 0, $dec = 0, $i$012 = 0, $i$111 = 0, $inc = 0, $incdec$ptr = 0, $s$0$lcssa = 0, $s$010 = 0, $s$1 = 0, $tobool = 0, $tobool5 = 0, $tobool59 = 0, $tobool8 = 0; var label = 0, sp = 0; sp = STACKTOP; $i$012 = 0; while(1) { $arrayidx = (36631 + ($i$012)|0); $0 = HEAP8[$arrayidx>>0]|0; $conv = $0&255; $cmp = ($conv|0)==($e|0); if ($cmp) { label = 2; break; } $inc = (($i$012) + 1)|0; $tobool = ($inc|0)==(87); if ($tobool) { $i$111 = 87;$s$010 = 36719; label = 5; break; } else { $i$012 = $inc; } } if ((label|0) == 2) { $tobool59 = ($i$012|0)==(0); if ($tobool59) { $s$0$lcssa = 36719; } else { $i$111 = $i$012;$s$010 = 36719; label = 5; } } if ((label|0) == 5) { while(1) { label = 0; $s$1 = $s$010; while(1) { $1 = HEAP8[$s$1>>0]|0; $tobool8 = ($1<<24>>24)==(0); $incdec$ptr = ((($s$1)) + 1|0); if ($tobool8) { break; } else { $s$1 = $incdec$ptr; } } $dec = (($i$111) + -1)|0; $tobool5 = ($dec|0)==(0); if ($tobool5) { $s$0$lcssa = $incdec$ptr; break; } else { $i$111 = $dec;$s$010 = $incdec$ptr; label = 5; } } } $arrayidx15 = ((($loc)) + 20|0); $2 = HEAP32[$arrayidx15>>2]|0; $call = (___lctrans($s$0$lcssa,$2)|0); return ($call|0); } function ___lctrans($msg,$lm) { $msg = $msg|0; $lm = $lm|0; var $call = 0, label = 0, sp = 0; sp = STACKTOP; $call = (___lctrans_impl($msg,$lm)|0); return ($call|0); } function ___lctrans_impl($msg,$lm) { $msg = $msg|0; $lm = $lm|0; var $0 = 0, $1 = 0, $call = 0, $cond = 0, $map_size = 0, $tobool = 0, $tobool1 = 0, $trans$0 = 0, label = 0, sp = 0; sp = STACKTOP; $tobool = ($lm|0)==(0|0); if ($tobool) { $trans$0 = 0; } else { $0 = HEAP32[$lm>>2]|0; $map_size = ((($lm)) + 4|0); $1 = HEAP32[$map_size>>2]|0; $call = (___mo_lookup($0,$1,$msg)|0); $trans$0 = $call; } $tobool1 = ($trans$0|0)!=(0|0); $cond = $tobool1 ? $trans$0 : $msg; return ($cond|0); } function ___mo_lookup($p,$size,$s) { $p = $p|0; $size = $size|0; $s = $s|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $add$ptr = 0, $add$ptr65 = 0, $add$ptr65$ = 0, $add16 = 0, $add23 = 0, $add31 = 0, $add42 = 0, $add49 = 0, $add59 = 0; var $arrayidx = 0, $arrayidx1 = 0, $arrayidx17 = 0, $arrayidx24 = 0, $arrayidx3 = 0, $arrayidx32 = 0, $arrayidx43 = 0, $arrayidx50 = 0, $arrayidx60 = 0, $b$0 = 0, $b$1 = 0, $call = 0, $call18 = 0, $call2 = 0, $call25 = 0, $call36 = 0, $call4 = 0, $call44 = 0, $call51 = 0, $cmp = 0; var $cmp10 = 0, $cmp26 = 0, $cmp29 = 0, $cmp52 = 0, $cmp56 = 0, $cmp6 = 0, $cmp67 = 0, $cmp71 = 0, $div = 0, $div12 = 0, $div13 = 0, $div14 = 0, $mul = 0, $mul15 = 0, $n$0 = 0, $n$1 = 0, $or = 0, $or$cond = 0, $or$cond66 = 0, $or$cond67 = 0; var $rem = 0, $retval$4 = 0, $sub = 0, $sub28 = 0, $sub5 = 0, $sub55 = 0, $sub79 = 0, $tobool = 0, $tobool33 = 0, $tobool37 = 0, $tobool62 = 0, label = 0, sp = 0; sp = STACKTOP; $0 = HEAP32[$p>>2]|0; $sub = (($0) + 1794895138)|0; $arrayidx = ((($p)) + 8|0); $1 = HEAP32[$arrayidx>>2]|0; $call = (_swapc($1,$sub)|0); $arrayidx1 = ((($p)) + 12|0); $2 = HEAP32[$arrayidx1>>2]|0; $call2 = (_swapc($2,$sub)|0); $arrayidx3 = ((($p)) + 16|0); $3 = HEAP32[$arrayidx3>>2]|0; $call4 = (_swapc($3,$sub)|0); $div = $size >>> 2; $cmp = ($call>>>0)<($div>>>0); L1: do { if ($cmp) { $mul = $call << 2; $sub5 = (($size) - ($mul))|0; $cmp6 = ($call2>>>0)<($sub5>>>0); $cmp10 = ($call4>>>0)<($sub5>>>0); $or$cond = $cmp6 & $cmp10; if ($or$cond) { $or = $call4 | $call2; $rem = $or & 3; $tobool = ($rem|0)==(0); if ($tobool) { $div12 = $call2 >>> 2; $div13 = $call4 >>> 2; $b$0 = 0;$n$0 = $call; while(1) { $div14 = $n$0 >>> 1; $add = (($b$0) + ($div14))|0; $mul15 = $add << 1; $add16 = (($mul15) + ($div12))|0; $arrayidx17 = (($p) + ($add16<<2)|0); $4 = HEAP32[$arrayidx17>>2]|0; $call18 = (_swapc($4,$sub)|0); $add23 = (($add16) + 1)|0; $arrayidx24 = (($p) + ($add23<<2)|0); $5 = HEAP32[$arrayidx24>>2]|0; $call25 = (_swapc($5,$sub)|0); $cmp26 = ($call25>>>0)<($size>>>0); $sub28 = (($size) - ($call25))|0; $cmp29 = ($call18>>>0)<($sub28>>>0); $or$cond66 = $cmp26 & $cmp29; if (!($or$cond66)) { $retval$4 = 0; break L1; } $add31 = (($call25) + ($call18))|0; $arrayidx32 = (($p) + ($add31)|0); $6 = HEAP8[$arrayidx32>>0]|0; $tobool33 = ($6<<24>>24)==(0); if (!($tobool33)) { $retval$4 = 0; break L1; } $add$ptr = (($p) + ($call25)|0); $call36 = (_strcmp($s,$add$ptr)|0); $tobool37 = ($call36|0)==(0); if ($tobool37) { break; } $cmp67 = ($n$0|0)==(1); $cmp71 = ($call36|0)<(0); $sub79 = (($n$0) - ($div14))|0; $n$1 = $cmp71 ? $div14 : $sub79; $b$1 = $cmp71 ? $b$0 : $add; if ($cmp67) { $retval$4 = 0; break L1; } else { $b$0 = $b$1;$n$0 = $n$1; } } $add42 = (($mul15) + ($div13))|0; $arrayidx43 = (($p) + ($add42<<2)|0); $7 = HEAP32[$arrayidx43>>2]|0; $call44 = (_swapc($7,$sub)|0); $add49 = (($add42) + 1)|0; $arrayidx50 = (($p) + ($add49<<2)|0); $8 = HEAP32[$arrayidx50>>2]|0; $call51 = (_swapc($8,$sub)|0); $cmp52 = ($call51>>>0)<($size>>>0); $sub55 = (($size) - ($call51))|0; $cmp56 = ($call44>>>0)<($sub55>>>0); $or$cond67 = $cmp52 & $cmp56; if ($or$cond67) { $add$ptr65 = (($p) + ($call51)|0); $add59 = (($call51) + ($call44))|0; $arrayidx60 = (($p) + ($add59)|0); $9 = HEAP8[$arrayidx60>>0]|0; $tobool62 = ($9<<24>>24)==(0); $add$ptr65$ = $tobool62 ? $add$ptr65 : 0; $retval$4 = $add$ptr65$; } else { $retval$4 = 0; } } else { $retval$4 = 0; } } else { $retval$4 = 0; } } else { $retval$4 = 0; } } while(0); return ($retval$4|0); } function _swapc($x,$c) { $x = $x|0; $c = $c|0; var $or5 = 0, $tobool = 0, $x$or5 = 0, label = 0, sp = 0; sp = STACKTOP; $tobool = ($c|0)==(0); $or5 = (_llvm_bswap_i32(($x|0))|0); $x$or5 = $tobool ? $x : $or5; return ($x$or5|0); } function ___fwritex($s,$l,$f) { $s = $s|0; $l = $l|0; $f = $f|0; var $$pre = 0, $$pre33 = 0, $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $add$ptr = 0, $add$ptr26 = 0, $arrayidx = 0, $call = 0, $call16 = 0, $call4 = 0; var $cmp = 0, $cmp11 = 0, $cmp17 = 0, $cmp6 = 0, $i$0 = 0, $i$1 = 0, $l$addr$0 = 0, $l$addr$1 = 0, $lbf = 0, $retval$1 = 0, $s$addr$1 = 0, $sub = 0, $sub$ptr$sub = 0, $tobool = 0, $tobool1 = 0, $tobool9 = 0, $wend = 0, $wpos = 0, $write = 0, $write15 = 0; var label = 0, sp = 0; sp = STACKTOP; $wend = ((($f)) + 16|0); $0 = HEAP32[$wend>>2]|0; $tobool = ($0|0)==(0|0); if ($tobool) { $call = (___towrite($f)|0); $tobool1 = ($call|0)==(0); if ($tobool1) { $$pre = HEAP32[$wend>>2]|0; $3 = $$pre; label = 5; } else { $retval$1 = 0; } } else { $1 = $0; $3 = $1; label = 5; } L5: do { if ((label|0) == 5) { $wpos = ((($f)) + 20|0); $2 = HEAP32[$wpos>>2]|0; $sub$ptr$sub = (($3) - ($2))|0; $cmp = ($sub$ptr$sub>>>0)<($l>>>0); $4 = $2; if ($cmp) { $write = ((($f)) + 36|0); $5 = HEAP32[$write>>2]|0; $call4 = (FUNCTION_TABLE_iiii[$5 & 31]($f,$s,$l)|0); $retval$1 = $call4; break; } $lbf = ((($f)) + 75|0); $6 = HEAP8[$lbf>>0]|0; $cmp6 = ($6<<24>>24)>(-1); L10: do { if ($cmp6) { $i$0 = $l; while(1) { $tobool9 = ($i$0|0)==(0); if ($tobool9) { $9 = $4;$i$1 = 0;$l$addr$1 = $l;$s$addr$1 = $s; break L10; } $sub = (($i$0) + -1)|0; $arrayidx = (($s) + ($sub)|0); $7 = HEAP8[$arrayidx>>0]|0; $cmp11 = ($7<<24>>24)==(10); if ($cmp11) { break; } else { $i$0 = $sub; } } $write15 = ((($f)) + 36|0); $8 = HEAP32[$write15>>2]|0; $call16 = (FUNCTION_TABLE_iiii[$8 & 31]($f,$s,$i$0)|0); $cmp17 = ($call16>>>0)<($i$0>>>0); if ($cmp17) { $retval$1 = $call16; break L5; } $add$ptr = (($s) + ($i$0)|0); $l$addr$0 = (($l) - ($i$0))|0; $$pre33 = HEAP32[$wpos>>2]|0; $9 = $$pre33;$i$1 = $i$0;$l$addr$1 = $l$addr$0;$s$addr$1 = $add$ptr; } else { $9 = $4;$i$1 = 0;$l$addr$1 = $l;$s$addr$1 = $s; } } while(0); _memcpy(($9|0),($s$addr$1|0),($l$addr$1|0))|0; $10 = HEAP32[$wpos>>2]|0; $add$ptr26 = (($10) + ($l$addr$1)|0); HEAP32[$wpos>>2] = $add$ptr26; $add = (($i$1) + ($l$addr$1))|0; $retval$1 = $add; } } while(0); return ($retval$1|0); } function ___towrite($f) { $f = $f|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $add$ptr = 0, $and = 0, $buf = 0, $buf_size = 0, $conv = 0, $conv3 = 0, $mode = 0, $or = 0, $or5 = 0, $rend = 0, $retval$0 = 0, $rpos = 0, $sub = 0, $tobool = 0, $wbase = 0; var $wend = 0, $wpos = 0, label = 0, sp = 0; sp = STACKTOP; $mode = ((($f)) + 74|0); $0 = HEAP8[$mode>>0]|0; $conv = $0 << 24 >> 24; $sub = (($conv) + 255)|0; $or = $sub | $conv; $conv3 = $or&255; HEAP8[$mode>>0] = $conv3; $1 = HEAP32[$f>>2]|0; $and = $1 & 8; $tobool = ($and|0)==(0); if ($tobool) { $rend = ((($f)) + 8|0); HEAP32[$rend>>2] = 0; $rpos = ((($f)) + 4|0); HEAP32[$rpos>>2] = 0; $buf = ((($f)) + 44|0); $2 = HEAP32[$buf>>2]|0; $wbase = ((($f)) + 28|0); HEAP32[$wbase>>2] = $2; $wpos = ((($f)) + 20|0); HEAP32[$wpos>>2] = $2; $3 = $2; $buf_size = ((($f)) + 48|0); $4 = HEAP32[$buf_size>>2]|0; $add$ptr = (($3) + ($4)|0); $wend = ((($f)) + 16|0); HEAP32[$wend>>2] = $add$ptr; $retval$0 = 0; } else { $or5 = $1 | 32; HEAP32[$f>>2] = $or5; $retval$0 = -1; } return ($retval$0|0); } function ___ofl_lock() { var label = 0, sp = 0; sp = STACKTOP; ___lock((39252|0)); return (39260|0); } function ___ofl_unlock() { var label = 0, sp = 0; sp = STACKTOP; ___unlock((39252|0)); return; } function _fflush($f) { $f = $f|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $call = 0, $call1 = 0, $call11 = 0, $call118 = 0, $call17 = 0, $call23 = 0, $call7 = 0, $cmp = 0, $cmp15 = 0, $cmp21 = 0, $cond10 = 0, $cond20 = 0, $f$addr$0 = 0, $f$addr$019 = 0; var $f$addr$022 = 0, $lock = 0, $lock14 = 0, $next = 0, $or = 0, $phitmp = 0, $r$0$lcssa = 0, $r$021 = 0, $r$1 = 0, $retval$0 = 0, $tobool = 0, $tobool12 = 0, $tobool1220 = 0, $tobool25 = 0, $tobool5 = 0, $wbase = 0, $wpos = 0, label = 0, sp = 0; sp = STACKTOP; $tobool = ($f|0)==(0|0); do { if ($tobool) { $1 = HEAP32[5255]|0; $tobool5 = ($1|0)==(0|0); if ($tobool5) { $cond10 = 0; } else { $2 = HEAP32[5255]|0; $call7 = (_fflush($2)|0); $cond10 = $call7; } $call11 = (___ofl_lock()|0); $f$addr$019 = HEAP32[$call11>>2]|0; $tobool1220 = ($f$addr$019|0)==(0|0); if ($tobool1220) { $r$0$lcssa = $cond10; } else { $f$addr$022 = $f$addr$019;$r$021 = $cond10; while(1) { $lock14 = ((($f$addr$022)) + 76|0); $3 = HEAP32[$lock14>>2]|0; $cmp15 = ($3|0)>(-1); if ($cmp15) { $call17 = (___lockfile($f$addr$022)|0); $cond20 = $call17; } else { $cond20 = 0; } $wpos = ((($f$addr$022)) + 20|0); $4 = HEAP32[$wpos>>2]|0; $wbase = ((($f$addr$022)) + 28|0); $5 = HEAP32[$wbase>>2]|0; $cmp21 = ($4>>>0)>($5>>>0); if ($cmp21) { $call23 = (___fflush_unlocked($f$addr$022)|0); $or = $call23 | $r$021; $r$1 = $or; } else { $r$1 = $r$021; } $tobool25 = ($cond20|0)==(0); if (!($tobool25)) { ___unlockfile($f$addr$022); } $next = ((($f$addr$022)) + 56|0); $f$addr$0 = HEAP32[$next>>2]|0; $tobool12 = ($f$addr$0|0)==(0|0); if ($tobool12) { $r$0$lcssa = $r$1; break; } else { $f$addr$022 = $f$addr$0;$r$021 = $r$1; } } } ___ofl_unlock(); $retval$0 = $r$0$lcssa; } else { $lock = ((($f)) + 76|0); $0 = HEAP32[$lock>>2]|0; $cmp = ($0|0)>(-1); if (!($cmp)) { $call118 = (___fflush_unlocked($f)|0); $retval$0 = $call118; break; } $call = (___lockfile($f)|0); $phitmp = ($call|0)==(0); $call1 = (___fflush_unlocked($f)|0); if ($phitmp) { $retval$0 = $call1; } else { ___unlockfile($f); $retval$0 = $call1; } } } while(0); return ($retval$0|0); } function ___fflush_unlocked($f) { $f = $f|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $cmp = 0, $cmp4 = 0, $rend = 0, $retval$0 = 0, $rpos = 0, $seek = 0, $sub$ptr$lhs$cast = 0, $sub$ptr$rhs$cast = 0, $sub$ptr$sub = 0, $tobool = 0, $wbase = 0, $wend = 0, $wpos = 0; var $write = 0, label = 0, sp = 0; sp = STACKTOP; $wpos = ((($f)) + 20|0); $0 = HEAP32[$wpos>>2]|0; $wbase = ((($f)) + 28|0); $1 = HEAP32[$wbase>>2]|0; $cmp = ($0>>>0)>($1>>>0); if ($cmp) { $write = ((($f)) + 36|0); $2 = HEAP32[$write>>2]|0; (FUNCTION_TABLE_iiii[$2 & 31]($f,0,0)|0); $3 = HEAP32[$wpos>>2]|0; $tobool = ($3|0)==(0|0); if ($tobool) { $retval$0 = -1; } else { label = 3; } } else { label = 3; } if ((label|0) == 3) { $rpos = ((($f)) + 4|0); $4 = HEAP32[$rpos>>2]|0; $rend = ((($f)) + 8|0); $5 = HEAP32[$rend>>2]|0; $cmp4 = ($4>>>0)<($5>>>0); if ($cmp4) { $sub$ptr$lhs$cast = $4; $sub$ptr$rhs$cast = $5; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $seek = ((($f)) + 40|0); $6 = HEAP32[$seek>>2]|0; (FUNCTION_TABLE_iiii[$6 & 31]($f,$sub$ptr$sub,1)|0); } $wend = ((($f)) + 16|0); HEAP32[$wend>>2] = 0; HEAP32[$wbase>>2] = 0; HEAP32[$wpos>>2] = 0; HEAP32[$rend>>2] = 0; HEAP32[$rpos>>2] = 0; $retval$0 = 0; } return ($retval$0|0); } function _printf($fmt,$varargs) { $fmt = $fmt|0; $varargs = $varargs|0; var $0 = 0, $ap = 0, $call = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $ap = sp; HEAP32[$ap>>2] = $varargs; $0 = HEAP32[5223]|0; $call = (_vfprintf($0,$fmt,$ap)|0); STACKTOP = sp;return ($call|0); } function _log10($x) { $x = +$x; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0.0, $13 = 0, $14 = 0, $15 = 0, $16 = 0.0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $add35 = 0; var $add36 = 0, $add46 = 0.0, $add51 = 0.0, $add53 = 0.0, $add56 = 0.0, $add58 = 0.0, $add60 = 0.0, $add62 = 0.0, $add70 = 0.0, $add72 = 0.0, $add77 = 0.0, $add79 = 0.0, $add81 = 0.0, $add82 = 0.0, $add84 = 0.0, $add85 = 0.0, $add86 = 0.0, $and = 0, $cmp = 0, $cmp19 = 0; var $cmp23 = 0, $conv74 = 0.0, $div = 0.0, $div11 = 0.0, $div47 = 0.0, $hx$0 = 0, $k$0 = 0, $mul = 0.0, $mul14 = 0.0, $mul44 = 0.0, $mul45 = 0.0, $mul48 = 0.0, $mul49 = 0.0, $mul50 = 0.0, $mul52 = 0.0, $mul54 = 0.0, $mul55 = 0.0, $mul57 = 0.0, $mul59 = 0.0, $mul61 = 0.0; var $mul71 = 0.0, $mul73 = 0.0, $mul75 = 0.0, $mul76 = 0.0, $mul78 = 0.0, $mul80 = 0.0, $or$cond = 0, $or$cond73 = 0, $retval$0 = 0.0, $shr33 = 0, $sub = 0.0, $sub43 = 0.0, $sub63 = 0.0, $sub68 = 0.0, $sub69 = 0.0, $sub83 = 0.0, label = 0, sp = 0; sp = STACKTOP; HEAPF64[tempDoublePtr>>3] = $x;$0 = HEAP32[tempDoublePtr>>2]|0; $1 = HEAP32[tempDoublePtr+4>>2]|0; $cmp = ($1>>>0)<(1048576); $2 = ($1|0)<(0); $or$cond = $2 | $cmp; do { if ($or$cond) { $3 = $1 & 2147483647; $4 = ($0|0)==(0); $5 = ($3|0)==(0); $6 = $4 & $5; if ($6) { $mul = $x * $x; $div = -1.0 / $mul; $retval$0 = $div; break; } if ($2) { $sub = $x - $x; $div11 = $sub / 0.0; $retval$0 = $div11; break; } else { $mul14 = $x * 18014398509481984.0; HEAPF64[tempDoublePtr>>3] = $mul14;$7 = HEAP32[tempDoublePtr>>2]|0; $8 = HEAP32[tempDoublePtr+4>>2]|0; $13 = $7;$17 = $8;$hx$0 = $8;$k$0 = -1077; label = 9; break; } } else { $cmp19 = ($1>>>0)>(2146435071); if ($cmp19) { $retval$0 = $x; } else { $cmp23 = ($1|0)==(1072693248); $9 = ($0|0)==(0); $10 = (0)==(0); $11 = $9 & $10; $or$cond73 = $11 & $cmp23; if ($or$cond73) { $retval$0 = 0.0; } else { $13 = $0;$17 = $1;$hx$0 = $1;$k$0 = -1023; label = 9; } } } } while(0); if ((label|0) == 9) { $add = (($hx$0) + 614242)|0; $shr33 = $add >>> 20; $add35 = (($k$0) + ($shr33))|0; $and = $add & 1048575; $add36 = (($and) + 1072079006)|0; HEAP32[tempDoublePtr>>2] = $13;HEAP32[tempDoublePtr+4>>2] = $add36;$12 = +HEAPF64[tempDoublePtr>>3]; $sub43 = $12 + -1.0; $mul44 = $sub43 * 0.5; $mul45 = $sub43 * $mul44; $add46 = $sub43 + 2.0; $div47 = $sub43 / $add46; $mul48 = $div47 * $div47; $mul49 = $mul48 * $mul48; $mul50 = $mul49 * 0.15313837699209373; $add51 = $mul50 + 0.22222198432149784; $mul52 = $mul49 * $add51; $add53 = $mul52 + 0.39999999999409419; $mul54 = $mul49 * $add53; $mul55 = $mul49 * 0.14798198605116586; $add56 = $mul55 + 0.1818357216161805; $mul57 = $mul49 * $add56; $add58 = $mul57 + 0.28571428743662391; $mul59 = $mul49 * $add58; $add60 = $mul59 + 0.66666666666667351; $mul61 = $mul48 * $add60; $add62 = $mul54 + $mul61; $sub63 = $sub43 - $mul45; HEAPF64[tempDoublePtr>>3] = $sub63;$14 = HEAP32[tempDoublePtr>>2]|0; $15 = HEAP32[tempDoublePtr+4>>2]|0; HEAP32[tempDoublePtr>>2] = 0;HEAP32[tempDoublePtr+4>>2] = $15;$16 = +HEAPF64[tempDoublePtr>>3]; $sub68 = $sub43 - $16; $sub69 = $sub68 - $mul45; $add70 = $mul45 + $add62; $mul71 = $div47 * $add70; $add72 = $sub69 + $mul71; $mul73 = $16 * 0.43429448187816888; $conv74 = (+($add35|0)); $mul75 = $conv74 * 0.30102999566361177; $mul76 = $conv74 * 3.6942390771589308E-13; $add77 = $add72 + $16; $mul78 = $add77 * 2.5082946711645275E-11; $add79 = $mul76 + $mul78; $mul80 = $add72 * 0.43429448187816888; $add81 = $mul80 + $add79; $add82 = $mul75 + $mul73; $sub83 = $mul75 - $add82; $add84 = $mul73 + $sub83; $add85 = $add84 + $add81; $add86 = $add82 + $add85; $retval$0 = $add86; } return (+$retval$0); } function _lrintf($x) { $x = +$x; var $call = 0.0, $conv = 0, label = 0, sp = 0; sp = STACKTOP; $call = (+_rintf((+$x))); $conv = (~~(($call))); return ($conv|0); } function __Znwj($size) { $size = $size|0; var $$size = 0, $call = 0, $call2 = 0, $cmp = 0, $cmp1 = 0, $exception = 0, $tobool = 0, label = 0, sp = 0; sp = STACKTOP; $cmp = ($size|0)==(0); $$size = $cmp ? 1 : $size; while(1) { $call = (_malloc($$size)|0); $cmp1 = ($call|0)==(0|0); if (!($cmp1)) { label = 6; break; } $call2 = (__ZSt15get_new_handlerv()|0); $tobool = ($call2|0)==(0|0); if ($tobool) { label = 5; break; } FUNCTION_TABLE_v[$call2 & 0](); } if ((label|0) == 5) { $exception = (___cxa_allocate_exception(4)|0); __ZNSt9bad_allocC2Ev($exception); ___cxa_throw(($exception|0),(72|0),(18|0)); // unreachable; } else if ((label|0) == 6) { return ($call|0); } return (0)|0; } function __ZdlPv($ptr) { $ptr = $ptr|0; var label = 0, sp = 0; sp = STACKTOP; _free($ptr); return; } function __ZN10__cxxabiv116__shim_type_infoD2Ev($this) { $this = $this|0; var label = 0, sp = 0; sp = STACKTOP; return; } function __ZN10__cxxabiv117__class_type_infoD0Ev($this) { $this = $this|0; var label = 0, sp = 0; sp = STACKTOP; __ZN10__cxxabiv116__shim_type_infoD2Ev($this); __ZdlPv($this); return; } function __ZNK10__cxxabiv116__shim_type_info5noop1Ev($this) { $this = $this|0; var label = 0, sp = 0; sp = STACKTOP; return; } function __ZNK10__cxxabiv116__shim_type_info5noop2Ev($this) { $this = $this|0; var label = 0, sp = 0; sp = STACKTOP; return; } function __ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv($this,$thrown_type,$adjustedPtr) { $this = $this|0; $thrown_type = $thrown_type|0; $adjustedPtr = $adjustedPtr|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $call = 0, $cmp = 0, $cmp4 = 0, $dst_ptr_leading_to_static_ptr = 0, $info = 0, $number_of_dst_type = 0, $path_dst_ptr_to_static_ptr = 0, $retval$0 = 0, $retval$2 = 0, $src2dst_offset = 0, $static_type = 0, $vfn = 0, $vtable = 0; var dest = 0, label = 0, sp = 0, stop = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $info = sp; $call = (__ZN10__cxxabiv18is_equalEPKSt9type_infoS2_b($this,$thrown_type,0)|0); if ($call) { $retval$2 = 1; } else { $0 = ($thrown_type|0)==(0|0); if ($0) { $retval$2 = 0; } else { $1 = (___dynamic_cast($thrown_type,32,16,0)|0); $cmp = ($1|0)==(0|0); if ($cmp) { $retval$2 = 0; } else { $2 = ((($info)) + 4|0); dest=$2; stop=dest+52|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); HEAP32[$info>>2] = $1; $static_type = ((($info)) + 8|0); HEAP32[$static_type>>2] = $this; $src2dst_offset = ((($info)) + 12|0); HEAP32[$src2dst_offset>>2] = -1; $number_of_dst_type = ((($info)) + 48|0); HEAP32[$number_of_dst_type>>2] = 1; $vtable = HEAP32[$1>>2]|0; $vfn = ((($vtable)) + 28|0); $3 = HEAP32[$vfn>>2]|0; $4 = HEAP32[$adjustedPtr>>2]|0; FUNCTION_TABLE_viiii[$3 & 31]($1,$info,$4,1); $path_dst_ptr_to_static_ptr = ((($info)) + 24|0); $5 = HEAP32[$path_dst_ptr_to_static_ptr>>2]|0; $cmp4 = ($5|0)==(1); if ($cmp4) { $dst_ptr_leading_to_static_ptr = ((($info)) + 16|0); $6 = HEAP32[$dst_ptr_leading_to_static_ptr>>2]|0; HEAP32[$adjustedPtr>>2] = $6; $retval$0 = 1; } else { $retval$0 = 0; } $retval$2 = $retval$0; } } } STACKTOP = sp;return ($retval$2|0); } function __ZNK10__cxxabiv117__class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib($this,$info,$dst_ptr,$current_ptr,$path_below,$use_strcmp) { $this = $this|0; $info = $info|0; $dst_ptr = $dst_ptr|0; $current_ptr = $current_ptr|0; $path_below = $path_below|0; $use_strcmp = $use_strcmp|0; var $0 = 0, $call = 0, $static_type = 0, label = 0, sp = 0; sp = STACKTOP; $static_type = ((($info)) + 8|0); $0 = HEAP32[$static_type>>2]|0; $call = (__ZN10__cxxabiv18is_equalEPKSt9type_infoS2_b($this,$0,$use_strcmp)|0); if ($call) { __ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i(0,$info,$dst_ptr,$current_ptr,$path_below); } return; } function __ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib($this,$info,$current_ptr,$path_below,$use_strcmp) { $this = $this|0; $info = $info|0; $current_ptr = $current_ptr|0; $path_below = $path_below|0; $use_strcmp = $use_strcmp|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $add = 0, $call = 0, $call3 = 0, $cmp = 0, $cmp12 = 0, $cmp13 = 0, $cmp5 = 0, $cmp7 = 0, $dst_ptr_leading_to_static_ptr = 0, $dst_ptr_not_leading_to_static_ptr = 0, $is_dst_type_derived_from_static_type = 0, $number_to_dst_ptr = 0, $number_to_static_ptr = 0; var $path_dst_ptr_to_static_ptr = 0, $path_dynamic_ptr_to_dst_ptr = 0, $path_dynamic_ptr_to_dst_ptr10 = 0, $search_done = 0, $static_type = 0, label = 0, sp = 0; sp = STACKTOP; $static_type = ((($info)) + 8|0); $0 = HEAP32[$static_type>>2]|0; $call = (__ZN10__cxxabiv18is_equalEPKSt9type_infoS2_b($this,$0,$use_strcmp)|0); do { if ($call) { __ZNK10__cxxabiv117__class_type_info29process_static_type_below_dstEPNS_19__dynamic_cast_infoEPKvi(0,$info,$current_ptr,$path_below); } else { $1 = HEAP32[$info>>2]|0; $call3 = (__ZN10__cxxabiv18is_equalEPKSt9type_infoS2_b($this,$1,$use_strcmp)|0); if ($call3) { $dst_ptr_leading_to_static_ptr = ((($info)) + 16|0); $2 = HEAP32[$dst_ptr_leading_to_static_ptr>>2]|0; $cmp = ($2|0)==($current_ptr|0); if (!($cmp)) { $dst_ptr_not_leading_to_static_ptr = ((($info)) + 20|0); $3 = HEAP32[$dst_ptr_not_leading_to_static_ptr>>2]|0; $cmp5 = ($3|0)==($current_ptr|0); if (!($cmp5)) { $path_dynamic_ptr_to_dst_ptr10 = ((($info)) + 32|0); HEAP32[$path_dynamic_ptr_to_dst_ptr10>>2] = $path_below; HEAP32[$dst_ptr_not_leading_to_static_ptr>>2] = $current_ptr; $number_to_dst_ptr = ((($info)) + 40|0); $4 = HEAP32[$number_to_dst_ptr>>2]|0; $add = (($4) + 1)|0; HEAP32[$number_to_dst_ptr>>2] = $add; $number_to_static_ptr = ((($info)) + 36|0); $5 = HEAP32[$number_to_static_ptr>>2]|0; $cmp12 = ($5|0)==(1); if ($cmp12) { $path_dst_ptr_to_static_ptr = ((($info)) + 24|0); $6 = HEAP32[$path_dst_ptr_to_static_ptr>>2]|0; $cmp13 = ($6|0)==(2); if ($cmp13) { $search_done = ((($info)) + 54|0); HEAP8[$search_done>>0] = 1; } } $is_dst_type_derived_from_static_type = ((($info)) + 44|0); HEAP32[$is_dst_type_derived_from_static_type>>2] = 4; break; } } $cmp7 = ($path_below|0)==(1); if ($cmp7) { $path_dynamic_ptr_to_dst_ptr = ((($info)) + 32|0); HEAP32[$path_dynamic_ptr_to_dst_ptr>>2] = 1; } } } } while(0); return; } function __ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi($this,$info,$adjustedPtr,$path_below) { $this = $this|0; $info = $info|0; $adjustedPtr = $adjustedPtr|0; $path_below = $path_below|0; var $0 = 0, $call = 0, $static_type = 0, label = 0, sp = 0; sp = STACKTOP; $static_type = ((($info)) + 8|0); $0 = HEAP32[$static_type>>2]|0; $call = (__ZN10__cxxabiv18is_equalEPKSt9type_infoS2_b($this,$0,0)|0); if ($call) { __ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi(0,$info,$adjustedPtr,$path_below); } return; } function __ZN10__cxxabiv18is_equalEPKSt9type_infoS2_b($x,$y,$0) { $x = $x|0; $y = $y|0; $0 = $0|0; var $cmp = 0, label = 0, sp = 0; sp = STACKTOP; $cmp = ($x|0)==($y|0); return ($cmp|0); } function __ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi($this,$info,$adjustedPtr,$path_below) { $this = $this|0; $info = $info|0; $adjustedPtr = $adjustedPtr|0; $path_below = $path_below|0; var $0 = 0, $1 = 0, $2 = 0, $add = 0, $cmp = 0, $cmp4 = 0, $cmp7 = 0, $dst_ptr_leading_to_static_ptr = 0, $number_to_static_ptr = 0, $number_to_static_ptr11 = 0, $path_dst_ptr_to_static_ptr = 0, $path_dst_ptr_to_static_ptr12 = 0, $path_dst_ptr_to_static_ptr6 = 0, $search_done = 0, label = 0, sp = 0; sp = STACKTOP; $dst_ptr_leading_to_static_ptr = ((($info)) + 16|0); $0 = HEAP32[$dst_ptr_leading_to_static_ptr>>2]|0; $cmp = ($0|0)==(0|0); do { if ($cmp) { HEAP32[$dst_ptr_leading_to_static_ptr>>2] = $adjustedPtr; $path_dst_ptr_to_static_ptr = ((($info)) + 24|0); HEAP32[$path_dst_ptr_to_static_ptr>>2] = $path_below; $number_to_static_ptr = ((($info)) + 36|0); HEAP32[$number_to_static_ptr>>2] = 1; } else { $cmp4 = ($0|0)==($adjustedPtr|0); if (!($cmp4)) { $number_to_static_ptr11 = ((($info)) + 36|0); $2 = HEAP32[$number_to_static_ptr11>>2]|0; $add = (($2) + 1)|0; HEAP32[$number_to_static_ptr11>>2] = $add; $path_dst_ptr_to_static_ptr12 = ((($info)) + 24|0); HEAP32[$path_dst_ptr_to_static_ptr12>>2] = 2; $search_done = ((($info)) + 54|0); HEAP8[$search_done>>0] = 1; break; } $path_dst_ptr_to_static_ptr6 = ((($info)) + 24|0); $1 = HEAP32[$path_dst_ptr_to_static_ptr6>>2]|0; $cmp7 = ($1|0)==(2); if ($cmp7) { HEAP32[$path_dst_ptr_to_static_ptr6>>2] = $path_below; } } } while(0); return; } function __ZNK10__cxxabiv117__class_type_info29process_static_type_below_dstEPNS_19__dynamic_cast_infoEPKvi($this,$info,$current_ptr,$path_below) { $this = $this|0; $info = $info|0; $current_ptr = $current_ptr|0; $path_below = $path_below|0; var $0 = 0, $1 = 0, $cmp = 0, $cmp2 = 0, $path_dynamic_ptr_to_static_ptr = 0, $static_ptr = 0, label = 0, sp = 0; sp = STACKTOP; $static_ptr = ((($info)) + 4|0); $0 = HEAP32[$static_ptr>>2]|0; $cmp = ($0|0)==($current_ptr|0); if ($cmp) { $path_dynamic_ptr_to_static_ptr = ((($info)) + 28|0); $1 = HEAP32[$path_dynamic_ptr_to_static_ptr>>2]|0; $cmp2 = ($1|0)==(1); if (!($cmp2)) { HEAP32[$path_dynamic_ptr_to_static_ptr>>2] = $path_below; } } return; } function __ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i($this,$info,$dst_ptr,$current_ptr,$path_below) { $this = $this|0; $info = $info|0; $dst_ptr = $dst_ptr|0; $current_ptr = $current_ptr|0; $path_below = $path_below|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $add = 0, $cmp = 0, $cmp10 = 0, $cmp13 = 0, $cmp18 = 0, $cmp2 = 0, $cmp21 = 0, $cmp5 = 0, $cmp7 = 0, $dst_ptr_leading_to_static_ptr = 0, $found_any_static_type = 0, $found_our_static_ptr = 0, $number_of_dst_type = 0; var $number_of_dst_type17 = 0, $number_to_static_ptr = 0, $number_to_static_ptr26 = 0, $or$cond = 0, $or$cond19 = 0, $path_dst_ptr_to_static_ptr = 0, $path_dst_ptr_to_static_ptr12 = 0, $search_done = 0, $search_done23 = 0, $search_done27 = 0, $static_ptr = 0, label = 0, sp = 0; sp = STACKTOP; $found_any_static_type = ((($info)) + 53|0); HEAP8[$found_any_static_type>>0] = 1; $static_ptr = ((($info)) + 4|0); $0 = HEAP32[$static_ptr>>2]|0; $cmp = ($0|0)==($current_ptr|0); do { if ($cmp) { $found_our_static_ptr = ((($info)) + 52|0); HEAP8[$found_our_static_ptr>>0] = 1; $dst_ptr_leading_to_static_ptr = ((($info)) + 16|0); $1 = HEAP32[$dst_ptr_leading_to_static_ptr>>2]|0; $cmp2 = ($1|0)==(0|0); if ($cmp2) { HEAP32[$dst_ptr_leading_to_static_ptr>>2] = $dst_ptr; $path_dst_ptr_to_static_ptr = ((($info)) + 24|0); HEAP32[$path_dst_ptr_to_static_ptr>>2] = $path_below; $number_to_static_ptr = ((($info)) + 36|0); HEAP32[$number_to_static_ptr>>2] = 1; $number_of_dst_type = ((($info)) + 48|0); $2 = HEAP32[$number_of_dst_type>>2]|0; $cmp5 = ($2|0)==(1); $cmp7 = ($path_below|0)==(1); $or$cond = $cmp5 & $cmp7; if (!($or$cond)) { break; } $search_done = ((($info)) + 54|0); HEAP8[$search_done>>0] = 1; break; } $cmp10 = ($1|0)==($dst_ptr|0); if (!($cmp10)) { $number_to_static_ptr26 = ((($info)) + 36|0); $6 = HEAP32[$number_to_static_ptr26>>2]|0; $add = (($6) + 1)|0; HEAP32[$number_to_static_ptr26>>2] = $add; $search_done27 = ((($info)) + 54|0); HEAP8[$search_done27>>0] = 1; break; } $path_dst_ptr_to_static_ptr12 = ((($info)) + 24|0); $3 = HEAP32[$path_dst_ptr_to_static_ptr12>>2]|0; $cmp13 = ($3|0)==(2); if ($cmp13) { HEAP32[$path_dst_ptr_to_static_ptr12>>2] = $path_below; $5 = $path_below; } else { $5 = $3; } $number_of_dst_type17 = ((($info)) + 48|0); $4 = HEAP32[$number_of_dst_type17>>2]|0; $cmp18 = ($4|0)==(1); $cmp21 = ($5|0)==(1); $or$cond19 = $cmp18 & $cmp21; if ($or$cond19) { $search_done23 = ((($info)) + 54|0); HEAP8[$search_done23>>0] = 1; } } } while(0); return; } function ___dynamic_cast($static_ptr,$static_type,$dst_type,$src2dst_offset) { $static_ptr = $static_ptr|0; $static_type = $static_type|0; $dst_type = $dst_type|0; $src2dst_offset = $src2dst_offset|0; var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add$ptr = 0, $add$ptr$ = 0, $arrayidx = 0; var $arrayidx1 = 0, $call = 0, $cmp = 0, $cmp14 = 0, $cmp16 = 0, $cmp19 = 0, $cmp25 = 0, $cmp27 = 0, $cmp30 = 0, $cmp33 = 0, $dst_ptr$0 = 0, $dst_ptr_leading_to_static_ptr = 0, $dst_ptr_not_leading_to_static_ptr = 0, $info = 0, $number_of_dst_type = 0, $number_to_dst_ptr = 0, $number_to_static_ptr = 0, $or$cond = 0, $or$cond15 = 0, $or$cond16 = 0; var $or$cond17 = 0, $path_dst_ptr_to_static_ptr = 0, $path_dynamic_ptr_to_dst_ptr = 0, $path_dynamic_ptr_to_static_ptr = 0, $src2dst_offset5 = 0, $static_ptr3 = 0, $static_type4 = 0, $vfn = 0, $vfn11 = 0, $vtable10 = 0, $vtable7 = 0, dest = 0, label = 0, sp = 0, stop = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $info = sp; $0 = HEAP32[$static_ptr>>2]|0; $arrayidx = ((($0)) + -8|0); $1 = HEAP32[$arrayidx>>2]|0; $add$ptr = (($static_ptr) + ($1)|0); $arrayidx1 = ((($0)) + -4|0); $2 = HEAP32[$arrayidx1>>2]|0; HEAP32[$info>>2] = $dst_type; $static_ptr3 = ((($info)) + 4|0); HEAP32[$static_ptr3>>2] = $static_ptr; $static_type4 = ((($info)) + 8|0); HEAP32[$static_type4>>2] = $static_type; $src2dst_offset5 = ((($info)) + 12|0); HEAP32[$src2dst_offset5>>2] = $src2dst_offset; $dst_ptr_leading_to_static_ptr = ((($info)) + 16|0); $dst_ptr_not_leading_to_static_ptr = ((($info)) + 20|0); $path_dst_ptr_to_static_ptr = ((($info)) + 24|0); $path_dynamic_ptr_to_static_ptr = ((($info)) + 28|0); $path_dynamic_ptr_to_dst_ptr = ((($info)) + 32|0); $number_to_dst_ptr = ((($info)) + 40|0); dest=$dst_ptr_leading_to_static_ptr; stop=dest+36|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0));HEAP16[$dst_ptr_leading_to_static_ptr+36>>1]=0|0;HEAP8[$dst_ptr_leading_to_static_ptr+38>>0]=0|0; $call = (__ZN10__cxxabiv18is_equalEPKSt9type_infoS2_b($2,$dst_type,0)|0); L1: do { if ($call) { $number_of_dst_type = ((($info)) + 48|0); HEAP32[$number_of_dst_type>>2] = 1; $vtable7 = HEAP32[$2>>2]|0; $vfn = ((($vtable7)) + 20|0); $3 = HEAP32[$vfn>>2]|0; FUNCTION_TABLE_viiiiii[$3 & 15]($2,$info,$add$ptr,$add$ptr,1,0); $4 = HEAP32[$path_dst_ptr_to_static_ptr>>2]|0; $cmp = ($4|0)==(1); $add$ptr$ = $cmp ? $add$ptr : 0; $dst_ptr$0 = $add$ptr$; } else { $number_to_static_ptr = ((($info)) + 36|0); $vtable10 = HEAP32[$2>>2]|0; $vfn11 = ((($vtable10)) + 24|0); $5 = HEAP32[$vfn11>>2]|0; FUNCTION_TABLE_viiiii[$5 & 31]($2,$info,$add$ptr,1,0); $6 = HEAP32[$number_to_static_ptr>>2]|0; switch ($6|0) { case 0: { $7 = HEAP32[$number_to_dst_ptr>>2]|0; $cmp14 = ($7|0)==(1); $8 = HEAP32[$path_dynamic_ptr_to_static_ptr>>2]|0; $cmp16 = ($8|0)==(1); $or$cond = $cmp14 & $cmp16; $9 = HEAP32[$path_dynamic_ptr_to_dst_ptr>>2]|0; $cmp19 = ($9|0)==(1); $or$cond15 = $or$cond & $cmp19; $10 = HEAP32[$dst_ptr_not_leading_to_static_ptr>>2]|0; $$ = $or$cond15 ? $10 : 0; $dst_ptr$0 = $$; break L1; break; } case 1: { break; } default: { $dst_ptr$0 = 0; break L1; } } $11 = HEAP32[$path_dst_ptr_to_static_ptr>>2]|0; $cmp25 = ($11|0)==(1); if (!($cmp25)) { $12 = HEAP32[$number_to_dst_ptr>>2]|0; $cmp27 = ($12|0)==(0); $13 = HEAP32[$path_dynamic_ptr_to_static_ptr>>2]|0; $cmp30 = ($13|0)==(1); $or$cond16 = $cmp27 & $cmp30; $14 = HEAP32[$path_dynamic_ptr_to_dst_ptr>>2]|0; $cmp33 = ($14|0)==(1); $or$cond17 = $or$cond16 & $cmp33; if (!($or$cond17)) { $dst_ptr$0 = 0; break; } } $15 = HEAP32[$dst_ptr_leading_to_static_ptr>>2]|0; $dst_ptr$0 = $15; } } while(0); STACKTOP = sp;return ($dst_ptr$0|0); } function __ZN10__cxxabiv120__si_class_type_infoD0Ev($this) { $this = $this|0; var label = 0, sp = 0; sp = STACKTOP; __ZN10__cxxabiv116__shim_type_infoD2Ev($this); __ZdlPv($this); return; } function __ZNK10__cxxabiv120__si_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib($this,$info,$dst_ptr,$current_ptr,$path_below,$use_strcmp) { $this = $this|0; $info = $info|0; $dst_ptr = $dst_ptr|0; $current_ptr = $current_ptr|0; $path_below = $path_below|0; $use_strcmp = $use_strcmp|0; var $0 = 0, $1 = 0, $2 = 0, $__base_type = 0, $call = 0, $static_type = 0, $vfn = 0, $vtable = 0, label = 0, sp = 0; sp = STACKTOP; $static_type = ((($info)) + 8|0); $0 = HEAP32[$static_type>>2]|0; $call = (__ZN10__cxxabiv18is_equalEPKSt9type_infoS2_b($this,$0,$use_strcmp)|0); if ($call) { __ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i(0,$info,$dst_ptr,$current_ptr,$path_below); } else { $__base_type = ((($this)) + 8|0); $1 = HEAP32[$__base_type>>2]|0; $vtable = HEAP32[$1>>2]|0; $vfn = ((($vtable)) + 20|0); $2 = HEAP32[$vfn>>2]|0; FUNCTION_TABLE_viiiiii[$2 & 15]($1,$info,$dst_ptr,$current_ptr,$path_below,$use_strcmp); } return; } function __ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib($this,$info,$current_ptr,$path_below,$use_strcmp) { $this = $this|0; $info = $info|0; $current_ptr = $current_ptr|0; $path_below = $path_below|0; $use_strcmp = $use_strcmp|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $__base_type = 0, $__base_type40 = 0, $add = 0, $call = 0, $call3 = 0, $cmp = 0; var $cmp11 = 0, $cmp26 = 0, $cmp27 = 0, $cmp5 = 0, $cmp7 = 0, $dst_ptr_leading_to_static_ptr = 0, $dst_ptr_not_leading_to_static_ptr = 0, $found_any_static_type = 0, $found_our_static_ptr = 0, $is_dst_type_derived_from_static_type = 0, $is_dst_type_derived_from_static_type13$0$off032 = 0, $is_dst_type_derived_from_static_type13$0$off033 = 0, $number_to_dst_ptr = 0, $number_to_static_ptr = 0, $path_dst_ptr_to_static_ptr = 0, $path_dynamic_ptr_to_dst_ptr = 0, $path_dynamic_ptr_to_dst_ptr10 = 0, $search_done = 0, $static_type = 0, $tobool16 = 0; var $tobool19 = 0, $vfn = 0, $vfn42 = 0, $vtable = 0, $vtable41 = 0, label = 0, sp = 0; sp = STACKTOP; $static_type = ((($info)) + 8|0); $0 = HEAP32[$static_type>>2]|0; $call = (__ZN10__cxxabiv18is_equalEPKSt9type_infoS2_b($this,$0,$use_strcmp)|0); do { if ($call) { __ZNK10__cxxabiv117__class_type_info29process_static_type_below_dstEPNS_19__dynamic_cast_infoEPKvi(0,$info,$current_ptr,$path_below); } else { $1 = HEAP32[$info>>2]|0; $call3 = (__ZN10__cxxabiv18is_equalEPKSt9type_infoS2_b($this,$1,$use_strcmp)|0); if (!($call3)) { $__base_type40 = ((($this)) + 8|0); $12 = HEAP32[$__base_type40>>2]|0; $vtable41 = HEAP32[$12>>2]|0; $vfn42 = ((($vtable41)) + 24|0); $13 = HEAP32[$vfn42>>2]|0; FUNCTION_TABLE_viiiii[$13 & 31]($12,$info,$current_ptr,$path_below,$use_strcmp); break; } $dst_ptr_leading_to_static_ptr = ((($info)) + 16|0); $2 = HEAP32[$dst_ptr_leading_to_static_ptr>>2]|0; $cmp = ($2|0)==($current_ptr|0); if (!($cmp)) { $dst_ptr_not_leading_to_static_ptr = ((($info)) + 20|0); $3 = HEAP32[$dst_ptr_not_leading_to_static_ptr>>2]|0; $cmp5 = ($3|0)==($current_ptr|0); if (!($cmp5)) { $path_dynamic_ptr_to_dst_ptr10 = ((($info)) + 32|0); HEAP32[$path_dynamic_ptr_to_dst_ptr10>>2] = $path_below; $is_dst_type_derived_from_static_type = ((($info)) + 44|0); $4 = HEAP32[$is_dst_type_derived_from_static_type>>2]|0; $cmp11 = ($4|0)==(4); if ($cmp11) { break; } $found_our_static_ptr = ((($info)) + 52|0); HEAP8[$found_our_static_ptr>>0] = 0; $found_any_static_type = ((($info)) + 53|0); HEAP8[$found_any_static_type>>0] = 0; $__base_type = ((($this)) + 8|0); $5 = HEAP32[$__base_type>>2]|0; $vtable = HEAP32[$5>>2]|0; $vfn = ((($vtable)) + 20|0); $6 = HEAP32[$vfn>>2]|0; FUNCTION_TABLE_viiiiii[$6 & 15]($5,$info,$current_ptr,$current_ptr,1,$use_strcmp); $7 = HEAP8[$found_any_static_type>>0]|0; $tobool16 = ($7<<24>>24)==(0); if ($tobool16) { $is_dst_type_derived_from_static_type13$0$off032 = 4; label = 11; } else { $8 = HEAP8[$found_our_static_ptr>>0]|0; $tobool19 = ($8<<24>>24)==(0); if ($tobool19) { $is_dst_type_derived_from_static_type13$0$off032 = 3; label = 11; } else { $is_dst_type_derived_from_static_type13$0$off033 = 3; } } if ((label|0) == 11) { HEAP32[$dst_ptr_not_leading_to_static_ptr>>2] = $current_ptr; $number_to_dst_ptr = ((($info)) + 40|0); $9 = HEAP32[$number_to_dst_ptr>>2]|0; $add = (($9) + 1)|0; HEAP32[$number_to_dst_ptr>>2] = $add; $number_to_static_ptr = ((($info)) + 36|0); $10 = HEAP32[$number_to_static_ptr>>2]|0; $cmp26 = ($10|0)==(1); if ($cmp26) { $path_dst_ptr_to_static_ptr = ((($info)) + 24|0); $11 = HEAP32[$path_dst_ptr_to_static_ptr>>2]|0; $cmp27 = ($11|0)==(2); if ($cmp27) { $search_done = ((($info)) + 54|0); HEAP8[$search_done>>0] = 1; $is_dst_type_derived_from_static_type13$0$off033 = $is_dst_type_derived_from_static_type13$0$off032; } else { $is_dst_type_derived_from_static_type13$0$off033 = $is_dst_type_derived_from_static_type13$0$off032; } } else { $is_dst_type_derived_from_static_type13$0$off033 = $is_dst_type_derived_from_static_type13$0$off032; } } HEAP32[$is_dst_type_derived_from_static_type>>2] = $is_dst_type_derived_from_static_type13$0$off033; break; } } $cmp7 = ($path_below|0)==(1); if ($cmp7) { $path_dynamic_ptr_to_dst_ptr = ((($info)) + 32|0); HEAP32[$path_dynamic_ptr_to_dst_ptr>>2] = 1; } } } while(0); return; } function __ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi($this,$info,$adjustedPtr,$path_below) { $this = $this|0; $info = $info|0; $adjustedPtr = $adjustedPtr|0; $path_below = $path_below|0; var $0 = 0, $1 = 0, $2 = 0, $__base_type = 0, $call = 0, $static_type = 0, $vfn = 0, $vtable = 0, label = 0, sp = 0; sp = STACKTOP; $static_type = ((($info)) + 8|0); $0 = HEAP32[$static_type>>2]|0; $call = (__ZN10__cxxabiv18is_equalEPKSt9type_infoS2_b($this,$0,0)|0); if ($call) { __ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi(0,$info,$adjustedPtr,$path_below); } else { $__base_type = ((($this)) + 8|0); $1 = HEAP32[$__base_type>>2]|0; $vtable = HEAP32[$1>>2]|0; $vfn = ((($vtable)) + 28|0); $2 = HEAP32[$vfn>>2]|0; FUNCTION_TABLE_viiii[$2 & 31]($1,$info,$adjustedPtr,$path_below); } return; } function __ZNSt9type_infoD2Ev($this) { $this = $this|0; var label = 0, sp = 0; sp = STACKTOP; return; } function __ZNSt9bad_allocD2Ev($this) { $this = $this|0; var label = 0, sp = 0; sp = STACKTOP; return; } function __ZNSt9bad_allocD0Ev($this) { $this = $this|0; var label = 0, sp = 0; sp = STACKTOP; __ZNSt9bad_allocD2Ev($this); __ZdlPv($this); return; } function __ZNKSt9bad_alloc4whatEv($this) { $this = $this|0; var label = 0, sp = 0; sp = STACKTOP; return (38653|0); } function __ZNSt9exceptionD2Ev($this) { $this = $this|0; var label = 0, sp = 0; sp = STACKTOP; return; } function __ZNSt9bad_allocC2Ev($this) { $this = $this|0; var label = 0, sp = 0; sp = STACKTOP; HEAP32[$this>>2] = (21356); return; } function __ZSt15get_new_handlerv() { var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; sp = STACKTOP; $0 = HEAP32[9816]|0; $1 = (($0) + 0)|0; HEAP32[9816] = $1; $2 = $0; return ($2|0); } function runPostSets() { } function ___muldsi3($a, $b) { $a = $a | 0; $b = $b | 0; var $1 = 0, $2 = 0, $3 = 0, $6 = 0, $8 = 0, $11 = 0, $12 = 0; $1 = $a & 65535; $2 = $b & 65535; $3 = Math_imul($2, $1) | 0; $6 = $a >>> 16; $8 = ($3 >>> 16) + (Math_imul($2, $6) | 0) | 0; $11 = $b >>> 16; $12 = Math_imul($11, $1) | 0; return (tempRet0 = (($8 >>> 16) + (Math_imul($11, $6) | 0) | 0) + ((($8 & 65535) + $12 | 0) >>> 16) | 0, 0 | ($8 + $12 << 16 | $3 & 65535)) | 0; } function ___muldi3($a$0, $a$1, $b$0, $b$1) { $a$0 = $a$0 | 0; $a$1 = $a$1 | 0; $b$0 = $b$0 | 0; $b$1 = $b$1 | 0; var $x_sroa_0_0_extract_trunc = 0, $y_sroa_0_0_extract_trunc = 0, $1$0 = 0, $1$1 = 0, $2 = 0; $x_sroa_0_0_extract_trunc = $a$0; $y_sroa_0_0_extract_trunc = $b$0; $1$0 = ___muldsi3($x_sroa_0_0_extract_trunc, $y_sroa_0_0_extract_trunc) | 0; $1$1 = tempRet0; $2 = Math_imul($a$1, $y_sroa_0_0_extract_trunc) | 0; return (tempRet0 = ((Math_imul($b$1, $x_sroa_0_0_extract_trunc) | 0) + $2 | 0) + $1$1 | $1$1 & 0, 0 | $1$0 & -1) | 0; } function _i64Add(a, b, c, d) { /* x = a + b*2^32 y = c + d*2^32 result = l + h*2^32 */ a = a|0; b = b|0; c = c|0; d = d|0; var l = 0, h = 0; l = (a + c)>>>0; h = (b + d + (((l>>>0) < (a>>>0))|0))>>>0; // Add carry from low word to high word on overflow. return ((tempRet0 = h,l|0)|0); } function _i64Subtract(a, b, c, d) { a = a|0; b = b|0; c = c|0; d = d|0; var l = 0, h = 0; l = (a - c)>>>0; h = (b - d)>>>0; h = (b - d - (((c>>>0) > (a>>>0))|0))>>>0; // Borrow one from high word to low word on underflow. return ((tempRet0 = h,l|0)|0); } function _llvm_cttz_i32(x) { x = x|0; var ret = 0; ret = ((HEAP8[(((cttz_i8)+(x & 0xff))>>0)])|0); if ((ret|0) < 8) return ret|0; ret = ((HEAP8[(((cttz_i8)+((x >> 8)&0xff))>>0)])|0); if ((ret|0) < 8) return (ret + 8)|0; ret = ((HEAP8[(((cttz_i8)+((x >> 16)&0xff))>>0)])|0); if ((ret|0) < 8) return (ret + 16)|0; return (((HEAP8[(((cttz_i8)+(x >>> 24))>>0)])|0) + 24)|0; } function ___udivmoddi4($a$0, $a$1, $b$0, $b$1, $rem) { $a$0 = $a$0 | 0; $a$1 = $a$1 | 0; $b$0 = $b$0 | 0; $b$1 = $b$1 | 0; $rem = $rem | 0; var $n_sroa_0_0_extract_trunc = 0, $n_sroa_1_4_extract_shift$0 = 0, $n_sroa_1_4_extract_trunc = 0, $d_sroa_0_0_extract_trunc = 0, $d_sroa_1_4_extract_shift$0 = 0, $d_sroa_1_4_extract_trunc = 0, $4 = 0, $17 = 0, $37 = 0, $49 = 0, $51 = 0, $57 = 0, $58 = 0, $66 = 0, $78 = 0, $86 = 0, $88 = 0, $89 = 0, $91 = 0, $92 = 0, $95 = 0, $105 = 0, $117 = 0, $119 = 0, $125 = 0, $126 = 0, $130 = 0, $q_sroa_1_1_ph = 0, $q_sroa_0_1_ph = 0, $r_sroa_1_1_ph = 0, $r_sroa_0_1_ph = 0, $sr_1_ph = 0, $d_sroa_0_0_insert_insert99$0 = 0, $d_sroa_0_0_insert_insert99$1 = 0, $137$0 = 0, $137$1 = 0, $carry_0203 = 0, $sr_1202 = 0, $r_sroa_0_1201 = 0, $r_sroa_1_1200 = 0, $q_sroa_0_1199 = 0, $q_sroa_1_1198 = 0, $147 = 0, $149 = 0, $r_sroa_0_0_insert_insert42$0 = 0, $r_sroa_0_0_insert_insert42$1 = 0, $150$1 = 0, $151$0 = 0, $152 = 0, $154$0 = 0, $r_sroa_0_0_extract_trunc = 0, $r_sroa_1_4_extract_trunc = 0, $155 = 0, $carry_0_lcssa$0 = 0, $carry_0_lcssa$1 = 0, $r_sroa_0_1_lcssa = 0, $r_sroa_1_1_lcssa = 0, $q_sroa_0_1_lcssa = 0, $q_sroa_1_1_lcssa = 0, $q_sroa_0_0_insert_ext75$0 = 0, $q_sroa_0_0_insert_ext75$1 = 0, $q_sroa_0_0_insert_insert77$1 = 0, $_0$0 = 0, $_0$1 = 0; $n_sroa_0_0_extract_trunc = $a$0; $n_sroa_1_4_extract_shift$0 = $a$1; $n_sroa_1_4_extract_trunc = $n_sroa_1_4_extract_shift$0; $d_sroa_0_0_extract_trunc = $b$0; $d_sroa_1_4_extract_shift$0 = $b$1; $d_sroa_1_4_extract_trunc = $d_sroa_1_4_extract_shift$0; if (($n_sroa_1_4_extract_trunc | 0) == 0) { $4 = ($rem | 0) != 0; if (($d_sroa_1_4_extract_trunc | 0) == 0) { if ($4) { HEAP32[$rem >> 2] = ($n_sroa_0_0_extract_trunc >>> 0) % ($d_sroa_0_0_extract_trunc >>> 0); HEAP32[$rem + 4 >> 2] = 0; } $_0$1 = 0; $_0$0 = ($n_sroa_0_0_extract_trunc >>> 0) / ($d_sroa_0_0_extract_trunc >>> 0) >>> 0; return (tempRet0 = $_0$1, $_0$0) | 0; } else { if (!$4) { $_0$1 = 0; $_0$0 = 0; return (tempRet0 = $_0$1, $_0$0) | 0; } HEAP32[$rem >> 2] = $a$0 & -1; HEAP32[$rem + 4 >> 2] = $a$1 & 0; $_0$1 = 0; $_0$0 = 0; return (tempRet0 = $_0$1, $_0$0) | 0; } } $17 = ($d_sroa_1_4_extract_trunc | 0) == 0; do { if (($d_sroa_0_0_extract_trunc | 0) == 0) { if ($17) { if (($rem | 0) != 0) { HEAP32[$rem >> 2] = ($n_sroa_1_4_extract_trunc >>> 0) % ($d_sroa_0_0_extract_trunc >>> 0); HEAP32[$rem + 4 >> 2] = 0; } $_0$1 = 0; $_0$0 = ($n_sroa_1_4_extract_trunc >>> 0) / ($d_sroa_0_0_extract_trunc >>> 0) >>> 0; return (tempRet0 = $_0$1, $_0$0) | 0; } if (($n_sroa_0_0_extract_trunc | 0) == 0) { if (($rem | 0) != 0) { HEAP32[$rem >> 2] = 0; HEAP32[$rem + 4 >> 2] = ($n_sroa_1_4_extract_trunc >>> 0) % ($d_sroa_1_4_extract_trunc >>> 0); } $_0$1 = 0; $_0$0 = ($n_sroa_1_4_extract_trunc >>> 0) / ($d_sroa_1_4_extract_trunc >>> 0) >>> 0; return (tempRet0 = $_0$1, $_0$0) | 0; } $37 = $d_sroa_1_4_extract_trunc - 1 | 0; if (($37 & $d_sroa_1_4_extract_trunc | 0) == 0) { if (($rem | 0) != 0) { HEAP32[$rem >> 2] = 0 | $a$0 & -1; HEAP32[$rem + 4 >> 2] = $37 & $n_sroa_1_4_extract_trunc | $a$1 & 0; } $_0$1 = 0; $_0$0 = $n_sroa_1_4_extract_trunc >>> ((_llvm_cttz_i32($d_sroa_1_4_extract_trunc | 0) | 0) >>> 0); return (tempRet0 = $_0$1, $_0$0) | 0; } $49 = Math_clz32($d_sroa_1_4_extract_trunc | 0) | 0; $51 = $49 - (Math_clz32($n_sroa_1_4_extract_trunc | 0) | 0) | 0; if ($51 >>> 0 <= 30) { $57 = $51 + 1 | 0; $58 = 31 - $51 | 0; $sr_1_ph = $57; $r_sroa_0_1_ph = $n_sroa_1_4_extract_trunc << $58 | $n_sroa_0_0_extract_trunc >>> ($57 >>> 0); $r_sroa_1_1_ph = $n_sroa_1_4_extract_trunc >>> ($57 >>> 0); $q_sroa_0_1_ph = 0; $q_sroa_1_1_ph = $n_sroa_0_0_extract_trunc << $58; break; } if (($rem | 0) == 0) { $_0$1 = 0; $_0$0 = 0; return (tempRet0 = $_0$1, $_0$0) | 0; } HEAP32[$rem >> 2] = 0 | $a$0 & -1; HEAP32[$rem + 4 >> 2] = $n_sroa_1_4_extract_shift$0 | $a$1 & 0; $_0$1 = 0; $_0$0 = 0; return (tempRet0 = $_0$1, $_0$0) | 0; } else { if (!$17) { $117 = Math_clz32($d_sroa_1_4_extract_trunc | 0) | 0; $119 = $117 - (Math_clz32($n_sroa_1_4_extract_trunc | 0) | 0) | 0; if ($119 >>> 0 <= 31) { $125 = $119 + 1 | 0; $126 = 31 - $119 | 0; $130 = $119 - 31 >> 31; $sr_1_ph = $125; $r_sroa_0_1_ph = $n_sroa_0_0_extract_trunc >>> ($125 >>> 0) & $130 | $n_sroa_1_4_extract_trunc << $126; $r_sroa_1_1_ph = $n_sroa_1_4_extract_trunc >>> ($125 >>> 0) & $130; $q_sroa_0_1_ph = 0; $q_sroa_1_1_ph = $n_sroa_0_0_extract_trunc << $126; break; } if (($rem | 0) == 0) { $_0$1 = 0; $_0$0 = 0; return (tempRet0 = $_0$1, $_0$0) | 0; } HEAP32[$rem >> 2] = 0 | $a$0 & -1; HEAP32[$rem + 4 >> 2] = $n_sroa_1_4_extract_shift$0 | $a$1 & 0; $_0$1 = 0; $_0$0 = 0; return (tempRet0 = $_0$1, $_0$0) | 0; } $66 = $d_sroa_0_0_extract_trunc - 1 | 0; if (($66 & $d_sroa_0_0_extract_trunc | 0) != 0) { $86 = (Math_clz32($d_sroa_0_0_extract_trunc | 0) | 0) + 33 | 0; $88 = $86 - (Math_clz32($n_sroa_1_4_extract_trunc | 0) | 0) | 0; $89 = 64 - $88 | 0; $91 = 32 - $88 | 0; $92 = $91 >> 31; $95 = $88 - 32 | 0; $105 = $95 >> 31; $sr_1_ph = $88; $r_sroa_0_1_ph = $91 - 1 >> 31 & $n_sroa_1_4_extract_trunc >>> ($95 >>> 0) | ($n_sroa_1_4_extract_trunc << $91 | $n_sroa_0_0_extract_trunc >>> ($88 >>> 0)) & $105; $r_sroa_1_1_ph = $105 & $n_sroa_1_4_extract_trunc >>> ($88 >>> 0); $q_sroa_0_1_ph = $n_sroa_0_0_extract_trunc << $89 & $92; $q_sroa_1_1_ph = ($n_sroa_1_4_extract_trunc << $89 | $n_sroa_0_0_extract_trunc >>> ($95 >>> 0)) & $92 | $n_sroa_0_0_extract_trunc << $91 & $88 - 33 >> 31; break; } if (($rem | 0) != 0) { HEAP32[$rem >> 2] = $66 & $n_sroa_0_0_extract_trunc; HEAP32[$rem + 4 >> 2] = 0; } if (($d_sroa_0_0_extract_trunc | 0) == 1) { $_0$1 = $n_sroa_1_4_extract_shift$0 | $a$1 & 0; $_0$0 = 0 | $a$0 & -1; return (tempRet0 = $_0$1, $_0$0) | 0; } else { $78 = _llvm_cttz_i32($d_sroa_0_0_extract_trunc | 0) | 0; $_0$1 = 0 | $n_sroa_1_4_extract_trunc >>> ($78 >>> 0); $_0$0 = $n_sroa_1_4_extract_trunc << 32 - $78 | $n_sroa_0_0_extract_trunc >>> ($78 >>> 0) | 0; return (tempRet0 = $_0$1, $_0$0) | 0; } } } while (0); if (($sr_1_ph | 0) == 0) { $q_sroa_1_1_lcssa = $q_sroa_1_1_ph; $q_sroa_0_1_lcssa = $q_sroa_0_1_ph; $r_sroa_1_1_lcssa = $r_sroa_1_1_ph; $r_sroa_0_1_lcssa = $r_sroa_0_1_ph; $carry_0_lcssa$1 = 0; $carry_0_lcssa$0 = 0; } else { $d_sroa_0_0_insert_insert99$0 = 0 | $b$0 & -1; $d_sroa_0_0_insert_insert99$1 = $d_sroa_1_4_extract_shift$0 | $b$1 & 0; $137$0 = _i64Add($d_sroa_0_0_insert_insert99$0 | 0, $d_sroa_0_0_insert_insert99$1 | 0, -1, -1) | 0; $137$1 = tempRet0; $q_sroa_1_1198 = $q_sroa_1_1_ph; $q_sroa_0_1199 = $q_sroa_0_1_ph; $r_sroa_1_1200 = $r_sroa_1_1_ph; $r_sroa_0_1201 = $r_sroa_0_1_ph; $sr_1202 = $sr_1_ph; $carry_0203 = 0; while (1) { $147 = $q_sroa_0_1199 >>> 31 | $q_sroa_1_1198 << 1; $149 = $carry_0203 | $q_sroa_0_1199 << 1; $r_sroa_0_0_insert_insert42$0 = 0 | ($r_sroa_0_1201 << 1 | $q_sroa_1_1198 >>> 31); $r_sroa_0_0_insert_insert42$1 = $r_sroa_0_1201 >>> 31 | $r_sroa_1_1200 << 1 | 0; _i64Subtract($137$0 | 0, $137$1 | 0, $r_sroa_0_0_insert_insert42$0 | 0, $r_sroa_0_0_insert_insert42$1 | 0) | 0; $150$1 = tempRet0; $151$0 = $150$1 >> 31 | (($150$1 | 0) < 0 ? -1 : 0) << 1; $152 = $151$0 & 1; $154$0 = _i64Subtract($r_sroa_0_0_insert_insert42$0 | 0, $r_sroa_0_0_insert_insert42$1 | 0, $151$0 & $d_sroa_0_0_insert_insert99$0 | 0, ((($150$1 | 0) < 0 ? -1 : 0) >> 31 | (($150$1 | 0) < 0 ? -1 : 0) << 1) & $d_sroa_0_0_insert_insert99$1 | 0) | 0; $r_sroa_0_0_extract_trunc = $154$0; $r_sroa_1_4_extract_trunc = tempRet0; $155 = $sr_1202 - 1 | 0; if (($155 | 0) == 0) { break; } else { $q_sroa_1_1198 = $147; $q_sroa_0_1199 = $149; $r_sroa_1_1200 = $r_sroa_1_4_extract_trunc; $r_sroa_0_1201 = $r_sroa_0_0_extract_trunc; $sr_1202 = $155; $carry_0203 = $152; } } $q_sroa_1_1_lcssa = $147; $q_sroa_0_1_lcssa = $149; $r_sroa_1_1_lcssa = $r_sroa_1_4_extract_trunc; $r_sroa_0_1_lcssa = $r_sroa_0_0_extract_trunc; $carry_0_lcssa$1 = 0; $carry_0_lcssa$0 = $152; } $q_sroa_0_0_insert_ext75$0 = $q_sroa_0_1_lcssa; $q_sroa_0_0_insert_ext75$1 = 0; $q_sroa_0_0_insert_insert77$1 = $q_sroa_1_1_lcssa | $q_sroa_0_0_insert_ext75$1; if (($rem | 0) != 0) { HEAP32[$rem >> 2] = 0 | $r_sroa_0_1_lcssa; HEAP32[$rem + 4 >> 2] = $r_sroa_1_1_lcssa | 0; } $_0$1 = (0 | $q_sroa_0_0_insert_ext75$0) >>> 31 | $q_sroa_0_0_insert_insert77$1 << 1 | ($q_sroa_0_0_insert_ext75$1 << 1 | $q_sroa_0_0_insert_ext75$0 >>> 31) & 0 | $carry_0_lcssa$1; $_0$0 = ($q_sroa_0_0_insert_ext75$0 << 1 | 0 >>> 31) & -2 | $carry_0_lcssa$0; return (tempRet0 = $_0$1, $_0$0) | 0; } function ___udivdi3($a$0, $a$1, $b$0, $b$1) { $a$0 = $a$0 | 0; $a$1 = $a$1 | 0; $b$0 = $b$0 | 0; $b$1 = $b$1 | 0; var $1$0 = 0; $1$0 = ___udivmoddi4($a$0, $a$1, $b$0, $b$1, 0) | 0; return $1$0 | 0; } function ___uremdi3($a$0, $a$1, $b$0, $b$1) { $a$0 = $a$0 | 0; $a$1 = $a$1 | 0; $b$0 = $b$0 | 0; $b$1 = $b$1 | 0; var $rem = 0, __stackBase__ = 0; __stackBase__ = STACKTOP; STACKTOP = STACKTOP + 16 | 0; $rem = __stackBase__ | 0; ___udivmoddi4($a$0, $a$1, $b$0, $b$1, $rem) | 0; STACKTOP = __stackBase__; return (tempRet0 = HEAP32[$rem + 4 >> 2] | 0, HEAP32[$rem >> 2] | 0) | 0; } function _bitshift64Ashr(low, high, bits) { low = low|0; high = high|0; bits = bits|0; var ander = 0; if ((bits|0) < 32) { ander = ((1 << bits) - 1)|0; tempRet0 = high >> bits; return (low >>> bits) | ((high&ander) << (32 - bits)); } tempRet0 = (high|0) < 0 ? -1 : 0; return (high >> (bits - 32))|0; } function _bitshift64Lshr(low, high, bits) { low = low|0; high = high|0; bits = bits|0; var ander = 0; if ((bits|0) < 32) { ander = ((1 << bits) - 1)|0; tempRet0 = high >>> bits; return (low >>> bits) | ((high&ander) << (32 - bits)); } tempRet0 = 0; return (high >>> (bits - 32))|0; } function _bitshift64Shl(low, high, bits) { low = low|0; high = high|0; bits = bits|0; var ander = 0; if ((bits|0) < 32) { ander = ((1 << bits) - 1)|0; tempRet0 = (high << bits) | ((low&(ander << (32 - bits))) >>> (32 - bits)); return low << bits; } tempRet0 = low << (bits - 32); return 0; } function _llvm_bswap_i32(x) { x = x|0; return (((x&0xff)<<24) | (((x>>8)&0xff)<<16) | (((x>>16)&0xff)<<8) | (x>>>24))|0; } function _memcpy(dest, src, num) { dest = dest|0; src = src|0; num = num|0; var ret = 0; var aligned_dest_end = 0; var block_aligned_dest_end = 0; var dest_end = 0; // Test against a benchmarked cutoff limit for when HEAPU8.set() becomes faster to use. if ((num|0) >= 196608 ) { return _emscripten_memcpy_big(dest|0, src|0, num|0)|0; } ret = dest|0; dest_end = (dest + num)|0; if ((dest&3) == (src&3)) { // The initial unaligned < 4-byte front. while (dest & 3) { if ((num|0) == 0) return ret|0; HEAP8[((dest)>>0)]=((HEAP8[((src)>>0)])|0); dest = (dest+1)|0; src = (src+1)|0; num = (num-1)|0; } aligned_dest_end = (dest_end & -4)|0; block_aligned_dest_end = (aligned_dest_end - 64)|0; while ((dest|0) <= (block_aligned_dest_end|0) ) { SIMD_Int32x4_store(HEAPU8, dest, SIMD_Int32x4_load(HEAPU8, src)); SIMD_Int32x4_store(HEAPU8, dest+16, SIMD_Int32x4_load(HEAPU8, src+16)); SIMD_Int32x4_store(HEAPU8, dest+32, SIMD_Int32x4_load(HEAPU8, src+32)); SIMD_Int32x4_store(HEAPU8, dest+48, SIMD_Int32x4_load(HEAPU8, src+48)); dest = (dest+64)|0; src = (src+64)|0; } while ((dest|0) < (aligned_dest_end|0) ) { HEAP32[((dest)>>2)]=((HEAP32[((src)>>2)])|0); dest = (dest+4)|0; src = (src+4)|0; } } else { // In the unaligned copy case, unroll a bit as well. aligned_dest_end = (dest_end - 4)|0; while ((dest|0) < (aligned_dest_end|0) ) { HEAP8[((dest)>>0)]=((HEAP8[((src)>>0)])|0); HEAP8[(((dest)+(1))>>0)]=((HEAP8[(((src)+(1))>>0)])|0); HEAP8[(((dest)+(2))>>0)]=((HEAP8[(((src)+(2))>>0)])|0); HEAP8[(((dest)+(3))>>0)]=((HEAP8[(((src)+(3))>>0)])|0); dest = (dest+4)|0; src = (src+4)|0; } } // The remaining unaligned < 4 byte tail. while ((dest|0) < (dest_end|0)) { HEAP8[((dest)>>0)]=((HEAP8[((src)>>0)])|0); dest = (dest+1)|0; src = (src+1)|0; } return ret|0; } function _memmove(dest, src, num) { dest = dest|0; src = src|0; num = num|0; var ret = 0; if (((src|0) < (dest|0)) & ((dest|0) < ((src + num)|0))) { // Unlikely case: Copy backwards in a safe manner ret = dest; src = (src + num)|0; dest = (dest + num)|0; while ((num|0) > 0) { dest = (dest - 1)|0; src = (src - 1)|0; num = (num - 1)|0; HEAP8[((dest)>>0)]=((HEAP8[((src)>>0)])|0); } dest = ret; } else { _memcpy(dest, src, num) | 0; } return dest | 0; } function _memset(ptr, value, num) { ptr = ptr|0; value = value|0; num = num|0; var end = 0, aligned_end = 0, block_aligned_end = 0, value4 = 0; var value16 = SIMD_Int32x4(0,0,0,0); end = (ptr + num)|0; value = value & 0xff; if ((num|0) >= 67 /* 64 bytes for an unrolled loop + 3 bytes for unaligned head*/) { while ((ptr&3) != 0) { HEAP8[((ptr)>>0)]=value; ptr = (ptr+1)|0; } aligned_end = (end & -4)|0; block_aligned_end = (aligned_end - 64)|0; value4 = value | (value << 8) | (value << 16) | (value << 24); value16 = SIMD_Int32x4_splat(value4); while((ptr|0) <= (block_aligned_end|0)) { SIMD_Int32x4_store(HEAPU8, ptr, value16); SIMD_Int32x4_store(HEAPU8, ptr+16, value16); SIMD_Int32x4_store(HEAPU8, ptr+32, value16); SIMD_Int32x4_store(HEAPU8, ptr+48, value16); ptr = (ptr + 64)|0; } while ((ptr|0) < (aligned_end|0) ) { HEAP32[((ptr)>>2)]=value4; ptr = (ptr+4)|0; } } // The remaining bytes. while ((ptr|0) < (end|0)) { HEAP8[((ptr)>>0)]=value; ptr = (ptr+1)|0; } return (end-num)|0; } function _round(d) { d = +d; return d >= +0 ? +Math_floor(d + +0.5) : +Math_ceil(d - +0.5); } function _rintf(f) { f = +f; return (f - +Math_floor(f) != .5) ? +_round(f) : +_round(f / +2) * +2; } function _sbrk(increment) { increment = increment|0; var oldDynamicTop = 0; var oldDynamicTopOnChange = 0; var newDynamicTop = 0; var totalMemory = 0; increment = ((increment + 15) & -16)|0; oldDynamicTop = HEAP32[DYNAMICTOP_PTR>>2]|0; newDynamicTop = oldDynamicTop + increment | 0; if (((increment|0) > 0 & (newDynamicTop|0) < (oldDynamicTop|0)) // Detect and fail if we would wrap around signed 32-bit int. | (newDynamicTop|0) < 0) { // Also underflow, sbrk() should be able to be used to subtract. abortOnCannotGrowMemory()|0; ___setErrNo(12); return -1; } HEAP32[DYNAMICTOP_PTR>>2] = newDynamicTop; totalMemory = getTotalMemory()|0; if ((newDynamicTop|0) > (totalMemory|0)) { if ((enlargeMemory()|0) == 0) { HEAP32[DYNAMICTOP_PTR>>2] = oldDynamicTop; ___setErrNo(12); return -1; } } return oldDynamicTop|0; } function dynCall_diii(index,a1,a2,a3) { index = index|0; a1=a1|0; a2=a2|0; a3=a3|0; return +FUNCTION_TABLE_diii[index&0](a1|0,a2|0,a3|0); } function dynCall_diiiii(index,a1,a2,a3,a4,a5) { index = index|0; a1=a1|0; a2=a2|0; a3=a3|0; a4=a4|0; a5=a5|0; return +FUNCTION_TABLE_diiiii[index&0](a1|0,a2|0,a3|0,a4|0,a5|0); } function dynCall_ii(index,a1) { index = index|0; a1=a1|0; return FUNCTION_TABLE_ii[index&31](a1|0)|0; } function dynCall_iii(index,a1,a2) { index = index|0; a1=a1|0; a2=a2|0; return FUNCTION_TABLE_iii[index&3](a1|0,a2|0)|0; } function dynCall_iiii(index,a1,a2,a3) { index = index|0; a1=a1|0; a2=a2|0; a3=a3|0; return FUNCTION_TABLE_iiii[index&31](a1|0,a2|0,a3|0)|0; } function dynCall_v(index) { index = index|0; FUNCTION_TABLE_v[index&0](); } function dynCall_vi(index,a1) { index = index|0; a1=a1|0; FUNCTION_TABLE_vi[index&31](a1|0); } function dynCall_viiii(index,a1,a2,a3,a4) { index = index|0; a1=a1|0; a2=a2|0; a3=a3|0; a4=a4|0; FUNCTION_TABLE_viiii[index&31](a1|0,a2|0,a3|0,a4|0); } function dynCall_viiiiddd(index,a1,a2,a3,a4,a5,a6,a7) { index = index|0; a1=a1|0; a2=a2|0; a3=a3|0; a4=a4|0; a5=+a5; a6=+a6; a7=+a7; FUNCTION_TABLE_viiiiddd[index&0](a1|0,a2|0,a3|0,a4|0,+a5,+a6,+a7); } function dynCall_viiiii(index,a1,a2,a3,a4,a5) { index = index|0; a1=a1|0; a2=a2|0; a3=a3|0; a4=a4|0; a5=a5|0; FUNCTION_TABLE_viiiii[index&31](a1|0,a2|0,a3|0,a4|0,a5|0); } function dynCall_viiiiii(index,a1,a2,a3,a4,a5,a6) { index = index|0; a1=a1|0; a2=a2|0; a3=a3|0; a4=a4|0; a5=a5|0; a6=a6|0; FUNCTION_TABLE_viiiiii[index&15](a1|0,a2|0,a3|0,a4|0,a5|0,a6|0); } function dynCall_viiiiiii(index,a1,a2,a3,a4,a5,a6,a7) { index = index|0; a1=a1|0; a2=a2|0; a3=a3|0; a4=a4|0; a5=a5|0; a6=a6|0; a7=a7|0; FUNCTION_TABLE_viiiiiii[index&31](a1|0,a2|0,a3|0,a4|0,a5|0,a6|0,a7|0); } function b1(p0,p1,p2) { p0 = p0|0;p1 = p1|0;p2 = p2|0; nullFunc_diii(0);return +0; } function b3(p0,p1,p2,p3,p4) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0; nullFunc_diiiii(0);return +0; } function b5(p0) { p0 = p0|0; nullFunc_ii(0);return 0; } function b6(p0) { p0 = p0|0; nullFunc_ii(1);return 0; } function b7(p0) { p0 = p0|0; nullFunc_ii(2);return 0; } function b8(p0) { p0 = p0|0; nullFunc_ii(4);return 0; } function b9(p0) { p0 = p0|0; nullFunc_ii(5);return 0; } function b10(p0) { p0 = p0|0; nullFunc_ii(6);return 0; } function b11(p0) { p0 = p0|0; nullFunc_ii(7);return 0; } function b12(p0) { p0 = p0|0; nullFunc_ii(8);return 0; } function b13(p0) { p0 = p0|0; nullFunc_ii(9);return 0; } function b14(p0) { p0 = p0|0; nullFunc_ii(10);return 0; } function b15(p0) { p0 = p0|0; nullFunc_ii(11);return 0; } function b16(p0) { p0 = p0|0; nullFunc_ii(12);return 0; } function b17(p0) { p0 = p0|0; nullFunc_ii(13);return 0; } function b18(p0) { p0 = p0|0; nullFunc_ii(14);return 0; } function b19(p0) { p0 = p0|0; nullFunc_ii(15);return 0; } function b20(p0) { p0 = p0|0; nullFunc_ii(16);return 0; } function b21(p0) { p0 = p0|0; nullFunc_ii(17);return 0; } function b22(p0) { p0 = p0|0; nullFunc_ii(18);return 0; } function b23(p0) { p0 = p0|0; nullFunc_ii(19);return 0; } function b24(p0) { p0 = p0|0; nullFunc_ii(21);return 0; } function b25(p0) { p0 = p0|0; nullFunc_ii(22);return 0; } function b26(p0) { p0 = p0|0; nullFunc_ii(23);return 0; } function b27(p0) { p0 = p0|0; nullFunc_ii(24);return 0; } function b28(p0) { p0 = p0|0; nullFunc_ii(25);return 0; } function b29(p0) { p0 = p0|0; nullFunc_ii(26);return 0; } function b30(p0) { p0 = p0|0; nullFunc_ii(27);return 0; } function b31(p0) { p0 = p0|0; nullFunc_ii(28);return 0; } function b32(p0) { p0 = p0|0; nullFunc_ii(29);return 0; } function b33(p0) { p0 = p0|0; nullFunc_ii(30);return 0; } function b34(p0) { p0 = p0|0; nullFunc_ii(31);return 0; } function b36(p0,p1) { p0 = p0|0;p1 = p1|0; nullFunc_iii(0);return 0; } function b37(p0,p1) { p0 = p0|0;p1 = p1|0; nullFunc_iii(3);return 0; } function b39(p0,p1,p2) { p0 = p0|0;p1 = p1|0;p2 = p2|0; nullFunc_iiii(0);return 0; } function b40(p0,p1,p2) { p0 = p0|0;p1 = p1|0;p2 = p2|0; nullFunc_iiii(1);return 0; } function b41(p0,p1,p2) { p0 = p0|0;p1 = p1|0;p2 = p2|0; nullFunc_iiii(2);return 0; } function b42(p0,p1,p2) { p0 = p0|0;p1 = p1|0;p2 = p2|0; nullFunc_iiii(3);return 0; } function b43(p0,p1,p2) { p0 = p0|0;p1 = p1|0;p2 = p2|0; nullFunc_iiii(6);return 0; } function b44(p0,p1,p2) { p0 = p0|0;p1 = p1|0;p2 = p2|0; nullFunc_iiii(7);return 0; } function b45(p0,p1,p2) { p0 = p0|0;p1 = p1|0;p2 = p2|0; nullFunc_iiii(8);return 0; } function b46(p0,p1,p2) { p0 = p0|0;p1 = p1|0;p2 = p2|0; nullFunc_iiii(9);return 0; } function b47(p0,p1,p2) { p0 = p0|0;p1 = p1|0;p2 = p2|0; nullFunc_iiii(11);return 0; } function b48(p0,p1,p2) { p0 = p0|0;p1 = p1|0;p2 = p2|0; nullFunc_iiii(12);return 0; } function b49(p0,p1,p2) { p0 = p0|0;p1 = p1|0;p2 = p2|0; nullFunc_iiii(13);return 0; } function b50(p0,p1,p2) { p0 = p0|0;p1 = p1|0;p2 = p2|0; nullFunc_iiii(14);return 0; } function b51(p0,p1,p2) { p0 = p0|0;p1 = p1|0;p2 = p2|0; nullFunc_iiii(15);return 0; } function b52(p0,p1,p2) { p0 = p0|0;p1 = p1|0;p2 = p2|0; nullFunc_iiii(16);return 0; } function b53(p0,p1,p2) { p0 = p0|0;p1 = p1|0;p2 = p2|0; nullFunc_iiii(17);return 0; } function b54(p0,p1,p2) { p0 = p0|0;p1 = p1|0;p2 = p2|0; nullFunc_iiii(18);return 0; } function b55(p0,p1,p2) { p0 = p0|0;p1 = p1|0;p2 = p2|0; nullFunc_iiii(19);return 0; } function b56(p0,p1,p2) { p0 = p0|0;p1 = p1|0;p2 = p2|0; nullFunc_iiii(20);return 0; } function b57(p0,p1,p2) { p0 = p0|0;p1 = p1|0;p2 = p2|0; nullFunc_iiii(21);return 0; } function b58(p0,p1,p2) { p0 = p0|0;p1 = p1|0;p2 = p2|0; nullFunc_iiii(23);return 0; } function b59(p0,p1,p2) { p0 = p0|0;p1 = p1|0;p2 = p2|0; nullFunc_iiii(24);return 0; } function b60(p0,p1,p2) { p0 = p0|0;p1 = p1|0;p2 = p2|0; nullFunc_iiii(25);return 0; } function b61(p0,p1,p2) { p0 = p0|0;p1 = p1|0;p2 = p2|0; nullFunc_iiii(26);return 0; } function b62(p0,p1,p2) { p0 = p0|0;p1 = p1|0;p2 = p2|0; nullFunc_iiii(27);return 0; } function b63(p0,p1,p2) { p0 = p0|0;p1 = p1|0;p2 = p2|0; nullFunc_iiii(28);return 0; } function b64(p0,p1,p2) { p0 = p0|0;p1 = p1|0;p2 = p2|0; nullFunc_iiii(29);return 0; } function b65(p0,p1,p2) { p0 = p0|0;p1 = p1|0;p2 = p2|0; nullFunc_iiii(30);return 0; } function b66(p0,p1,p2) { p0 = p0|0;p1 = p1|0;p2 = p2|0; nullFunc_iiii(31);return 0; } function b68() { ; nullFunc_v(0); } function b70(p0) { p0 = p0|0; nullFunc_vi(0); } function b71(p0) { p0 = p0|0; nullFunc_vi(1); } function b72(p0) { p0 = p0|0; nullFunc_vi(2); } function b73(p0) { p0 = p0|0; nullFunc_vi(3); } function b74(p0) { p0 = p0|0; nullFunc_vi(4); } function b75(p0) { p0 = p0|0; nullFunc_vi(5); } function b76(p0) { p0 = p0|0; nullFunc_vi(10); } function b77(p0) { p0 = p0|0; nullFunc_vi(11); } function b78(p0) { p0 = p0|0; nullFunc_vi(12); } function b79(p0) { p0 = p0|0; nullFunc_vi(13); } function b80(p0) { p0 = p0|0; nullFunc_vi(15); } function b81(p0) { p0 = p0|0; nullFunc_vi(16); } function b82(p0) { p0 = p0|0; nullFunc_vi(17); } function b83(p0) { p0 = p0|0; nullFunc_vi(20); } function b84(p0) { p0 = p0|0; nullFunc_vi(21); } function b85(p0) { p0 = p0|0; nullFunc_vi(22); } function b86(p0) { p0 = p0|0; nullFunc_vi(23); } function b87(p0) { p0 = p0|0; nullFunc_vi(24); } function b88(p0) { p0 = p0|0; nullFunc_vi(25); } function b89(p0) { p0 = p0|0; nullFunc_vi(26); } function b90(p0) { p0 = p0|0; nullFunc_vi(27); } function b91(p0) { p0 = p0|0; nullFunc_vi(28); } function b92(p0) { p0 = p0|0; nullFunc_vi(29); } function b93(p0) { p0 = p0|0; nullFunc_vi(30); } function b94(p0) { p0 = p0|0; nullFunc_vi(31); } function b96(p0,p1,p2,p3) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0; nullFunc_viiii(0); } function b97(p0,p1,p2,p3) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0; nullFunc_viiii(1); } function b98(p0,p1,p2,p3) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0; nullFunc_viiii(2); } function b99(p0,p1,p2,p3) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0; nullFunc_viiii(3); } function b100(p0,p1,p2,p3) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0; nullFunc_viiii(4); } function b101(p0,p1,p2,p3) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0; nullFunc_viiii(5); } function b102(p0,p1,p2,p3) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0; nullFunc_viiii(6); } function b103(p0,p1,p2,p3) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0; nullFunc_viiii(7); } function b104(p0,p1,p2,p3) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0; nullFunc_viiii(8); } function b105(p0,p1,p2,p3) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0; nullFunc_viiii(9); } function b106(p0,p1,p2,p3) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0; nullFunc_viiii(10); } function b107(p0,p1,p2,p3) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0; nullFunc_viiii(11); } function b108(p0,p1,p2,p3) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0; nullFunc_viiii(12); } function b109(p0,p1,p2,p3) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0; nullFunc_viiii(14); } function b110(p0,p1,p2,p3) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0; nullFunc_viiii(15); } function b111(p0,p1,p2,p3) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0; nullFunc_viiii(16); } function b112(p0,p1,p2,p3) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0; nullFunc_viiii(18); } function b113(p0,p1,p2,p3) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0; nullFunc_viiii(19); } function b114(p0,p1,p2,p3) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0; nullFunc_viiii(20); } function b115(p0,p1,p2,p3) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0; nullFunc_viiii(21); } function b116(p0,p1,p2,p3) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0; nullFunc_viiii(22); } function b117(p0,p1,p2,p3) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0; nullFunc_viiii(23); } function b118(p0,p1,p2,p3) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0; nullFunc_viiii(24); } function b119(p0,p1,p2,p3) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0; nullFunc_viiii(25); } function b120(p0,p1,p2,p3) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0; nullFunc_viiii(26); } function b121(p0,p1,p2,p3) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0; nullFunc_viiii(27); } function b122(p0,p1,p2,p3) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0; nullFunc_viiii(28); } function b123(p0,p1,p2,p3) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0; nullFunc_viiii(29); } function b124(p0,p1,p2,p3) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0; nullFunc_viiii(30); } function b125(p0,p1,p2,p3) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0; nullFunc_viiii(31); } function b127(p0,p1,p2,p3,p4,p5,p6) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = +p4;p5 = +p5;p6 = +p6; nullFunc_viiiiddd(0); } function b129(p0,p1,p2,p3,p4) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0; nullFunc_viiiii(0); } function b130(p0,p1,p2,p3,p4) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0; nullFunc_viiiii(1); } function b131(p0,p1,p2,p3,p4) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0; nullFunc_viiiii(2); } function b132(p0,p1,p2,p3,p4) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0; nullFunc_viiiii(3); } function b133(p0,p1,p2,p3,p4) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0; nullFunc_viiiii(4); } function b134(p0,p1,p2,p3,p4) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0; nullFunc_viiiii(5); } function b135(p0,p1,p2,p3,p4) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0; nullFunc_viiiii(6); } function b136(p0,p1,p2,p3,p4) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0; nullFunc_viiiii(7); } function b137(p0,p1,p2,p3,p4) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0; nullFunc_viiiii(8); } function b138(p0,p1,p2,p3,p4) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0; nullFunc_viiiii(9); } function b139(p0,p1,p2,p3,p4) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0; nullFunc_viiiii(10); } function b140(p0,p1,p2,p3,p4) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0; nullFunc_viiiii(11); } function b141(p0,p1,p2,p3,p4) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0; nullFunc_viiiii(13); } function b142(p0,p1,p2,p3,p4) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0; nullFunc_viiiii(14); } function b143(p0,p1,p2,p3,p4) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0; nullFunc_viiiii(15); } function b144(p0,p1,p2,p3,p4) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0; nullFunc_viiiii(17); } function b145(p0,p1,p2,p3,p4) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0; nullFunc_viiiii(18); } function b146(p0,p1,p2,p3,p4) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0; nullFunc_viiiii(19); } function b147(p0,p1,p2,p3,p4) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0; nullFunc_viiiii(20); } function b148(p0,p1,p2,p3,p4) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0; nullFunc_viiiii(21); } function b149(p0,p1,p2,p3,p4) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0; nullFunc_viiiii(22); } function b150(p0,p1,p2,p3,p4) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0; nullFunc_viiiii(23); } function b151(p0,p1,p2,p3,p4) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0; nullFunc_viiiii(24); } function b152(p0,p1,p2,p3,p4) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0; nullFunc_viiiii(25); } function b153(p0,p1,p2,p3,p4) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0; nullFunc_viiiii(26); } function b154(p0,p1,p2,p3,p4) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0; nullFunc_viiiii(27); } function b155(p0,p1,p2,p3,p4) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0; nullFunc_viiiii(28); } function b156(p0,p1,p2,p3,p4) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0; nullFunc_viiiii(29); } function b157(p0,p1,p2,p3,p4) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0; nullFunc_viiiii(30); } function b158(p0,p1,p2,p3,p4) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0; nullFunc_viiiii(31); } function b160(p0,p1,p2,p3,p4,p5) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0; nullFunc_viiiiii(0); } function b161(p0,p1,p2,p3,p4,p5) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0; nullFunc_viiiiii(1); } function b162(p0,p1,p2,p3,p4,p5) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0; nullFunc_viiiiii(2); } function b163(p0,p1,p2,p3,p4,p5) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0; nullFunc_viiiiii(3); } function b164(p0,p1,p2,p3,p4,p5) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0; nullFunc_viiiiii(4); } function b165(p0,p1,p2,p3,p4,p5) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0; nullFunc_viiiiii(5); } function b166(p0,p1,p2,p3,p4,p5) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0; nullFunc_viiiiii(6); } function b167(p0,p1,p2,p3,p4,p5) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0; nullFunc_viiiiii(7); } function b168(p0,p1,p2,p3,p4,p5) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0; nullFunc_viiiiii(8); } function b169(p0,p1,p2,p3,p4,p5) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0; nullFunc_viiiiii(9); } function b170(p0,p1,p2,p3,p4,p5) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0; nullFunc_viiiiii(10); } function b171(p0,p1,p2,p3,p4,p5) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0; nullFunc_viiiiii(12); } function b172(p0,p1,p2,p3,p4,p5) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0; nullFunc_viiiiii(13); } function b173(p0,p1,p2,p3,p4,p5) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0; nullFunc_viiiiii(14); } function b175(p0,p1,p2,p3,p4,p5,p6) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0;p6 = p6|0; nullFunc_viiiiiii(0); } function b176(p0,p1,p2,p3,p4,p5,p6) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0;p6 = p6|0; nullFunc_viiiiiii(1); } function b177(p0,p1,p2,p3,p4,p5,p6) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0;p6 = p6|0; nullFunc_viiiiiii(2); } function b178(p0,p1,p2,p3,p4,p5,p6) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0;p6 = p6|0; nullFunc_viiiiiii(3); } function b179(p0,p1,p2,p3,p4,p5,p6) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0;p6 = p6|0; nullFunc_viiiiiii(4); } function b180(p0,p1,p2,p3,p4,p5,p6) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0;p6 = p6|0; nullFunc_viiiiiii(5); } function b181(p0,p1,p2,p3,p4,p5,p6) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0;p6 = p6|0; nullFunc_viiiiiii(6); } function b182(p0,p1,p2,p3,p4,p5,p6) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0;p6 = p6|0; nullFunc_viiiiiii(7); } function b183(p0,p1,p2,p3,p4,p5,p6) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0;p6 = p6|0; nullFunc_viiiiiii(8); } function b184(p0,p1,p2,p3,p4,p5,p6) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0;p6 = p6|0; nullFunc_viiiiiii(9); } function b185(p0,p1,p2,p3,p4,p5,p6) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0;p6 = p6|0; nullFunc_viiiiiii(10); } function b186(p0,p1,p2,p3,p4,p5,p6) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0;p6 = p6|0; nullFunc_viiiiiii(11); } function b187(p0,p1,p2,p3,p4,p5,p6) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0;p6 = p6|0; nullFunc_viiiiiii(12); } function b188(p0,p1,p2,p3,p4,p5,p6) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0;p6 = p6|0; nullFunc_viiiiiii(13); } function b189(p0,p1,p2,p3,p4,p5,p6) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0;p6 = p6|0; nullFunc_viiiiiii(14); } function b190(p0,p1,p2,p3,p4,p5,p6) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0;p6 = p6|0; nullFunc_viiiiiii(15); } function b191(p0,p1,p2,p3,p4,p5,p6) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0;p6 = p6|0; nullFunc_viiiiiii(16); } function b192(p0,p1,p2,p3,p4,p5,p6) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0;p6 = p6|0; nullFunc_viiiiiii(17); } function b193(p0,p1,p2,p3,p4,p5,p6) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0;p6 = p6|0; nullFunc_viiiiiii(18); } function b194(p0,p1,p2,p3,p4,p5,p6) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0;p6 = p6|0; nullFunc_viiiiiii(19); } function b195(p0,p1,p2,p3,p4,p5,p6) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0;p6 = p6|0; nullFunc_viiiiiii(20); } function b196(p0,p1,p2,p3,p4,p5,p6) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0;p6 = p6|0; nullFunc_viiiiiii(22); } function b197(p0,p1,p2,p3,p4,p5,p6) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0;p6 = p6|0; nullFunc_viiiiiii(23); } function b198(p0,p1,p2,p3,p4,p5,p6) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0;p6 = p6|0; nullFunc_viiiiiii(24); } function b199(p0,p1,p2,p3,p4,p5,p6) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0;p6 = p6|0; nullFunc_viiiiiii(25); } function b200(p0,p1,p2,p3,p4,p5,p6) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0;p6 = p6|0; nullFunc_viiiiiii(26); } function b201(p0,p1,p2,p3,p4,p5,p6) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0;p6 = p6|0; nullFunc_viiiiiii(27); } function b202(p0,p1,p2,p3,p4,p5,p6) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0;p6 = p6|0; nullFunc_viiiiiii(28); } function b203(p0,p1,p2,p3,p4,p5,p6) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0;p6 = p6|0; nullFunc_viiiiiii(29); } function b204(p0,p1,p2,p3,p4,p5,p6) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0;p6 = p6|0; nullFunc_viiiiiii(30); } function b205(p0,p1,p2,p3,p4,p5,p6) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0;p6 = p6|0; nullFunc_viiiiiii(31); } // EMSCRIPTEN_END_FUNCS var FUNCTION_TABLE_diii = [b1]; var FUNCTION_TABLE_diiiii = [b3]; var FUNCTION_TABLE_ii = [b5,b6,b7,___stdio_close,b8,b9,b10,b11,b12,b13,b14,b15,b16,b17,b18,b19,b20,b21,b22,b23,__ZNKSt9bad_alloc4whatEv,b24,b25,b26,b27,b28,b29,b30,b31 ,b32,b33,b34]; var FUNCTION_TABLE_iii = [b36,_silk_VAD_GetSA_Q8_c,_silk_VAD_GetSA_Q8_sse4_1,b37]; var FUNCTION_TABLE_iiii = [b39,b40,b41,b42,___stdout_write,___stdio_seek,b43,b44,b45,b46,__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv,b47,b48,b49,b50,b51,b52,b53,b54,b55,b56,b57,___stdio_write,b58,b59,b60,b61,b62,b63 ,b64,b65,b66]; var FUNCTION_TABLE_v = [b68]; var FUNCTION_TABLE_vi = [b70,b71,b72,b73,b74,b75,__ZN10__cxxabiv116__shim_type_infoD2Ev,__ZN10__cxxabiv117__class_type_infoD0Ev,__ZNK10__cxxabiv116__shim_type_info5noop1Ev,__ZNK10__cxxabiv116__shim_type_info5noop2Ev,b76,b77,b78,b79,__ZN10__cxxabiv120__si_class_type_infoD0Ev,b80,b81,b82,__ZNSt9bad_allocD2Ev,__ZNSt9bad_allocD0Ev,b83,b84,b85,b86,b87,b88,b89,b90,b91 ,b92,b93,b94]; var FUNCTION_TABLE_viiii = [b96,b97,b98,b99,b100,b101,b102,b103,b104,b105,b106,b107,b108,__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi,b109,b110,b111,__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi,b112,b113,b114,b115,b116,b117,b118,b119,b120,b121,b122 ,b123,b124,b125]; var FUNCTION_TABLE_viiiiddd = [b127]; var FUNCTION_TABLE_viiiii = [b129,b130,b131,b132,b133,b134,b135,b136,b137,b138,b139,b140,__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib,b141,b142,b143,__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib,b144,b145,b146,b147,b148,b149,b150,b151,b152,b153,b154,b155 ,b156,b157,b158]; var FUNCTION_TABLE_viiiiii = [b160,b161,b162,b163,b164,b165,b166,b167,b168,b169,b170,__ZNK10__cxxabiv117__class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib,b171,b172,b173,__ZNK10__cxxabiv120__si_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib]; var FUNCTION_TABLE_viiiiiii = [b175,b176,b177,b178,b179,b180,b181,b182,b183,b184,b185,b186,b187,b188,b189,b190,b191,b192,b193,b194,b195,_downmix_float,b196,b197,b198,b199,b200,b201,b202 ,b203,b204,b205]; return { ___errno_location: ___errno_location, ___muldi3: ___muldi3, ___udivdi3: ___udivdi3, ___uremdi3: ___uremdi3, _bitshift64Ashr: _bitshift64Ashr, _bitshift64Lshr: _bitshift64Lshr, _bitshift64Shl: _bitshift64Shl, _codec_opus_changeApplication: _codec_opus_changeApplication, _codec_opus_createNativeHandle: _codec_opus_createNativeHandle, _codec_opus_decode: _codec_opus_decode, _codec_opus_deleteNativeHandle: _codec_opus_deleteNativeHandle, _codec_opus_encode: _codec_opus_encode, _fflush: _fflush, _free: _free, _i64Add: _i64Add, _i64Subtract: _i64Subtract, _llvm_bswap_i32: _llvm_bswap_i32, _malloc: _malloc, _memcpy: _memcpy, _memmove: _memmove, _memset: _memset, _rintf: _rintf, _sbrk: _sbrk, dynCall_diii: dynCall_diii, dynCall_diiiii: dynCall_diiiii, dynCall_ii: dynCall_ii, dynCall_iii: dynCall_iii, dynCall_iiii: dynCall_iiii, dynCall_v: dynCall_v, dynCall_vi: dynCall_vi, dynCall_viiii: dynCall_viiii, dynCall_viiiiddd: dynCall_viiiiddd, dynCall_viiiii: dynCall_viiiii, dynCall_viiiiii: dynCall_viiiiii, dynCall_viiiiiii: dynCall_viiiiiii, establishStackSpace: establishStackSpace, getTempRet0: getTempRet0, runPostSets: runPostSets, setTempRet0: setTempRet0, setThrew: setThrew, stackAlloc: stackAlloc, stackRestore: stackRestore, stackSave: stackSave }; }) // EMSCRIPTEN_END_ASM (Module.asmGlobalArg, Module.asmLibraryArg, buffer); var real____errno_location = asm["___errno_location"]; asm["___errno_location"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real____errno_location.apply(null, arguments); }; var real____muldi3 = asm["___muldi3"]; asm["___muldi3"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real____muldi3.apply(null, arguments); }; var real____udivdi3 = asm["___udivdi3"]; asm["___udivdi3"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real____udivdi3.apply(null, arguments); }; var real____uremdi3 = asm["___uremdi3"]; asm["___uremdi3"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real____uremdi3.apply(null, arguments); }; var real__bitshift64Ashr = asm["_bitshift64Ashr"]; asm["_bitshift64Ashr"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real__bitshift64Ashr.apply(null, arguments); }; var real__bitshift64Lshr = asm["_bitshift64Lshr"]; asm["_bitshift64Lshr"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real__bitshift64Lshr.apply(null, arguments); }; var real__bitshift64Shl = asm["_bitshift64Shl"]; asm["_bitshift64Shl"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real__bitshift64Shl.apply(null, arguments); }; var real__codec_opus_changeApplication = asm["_codec_opus_changeApplication"]; asm["_codec_opus_changeApplication"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real__codec_opus_changeApplication.apply(null, arguments); }; var real__codec_opus_createNativeHandle = asm["_codec_opus_createNativeHandle"]; asm["_codec_opus_createNativeHandle"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real__codec_opus_createNativeHandle.apply(null, arguments); }; var real__codec_opus_decode = asm["_codec_opus_decode"]; asm["_codec_opus_decode"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real__codec_opus_decode.apply(null, arguments); }; var real__codec_opus_deleteNativeHandle = asm["_codec_opus_deleteNativeHandle"]; asm["_codec_opus_deleteNativeHandle"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real__codec_opus_deleteNativeHandle.apply(null, arguments); }; var real__codec_opus_encode = asm["_codec_opus_encode"]; asm["_codec_opus_encode"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real__codec_opus_encode.apply(null, arguments); }; var real__fflush = asm["_fflush"]; asm["_fflush"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real__fflush.apply(null, arguments); }; var real__free = asm["_free"]; asm["_free"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real__free.apply(null, arguments); }; var real__i64Add = asm["_i64Add"]; asm["_i64Add"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real__i64Add.apply(null, arguments); }; var real__i64Subtract = asm["_i64Subtract"]; asm["_i64Subtract"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real__i64Subtract.apply(null, arguments); }; var real__llvm_bswap_i32 = asm["_llvm_bswap_i32"]; asm["_llvm_bswap_i32"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real__llvm_bswap_i32.apply(null, arguments); }; var real__malloc = asm["_malloc"]; asm["_malloc"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real__malloc.apply(null, arguments); }; var real__memmove = asm["_memmove"]; asm["_memmove"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real__memmove.apply(null, arguments); }; var real__rintf = asm["_rintf"]; asm["_rintf"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real__rintf.apply(null, arguments); }; var real__sbrk = asm["_sbrk"]; asm["_sbrk"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real__sbrk.apply(null, arguments); }; var real_establishStackSpace = asm["establishStackSpace"]; asm["establishStackSpace"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real_establishStackSpace.apply(null, arguments); }; var real_getTempRet0 = asm["getTempRet0"]; asm["getTempRet0"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real_getTempRet0.apply(null, arguments); }; var real_setTempRet0 = asm["setTempRet0"]; asm["setTempRet0"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real_setTempRet0.apply(null, arguments); }; var real_setThrew = asm["setThrew"]; asm["setThrew"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real_setThrew.apply(null, arguments); }; var real_stackAlloc = asm["stackAlloc"]; asm["stackAlloc"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real_stackAlloc.apply(null, arguments); }; var real_stackRestore = asm["stackRestore"]; asm["stackRestore"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real_stackRestore.apply(null, arguments); }; var real_stackSave = asm["stackSave"]; asm["stackSave"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real_stackSave.apply(null, arguments); }; var ___errno_location = Module["___errno_location"] = asm["___errno_location"]; var ___muldi3 = Module["___muldi3"] = asm["___muldi3"]; var ___udivdi3 = Module["___udivdi3"] = asm["___udivdi3"]; var ___uremdi3 = Module["___uremdi3"] = asm["___uremdi3"]; var _bitshift64Ashr = Module["_bitshift64Ashr"] = asm["_bitshift64Ashr"]; var _bitshift64Lshr = Module["_bitshift64Lshr"] = asm["_bitshift64Lshr"]; var _bitshift64Shl = Module["_bitshift64Shl"] = asm["_bitshift64Shl"]; var _codec_opus_changeApplication = Module["_codec_opus_changeApplication"] = asm["_codec_opus_changeApplication"]; var _codec_opus_createNativeHandle = Module["_codec_opus_createNativeHandle"] = asm["_codec_opus_createNativeHandle"]; var _codec_opus_decode = Module["_codec_opus_decode"] = asm["_codec_opus_decode"]; var _codec_opus_deleteNativeHandle = Module["_codec_opus_deleteNativeHandle"] = asm["_codec_opus_deleteNativeHandle"]; var _codec_opus_encode = Module["_codec_opus_encode"] = asm["_codec_opus_encode"]; var _fflush = Module["_fflush"] = asm["_fflush"]; var _free = Module["_free"] = asm["_free"]; var _i64Add = Module["_i64Add"] = asm["_i64Add"]; var _i64Subtract = Module["_i64Subtract"] = asm["_i64Subtract"]; var _llvm_bswap_i32 = Module["_llvm_bswap_i32"] = asm["_llvm_bswap_i32"]; var _malloc = Module["_malloc"] = asm["_malloc"]; var _memcpy = Module["_memcpy"] = asm["_memcpy"]; var _memmove = Module["_memmove"] = asm["_memmove"]; var _memset = Module["_memset"] = asm["_memset"]; var _rintf = Module["_rintf"] = asm["_rintf"]; var _sbrk = Module["_sbrk"] = asm["_sbrk"]; var establishStackSpace = Module["establishStackSpace"] = asm["establishStackSpace"]; var getTempRet0 = Module["getTempRet0"] = asm["getTempRet0"]; var runPostSets = Module["runPostSets"] = asm["runPostSets"]; var setTempRet0 = Module["setTempRet0"] = asm["setTempRet0"]; var setThrew = Module["setThrew"] = asm["setThrew"]; var stackAlloc = Module["stackAlloc"] = asm["stackAlloc"]; var stackRestore = Module["stackRestore"] = asm["stackRestore"]; var stackSave = Module["stackSave"] = asm["stackSave"]; var dynCall_diii = Module["dynCall_diii"] = asm["dynCall_diii"]; var dynCall_diiiii = Module["dynCall_diiiii"] = asm["dynCall_diiiii"]; var dynCall_ii = Module["dynCall_ii"] = asm["dynCall_ii"]; var dynCall_iii = Module["dynCall_iii"] = asm["dynCall_iii"]; var dynCall_iiii = Module["dynCall_iiii"] = asm["dynCall_iiii"]; var dynCall_v = Module["dynCall_v"] = asm["dynCall_v"]; var dynCall_vi = Module["dynCall_vi"] = asm["dynCall_vi"]; var dynCall_viiii = Module["dynCall_viiii"] = asm["dynCall_viiii"]; var dynCall_viiiiddd = Module["dynCall_viiiiddd"] = asm["dynCall_viiiiddd"]; var dynCall_viiiii = Module["dynCall_viiiii"] = asm["dynCall_viiiii"]; var dynCall_viiiiii = Module["dynCall_viiiiii"] = asm["dynCall_viiiiii"]; var dynCall_viiiiiii = Module["dynCall_viiiiiii"] = asm["dynCall_viiiiiii"]; ; // === Auto-generated postamble setup entry stuff === Module['asm'] = asm; if (!Module["intArrayFromString"]) Module["intArrayFromString"] = function() { abort("'intArrayFromString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["intArrayToString"]) Module["intArrayToString"] = function() { abort("'intArrayToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; Module["ccall"] = ccall; Module["cwrap"] = cwrap; if (!Module["setValue"]) Module["setValue"] = function() { abort("'setValue' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["getValue"]) Module["getValue"] = function() { abort("'getValue' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["allocate"]) Module["allocate"] = function() { abort("'allocate' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["getMemory"]) Module["getMemory"] = function() { abort("'getMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") }; if (!Module["Pointer_stringify"]) Module["Pointer_stringify"] = function() { abort("'Pointer_stringify' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["AsciiToString"]) Module["AsciiToString"] = function() { abort("'AsciiToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["stringToAscii"]) Module["stringToAscii"] = function() { abort("'stringToAscii' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["UTF8ArrayToString"]) Module["UTF8ArrayToString"] = function() { abort("'UTF8ArrayToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["UTF8ToString"]) Module["UTF8ToString"] = function() { abort("'UTF8ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["stringToUTF8Array"]) Module["stringToUTF8Array"] = function() { abort("'stringToUTF8Array' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["stringToUTF8"]) Module["stringToUTF8"] = function() { abort("'stringToUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["lengthBytesUTF8"]) Module["lengthBytesUTF8"] = function() { abort("'lengthBytesUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["UTF16ToString"]) Module["UTF16ToString"] = function() { abort("'UTF16ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["stringToUTF16"]) Module["stringToUTF16"] = function() { abort("'stringToUTF16' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["lengthBytesUTF16"]) Module["lengthBytesUTF16"] = function() { abort("'lengthBytesUTF16' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["UTF32ToString"]) Module["UTF32ToString"] = function() { abort("'UTF32ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["stringToUTF32"]) Module["stringToUTF32"] = function() { abort("'stringToUTF32' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["lengthBytesUTF32"]) Module["lengthBytesUTF32"] = function() { abort("'lengthBytesUTF32' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["allocateUTF8"]) Module["allocateUTF8"] = function() { abort("'allocateUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["stackTrace"]) Module["stackTrace"] = function() { abort("'stackTrace' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["addOnPreRun"]) Module["addOnPreRun"] = function() { abort("'addOnPreRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["addOnInit"]) Module["addOnInit"] = function() { abort("'addOnInit' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["addOnPreMain"]) Module["addOnPreMain"] = function() { abort("'addOnPreMain' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["addOnExit"]) Module["addOnExit"] = function() { abort("'addOnExit' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["addOnPostRun"]) Module["addOnPostRun"] = function() { abort("'addOnPostRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["writeStringToMemory"]) Module["writeStringToMemory"] = function() { abort("'writeStringToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["writeArrayToMemory"]) Module["writeArrayToMemory"] = function() { abort("'writeArrayToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["writeAsciiToMemory"]) Module["writeAsciiToMemory"] = function() { abort("'writeAsciiToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["addRunDependency"]) Module["addRunDependency"] = function() { abort("'addRunDependency' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") }; if (!Module["removeRunDependency"]) Module["removeRunDependency"] = function() { abort("'removeRunDependency' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") }; if (!Module["FS"]) Module["FS"] = function() { abort("'FS' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["FS_createFolder"]) Module["FS_createFolder"] = function() { abort("'FS_createFolder' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") }; if (!Module["FS_createPath"]) Module["FS_createPath"] = function() { abort("'FS_createPath' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") }; if (!Module["FS_createDataFile"]) Module["FS_createDataFile"] = function() { abort("'FS_createDataFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") }; if (!Module["FS_createPreloadedFile"]) Module["FS_createPreloadedFile"] = function() { abort("'FS_createPreloadedFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") }; if (!Module["FS_createLazyFile"]) Module["FS_createLazyFile"] = function() { abort("'FS_createLazyFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") }; if (!Module["FS_createLink"]) Module["FS_createLink"] = function() { abort("'FS_createLink' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") }; if (!Module["FS_createDevice"]) Module["FS_createDevice"] = function() { abort("'FS_createDevice' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") }; if (!Module["FS_unlink"]) Module["FS_unlink"] = function() { abort("'FS_unlink' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") }; if (!Module["GL"]) Module["GL"] = function() { abort("'GL' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["staticAlloc"]) Module["staticAlloc"] = function() { abort("'staticAlloc' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["dynamicAlloc"]) Module["dynamicAlloc"] = function() { abort("'dynamicAlloc' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["warnOnce"]) Module["warnOnce"] = function() { abort("'warnOnce' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["loadDynamicLibrary"]) Module["loadDynamicLibrary"] = function() { abort("'loadDynamicLibrary' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["loadWebAssemblyModule"]) Module["loadWebAssemblyModule"] = function() { abort("'loadWebAssemblyModule' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["getLEB"]) Module["getLEB"] = function() { abort("'getLEB' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["getFunctionTables"]) Module["getFunctionTables"] = function() { abort("'getFunctionTables' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["alignFunctionTables"]) Module["alignFunctionTables"] = function() { abort("'alignFunctionTables' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["registerFunctions"]) Module["registerFunctions"] = function() { abort("'registerFunctions' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["addFunction"]) Module["addFunction"] = function() { abort("'addFunction' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["removeFunction"]) Module["removeFunction"] = function() { abort("'removeFunction' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["getFuncWrapper"]) Module["getFuncWrapper"] = function() { abort("'getFuncWrapper' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["prettyPrint"]) Module["prettyPrint"] = function() { abort("'prettyPrint' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["makeBigInt"]) Module["makeBigInt"] = function() { abort("'makeBigInt' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["dynCall"]) Module["dynCall"] = function() { abort("'dynCall' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["getCompilerSetting"]) Module["getCompilerSetting"] = function() { abort("'getCompilerSetting' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["intArrayFromBase64"]) Module["intArrayFromBase64"] = function() { abort("'intArrayFromBase64' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["tryParseAsDataURI"]) Module["tryParseAsDataURI"] = function() { abort("'tryParseAsDataURI' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") };if (!Module["ALLOC_NORMAL"]) Object.defineProperty(Module, "ALLOC_NORMAL", { get: function() { abort("'ALLOC_NORMAL' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") } }); if (!Module["ALLOC_STACK"]) Object.defineProperty(Module, "ALLOC_STACK", { get: function() { abort("'ALLOC_STACK' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") } }); if (!Module["ALLOC_STATIC"]) Object.defineProperty(Module, "ALLOC_STATIC", { get: function() { abort("'ALLOC_STATIC' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") } }); if (!Module["ALLOC_DYNAMIC"]) Object.defineProperty(Module, "ALLOC_DYNAMIC", { get: function() { abort("'ALLOC_DYNAMIC' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") } }); if (!Module["ALLOC_NONE"]) Object.defineProperty(Module, "ALLOC_NONE", { get: function() { abort("'ALLOC_NONE' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") } }); if (memoryInitializer) { if (!isDataURI(memoryInitializer)) { if (typeof Module['locateFile'] === 'function') { memoryInitializer = Module['locateFile'](memoryInitializer); } else if (Module['memoryInitializerPrefixURL']) { memoryInitializer = Module['memoryInitializerPrefixURL'] + memoryInitializer; } } if (ENVIRONMENT_IS_NODE || ENVIRONMENT_IS_SHELL) { var data = Module['readBinary'](memoryInitializer); HEAPU8.set(data, GLOBAL_BASE); } else { addRunDependency('memory initializer'); var applyMemoryInitializer = function(data) { if (data.byteLength) data = new Uint8Array(data); for (var i = 0; i < data.length; i++) { assert(HEAPU8[GLOBAL_BASE + i] === 0, "area for memory initializer should not have been touched before it's loaded"); } HEAPU8.set(data, GLOBAL_BASE); // Delete the typed array that contains the large blob of the memory initializer request response so that // we won't keep unnecessary memory lying around. However, keep the XHR object itself alive so that e.g. // its .status field can still be accessed later. if (Module['memoryInitializerRequest']) delete Module['memoryInitializerRequest'].response; removeRunDependency('memory initializer'); } function doBrowserLoad() { Module['readAsync'](memoryInitializer, applyMemoryInitializer, function() { throw 'could not load memory initializer ' + memoryInitializer; }); } var memoryInitializerBytes = tryParseAsDataURI(memoryInitializer); if (memoryInitializerBytes) { applyMemoryInitializer(memoryInitializerBytes.buffer); } else if (Module['memoryInitializerRequest']) { // a network request has already been created, just use that function useRequest() { var request = Module['memoryInitializerRequest']; var response = request.response; if (request.status !== 200 && request.status !== 0) { var data = tryParseAsDataURI(Module['memoryInitializerRequestURL']); if (data) { response = data.buffer; } else { // If you see this warning, the issue may be that you are using locateFile or memoryInitializerPrefixURL, and defining them in JS. That // means that the HTML file doesn't know about them, and when it tries to create the mem init request early, does it to the wrong place. // Look in your browser's devtools network console to see what's going on. console.warn('a problem seems to have happened with Module.memoryInitializerRequest, status: ' + request.status + ', retrying ' + memoryInitializer); doBrowserLoad(); return; } } applyMemoryInitializer(response); } if (Module['memoryInitializerRequest'].response) { setTimeout(useRequest, 0); // it's already here; but, apply it asynchronously } else { Module['memoryInitializerRequest'].addEventListener('load', useRequest); // wait for it } } else { // fetch it from the network ourselves doBrowserLoad(); } } } /** * @constructor * @extends {Error} * @this {ExitStatus} */ function ExitStatus(status) { this.name = "ExitStatus"; this.message = "Program terminated with exit(" + status + ")"; this.status = status; }; ExitStatus.prototype = new Error(); ExitStatus.prototype.constructor = ExitStatus; var initialStackTop; var calledMain = false; dependenciesFulfilled = function runCaller() { // If run has never been called, and we should call run (INVOKE_RUN is true, and Module.noInitialRun is not false) if (!Module['calledRun']) run(); if (!Module['calledRun']) dependenciesFulfilled = runCaller; // try this again later, after new deps are fulfilled } /** @type {function(Array=)} */ function run(args) { args = args || Module['arguments']; if (runDependencies > 0) { return; } writeStackCookie(); preRun(); if (runDependencies > 0) return; // a preRun added a dependency, run will be called later if (Module['calledRun']) return; // run may have just been called through dependencies being fulfilled just in this very frame function doRun() { if (Module['calledRun']) return; // run may have just been called while the async setStatus time below was happening Module['calledRun'] = true; if (ABORT) return; ensureInitRuntime(); preMain(); if (Module['onRuntimeInitialized']) Module['onRuntimeInitialized'](); assert(!Module['_main'], 'compiled without a main, but one is present. if you added it from JS, use Module["onRuntimeInitialized"]'); postRun(); } if (Module['setStatus']) { Module['setStatus']('Running...'); setTimeout(function() { setTimeout(function() { Module['setStatus'](''); }, 1); doRun(); }, 1); } else { doRun(); } checkStackCookie(); } Module['run'] = run; function checkUnflushedContent() { // Compiler settings do not allow exiting the runtime, so flushing // the streams is not possible. but in ASSERTIONS mode we check // if there was something to flush, and if so tell the user they // should request that the runtime be exitable. // Normally we would not even include flush() at all, but in ASSERTIONS // builds we do so just for this check, and here we see if there is any // content to flush, that is, we check if there would have been // something a non-ASSERTIONS build would have not seen. // How we flush the streams depends on whether we are in NO_FILESYSTEM // mode (which has its own special function for this; otherwise, all // the code is inside libc) var print = Module['print']; var printErr = Module['printErr']; var has = false; Module['print'] = Module['printErr'] = function(x) { has = true; } try { // it doesn't matter if it fails var flush = flush_NO_FILESYSTEM; if (flush) flush(0); } catch(e) {} Module['print'] = print; Module['printErr'] = printErr; if (has) { warnOnce('stdio streams had content in them that was not flushed. you should set NO_EXIT_RUNTIME to 0 (see the FAQ), or make sure to emit a newline when you printf etc.'); } } function exit(status, implicit) { checkUnflushedContent(); // if this is just main exit-ing implicitly, and the status is 0, then we // don't need to do anything here and can just leave. if the status is // non-zero, though, then we need to report it. // (we may have warned about this earlier, if a situation justifies doing so) if (implicit && Module['noExitRuntime'] && status === 0) { return; } if (Module['noExitRuntime']) { // if exit() was called, we may warn the user if the runtime isn't actually being shut down if (!implicit) { Module.printErr('exit(' + status + ') called, but NO_EXIT_RUNTIME is set, so halting execution but not exiting the runtime or preventing further async execution (build with NO_EXIT_RUNTIME=0, if you want a true shutdown)'); } } else { ABORT = true; EXITSTATUS = status; STACKTOP = initialStackTop; exitRuntime(); if (Module['onExit']) Module['onExit'](status); } if (ENVIRONMENT_IS_NODE) { process['exit'](status); } Module['quit'](status, new ExitStatus(status)); } Module['exit'] = exit; var abortDecorators = []; function abort(what) { if (Module['onAbort']) { Module['onAbort'](what); } if (what !== undefined) { Module.print(what); Module.printErr(what); what = JSON.stringify(what) } else { what = ''; } ABORT = true; EXITSTATUS = 1; var extra = ''; var output = 'abort(' + what + ') at ' + stackTrace() + extra; if (abortDecorators) { abortDecorators.forEach(function(decorator) { output = decorator(output, what); }); } throw output; } Module['abort'] = abort; // {{PRE_RUN_ADDITIONS}} if (Module['preInit']) { if (typeof Module['preInit'] == 'function') Module['preInit'] = [Module['preInit']]; while (Module['preInit'].length > 0) { Module['preInit'].pop()(); } } Module["noExitRuntime"] = true; run(); // {{POST_RUN_ADDITIONS}} // {{MODULE_ADDITIONS}}