1static const uint16_t in_weighted_sum_val[50] = { 2 0x30a6, 0x36e9, 0x3b67, 0x3173, 0x362c, 0x3bfd, 0x2ef6, 0x37ae, 3 0x38bd, 0x36e6, 0x369f, 0x3bac, 0x3953, 0x3b9f, 0x3881, 0x38e0, 4 0x3b1f, 0x1960, 0x3956, 0x3a83, 0x3174, 0x343c, 0x3998, 0x39e8, 5 0x379a, 0x3707, 0x3999, 0x37d3, 0x2f65, 0x2f64, 0x38b1, 0x353e, 6 0x3713, 0x3a04, 0x379f, 0x37dc, 0x386c, 0x3966, 0x39a5, 0x3bbc, 7 0x383a, 0x3912, 0x2a4a, 0x3756, 0x354c, 0x3663, 0x2402, 0x3458, 8 0x3b4d, 0x393f 9 }; 10 11static const uint16_t in_weighted_sum_coeff[50] = { 12 0x34e2, 0x282f, 0x3443, 0x38f1, 0x30e5, 0x3a33, 0x3aca, 0x3830, 13 0x2f6d, 0x3932, 0x33e5, 0x3a9d, 0x3bbe, 0x3488, 0x3ac7, 0x39c4, 14 0x37a2, 0x3911, 0x38c6, 0x3aa9, 0x3058, 0x38dc, 0x3b52, 0x3799, 15 0x3a40, 0x2d66, 0x28f8, 0x2b0c, 0x3559, 0x354d, 0x38c3, 0x3719, 16 0x38e7, 0x30e1, 0x34fd, 0x31ab, 0x3852, 0x3b88, 0x3955, 0x1958, 17 0x2df2, 0x3027, 0x39ae, 0x37d2, 0x37a9, 0x3905, 0x175b, 0x34cd, 18 0x3917, 0x2e92 19 }; 20 21static const uint32_t ref_f32[256] = { 22 0x3e6dc924, 0x3e2486b6, 0x3ea0c4b0, 0x3eb8873d, 23 0x3e2a5dcc, 0x3f3a8256, 0x3e7ebb3f, 0x3f0537d7, 24 0x3ec9d94d, 0x3f10e8eb, 0x3e8ac054, 0x3e8de34d, 25 0x3f38553f, 0x3e12ab5c, 0x3f741331, 0x3f6d0edf, 26 0x3e98e5bc, 0x3ee8441e, 0x3f5abe5e, 0x3f228ce2, 27 0x3ca9b3f0, 0x3e4ea407, 0x3f414244, 0x3e244fbe, 28 0x3f5c38b0, 0x3ee9f27c, 0x3f4c6833, 0x3f1b48e3, 29 0x3f6b4071, 0x3f5724df, 0x3f62091b, 0x3f49e803, 30 0x3f5f64a1, 0x3f3d3de7, 0x3f5a0a5b, 0x3f38caf3, 31 0x3d83c65c, 0x3e1f44b3, 0x3e97bd96, 0x3f1a26d1, 32 0x3f2b3656, 0x3f1161b7, 0x3ce00b2d, 0x3e55f2a5, 33 0x3ec84050, 0x3ea41c61, 0x3e75bd9c, 0x3f3e0d99, 34 0x3e9ab80e, 0x3e9847ac, 0x3eadd8f5, 0x3f1b38b1, 35 0x3f4d8e05, 0x3f4887ab, 0x3e9a3928, 0x3ec8bf3b, 36 0x3f682c8c, 0x3f48f40f, 0x3f5214d5, 0x3f0e1bd0, 37 0x3e7fc575, 0x3ecbc2d6, 0x3f4424c0, 0x3dd13961, 38 0x3f6ece1e, 0x3e6e27da, 0x3eb43742, 0x3ed3e600, 39 0x3f265621, 0x3f294646, 0x3e23da06, 0x3f03de74, 40 0x3ecdaae9, 0x3f23af22, 0x3e3d66f3, 0x3e9eb1b7, 41 0x3f7f4ccb, 0x3ee2cf65, 0x3f2fe785, 0x3f4ab2ea, 42 0x3ee6d007, 0x3f5b7500, 0x3dd48a16, 0x3f5de4c3, 43 0x3d578efb, 0x3e6a74b3, 0x3ef59b6f, 0x3f7cfa5f, 44 0x3d959e7c, 0x3f376e35, 0x3eb14546, 0x3d26fa91, 45 0x3f462803, 0x3ef7f86d, 0x3e81cc9e, 0x3e3ec7f1, 46 0x3eff5680, 0x3f70f0df, 0x3f65a925, 0x3f41b77f, 47 0x3f02b49b, 0x3eb8ed41, 0x3f6c9d8d, 0x3e5a750f, 48 0x3ede8d52, 0x3f1bcba6, 0x3ef9eece, 0x3e5db8a2, 49 0x3e0c70ea, 0x3f28f4c1, 0x3e350932, 0x3e5e62e1, 50 0x3f1f5b05, 0x3d50808b, 0x3f3c98fb, 0x3f11791d, 51 0x3e973a8d, 0x3f4a303f, 0x3f41abaa, 0x3e860968, 52 0x3f479891, 0x3ebd22dd, 0x3ea2b1a4, 0x3d90e7fd, 53 0x3f121ec0, 0x3f49077b, 0x3f43fcc1, 0x3dc018fa, 54 0x3e92f7a8, 0x3e28acbb, 0x3f2b62f0, 0x3e8ab40e, 55 0x3f0759ef, 0x3e6b4c76, 0x3e7ccd69, 0x3d0b5c0e, 56 0x3e2b6c0b, 0x3f7b4725, 0x3e09f429, 0x3edc5225, 57 0x3e5052ff, 0x3c2d5312, 0x3f17ef38, 0x3e68e722, 58 0x3f0124b8, 0x3db054ad, 0x3d7d99d6, 0x3dbc5b8b, 59 0x3f320806, 0x3ef488da, 0x3f0f46bb, 0x3ecdab35, 60 0x3f51118c, 0x3ed5fe3d, 0x3e82b4a4, 0x3e0d677a, 61 0x3f5d5e34, 0x3f549e4d, 0x3f800000, 0x3e878bf5, 62 0x3e835ee8, 0x3f032fc2, 0x3c92f727, 0x3eb906cc, 63 0x3e2b9f88, 0x3deed844, 0x3f747000, 0x3f32ba35, 64 0x3ef305c4, 0x3f3c8745, 0x3f0602ba, 0x3f2b4d46, 65 0x3f20c6ff, 0x3f29bd96, 0x3f48bad0, 0x3e1a4a43, 66 0x3eda17ca, 0x3f676708, 0x3f430ff7, 0x3db5eb23, 67 0x3e338ac1, 0x3dc18b6d, 0x3f570079, 0x3f678ffc, 68 0x3f1c6a9f, 0x3f791831, 0x3ec02bb9, 0x3ed12fa1, 69 0x3e8d1691, 0x3eac1e7c, 0x3f2f4073, 0x3f33a19a, 70 0x3f611b48, 0x3f59ffff, 0x3f30166e, 0x3edd6d54, 71 0x3ef15ef6, 0x3eff0b45, 0x3f6265fb, 0x3f0a5736, 72 0x3f30b3c8, 0x3ed045e9, 0x3df4920d, 0x3f5f212a, 73 0x3f171a71, 0x3f546ed0, 0x3cdcbfbb, 0x3f62bdb0, 74 0x3bf57904, 0x3c9dc503, 0x3eb6234c, 0x3f02a4e8, 75 0x3ee085d6, 0x3ca99f7a, 0x3f4ef040, 0x3f0e7aed, 76 0x3e2ca85b, 0x3f241250, 0x3f6df3e2, 0x3eba5aab, 77 0x3f4e8c84, 0x3e6a6d03, 0x3be552df, 0x3f7ad6b8, 78 0x3ebde06c, 0x3f393af9, 0x3ea85de8, 0x3dc52f10, 79 0x3f32f9b1, 0x3d69c847, 0x3ea4c4d4, 0x3f4827cc, 80 0x3f1050e4, 0x3da28f6e, 0x3eac631d, 0x3f04541c, 81 0x390ca629, 0x3e225f7d, 0x3e68a5b0, 0x3f09ff3f, 82 0x3df47be2, 0x3db00868, 0x3f6009b6, 0x3f37bb10, 83 0x3e3e7cc2, 0x3e856c5f, 0x3d880450, 0x3e40e56d, 84 0x3f312dda, 0x3e9760cd, 0x3e27a550, 0x3ec3437a, 85 0x3ee71457, 0x3f5a881e, 0x3f6b4411, 0x3f040cf0 86 }; 87 88static const q15_t ref_q15[256] = { 89 0x1DB9, 0x1491, 0x2831, 0x2E22, 0x154C, 0x5D41, 0x1FD7, 0x429C, 90 0x3276, 0x4874, 0x22B0, 0x2379, 0x5C2B, 0x1255, 0x7A0A, 0x7687, 91 0x2639, 0x3A11, 0x6D5F, 0x5146, 0x02A7, 0x19D5, 0x60A1, 0x148A, 92 0x6E1C, 0x3A7D, 0x6634, 0x4DA4, 0x75A0, 0x6B92, 0x7105, 0x64F4, 93 0x6FB2, 0x5E9F, 0x6D05, 0x5C65, 0x083C, 0x13E9, 0x25EF, 0x4D13, 94 0x559B, 0x48B1, 0x0380, 0x1ABE, 0x3210, 0x2907, 0x1EB8, 0x5F07, 95 0x26AE, 0x2612, 0x2B76, 0x4D9C, 0x66C7, 0x6444, 0x268E, 0x3230, 96 0x7416, 0x647A, 0x690A, 0x470E, 0x1FF9, 0x32F1, 0x6212, 0x0D14, 97 0x7767, 0x1DC5, 0x2D0E, 0x34FA, 0x532B, 0x54A3, 0x147B, 0x41EF, 98 0x336B, 0x51D8, 0x17AD, 0x27AC, 0x7FA6, 0x38B4, 0x57F4, 0x6559, 99 0x39B4, 0x6DBB, 0x0D49, 0x6EF2, 0x06BC, 0x1D4F, 0x3D67, 0x7E7D, 100 0x095A, 0x5BB7, 0x2C51, 0x0538, 0x6314, 0x3DFE, 0x2073, 0x17D9, 101 0x3FD6, 0x7878, 0x72D5, 0x60DC, 0x415A, 0x2E3B, 0x764F, 0x1B4F, 102 0x37A3, 0x4DE6, 0x3E7C, 0x1BB7, 0x118E, 0x547A, 0x16A1, 0x1BCC, 103 0x4FAE, 0x0684, 0x5E4C, 0x48BD, 0x25CF, 0x6518, 0x60D6, 0x2182, 104 0x63CC, 0x2F49, 0x28AC, 0x090E, 0x490F, 0x6484, 0x61FE, 0x0C02, 105 0x24BE, 0x1516, 0x55B1, 0x22AD, 0x43AD, 0x1D6A, 0x1F9A, 0x045B, 106 0x156E, 0x7DA4, 0x113F, 0x3715, 0x1A0A, 0x015B, 0x4BF8, 0x1D1D, 107 0x4092, 0x0B05, 0x07ED, 0x0BC6, 0x5904, 0x3D22, 0x47A3, 0x336B, 108 0x6889, 0x3580, 0x20AD, 0x11AD, 0x6EAF, 0x6A4F, 0x7FFF, 0x21E3, 109 0x20D8, 0x4198, 0x024C, 0x2E42, 0x1574, 0x0EEE, 0x7A38, 0x595D, 110 0x3CC1, 0x5E44, 0x4301, 0x55A7, 0x5063, 0x54DF, 0x645D, 0x1349, 111 0x3686, 0x73B4, 0x6188, 0x0B5F, 0x1671, 0x0C19, 0x6B80, 0x73C8, 112 0x4E35, 0x7C8C, 0x300B, 0x344C, 0x2346, 0x2B08, 0x57A0, 0x59D1, 113 0x708E, 0x6D00, 0x580B, 0x375B, 0x3C58, 0x3FC3, 0x7133, 0x452C, 114 0x585A, 0x3411, 0x0F49, 0x6F91, 0x4B8D, 0x6A37, 0x0373, 0x715F, 115 0x00F5, 0x0277, 0x2D89, 0x4152, 0x3821, 0x02A6, 0x6778, 0x473D, 116 0x1595, 0x5209, 0x76FA, 0x2E97, 0x6746, 0x1D4E, 0x00E5, 0x7D6B, 117 0x2F78, 0x5C9D, 0x2A17, 0x0C53, 0x597D, 0x074E, 0x2931, 0x6414, 118 0x4828, 0x0A29, 0x2B19, 0x422A, 0x0004, 0x144C, 0x1D15, 0x4500, 119 0x0F48, 0x0B01, 0x7005, 0x5BDE, 0x17D0, 0x215B, 0x0880, 0x181D, 120 0x5897, 0x25D8, 0x14F5, 0x30D1, 0x39C5, 0x6D44, 0x75A2, 0x4206 121 }; 122 123static const uint16_t ref_f16[256] = { 124 0x336e, 0x3124, 0x3506, 0x35c4, 0x3153, 0x39d4, 0x33f6, 0x382a, 125 0x364f, 0x3887, 0x3456, 0x346f, 0x39c3, 0x3095, 0x3ba1, 0x3b68, 126 0x34c7, 0x3742, 0x3ad6, 0x3914, 0x254e, 0x3275, 0x3a0a, 0x3122, 127 0x3ae2, 0x3750, 0x3a63, 0x38da, 0x3b5a, 0x3ab9, 0x3b10, 0x3a4f, 128 0x3afb, 0x39ea, 0x3ad0, 0x39c6, 0x2c1e, 0x30fa, 0x34be, 0x38d1, 129 0x395a, 0x388b, 0x2700, 0x32b0, 0x3642, 0x3521, 0x33ae, 0x39f0, 130 0x34d6, 0x34c2, 0x356f, 0x38da, 0x3a6c, 0x3a44, 0x34d2, 0x3646, 131 0x3b41, 0x3a48, 0x3a91, 0x3871, 0x33fe, 0x365e, 0x3a21, 0x2e8a, 132 0x3b76, 0x3371, 0x35a2, 0x369f, 0x3933, 0x394a, 0x311f, 0x381f, 133 0x366d, 0x391d, 0x31eb, 0x34f6, 0x3bfa, 0x3716, 0x397f, 0x3a56, 134 0x3737, 0x3adc, 0x2ea4, 0x3aef, 0x2abc, 0x3354, 0x37ad, 0x3be8, 135 0x2cad, 0x39bb, 0x358a, 0x2938, 0x3a31, 0x37c0, 0x340e, 0x31f6, 136 0x37fb, 0x3b88, 0x3b2d, 0x3a0e, 0x3816, 0x35c7, 0x3b65, 0x32d4, 137 0x36f4, 0x38de, 0x37cf, 0x32ee, 0x3064, 0x3948, 0x31a8, 0x32f3, 138 0x38fb, 0x2a84, 0x39e5, 0x388c, 0x34ba, 0x3a52, 0x3a0d, 0x3430, 139 0x3a3d, 0x35e9, 0x3516, 0x2c87, 0x3891, 0x3a48, 0x3a20, 0x2e01, 140 0x3498, 0x3145, 0x395b, 0x3456, 0x383b, 0x335a, 0x33e6, 0x285b, 141 0x315b, 0x3bda, 0x3050, 0x36e3, 0x3283, 0x216b, 0x38bf, 0x3347, 142 0x3809, 0x2d83, 0x2bed, 0x2de3, 0x3990, 0x37a4, 0x387a, 0x366d, 143 0x3a89, 0x36b0, 0x3416, 0x306b, 0x3aeb, 0x3aa5, 0x3c00, 0x343c, 144 0x341b, 0x3819, 0x2498, 0x35c8, 0x315d, 0x2f77, 0x3ba3, 0x3996, 145 0x3798, 0x39e4, 0x3830, 0x395a, 0x3906, 0x394e, 0x3a46, 0x30d2, 146 0x36d1, 0x3b3b, 0x3a18, 0x2daf, 0x319c, 0x2e0c, 0x3ab8, 0x3b3c, 147 0x38e3, 0x3bc9, 0x3601, 0x3689, 0x3469, 0x3561, 0x397a, 0x399d, 148 0x3b09, 0x3ad0, 0x3981, 0x36eb, 0x378b, 0x37f8, 0x3b13, 0x3853, 149 0x3986, 0x3682, 0x2fa5, 0x3af9, 0x38b9, 0x3aa3, 0x26e6, 0x3b16, 150 0x1fac, 0x24ee, 0x35b1, 0x3815, 0x3704, 0x254d, 0x3a78, 0x3874, 151 0x3165, 0x3921, 0x3b70, 0x35d3, 0x3a74, 0x3353, 0x1f2b, 0x3bd7, 152 0x35ef, 0x39ca, 0x3543, 0x2e29, 0x3998, 0x2b4e, 0x3526, 0x3a41, 153 0x3883, 0x2d14, 0x3563, 0x3823, 0x865, 0x3113, 0x3345, 0x3850, 154 0x2fa4, 0x2d80, 0x3b00, 0x39be, 0x31f4, 0x342b, 0x2c40, 0x3207, 155 0x3989, 0x34bb, 0x313d, 0x361a, 0x3739, 0x3ad4, 0x3b5a, 0x3820 156 }; 157 158static const uint16_t ref_weighted_sum[3] = { 159 0x3720, 0x388f, 0x3884 160 }; 161 162