xref: /qemu/include/exec/helper-proto.h (revision 175de524)
12ef6175aSRichard Henderson /* Helper file for declaring TCG helper functions.
22ef6175aSRichard Henderson    This one expands prototypes for the helper functions.  */
32ef6175aSRichard Henderson 
42ef6175aSRichard Henderson #ifndef HELPER_PROTO_H
5*175de524SMarkus Armbruster #define HELPER_PROTO_H
62ef6175aSRichard Henderson 
7a9c94277SMarkus Armbruster #include "exec/helper-head.h"
82ef6175aSRichard Henderson 
92ef6175aSRichard Henderson #define DEF_HELPER_FLAGS_0(name, flags, ret) \
102ef6175aSRichard Henderson dh_ctype(ret) HELPER(name) (void);
112ef6175aSRichard Henderson 
122ef6175aSRichard Henderson #define DEF_HELPER_FLAGS_1(name, flags, ret, t1) \
132ef6175aSRichard Henderson dh_ctype(ret) HELPER(name) (dh_ctype(t1));
142ef6175aSRichard Henderson 
152ef6175aSRichard Henderson #define DEF_HELPER_FLAGS_2(name, flags, ret, t1, t2) \
162ef6175aSRichard Henderson dh_ctype(ret) HELPER(name) (dh_ctype(t1), dh_ctype(t2));
172ef6175aSRichard Henderson 
182ef6175aSRichard Henderson #define DEF_HELPER_FLAGS_3(name, flags, ret, t1, t2, t3) \
192ef6175aSRichard Henderson dh_ctype(ret) HELPER(name) (dh_ctype(t1), dh_ctype(t2), dh_ctype(t3));
202ef6175aSRichard Henderson 
212ef6175aSRichard Henderson #define DEF_HELPER_FLAGS_4(name, flags, ret, t1, t2, t3, t4) \
222ef6175aSRichard Henderson dh_ctype(ret) HELPER(name) (dh_ctype(t1), dh_ctype(t2), dh_ctype(t3), \
232ef6175aSRichard Henderson                                    dh_ctype(t4));
242ef6175aSRichard Henderson 
252ef6175aSRichard Henderson #define DEF_HELPER_FLAGS_5(name, flags, ret, t1, t2, t3, t4, t5) \
262ef6175aSRichard Henderson dh_ctype(ret) HELPER(name) (dh_ctype(t1), dh_ctype(t2), dh_ctype(t3), \
272ef6175aSRichard Henderson                             dh_ctype(t4), dh_ctype(t5));
282ef6175aSRichard Henderson 
292ef6175aSRichard Henderson #include "helper.h"
3076b53aa3SLluís Vilanova #include "trace/generated-helpers.h"
31944eea96SRichard Henderson #include "tcg-runtime.h"
322ef6175aSRichard Henderson 
332ef6175aSRichard Henderson #undef DEF_HELPER_FLAGS_0
342ef6175aSRichard Henderson #undef DEF_HELPER_FLAGS_1
352ef6175aSRichard Henderson #undef DEF_HELPER_FLAGS_2
362ef6175aSRichard Henderson #undef DEF_HELPER_FLAGS_3
372ef6175aSRichard Henderson #undef DEF_HELPER_FLAGS_4
382ef6175aSRichard Henderson #undef DEF_HELPER_FLAGS_5
392ef6175aSRichard Henderson 
402ef6175aSRichard Henderson #endif /* HELPER_PROTO_H */
41