};
#endif
-#ifdef PSI_PREDEF_TYPES
-static struct psi_predef_type {
- token_t type_tag;
- const char *type_name;
- const char *alias;
-} psi_predef_types[] = {
-@PSI_TYPES@
- {0}
-};
-#endif
-
-#ifdef PSI_PREDEF_COMPOSITES
-static struct psi_predef_composite {
- token_t type_tag;
- const char *type_name;
- const char *var_name;
- size_t offset;
- size_t size;
- size_t pointer_level;
- size_t array_size;
-} psi_predef_composites[] = {
-@PSI_COMPOSITES@
- {0}
-};
-#endif
-
#ifdef PSI_PREDEF_CONSTS
static struct psi_predef_const {
token_t type_tag;
};
#endif
-#ifdef PSI_PREDEF_DECLS
-static struct psi_predef_decl {
- enum {
- DECL_KIND_STD,
- DECL_KIND_VARARG,
- DECL_KIND_FUNCTOR
- } kind;
- token_t type_tag;
- const char *type_name;
- const char *var_name;
- size_t pointer_level;
- size_t array_size;
-} psi_predef_decls[] = {
-@PSI_DECLS@
- {0}
-};
-#endif
-
#ifdef PSI_FUNC_REDIRS
-@PSI_MACROS@
-
typedef void (*psi_func_ptr)();
static struct psi_func_redir {
const char *name;
psi_func_ptr func;
} psi_func_redirs[] = {
+ /* inline byte swapping */
+#ifdef __APPLE__
+ {"_OSSwapInt16", (psi_func_ptr) psi_swap16},
+ {"_OSSwapInt32", (psi_func_ptr) psi_swap32},
+ {"_OSSwapInt64", (psi_func_ptr) psi_swap64},
+#elif defined(__FreeBSD__)
+ {"bswap16", (psi_func_ptr) psi_swap16},
+ {"bswap32", (psi_func_ptr) psi_swap32},
+ {"bswap64", (psi_func_ptr) psi_swap64},
+#elif defined(__OpenBSD__)
+ {"swap16", (psi_func_ptr) psi_swap16},
+ {"swap32", (psi_func_ptr) psi_swap32},
+ {"swap64", psi_swap64},
+#elif defined(__NetBSD__)
+ {"bswap16", (psi_func_ptr) psi_swap16},
+ {"bswap32", (psi_func_ptr) psi_swap32},
+ {"bswap64", (psi_func_ptr) psi_swap64},
+#else
+ {"bswap_16", (psi_func_ptr) psi_swap16},
+ {"bswap_32", (psi_func_ptr) psi_swap32},
+ {"bswap_64", (psi_func_ptr) psi_swap64},
+#endif
/* needed from libc_nonshared.a */
{"fstat", (psi_func_ptr) fstat},
{"fstatat", (psi_func_ptr) fstatat},
{"lstat", (psi_func_ptr) lstat},
{"mknod", (psi_func_ptr) mknod},
+#ifdef HAVE_MKNODAT
{"mknodat", (psi_func_ptr) mknodat},
+#endif
{"stat", (psi_func_ptr) stat},
-@PSI_REDIRS@
{0}
};
#endif