xref: /openbmc/qemu/include/exec/helper-proto.h (revision 6016b7b4)
1 /* Helper file for declaring TCG helper functions.
2    This one expands prototypes for the helper functions.  */
3 
4 #ifndef HELPER_PROTO_H
5 #define HELPER_PROTO_H
6 
7 #include "exec/helper-head.h"
8 
9 #define DEF_HELPER_FLAGS_0(name, flags, ret) \
10 dh_ctype(ret) HELPER(name) (void);
11 
12 #define DEF_HELPER_FLAGS_1(name, flags, ret, t1) \
13 dh_ctype(ret) HELPER(name) (dh_ctype(t1));
14 
15 #define DEF_HELPER_FLAGS_2(name, flags, ret, t1, t2) \
16 dh_ctype(ret) HELPER(name) (dh_ctype(t1), dh_ctype(t2));
17 
18 #define DEF_HELPER_FLAGS_3(name, flags, ret, t1, t2, t3) \
19 dh_ctype(ret) HELPER(name) (dh_ctype(t1), dh_ctype(t2), dh_ctype(t3));
20 
21 #define DEF_HELPER_FLAGS_4(name, flags, ret, t1, t2, t3, t4) \
22 dh_ctype(ret) HELPER(name) (dh_ctype(t1), dh_ctype(t2), dh_ctype(t3), \
23                                    dh_ctype(t4));
24 
25 #define DEF_HELPER_FLAGS_5(name, flags, ret, t1, t2, t3, t4, t5) \
26 dh_ctype(ret) HELPER(name) (dh_ctype(t1), dh_ctype(t2), dh_ctype(t3), \
27                             dh_ctype(t4), dh_ctype(t5));
28 
29 #define DEF_HELPER_FLAGS_6(name, flags, ret, t1, t2, t3, t4, t5, t6) \
30 dh_ctype(ret) HELPER(name) (dh_ctype(t1), dh_ctype(t2), dh_ctype(t3), \
31                             dh_ctype(t4), dh_ctype(t5), dh_ctype(t6));
32 
33 #define DEF_HELPER_FLAGS_7(name, flags, ret, t1, t2, t3, t4, t5, t6, t7) \
34 dh_ctype(ret) HELPER(name) (dh_ctype(t1), dh_ctype(t2), dh_ctype(t3), \
35                             dh_ctype(t4), dh_ctype(t5), dh_ctype(t6), \
36                             dh_ctype(t7));
37 
38 #define IN_HELPER_PROTO
39 
40 #include "helper.h"
41 #include "trace/generated-helpers.h"
42 #include "accel/tcg/tcg-runtime.h"
43 #include "accel/tcg/plugin-helpers.h"
44 
45 #undef IN_HELPER_PROTO
46 
47 #undef DEF_HELPER_FLAGS_0
48 #undef DEF_HELPER_FLAGS_1
49 #undef DEF_HELPER_FLAGS_2
50 #undef DEF_HELPER_FLAGS_3
51 #undef DEF_HELPER_FLAGS_4
52 #undef DEF_HELPER_FLAGS_5
53 #undef DEF_HELPER_FLAGS_6
54 #undef DEF_HELPER_FLAGS_7
55 
56 #endif /* HELPER_PROTO_H */
57