cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

test_modules.h (1351B)


      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)
     51REPEAT_10000(DECLARE_RETURN);
     52
     53#endif