@@ -199,54 +199,78 @@ int main()
199199 // *INDENT-OFF*
200200 TEST_CASE local_test_cases[] = {
201201 /* Predefined polynomials. */
202- /* 00 */ { {POLY_7BIT_SD , 7 , 0x00000000 , 0x00000000 , false , false }, 0x75 },
203- /* 01 */ { {POLY_7BIT_SD , 7 , 0x0000007F , 0x00000000 , false , false }, 0x50 },
204- /* 02 */ { {POLY_7BIT_SD , 7 , 0x0000002B , 0x00000000 , false , false }, 0x3A },
205- /* 03 */ { {POLY_7BIT_SD , 7 , 0x00000000 , 0x0000007F , false , false }, 0x0A },
206- /* 04 */ { {POLY_7BIT_SD , 7 , 0x00000000 , 0x0000002B , false , false }, 0x5E },
207- /* 05 */ { {POLY_7BIT_SD , 7 , 0x00000000 , 0x00000000 , true , false }, 0x52 },
208- /* 06 */ { {POLY_7BIT_SD , 7 , 0x00000000 , 0x00000000 , false , true }, 0x57 },
209-
210- /* 07 */ { {POLY_8BIT_CCITT , 8 , 0x00000000 , 0x00000000 , false , false }, 0xF4 },
211- /* 08 */ { {POLY_8BIT_CCITT , 8 , 0x000000FF , 0x00000000 , false , false }, 0xFB },
212- /* 09 */ { {POLY_8BIT_CCITT , 8 , 0x000000AB , 0x00000000 , false , false }, 0x87 },
213- /* 10 */ { {POLY_8BIT_CCITT , 8 , 0x00000000 , 0x000000FF , false , false }, 0x0B },
214- /* 11 */ { {POLY_8BIT_CCITT , 8 , 0x00000000 , 0x000000AB , false , false }, 0x5F },
215- /* 12 */ { {POLY_8BIT_CCITT , 8 , 0x00000000 , 0x00000000 , true , false }, 0x04 },
216- /* 13 */ { {POLY_8BIT_CCITT , 8 , 0x00000000 , 0x00000000 , false , true }, 0x2F },
217-
218- /* 14 */ { {POLY_16BIT_CCITT , 16 , 0x00000000 , 0x00000000 , false , false }, 0x31C3 },
219- /* 15 */ { {POLY_16BIT_CCITT , 16 , 0x0000FFFF , 0x00000000 , false , false }, 0x29B1 },
220- /* 16 */ { {POLY_16BIT_CCITT , 16 , 0x0000ABAB , 0x00000000 , false , false }, 0x7D70 },
221- /* 17 */ { {POLY_16BIT_CCITT , 16 , 0x00000000 , 0x0000FFFF , false , false }, 0xCE3C },
222- /* 18 */ { {POLY_16BIT_CCITT , 16 , 0x00000000 , 0x0000ABAB , false , false }, 0x9A68 },
223- /* 19 */ { {POLY_16BIT_CCITT , 16 , 0x00000000 , 0x00000000 , true , false }, 0x9184 },
224- /* 20 */ { {POLY_16BIT_CCITT , 16 , 0x00000000 , 0x00000000 , false , true }, 0xC38C },
225-
226- /* 21 */ { {POLY_16BIT_IBM , 16 , 0x00000000 , 0x00000000 , false , false }, 0xFEE8 },
227- /* 22 */ { {POLY_16BIT_IBM , 16 , 0x0000FFFF , 0x00000000 , false , false }, 0xAEE7 },
228- /* 23 */ { {POLY_16BIT_IBM , 16 , 0x0000ABAB , 0x00000000 , false , false }, 0x0887 },
229- /* 24 */ { {POLY_16BIT_IBM , 16 , 0x00000000 , 0x0000FFFF , false , false }, 0x0117 },
230- /* 25 */ { {POLY_16BIT_IBM , 16 , 0x00000000 , 0x0000ABAB , false , false }, 0x5543 },
231- /* 26 */ { {POLY_16BIT_IBM , 16 , 0x00000000 , 0x00000000 , true , false }, 0xBCDD },
232- /* 27 */ { {POLY_16BIT_IBM , 16 , 0x00000000 , 0x00000000 , false , true }, 0x177F },
233-
234- /* 28 */ { {POLY_32BIT_ANSI , 32 , 0x00000000 , 0x00000000 , false , false }, 0x89A1897F },
235- /* 29 */ { {POLY_32BIT_ANSI , 32 , 0xFFFFFFFF , 0x00000000 , false , false }, 0x0376E6E7 },
236- /* 30 */ { {POLY_32BIT_ANSI , 32 , 0xABABABAB , 0x00000000 , false , false }, 0x871A2FAA },
237- /* 31 */ { {POLY_32BIT_ANSI , 32 , 0x00000000 , 0xFFFFFFFF , false , false }, 0x765E7680 },
238- /* 32 */ { {POLY_32BIT_ANSI , 32 , 0x00000000 , 0xABABABAB , false , false }, 0x220A22D4 },
239- /* 33 */ { {POLY_32BIT_ANSI , 32 , 0x00000000 , 0x00000000 , true , false }, 0x11B4BFB4 },
240- /* 34 */ { {POLY_32BIT_ANSI , 32 , 0x00000000 , 0x00000000 , false , true }, 0xFE918591 },
241-
242- /* Not-predefined polynomials. */
243- /* 35 */ { {POLY_8BIT_MAXIM , 8 , 0x00000000 , 0x00000000 , false , false }, 0xA2 },
244- /* 36 */ { {POLY_8BIT_MAXIM , 8 , 0x000000FF , 0x00000000 , false , false }, 0xF7 },
245- /* 37 */ { {POLY_8BIT_MAXIM , 8 , 0x000000AB , 0x00000000 , false , false }, 0x71 },
246- /* 38 */ { {POLY_8BIT_MAXIM , 8 , 0x00000000 , 0x000000FF , false , false }, 0x5D },
247- /* 39 */ { {POLY_8BIT_MAXIM , 8 , 0x00000000 , 0x000000AB , false , false }, 0x09 },
248- /* 40 */ { {POLY_8BIT_MAXIM , 8 , 0x00000000 , 0x00000000 , true , false }, 0x85 },
249- /* 41 */ { {POLY_8BIT_MAXIM , 8 , 0x00000000 , 0x00000000 , false , true }, 0x45 },
202+ { {POLY_7BIT_SD , 7 , 0x00000000 , 0x00000000 , false , false }, 0x75 },
203+ { {POLY_7BIT_SD , 7 , 0x0000007F , 0x00000000 , false , false }, 0x50 },
204+ { {POLY_7BIT_SD , 7 , 0x0000002B , 0x00000000 , false , false }, 0x3A },
205+ { {POLY_7BIT_SD , 7 , 0x00000000 , 0x0000007F , false , false }, 0x0A },
206+ { {POLY_7BIT_SD , 7 , 0x00000000 , 0x0000002B , false , false }, 0x5E },
207+ { {POLY_7BIT_SD , 7 , 0x00000000 , 0x00000000 , true , false }, 0x52 },
208+ { {POLY_7BIT_SD , 7 , 0x00000000 , 0x00000000 , false , true }, 0x57 },
209+ { {POLY_7BIT_SD , 7 , 0x0000002B , 0x00000000 , true , false }, 0x1D },
210+ { {POLY_7BIT_SD , 7 , 0x0000002B , 0x00000000 , false , true }, 0x4E },
211+ { {POLY_7BIT_SD , 7 , 0x0000002B , 0x00000000 , true , true }, 0x5C },
212+ { {POLY_7BIT_SD , 7 , 0x00000000 , 0x0000002B , false , true }, 0x7C },
213+
214+ { {POLY_8BIT_CCITT , 8 , 0x00000000 , 0x00000000 , false , false }, 0xF4 },
215+ { {POLY_8BIT_CCITT , 8 , 0x000000FF , 0x00000000 , false , false }, 0xFB },
216+ { {POLY_8BIT_CCITT , 8 , 0x000000AB , 0x00000000 , false , false }, 0x87 },
217+ { {POLY_8BIT_CCITT , 8 , 0x00000000 , 0x000000FF , false , false }, 0x0B },
218+ { {POLY_8BIT_CCITT , 8 , 0x00000000 , 0x000000AB , false , false }, 0x5F },
219+ { {POLY_8BIT_CCITT , 8 , 0x00000000 , 0x00000000 , true , false }, 0x04 },
220+ { {POLY_8BIT_CCITT , 8 , 0x00000000 , 0x00000000 , false , true }, 0x2F },
221+ { {POLY_8BIT_CCITT , 8 , 0x000000AB , 0x00000000 , true , false }, 0x77 },
222+ { {POLY_8BIT_CCITT , 8 , 0x000000AB , 0x00000000 , false , true }, 0xE1 },
223+ { {POLY_8BIT_CCITT , 8 , 0x000000AB , 0x00000000 , true , true }, 0xEE },
224+ { {POLY_8BIT_CCITT , 8 , 0x00000000 , 0x000000AB , false , true }, 0x84 },
225+
226+ { {POLY_16BIT_CCITT , 16 , 0x00000000 , 0x00000000 , false , false }, 0x31C3 },
227+ { {POLY_16BIT_CCITT , 16 , 0x0000FFFF , 0x00000000 , false , false }, 0x29B1 },
228+ { {POLY_16BIT_CCITT , 16 , 0x0000ABAB , 0x00000000 , false , false }, 0x7D70 },
229+ { {POLY_16BIT_CCITT , 16 , 0x00000000 , 0x0000FFFF , false , false }, 0xCE3C },
230+ { {POLY_16BIT_CCITT , 16 , 0x00000000 , 0x0000ABAB , false , false }, 0x9A68 },
231+ { {POLY_16BIT_CCITT , 16 , 0x00000000 , 0x00000000 , true , false }, 0x9184 },
232+ { {POLY_16BIT_CCITT , 16 , 0x00000000 , 0x00000000 , false , true }, 0xC38C },
233+ { {POLY_16BIT_CCITT , 16 , 0x0000ABAB , 0x00000000 , true , false }, 0xDD37 },
234+ { {POLY_16BIT_CCITT , 16 , 0x0000ABAB , 0x00000000 , false , true }, 0x0EBE },
235+ { {POLY_16BIT_CCITT , 16 , 0x0000ABAB , 0x00000000 , true , true }, 0xECBB },
236+ { {POLY_16BIT_CCITT , 16 , 0x00000000 , 0x0000ABAB , false , true }, 0x6827 },
237+
238+ { {POLY_16BIT_IBM , 16 , 0x00000000 , 0x00000000 , false , false }, 0xFEE8 },
239+ { {POLY_16BIT_IBM , 16 , 0x0000FFFF , 0x00000000 , false , false }, 0xAEE7 },
240+ { {POLY_16BIT_IBM , 16 , 0x0000ABAB , 0x00000000 , false , false }, 0x0887 },
241+ { {POLY_16BIT_IBM , 16 , 0x00000000 , 0x0000FFFF , false , false }, 0x0117 },
242+ { {POLY_16BIT_IBM , 16 , 0x00000000 , 0x0000ABAB , false , false }, 0x5543 },
243+ { {POLY_16BIT_IBM , 16 , 0x00000000 , 0x00000000 , true , false }, 0xBCDD },
244+ { {POLY_16BIT_IBM , 16 , 0x00000000 , 0x00000000 , false , true }, 0x177F },
245+ { {POLY_16BIT_IBM , 16 , 0x0000ABAB , 0x00000000 , true , false }, 0x4AB2 },
246+ { {POLY_16BIT_IBM , 16 , 0x0000ABAB , 0x00000000 , false , true }, 0xE110 },
247+ { {POLY_16BIT_IBM , 16 , 0x0000ABAB , 0x00000000 , true , true }, 0x4D52 },
248+ { {POLY_16BIT_IBM , 16 , 0x00000000 , 0x0000ABAB , false , true }, 0xBCD4 },
249+
250+ { {POLY_32BIT_ANSI , 32 , 0x00000000 , 0x00000000 , false , false }, 0x89A1897F },
251+ { {POLY_32BIT_ANSI , 32 , 0xFFFFFFFF , 0x00000000 , false , false }, 0x0376E6E7 },
252+ { {POLY_32BIT_ANSI , 32 , 0xABABABAB , 0x00000000 , false , false }, 0x871A2FAA },
253+ { {POLY_32BIT_ANSI , 32 , 0x00000000 , 0xFFFFFFFF , false , false }, 0x765E7680 },
254+ { {POLY_32BIT_ANSI , 32 , 0x00000000 , 0xABABABAB , false , false }, 0x220A22D4 },
255+ { {POLY_32BIT_ANSI , 32 , 0x00000000 , 0x00000000 , true , false }, 0x11B4BFB4 },
256+ { {POLY_32BIT_ANSI , 32 , 0x00000000 , 0x00000000 , false , true }, 0xFE918591 },
257+ { {POLY_32BIT_ANSI , 32 , 0xABABABAB , 0x00000000 , true , false }, 0x1F0F1961 },
258+ { {POLY_32BIT_ANSI , 32 , 0xABABABAB , 0x00000000 , false , true }, 0x55F458E1 },
259+ { {POLY_32BIT_ANSI , 32 , 0xABABABAB , 0x00000000 , true , true }, 0x8698F0F8 },
260+ { {POLY_32BIT_ANSI , 32 , 0x00000000 , 0xABABABAB , false , true }, 0x553A2E3A },
261+
262+ /* Not-predefined polynomials. */
263+ { {POLY_8BIT_MAXIM , 8 , 0x00000000 , 0x00000000 , false , false }, 0xA2 },
264+ { {POLY_8BIT_MAXIM , 8 , 0x000000FF , 0x00000000 , false , false }, 0xF7 },
265+ { {POLY_8BIT_MAXIM , 8 , 0x000000AB , 0x00000000 , false , false }, 0x71 },
266+ { {POLY_8BIT_MAXIM , 8 , 0x00000000 , 0x000000FF , false , false }, 0x5D },
267+ { {POLY_8BIT_MAXIM , 8 , 0x00000000 , 0x000000AB , false , false }, 0x09 },
268+ { {POLY_8BIT_MAXIM , 8 , 0x00000000 , 0x00000000 , true , false }, 0x85 },
269+ { {POLY_8BIT_MAXIM , 8 , 0x00000000 , 0x00000000 , false , true }, 0x45 },
270+ { {POLY_8BIT_MAXIM , 8 , 0x000000AB , 0x00000000 , true , false }, 0x56 },
271+ { {POLY_8BIT_MAXIM , 8 , 0x000000AB , 0x00000000 , false , true }, 0x8E },
272+ { {POLY_8BIT_MAXIM , 8 , 0x000000AB , 0x00000000 , true , true }, 0x6A },
273+ { {POLY_8BIT_MAXIM , 8 , 0x00000000 , 0x000000AB , false , true }, 0xEE },
250274 };
251275 // *INDENT-ON*
252276
0 commit comments