1 /* SPDX-License-Identifier: GPL-2.0+ */ 2 #ifndef TEST_MODULES_H 3 #define TEST_MODULES_H 4 5 #define __REPEAT_10000_3(f, x) \ 6 f(x ## 0); \ 7 f(x ## 1); \ 8 f(x ## 2); \ 9 f(x ## 3); \ 10 f(x ## 4); \ 11 f(x ## 5); \ 12 f(x ## 6); \ 13 f(x ## 7); \ 14 f(x ## 8); \ 15 f(x ## 9) 16 #define __REPEAT_10000_2(f, x) \ 17 __REPEAT_10000_3(f, x ## 0); \ 18 __REPEAT_10000_3(f, x ## 1); \ 19 __REPEAT_10000_3(f, x ## 2); \ 20 __REPEAT_10000_3(f, x ## 3); \ 21 __REPEAT_10000_3(f, x ## 4); \ 22 __REPEAT_10000_3(f, x ## 5); \ 23 __REPEAT_10000_3(f, x ## 6); \ 24 __REPEAT_10000_3(f, x ## 7); \ 25 __REPEAT_10000_3(f, x ## 8); \ 26 __REPEAT_10000_3(f, x ## 9) 27 #define __REPEAT_10000_1(f, x) \ 28 __REPEAT_10000_2(f, x ## 0); \ 29 __REPEAT_10000_2(f, x ## 1); \ 30 __REPEAT_10000_2(f, x ## 2); \ 31 __REPEAT_10000_2(f, x ## 3); \ 32 __REPEAT_10000_2(f, x ## 4); \ 33 __REPEAT_10000_2(f, x ## 5); \ 34 __REPEAT_10000_2(f, x ## 6); \ 35 __REPEAT_10000_2(f, x ## 7); \ 36 __REPEAT_10000_2(f, x ## 8); \ 37 __REPEAT_10000_2(f, x ## 9) 38 #define REPEAT_10000(f) \ 39 __REPEAT_10000_1(f, 0); \ 40 __REPEAT_10000_1(f, 1); \ 41 __REPEAT_10000_1(f, 2); \ 42 __REPEAT_10000_1(f, 3); \ 43 __REPEAT_10000_1(f, 4); \ 44 __REPEAT_10000_1(f, 5); \ 45 __REPEAT_10000_1(f, 6); \ 46 __REPEAT_10000_1(f, 7); \ 47 __REPEAT_10000_1(f, 8); \ 48 __REPEAT_10000_1(f, 9) 49 50 #define DECLARE_RETURN(i) int test_modules_return_ ## i(void) 51 REPEAT_10000(DECLARE_RETURN); 52 53 #endif 54