1 /* Automatically generated header! Do not edit! */
    2 
    3 #ifndef _PPCINLINE_ICONV_H
    4 #define _PPCINLINE_ICONV_H
    5 
    6 #ifndef __PPCINLINE_MACROS_H
    7 #include <ppcinline/macros.h>
    8 #endif /* !__PPCINLINE_MACROS_H */
    9 
   10 #ifndef ICONV_BASE_NAME
   11 #define ICONV_BASE_NAME IConvBase
   12 #endif /* !ICONV_BASE_NAME */
   13 
   14 #define libiconvctl(__p0, __p1, __p2) \
   15 	({ \
   16 		iconv_t  __t__p0 = __p0;\
   17 		int  __t__p1 = __p1;\
   18 		void * __t__p2 = __p2;\
   19 		long __base = (long)(ICONV_BASE_NAME);\
   20 		__asm volatile("mr 12,%0": :"r"(__base):"r12");\
   21 		(((int (*)(iconv_t , int , void *))*(void**)(__base - 46))(__t__p0, __t__p1, __t__p2));\
   22 	})
   23 
   24 #define libiconvlist(__p0, __p1) \
   25 	({ \
   26 		int (* __t__p0) (unsigned int namescount, const char * const * names, void* data) = __p0;\
   27 		void * __t__p1 = __p1;\
   28 		long __base = (long)(ICONV_BASE_NAME);\
   29 		__asm volatile("mr 12,%0": :"r"(__base):"r12");\
   30 		(((void (*)(int (*) (unsigned int namescount, const char * const * names, void* data), void *))*(void**)(__base - 52))(__t__p0, __t__p1));\
   31 	})
   32 
   33 #define libiconv_close(__p0) \
   34 	({ \
   35 		iconv_t  __t__p0 = __p0;\
   36 		long __base = (long)(ICONV_BASE_NAME);\
   37 		__asm volatile("mr 12,%0": :"r"(__base):"r12");\
   38 		(((int (*)(iconv_t ))*(void**)(__base - 40))(__t__p0));\
   39 	})
   40 
   41 #define libiconv_set_relocation_prefix(__p0, __p1) \
   42 	({ \
   43 		const char * __t__p0 = __p0;\
   44 		const char * __t__p1 = __p1;\
   45 		long __base = (long)(ICONV_BASE_NAME);\
   46 		__asm volatile("mr 12,%0": :"r"(__base):"r12");\
   47 		(((void (*)(const char *, const char *))*(void**)(__base - 58))(__t__p0, __t__p1));\
   48 	})
   49 
   50 #define libiconv(__p0, __p1, __p2, __p3, __p4) \
   51 	({ \
   52 		iconv_t  __t__p0 = __p0;\
   53 		const char ** __t__p1 = __p1;\
   54 		size_t * __t__p2 = __p2;\
   55 		char ** __t__p3 = __p3;\
   56 		size_t * __t__p4 = __p4;\
   57 		long __base = (long)(ICONV_BASE_NAME);\
   58 		__asm volatile("mr 12,%0": :"r"(__base):"r12");\
   59 		(((size_t (*)(iconv_t , const char **, size_t *, char **, size_t *))*(void**)(__base - 34))(__t__p0, __t__p1, __t__p2, __t__p3, __t__p4));\
   60 	})
   61 
   62 #define iconv_canonicalize(__p0) \
   63 	({ \
   64 		const char * __t__p0 = __p0;\
   65 		long __base = (long)(ICONV_BASE_NAME);\
   66 		__asm volatile("mr 12,%0": :"r"(__base):"r12");\
   67 		(((const char *(*)(const char *))*(void**)(__base - 64))(__t__p0));\
   68 	})
   69 
   70 #define libiconv_open(__p0, __p1) \
   71 	({ \
   72 		const char * __t__p0 = __p0;\
   73 		const char * __t__p1 = __p1;\
   74 		long __base = (long)(ICONV_BASE_NAME);\
   75 		__asm volatile("mr 12,%0": :"r"(__base):"r12");\
   76 		(((iconv_t (*)(const char *, const char *))*(void**)(__base - 28))(__t__p0, __t__p1));\
   77 	})
   78 
   79 #endif /* !_PPCINLINE_ICONV_H */