diff --git a/tests/lib/cmsis_dsp/basicmath/src/q7.c b/tests/lib/cmsis_dsp/basicmath/src/q7.c index b33c09cb14e..aadcdf11fb1 100644 --- a/tests/lib/cmsis_dsp/basicmath/src/q7.c +++ b/tests/lib/cmsis_dsp/basicmath/src/q7.c @@ -1,6 +1,6 @@ /* - * Copyright (c) 2020 Stephanos Ioannidis - * Copyright (C) 2010-2020 ARM Limited or its affiliates. All rights reserved. + * Copyright (c) 2021 Stephanos Ioannidis + * Copyright (C) 2010-2021 ARM Limited or its affiliates. All rights reserved. * * SPDX-License-Identifier: Apache-2.0 */ @@ -47,6 +47,7 @@ DEFINE_TEST_VARIANT4(arm_add_q7, 32, in_com1, in_com2, ref_add, 32); DEFINE_TEST_VARIANT4(arm_add_q7, 47, in_com1, in_com2, ref_add, 47); DEFINE_TEST_VARIANT4(arm_add_q7, possat, in_maxpos, in_maxpos, ref_add_possat, 33); DEFINE_TEST_VARIANT4(arm_add_q7, negsat, in_maxneg, in_maxneg, ref_add_negsat, 33); +DEFINE_TEST_VARIANT4(arm_add_q7, long, in_com1, in_com2, ref_add, ARRAY_SIZE(in_com1)); static void test_arm_sub_q7( const q7_t *input1, const q7_t *input2, const q7_t *ref, size_t length) @@ -78,6 +79,7 @@ DEFINE_TEST_VARIANT4(arm_sub_q7, 32, in_com1, in_com2, ref_sub, 32); DEFINE_TEST_VARIANT4(arm_sub_q7, 47, in_com1, in_com2, ref_sub, 47); DEFINE_TEST_VARIANT4(arm_sub_q7, possat, in_maxpos, in_maxneg, ref_sub_possat, 33); DEFINE_TEST_VARIANT4(arm_sub_q7, negsat, in_maxneg, in_maxpos, ref_sub_negsat, 33); +DEFINE_TEST_VARIANT4(arm_sub_q7, long, in_com1, in_com2, ref_sub, ARRAY_SIZE(in_com1)); static void test_arm_mult_q7( const q7_t *input1, const q7_t *input2, const q7_t *ref, size_t length) @@ -108,6 +110,7 @@ DEFINE_TEST_VARIANT4(arm_mult_q7, 15, in_com1, in_com2, ref_mult, 15); DEFINE_TEST_VARIANT4(arm_mult_q7, 32, in_com1, in_com2, ref_mult, 32); DEFINE_TEST_VARIANT4(arm_mult_q7, 47, in_com1, in_com2, ref_mult, 47); DEFINE_TEST_VARIANT4(arm_mult_q7, possat, in_maxneg2, in_maxneg2, ref_mult_possat, 33); +DEFINE_TEST_VARIANT4(arm_mult_q7, long, in_com1, in_com2, ref_mult, ARRAY_SIZE(in_com1)); static void test_arm_negate_q7( const q7_t *input1, const q7_t *ref, size_t length) @@ -138,6 +141,7 @@ DEFINE_TEST_VARIANT3(arm_negate_q7, 15, in_com1, ref_negate, 15); DEFINE_TEST_VARIANT3(arm_negate_q7, 32, in_com1, ref_negate, 32); DEFINE_TEST_VARIANT3(arm_negate_q7, 47, in_com1, ref_negate, 47); DEFINE_TEST_VARIANT3(arm_negate_q7, possat, in_maxneg2, ref_negate_possat, 33); +DEFINE_TEST_VARIANT3(arm_negate_q7, long, in_com1, ref_negate, ARRAY_SIZE(in_com1)); static void test_arm_offset_q7( const q7_t *input1, q7_t scalar, const q7_t *ref, size_t length) @@ -169,6 +173,7 @@ DEFINE_TEST_VARIANT4(arm_offset_q7, 0p5_32, in_com1, 0x40, ref_offset, 32); DEFINE_TEST_VARIANT4(arm_offset_q7, 0p5_47, in_com1, 0x40, ref_offset, 47); DEFINE_TEST_VARIANT4(arm_offset_q7, possat, in_maxpos, 0x73, ref_offset_possat, 33); DEFINE_TEST_VARIANT4(arm_offset_q7, negsat, in_maxneg, 0x8d, ref_offset_negsat, 33); +DEFINE_TEST_VARIANT4(arm_offset_q7, long, in_com1, 0x40, ref_offset, ARRAY_SIZE(in_com1)); static void test_arm_scale_q7( const q7_t *input1, q7_t scalar, const q7_t *ref, size_t length) @@ -199,6 +204,7 @@ DEFINE_TEST_VARIANT4(arm_scale_q7, 0p5_15, in_com1, 0x40, ref_scale, 15); DEFINE_TEST_VARIANT4(arm_scale_q7, 0p5_32, in_com1, 0x40, ref_scale, 32); DEFINE_TEST_VARIANT4(arm_scale_q7, 0p5_47, in_com1, 0x40, ref_scale, 47); DEFINE_TEST_VARIANT4(arm_scale_q7, possat, in_maxneg2, 0x80, ref_scale_possat, 33); +DEFINE_TEST_VARIANT4(arm_scale_q7, long, in_com1, 0x40, ref_scale, ARRAY_SIZE(in_com1)); static void test_arm_dot_prod_q7( const q7_t *input1, const q7_t *input2, const q31_t *ref, @@ -229,6 +235,8 @@ static void test_arm_dot_prod_q7( DEFINE_TEST_VARIANT4(arm_dot_prod_q7, 15, in_com1, in_com2, ref_dot_prod_3, 15); DEFINE_TEST_VARIANT4(arm_dot_prod_q7, 32, in_com1, in_com2, ref_dot_prod_4, 32); DEFINE_TEST_VARIANT4(arm_dot_prod_q7, 47, in_com1, in_com2, ref_dot_prod_4n1, 47); +DEFINE_TEST_VARIANT4(arm_dot_prod_q7, long, in_com1, in_com2, ref_dot_prod_long, + ARRAY_SIZE(in_com1)); static void test_arm_abs_q7( const q7_t *input1, const q7_t *ref, size_t length) @@ -258,6 +266,7 @@ static void test_arm_abs_q7( DEFINE_TEST_VARIANT3(arm_abs_q7, 15, in_com1, ref_abs, 15); DEFINE_TEST_VARIANT3(arm_abs_q7, 32, in_com1, ref_abs, 32); DEFINE_TEST_VARIANT3(arm_abs_q7, 47, in_com1, ref_abs, 47); +DEFINE_TEST_VARIANT3(arm_abs_q7, long, in_com1, ref_abs, ARRAY_SIZE(ref_abs)); static void test_arm_shift_q7( const q7_t *input1, const q7_t *ref, size_t length) @@ -388,6 +397,31 @@ DEFINE_TEST_VARIANT4(arm_xor_u8, 15, in_bitwise1, in_bitwise2, ref_xor, 15); DEFINE_TEST_VARIANT4(arm_xor_u8, 32, in_bitwise1, in_bitwise2, ref_xor, 32); DEFINE_TEST_VARIANT4(arm_xor_u8, 47, in_bitwise1, in_bitwise2, ref_xor, 47); +static void test_arm_clip_q7( + const q7_t *input, const q7_t *ref, q7_t min, q7_t max, size_t length) +{ + q7_t *output; + + /* Allocate output buffer */ + output = malloc(length * sizeof(q7_t)); + zassert_not_null(output, ASSERT_MSG_BUFFER_ALLOC_FAILED); + + /* Run test function */ + arm_clip_q7(input, output, min, max, length); + + /* Validate output */ + zassert_true( + test_equal_q7(length, output, ref), + ASSERT_MSG_INCORRECT_COMP_RESULT); + + /* Free output buffer */ + free(output); +} + +DEFINE_TEST_VARIANT5(arm_clip_q7, c0_f3, in_clip, ref_clip1, 0xc0, 0xf3, ARRAY_SIZE(ref_clip1)); +DEFINE_TEST_VARIANT5(arm_clip_q7, c0_40, in_clip, ref_clip2, 0xc0, 0x40, ARRAY_SIZE(ref_clip2)); +DEFINE_TEST_VARIANT5(arm_clip_q7, 0d_40, in_clip, ref_clip3, 0x0d, 0x40, ARRAY_SIZE(ref_clip3)); + void test_basicmath_q7(void) { ztest_test_suite(basicmath_q7, @@ -438,7 +472,18 @@ void test_basicmath_q7(void) ztest_unit_test(test_arm_not_u8_47), ztest_unit_test(test_arm_xor_u8_15), ztest_unit_test(test_arm_xor_u8_32), - ztest_unit_test(test_arm_xor_u8_47) + ztest_unit_test(test_arm_xor_u8_47), + ztest_unit_test(test_arm_add_q7_long), + ztest_unit_test(test_arm_sub_q7_long), + ztest_unit_test(test_arm_mult_q7_long), + ztest_unit_test(test_arm_negate_q7_long), + ztest_unit_test(test_arm_offset_q7_long), + ztest_unit_test(test_arm_scale_q7_long), + ztest_unit_test(test_arm_dot_prod_q7_long), + ztest_unit_test(test_arm_abs_q7_long), + ztest_unit_test(test_arm_clip_q7_c0_f3), + ztest_unit_test(test_arm_clip_q7_c0_40), + ztest_unit_test(test_arm_clip_q7_0d_40) ); ztest_run_test_suite(basicmath_q7); diff --git a/tests/lib/cmsis_dsp/basicmath/src/q7.pat b/tests/lib/cmsis_dsp/basicmath/src/q7.pat index 17db2a00bec..69c2c742ece 100644 --- a/tests/lib/cmsis_dsp/basicmath/src/q7.pat +++ b/tests/lib/cmsis_dsp/basicmath/src/q7.pat @@ -1,97 +1,97 @@ static const q7_t in_com1[256] = { - 0xEA, 0x1D, 0xF9, 0xFA, 0xD8, 0xEC, 0xC0, 0x06, - 0x1F, 0x0D, 0x01, 0x0F, 0x22, 0x2B, 0x3F, 0x24, - 0xE9, 0x3A, 0xD0, 0x53, 0xA7, 0xF3, 0xD2, 0x15, - 0xE1, 0xED, 0xEF, 0x0C, 0x80, 0x13, 0xE8, 0x20, - 0x05, 0xF5, 0xD2, 0x6F, 0xD4, 0xE4, 0x8F, 0xEC, - 0x14, 0xCD, 0xD7, 0xDF, 0x12, 0x18, 0x13, 0xD4, - 0xC7, 0x12, 0xE4, 0x2B, 0x2B, 0xF6, 0x43, 0xF9, - 0xE2, 0x2D, 0x05, 0x28, 0x1D, 0xF0, 0x18, 0xFE, - 0x1E, 0x03, 0xD4, 0x12, 0xAE, 0xFB, 0xFE, 0xF9, - 0x1B, 0xF9, 0x3B, 0xDB, 0xF2, 0x0C, 0x33, 0x02, - 0xE7, 0xB2, 0x0B, 0xC0, 0x1D, 0xC4, 0x9D, 0x09, - 0xFE, 0x1A, 0xF3, 0xD2, 0x56, 0xFF, 0x0C, 0x1C, - 0xDA, 0x05, 0xB1, 0x07, 0x05, 0x33, 0x0C, 0xF7, - 0x2B, 0x10, 0x03, 0xBA, 0xCE, 0xE5, 0xE4, 0xE6, - 0x0D, 0xFB, 0x00, 0xDE, 0x05, 0xD0, 0xC8, 0x26, - 0x00, 0xF3, 0x2D, 0xF6, 0xF2, 0xF8, 0xE0, 0xFF, - 0x29, 0x1B, 0x09, 0x15, 0x0E, 0xE3, 0x2F, 0xDF, - 0x08, 0x17, 0x17, 0xB6, 0xEA, 0xC2, 0x53, 0x13, - 0xC3, 0xFA, 0xE8, 0x39, 0xDC, 0xE6, 0x20, 0xD8, - 0xFF, 0x49, 0x41, 0x38, 0x94, 0x17, 0x2C, 0xE5, - 0xFA, 0xF8, 0x0E, 0x21, 0x3C, 0xDD, 0x04, 0x18, - 0xED, 0xBB, 0x02, 0xED, 0xDA, 0xCA, 0xEA, 0xDE, - 0xC8, 0xD6, 0x2F, 0xD1, 0x24, 0xE2, 0xE2, 0xC7, - 0x0B, 0x3B, 0xFF, 0x07, 0xE9, 0x25, 0xE6, 0xDF, - 0x00, 0xD0, 0xE9, 0x20, 0x01, 0x32, 0x0B, 0xE0, - 0xE2, 0x50, 0x01, 0x10, 0xE4, 0x1A, 0x0F, 0xF4, - 0x21, 0xE7, 0xFE, 0xE7, 0xEE, 0x0C, 0x51, 0xFD, - 0x36, 0x06, 0x2E, 0x12, 0xC6, 0xF0, 0xDC, 0x3D, - 0x44, 0xFB, 0xE9, 0xFC, 0xC5, 0xE7, 0xD2, 0x2D, - 0xF3, 0x0C, 0xE0, 0x23, 0xDC, 0x07, 0xF7, 0xED, - 0x38, 0x10, 0x23, 0x17, 0xE3, 0x05, 0x09, 0xFF, - 0xE0, 0x00, 0x02, 0xEC, 0xF0, 0x15, 0xCB, 0xC5 + 0x52, 0x01, 0x47, 0x20, 0xA5, 0xFD, 0xFC, 0x44, + 0xF5, 0xCB, 0x2A, 0xE7, 0x1E, 0x28, 0xFF, 0xEF, + 0x3E, 0x2C, 0x05, 0x32, 0xAE, 0x09, 0xBE, 0xF5, + 0x24, 0xFA, 0xDE, 0xD6, 0xF4, 0xE7, 0x0D, 0xD7, + 0x10, 0x19, 0x0C, 0xC8, 0xBB, 0x1E, 0x05, 0xAA, + 0x44, 0x60, 0x2D, 0x21, 0x1C, 0xF0, 0x2E, 0x25, + 0xF4, 0xF1, 0xC7, 0x19, 0x26, 0xBB, 0xD0, 0x08, + 0x46, 0xF9, 0xEF, 0x7E, 0x19, 0x1E, 0x1B, 0x0A, + 0x1F, 0x22, 0x12, 0x10, 0x13, 0x05, 0x41, 0x0F, + 0x3B, 0xF6, 0xF9, 0x45, 0xE5, 0xE4, 0x14, 0xCD, + 0xE5, 0xED, 0xF3, 0x14, 0x00, 0xEF, 0xEE, 0xDA, + 0x19, 0x12, 0xB4, 0x0B, 0xAB, 0x14, 0x0A, 0xF7, + 0x15, 0x35, 0x38, 0x0C, 0xCA, 0x32, 0x02, 0xD9, + 0x1F, 0x00, 0xB9, 0x5C, 0xE4, 0x39, 0xE0, 0xE6, + 0x09, 0xAD, 0x0E, 0x30, 0x24, 0xAE, 0xF5, 0x02, + 0x1E, 0xE5, 0x1D, 0xE0, 0xC0, 0x16, 0xEB, 0x35, + 0xAA, 0x30, 0xF4, 0x95, 0xFB, 0xFB, 0xD4, 0x17, + 0x36, 0xF5, 0x26, 0x00, 0x59, 0xDD, 0x47, 0xC5, + 0xE0, 0x86, 0xCA, 0x26, 0x3B, 0xC8, 0x36, 0x31, + 0xD0, 0xAD, 0x05, 0x19, 0x07, 0xF4, 0xBE, 0xED, + 0xC9, 0xD3, 0x17, 0xC0, 0x0D, 0xDE, 0xCF, 0xDA, + 0x66, 0x95, 0xE2, 0xE4, 0x00, 0x10, 0xEC, 0xB8, + 0xD5, 0x27, 0x0B, 0xDD, 0x13, 0x85, 0xD3, 0xDF, + 0xCD, 0xD0, 0x36, 0x3A, 0xFC, 0xDB, 0x2B, 0xE0, + 0x21, 0xDB, 0xE0, 0x1F, 0x64, 0xF0, 0x8F, 0x0E, + 0x45, 0xE1, 0x39, 0x80, 0xBB, 0xF6, 0xC8, 0x42, + 0x02, 0x38, 0x16, 0x62, 0xE2, 0x3B, 0xFD, 0xE4, + 0xF6, 0x91, 0x15, 0xF0, 0xAB, 0x6A, 0x16, 0x0E, + 0xF3, 0xC4, 0xE7, 0x0E, 0xAA, 0x34, 0x1D, 0x13, + 0x44, 0xE8, 0xF2, 0xEF, 0x2E, 0x22, 0x44, 0x41, + 0x2C, 0x2E, 0x74, 0x02, 0x16, 0x06, 0xEA, 0x45, + 0xCB, 0xDE, 0xE5, 0xF3, 0x0F, 0xDE, 0x35, 0x09 }; static const q7_t in_com2[256] = { - 0x03, 0x3B, 0xF9, 0xE3, 0x03, 0x29, 0x0A, 0x28, - 0xE5, 0xE9, 0x12, 0x01, 0x37, 0xFD, 0x20, 0x1E, - 0x10, 0x29, 0x38, 0xC7, 0x21, 0x92, 0xFE, 0x35, - 0x24, 0xD6, 0xE8, 0x19, 0x2D, 0xCA, 0x52, 0xD4, - 0xCA, 0xE9, 0x0F, 0xBE, 0x48, 0xEF, 0x30, 0x0C, - 0x37, 0xCB, 0xFB, 0x23, 0x19, 0x40, 0x97, 0xF5, - 0x02, 0xE2, 0x13, 0x3E, 0xDA, 0x07, 0x19, 0xE7, - 0x43, 0xFC, 0x5E, 0xE5, 0xE4, 0x3E, 0x37, 0x0A, - 0xF5, 0xFA, 0xCC, 0x06, 0x00, 0x26, 0x41, 0xED, - 0x18, 0x10, 0xEE, 0x06, 0x17, 0xD7, 0xDF, 0xFE, - 0x15, 0xF2, 0x53, 0xEA, 0xDF, 0x40, 0xE5, 0x43, - 0x21, 0xD1, 0xE1, 0xFE, 0x1B, 0x51, 0x33, 0x03, - 0xCA, 0xAC, 0xFE, 0x11, 0x24, 0xDF, 0x37, 0x45, - 0x06, 0xD3, 0xE7, 0x30, 0x08, 0xFF, 0x05, 0x3B, - 0xE8, 0xDE, 0xD1, 0xBB, 0xC8, 0x12, 0x04, 0x44, - 0x11, 0x02, 0x30, 0xF7, 0xDC, 0xC7, 0xE5, 0x10, - 0xD9, 0x2F, 0xD6, 0x14, 0xC9, 0x63, 0xB8, 0xF9, - 0xF4, 0x13, 0x10, 0x9D, 0xE3, 0xF5, 0xED, 0xDE, - 0xDD, 0x21, 0xF5, 0x2E, 0xEA, 0x10, 0xFB, 0x21, - 0x36, 0x09, 0xE3, 0x28, 0x7F, 0xCF, 0xF1, 0xA0, - 0x14, 0x5A, 0x01, 0xE1, 0xB7, 0x00, 0x14, 0xFE, - 0x10, 0x15, 0xD4, 0x1E, 0x00, 0xF9, 0x37, 0xFD, - 0xF1, 0x05, 0xEB, 0x32, 0x0A, 0xD8, 0x03, 0xDD, - 0x2A, 0x57, 0x3C, 0xF4, 0x2A, 0xF4, 0x01, 0x6B, - 0xE1, 0x1F, 0x11, 0xD8, 0xFB, 0x2D, 0xE3, 0x00, - 0x04, 0xF9, 0x29, 0x25, 0xEB, 0xF1, 0x1A, 0xFF, - 0xFA, 0xCA, 0x25, 0xF3, 0xB3, 0x3B, 0x25, 0x11, - 0x35, 0x11, 0x2F, 0x09, 0xF3, 0x32, 0x1A, 0xE2, - 0x3C, 0xFF, 0xEE, 0xF1, 0xF8, 0xF4, 0xCE, 0xDB, - 0x29, 0xF8, 0xCC, 0x27, 0x0C, 0x18, 0x20, 0xF4, - 0xE5, 0x0B, 0xFE, 0xF5, 0x41, 0xDE, 0xE0, 0xC4, - 0x96, 0x02, 0x17, 0xF9, 0xE8, 0xE3, 0x22, 0xE3 + 0x1E, 0xDE, 0x10, 0xF2, 0x91, 0xDC, 0x37, 0x02, + 0xDE, 0x08, 0x28, 0xC3, 0x00, 0xFD, 0x14, 0x14, + 0xFC, 0x1E, 0x25, 0xF2, 0xEC, 0xD7, 0x5B, 0x66, + 0xF2, 0x93, 0xF2, 0x11, 0x35, 0x2A, 0xEE, 0xFE, + 0xE7, 0xE2, 0x27, 0xED, 0xDF, 0x02, 0x41, 0xC1, + 0xED, 0x1C, 0xD8, 0x0D, 0x2D, 0xE7, 0xEA, 0xD6, + 0xD3, 0x44, 0xB5, 0x63, 0x12, 0x2D, 0xF1, 0x1C, + 0xDC, 0xD8, 0xD8, 0xD4, 0x05, 0xEB, 0x04, 0x48, + 0xC6, 0xE1, 0x01, 0x30, 0x1D, 0x01, 0xEA, 0x17, + 0xE0, 0xB4, 0x1D, 0xFD, 0xBB, 0xF3, 0xC1, 0x2C, + 0x2B, 0xE0, 0x95, 0xD4, 0x0A, 0xEA, 0x07, 0xFF, + 0x2F, 0x04, 0x17, 0xF7, 0x02, 0x09, 0x22, 0xE6, + 0x0A, 0xCE, 0x36, 0x35, 0xF1, 0x33, 0x01, 0x27, + 0x96, 0xCC, 0xEB, 0xBC, 0x1C, 0x30, 0x9B, 0xC8, + 0x09, 0xD4, 0x07, 0x25, 0x00, 0x2F, 0x3A, 0xF3, + 0x0F, 0x2A, 0xF6, 0x2B, 0xEE, 0xE9, 0xE1, 0xE3, + 0x01, 0x0D, 0x1D, 0x0F, 0x40, 0x0A, 0x01, 0x12, + 0x39, 0x2F, 0x2F, 0x0C, 0xE7, 0x08, 0x09, 0xE9, + 0xB8, 0xED, 0x93, 0xFD, 0x21, 0xED, 0xE5, 0xCF, + 0x65, 0xE3, 0x16, 0xEC, 0xB9, 0x02, 0xFA, 0x3A, + 0x13, 0x14, 0x27, 0x2A, 0xE4, 0x32, 0xE1, 0xF0, + 0xEF, 0x51, 0x0E, 0x4B, 0x18, 0xF2, 0xB6, 0x18, + 0x16, 0xF2, 0xFA, 0x0A, 0xFE, 0x14, 0x84, 0x1B, + 0x03, 0x05, 0xDC, 0xD9, 0x50, 0xF2, 0x1F, 0xF1, + 0x34, 0x7B, 0x0C, 0x02, 0xCC, 0x2D, 0xFC, 0xBE, + 0x27, 0x0E, 0x1A, 0xFA, 0xD8, 0xFA, 0x14, 0x49, + 0xC0, 0x24, 0x05, 0x18, 0xE6, 0xBC, 0x7F, 0xE0, + 0x24, 0xEE, 0x3B, 0xA6, 0xC2, 0xF9, 0x00, 0xCB, + 0xE0, 0xF0, 0xF7, 0xD3, 0x09, 0xE4, 0x0F, 0xF3, + 0xA8, 0xD8, 0xD0, 0x22, 0x96, 0x1B, 0x0F, 0x44, + 0xA0, 0x45, 0x0C, 0xF4, 0x00, 0xC2, 0xEA, 0xE3, + 0x2A, 0x0E, 0xD5, 0xE2, 0x0E, 0xDC, 0x09, 0xC1 }; static const q7_t in_bitwise1[47] = { - 0x88, 0x28, 0xDA, 0xA6, 0x44, 0xB9, 0x50, 0x07, - 0xF9, 0x62, 0x6E, 0x4A, 0x28, 0x7B, 0xC5, 0x09, - 0xBC, 0x2F, 0xE0, 0x0C, 0x26, 0x07, 0xDE, 0x4C, - 0x4F, 0x65, 0x84, 0xE9, 0x21, 0x3C, 0x0C, 0x7C, - 0x6B, 0x38, 0x34, 0xA7, 0x40, 0x46, 0x1B, 0x25, - 0x29, 0x44, 0x12, 0xB2, 0x6F, 0x58, 0x35 + 0xFB, 0xD4, 0xF1, 0xD8, 0x8A, 0x8F, 0x00, 0xF8, + 0xD2, 0xD0, 0xE3, 0x46, 0xC4, 0x64, 0x5E, 0xB8, + 0x45, 0x14, 0x1C, 0x71, 0x9D, 0x9A, 0x5F, 0x42, + 0xFE, 0x7C, 0xCA, 0x2C, 0x3F, 0x1B, 0xFA, 0xC7, + 0xB5, 0x33, 0x72, 0x46, 0xF0, 0x8A, 0x39, 0xCC, + 0xA2, 0x05, 0xA4, 0x41, 0x87, 0xE0, 0x79 }; static const q7_t in_bitwise2[47] = { - 0xE4, 0x4F, 0x67, 0x2D, 0x5F, 0xCC, 0x30, 0xA6, - 0xF8, 0x5F, 0xD7, 0x95, 0xFB, 0x3B, 0xAA, 0x56, - 0xDA, 0xAF, 0x56, 0x68, 0x08, 0x48, 0xDE, 0x06, - 0x4F, 0x09, 0x5F, 0xD1, 0x2B, 0x07, 0x12, 0x5C, - 0x7E, 0x6F, 0x6F, 0xAE, 0x0D, 0x3E, 0x55, 0x8A, - 0x94, 0x2F, 0x61, 0x66, 0xD1, 0x9C, 0x95 + 0xA7, 0xE3, 0x1B, 0xCA, 0x5D, 0x6A, 0x31, 0x4C, + 0xB2, 0x00, 0xB9, 0xA2, 0x09, 0xEE, 0xA0, 0x4E, + 0xC2, 0x21, 0x65, 0x98, 0xD6, 0xCC, 0x50, 0xD6, + 0x27, 0x04, 0x0D, 0x18, 0x3E, 0xE5, 0x44, 0x3C, + 0x44, 0x5F, 0xC8, 0xBC, 0x2C, 0x67, 0x7A, 0x36, + 0x88, 0x8A, 0xC7, 0xBA, 0x91, 0x45, 0xB9 }; static const q7_t in_rand[33] = { - 0x08, 0x0F, 0x06, 0x11, 0x09, 0xFB, 0xF8, 0xF1, - 0xFF, 0xEE, 0xFB, 0x09, 0xFC, 0x0C, 0x05, 0x2B, - 0x05, 0xF8, 0x07, 0xF1, 0x0C, 0xF3, 0x03, 0x05, - 0xEC, 0x1A, 0xF9, 0x27, 0xEE, 0x13, 0x1A, 0xFD, - 0xFF + 0xF6, 0xFE, 0xF5, 0x1B, 0x0D, 0x13, 0xF9, 0x10, + 0xF6, 0x02, 0xE4, 0xD5, 0xF5, 0xF7, 0x14, 0xDF, + 0xFB, 0xE6, 0xF0, 0xEE, 0x02, 0x18, 0x0E, 0x0E, + 0x16, 0xF8, 0xF3, 0xF2, 0xFF, 0x0F, 0xF6, 0x0D, + 0x1C }; static const q7_t in_maxpos[33] = { @@ -118,39 +118,80 @@ static const q7_t in_maxneg2[33] = { 0x80 }; +static const q7_t in_clip[303] = { + 0x8D, 0x8E, 0x8E, 0x8F, 0x90, 0x91, 0x91, 0x92, + 0x93, 0x94, 0x94, 0x95, 0x96, 0x97, 0x97, 0x98, + 0x99, 0x9A, 0x9B, 0x9B, 0x9C, 0x9D, 0x9E, 0x9E, + 0x9F, 0xA0, 0xA1, 0xA1, 0xA2, 0xA3, 0xA4, 0xA4, + 0xA5, 0xA6, 0xA7, 0xA8, 0xA8, 0xA9, 0xAA, 0xAB, + 0xAB, 0xAC, 0xAD, 0xAE, 0xAE, 0xAF, 0xB0, 0xB1, + 0xB1, 0xB2, 0xB3, 0xB4, 0xB4, 0xB5, 0xB6, 0xB7, + 0xB8, 0xB8, 0xB9, 0xBA, 0xBB, 0xBB, 0xBC, 0xBD, + 0xBE, 0xBE, 0xBF, 0xC0, 0xC1, 0xC1, 0xC2, 0xC3, + 0xC4, 0xC4, 0xC5, 0xC6, 0xC7, 0xC8, 0xC8, 0xC9, + 0xCA, 0xCB, 0xCB, 0xCC, 0xCD, 0xCE, 0xCE, 0xCF, + 0xD0, 0xD1, 0xD1, 0xD2, 0xD3, 0xD4, 0xD5, 0xD5, + 0xD6, 0xD7, 0xD8, 0xD8, 0xD9, 0xDA, 0xDB, 0xDB, + 0xDC, 0xDD, 0xDE, 0xDE, 0xDF, 0xE0, 0xE1, 0xE1, + 0xE2, 0xE3, 0xE4, 0xE5, 0xE5, 0xE6, 0xE7, 0xE8, + 0xE8, 0xE9, 0xEA, 0xEB, 0xEB, 0xEC, 0xED, 0xEE, + 0xEE, 0xEF, 0xF0, 0xF1, 0xF2, 0xF2, 0xF3, 0xF4, + 0xF5, 0xF5, 0xF6, 0xF7, 0xF8, 0xF8, 0xF9, 0xFA, + 0xFB, 0xFB, 0xFC, 0xFD, 0xFE, 0xFE, 0xFF, 0x00, + 0x01, 0x02, 0x02, 0x03, 0x04, 0x05, 0x05, 0x06, + 0x07, 0x08, 0x08, 0x09, 0x0A, 0x0B, 0x0B, 0x0C, + 0x0D, 0x0E, 0x0E, 0x0F, 0x10, 0x11, 0x12, 0x12, + 0x13, 0x14, 0x15, 0x15, 0x16, 0x17, 0x18, 0x18, + 0x19, 0x1A, 0x1B, 0x1B, 0x1C, 0x1D, 0x1E, 0x1F, + 0x1F, 0x20, 0x21, 0x22, 0x22, 0x23, 0x24, 0x25, + 0x25, 0x26, 0x27, 0x28, 0x28, 0x29, 0x2A, 0x2B, + 0x2B, 0x2C, 0x2D, 0x2E, 0x2F, 0x2F, 0x30, 0x31, + 0x32, 0x32, 0x33, 0x34, 0x35, 0x35, 0x36, 0x37, + 0x38, 0x38, 0x39, 0x3A, 0x3B, 0x3C, 0x3C, 0x3D, + 0x3E, 0x3F, 0x3F, 0x40, 0x41, 0x42, 0x42, 0x43, + 0x44, 0x45, 0x45, 0x46, 0x47, 0x48, 0x48, 0x49, + 0x4A, 0x4B, 0x4C, 0x4C, 0x4D, 0x4E, 0x4F, 0x4F, + 0x50, 0x51, 0x52, 0x52, 0x53, 0x54, 0x55, 0x55, + 0x56, 0x57, 0x58, 0x58, 0x59, 0x5A, 0x5B, 0x5C, + 0x5C, 0x5D, 0x5E, 0x5F, 0x5F, 0x60, 0x61, 0x62, + 0x62, 0x63, 0x64, 0x65, 0x65, 0x66, 0x67, 0x68, + 0x69, 0x69, 0x6A, 0x6B, 0x6C, 0x6C, 0x6D, 0x6E, + 0x6F, 0x6F, 0x70, 0x71, 0x72, 0x72, 0x73 + }; + static const q7_t ref_add[256] = { - 0xED, 0x57, 0xF2, 0xDD, 0xDB, 0x15, 0xCA, 0x2E, - 0x04, 0xF5, 0x13, 0x10, 0x59, 0x28, 0x60, 0x41, - 0xF9, 0x63, 0x09, 0x19, 0xC8, 0x84, 0xD0, 0x4A, - 0x05, 0xC3, 0xD7, 0x25, 0xAD, 0xDD, 0x3A, 0xF4, - 0xD0, 0xDE, 0xE0, 0x2C, 0x1C, 0xD2, 0xBF, 0xF8, - 0x4C, 0x98, 0xD2, 0x02, 0x2C, 0x57, 0xA9, 0xC9, - 0xC9, 0xF3, 0xF6, 0x69, 0x05, 0xFD, 0x5C, 0xE0, - 0x25, 0x29, 0x64, 0x0D, 0x01, 0x2E, 0x4F, 0x07, - 0x13, 0xFE, 0xA0, 0x19, 0xAE, 0x21, 0x3F, 0xE6, - 0x33, 0x09, 0x29, 0xE1, 0x09, 0xE3, 0x12, 0x00, - 0xFC, 0xA4, 0x5E, 0xAA, 0xFC, 0x04, 0x81, 0x4C, - 0x1F, 0xEB, 0xD4, 0xD0, 0x71, 0x50, 0x3F, 0x1F, - 0xA5, 0xB2, 0xAF, 0x18, 0x2A, 0x12, 0x43, 0x3C, - 0x31, 0xE3, 0xEA, 0xEB, 0xD6, 0xE4, 0xE9, 0x21, - 0xF5, 0xD9, 0xD2, 0x9A, 0xCD, 0xE2, 0xCC, 0x69, - 0x11, 0xF4, 0x5C, 0xED, 0xCD, 0xBF, 0xC4, 0x10, - 0x01, 0x4A, 0xDE, 0x28, 0xD7, 0x46, 0xE8, 0xD8, - 0xFC, 0x2B, 0x27, 0x80, 0xCD, 0xB6, 0x40, 0xF1, - 0x9F, 0x1B, 0xDD, 0x67, 0xC6, 0xF6, 0x1B, 0xF9, - 0x35, 0x52, 0x24, 0x5F, 0x14, 0xE6, 0x1D, 0x85, - 0x0E, 0x52, 0x0F, 0x02, 0xF4, 0xDD, 0x18, 0x16, - 0xFD, 0xD1, 0xD5, 0x0B, 0xDA, 0xC4, 0x21, 0xDA, - 0xB9, 0xDB, 0x1A, 0x03, 0x2E, 0xBA, 0xE5, 0xA4, - 0x34, 0x7F, 0x3A, 0xFB, 0x14, 0x19, 0xE7, 0x4A, - 0xE1, 0xEF, 0xFA, 0xF8, 0xFC, 0x5F, 0xEE, 0xE0, - 0xE6, 0x49, 0x2A, 0x36, 0xCF, 0x0B, 0x29, 0xF3, - 0x1B, 0xB1, 0x23, 0xDA, 0xA1, 0x48, 0x76, 0x0E, - 0x6A, 0x17, 0x5D, 0x1B, 0xB9, 0x22, 0xF6, 0x1F, - 0x7F, 0xF9, 0xD7, 0xEE, 0xBD, 0xDB, 0x9F, 0x08, - 0x1D, 0x05, 0xAC, 0x4A, 0xE8, 0x1F, 0x17, 0xE1, - 0x1E, 0x1B, 0x21, 0x0C, 0x24, 0xE2, 0xE9, 0xC3, - 0x80, 0x02, 0x19, 0xE6, 0xD7, 0xF8, 0xED, 0xA8 + 0x70, 0xDF, 0x57, 0x12, 0x80, 0xDA, 0x33, 0x47, + 0xD3, 0xD3, 0x52, 0xAA, 0x1E, 0x24, 0x13, 0x03, + 0x3A, 0x4A, 0x2A, 0x25, 0x9A, 0xE0, 0x19, 0x5B, + 0x16, 0x8E, 0xD0, 0xE7, 0x29, 0x11, 0xFC, 0xD5, + 0xF8, 0xFB, 0x33, 0xB6, 0x9A, 0x20, 0x46, 0x80, + 0x31, 0x7B, 0x05, 0x2E, 0x49, 0xD7, 0x17, 0xFB, + 0xC8, 0x36, 0x80, 0x7D, 0x38, 0xE8, 0xC1, 0x24, + 0x22, 0xD1, 0xC7, 0x51, 0x1E, 0x09, 0x20, 0x52, + 0xE5, 0x03, 0x13, 0x41, 0x30, 0x06, 0x2C, 0x26, + 0x1B, 0xAB, 0x16, 0x42, 0xA0, 0xD6, 0xD5, 0xFA, + 0x10, 0xCD, 0x88, 0xE8, 0x0A, 0xD9, 0xF5, 0xD8, + 0x48, 0x16, 0xCB, 0x01, 0xAD, 0x1D, 0x2B, 0xDE, + 0x20, 0x03, 0x6E, 0x41, 0xBB, 0x65, 0x03, 0x00, + 0xB5, 0xCC, 0xA4, 0x18, 0x00, 0x69, 0x80, 0xAE, + 0x13, 0x81, 0x14, 0x55, 0x23, 0xDD, 0x2F, 0xF5, + 0x2D, 0x0F, 0x13, 0x0C, 0xAE, 0xFF, 0xCC, 0x18, + 0xAA, 0x3D, 0x11, 0xA3, 0x3B, 0x04, 0xD5, 0x29, + 0x6F, 0x24, 0x56, 0x0C, 0x41, 0xE5, 0x51, 0xAE, + 0x98, 0x80, 0x80, 0x23, 0x5D, 0xB5, 0x1B, 0x00, + 0x35, 0x90, 0x1A, 0x05, 0xC0, 0xF6, 0xB8, 0x27, + 0xDC, 0xE7, 0x3E, 0xEA, 0xF1, 0x11, 0xB0, 0xCA, + 0x55, 0xE6, 0xF0, 0x2E, 0x18, 0x02, 0xA2, 0xD1, + 0xEB, 0x19, 0x06, 0xE7, 0x11, 0x99, 0x80, 0xFA, + 0xD0, 0xD5, 0x12, 0x13, 0x4C, 0xCD, 0x4A, 0xD1, + 0x55, 0x56, 0xEC, 0x21, 0x30, 0x1D, 0x8B, 0xCB, + 0x6B, 0xEF, 0x53, 0x80, 0x93, 0xF0, 0xDC, 0x7F, + 0xC2, 0x5C, 0x1B, 0x7A, 0xC8, 0xF7, 0x7D, 0xC4, + 0x1A, 0x80, 0x50, 0x95, 0x80, 0x63, 0x16, 0xD9, + 0xD2, 0xB4, 0xDE, 0xE0, 0xB3, 0x18, 0x2B, 0x06, + 0xED, 0xC0, 0xC2, 0x11, 0xC3, 0x3D, 0x52, 0x7F, + 0xCC, 0x73, 0x7F, 0xF5, 0x16, 0xC8, 0xD5, 0x27, + 0xF5, 0xEC, 0xBA, 0xD4, 0x1E, 0xBA, 0x3E, 0xCB }; static const q7_t ref_add_possat[33] = { @@ -170,38 +211,38 @@ static const q7_t ref_add_negsat[33] = { }; static const q7_t ref_sub[256] = { - 0xE7, 0xE2, 0x00, 0x17, 0xD5, 0xC2, 0xB7, 0xDE, - 0x3B, 0x24, 0xF0, 0x0E, 0xEA, 0x2E, 0x1F, 0x06, - 0xD9, 0x11, 0x98, 0x7F, 0x86, 0x61, 0xD4, 0xE1, - 0xBD, 0x17, 0x07, 0xF2, 0x80, 0x49, 0x96, 0x4C, - 0x3B, 0x0C, 0xC3, 0x7F, 0x8C, 0xF5, 0x80, 0xE0, - 0xDD, 0x02, 0xDD, 0xBC, 0xF9, 0xD8, 0x7C, 0xDF, - 0xC4, 0x30, 0xD1, 0xED, 0x51, 0xEF, 0x2B, 0x12, - 0x9F, 0x31, 0xA7, 0x43, 0x3A, 0xB1, 0xE0, 0xF4, - 0x29, 0x09, 0x08, 0x0C, 0xAE, 0xD4, 0xBC, 0x0C, - 0x04, 0xE9, 0x4D, 0xD5, 0xDB, 0x36, 0x55, 0x04, - 0xD2, 0xC0, 0xB7, 0xD6, 0x3E, 0x85, 0xB8, 0xC6, - 0xDD, 0x49, 0x12, 0xD4, 0x3B, 0xAE, 0xDA, 0x19, - 0x10, 0x59, 0xB3, 0xF5, 0xE1, 0x54, 0xD5, 0xB2, - 0x25, 0x3C, 0x1C, 0x8A, 0xC7, 0xE6, 0xDF, 0xAB, - 0x25, 0x1D, 0x2F, 0x23, 0x3D, 0xBE, 0xC3, 0xE2, - 0xEE, 0xF1, 0xFD, 0xFF, 0x16, 0x32, 0xFB, 0xEF, - 0x50, 0xED, 0x33, 0x01, 0x46, 0x80, 0x77, 0xE5, - 0x15, 0x04, 0x06, 0x19, 0x08, 0xCD, 0x66, 0x35, - 0xE6, 0xD9, 0xF3, 0x0B, 0xF2, 0xD6, 0x24, 0xB7, - 0xCA, 0x40, 0x5E, 0x10, 0x80, 0x48, 0x3B, 0x45, - 0xE7, 0x9E, 0x0E, 0x40, 0x7F, 0xDC, 0xEF, 0x1A, - 0xDD, 0xA6, 0x2E, 0xCF, 0xD9, 0xD1, 0xB3, 0xE1, - 0xD7, 0xD1, 0x44, 0x9E, 0x1A, 0x0B, 0xDF, 0xE9, - 0xE1, 0xE4, 0xC3, 0x13, 0xBF, 0x31, 0xE5, 0x80, - 0x1F, 0xB1, 0xD8, 0x47, 0x05, 0x05, 0x29, 0xE0, - 0xDE, 0x57, 0xD8, 0xEB, 0xF9, 0x29, 0xF6, 0xF4, - 0x27, 0x1E, 0xD9, 0xF4, 0x3B, 0xD1, 0x2C, 0xEC, - 0x01, 0xF5, 0xFF, 0x08, 0xD3, 0xBF, 0xC2, 0x5B, - 0x08, 0xFC, 0xFA, 0x0B, 0xCD, 0xF3, 0x04, 0x53, - 0xCA, 0x14, 0x15, 0xFD, 0xD0, 0xEF, 0xD6, 0xF9, - 0x53, 0x06, 0x26, 0x22, 0xA2, 0x27, 0x28, 0x3B, - 0x4A, 0xFD, 0xEB, 0xF3, 0x08, 0x32, 0xA9, 0xE1 + 0x33, 0x23, 0x37, 0x2E, 0x14, 0x21, 0xC5, 0x42, + 0x16, 0xC2, 0x02, 0x24, 0x1F, 0x2B, 0xEB, 0xDB, + 0x41, 0x0E, 0xDF, 0x40, 0xC2, 0x32, 0x80, 0x8E, + 0x32, 0x67, 0xEC, 0xC5, 0xC0, 0xBC, 0x1F, 0xD8, + 0x29, 0x37, 0xE5, 0xDB, 0xDC, 0x1C, 0xC3, 0xE9, + 0x56, 0x44, 0x55, 0x14, 0xEF, 0x09, 0x44, 0x4E, + 0x21, 0xAD, 0x12, 0xB6, 0x14, 0x8E, 0xDF, 0xEC, + 0x69, 0x21, 0x17, 0x7F, 0x14, 0x33, 0x17, 0xC1, + 0x59, 0x41, 0x10, 0xE0, 0xF6, 0x05, 0x57, 0xF9, + 0x5A, 0x42, 0xDC, 0x48, 0x2B, 0xF1, 0x53, 0xA1, + 0xBA, 0x0D, 0x5D, 0x40, 0xF5, 0x04, 0xE7, 0xDB, + 0xEA, 0x0E, 0x9E, 0x14, 0xAA, 0x0B, 0xE8, 0x11, + 0x0B, 0x67, 0x02, 0xD7, 0xD9, 0xFF, 0x01, 0xB2, + 0x7F, 0x33, 0xCE, 0x7F, 0xC8, 0x09, 0x44, 0x1D, + 0x00, 0xD9, 0x07, 0x0B, 0x24, 0x80, 0xBA, 0x10, + 0x0F, 0xBB, 0x27, 0xB5, 0xD2, 0x2D, 0x0A, 0x52, + 0xA9, 0x24, 0xD7, 0x86, 0xBC, 0xF1, 0xD4, 0x05, + 0xFD, 0xC6, 0xF7, 0xF3, 0x72, 0xD5, 0x3E, 0xDC, + 0x28, 0x99, 0x37, 0x29, 0x1A, 0xDA, 0x51, 0x63, + 0x80, 0xCA, 0xEF, 0x2D, 0x4E, 0xF3, 0xC5, 0xB4, + 0xB6, 0xBF, 0xF0, 0x96, 0x2A, 0xAC, 0xEE, 0xEA, + 0x77, 0x80, 0xD5, 0x99, 0xE8, 0x1F, 0x36, 0xA0, + 0xBF, 0x35, 0x11, 0xD3, 0x15, 0x80, 0x4F, 0xC3, + 0xCA, 0xCC, 0x5A, 0x62, 0xAD, 0xE8, 0x0C, 0xEE, + 0xED, 0x80, 0xD4, 0x1E, 0x7F, 0xC3, 0x92, 0x50, + 0x1E, 0xD2, 0x1F, 0x86, 0xE3, 0xFC, 0xB3, 0xF9, + 0x42, 0x14, 0x11, 0x4B, 0xFC, 0x7F, 0x80, 0x04, + 0xD3, 0xA3, 0xDA, 0x4A, 0xE8, 0x71, 0x16, 0x43, + 0x13, 0xD4, 0xF0, 0x3B, 0xA1, 0x50, 0x0E, 0x20, + 0x7F, 0x0F, 0x22, 0xCD, 0x7F, 0x07, 0x35, 0xFE, + 0x7F, 0xE8, 0x68, 0x0E, 0x16, 0x44, 0x00, 0x62, + 0xA1, 0xD0, 0x11, 0x11, 0x01, 0x02, 0x2C, 0x48 }; static const q7_t ref_sub_possat[33] = { @@ -221,38 +262,38 @@ static const q7_t ref_sub_negsat[33] = { }; static const q7_t ref_mult[256] = { - 0xFF, 0x0D, 0x00, 0x01, 0xFF, 0xF9, 0xFB, 0x02, - 0xF9, 0xFE, 0x00, 0x00, 0x0E, 0xFF, 0x10, 0x08, - 0xFD, 0x12, 0xEB, 0xDB, 0xE9, 0x0C, 0x01, 0x09, - 0xF7, 0x06, 0x03, 0x02, 0xD3, 0xF8, 0xF0, 0xF5, - 0xFE, 0x02, 0xFB, 0xC7, 0xE7, 0x04, 0xD5, 0xFE, - 0x09, 0x15, 0x02, 0xF7, 0x04, 0x0C, 0xF1, 0x04, - 0xFF, 0xFC, 0xFC, 0x15, 0xF3, 0xFF, 0x0D, 0x01, - 0xF0, 0xFF, 0x04, 0xF7, 0xF9, 0xF8, 0x0A, 0x00, - 0xFD, 0x00, 0x12, 0x01, 0x00, 0xFE, 0xFF, 0x01, - 0x05, 0xFF, 0xF8, 0xFE, 0xFD, 0xFC, 0xF3, 0x00, - 0xFC, 0x09, 0x07, 0x0B, 0xF9, 0xE2, 0x15, 0x05, - 0xFF, 0xF6, 0x03, 0x01, 0x12, 0xFF, 0x05, 0x01, - 0x10, 0xFD, 0x01, 0x01, 0x01, 0xF3, 0x05, 0xFB, - 0x02, 0xFB, 0xFF, 0xE6, 0xFD, 0x00, 0xFF, 0xF4, - 0xFE, 0x01, 0x00, 0x12, 0xFE, 0xF9, 0xFE, 0x14, - 0x00, 0x00, 0x11, 0x01, 0x04, 0x03, 0x07, 0x00, - 0xF4, 0x0A, 0xFD, 0x03, 0xFA, 0xE9, 0xE5, 0x02, - 0xFF, 0x04, 0x03, 0x39, 0x05, 0x06, 0xF4, 0xFB, - 0x11, 0xFF, 0x02, 0x15, 0x06, 0xFD, 0xFF, 0xF6, - 0x00, 0x05, 0xF1, 0x11, 0x94, 0xF7, 0xFB, 0x14, - 0xFF, 0xFB, 0x00, 0xF8, 0xDE, 0x00, 0x01, 0x00, - 0xFE, 0xF5, 0xFF, 0xFB, 0x00, 0x03, 0xF6, 0x01, - 0x07, 0xFE, 0xF8, 0xED, 0x03, 0x09, 0xFF, 0x0F, - 0x04, 0x28, 0xFF, 0xFF, 0xF8, 0xFD, 0x00, 0xE4, - 0x00, 0xF4, 0xFD, 0xF6, 0x00, 0x12, 0xFD, 0x00, - 0xFF, 0xFC, 0x00, 0x05, 0x04, 0xFD, 0x03, 0x00, - 0xFE, 0x0A, 0xFF, 0x03, 0x0B, 0x06, 0x17, 0x00, - 0x16, 0x01, 0x11, 0x01, 0x06, 0xFA, 0xF9, 0xF2, - 0x20, 0x00, 0x03, 0x00, 0x04, 0x02, 0x12, 0xF3, - 0xFC, 0xFF, 0x0D, 0x0B, 0xFD, 0x01, 0xFE, 0x02, - 0xF4, 0x01, 0xFF, 0xFE, 0xF1, 0xFF, 0xFE, 0x01, - 0x1A, 0x00, 0x00, 0x01, 0x03, 0xFB, 0xF2, 0x0D + 0x13, 0x00, 0x09, 0xFC, 0x4F, 0x01, 0xFE, 0x01, + 0x03, 0xFC, 0x0D, 0x0C, 0x00, 0xFF, 0x00, 0xFD, + 0xFE, 0x0A, 0x01, 0xFB, 0x0D, 0xFD, 0xD1, 0xF7, + 0xFC, 0x05, 0x04, 0xFA, 0xFB, 0xF8, 0xFE, 0x01, + 0xFD, 0xFA, 0x04, 0x08, 0x12, 0x00, 0x02, 0x2B, + 0xF6, 0x15, 0xF2, 0x03, 0x0A, 0x03, 0xF8, 0xF4, + 0x04, 0xF8, 0x21, 0x14, 0x05, 0xE8, 0x06, 0x02, + 0xED, 0x02, 0x05, 0xD5, 0x01, 0xFB, 0x01, 0x06, + 0xF2, 0xF8, 0x00, 0x06, 0x04, 0x00, 0xF5, 0x03, + 0xF2, 0x06, 0xFE, 0xFE, 0x0E, 0x03, 0xF6, 0xEF, + 0xF7, 0x05, 0x0B, 0xF9, 0x00, 0x03, 0xFF, 0x00, + 0x09, 0x01, 0xF3, 0xFF, 0xFF, 0x01, 0x03, 0x02, + 0x02, 0xEB, 0x18, 0x05, 0x06, 0x14, 0x00, 0xF4, + 0xE6, 0x00, 0x0C, 0xCF, 0xFA, 0x15, 0x1A, 0x0B, + 0x01, 0x1D, 0x01, 0x0E, 0x00, 0xE2, 0xFB, 0x00, + 0x03, 0xF7, 0xFE, 0xF5, 0x09, 0xFC, 0x05, 0xF4, + 0x00, 0x05, 0xFD, 0xF4, 0xFE, 0x00, 0x00, 0x03, + 0x18, 0xFC, 0x0E, 0x00, 0xEF, 0xFE, 0x05, 0x0B, + 0x12, 0x13, 0x2E, 0xFF, 0x0F, 0x08, 0xF5, 0xED, + 0xDB, 0x13, 0x01, 0xFC, 0xFC, 0x00, 0x03, 0xF7, + 0xF8, 0xF9, 0x07, 0xEB, 0xFD, 0xF3, 0x0C, 0x05, + 0xF2, 0xBD, 0xFD, 0xEF, 0x00, 0xFE, 0x0B, 0xF2, + 0xF9, 0xFC, 0xFF, 0xFD, 0x00, 0xEC, 0x2B, 0xF9, + 0xFF, 0xFE, 0xF1, 0xEE, 0xFE, 0x04, 0x0A, 0x04, + 0x0D, 0xDC, 0xFD, 0x00, 0xD8, 0xFA, 0x03, 0xF9, + 0x15, 0xFD, 0x0C, 0x06, 0x16, 0x00, 0xF7, 0x26, + 0xFF, 0x10, 0x01, 0x12, 0x06, 0xE0, 0xFD, 0x07, + 0xFD, 0x10, 0x0A, 0x0C, 0x29, 0xFA, 0x00, 0xFA, + 0x03, 0x07, 0x02, 0xFB, 0xFA, 0xF5, 0x03, 0xFE, + 0xD1, 0x08, 0x05, 0xFC, 0xDA, 0x07, 0x08, 0x22, + 0xDF, 0x19, 0x0B, 0x00, 0x00, 0xFD, 0x04, 0xF0, + 0xEF, 0xFC, 0x09, 0x03, 0x02, 0x09, 0x04, 0xFB }; static const q7_t ref_mult_possat[33] = { @@ -264,38 +305,38 @@ static const q7_t ref_mult_possat[33] = { }; static const q7_t ref_negate[256] = { - 0x16, 0xE3, 0x07, 0x06, 0x28, 0x14, 0x40, 0xFA, - 0xE1, 0xF3, 0xFF, 0xF1, 0xDE, 0xD5, 0xC1, 0xDC, - 0x17, 0xC6, 0x30, 0xAD, 0x59, 0x0D, 0x2E, 0xEB, - 0x1F, 0x13, 0x11, 0xF4, 0x7F, 0xED, 0x18, 0xE0, - 0xFB, 0x0B, 0x2E, 0x91, 0x2C, 0x1C, 0x71, 0x14, - 0xEC, 0x33, 0x29, 0x21, 0xEE, 0xE8, 0xED, 0x2C, - 0x39, 0xEE, 0x1C, 0xD5, 0xD5, 0x0A, 0xBD, 0x07, - 0x1E, 0xD3, 0xFB, 0xD8, 0xE3, 0x10, 0xE8, 0x02, - 0xE2, 0xFD, 0x2C, 0xEE, 0x52, 0x05, 0x02, 0x07, - 0xE5, 0x07, 0xC5, 0x25, 0x0E, 0xF4, 0xCD, 0xFE, - 0x19, 0x4E, 0xF5, 0x40, 0xE3, 0x3C, 0x63, 0xF7, - 0x02, 0xE6, 0x0D, 0x2E, 0xAA, 0x01, 0xF4, 0xE4, - 0x26, 0xFB, 0x4F, 0xF9, 0xFB, 0xCD, 0xF4, 0x09, - 0xD5, 0xF0, 0xFD, 0x46, 0x32, 0x1B, 0x1C, 0x1A, - 0xF3, 0x05, 0x00, 0x22, 0xFB, 0x30, 0x38, 0xDA, - 0x00, 0x0D, 0xD3, 0x0A, 0x0E, 0x08, 0x20, 0x01, - 0xD7, 0xE5, 0xF7, 0xEB, 0xF2, 0x1D, 0xD1, 0x21, - 0xF8, 0xE9, 0xE9, 0x4A, 0x16, 0x3E, 0xAD, 0xED, - 0x3D, 0x06, 0x18, 0xC7, 0x24, 0x1A, 0xE0, 0x28, - 0x01, 0xB7, 0xBF, 0xC8, 0x6C, 0xE9, 0xD4, 0x1B, - 0x06, 0x08, 0xF2, 0xDF, 0xC4, 0x23, 0xFC, 0xE8, - 0x13, 0x45, 0xFE, 0x13, 0x26, 0x36, 0x16, 0x22, - 0x38, 0x2A, 0xD1, 0x2F, 0xDC, 0x1E, 0x1E, 0x39, - 0xF5, 0xC5, 0x01, 0xF9, 0x17, 0xDB, 0x1A, 0x21, - 0x00, 0x30, 0x17, 0xE0, 0xFF, 0xCE, 0xF5, 0x20, - 0x1E, 0xB0, 0xFF, 0xF0, 0x1C, 0xE6, 0xF1, 0x0C, - 0xDF, 0x19, 0x02, 0x19, 0x12, 0xF4, 0xAF, 0x03, - 0xCA, 0xFA, 0xD2, 0xEE, 0x3A, 0x10, 0x24, 0xC3, - 0xBC, 0x05, 0x17, 0x04, 0x3B, 0x19, 0x2E, 0xD3, - 0x0D, 0xF4, 0x20, 0xDD, 0x24, 0xF9, 0x09, 0x13, - 0xC8, 0xF0, 0xDD, 0xE9, 0x1D, 0xFB, 0xF7, 0x01, - 0x20, 0x00, 0xFE, 0x14, 0x10, 0xEB, 0x35, 0x3B + 0xAE, 0xFF, 0xB9, 0xE0, 0x5B, 0x03, 0x04, 0xBC, + 0x0B, 0x35, 0xD6, 0x19, 0xE2, 0xD8, 0x01, 0x11, + 0xC2, 0xD4, 0xFB, 0xCE, 0x52, 0xF7, 0x42, 0x0B, + 0xDC, 0x06, 0x22, 0x2A, 0x0C, 0x19, 0xF3, 0x29, + 0xF0, 0xE7, 0xF4, 0x38, 0x45, 0xE2, 0xFB, 0x56, + 0xBC, 0xA0, 0xD3, 0xDF, 0xE4, 0x10, 0xD2, 0xDB, + 0x0C, 0x0F, 0x39, 0xE7, 0xDA, 0x45, 0x30, 0xF8, + 0xBA, 0x07, 0x11, 0x82, 0xE7, 0xE2, 0xE5, 0xF6, + 0xE1, 0xDE, 0xEE, 0xF0, 0xED, 0xFB, 0xBF, 0xF1, + 0xC5, 0x0A, 0x07, 0xBB, 0x1B, 0x1C, 0xEC, 0x33, + 0x1B, 0x13, 0x0D, 0xEC, 0x00, 0x11, 0x12, 0x26, + 0xE7, 0xEE, 0x4C, 0xF5, 0x55, 0xEC, 0xF6, 0x09, + 0xEB, 0xCB, 0xC8, 0xF4, 0x36, 0xCE, 0xFE, 0x27, + 0xE1, 0x00, 0x47, 0xA4, 0x1C, 0xC7, 0x20, 0x1A, + 0xF7, 0x53, 0xF2, 0xD0, 0xDC, 0x52, 0x0B, 0xFE, + 0xE2, 0x1B, 0xE3, 0x20, 0x40, 0xEA, 0x15, 0xCB, + 0x56, 0xD0, 0x0C, 0x6B, 0x05, 0x05, 0x2C, 0xE9, + 0xCA, 0x0B, 0xDA, 0x00, 0xA7, 0x23, 0xB9, 0x3B, + 0x20, 0x7A, 0x36, 0xDA, 0xC5, 0x38, 0xCA, 0xCF, + 0x30, 0x53, 0xFB, 0xE7, 0xF9, 0x0C, 0x42, 0x13, + 0x37, 0x2D, 0xE9, 0x40, 0xF3, 0x22, 0x31, 0x26, + 0x9A, 0x6B, 0x1E, 0x1C, 0x00, 0xF0, 0x14, 0x48, + 0x2B, 0xD9, 0xF5, 0x23, 0xED, 0x7B, 0x2D, 0x21, + 0x33, 0x30, 0xCA, 0xC6, 0x04, 0x25, 0xD5, 0x20, + 0xDF, 0x25, 0x20, 0xE1, 0x9C, 0x10, 0x71, 0xF2, + 0xBB, 0x1F, 0xC7, 0x7F, 0x45, 0x0A, 0x38, 0xBE, + 0xFE, 0xC8, 0xEA, 0x9E, 0x1E, 0xC5, 0x03, 0x1C, + 0x0A, 0x6F, 0xEB, 0x10, 0x55, 0x96, 0xEA, 0xF2, + 0x0D, 0x3C, 0x19, 0xF2, 0x56, 0xCC, 0xE3, 0xED, + 0xBC, 0x18, 0x0E, 0x11, 0xD2, 0xDE, 0xBC, 0xBF, + 0xD4, 0xD2, 0x8C, 0xFE, 0xEA, 0xFA, 0x16, 0xBB, + 0x35, 0x22, 0x1B, 0x0D, 0xF1, 0x22, 0xCB, 0xF7 }; static const q7_t ref_negate_possat[33] = { @@ -307,38 +348,38 @@ static const q7_t ref_negate_possat[33] = { }; static const q7_t ref_offset[256] = { - 0x2A, 0x5D, 0x39, 0x3A, 0x18, 0x2C, 0x00, 0x46, - 0x5F, 0x4D, 0x41, 0x4F, 0x62, 0x6B, 0x7F, 0x64, - 0x29, 0x7A, 0x10, 0x7F, 0xE7, 0x33, 0x12, 0x55, - 0x21, 0x2D, 0x2F, 0x4C, 0xC0, 0x53, 0x28, 0x60, - 0x45, 0x35, 0x12, 0x7F, 0x14, 0x24, 0xCF, 0x2C, - 0x54, 0x0D, 0x17, 0x1F, 0x52, 0x58, 0x53, 0x14, - 0x07, 0x52, 0x24, 0x6B, 0x6B, 0x36, 0x7F, 0x39, - 0x22, 0x6D, 0x45, 0x68, 0x5D, 0x30, 0x58, 0x3E, - 0x5E, 0x43, 0x14, 0x52, 0xEE, 0x3B, 0x3E, 0x39, - 0x5B, 0x39, 0x7B, 0x1B, 0x32, 0x4C, 0x73, 0x42, - 0x27, 0xF2, 0x4B, 0x00, 0x5D, 0x04, 0xDD, 0x49, - 0x3E, 0x5A, 0x33, 0x12, 0x7F, 0x3F, 0x4C, 0x5C, - 0x1A, 0x45, 0xF1, 0x47, 0x45, 0x73, 0x4C, 0x37, - 0x6B, 0x50, 0x43, 0xFA, 0x0E, 0x25, 0x24, 0x26, - 0x4D, 0x3B, 0x40, 0x1E, 0x45, 0x10, 0x08, 0x66, - 0x40, 0x33, 0x6D, 0x36, 0x32, 0x38, 0x20, 0x3F, - 0x69, 0x5B, 0x49, 0x55, 0x4E, 0x23, 0x6F, 0x1F, - 0x48, 0x57, 0x57, 0xF6, 0x2A, 0x02, 0x7F, 0x53, - 0x03, 0x3A, 0x28, 0x79, 0x1C, 0x26, 0x60, 0x18, - 0x3F, 0x7F, 0x7F, 0x78, 0xD4, 0x57, 0x6C, 0x25, - 0x3A, 0x38, 0x4E, 0x61, 0x7C, 0x1D, 0x44, 0x58, - 0x2D, 0xFB, 0x42, 0x2D, 0x1A, 0x0A, 0x2A, 0x1E, - 0x08, 0x16, 0x6F, 0x11, 0x64, 0x22, 0x22, 0x07, - 0x4B, 0x7B, 0x3F, 0x47, 0x29, 0x65, 0x26, 0x1F, - 0x40, 0x10, 0x29, 0x60, 0x41, 0x72, 0x4B, 0x20, - 0x22, 0x7F, 0x41, 0x50, 0x24, 0x5A, 0x4F, 0x34, - 0x61, 0x27, 0x3E, 0x27, 0x2E, 0x4C, 0x7F, 0x3D, - 0x76, 0x46, 0x6E, 0x52, 0x06, 0x30, 0x1C, 0x7D, - 0x7F, 0x3B, 0x29, 0x3C, 0x05, 0x27, 0x12, 0x6D, - 0x33, 0x4C, 0x20, 0x63, 0x1C, 0x47, 0x37, 0x2D, - 0x78, 0x50, 0x63, 0x57, 0x23, 0x45, 0x49, 0x3F, - 0x20, 0x40, 0x42, 0x2C, 0x30, 0x55, 0x0B, 0x05 + 0x7F, 0x41, 0x7F, 0x60, 0xE5, 0x3D, 0x3C, 0x7F, + 0x35, 0x0B, 0x6A, 0x27, 0x5E, 0x68, 0x3F, 0x2F, + 0x7E, 0x6C, 0x45, 0x72, 0xEE, 0x49, 0xFE, 0x35, + 0x64, 0x3A, 0x1E, 0x16, 0x34, 0x27, 0x4D, 0x17, + 0x50, 0x59, 0x4C, 0x08, 0xFB, 0x5E, 0x45, 0xEA, + 0x7F, 0x7F, 0x6D, 0x61, 0x5C, 0x30, 0x6E, 0x65, + 0x34, 0x31, 0x07, 0x59, 0x66, 0xFB, 0x10, 0x48, + 0x7F, 0x39, 0x2F, 0x7F, 0x59, 0x5E, 0x5B, 0x4A, + 0x5F, 0x62, 0x52, 0x50, 0x53, 0x45, 0x7F, 0x4F, + 0x7B, 0x36, 0x39, 0x7F, 0x25, 0x24, 0x54, 0x0D, + 0x25, 0x2D, 0x33, 0x54, 0x40, 0x2F, 0x2E, 0x1A, + 0x59, 0x52, 0xF4, 0x4B, 0xEB, 0x54, 0x4A, 0x37, + 0x55, 0x75, 0x78, 0x4C, 0x0A, 0x72, 0x42, 0x19, + 0x5F, 0x40, 0xF9, 0x7F, 0x24, 0x79, 0x20, 0x26, + 0x49, 0xED, 0x4E, 0x70, 0x64, 0xEE, 0x35, 0x42, + 0x5E, 0x25, 0x5D, 0x20, 0x00, 0x56, 0x2B, 0x75, + 0xEA, 0x70, 0x34, 0xD5, 0x3B, 0x3B, 0x14, 0x57, + 0x76, 0x35, 0x66, 0x40, 0x7F, 0x1D, 0x7F, 0x05, + 0x20, 0xC6, 0x0A, 0x66, 0x7B, 0x08, 0x76, 0x71, + 0x10, 0xED, 0x45, 0x59, 0x47, 0x34, 0xFE, 0x2D, + 0x09, 0x13, 0x57, 0x00, 0x4D, 0x1E, 0x0F, 0x1A, + 0x7F, 0xD5, 0x22, 0x24, 0x40, 0x50, 0x2C, 0xF8, + 0x15, 0x67, 0x4B, 0x1D, 0x53, 0xC5, 0x13, 0x1F, + 0x0D, 0x10, 0x76, 0x7A, 0x3C, 0x1B, 0x6B, 0x20, + 0x61, 0x1B, 0x20, 0x5F, 0x7F, 0x30, 0xCF, 0x4E, + 0x7F, 0x21, 0x79, 0xC0, 0xFB, 0x36, 0x08, 0x7F, + 0x42, 0x78, 0x56, 0x7F, 0x22, 0x7B, 0x3D, 0x24, + 0x36, 0xD1, 0x55, 0x30, 0xEB, 0x7F, 0x56, 0x4E, + 0x33, 0x04, 0x27, 0x4E, 0xEA, 0x74, 0x5D, 0x53, + 0x7F, 0x28, 0x32, 0x2F, 0x6E, 0x62, 0x7F, 0x7F, + 0x6C, 0x6E, 0x7F, 0x42, 0x56, 0x46, 0x2A, 0x7F, + 0x0B, 0x1E, 0x25, 0x33, 0x4F, 0x1E, 0x75, 0x49 }; static const q7_t ref_offset_possat[33] = { @@ -358,38 +399,38 @@ static const q7_t ref_offset_negsat[33] = { }; static const q7_t ref_scale[256] = { - 0xF5, 0x0E, 0xFD, 0xFD, 0xEC, 0xF6, 0xE0, 0x03, - 0x10, 0x06, 0x01, 0x08, 0x11, 0x15, 0x20, 0x12, - 0xF5, 0x1D, 0xE8, 0x29, 0xD4, 0xF9, 0xE9, 0x0B, - 0xF0, 0xF6, 0xF7, 0x06, 0xC0, 0x0A, 0xF4, 0x10, - 0x03, 0xFB, 0xE9, 0x37, 0xEA, 0xF2, 0xC7, 0xF6, - 0x0A, 0xE7, 0xEC, 0xF0, 0x09, 0x0C, 0x09, 0xEA, - 0xE3, 0x09, 0xF2, 0x15, 0x15, 0xFB, 0x22, 0xFC, - 0xF1, 0x16, 0x03, 0x14, 0x0F, 0xF8, 0x0C, 0xFF, - 0x0F, 0x02, 0xEA, 0x09, 0xD7, 0xFD, 0xFF, 0xFD, - 0x0E, 0xFC, 0x1D, 0xED, 0xF9, 0x06, 0x1A, 0x01, - 0xF4, 0xD9, 0x05, 0xE0, 0x0E, 0xE2, 0xCE, 0x05, - 0xFF, 0x0D, 0xFA, 0xE9, 0x2B, 0xFF, 0x06, 0x0E, - 0xED, 0x03, 0xD9, 0x03, 0x03, 0x1A, 0x06, 0xFB, - 0x16, 0x08, 0x02, 0xDD, 0xE7, 0xF2, 0xF2, 0xF3, - 0x06, 0xFE, 0x00, 0xEF, 0x03, 0xE8, 0xE4, 0x13, - 0x00, 0xF9, 0x16, 0xFB, 0xF9, 0xFC, 0xF0, 0x00, - 0x14, 0x0E, 0x04, 0x0A, 0x07, 0xF1, 0x18, 0xEF, - 0x04, 0x0C, 0x0B, 0xDB, 0xF5, 0xE1, 0x29, 0x0A, - 0xE1, 0xFD, 0xF4, 0x1D, 0xEE, 0xF3, 0x10, 0xEC, - 0x00, 0x25, 0x20, 0x1C, 0xCA, 0x0C, 0x16, 0xF3, - 0xFD, 0xFC, 0x07, 0x11, 0x1E, 0xEE, 0x02, 0x0C, - 0xF6, 0xDE, 0x01, 0xF6, 0xED, 0xE5, 0xF5, 0xEF, - 0xE4, 0xEB, 0x17, 0xE8, 0x12, 0xF1, 0xF1, 0xE3, - 0x05, 0x1E, 0xFF, 0x04, 0xF5, 0x13, 0xF3, 0xEF, - 0x00, 0xE8, 0xF4, 0x10, 0x00, 0x19, 0x06, 0xF0, - 0xF1, 0x28, 0x00, 0x08, 0xF2, 0x0D, 0x08, 0xFA, - 0x11, 0xF4, 0xFF, 0xF4, 0xF7, 0x06, 0x29, 0xFE, - 0x1B, 0x03, 0x17, 0x09, 0xE3, 0xF8, 0xEE, 0x1E, - 0x22, 0xFD, 0xF4, 0xFE, 0xE2, 0xF3, 0xE9, 0x17, - 0xFA, 0x06, 0xF0, 0x12, 0xEE, 0x03, 0xFB, 0xF6, - 0x1C, 0x08, 0x12, 0x0C, 0xF2, 0x02, 0x04, 0xFF, - 0xF0, 0x00, 0x01, 0xF6, 0xF8, 0x0A, 0xE5, 0xE2 + 0x29, 0x00, 0x23, 0x10, 0xD2, 0xFF, 0xFE, 0x22, + 0xFA, 0xE5, 0x15, 0xF3, 0x0F, 0x14, 0xFF, 0xF7, + 0x1F, 0x16, 0x02, 0x19, 0xD7, 0x05, 0xDF, 0xFA, + 0x12, 0xFD, 0xEF, 0xEB, 0xFA, 0xF3, 0x07, 0xEB, + 0x08, 0x0C, 0x06, 0xE4, 0xDD, 0x0F, 0x02, 0xD5, + 0x22, 0x30, 0x17, 0x10, 0x0E, 0xF8, 0x17, 0x12, + 0xFA, 0xF9, 0xE3, 0x0D, 0x13, 0xDD, 0xE8, 0x04, + 0x23, 0xFD, 0xF8, 0x3F, 0x0C, 0x0F, 0x0E, 0x05, + 0x10, 0x11, 0x09, 0x08, 0x09, 0x03, 0x21, 0x08, + 0x1D, 0xFB, 0xFC, 0x23, 0xF3, 0xF2, 0x0A, 0xE7, + 0xF2, 0xF6, 0xF9, 0x0A, 0x00, 0xF7, 0xF7, 0xED, + 0x0C, 0x09, 0xDA, 0x05, 0xD6, 0x0A, 0x05, 0xFC, + 0x0B, 0x1A, 0x1C, 0x06, 0xE5, 0x19, 0x01, 0xED, + 0x10, 0x00, 0xDD, 0x2E, 0xF2, 0x1C, 0xF0, 0xF3, + 0x05, 0xD6, 0x07, 0x18, 0x12, 0xD7, 0xFA, 0x01, + 0x0F, 0xF3, 0x0F, 0xF0, 0xE0, 0x0B, 0xF6, 0x1A, + 0xD5, 0x18, 0xFA, 0xCA, 0xFE, 0xFD, 0xEA, 0x0B, + 0x1B, 0xFB, 0x13, 0x00, 0x2D, 0xEE, 0x24, 0xE3, + 0xF0, 0xC3, 0xE5, 0x13, 0x1E, 0xE4, 0x1B, 0x19, + 0xE8, 0xD6, 0x02, 0x0D, 0x03, 0xFA, 0xDF, 0xF7, + 0xE5, 0xEA, 0x0C, 0xE0, 0x07, 0xEF, 0xE7, 0xED, + 0x33, 0xCB, 0xF1, 0xF2, 0x00, 0x08, 0xF6, 0xDC, + 0xEB, 0x14, 0x06, 0xEE, 0x0A, 0xC2, 0xEA, 0xEF, + 0xE7, 0xE8, 0x1B, 0x1D, 0xFE, 0xED, 0x16, 0xF0, + 0x10, 0xED, 0xF0, 0x10, 0x32, 0xF8, 0xC7, 0x07, + 0x22, 0xF0, 0x1D, 0xC0, 0xDE, 0xFB, 0xE4, 0x21, + 0x01, 0x1C, 0x0B, 0x31, 0xF1, 0x1E, 0xFF, 0xF2, + 0xFB, 0xC9, 0x0B, 0xF8, 0xD5, 0x35, 0x0B, 0x07, + 0xF9, 0xE2, 0xF4, 0x07, 0xD5, 0x1A, 0x0E, 0x09, + 0x22, 0xF4, 0xF9, 0xF8, 0x17, 0x11, 0x22, 0x21, + 0x16, 0x17, 0x3A, 0x01, 0x0B, 0x03, 0xF5, 0x22, + 0xE6, 0xEF, 0xF3, 0xF9, 0x08, 0xEF, 0x1B, 0x05 }; static const q7_t ref_scale_possat[33] = { @@ -401,58 +442,62 @@ static const q7_t ref_scale_possat[33] = { }; static const q31_t ref_dot_prod_3[1] = { - 0x00000C51 + 0x00003F91 }; static const q31_t ref_dot_prod_4[1] = { - 0xFFFFD43C + 0x00002194 }; static const q31_t ref_dot_prod_4n1[1] = { - 0xFFFF9F53 + 0x0000451D + }; + +static const q31_t ref_dot_prod_long[1] = { + 0x00000CE0 }; static const q7_t ref_abs[256] = { - 0x16, 0x1D, 0x07, 0x06, 0x28, 0x14, 0x40, 0x06, - 0x1F, 0x0D, 0x01, 0x0F, 0x22, 0x2B, 0x3F, 0x24, - 0x17, 0x3A, 0x30, 0x53, 0x59, 0x0D, 0x2E, 0x15, - 0x1F, 0x13, 0x11, 0x0C, 0x7F, 0x13, 0x18, 0x20, - 0x05, 0x0B, 0x2E, 0x6F, 0x2C, 0x1C, 0x71, 0x14, - 0x14, 0x33, 0x29, 0x21, 0x12, 0x18, 0x13, 0x2C, - 0x39, 0x12, 0x1C, 0x2B, 0x2B, 0x0A, 0x43, 0x07, - 0x1E, 0x2D, 0x05, 0x28, 0x1D, 0x10, 0x18, 0x02, - 0x1E, 0x03, 0x2C, 0x12, 0x52, 0x05, 0x02, 0x07, - 0x1B, 0x07, 0x3B, 0x25, 0x0E, 0x0C, 0x33, 0x02, - 0x19, 0x4E, 0x0B, 0x40, 0x1D, 0x3C, 0x63, 0x09, - 0x02, 0x1A, 0x0D, 0x2E, 0x56, 0x01, 0x0C, 0x1C, - 0x26, 0x05, 0x4F, 0x07, 0x05, 0x33, 0x0C, 0x09, - 0x2B, 0x10, 0x03, 0x46, 0x32, 0x1B, 0x1C, 0x1A, - 0x0D, 0x05, 0x00, 0x22, 0x05, 0x30, 0x38, 0x26, - 0x00, 0x0D, 0x2D, 0x0A, 0x0E, 0x08, 0x20, 0x01, - 0x29, 0x1B, 0x09, 0x15, 0x0E, 0x1D, 0x2F, 0x21, - 0x08, 0x17, 0x17, 0x4A, 0x16, 0x3E, 0x53, 0x13, - 0x3D, 0x06, 0x18, 0x39, 0x24, 0x1A, 0x20, 0x28, - 0x01, 0x49, 0x41, 0x38, 0x6C, 0x17, 0x2C, 0x1B, - 0x06, 0x08, 0x0E, 0x21, 0x3C, 0x23, 0x04, 0x18, - 0x13, 0x45, 0x02, 0x13, 0x26, 0x36, 0x16, 0x22, - 0x38, 0x2A, 0x2F, 0x2F, 0x24, 0x1E, 0x1E, 0x39, - 0x0B, 0x3B, 0x01, 0x07, 0x17, 0x25, 0x1A, 0x21, - 0x00, 0x30, 0x17, 0x20, 0x01, 0x32, 0x0B, 0x20, - 0x1E, 0x50, 0x01, 0x10, 0x1C, 0x1A, 0x0F, 0x0C, - 0x21, 0x19, 0x02, 0x19, 0x12, 0x0C, 0x51, 0x03, - 0x36, 0x06, 0x2E, 0x12, 0x3A, 0x10, 0x24, 0x3D, - 0x44, 0x05, 0x17, 0x04, 0x3B, 0x19, 0x2E, 0x2D, - 0x0D, 0x0C, 0x20, 0x23, 0x24, 0x07, 0x09, 0x13, - 0x38, 0x10, 0x23, 0x17, 0x1D, 0x05, 0x09, 0x01, - 0x20, 0x00, 0x02, 0x14, 0x10, 0x15, 0x35, 0x3B + 0x52, 0x01, 0x47, 0x20, 0x5B, 0x03, 0x04, 0x44, + 0x0B, 0x35, 0x2A, 0x19, 0x1E, 0x28, 0x01, 0x11, + 0x3E, 0x2C, 0x05, 0x32, 0x52, 0x09, 0x42, 0x0B, + 0x24, 0x06, 0x22, 0x2A, 0x0C, 0x19, 0x0D, 0x29, + 0x10, 0x19, 0x0C, 0x38, 0x45, 0x1E, 0x05, 0x56, + 0x44, 0x60, 0x2D, 0x21, 0x1C, 0x10, 0x2E, 0x25, + 0x0C, 0x0F, 0x39, 0x19, 0x26, 0x45, 0x30, 0x08, + 0x46, 0x07, 0x11, 0x7E, 0x19, 0x1E, 0x1B, 0x0A, + 0x1F, 0x22, 0x12, 0x10, 0x13, 0x05, 0x41, 0x0F, + 0x3B, 0x0A, 0x07, 0x45, 0x1B, 0x1C, 0x14, 0x33, + 0x1B, 0x13, 0x0D, 0x14, 0x00, 0x11, 0x12, 0x26, + 0x19, 0x12, 0x4C, 0x0B, 0x55, 0x14, 0x0A, 0x09, + 0x15, 0x35, 0x38, 0x0C, 0x36, 0x32, 0x02, 0x27, + 0x1F, 0x00, 0x47, 0x5C, 0x1C, 0x39, 0x20, 0x1A, + 0x09, 0x53, 0x0E, 0x30, 0x24, 0x52, 0x0B, 0x02, + 0x1E, 0x1B, 0x1D, 0x20, 0x40, 0x16, 0x15, 0x35, + 0x56, 0x30, 0x0C, 0x6B, 0x05, 0x05, 0x2C, 0x17, + 0x36, 0x0B, 0x26, 0x00, 0x59, 0x23, 0x47, 0x3B, + 0x20, 0x7A, 0x36, 0x26, 0x3B, 0x38, 0x36, 0x31, + 0x30, 0x53, 0x05, 0x19, 0x07, 0x0C, 0x42, 0x13, + 0x37, 0x2D, 0x17, 0x40, 0x0D, 0x22, 0x31, 0x26, + 0x66, 0x6B, 0x1E, 0x1C, 0x00, 0x10, 0x14, 0x48, + 0x2B, 0x27, 0x0B, 0x23, 0x13, 0x7B, 0x2D, 0x21, + 0x33, 0x30, 0x36, 0x3A, 0x04, 0x25, 0x2B, 0x20, + 0x21, 0x25, 0x20, 0x1F, 0x64, 0x10, 0x71, 0x0E, + 0x45, 0x1F, 0x39, 0x7F, 0x45, 0x0A, 0x38, 0x42, + 0x02, 0x38, 0x16, 0x62, 0x1E, 0x3B, 0x03, 0x1C, + 0x0A, 0x6F, 0x15, 0x10, 0x55, 0x6A, 0x16, 0x0E, + 0x0D, 0x3C, 0x19, 0x0E, 0x56, 0x34, 0x1D, 0x13, + 0x44, 0x18, 0x0E, 0x11, 0x2E, 0x22, 0x44, 0x41, + 0x2C, 0x2E, 0x74, 0x02, 0x16, 0x06, 0x16, 0x45, + 0x35, 0x22, 0x1B, 0x0D, 0x0F, 0x22, 0x35, 0x09 }; static const q7_t ref_shift[33] = { - 0x11, 0x1E, 0x0C, 0x22, 0x12, 0xF7, 0xEF, 0xE2, - 0xFE, 0xDC, 0xF5, 0x11, 0xF7, 0x18, 0x0A, 0x55, - 0x0A, 0xF0, 0x0E, 0xE1, 0x17, 0xE7, 0x06, 0x0A, - 0xD9, 0x33, 0xF3, 0x4E, 0xDB, 0x25, 0x34, 0xFB, - 0xFD + 0xEC, 0xFB, 0xE9, 0x35, 0x1B, 0x25, 0xF3, 0x21, + 0xEB, 0x04, 0xC7, 0xAB, 0xEA, 0xEF, 0x28, 0xBF, + 0xF6, 0xCC, 0xDF, 0xDC, 0x05, 0x30, 0x1C, 0x1B, + 0x2C, 0xEF, 0xE7, 0xE4, 0xFE, 0x1E, 0xEC, 0x19, + 0x38 }; static const q7_t ref_shift_possat[33] = { @@ -472,38 +517,155 @@ static const q7_t ref_shift_negsat[33] = { }; static const uint8_t ref_and[47] = { - 0x80, 0x08, 0x42, 0x24, 0x44, 0x88, 0x10, 0x06, - 0xF8, 0x42, 0x46, 0x00, 0x28, 0x3B, 0x80, 0x00, - 0x98, 0x2F, 0x40, 0x08, 0x00, 0x00, 0xDE, 0x04, - 0x4F, 0x01, 0x04, 0xC1, 0x21, 0x04, 0x00, 0x5C, - 0x6A, 0x28, 0x24, 0xA6, 0x00, 0x06, 0x11, 0x00, - 0x00, 0x04, 0x00, 0x22, 0x41, 0x18, 0x15 + 0xA3, 0xC0, 0x11, 0xC8, 0x08, 0x0A, 0x00, 0x48, + 0x92, 0x00, 0xA1, 0x02, 0x00, 0x64, 0x00, 0x08, + 0x40, 0x00, 0x04, 0x10, 0x94, 0x88, 0x50, 0x42, + 0x26, 0x04, 0x08, 0x08, 0x3E, 0x01, 0x40, 0x04, + 0x04, 0x13, 0x40, 0x04, 0x20, 0x02, 0x38, 0x04, + 0x80, 0x00, 0x84, 0x00, 0x81, 0x40, 0x39 }; static const uint8_t ref_or[47] = { - 0xEC, 0x6F, 0xFF, 0xAF, 0x5F, 0xFD, 0x70, 0xA7, - 0xF9, 0x7F, 0xFF, 0xDF, 0xFB, 0x7B, 0xEF, 0x5F, - 0xFE, 0xAF, 0xF6, 0x6C, 0x2E, 0x4F, 0xDE, 0x4E, - 0x4F, 0x6D, 0xDF, 0xF9, 0x2B, 0x3F, 0x1E, 0x7C, - 0x7F, 0x7F, 0x7F, 0xAF, 0x4D, 0x7E, 0x5F, 0xAF, - 0xBD, 0x6F, 0x73, 0xF6, 0xFF, 0xDC, 0xB5 + 0xFF, 0xF7, 0xFB, 0xDA, 0xDF, 0xEF, 0x31, 0xFC, + 0xF2, 0xD0, 0xFB, 0xE6, 0xCD, 0xEE, 0xFE, 0xFE, + 0xC7, 0x35, 0x7D, 0xF9, 0xDF, 0xDE, 0x5F, 0xD6, + 0xFF, 0x7C, 0xCF, 0x3C, 0x3F, 0xFF, 0xFE, 0xFF, + 0xF5, 0x7F, 0xFA, 0xFE, 0xFC, 0xEF, 0x7B, 0xFE, + 0xAA, 0x8F, 0xE7, 0xFB, 0x97, 0xE5, 0xF9 }; static const uint8_t ref_not[47] = { - 0x77, 0xD7, 0x25, 0x59, 0xBB, 0x46, 0xAF, 0xF8, - 0x06, 0x9D, 0x91, 0xB5, 0xD7, 0x84, 0x3A, 0xF6, - 0x43, 0xD0, 0x1F, 0xF3, 0xD9, 0xF8, 0x21, 0xB3, - 0xB0, 0x9A, 0x7B, 0x16, 0xDE, 0xC3, 0xF3, 0x83, - 0x94, 0xC7, 0xCB, 0x58, 0xBF, 0xB9, 0xE4, 0xDA, - 0xD6, 0xBB, 0xED, 0x4D, 0x90, 0xA7, 0xCA + 0x04, 0x2B, 0x0E, 0x27, 0x75, 0x70, 0xFF, 0x07, + 0x2D, 0x2F, 0x1C, 0xB9, 0x3B, 0x9B, 0xA1, 0x47, + 0xBA, 0xEB, 0xE3, 0x8E, 0x62, 0x65, 0xA0, 0xBD, + 0x01, 0x83, 0x35, 0xD3, 0xC0, 0xE4, 0x05, 0x38, + 0x4A, 0xCC, 0x8D, 0xB9, 0x0F, 0x75, 0xC6, 0x33, + 0x5D, 0xFA, 0x5B, 0xBE, 0x78, 0x1F, 0x86 }; static const uint8_t ref_xor[47] = { - 0x6C, 0x67, 0xBD, 0x8B, 0x1B, 0x75, 0x60, 0xA1, - 0x01, 0x3D, 0xB9, 0xDF, 0xD3, 0x40, 0x6F, 0x5F, - 0x66, 0x80, 0xB6, 0x64, 0x2E, 0x4F, 0x00, 0x4A, - 0x00, 0x6C, 0xDB, 0x38, 0x0A, 0x3B, 0x1E, 0x20, - 0x15, 0x57, 0x5B, 0x09, 0x4D, 0x78, 0x4E, 0xAF, - 0xBD, 0x6B, 0x73, 0xD4, 0xBE, 0xC4, 0xA0 + 0x5C, 0x37, 0xEA, 0x12, 0xD7, 0xE5, 0x31, 0xB4, + 0x60, 0xD0, 0x5A, 0xE4, 0xCD, 0x8A, 0xFE, 0xF6, + 0x87, 0x35, 0x79, 0xE9, 0x4B, 0x56, 0x0F, 0x94, + 0xD9, 0x78, 0xC7, 0x34, 0x01, 0xFE, 0xBE, 0xFB, + 0xF1, 0x6C, 0xBA, 0xFA, 0xDC, 0xED, 0x43, 0xFA, + 0x2A, 0x8F, 0x63, 0xFB, 0x16, 0xA5, 0xC0 + }; + +static const q7_t ref_clip1[271] = { + 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, + 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, + 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, + 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, + 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, + 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, + 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, + 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, + 0xC0, 0xC0, 0xC0, 0xC0, 0xC1, 0xC1, 0xC2, 0xC3, + 0xC4, 0xC4, 0xC5, 0xC6, 0xC7, 0xC8, 0xC8, 0xC9, + 0xCA, 0xCB, 0xCB, 0xCC, 0xCD, 0xCE, 0xCE, 0xCF, + 0xD0, 0xD1, 0xD1, 0xD2, 0xD3, 0xD4, 0xD5, 0xD5, + 0xD6, 0xD7, 0xD8, 0xD8, 0xD9, 0xDA, 0xDB, 0xDB, + 0xDC, 0xDD, 0xDE, 0xDE, 0xDF, 0xE0, 0xE1, 0xE1, + 0xE2, 0xE3, 0xE4, 0xE5, 0xE5, 0xE6, 0xE7, 0xE8, + 0xE8, 0xE9, 0xEA, 0xEB, 0xEB, 0xEC, 0xED, 0xEE, + 0xEE, 0xEF, 0xF0, 0xF1, 0xF2, 0xF2, 0xF3, 0xF3, + 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, + 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, + 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, + 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, + 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, + 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, + 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, + 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, + 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, + 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, + 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, + 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, + 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, + 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, + 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, + 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, + 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3 + }; + +static const q7_t ref_clip2[288] = { + 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, + 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, + 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, + 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, + 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, + 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, + 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, + 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, + 0xC0, 0xC0, 0xC0, 0xC0, 0xC1, 0xC1, 0xC2, 0xC3, + 0xC4, 0xC4, 0xC5, 0xC6, 0xC7, 0xC8, 0xC8, 0xC9, + 0xCA, 0xCB, 0xCB, 0xCC, 0xCD, 0xCE, 0xCE, 0xCF, + 0xD0, 0xD1, 0xD1, 0xD2, 0xD3, 0xD4, 0xD5, 0xD5, + 0xD6, 0xD7, 0xD8, 0xD8, 0xD9, 0xDA, 0xDB, 0xDB, + 0xDC, 0xDD, 0xDE, 0xDE, 0xDF, 0xE0, 0xE1, 0xE1, + 0xE2, 0xE3, 0xE4, 0xE5, 0xE5, 0xE6, 0xE7, 0xE8, + 0xE8, 0xE9, 0xEA, 0xEB, 0xEB, 0xEC, 0xED, 0xEE, + 0xEE, 0xEF, 0xF0, 0xF1, 0xF2, 0xF2, 0xF3, 0xF4, + 0xF5, 0xF5, 0xF6, 0xF7, 0xF8, 0xF8, 0xF9, 0xFA, + 0xFB, 0xFB, 0xFC, 0xFD, 0xFE, 0xFE, 0xFF, 0x00, + 0x01, 0x02, 0x02, 0x03, 0x04, 0x05, 0x05, 0x06, + 0x07, 0x08, 0x08, 0x09, 0x0A, 0x0B, 0x0B, 0x0C, + 0x0D, 0x0E, 0x0E, 0x0F, 0x10, 0x11, 0x12, 0x12, + 0x13, 0x14, 0x15, 0x15, 0x16, 0x17, 0x18, 0x18, + 0x19, 0x1A, 0x1B, 0x1B, 0x1C, 0x1D, 0x1E, 0x1F, + 0x1F, 0x20, 0x21, 0x22, 0x22, 0x23, 0x24, 0x25, + 0x25, 0x26, 0x27, 0x28, 0x28, 0x29, 0x2A, 0x2B, + 0x2B, 0x2C, 0x2D, 0x2E, 0x2F, 0x2F, 0x30, 0x31, + 0x32, 0x32, 0x33, 0x34, 0x35, 0x35, 0x36, 0x37, + 0x38, 0x38, 0x39, 0x3A, 0x3B, 0x3C, 0x3C, 0x3D, + 0x3E, 0x3F, 0x3F, 0x40, 0x40, 0x40, 0x40, 0x40, + 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, + 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, + 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, + 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, + 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, + 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40 + }; + +static const q7_t ref_clip3[303] = { + 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, + 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, + 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, + 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, + 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, + 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, + 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, + 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, + 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, + 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, + 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, + 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, + 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, + 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, + 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, + 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, + 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, + 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, + 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, + 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, + 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, + 0x0D, 0x0E, 0x0E, 0x0F, 0x10, 0x11, 0x12, 0x12, + 0x13, 0x14, 0x15, 0x15, 0x16, 0x17, 0x18, 0x18, + 0x19, 0x1A, 0x1B, 0x1B, 0x1C, 0x1D, 0x1E, 0x1F, + 0x1F, 0x20, 0x21, 0x22, 0x22, 0x23, 0x24, 0x25, + 0x25, 0x26, 0x27, 0x28, 0x28, 0x29, 0x2A, 0x2B, + 0x2B, 0x2C, 0x2D, 0x2E, 0x2F, 0x2F, 0x30, 0x31, + 0x32, 0x32, 0x33, 0x34, 0x35, 0x35, 0x36, 0x37, + 0x38, 0x38, 0x39, 0x3A, 0x3B, 0x3C, 0x3C, 0x3D, + 0x3E, 0x3F, 0x3F, 0x40, 0x40, 0x40, 0x40, 0x40, + 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, + 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, + 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, + 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, + 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, + 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, + 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, + 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40 };