add abi_*.cc
authornsz <nsz@port70.net>
Mon, 18 Apr 2016 21:18:47 +0000 (21:18 +0000)
committernsz <nsz@port70.net>
Mon, 18 Apr 2016 21:18:47 +0000 (21:18 +0000)
13 files changed:
abi_func.cc [new file with mode: 0644]
abi_type.aarch64.cc [new file with mode: 0644]
abi_type.arm.cc [new file with mode: 0644]
abi_type.i386.cc [new file with mode: 0644]
abi_type.microblaze.cc [new file with mode: 0644]
abi_type.mips.cc [new file with mode: 0644]
abi_type.mips64.cc [new file with mode: 0644]
abi_type.or1k.cc [new file with mode: 0644]
abi_type.powerpc.cc [new file with mode: 0644]
abi_type.powerpc64.cc [new file with mode: 0644]
abi_type.sh.cc [new file with mode: 0644]
abi_type.x32.cc [new file with mode: 0644]
abi_type.x86_64.cc [new file with mode: 0644]

diff --git a/abi_func.cc b/abi_func.cc
new file mode 100644 (file)
index 0000000..ed88811
--- /dev/null
@@ -0,0 +1,1597 @@
+
+#define _GNU_SOURCE 1
+#define _FILE_OFFSET_BITS 64
+
+#include <aio.h>
+#include <alloca.h>
+#include <arpa/inet.h>
+#include <arpa/nameser.h>
+#include <assert.h>
+#include <complex.h>
+#include <crypt.h>
+#include <ctype.h>
+#include <dirent.h>
+#include <dlfcn.h>
+#include <err.h>
+#include <errno.h>
+#include <fcntl.h>
+#include <fenv.h>
+#include <float.h>
+#include <fmtmsg.h>
+#include <fnmatch.h>
+#include <ftw.h>
+#include <getopt.h>
+#include <glob.h>
+#include <grp.h>
+#include <iconv.h>
+#include <ifaddrs.h>
+#include <inttypes.h>
+#include <langinfo.h>
+#include <libgen.h>
+#include <libintl.h>
+#include <link.h>
+#include <locale.h>
+#include <malloc.h>
+#include <math.h>
+#include <mntent.h>
+#include <monetary.h>
+#include <mqueue.h>
+#include <net/if.h>
+#include <netdb.h>
+#include <netinet/ether.h>
+#include <netinet/in.h>
+#include <nl_types.h>
+#include <poll.h>
+#include <pthread.h>
+#include <pty.h>
+#include <pwd.h>
+#include <regex.h>
+#include <resolv.h>
+#include <sched.h>
+#include <search.h>
+#include <semaphore.h>
+#include <setjmp.h>
+#include <shadow.h>
+#include <signal.h>
+#include <spawn.h>
+#include <stdio.h>
+#include <stdio_ext.h>
+#include <stdlib.h>
+#include <string.h>
+#include <strings.h>
+#include <stropts.h>
+#include <sys/acct.h>
+#include <sys/auxv.h>
+#include <sys/epoll.h>
+#include <sys/eventfd.h>
+#include <sys/fanotify.h>
+#include <sys/file.h>
+#include <sys/fsuid.h>
+#include <sys/inotify.h>
+#include <sys/ioctl.h>
+#include <sys/ipc.h>
+#include <sys/klog.h>
+#include <sys/mman.h>
+#include <sys/mount.h>
+#include <sys/msg.h>
+#include <sys/personality.h>
+#include <sys/prctl.h>
+#include <sys/ptrace.h>
+#include <sys/quota.h>
+#include <sys/reboot.h>
+#include <sys/resource.h>
+#include <sys/select.h>
+#include <sys/sem.h>
+#include <sys/sendfile.h>
+#include <sys/shm.h>
+#include <sys/signalfd.h>
+#include <sys/socket.h>
+#include <sys/stat.h>
+#include <sys/statfs.h>
+#include <sys/statvfs.h>
+#include <sys/swap.h>
+#include <sys/sysinfo.h>
+#include <sys/time.h>
+#include <sys/timeb.h>
+#include <sys/timerfd.h>
+#include <sys/times.h>
+#include <sys/timex.h>
+#include <sys/uio.h>
+#include <sys/un.h>
+#include <sys/utsname.h>
+#include <sys/wait.h>
+#include <sys/xattr.h>
+#include <syslog.h>
+#include <termios.h>
+#include <time.h>
+#include <uchar.h>
+#include <ucontext.h>
+#include <ulimit.h>
+#include <unistd.h>
+#include <utime.h>
+#include <utmp.h>
+#include <utmpx.h>
+#include <wchar.h>
+#include <wctype.h>
+#include <wordexp.h>
+
+#define T(x) void t_##x(__typeof(x)*p){}
+#ifdef __GLIBC__
+#define M(x)
+#undef sigsetjmp
+#define sigsetjmp __sigsetjmp
+#else
+#define M(x) x
+#endif
+
+// T(ElfW)
+T(_Exit)
+T(__assert_fail)
+T(__ctype_get_mb_cur_max)
+T(__errno_location)
+T(__fbufsize)
+T(__flbf)
+M(T(__flt_rounds))
+T(__fpclassify)
+T(__fpclassifyf)
+T(__fpclassifyl)
+T(__fpending)
+T(__fpurge)
+T(__freadable)
+M(T(__freadahead))
+T(__freading)
+M(T(__freadptr))
+M(T(__freadptrinc))
+M(T(__fseterr))
+T(__fsetlocking)
+T(__fwritable)
+T(__fwriting)
+T(__h_errno_location)
+T(__libc_current_sigrtmax)
+T(__libc_current_sigrtmin)
+T(__res_state)
+T(__sched_cpucount)
+T(__signbit)
+T(__signbitf)
+T(__signbitl)
+T(_exit)
+// _flush_cache
+T(_flushlbf)
+T(_longjmp)
+M(T(_pthread_cleanup_pop))
+M(T(_pthread_cleanup_push))
+T(_setjmp)
+T(a64l)
+T(abort)
+T(abs)
+T(accept)
+T(accept4)
+T(access)
+T(acct)
+T(acos)
+T(acosf)
+T(acosh)
+T(acoshf)
+T(acoshl)
+T(acosl)
+T(addmntent)
+T(adjtime)
+T(adjtimex)
+T(aio_cancel)
+T(aio_error)
+T(aio_fsync)
+T(aio_read)
+T(aio_return)
+T(aio_suspend)
+T(aio_write)
+T(alarm)
+T(aligned_alloc)
+T(alloca)
+T(alphasort)
+T(asctime)
+T(asctime_r)
+T(asin)
+T(asinf)
+T(asinh)
+T(asinhf)
+T(asinhl)
+T(asinl)
+T(asprintf)
+T(at_quick_exit)
+T(atan)
+T(atan2)
+T(atan2f)
+T(atan2l)
+T(atanf)
+T(atanh)
+T(atanhf)
+T(atanhl)
+T(atanl)
+T(atexit)
+T(atof)
+T(atoi)
+T(atol)
+T(atoll)
+T(basename)
+T(bcmp)
+T(bcopy)
+T(bind)
+T(bind_textdomain_codeset)
+T(bindtextdomain)
+T(brk)
+T(bsd_signal)
+T(bsearch)
+T(btowc)
+T(bzero)
+T(c16rtomb)
+T(c32rtomb)
+T(cabs)
+T(cabsf)
+T(cabsl)
+// cachectl
+// cacheflush
+T(cacos)
+T(cacosf)
+T(cacosh)
+T(cacoshf)
+T(cacoshl)
+T(cacosl)
+// call_once
+T(calloc)
+T(carg)
+T(cargf)
+T(cargl)
+T(casin)
+T(casinf)
+T(casinh)
+T(casinhf)
+T(casinhl)
+T(casinl)
+T(catan)
+T(catanf)
+T(catanh)
+T(catanhf)
+T(catanhl)
+T(catanl)
+T(catclose)
+T(catgets)
+T(catopen)
+T(cbrt)
+T(cbrtf)
+T(cbrtl)
+T(ccos)
+T(ccosf)
+T(ccosh)
+T(ccoshf)
+T(ccoshl)
+T(ccosl)
+T(ceil)
+T(ceilf)
+T(ceill)
+T(cexp)
+T(cexpf)
+T(cexpl)
+T(cfgetispeed)
+T(cfgetospeed)
+T(cfmakeraw)
+T(cfsetispeed)
+T(cfsetospeed)
+T(cfsetspeed)
+T(chdir)
+T(chmod)
+T(chown)
+T(chroot)
+T(cimag)
+T(cimagf)
+T(cimagl)
+T(clearenv)
+T(clearerr)
+T(clearerr_unlocked)
+T(clock)
+T(clock_adjtime)
+T(clock_getcpuclockid)
+T(clock_getres)
+T(clock_gettime)
+T(clock_nanosleep)
+T(clock_settime)
+T(clog)
+T(clogf)
+T(clogl)
+T(clone)
+T(close)
+T(closedir)
+T(closelog)
+// cnd_broadcast
+// cnd_destroy
+// cnd_init
+// cnd_signal
+// cnd_timedwait
+// cnd_wait
+T(confstr)
+T(conj)
+T(conjf)
+T(conjl)
+T(connect)
+T(copysign)
+T(copysignf)
+T(copysignl)
+T(cos)
+T(cosf)
+T(cosh)
+T(coshf)
+T(coshl)
+T(cosl)
+T(cpow)
+T(cpowf)
+T(cpowl)
+T(cproj)
+T(cprojf)
+T(cprojl)
+T(creal)
+T(crealf)
+T(creall)
+T(creat)
+T(crypt)
+T(crypt_r)
+T(csin)
+T(csinf)
+T(csinh)
+T(csinhf)
+T(csinhl)
+T(csinl)
+T(csqrt)
+T(csqrtf)
+T(csqrtl)
+T(ctan)
+T(ctanf)
+T(ctanh)
+T(ctanhf)
+T(ctanhl)
+T(ctanl)
+T(ctermid)
+T(ctime)
+T(ctime_r)
+T(cuserid)
+T(daemon)
+T(difftime)
+T(dirfd)
+T(dirname)
+T(div)
+T(dl_iterate_phdr)
+T(dladdr)
+T(dlclose)
+T(dlerror)
+T(dlinfo)
+T(dlopen)
+T(dlsym)
+T(dn_comp)
+T(dn_expand)
+T(dn_skipname)
+T(dprintf)
+T(drand48)
+T(drem)
+T(dremf)
+T(dup)
+T(dup2)
+T(dup3)
+T(duplocale)
+T(eaccess)
+T(ecvt)
+T(encrypt)
+T(endgrent)
+T(endhostent)
+T(endmntent)
+T(endnetent)
+T(endprotoent)
+T(endpwent)
+T(endservent)
+T(endspent)
+T(endusershell)
+T(endutent)
+T(endutxent)
+T(epoll_create)
+T(epoll_create1)
+T(epoll_ctl)
+T(epoll_pwait)
+T(epoll_wait)
+T(erand48)
+T(erf)
+T(erfc)
+T(erfcf)
+T(erfcl)
+T(erff)
+T(erfl)
+T(err)
+T(errx)
+T(ether_aton)
+T(ether_aton_r)
+T(ether_hostton)
+T(ether_line)
+T(ether_ntoa)
+T(ether_ntoa_r)
+T(ether_ntohost)
+T(euidaccess)
+T(eventfd)
+T(eventfd_read)
+T(eventfd_write)
+T(execl)
+T(execle)
+T(execlp)
+T(execv)
+T(execve)
+T(execvp)
+T(execvpe)
+T(exit)
+T(exp)
+T(exp10)
+T(exp10f)
+T(exp10l)
+T(exp2)
+T(exp2f)
+T(exp2l)
+T(expf)
+T(expl)
+T(expm1)
+T(expm1f)
+T(expm1l)
+T(fabs)
+T(fabsf)
+T(fabsl)
+T(faccessat)
+T(fallocate)
+T(fanotify_init)
+T(fanotify_mark)
+T(fchdir)
+T(fchmod)
+T(fchmodat)
+T(fchown)
+T(fchownat)
+T(fclose)
+T(fcntl)
+T(fcvt)
+T(fdatasync)
+T(fdim)
+T(fdimf)
+T(fdiml)
+T(fdopen)
+T(fdopendir)
+T(feclearexcept)
+T(fegetenv)
+T(fegetexceptflag)
+T(fegetround)
+T(feholdexcept)
+T(feof)
+T(feof_unlocked)
+T(feraiseexcept)
+T(ferror)
+T(ferror_unlocked)
+T(fesetenv)
+T(fesetexceptflag)
+T(fesetround)
+T(fetestexcept)
+T(feupdateenv)
+T(fexecve)
+T(fflush)
+T(fflush_unlocked)
+T(ffs)
+T(ffsl)
+T(ffsll)
+T(fgetc)
+T(fgetc_unlocked)
+T(fgetgrent)
+M(T(fgetln))
+T(fgetpos)
+T(fgetpwent)
+T(fgets)
+T(fgets_unlocked)
+T(fgetspent)
+T(fgetwc)
+T(fgetws)
+T(fgetxattr)
+T(fileno)
+T(fileno_unlocked)
+T(finite)
+T(finitef)
+T(flistxattr)
+T(flock)
+T(flockfile)
+T(floor)
+T(floorf)
+T(floorl)
+T(fma)
+T(fmaf)
+T(fmal)
+T(fmax)
+T(fmaxf)
+T(fmaxl)
+T(fmemopen)
+T(fmin)
+T(fminf)
+T(fminl)
+T(fmod)
+T(fmodf)
+T(fmodl)
+T(fmtmsg)
+T(fnmatch)
+T(fopen)
+T(fork)
+T(forkpty)
+T(fpathconf)
+T(fprintf)
+T(fputc)
+T(fputc_unlocked)
+T(fputs)
+T(fputs_unlocked)
+T(fputwc)
+T(fputws)
+T(fread)
+T(fread_unlocked)
+T(free)
+T(freeaddrinfo)
+T(freeifaddrs)
+T(freelocale)
+T(fremovexattr)
+T(freopen)
+T(frexp)
+T(frexpf)
+T(frexpl)
+T(fscanf)
+T(fseek)
+T(fseeko)
+T(fsetpos)
+T(fsetxattr)
+T(fstat)
+T(fstatat)
+T(fstatfs)
+T(fstatvfs)
+T(fsync)
+T(ftell)
+T(ftello)
+T(ftime)
+T(ftok)
+T(ftruncate)
+T(ftrylockfile)
+T(ftw)
+T(funlockfile)
+T(futimens)
+T(futimes)
+T(futimesat)
+T(fwide)
+T(fwprintf)
+T(fwrite)
+T(fwrite_unlocked)
+T(fwscanf)
+T(gai_strerror)
+T(gcvt)
+T(get_avphys_pages)
+T(get_current_dir_name)
+T(get_nprocs)
+T(get_nprocs_conf)
+T(get_phys_pages)
+T(getaddrinfo)
+T(getauxval)
+T(getc)
+T(getc_unlocked)
+T(getchar)
+T(getchar_unlocked)
+T(getcontext)
+T(getcwd)
+T(getdate)
+T(getdelim)
+M(T(getdents))
+T(getdomainname)
+T(getdtablesize)
+T(getegid)
+T(getenv)
+T(geteuid)
+T(getgid)
+T(getgrent)
+T(getgrgid)
+T(getgrgid_r)
+T(getgrnam)
+T(getgrnam_r)
+T(getgrouplist)
+T(getgroups)
+T(gethostbyaddr)
+T(gethostbyaddr_r)
+T(gethostbyname)
+T(gethostbyname2)
+T(gethostbyname2_r)
+T(gethostbyname_r)
+T(gethostent)
+T(gethostid)
+T(gethostname)
+T(getifaddrs)
+T(getitimer)
+T(getline)
+T(getloadavg)
+T(getlogin)
+T(getlogin_r)
+T(getmntent)
+T(getmntent_r)
+T(getnameinfo)
+T(getnetbyaddr)
+T(getnetbyname)
+T(getnetent)
+T(getopt)
+T(getopt_long)
+T(getopt_long_only)
+T(getpagesize)
+T(getpass)
+T(getpeername)
+T(getpgid)
+T(getpgrp)
+T(getpid)
+T(getppid)
+T(getpriority)
+T(getprotobyname)
+T(getprotobynumber)
+T(getprotoent)
+T(getpwent)
+T(getpwnam)
+T(getpwnam_r)
+T(getpwuid)
+T(getpwuid_r)
+T(getresgid)
+T(getresuid)
+T(getrlimit)
+T(getrusage)
+M(T(gets))
+T(getservbyname)
+T(getservbyname_r)
+T(getservbyport)
+T(getservbyport_r)
+T(getservent)
+T(getsid)
+T(getsockname)
+T(getsockopt)
+T(getspent)
+T(getspnam)
+T(getspnam_r)
+T(getsubopt)
+T(gettimeofday)
+T(getuid)
+T(getusershell)
+T(getutent)
+T(getutid)
+T(getutline)
+T(getutxent)
+T(getutxid)
+T(getutxline)
+T(getw)
+T(getwc)
+T(getwchar)
+T(getxattr)
+T(glob)
+T(globfree)
+T(gmtime)
+T(gmtime_r)
+T(grantpt)
+T(hasmntopt)
+T(hcreate)
+T(hcreate_r)
+T(hdestroy)
+T(hdestroy_r)
+T(herror)
+T(hsearch)
+T(hsearch_r)
+T(hstrerror)
+T(htonl)
+T(htons)
+T(hypot)
+T(hypotf)
+T(hypotl)
+T(iconv)
+T(iconv_close)
+T(iconv_open)
+T(if_freenameindex)
+T(if_indextoname)
+T(if_nameindex)
+T(if_nametoindex)
+T(ilogb)
+T(ilogbf)
+T(ilogbl)
+T(imaxabs)
+T(imaxdiv)
+M(T(index))
+T(inet_addr)
+T(inet_aton)
+T(inet_lnaof)
+T(inet_makeaddr)
+T(inet_netof)
+T(inet_network)
+T(inet_ntoa)
+T(inet_ntop)
+T(inet_pton)
+T(initgroups)
+T(initstate)
+T(inotify_add_watch)
+T(inotify_init)
+T(inotify_init1)
+T(inotify_rm_watch)
+T(insque)
+T(ioctl)
+// ioperm
+// iopl
+T(isalnum)
+T(isalnum_l)
+T(isalpha)
+T(isalpha_l)
+T(isascii)
+T(isastream)
+T(isatty)
+T(isblank)
+T(isblank_l)
+T(iscntrl)
+T(iscntrl_l)
+T(isdigit)
+T(isdigit_l)
+T(isgraph)
+T(isgraph_l)
+T(islower)
+T(islower_l)
+T(isprint)
+T(isprint_l)
+T(ispunct)
+T(ispunct_l)
+M(T(issetugid))
+T(isspace)
+T(isspace_l)
+T(isupper)
+T(isupper_l)
+T(iswalnum)
+T(iswalnum_l)
+T(iswalpha)
+T(iswalpha_l)
+T(iswblank)
+T(iswblank_l)
+T(iswcntrl)
+T(iswcntrl_l)
+T(iswctype)
+T(iswctype_l)
+T(iswdigit)
+T(iswdigit_l)
+T(iswgraph)
+T(iswgraph_l)
+T(iswlower)
+T(iswlower_l)
+T(iswprint)
+T(iswprint_l)
+T(iswpunct)
+T(iswpunct_l)
+T(iswspace)
+T(iswspace_l)
+T(iswupper)
+T(iswupper_l)
+T(iswxdigit)
+T(iswxdigit_l)
+T(isxdigit)
+T(isxdigit_l)
+T(j0)
+T(j0f)
+T(j1)
+T(j1f)
+T(jn)
+T(jnf)
+T(jrand48)
+T(kill)
+T(killpg)
+T(klogctl)
+T(l64a)
+T(labs)
+T(lchmod)
+T(lchown)
+T(lckpwdf)
+T(lcong48)
+T(ldexp)
+T(ldexpf)
+T(ldexpl)
+T(ldiv)
+T(lfind)
+T(lgamma)
+T(lgamma_r)
+T(lgammaf)
+T(lgammaf_r)
+T(lgammal)
+T(lgammal_r)
+T(lgetxattr)
+T(link)
+T(linkat)
+T(lio_listio)
+T(listen)
+T(listxattr)
+T(llabs)
+T(lldiv)
+T(llistxattr)
+T(llrint)
+T(llrintf)
+T(llrintl)
+T(llround)
+T(llroundf)
+T(llroundl)
+T(localeconv)
+T(localtime)
+T(localtime_r)
+T(lockf)
+T(log)
+T(log10)
+T(log10f)
+T(log10l)
+T(log1p)
+T(log1pf)
+T(log1pl)
+T(log2)
+T(log2f)
+T(log2l)
+T(logb)
+T(logbf)
+T(logbl)
+T(logf)
+T(login_tty)
+T(logl)
+T(longjmp)
+T(lrand48)
+T(lremovexattr)
+T(lrint)
+T(lrintf)
+T(lrintl)
+T(lround)
+T(lroundf)
+T(lroundl)
+T(lsearch)
+T(lseek)
+T(lsetxattr)
+T(lstat)
+T(lutimes)
+T(madvise)
+T(makecontext)
+T(malloc)
+T(malloc_usable_size)
+T(mblen)
+T(mbrlen)
+T(mbrtoc16)
+T(mbrtoc32)
+T(mbrtowc)
+T(mbsinit)
+T(mbsnrtowcs)
+T(mbsrtowcs)
+T(mbstowcs)
+T(mbtowc)
+T(memalign)
+T(memccpy)
+M(T(memchr))
+T(memcmp)
+T(memcpy)
+T(memmem)
+T(memmove)
+T(mempcpy)
+M(T(memrchr))
+T(memset)
+T(mincore)
+T(mkdir)
+T(mkdirat)
+T(mkdtemp)
+T(mkfifo)
+T(mkfifoat)
+T(mknod)
+T(mknodat)
+T(mkostemp)
+T(mkostemps)
+T(mkstemp)
+T(mkstemps)
+T(mktemp)
+T(mktime)
+T(mlock)
+T(mlockall)
+T(mmap)
+T(modf)
+T(modff)
+T(modfl)
+T(mount)
+T(mprotect)
+T(mq_close)
+T(mq_getattr)
+T(mq_notify)
+T(mq_open)
+T(mq_receive)
+T(mq_send)
+T(mq_setattr)
+T(mq_timedreceive)
+T(mq_timedsend)
+T(mq_unlink)
+T(mrand48)
+T(mremap)
+T(msgctl)
+T(msgget)
+T(msgrcv)
+T(msgsnd)
+T(msync)
+// mtx_destroy
+// mtx_init
+// mtx_lock
+// mtx_timedlock
+// mtx_trylock
+// mtx_unlock
+T(munlock)
+T(munlockall)
+T(munmap)
+T(nan)
+T(nanf)
+T(nanl)
+T(nanosleep)
+T(nearbyint)
+T(nearbyintf)
+T(nearbyintl)
+T(newlocale)
+T(nextafter)
+T(nextafterf)
+T(nextafterl)
+T(nexttoward)
+T(nexttowardf)
+T(nexttowardl)
+T(nftw)
+T(nice)
+T(nl_langinfo)
+T(nl_langinfo_l)
+T(nrand48)
+T(ns_get16)
+T(ns_get32)
+T(ns_initparse)
+T(ns_name_uncompress)
+T(ns_parserr)
+T(ns_put16)
+T(ns_put32)
+T(ns_skiprr)
+T(ntohl)
+T(ntohs)
+T(open)
+T(open_memstream)
+T(open_wmemstream)
+T(openat)
+T(opendir)
+T(openlog)
+T(openpty)
+T(pathconf)
+T(pause)
+T(pclose)
+T(perror)
+T(personality)
+T(pipe)
+T(pipe2)
+T(poll)
+T(popen)
+M(T(posix_close))
+T(posix_fadvise)
+T(posix_fallocate)
+T(posix_madvise)
+T(posix_memalign)
+T(posix_openpt)
+T(posix_spawn)
+T(posix_spawn_file_actions_addclose)
+T(posix_spawn_file_actions_adddup2)
+T(posix_spawn_file_actions_addopen)
+T(posix_spawn_file_actions_destroy)
+T(posix_spawn_file_actions_init)
+T(posix_spawnattr_destroy)
+T(posix_spawnattr_getflags)
+T(posix_spawnattr_getpgroup)
+T(posix_spawnattr_getschedparam)
+T(posix_spawnattr_getschedpolicy)
+T(posix_spawnattr_getsigdefault)
+T(posix_spawnattr_getsigmask)
+T(posix_spawnattr_init)
+T(posix_spawnattr_setflags)
+T(posix_spawnattr_setpgroup)
+T(posix_spawnattr_setschedparam)
+T(posix_spawnattr_setschedpolicy)
+T(posix_spawnattr_setsigdefault)
+T(posix_spawnattr_setsigmask)
+T(posix_spawnp)
+T(pow)
+T(pow10)
+T(pow10f)
+T(pow10l)
+T(powf)
+T(powl)
+T(ppoll)
+T(prctl)
+T(pread)
+T(preadv)
+T(printf)
+T(prlimit)
+T(process_vm_readv)
+T(process_vm_writev)
+T(pselect)
+T(psiginfo)
+T(psignal)
+T(pthread_atfork)
+T(pthread_attr_destroy)
+T(pthread_attr_getdetachstate)
+T(pthread_attr_getguardsize)
+T(pthread_attr_getinheritsched)
+T(pthread_attr_getschedparam)
+T(pthread_attr_getschedpolicy)
+T(pthread_attr_getscope)
+T(pthread_attr_getstack)
+T(pthread_attr_getstacksize)
+T(pthread_attr_init)
+T(pthread_attr_setdetachstate)
+T(pthread_attr_setguardsize)
+T(pthread_attr_setinheritsched)
+T(pthread_attr_setschedparam)
+T(pthread_attr_setschedpolicy)
+T(pthread_attr_setscope)
+T(pthread_attr_setstack)
+T(pthread_attr_setstacksize)
+T(pthread_barrier_destroy)
+T(pthread_barrier_init)
+T(pthread_barrier_wait)
+T(pthread_barrierattr_destroy)
+T(pthread_barrierattr_getpshared)
+T(pthread_barrierattr_init)
+T(pthread_barrierattr_setpshared)
+T(pthread_cancel)
+T(pthread_cond_broadcast)
+T(pthread_cond_destroy)
+T(pthread_cond_init)
+T(pthread_cond_signal)
+T(pthread_cond_timedwait)
+T(pthread_cond_wait)
+T(pthread_condattr_destroy)
+T(pthread_condattr_getclock)
+T(pthread_condattr_getpshared)
+T(pthread_condattr_init)
+T(pthread_condattr_setclock)
+T(pthread_condattr_setpshared)
+T(pthread_create)
+T(pthread_detach)
+T(pthread_equal)
+T(pthread_exit)
+T(pthread_getaffinity_np)
+T(pthread_getattr_np)
+T(pthread_getconcurrency)
+T(pthread_getcpuclockid)
+T(pthread_getschedparam)
+T(pthread_getspecific)
+T(pthread_join)
+T(pthread_key_create)
+T(pthread_key_delete)
+T(pthread_kill)
+T(pthread_mutex_consistent)
+T(pthread_mutex_destroy)
+T(pthread_mutex_getprioceiling)
+T(pthread_mutex_init)
+T(pthread_mutex_lock)
+T(pthread_mutex_setprioceiling)
+T(pthread_mutex_timedlock)
+T(pthread_mutex_trylock)
+T(pthread_mutex_unlock)
+T(pthread_mutexattr_destroy)
+T(pthread_mutexattr_getprioceiling)
+T(pthread_mutexattr_getprotocol)
+T(pthread_mutexattr_getpshared)
+T(pthread_mutexattr_getrobust)
+T(pthread_mutexattr_gettype)
+T(pthread_mutexattr_init)
+T(pthread_mutexattr_setprioceiling)
+T(pthread_mutexattr_setprotocol)
+T(pthread_mutexattr_setpshared)
+T(pthread_mutexattr_setrobust)
+T(pthread_mutexattr_settype)
+T(pthread_once)
+T(pthread_rwlock_destroy)
+T(pthread_rwlock_init)
+T(pthread_rwlock_rdlock)
+T(pthread_rwlock_timedrdlock)
+T(pthread_rwlock_timedwrlock)
+T(pthread_rwlock_tryrdlock)
+T(pthread_rwlock_trywrlock)
+T(pthread_rwlock_unlock)
+T(pthread_rwlock_wrlock)
+T(pthread_rwlockattr_destroy)
+T(pthread_rwlockattr_getpshared)
+T(pthread_rwlockattr_init)
+T(pthread_rwlockattr_setpshared)
+T(pthread_self)
+T(pthread_setaffinity_np)
+T(pthread_setcancelstate)
+T(pthread_setcanceltype)
+T(pthread_setconcurrency)
+T(pthread_setschedparam)
+T(pthread_setschedprio)
+T(pthread_setspecific)
+T(pthread_sigmask)
+T(pthread_spin_destroy)
+T(pthread_spin_init)
+T(pthread_spin_lock)
+T(pthread_spin_trylock)
+T(pthread_spin_unlock)
+T(pthread_testcancel)
+T(ptrace)
+T(ptsname)
+T(ptsname_r)
+T(putc)
+T(putc_unlocked)
+T(putchar)
+T(putchar_unlocked)
+T(putenv)
+T(putgrent)
+T(putpwent)
+T(puts)
+T(putspent)
+T(pututline)
+T(pututxline)
+T(putw)
+T(putwc)
+T(putwchar)
+T(pwrite)
+T(pwritev)
+T(qsort)
+T(quick_exit)
+T(quotactl)
+T(raise)
+T(rand)
+T(rand_r)
+T(random)
+T(read)
+T(readahead)
+T(readdir)
+T(readdir_r)
+T(readlink)
+T(readlinkat)
+T(readv)
+T(realloc)
+T(realpath)
+T(reboot)
+T(recv)
+T(recvfrom)
+T(recvmmsg)
+T(recvmsg)
+T(regcomp)
+T(regerror)
+T(regexec)
+T(regfree)
+T(remainder)
+T(remainderf)
+T(remainderl)
+T(remap_file_pages)
+T(remove)
+T(removexattr)
+T(remque)
+T(remquo)
+T(remquof)
+T(remquol)
+T(rename)
+T(renameat)
+T(res_init)
+T(res_mkquery)
+T(res_query)
+T(res_querydomain)
+T(res_search)
+T(res_send)
+T(rewind)
+T(rewinddir)
+M(T(rindex))
+T(rint)
+T(rintf)
+T(rintl)
+T(rmdir)
+T(round)
+T(roundf)
+T(roundl)
+T(sbrk)
+T(scalb)
+T(scalbf)
+T(scalbln)
+T(scalblnf)
+T(scalblnl)
+T(scalbn)
+T(scalbnf)
+T(scalbnl)
+T(scandir)
+T(scanf)
+T(sched_get_priority_max)
+T(sched_get_priority_min)
+T(sched_getaffinity)
+T(sched_getcpu)
+T(sched_getparam)
+T(sched_getscheduler)
+T(sched_rr_get_interval)
+T(sched_setaffinity)
+T(sched_setparam)
+T(sched_setscheduler)
+T(sched_yield)
+T(seed48)
+T(seekdir)
+T(select)
+T(sem_close)
+T(sem_destroy)
+T(sem_getvalue)
+T(sem_init)
+T(sem_open)
+T(sem_post)
+T(sem_timedwait)
+T(sem_trywait)
+T(sem_unlink)
+T(sem_wait)
+T(semctl)
+T(semget)
+T(semop)
+T(semtimedop)
+T(send)
+T(sendfile)
+T(sendmmsg)
+T(sendmsg)
+T(sendto)
+T(setbuf)
+T(setbuffer)
+T(setcontext)
+T(setdomainname)
+T(setegid)
+T(setenv)
+T(seteuid)
+T(setfsgid)
+T(setfsuid)
+T(setgid)
+T(setgrent)
+T(setgroups)
+T(sethostent)
+T(sethostname)
+T(setitimer)
+T(setjmp)
+T(setkey)
+T(setlinebuf)
+T(setlocale)
+T(setlogmask)
+T(setmntent)
+T(setnetent)
+T(setns)
+T(setpgid)
+T(setpgrp)
+T(setpriority)
+T(setprotoent)
+T(setpwent)
+T(setregid)
+T(setresgid)
+T(setresuid)
+T(setreuid)
+T(setrlimit)
+T(setservent)
+T(setsid)
+T(setsockopt)
+T(setspent)
+T(setstate)
+T(settimeofday)
+T(setuid)
+T(setusershell)
+T(setutent)
+T(setutxent)
+T(setvbuf)
+T(setxattr)
+T(sgetspent)
+T(shm_open)
+T(shm_unlink)
+T(shmat)
+T(shmctl)
+T(shmdt)
+T(shmget)
+T(shutdown)
+T(sigaction)
+T(sigaddset)
+T(sigaltstack)
+T(sigandset)
+T(sigdelset)
+T(sigemptyset)
+T(sigfillset)
+T(sighold)
+T(sigignore)
+T(siginterrupt)
+T(sigisemptyset)
+T(sigismember)
+T(siglongjmp)
+T(signal)
+T(signalfd)
+T(significand)
+T(significandf)
+T(sigorset)
+T(sigpause)
+T(sigpending)
+T(sigprocmask)
+T(sigqueue)
+T(sigrelse)
+T(sigset)
+T(sigsetjmp)
+T(sigsuspend)
+T(sigtimedwait)
+T(sigwait)
+T(sigwaitinfo)
+T(sin)
+T(sincos)
+T(sincosf)
+T(sincosl)
+T(sinf)
+T(sinh)
+T(sinhf)
+T(sinhl)
+T(sinl)
+T(sleep)
+T(snprintf)
+T(sockatmark)
+T(socket)
+T(socketpair)
+T(splice)
+T(sprintf)
+T(sqrt)
+T(sqrtf)
+T(sqrtl)
+T(srand)
+T(srand48)
+T(srandom)
+T(sscanf)
+T(stat)
+T(statfs)
+T(statvfs)
+T(stime)
+T(stpcpy)
+T(stpncpy)
+T(strcasecmp)
+T(strcasecmp_l)
+M(T(strcasestr))
+T(strcat)
+M(T(strchr))
+M(T(strchrnul))
+T(strcmp)
+T(strcoll)
+T(strcoll_l)
+T(strcpy)
+T(strcspn)
+T(strdup)
+T(strerror)
+T(strerror_l)
+T(strerror_r)
+T(strfmon)
+T(strfmon_l)
+T(strftime)
+T(strftime_l)
+M(T(strlcat))
+M(T(strlcpy))
+T(strlen)
+T(strncasecmp)
+T(strncasecmp_l)
+T(strncat)
+T(strncmp)
+T(strncpy)
+T(strndup)
+T(strnlen)
+M(T(strpbrk))
+T(strptime)
+M(T(strrchr))
+T(strsep)
+T(strsignal)
+T(strspn)
+M(T(strstr))
+T(strtod)
+T(strtod_l)
+T(strtof)
+T(strtof_l)
+T(strtoimax)
+T(strtok)
+T(strtok_r)
+T(strtol)
+T(strtold)
+T(strtold_l)
+T(strtoll)
+T(strtoul)
+T(strtoull)
+T(strtoumax)
+T(strverscmp)
+T(strxfrm)
+T(strxfrm_l)
+T(swab)
+T(swapcontext)
+T(swapoff)
+T(swapon)
+T(swprintf)
+T(swscanf)
+T(symlink)
+T(symlinkat)
+T(sync)
+T(sync_file_range)
+T(syncfs)
+T(syscall)
+T(sysconf)
+T(sysinfo)
+T(syslog)
+T(system)
+T(tan)
+T(tanf)
+T(tanh)
+T(tanhf)
+T(tanhl)
+T(tanl)
+T(tcdrain)
+T(tcflow)
+T(tcflush)
+T(tcgetattr)
+T(tcgetpgrp)
+T(tcgetsid)
+T(tcsendbreak)
+T(tcsetattr)
+T(tcsetpgrp)
+T(tdelete)
+T(tdestroy)
+T(tee)
+T(telldir)
+T(tempnam)
+T(textdomain)
+T(tfind)
+T(tgamma)
+T(tgammaf)
+T(tgammal)
+// thrd_create
+// thrd_current
+// thrd_detach
+// thrd_equal
+// thrd_exit
+// thrd_join
+// thrd_sleep
+// thrd_yield
+T(time)
+T(timegm)
+T(timer_create)
+T(timer_delete)
+T(timer_getoverrun)
+T(timer_gettime)
+T(timer_settime)
+T(timerfd_create)
+T(timerfd_gettime)
+T(timerfd_settime)
+T(times)
+T(timespec_get)
+T(tmpfile)
+T(tmpnam)
+T(toascii)
+T(tolower)
+T(tolower_l)
+T(toupper)
+T(toupper_l)
+T(towctrans)
+T(towctrans_l)
+T(towlower)
+T(towlower_l)
+T(towupper)
+T(towupper_l)
+T(trunc)
+T(truncate)
+T(truncf)
+T(truncl)
+T(tsearch)
+// tss_create
+// tss_delete
+// tss_get
+// tss_set
+T(ttyname)
+T(ttyname_r)
+T(twalk)
+T(tzset)
+T(ualarm)
+T(ulckpwdf)
+T(ulimit)
+T(umask)
+T(umount)
+T(umount2)
+T(uname)
+T(ungetc)
+T(ungetwc)
+T(unlink)
+T(unlinkat)
+T(unlockpt)
+T(unsetenv)
+T(unshare)
+T(updwtmp)
+T(updwtmpx)
+T(uselocale)
+T(usleep)
+T(utime)
+T(utimensat)
+T(utimes)
+T(utmpname)
+T(utmpxname)
+T(valloc)
+T(vasprintf)
+T(vdprintf)
+T(verr)
+T(verrx)
+T(versionsort)
+T(vfork)
+T(vfprintf)
+T(vfscanf)
+T(vfwprintf)
+T(vfwscanf)
+T(vhangup)
+T(vmsplice)
+T(vprintf)
+T(vscanf)
+T(vsnprintf)
+T(vsprintf)
+T(vsscanf)
+T(vswprintf)
+T(vswscanf)
+T(vsyslog)
+T(vwarn)
+T(vwarnx)
+T(vwprintf)
+T(vwscanf)
+T(wait)
+T(wait3)
+T(wait4)
+T(waitid)
+T(waitpid)
+T(warn)
+T(warnx)
+T(wcpcpy)
+T(wcpncpy)
+T(wcrtomb)
+T(wcscasecmp)
+T(wcscasecmp_l)
+T(wcscat)
+M(T(wcschr))
+T(wcscmp)
+T(wcscoll)
+T(wcscoll_l)
+T(wcscpy)
+T(wcscspn)
+T(wcsdup)
+T(wcsftime)
+T(wcslen)
+T(wcsncasecmp)
+T(wcsncasecmp_l)
+T(wcsncat)
+T(wcsncmp)
+T(wcsncpy)
+T(wcsnlen)
+T(wcsnrtombs)
+M(T(wcspbrk))
+M(T(wcsrchr))
+T(wcsrtombs)
+T(wcsspn)
+M(T(wcsstr))
+T(wcstod)
+T(wcstof)
+T(wcstoimax)
+T(wcstok)
+T(wcstol)
+T(wcstold)
+T(wcstoll)
+T(wcstombs)
+T(wcstoul)
+T(wcstoull)
+T(wcstoumax)
+M(T(wcswcs))
+T(wcswidth)
+T(wcsxfrm)
+T(wcsxfrm_l)
+T(wctob)
+T(wctomb)
+T(wctrans)
+T(wctrans_l)
+T(wctype)
+T(wctype_l)
+T(wcwidth)
+M(T(wmemchr))
+T(wmemcmp)
+T(wmemcpy)
+T(wmemmove)
+T(wmemset)
+T(wordexp)
+T(wordfree)
+T(wprintf)
+T(write)
+T(writev)
+T(wscanf)
+T(y0)
+T(y0f)
+T(y1)
+T(y1f)
+T(yn)
+T(ynf)
diff --git a/abi_type.aarch64.cc b/abi_type.aarch64.cc
new file mode 100644 (file)
index 0000000..e962637
--- /dev/null
@@ -0,0 +1,654 @@
+
+#define _GNU_SOURCE 1
+#define _FILE_OFFSET_BITS 64
+#define SYSLOG_NAMES 1
+#include <stddef.h>
+#include <sys/types.h>
+
+#include <aio.h>
+#include <alloca.h>
+#include <ar.h>
+#include <arpa/ftp.h>
+#include <arpa/inet.h>
+#include <arpa/nameser.h>
+#include <arpa/telnet.h>
+#include <arpa/tftp.h>
+#include <assert.h>
+#include <byteswap.h>
+#include <complex.h>
+#include <cpio.h>
+#include <crypt.h>
+#include <ctype.h>
+#include <dirent.h>
+#include <dlfcn.h>
+#include <elf.h>
+#include <endian.h>
+#include <err.h>
+#include <errno.h>
+#include <fcntl.h>
+#include <features.h>
+#include <fenv.h>
+#include <float.h>
+#include <fmtmsg.h>
+#include <fnmatch.h>
+#include <ftw.h>
+#include <getopt.h>
+#include <glob.h>
+#include <grp.h>
+#include <iconv.h>
+#include <ifaddrs.h>
+#include <inttypes.h>
+#include <iso646.h>
+#include <langinfo.h>
+#include <libgen.h>
+#include <libintl.h>
+#include <limits.h>
+#include <link.h>
+#include <locale.h>
+#include <malloc.h>
+#include <math.h>
+#include <mntent.h>
+#include <monetary.h>
+#include <mqueue.h>
+#include <net/ethernet.h>
+#include <net/if.h>
+#include <net/if_arp.h>
+#include <net/route.h>
+#include <netdb.h>
+#include <netinet/ether.h>
+#include <netinet/icmp6.h>
+#include <netinet/if_ether.h>
+#include <netinet/igmp.h>
+#include <netinet/in.h>
+#include <netinet/in_systm.h>
+#include <netinet/ip.h>
+#include <netinet/ip6.h>
+#include <netinet/ip_icmp.h>
+#include <netinet/tcp.h>
+#include <netinet/udp.h>
+#include <netpacket/packet.h>
+#include <nl_types.h>
+#include <paths.h>
+#include <poll.h>
+#include <pthread.h>
+#include <pty.h>
+#include <pwd.h>
+#include <regex.h>
+#include <resolv.h>
+#include <sched.h>
+#include <scsi/scsi.h>
+#include <scsi/scsi_ioctl.h>
+#include <scsi/sg.h>
+#include <search.h>
+#include <semaphore.h>
+#include <setjmp.h>
+#include <shadow.h>
+#include <signal.h>
+#include <spawn.h>
+//#include <stdalign.h>
+#include <stdarg.h>
+#include <stdbool.h>
+#include <stddef.h>
+#include <stdint.h>
+#include <stdio.h>
+#include <stdio_ext.h>
+#include <stdlib.h>
+//#include <stdnoreturn.h>
+#include <string.h>
+#include <strings.h>
+#include <stropts.h>
+#include <sys/acct.h>
+//#include <sys/auxv.h>
+//#include <sys/cachectl.h>
+#include <sys/dir.h>
+#include <sys/epoll.h>
+#include <sys/eventfd.h>
+#include <sys/fanotify.h>
+#include <sys/file.h>
+#include <sys/fsuid.h>
+#include <sys/inotify.h>
+//#include <sys/io.h>
+#include <sys/ioctl.h>
+#include <sys/ipc.h>
+//#include <sys/kd.h>
+#include <sys/klog.h>
+#include <sys/mman.h>
+#include <sys/mount.h>
+#include <sys/msg.h>
+#include <sys/mtio.h>
+#include <sys/param.h>
+#include <sys/personality.h>
+#include <sys/prctl.h>
+#include <sys/procfs.h>
+#include <sys/ptrace.h>
+#include <sys/quota.h>
+#include <sys/reboot.h>
+//#include <sys/reg.h>
+#include <sys/resource.h>
+#include <sys/select.h>
+#include <sys/sem.h>
+#include <sys/sendfile.h>
+#include <sys/shm.h>
+#include <sys/signalfd.h>
+#include <sys/socket.h>
+#include <sys/stat.h>
+#include <sys/statfs.h>
+#include <sys/statvfs.h>
+#include <sys/swap.h>
+#include <sys/syscall.h>
+#include <sys/sysinfo.h>
+#include <sys/sysmacros.h>
+#include <sys/time.h>
+#include <sys/timeb.h>
+#include <sys/timerfd.h>
+#include <sys/times.h>
+#include <sys/timex.h>
+#include <sys/ttydefaults.h>
+#include <sys/types.h>
+#include <sys/uio.h>
+#include <sys/un.h>
+#include <sys/user.h>
+#include <sys/utsname.h>
+#include <sys/wait.h>
+#include <sys/xattr.h>
+#include <sysexits.h>
+#include <syslog.h>
+#include <tar.h>
+#include <termios.h>
+#include <tgmath.h>
+//#include <threads.h>
+#include <time.h>
+#include <uchar.h>
+#include <ucontext.h>
+#include <ulimit.h>
+#include <unistd.h>
+#include <utime.h>
+#include <utmp.h>
+#include <utmpx.h>
+#include <values.h>
+#include <wchar.h>
+#include <wctype.h>
+#include <wordexp.h>
+
+typedef long long long_long;
+typedef long double long_double;
+struct size {char c;};
+struct align {char c;};
+#define T(s,t) void x_##t(s t x, s t* ptr, size(*y)[sizeof(s t)], align(*z)[__alignof__(s t)]){}
+#define P(s,t) void y_##t(s t* ptr, size(*y)[sizeof(s t*)], align(*z)[__alignof__(s t*)]){}
+#ifdef __GLIBC__
+#define M(x)
+#else
+#define M(x) x
+#endif
+
+T(,ACTION)
+T(,CODE)
+P(,DIR)
+T(,Dl_info)
+T(,ENTRY)
+T(,Elf32_Addr)
+T(,Elf32_Conflict)
+T(,Elf32_Dyn)
+T(,Elf32_Ehdr)
+T(,Elf32_Half)
+T(,Elf32_Lib)
+T(,Elf32_Move)
+T(,Elf32_Nhdr)
+T(,Elf32_Off)
+T(,Elf32_Phdr)
+T(,Elf32_RegInfo)
+T(,Elf32_Rel)
+T(,Elf32_Rela)
+T(,Elf32_Section)
+T(,Elf32_Shdr)
+T(,Elf32_Sword)
+T(,Elf32_Sxword)
+T(,Elf32_Sym)
+T(,Elf32_Syminfo)
+T(,Elf32_Verdaux)
+T(,Elf32_Verdef)
+T(,Elf32_Vernaux)
+T(,Elf32_Verneed)
+T(,Elf32_Versym)
+T(,Elf32_Word)
+T(,Elf32_Xword)
+T(,Elf32_auxv_t)
+T(,Elf32_gptab)
+T(,Elf64_Addr)
+T(,Elf64_Dyn)
+T(,Elf64_Ehdr)
+T(,Elf64_Half)
+T(,Elf64_Lib)
+T(,Elf64_Move)
+T(,Elf64_Nhdr)
+T(,Elf64_Off)
+T(,Elf64_Phdr)
+T(,Elf64_Rel)
+T(,Elf64_Rela)
+T(,Elf64_Section)
+T(,Elf64_Shdr)
+T(,Elf64_Sword)
+T(,Elf64_Sxword)
+T(,Elf64_Sym)
+T(,Elf64_Syminfo)
+T(,Elf64_Verdaux)
+T(,Elf64_Verdef)
+T(,Elf64_Vernaux)
+T(,Elf64_Verneed)
+T(,Elf64_Versym)
+T(,Elf64_Word)
+T(,Elf64_Xword)
+T(,Elf64_auxv_t)
+T(,Elf_Options)
+T(,Elf_Options_Hw)
+T(,Elf_Symndx)
+P(,FILE)
+T(,HEADER)
+T(,Sg_io_hdr)
+//T(,Sg_io_vec)
+T(,Sg_req_info)
+T(,Sg_scsi_id)
+T(,VISIT)
+//T(,__isoc_va_list)
+T(,__jmp_buf)
+T(,blkcnt_t)
+T(,blksize_t)
+T(,bool)
+T(,caddr_t)
+T(,cc_t)
+T(,char)
+T(,char16_t)
+T(,char32_t)
+T(,clock_t)
+T(,clockid_t)
+//T(,cnd_t)
+T(,comp_t)
+T(,cpu_set_t)
+T(,dev_t)
+T(,div_t)
+T(,double)
+T(,double_t)
+T(,elf_fpregset_t)
+T(,elf_greg_t)
+T(,elf_gregset_t)
+T(,epoll_data_t)
+T(,eventfd_t)
+T(,fd_mask)
+T(,fd_set)
+T(,fenv_t)
+T(,fexcept_t)
+T(,float)
+T(,float_t)
+T(,fpos_t)
+T(,fpregset_t)
+T(,fsblkcnt_t)
+T(,fsfilcnt_t)
+T(,fsid_t)
+T(,gid_t)
+T(,glob_t)
+T(,greg_t)
+T(,gregset_t)
+T(,iconv_t)
+T(,id_t)
+T(,idtype_t)
+T(,imaxdiv_t)
+T(,in_addr_t)
+T(,in_port_t)
+T(,ino_t)
+T(,int)
+T(,int16_t)
+T(,int32_t)
+T(,int64_t)
+T(,int8_t)
+T(,int_fast16_t)
+T(,int_fast32_t)
+T(,int_fast64_t)
+T(,int_fast8_t)
+T(,int_least16_t)
+T(,int_least32_t)
+T(,int_least64_t)
+T(,int_least8_t)
+T(,intmax_t)
+T(,intptr_t)
+T(,jmp_buf)
+T(,key_t)
+T(,ldiv_t)
+T(,lldiv_t)
+T(,locale_t)
+T(,long)
+T(,long_double)
+T(,long_long)
+T(,lwpid_t)
+T(,max_align_t)
+T(,mbstate_t)
+T(,mcontext_t)
+T(,mode_t)
+T(,mqd_t)
+T(,msglen_t)
+T(,msgqnum_t)
+//T(,mtx_t)
+T(,n_long)
+T(,n_short)
+T(,n_time)
+T(,nfds_t)
+T(,nl_catd)
+T(,nl_item)
+T(,nlink_t)
+T(,ns_cert_types)
+T(,ns_class)
+T(,ns_flag)
+T(,ns_key_types)
+T(,ns_msg)
+T(,ns_opcode)
+T(,ns_rcode)
+T(,ns_rr)
+T(,ns_sect)
+//T(,ns_tcp_tsig_state)
+//T(,ns_tsig_key)
+T(,ns_type)
+T(,ns_update_operation)
+T(,off_t)
+//T(,once_flag)
+T(,pid_t)
+T(,posix_spawn_file_actions_t)
+T(,posix_spawnattr_t)
+T(,prfpregset_t)
+T(,prgregset_t)
+T(,prpsinfo_t)
+T(,prstatus_t)
+T(,psaddr_t)
+T(,pthread_attr_t)
+T(,pthread_barrier_t)
+T(,pthread_barrierattr_t)
+T(,pthread_cond_t)
+T(,pthread_condattr_t)
+T(,pthread_key_t)
+T(,pthread_mutex_t)
+T(,pthread_mutexattr_t)
+T(,pthread_once_t)
+T(,pthread_rwlock_t)
+T(,pthread_rwlockattr_t)
+T(,pthread_spinlock_t)
+T(,pthread_t)
+T(,ptrdiff_t)
+T(,quad_t)
+T(,regex_t)
+T(,register_t)
+T(,regmatch_t)
+T(,regoff_t)
+T(,res_state)
+T(,rlim_t)
+T(,sa_family_t)
+T(,sem_t)
+T(,sg_io_hdr_t)
+T(,sg_iovec_t)
+T(,sg_req_info_t)
+T(,shmatt_t)
+T(,short)
+T(,sig_atomic_t)
+T(,sig_t)
+T(,sighandler_t)
+T(,siginfo_t)
+T(,sigjmp_buf)
+T(,sigset_t)
+T(,size_t)
+T(,socklen_t)
+T(,speed_t)
+T(,ssize_t)
+T(,stack_t)
+T(struct,FTW)
+//T(struct,__fsid_t)
+T(struct,__jmp_buf_tag)
+//T(struct,__locale_struct)
+//T(struct,__mbstate_t)
+T(struct,__ns_msg)
+T(struct,__ns_rr)
+//T(struct,__ptcb)
+T(struct,__res_state)
+//T(struct,__sigset_t)
+//T(struct,__ucontext)
+T(struct,_aarch64_ctx)
+T(struct,_ns_flagdata)
+T(struct,acct)
+T(struct,acct_v3)
+T(struct,addrinfo)
+T(struct,aiocb)
+T(struct,ar_hdr)
+T(struct,arpd_request)
+T(struct,arphdr)
+T(struct,arpreq)
+T(struct,arpreq_old)
+T(struct,bandinfo)
+T(struct,ccs_modesel_head)
+T(struct,cmsghdr)
+//T(struct,cpu_set_t)
+T(struct,crypt_data)
+T(struct,dirent)
+T(struct,dl_phdr_info)
+T(struct,dqblk)
+T(struct,dqinfo)
+T(struct,elf_prpsinfo)
+T(struct,elf_prstatus)
+T(struct,elf_siginfo)
+T(struct,entry)
+T(struct,epoll_event)
+T(struct,esr_context)
+T(struct,ether_addr)
+T(struct,ether_arp)
+T(struct,ether_header)
+T(struct,ethhdr)
+T(struct,f_owner_ex)
+T(struct,fanotify_event_metadata)
+T(struct,fanotify_response)
+T(struct,flock)
+T(struct,fpsimd_context)
+T(struct,group)
+T(struct,group_filter)
+T(struct,group_req)
+T(struct,group_source_req)
+T(struct,hostent)
+T(struct,hsearch_data)
+T(struct,icmp)
+T(struct,icmp6_filter)
+T(struct,icmp6_hdr)
+T(struct,icmp6_router_renum)
+T(struct,icmp_ra_addr)
+T(struct,icmphdr)
+T(struct,if_nameindex)
+T(struct,ifaddr)
+T(struct,ifaddrs)
+T(struct,ifconf)
+T(struct,ifmap)
+T(struct,ifreq)
+T(struct,igmp)
+//T(struct,ih_idseq)
+//T(struct,ih_pmtu)
+//T(struct,ih_rtradv)
+T(struct,in6_addr)
+T(struct,in6_pktinfo)
+T(struct,in6_rtmsg)
+T(struct,in_addr)
+T(struct,in_pktinfo)
+T(struct,inotify_event)
+T(struct,iovec)
+T(struct,ip)
+T(struct,ip6_dest)
+T(struct,ip6_ext)
+T(struct,ip6_frag)
+T(struct,ip6_hbh)
+T(struct,ip6_hdr)
+//T(struct,ip6_hdrctl)
+T(struct,ip6_mtuinfo)
+T(struct,ip6_opt)
+T(struct,ip6_opt_jumbo)
+T(struct,ip6_opt_nsap)
+T(struct,ip6_opt_router)
+T(struct,ip6_opt_tunnel)
+T(struct,ip6_rthdr)
+T(struct,ip6_rthdr0)
+T(struct,ip_mreq)
+T(struct,ip_mreq_source)
+T(struct,ip_mreqn)
+T(struct,ip_msfilter)
+T(struct,ip_opts)
+T(struct,ip_timestamp)
+T(struct,ipc_perm)
+T(struct,iphdr)
+T(struct,ipv6_mreq)
+T(struct,itimerspec)
+T(struct,itimerval)
+T(struct,lastlog)
+T(struct,lconv)
+T(struct,linger)
+T(struct,link_map)
+T(struct,mld_hdr)
+T(struct,mmsghdr)
+T(struct,mntent)
+T(struct,mq_attr)
+T(struct,msgbuf)
+T(struct,msghdr)
+T(struct,msginfo)
+T(struct,msqid_ds)
+T(struct,mt_tape_info)
+T(struct,mtconfiginfo)
+T(struct,mtget)
+T(struct,mtop)
+T(struct,mtpos)
+T(struct,nd_neighbor_advert)
+T(struct,nd_neighbor_solicit)
+T(struct,nd_opt_adv_interval)
+T(struct,nd_opt_hdr)
+T(struct,nd_opt_home_agent_info)
+T(struct,nd_opt_mtu)
+T(struct,nd_opt_prefix_info)
+T(struct,nd_opt_rd_hdr)
+T(struct,nd_redirect)
+T(struct,nd_router_advert)
+T(struct,nd_router_solicit)
+T(struct,netent)
+T(struct,ns_tcp_tsig_state)
+T(struct,ns_tsig_key)
+T(struct,ntptimeval)
+T(struct,option)
+T(struct,packet_mreq)
+T(struct,passwd)
+T(struct,pollfd)
+T(struct,prctl_mm_map)
+T(struct,protoent)
+//T(struct,ptrace_peeksiginfo_args)
+T(struct,qelem)
+T(struct,r_debug)
+T(struct,re_pattern_buffer)
+T(struct,res_sym)
+T(struct,rlimit)
+T(struct,rr_pco_match)
+T(struct,rr_pco_use)
+T(struct,rr_result)
+T(struct,rtentry)
+T(struct,rusage)
+T(struct,sched_param)
+T(struct,sembuf)
+T(struct,semid_ds)
+T(struct,seminfo)
+T(struct,servent)
+T(struct,sg_header)
+T(struct,sg_io_hdr)
+T(struct,sg_iovec)
+T(struct,sg_req_info)
+T(struct,sg_scsi_id)
+T(struct,shm_info)
+T(struct,shmid_ds)
+T(struct,shminfo)
+T(struct,sigaction)
+T(struct,sigaltstack)
+T(struct,sigcontext)
+T(struct,sigevent)
+T(struct,signalfd_siginfo)
+T(struct,sockaddr)
+T(struct,sockaddr_in)
+T(struct,sockaddr_in6)
+T(struct,sockaddr_ll)
+T(struct,sockaddr_storage)
+T(struct,sockaddr_un)
+T(struct,spwd)
+T(struct,stat)
+T(struct,statfs)
+T(struct,statvfs)
+T(struct,str_list)
+T(struct,str_mlist)
+T(struct,strbuf)
+T(struct,strfdinsert)
+T(struct,strioctl)
+T(struct,strpeek)
+T(struct,strrecvfd)
+T(struct,sysinfo)
+T(struct,tcp_info)
+T(struct,tcp_md5sig)
+T(struct,tcphdr)
+T(struct,termios)
+T(struct,tftphdr)
+T(struct,timeb)
+T(struct,timespec)
+T(struct,timestamp)
+T(struct,timeval)
+T(struct,timex)
+T(struct,timezone)
+T(struct,tm)
+T(struct,tms)
+T(struct,ucred)
+T(struct,udphdr)
+T(struct,user_fpsimd_struct)
+T(struct,user_regs_struct)
+T(struct,utimbuf)
+T(struct,utmpx)
+T(struct,utsname)
+T(struct,winsize)
+T(,suseconds_t)
+T(,tcflag_t)
+//T(,tcp_seq)
+//T(,thrd_start_t)
+//T(,thrd_t)
+T(,time_t)
+T(,timer_t)
+//T(,tss_dtor_t)
+//T(,tss_t)
+T(,u_char)
+T(,u_int)
+T(,u_int16_t)
+T(,u_int32_t)
+T(,u_int64_t)
+T(,u_int8_t)
+T(,u_long)
+T(,u_quad_t)
+T(,u_short)
+T(,ucontext_t)
+T(,uid_t)
+T(,uint)
+T(,uint16_t)
+T(,uint32_t)
+T(,uint64_t)
+T(,uint8_t)
+T(,uint_fast16_t)
+T(,uint_fast32_t)
+T(,uint_fast64_t)
+T(,uint_fast8_t)
+T(,uint_least16_t)
+T(,uint_least32_t)
+T(,uint_least64_t)
+T(,uint_least8_t)
+T(,uintmax_t)
+T(,uintptr_t)
+T(,ulong)
+//T(union,_G_fpos64_t)
+T(union,epoll_data)
+T(union,sigval)
+T(,useconds_t)
+T(,ushort)
+T(,va_list)
+P(,void)
+T(,wchar_t)
+T(,wctrans_t)
+T(,wctype_t)
+T(,wint_t)
+T(,wordexp_t)
diff --git a/abi_type.arm.cc b/abi_type.arm.cc
new file mode 100644 (file)
index 0000000..0b16784
--- /dev/null
@@ -0,0 +1,652 @@
+
+#define _GNU_SOURCE 1
+#define _FILE_OFFSET_BITS 64
+#define SYSLOG_NAMES 1
+#include <stddef.h>
+#include <sys/types.h>
+
+#include <aio.h>
+#include <alloca.h>
+#include <ar.h>
+#include <arpa/ftp.h>
+#include <arpa/inet.h>
+#include <arpa/nameser.h>
+#include <arpa/telnet.h>
+#include <arpa/tftp.h>
+#include <assert.h>
+#include <byteswap.h>
+#include <complex.h>
+#include <cpio.h>
+#include <crypt.h>
+#include <ctype.h>
+#include <dirent.h>
+#include <dlfcn.h>
+#include <elf.h>
+#include <endian.h>
+#include <err.h>
+#include <errno.h>
+#include <fcntl.h>
+#include <features.h>
+#include <fenv.h>
+#include <float.h>
+#include <fmtmsg.h>
+#include <fnmatch.h>
+#include <ftw.h>
+#include <getopt.h>
+#include <glob.h>
+#include <grp.h>
+#include <iconv.h>
+#include <ifaddrs.h>
+#include <inttypes.h>
+#include <iso646.h>
+#include <langinfo.h>
+#include <libgen.h>
+#include <libintl.h>
+#include <limits.h>
+#include <link.h>
+#include <locale.h>
+#include <malloc.h>
+#include <math.h>
+#include <mntent.h>
+#include <monetary.h>
+#include <mqueue.h>
+#include <net/ethernet.h>
+#include <net/if.h>
+#include <net/if_arp.h>
+#include <net/route.h>
+#include <netdb.h>
+#include <netinet/ether.h>
+#include <netinet/icmp6.h>
+#include <netinet/if_ether.h>
+#include <netinet/igmp.h>
+#include <netinet/in.h>
+#include <netinet/in_systm.h>
+#include <netinet/ip.h>
+#include <netinet/ip6.h>
+#include <netinet/ip_icmp.h>
+#include <netinet/tcp.h>
+#include <netinet/udp.h>
+#include <netpacket/packet.h>
+#include <nl_types.h>
+#include <paths.h>
+#include <poll.h>
+#include <pthread.h>
+#include <pty.h>
+#include <pwd.h>
+#include <regex.h>
+#include <resolv.h>
+#include <sched.h>
+#include <scsi/scsi.h>
+#include <scsi/scsi_ioctl.h>
+#include <scsi/sg.h>
+#include <search.h>
+#include <semaphore.h>
+#include <setjmp.h>
+#include <shadow.h>
+#include <signal.h>
+#include <spawn.h>
+//#include <stdalign.h>
+#include <stdarg.h>
+#include <stdbool.h>
+#include <stddef.h>
+#include <stdint.h>
+#include <stdio.h>
+#include <stdio_ext.h>
+#include <stdlib.h>
+//#include <stdnoreturn.h>
+#include <string.h>
+#include <strings.h>
+#include <stropts.h>
+#include <sys/acct.h>
+//#include <sys/auxv.h>
+//#include <sys/cachectl.h>
+#include <sys/dir.h>
+#include <sys/epoll.h>
+#include <sys/eventfd.h>
+#include <sys/fanotify.h>
+#include <sys/file.h>
+#include <sys/fsuid.h>
+#include <sys/inotify.h>
+//#include <sys/io.h>
+#include <sys/ioctl.h>
+#include <sys/ipc.h>
+//#include <sys/kd.h>
+#include <sys/klog.h>
+#include <sys/mman.h>
+#include <sys/mount.h>
+#include <sys/msg.h>
+#include <sys/mtio.h>
+#include <sys/param.h>
+#include <sys/personality.h>
+#include <sys/prctl.h>
+#include <sys/procfs.h>
+#include <sys/ptrace.h>
+#include <sys/quota.h>
+#include <sys/reboot.h>
+//#include <sys/reg.h>
+#include <sys/resource.h>
+#include <sys/select.h>
+#include <sys/sem.h>
+#include <sys/sendfile.h>
+#include <sys/shm.h>
+#include <sys/signalfd.h>
+#include <sys/socket.h>
+#include <sys/stat.h>
+#include <sys/statfs.h>
+#include <sys/statvfs.h>
+#include <sys/swap.h>
+#include <sys/syscall.h>
+#include <sys/sysinfo.h>
+#include <sys/sysmacros.h>
+#include <sys/time.h>
+#include <sys/timeb.h>
+#include <sys/timerfd.h>
+#include <sys/times.h>
+#include <sys/timex.h>
+#include <sys/ttydefaults.h>
+#include <sys/types.h>
+#include <sys/uio.h>
+#include <sys/un.h>
+#include <sys/user.h>
+#include <sys/utsname.h>
+#include <sys/wait.h>
+#include <sys/xattr.h>
+#include <sysexits.h>
+#include <syslog.h>
+#include <tar.h>
+#include <termios.h>
+#include <tgmath.h>
+//#include <threads.h>
+#include <time.h>
+#include <uchar.h>
+#include <ucontext.h>
+#include <ulimit.h>
+#include <unistd.h>
+#include <utime.h>
+#include <utmp.h>
+#include <utmpx.h>
+#include <values.h>
+#include <wchar.h>
+#include <wctype.h>
+#include <wordexp.h>
+
+typedef long long long_long;
+typedef long double long_double;
+struct size {char c;};
+struct align {char c;};
+#define T(s,t) void x_##t(s t x, s t* ptr, size(*y)[sizeof(s t)], align(*z)[__alignof__(s t)]){}
+#define P(s,t) void y_##t(s t* ptr, size(*y)[sizeof(s t*)], align(*z)[__alignof__(s t*)]){}
+#ifdef __GLIBC__
+#define M(x)
+#else
+#define M(x) x
+#endif
+
+T(,ACTION)
+T(,CODE)
+P(,DIR)
+T(,Dl_info)
+T(,ENTRY)
+T(,Elf32_Addr)
+T(,Elf32_Conflict)
+T(,Elf32_Dyn)
+T(,Elf32_Ehdr)
+T(,Elf32_Half)
+T(,Elf32_Lib)
+T(,Elf32_Move)
+T(,Elf32_Nhdr)
+T(,Elf32_Off)
+T(,Elf32_Phdr)
+T(,Elf32_RegInfo)
+T(,Elf32_Rel)
+T(,Elf32_Rela)
+T(,Elf32_Section)
+T(,Elf32_Shdr)
+T(,Elf32_Sword)
+T(,Elf32_Sxword)
+T(,Elf32_Sym)
+T(,Elf32_Syminfo)
+T(,Elf32_Verdaux)
+T(,Elf32_Verdef)
+T(,Elf32_Vernaux)
+T(,Elf32_Verneed)
+T(,Elf32_Versym)
+T(,Elf32_Word)
+T(,Elf32_Xword)
+T(,Elf32_auxv_t)
+T(,Elf32_gptab)
+T(,Elf64_Addr)
+T(,Elf64_Dyn)
+T(,Elf64_Ehdr)
+T(,Elf64_Half)
+T(,Elf64_Lib)
+T(,Elf64_Move)
+T(,Elf64_Nhdr)
+T(,Elf64_Off)
+T(,Elf64_Phdr)
+T(,Elf64_Rel)
+T(,Elf64_Rela)
+T(,Elf64_Section)
+T(,Elf64_Shdr)
+T(,Elf64_Sword)
+T(,Elf64_Sxword)
+T(,Elf64_Sym)
+T(,Elf64_Syminfo)
+T(,Elf64_Verdaux)
+T(,Elf64_Verdef)
+T(,Elf64_Vernaux)
+T(,Elf64_Verneed)
+T(,Elf64_Versym)
+T(,Elf64_Word)
+T(,Elf64_Xword)
+T(,Elf64_auxv_t)
+T(,Elf_Options)
+T(,Elf_Options_Hw)
+T(,Elf_Symndx)
+P(,FILE)
+T(,HEADER)
+T(,Sg_io_hdr)
+//T(,Sg_io_vec)
+T(,Sg_req_info)
+T(,Sg_scsi_id)
+T(,VISIT)
+//T(,__isoc_va_list)
+T(,__jmp_buf)
+T(,blkcnt_t)
+T(,blksize_t)
+T(,bool)
+T(,caddr_t)
+T(,cc_t)
+T(,char)
+T(,char16_t)
+T(,char32_t)
+T(,clock_t)
+T(,clockid_t)
+//T(,cnd_t)
+T(,comp_t)
+T(,cpu_set_t)
+T(,dev_t)
+T(,div_t)
+T(,double)
+T(,double_t)
+T(,elf_fpregset_t)
+T(,elf_greg_t)
+T(,elf_gregset_t)
+T(,epoll_data_t)
+T(,eventfd_t)
+T(,fd_mask)
+T(,fd_set)
+T(,fenv_t)
+T(,fexcept_t)
+T(,float)
+T(,float_t)
+T(,fpos_t)
+T(,fsblkcnt_t)
+T(,fsfilcnt_t)
+T(,fsid_t)
+T(,gid_t)
+T(,glob_t)
+T(,greg_t)
+T(,gregset_t)
+T(,iconv_t)
+T(,id_t)
+T(,idtype_t)
+T(,imaxdiv_t)
+T(,in_addr_t)
+T(,in_port_t)
+T(,ino_t)
+T(,int)
+T(,int16_t)
+T(,int32_t)
+T(,int64_t)
+T(,int8_t)
+T(,int_fast16_t)
+T(,int_fast32_t)
+T(,int_fast64_t)
+T(,int_fast8_t)
+T(,int_least16_t)
+T(,int_least32_t)
+T(,int_least64_t)
+T(,int_least8_t)
+T(,intmax_t)
+T(,intptr_t)
+T(,jmp_buf)
+T(,key_t)
+T(,ldiv_t)
+T(,lldiv_t)
+T(,locale_t)
+T(,long)
+T(,long_double)
+T(,long_long)
+T(,lwpid_t)
+T(,max_align_t)
+T(,mbstate_t)
+T(,mcontext_t)
+T(,mode_t)
+T(,mqd_t)
+T(,msglen_t)
+T(,msgqnum_t)
+//T(,mtx_t)
+T(,n_long)
+T(,n_short)
+T(,n_time)
+T(,nfds_t)
+T(,nl_catd)
+T(,nl_item)
+T(,nlink_t)
+T(,ns_cert_types)
+T(,ns_class)
+T(,ns_flag)
+T(,ns_key_types)
+T(,ns_msg)
+T(,ns_opcode)
+T(,ns_rcode)
+T(,ns_rr)
+T(,ns_sect)
+//T(,ns_tcp_tsig_state)
+//T(,ns_tsig_key)
+T(,ns_type)
+T(,ns_update_operation)
+T(,off_t)
+//T(,once_flag)
+T(,pid_t)
+T(,posix_spawn_file_actions_t)
+T(,posix_spawnattr_t)
+T(,prfpregset_t)
+T(,prgregset_t)
+T(,prpsinfo_t)
+T(,prstatus_t)
+T(,psaddr_t)
+T(,pthread_attr_t)
+T(,pthread_barrier_t)
+T(,pthread_barrierattr_t)
+T(,pthread_cond_t)
+T(,pthread_condattr_t)
+T(,pthread_key_t)
+T(,pthread_mutex_t)
+T(,pthread_mutexattr_t)
+T(,pthread_once_t)
+T(,pthread_rwlock_t)
+T(,pthread_rwlockattr_t)
+T(,pthread_spinlock_t)
+T(,pthread_t)
+T(,ptrdiff_t)
+T(,quad_t)
+T(,regex_t)
+T(,register_t)
+T(,regmatch_t)
+T(,regoff_t)
+T(,res_state)
+T(,rlim_t)
+T(,sa_family_t)
+T(,sem_t)
+T(,sg_io_hdr_t)
+T(,sg_iovec_t)
+T(,sg_req_info_t)
+T(,shmatt_t)
+T(,short)
+T(,sig_atomic_t)
+T(,sig_t)
+T(,sighandler_t)
+T(,siginfo_t)
+T(,sigjmp_buf)
+T(,sigset_t)
+T(,size_t)
+T(,socklen_t)
+T(,speed_t)
+T(,ssize_t)
+T(,stack_t)
+T(struct,FTW)
+//T(struct,__fsid_t)
+T(struct,__jmp_buf_tag)
+//T(struct,__locale_struct)
+//T(struct,__mbstate_t)
+T(struct,__ns_msg)
+T(struct,__ns_rr)
+//T(struct,__ptcb)
+T(struct,__res_state)
+//T(struct,__sigset_t)
+//T(struct,__ucontext)
+T(struct,_ns_flagdata)
+T(struct,acct)
+T(struct,acct_v3)
+T(struct,addrinfo)
+T(struct,aiocb)
+T(struct,ar_hdr)
+T(struct,arpd_request)
+T(struct,arphdr)
+T(struct,arpreq)
+T(struct,arpreq_old)
+T(struct,bandinfo)
+T(struct,ccs_modesel_head)
+T(struct,cmsghdr)
+//T(struct,cpu_set_t)
+T(struct,crypt_data)
+T(struct,dirent)
+T(struct,dl_phdr_info)
+T(struct,dqblk)
+T(struct,dqinfo)
+T(struct,elf_prpsinfo)
+T(struct,elf_prstatus)
+T(struct,elf_siginfo)
+T(struct,entry)
+T(struct,epoll_event)
+T(struct,ether_addr)
+T(struct,ether_arp)
+T(struct,ether_header)
+T(struct,ethhdr)
+T(struct,f_owner_ex)
+T(struct,fanotify_event_metadata)
+T(struct,fanotify_response)
+T(struct,flock)
+T(struct,fp_reg)
+T(struct,group)
+T(struct,group_filter)
+T(struct,group_req)
+T(struct,group_source_req)
+T(struct,hostent)
+T(struct,hsearch_data)
+T(struct,icmp)
+T(struct,icmp6_filter)
+T(struct,icmp6_hdr)
+T(struct,icmp6_router_renum)
+T(struct,icmp_ra_addr)
+T(struct,icmphdr)
+T(struct,if_nameindex)
+T(struct,ifaddr)
+T(struct,ifaddrs)
+T(struct,ifconf)
+T(struct,ifmap)
+T(struct,ifreq)
+T(struct,igmp)
+//T(struct,ih_idseq)
+//T(struct,ih_pmtu)
+//T(struct,ih_rtradv)
+T(struct,in6_addr)
+T(struct,in6_pktinfo)
+T(struct,in6_rtmsg)
+T(struct,in_addr)
+T(struct,in_pktinfo)
+T(struct,inotify_event)
+T(struct,iovec)
+T(struct,ip)
+T(struct,ip6_dest)
+T(struct,ip6_ext)
+T(struct,ip6_frag)
+T(struct,ip6_hbh)
+T(struct,ip6_hdr)
+//T(struct,ip6_hdrctl)
+T(struct,ip6_mtuinfo)
+T(struct,ip6_opt)
+T(struct,ip6_opt_jumbo)
+T(struct,ip6_opt_nsap)
+T(struct,ip6_opt_router)
+T(struct,ip6_opt_tunnel)
+T(struct,ip6_rthdr)
+T(struct,ip6_rthdr0)
+T(struct,ip_mreq)
+T(struct,ip_mreq_source)
+T(struct,ip_mreqn)
+T(struct,ip_msfilter)
+T(struct,ip_opts)
+T(struct,ip_timestamp)
+T(struct,ipc_perm)
+T(struct,iphdr)
+T(struct,ipv6_mreq)
+T(struct,itimerspec)
+T(struct,itimerval)
+T(struct,lastlog)
+T(struct,lconv)
+T(struct,linger)
+T(struct,link_map)
+T(struct,mld_hdr)
+T(struct,mmsghdr)
+T(struct,mntent)
+T(struct,mq_attr)
+T(struct,msgbuf)
+T(struct,msghdr)
+T(struct,msginfo)
+T(struct,msqid_ds)
+T(struct,mt_tape_info)
+T(struct,mtconfiginfo)
+T(struct,mtget)
+T(struct,mtop)
+T(struct,mtpos)
+T(struct,nd_neighbor_advert)
+T(struct,nd_neighbor_solicit)
+T(struct,nd_opt_adv_interval)
+T(struct,nd_opt_hdr)
+T(struct,nd_opt_home_agent_info)
+T(struct,nd_opt_mtu)
+T(struct,nd_opt_prefix_info)
+T(struct,nd_opt_rd_hdr)
+T(struct,nd_redirect)
+T(struct,nd_router_advert)
+T(struct,nd_router_solicit)
+T(struct,netent)
+T(struct,ns_tcp_tsig_state)
+T(struct,ns_tsig_key)
+T(struct,ntptimeval)
+T(struct,option)
+T(struct,packet_mreq)
+T(struct,passwd)
+T(struct,pollfd)
+T(struct,prctl_mm_map)
+T(struct,protoent)
+//T(struct,ptrace_peeksiginfo_args)
+T(struct,qelem)
+T(struct,r_debug)
+T(struct,re_pattern_buffer)
+T(struct,res_sym)
+T(struct,rlimit)
+T(struct,rr_pco_match)
+T(struct,rr_pco_use)
+T(struct,rr_result)
+T(struct,rtentry)
+T(struct,rusage)
+T(struct,sched_param)
+T(struct,sembuf)
+T(struct,semid_ds)
+T(struct,seminfo)
+T(struct,servent)
+T(struct,sg_header)
+T(struct,sg_io_hdr)
+T(struct,sg_iovec)
+T(struct,sg_req_info)
+T(struct,sg_scsi_id)
+T(struct,shm_info)
+T(struct,shmid_ds)
+T(struct,shminfo)
+T(struct,sigaction)
+T(struct,sigaltstack)
+T(struct,sigcontext)
+T(struct,sigevent)
+T(struct,signalfd_siginfo)
+T(struct,sockaddr)
+T(struct,sockaddr_in)
+T(struct,sockaddr_in6)
+T(struct,sockaddr_ll)
+T(struct,sockaddr_storage)
+T(struct,sockaddr_un)
+T(struct,spwd)
+T(struct,stat)
+T(struct,statfs)
+T(struct,statvfs)
+T(struct,str_list)
+T(struct,str_mlist)
+T(struct,strbuf)
+T(struct,strfdinsert)
+T(struct,strioctl)
+T(struct,strpeek)
+T(struct,strrecvfd)
+T(struct,sysinfo)
+T(struct,tcp_info)
+T(struct,tcp_md5sig)
+T(struct,tcphdr)
+T(struct,termios)
+T(struct,tftphdr)
+T(struct,timeb)
+T(struct,timespec)
+T(struct,timestamp)
+T(struct,timeval)
+T(struct,timex)
+T(struct,timezone)
+T(struct,tm)
+T(struct,tms)
+T(struct,ucred)
+T(struct,udphdr)
+T(struct,user)
+T(struct,user_fpregs)
+T(struct,user_regs)
+T(struct,utimbuf)
+T(struct,utmpx)
+T(struct,utsname)
+T(struct,winsize)
+T(,suseconds_t)
+T(,tcflag_t)
+//T(,tcp_seq)
+//T(,thrd_start_t)
+//T(,thrd_t)
+T(,time_t)
+T(,timer_t)
+//T(,tss_dtor_t)
+//T(,tss_t)
+T(,u_char)
+T(,u_int)
+T(,u_int16_t)
+T(,u_int32_t)
+T(,u_int64_t)
+T(,u_int8_t)
+T(,u_long)
+T(,u_quad_t)
+T(,u_short)
+T(,ucontext_t)
+T(,uid_t)
+T(,uint)
+T(,uint16_t)
+T(,uint32_t)
+T(,uint64_t)
+T(,uint8_t)
+T(,uint_fast16_t)
+T(,uint_fast32_t)
+T(,uint_fast64_t)
+T(,uint_fast8_t)
+T(,uint_least16_t)
+T(,uint_least32_t)
+T(,uint_least64_t)
+T(,uint_least8_t)
+T(,uintmax_t)
+T(,uintptr_t)
+T(,ulong)
+//T(union,_G_fpos64_t)
+T(union,epoll_data)
+T(union,sigval)
+T(,useconds_t)
+T(,ushort)
+T(,va_list)
+P(,void)
+T(,wchar_t)
+T(,wctrans_t)
+T(,wctype_t)
+T(,wint_t)
+T(,wordexp_t)
diff --git a/abi_type.i386.cc b/abi_type.i386.cc
new file mode 100644 (file)
index 0000000..dda766b
--- /dev/null
@@ -0,0 +1,655 @@
+
+#define _GNU_SOURCE 1
+#define _FILE_OFFSET_BITS 64
+#define SYSLOG_NAMES 1
+#include <stddef.h>
+#include <sys/types.h>
+
+#include <aio.h>
+#include <alloca.h>
+#include <ar.h>
+#include <arpa/ftp.h>
+#include <arpa/inet.h>
+#include <arpa/nameser.h>
+#include <arpa/telnet.h>
+#include <arpa/tftp.h>
+#include <assert.h>
+#include <byteswap.h>
+#include <complex.h>
+#include <cpio.h>
+#include <crypt.h>
+#include <ctype.h>
+#include <dirent.h>
+#include <dlfcn.h>
+#include <elf.h>
+#include <endian.h>
+#include <err.h>
+#include <errno.h>
+#include <fcntl.h>
+#include <features.h>
+#include <fenv.h>
+#include <float.h>
+#include <fmtmsg.h>
+#include <fnmatch.h>
+#include <ftw.h>
+#include <getopt.h>
+#include <glob.h>
+#include <grp.h>
+#include <iconv.h>
+#include <ifaddrs.h>
+#include <inttypes.h>
+#include <iso646.h>
+#include <langinfo.h>
+#include <libgen.h>
+#include <libintl.h>
+#include <limits.h>
+#include <link.h>
+#include <locale.h>
+#include <malloc.h>
+#include <math.h>
+#include <mntent.h>
+#include <monetary.h>
+#include <mqueue.h>
+#include <net/ethernet.h>
+#include <net/if.h>
+#include <net/if_arp.h>
+#include <net/route.h>
+#include <netdb.h>
+#include <netinet/ether.h>
+#include <netinet/icmp6.h>
+#include <netinet/if_ether.h>
+#include <netinet/igmp.h>
+#include <netinet/in.h>
+#include <netinet/in_systm.h>
+#include <netinet/ip.h>
+#include <netinet/ip6.h>
+#include <netinet/ip_icmp.h>
+#include <netinet/tcp.h>
+#include <netinet/udp.h>
+#include <netpacket/packet.h>
+#include <nl_types.h>
+#include <paths.h>
+#include <poll.h>
+#include <pthread.h>
+#include <pty.h>
+#include <pwd.h>
+#include <regex.h>
+#include <resolv.h>
+#include <sched.h>
+#include <scsi/scsi.h>
+#include <scsi/scsi_ioctl.h>
+#include <scsi/sg.h>
+#include <search.h>
+#include <semaphore.h>
+#include <setjmp.h>
+#include <shadow.h>
+#include <signal.h>
+#include <spawn.h>
+//#include <stdalign.h>
+#include <stdarg.h>
+#include <stdbool.h>
+#include <stddef.h>
+#include <stdint.h>
+#include <stdio.h>
+#include <stdio_ext.h>
+#include <stdlib.h>
+//#include <stdnoreturn.h>
+#include <string.h>
+#include <strings.h>
+#include <stropts.h>
+#include <sys/acct.h>
+//#include <sys/auxv.h>
+//#include <sys/cachectl.h>
+#include <sys/dir.h>
+#include <sys/epoll.h>
+#include <sys/eventfd.h>
+#include <sys/fanotify.h>
+#include <sys/file.h>
+#include <sys/fsuid.h>
+#include <sys/inotify.h>
+//#include <sys/io.h>
+#include <sys/ioctl.h>
+#include <sys/ipc.h>
+//#include <sys/kd.h>
+#include <sys/klog.h>
+#include <sys/mman.h>
+#include <sys/mount.h>
+#include <sys/msg.h>
+#include <sys/mtio.h>
+#include <sys/param.h>
+#include <sys/personality.h>
+#include <sys/prctl.h>
+#include <sys/procfs.h>
+#include <sys/ptrace.h>
+#include <sys/quota.h>
+#include <sys/reboot.h>
+//#include <sys/reg.h>
+#include <sys/resource.h>
+#include <sys/select.h>
+#include <sys/sem.h>
+#include <sys/sendfile.h>
+#include <sys/shm.h>
+#include <sys/signalfd.h>
+#include <sys/socket.h>
+#include <sys/stat.h>
+#include <sys/statfs.h>
+#include <sys/statvfs.h>
+#include <sys/swap.h>
+#include <sys/syscall.h>
+#include <sys/sysinfo.h>
+#include <sys/sysmacros.h>
+#include <sys/time.h>
+#include <sys/timeb.h>
+#include <sys/timerfd.h>
+#include <sys/times.h>
+#include <sys/timex.h>
+#include <sys/ttydefaults.h>
+#include <sys/types.h>
+#include <sys/uio.h>
+#include <sys/un.h>
+#include <sys/user.h>
+#include <sys/utsname.h>
+#include <sys/wait.h>
+#include <sys/xattr.h>
+#include <sysexits.h>
+#include <syslog.h>
+#include <tar.h>
+#include <termios.h>
+#include <tgmath.h>
+//#include <threads.h>
+#include <time.h>
+#include <uchar.h>
+#include <ucontext.h>
+#include <ulimit.h>
+#include <unistd.h>
+#include <utime.h>
+#include <utmp.h>
+#include <utmpx.h>
+#include <values.h>
+#include <wchar.h>
+#include <wctype.h>
+#include <wordexp.h>
+
+typedef long long long_long;
+typedef long double long_double;
+struct size {char c;};
+struct align {char c;};
+#define T(s,t) void x_##t(s t x, s t* ptr, size(*y)[sizeof(s t)], align(*z)[__alignof__(s t)]){}
+#define P(s,t) void y_##t(s t* ptr, size(*y)[sizeof(s t*)], align(*z)[__alignof__(s t*)]){}
+#ifdef __GLIBC__
+#define M(x)
+#else
+#define M(x) x
+#endif
+
+T(,ACTION)
+T(,CODE)
+P(,DIR)
+T(,Dl_info)
+T(,ENTRY)
+T(,Elf32_Addr)
+T(,Elf32_Conflict)
+T(,Elf32_Dyn)
+T(,Elf32_Ehdr)
+T(,Elf32_Half)
+T(,Elf32_Lib)
+T(,Elf32_Move)
+T(,Elf32_Nhdr)
+T(,Elf32_Off)
+T(,Elf32_Phdr)
+T(,Elf32_RegInfo)
+T(,Elf32_Rel)
+T(,Elf32_Rela)
+T(,Elf32_Section)
+T(,Elf32_Shdr)
+T(,Elf32_Sword)
+T(,Elf32_Sxword)
+T(,Elf32_Sym)
+T(,Elf32_Syminfo)
+T(,Elf32_Verdaux)
+T(,Elf32_Verdef)
+T(,Elf32_Vernaux)
+T(,Elf32_Verneed)
+T(,Elf32_Versym)
+T(,Elf32_Word)
+T(,Elf32_Xword)
+T(,Elf32_auxv_t)
+T(,Elf32_gptab)
+T(,Elf64_Addr)
+T(,Elf64_Dyn)
+T(,Elf64_Ehdr)
+T(,Elf64_Half)
+T(,Elf64_Lib)
+T(,Elf64_Move)
+T(,Elf64_Nhdr)
+T(,Elf64_Off)
+T(,Elf64_Phdr)
+T(,Elf64_Rel)
+T(,Elf64_Rela)
+T(,Elf64_Section)
+T(,Elf64_Shdr)
+T(,Elf64_Sword)
+T(,Elf64_Sxword)
+T(,Elf64_Sym)
+T(,Elf64_Syminfo)
+T(,Elf64_Verdaux)
+T(,Elf64_Verdef)
+T(,Elf64_Vernaux)
+T(,Elf64_Verneed)
+T(,Elf64_Versym)
+T(,Elf64_Word)
+T(,Elf64_Xword)
+T(,Elf64_auxv_t)
+T(,Elf_Options)
+T(,Elf_Options_Hw)
+T(,Elf_Symndx)
+P(,FILE)
+T(,HEADER)
+T(,Sg_io_hdr)
+//T(,Sg_io_vec)
+T(,Sg_req_info)
+T(,Sg_scsi_id)
+T(,VISIT)
+//T(,__isoc_va_list)
+T(,__jmp_buf)
+T(,blkcnt_t)
+T(,blksize_t)
+T(,bool)
+T(,caddr_t)
+T(,cc_t)
+T(,char)
+T(,char16_t)
+T(,char32_t)
+T(,clock_t)
+T(,clockid_t)
+//T(,cnd_t)
+T(,comp_t)
+T(,cpu_set_t)
+T(,dev_t)
+T(,div_t)
+T(,double)
+T(,double_t)
+T(,elf_fpregset_t)
+//T(,elf_fpxregset_t)
+T(,elf_greg_t)
+T(,elf_gregset_t)
+T(,epoll_data_t)
+T(,eventfd_t)
+T(,fd_mask)
+T(,fd_set)
+T(,fenv_t)
+T(,fexcept_t)
+T(,float)
+T(,float_t)
+T(,fpos_t)
+T(,fpregset_t)
+T(,fsblkcnt_t)
+T(,fsfilcnt_t)
+T(,fsid_t)
+T(,gid_t)
+T(,glob_t)
+T(,greg_t)
+T(,gregset_t)
+T(,iconv_t)
+T(,id_t)
+T(,idtype_t)
+T(,imaxdiv_t)
+T(,in_addr_t)
+T(,in_port_t)
+T(,ino_t)
+T(,int)
+T(,int16_t)
+T(,int32_t)
+T(,int64_t)
+T(,int8_t)
+T(,int_fast16_t)
+T(,int_fast32_t)
+T(,int_fast64_t)
+T(,int_fast8_t)
+T(,int_least16_t)
+T(,int_least32_t)
+T(,int_least64_t)
+T(,int_least8_t)
+T(,intmax_t)
+T(,intptr_t)
+T(,jmp_buf)
+T(,key_t)
+T(,ldiv_t)
+T(,lldiv_t)
+T(,locale_t)
+T(,long)
+T(,long_double)
+T(,long_long)
+T(,lwpid_t)
+T(,max_align_t)
+T(,mbstate_t)
+T(,mcontext_t)
+T(,mode_t)
+T(,mqd_t)
+T(,msglen_t)
+T(,msgqnum_t)
+//T(,mtx_t)
+T(,n_long)
+T(,n_short)
+T(,n_time)
+T(,nfds_t)
+T(,nl_catd)
+T(,nl_item)
+T(,nlink_t)
+T(,ns_cert_types)
+T(,ns_class)
+T(,ns_flag)
+T(,ns_key_types)
+T(,ns_msg)
+T(,ns_opcode)
+T(,ns_rcode)
+T(,ns_rr)
+T(,ns_sect)
+//T(,ns_tcp_tsig_state)
+//T(,ns_tsig_key)
+T(,ns_type)
+T(,ns_update_operation)
+T(,off_t)
+//T(,once_flag)
+T(,pid_t)
+T(,posix_spawn_file_actions_t)
+T(,posix_spawnattr_t)
+T(,prfpregset_t)
+T(,prgregset_t)
+T(,prpsinfo_t)
+T(,prstatus_t)
+T(,psaddr_t)
+T(,pthread_attr_t)
+T(,pthread_barrier_t)
+T(,pthread_barrierattr_t)
+T(,pthread_cond_t)
+T(,pthread_condattr_t)
+T(,pthread_key_t)
+T(,pthread_mutex_t)
+T(,pthread_mutexattr_t)
+T(,pthread_once_t)
+T(,pthread_rwlock_t)
+T(,pthread_rwlockattr_t)
+T(,pthread_spinlock_t)
+T(,pthread_t)
+T(,ptrdiff_t)
+T(,quad_t)
+T(,regex_t)
+T(,register_t)
+T(,regmatch_t)
+T(,regoff_t)
+T(,res_state)
+T(,rlim_t)
+T(,sa_family_t)
+T(,sem_t)
+T(,sg_io_hdr_t)
+T(,sg_iovec_t)
+T(,sg_req_info_t)
+T(,shmatt_t)
+T(,short)
+T(,sig_atomic_t)
+T(,sig_t)
+T(,sighandler_t)
+T(,siginfo_t)
+T(,sigjmp_buf)
+T(,sigset_t)
+T(,size_t)
+T(,socklen_t)
+T(,speed_t)
+T(,ssize_t)
+T(,stack_t)
+T(struct,FTW)
+//T(struct,__fsid_t)
+T(struct,__jmp_buf_tag)
+//T(struct,__locale_struct)
+//T(struct,__mbstate_t)
+T(struct,__ns_msg)
+T(struct,__ns_rr)
+//T(struct,__ptcb)
+T(struct,__res_state)
+//T(struct,__sigset_t)
+//T(struct,__ucontext)
+T(struct,_fpstate)
+T(struct,_ns_flagdata)
+T(struct,acct)
+T(struct,acct_v3)
+T(struct,addrinfo)
+T(struct,aiocb)
+T(struct,ar_hdr)
+T(struct,arpd_request)
+T(struct,arphdr)
+T(struct,arpreq)
+T(struct,arpreq_old)
+T(struct,bandinfo)
+T(struct,ccs_modesel_head)
+T(struct,cmsghdr)
+//T(struct,cpu_set_t)
+T(struct,crypt_data)
+T(struct,dirent)
+T(struct,dl_phdr_info)
+T(struct,dqblk)
+T(struct,dqinfo)
+T(struct,elf_prpsinfo)
+T(struct,elf_prstatus)
+T(struct,elf_siginfo)
+T(struct,entry)
+T(struct,epoll_event)
+T(struct,ether_addr)
+T(struct,ether_arp)
+T(struct,ether_header)
+T(struct,ethhdr)
+T(struct,f_owner_ex)
+T(struct,fanotify_event_metadata)
+T(struct,fanotify_response)
+T(struct,flock)
+T(struct,group)
+T(struct,group_filter)
+T(struct,group_req)
+T(struct,group_source_req)
+T(struct,hostent)
+T(struct,hsearch_data)
+T(struct,icmp)
+T(struct,icmp6_filter)
+T(struct,icmp6_hdr)
+T(struct,icmp6_router_renum)
+T(struct,icmp_ra_addr)
+T(struct,icmphdr)
+T(struct,if_nameindex)
+T(struct,ifaddr)
+T(struct,ifaddrs)
+T(struct,ifconf)
+T(struct,ifmap)
+T(struct,ifreq)
+T(struct,igmp)
+//T(struct,ih_idseq)
+//T(struct,ih_pmtu)
+//T(struct,ih_rtradv)
+T(struct,in6_addr)
+T(struct,in6_pktinfo)
+T(struct,in6_rtmsg)
+T(struct,in_addr)
+T(struct,in_pktinfo)
+T(struct,inotify_event)
+T(struct,iovec)
+T(struct,ip)
+T(struct,ip6_dest)
+T(struct,ip6_ext)
+T(struct,ip6_frag)
+T(struct,ip6_hbh)
+T(struct,ip6_hdr)
+//T(struct,ip6_hdrctl)
+T(struct,ip6_mtuinfo)
+T(struct,ip6_opt)
+T(struct,ip6_opt_jumbo)
+T(struct,ip6_opt_nsap)
+T(struct,ip6_opt_router)
+T(struct,ip6_opt_tunnel)
+T(struct,ip6_rthdr)
+T(struct,ip6_rthdr0)
+T(struct,ip_mreq)
+T(struct,ip_mreq_source)
+T(struct,ip_mreqn)
+T(struct,ip_msfilter)
+T(struct,ip_opts)
+T(struct,ip_timestamp)
+T(struct,ipc_perm)
+T(struct,iphdr)
+T(struct,ipv6_mreq)
+T(struct,itimerspec)
+T(struct,itimerval)
+T(struct,lastlog)
+T(struct,lconv)
+T(struct,linger)
+T(struct,link_map)
+T(struct,mld_hdr)
+T(struct,mmsghdr)
+T(struct,mntent)
+T(struct,mq_attr)
+T(struct,msgbuf)
+T(struct,msghdr)
+T(struct,msginfo)
+T(struct,msqid_ds)
+T(struct,mt_tape_info)
+T(struct,mtconfiginfo)
+T(struct,mtget)
+T(struct,mtop)
+T(struct,mtpos)
+T(struct,nd_neighbor_advert)
+T(struct,nd_neighbor_solicit)
+T(struct,nd_opt_adv_interval)
+T(struct,nd_opt_hdr)
+T(struct,nd_opt_home_agent_info)
+T(struct,nd_opt_mtu)
+T(struct,nd_opt_prefix_info)
+T(struct,nd_opt_rd_hdr)
+T(struct,nd_redirect)
+T(struct,nd_router_advert)
+T(struct,nd_router_solicit)
+T(struct,netent)
+T(struct,ns_tcp_tsig_state)
+T(struct,ns_tsig_key)
+T(struct,ntptimeval)
+T(struct,option)
+T(struct,packet_mreq)
+T(struct,passwd)
+T(struct,pollfd)
+T(struct,prctl_mm_map)
+T(struct,protoent)
+//T(struct,ptrace_peeksiginfo_args)
+T(struct,qelem)
+T(struct,r_debug)
+T(struct,re_pattern_buffer)
+T(struct,res_sym)
+T(struct,rlimit)
+T(struct,rr_pco_match)
+T(struct,rr_pco_use)
+T(struct,rr_result)
+T(struct,rtentry)
+T(struct,rusage)
+T(struct,sched_param)
+T(struct,sembuf)
+T(struct,semid_ds)
+T(struct,seminfo)
+T(struct,servent)
+T(struct,sg_header)
+T(struct,sg_io_hdr)
+T(struct,sg_iovec)
+T(struct,sg_req_info)
+T(struct,sg_scsi_id)
+T(struct,shm_info)
+T(struct,shmid_ds)
+T(struct,shminfo)
+T(struct,sigaction)
+T(struct,sigaltstack)
+T(struct,sigcontext)
+T(struct,sigevent)
+T(struct,signalfd_siginfo)
+T(struct,sockaddr)
+T(struct,sockaddr_in)
+T(struct,sockaddr_in6)
+T(struct,sockaddr_ll)
+T(struct,sockaddr_storage)
+T(struct,sockaddr_un)
+T(struct,spwd)
+T(struct,stat)
+T(struct,statfs)
+T(struct,statvfs)
+T(struct,str_list)
+T(struct,str_mlist)
+T(struct,strbuf)
+T(struct,strfdinsert)
+T(struct,strioctl)
+T(struct,strpeek)
+T(struct,strrecvfd)
+T(struct,sysinfo)
+T(struct,tcp_info)
+T(struct,tcp_md5sig)
+T(struct,tcphdr)
+T(struct,termios)
+T(struct,tftphdr)
+T(struct,timeb)
+T(struct,timespec)
+T(struct,timestamp)
+T(struct,timeval)
+T(struct,timex)
+T(struct,timezone)
+T(struct,tm)
+T(struct,tms)
+T(struct,ucred)
+T(struct,udphdr)
+T(struct,user)
+T(struct,user_fpregs_struct)
+//T(struct,user_fpxregs_struct)
+T(struct,user_regs_struct)
+T(struct,utimbuf)
+T(struct,utmpx)
+T(struct,utsname)
+T(struct,winsize)
+T(,suseconds_t)
+T(,tcflag_t)
+//T(,tcp_seq)
+//T(,thrd_start_t)
+//T(,thrd_t)
+T(,time_t)
+T(,timer_t)
+//T(,tss_dtor_t)
+//T(,tss_t)
+T(,u_char)
+T(,u_int)
+T(,u_int16_t)
+T(,u_int32_t)
+T(,u_int64_t)
+T(,u_int8_t)
+T(,u_long)
+T(,u_quad_t)
+T(,u_short)
+T(,ucontext_t)
+T(,uid_t)
+T(,uint)
+T(,uint16_t)
+T(,uint32_t)
+T(,uint64_t)
+T(,uint8_t)
+T(,uint_fast16_t)
+T(,uint_fast32_t)
+T(,uint_fast64_t)
+T(,uint_fast8_t)
+T(,uint_least16_t)
+T(,uint_least32_t)
+T(,uint_least64_t)
+T(,uint_least8_t)
+T(,uintmax_t)
+T(,uintptr_t)
+T(,ulong)
+//T(union,_G_fpos64_t)
+T(union,epoll_data)
+T(union,sigval)
+T(,useconds_t)
+T(,ushort)
+T(,va_list)
+P(,void)
+T(,wchar_t)
+T(,wctrans_t)
+T(,wctype_t)
+T(,wint_t)
+T(,wordexp_t)
diff --git a/abi_type.microblaze.cc b/abi_type.microblaze.cc
new file mode 100644 (file)
index 0000000..2492330
--- /dev/null
@@ -0,0 +1,645 @@
+
+#define _GNU_SOURCE 1
+#define _FILE_OFFSET_BITS 64
+#define SYSLOG_NAMES 1
+#include <stddef.h>
+#include <sys/types.h>
+
+#include <aio.h>
+#include <alloca.h>
+#include <ar.h>
+#include <arpa/ftp.h>
+#include <arpa/inet.h>
+#include <arpa/nameser.h>
+#include <arpa/telnet.h>
+#include <arpa/tftp.h>
+#include <assert.h>
+#include <byteswap.h>
+#include <complex.h>
+#include <cpio.h>
+#include <crypt.h>
+#include <ctype.h>
+#include <dirent.h>
+#include <dlfcn.h>
+#include <elf.h>
+#include <endian.h>
+#include <err.h>
+#include <errno.h>
+#include <fcntl.h>
+#include <features.h>
+#include <fenv.h>
+#include <float.h>
+#include <fmtmsg.h>
+#include <fnmatch.h>
+#include <ftw.h>
+#include <getopt.h>
+#include <glob.h>
+#include <grp.h>
+#include <iconv.h>
+#include <ifaddrs.h>
+#include <inttypes.h>
+#include <iso646.h>
+#include <langinfo.h>
+#include <libgen.h>
+#include <libintl.h>
+#include <limits.h>
+#include <link.h>
+#include <locale.h>
+#include <malloc.h>
+#include <math.h>
+#include <mntent.h>
+#include <monetary.h>
+#include <mqueue.h>
+#include <net/ethernet.h>
+#include <net/if.h>
+#include <net/if_arp.h>
+#include <net/route.h>
+#include <netdb.h>
+#include <netinet/ether.h>
+#include <netinet/icmp6.h>
+#include <netinet/if_ether.h>
+#include <netinet/igmp.h>
+#include <netinet/in.h>
+#include <netinet/in_systm.h>
+#include <netinet/ip.h>
+#include <netinet/ip6.h>
+#include <netinet/ip_icmp.h>
+#include <netinet/tcp.h>
+#include <netinet/udp.h>
+#include <netpacket/packet.h>
+#include <nl_types.h>
+#include <paths.h>
+#include <poll.h>
+#include <pthread.h>
+#include <pty.h>
+#include <pwd.h>
+#include <regex.h>
+#include <resolv.h>
+#include <sched.h>
+#include <scsi/scsi.h>
+#include <scsi/scsi_ioctl.h>
+#include <scsi/sg.h>
+#include <search.h>
+#include <semaphore.h>
+#include <setjmp.h>
+#include <shadow.h>
+#include <signal.h>
+#include <spawn.h>
+//#include <stdalign.h>
+#include <stdarg.h>
+#include <stdbool.h>
+#include <stddef.h>
+#include <stdint.h>
+#include <stdio.h>
+#include <stdio_ext.h>
+#include <stdlib.h>
+//#include <stdnoreturn.h>
+#include <string.h>
+#include <strings.h>
+#include <stropts.h>
+#include <sys/acct.h>
+//#include <sys/auxv.h>
+//#include <sys/cachectl.h>
+#include <sys/dir.h>
+#include <sys/epoll.h>
+#include <sys/eventfd.h>
+#include <sys/fanotify.h>
+#include <sys/file.h>
+#include <sys/fsuid.h>
+#include <sys/inotify.h>
+//#include <sys/io.h>
+#include <sys/ioctl.h>
+#include <sys/ipc.h>
+//#include <sys/kd.h>
+#include <sys/klog.h>
+#include <sys/mman.h>
+#include <sys/mount.h>
+#include <sys/msg.h>
+#include <sys/mtio.h>
+#include <sys/param.h>
+#include <sys/personality.h>
+#include <sys/prctl.h>
+#include <sys/procfs.h>
+#include <sys/ptrace.h>
+#include <sys/quota.h>
+#include <sys/reboot.h>
+//#include <sys/reg.h>
+#include <sys/resource.h>
+#include <sys/select.h>
+#include <sys/sem.h>
+#include <sys/sendfile.h>
+#include <sys/shm.h>
+#include <sys/signalfd.h>
+#include <sys/socket.h>
+#include <sys/stat.h>
+#include <sys/statfs.h>
+#include <sys/statvfs.h>
+#include <sys/swap.h>
+#include <sys/syscall.h>
+#include <sys/sysinfo.h>
+#include <sys/sysmacros.h>
+#include <sys/time.h>
+#include <sys/timeb.h>
+#include <sys/timerfd.h>
+#include <sys/times.h>
+#include <sys/timex.h>
+#include <sys/ttydefaults.h>
+#include <sys/types.h>
+#include <sys/uio.h>
+#include <sys/un.h>
+#include <sys/user.h>
+#include <sys/utsname.h>
+#include <sys/wait.h>
+#include <sys/xattr.h>
+#include <sysexits.h>
+#include <syslog.h>
+#include <tar.h>
+#include <termios.h>
+#include <tgmath.h>
+//#include <threads.h>
+#include <time.h>
+#include <uchar.h>
+#include <ucontext.h>
+#include <ulimit.h>
+#include <unistd.h>
+#include <utime.h>
+#include <utmp.h>
+#include <utmpx.h>
+#include <values.h>
+#include <wchar.h>
+#include <wctype.h>
+#include <wordexp.h>
+
+typedef long long long_long;
+typedef long double long_double;
+struct size {char c;};
+struct align {char c;};
+#define T(s,t) void x_##t(s t x, s t* ptr, size(*y)[sizeof(s t)], align(*z)[__alignof__(s t)]){}
+#define P(s,t) void y_##t(s t* ptr, size(*y)[sizeof(s t*)], align(*z)[__alignof__(s t*)]){}
+#ifdef __GLIBC__
+#define M(x)
+#else
+#define M(x) x
+#endif
+
+T(,ACTION)
+T(,CODE)
+P(,DIR)
+T(,Dl_info)
+T(,ENTRY)
+T(,Elf32_Addr)
+T(,Elf32_Conflict)
+T(,Elf32_Dyn)
+T(,Elf32_Ehdr)
+T(,Elf32_Half)
+T(,Elf32_Lib)
+T(,Elf32_Move)
+T(,Elf32_Nhdr)
+T(,Elf32_Off)
+T(,Elf32_Phdr)
+T(,Elf32_RegInfo)
+T(,Elf32_Rel)
+T(,Elf32_Rela)
+T(,Elf32_Section)
+T(,Elf32_Shdr)
+T(,Elf32_Sword)
+T(,Elf32_Sxword)
+T(,Elf32_Sym)
+T(,Elf32_Syminfo)
+T(,Elf32_Verdaux)
+T(,Elf32_Verdef)
+T(,Elf32_Vernaux)
+T(,Elf32_Verneed)
+T(,Elf32_Versym)
+T(,Elf32_Word)
+T(,Elf32_Xword)
+T(,Elf32_auxv_t)
+T(,Elf32_gptab)
+T(,Elf64_Addr)
+T(,Elf64_Dyn)
+T(,Elf64_Ehdr)
+T(,Elf64_Half)
+T(,Elf64_Lib)
+T(,Elf64_Move)
+T(,Elf64_Nhdr)
+T(,Elf64_Off)
+T(,Elf64_Phdr)
+T(,Elf64_Rel)
+T(,Elf64_Rela)
+T(,Elf64_Section)
+T(,Elf64_Shdr)
+T(,Elf64_Sword)
+T(,Elf64_Sxword)
+T(,Elf64_Sym)
+T(,Elf64_Syminfo)
+T(,Elf64_Verdaux)
+T(,Elf64_Verdef)
+T(,Elf64_Vernaux)
+T(,Elf64_Verneed)
+T(,Elf64_Versym)
+T(,Elf64_Word)
+T(,Elf64_Xword)
+T(,Elf64_auxv_t)
+T(,Elf_Options)
+T(,Elf_Options_Hw)
+T(,Elf_Symndx)
+P(,FILE)
+T(,HEADER)
+T(,Sg_io_hdr)
+//T(,Sg_io_vec)
+T(,Sg_req_info)
+T(,Sg_scsi_id)
+T(,VISIT)
+//T(,__isoc_va_list)
+T(,__jmp_buf)
+T(,blkcnt_t)
+T(,blksize_t)
+T(,bool)
+T(,caddr_t)
+T(,cc_t)
+T(,char)
+T(,char16_t)
+T(,char32_t)
+T(,clock_t)
+T(,clockid_t)
+//T(,cnd_t)
+T(,comp_t)
+T(,cpu_set_t)
+T(,dev_t)
+T(,div_t)
+T(,double)
+T(,double_t)
+T(,epoll_data_t)
+T(,eventfd_t)
+T(,fd_mask)
+T(,fd_set)
+T(,fenv_t)
+T(,fexcept_t)
+T(,float)
+T(,float_t)
+T(,fpos_t)
+T(,fsblkcnt_t)
+T(,fsfilcnt_t)
+T(,fsid_t)
+T(,gid_t)
+T(,glob_t)
+T(,greg_t)
+T(,gregset_t)
+T(,iconv_t)
+T(,id_t)
+T(,idtype_t)
+T(,imaxdiv_t)
+T(,in_addr_t)
+T(,in_port_t)
+T(,ino_t)
+T(,int)
+T(,int16_t)
+T(,int32_t)
+T(,int64_t)
+T(,int8_t)
+T(,int_fast16_t)
+T(,int_fast32_t)
+T(,int_fast64_t)
+T(,int_fast8_t)
+T(,int_least16_t)
+T(,int_least32_t)
+T(,int_least64_t)
+T(,int_least8_t)
+T(,intmax_t)
+T(,intptr_t)
+T(,jmp_buf)
+T(,key_t)
+T(,ldiv_t)
+T(,lldiv_t)
+T(,locale_t)
+T(,long)
+T(,long_double)
+T(,long_long)
+T(,lwpid_t)
+T(,max_align_t)
+T(,mbstate_t)
+T(,mcontext_t)
+T(,mode_t)
+T(,mqd_t)
+T(,msglen_t)
+T(,msgqnum_t)
+//T(,mtx_t)
+T(,n_long)
+T(,n_short)
+T(,n_time)
+T(,nfds_t)
+T(,nl_catd)
+T(,nl_item)
+T(,nlink_t)
+T(,ns_cert_types)
+T(,ns_class)
+T(,ns_flag)
+T(,ns_key_types)
+T(,ns_msg)
+T(,ns_opcode)
+T(,ns_rcode)
+T(,ns_rr)
+T(,ns_sect)
+//T(,ns_tcp_tsig_state)
+//T(,ns_tsig_key)
+T(,ns_type)
+T(,ns_update_operation)
+T(,off_t)
+//T(,once_flag)
+T(,pid_t)
+T(,posix_spawn_file_actions_t)
+T(,posix_spawnattr_t)
+T(,prfpregset_t)
+T(,prgregset_t)
+T(,prpsinfo_t)
+T(,prstatus_t)
+T(,psaddr_t)
+T(,pthread_attr_t)
+T(,pthread_barrier_t)
+T(,pthread_barrierattr_t)
+T(,pthread_cond_t)
+T(,pthread_condattr_t)
+T(,pthread_key_t)
+T(,pthread_mutex_t)
+T(,pthread_mutexattr_t)
+T(,pthread_once_t)
+T(,pthread_rwlock_t)
+T(,pthread_rwlockattr_t)
+T(,pthread_spinlock_t)
+T(,pthread_t)
+T(,ptrdiff_t)
+T(,quad_t)
+T(,regex_t)
+T(,register_t)
+T(,regmatch_t)
+T(,regoff_t)
+T(,res_state)
+T(,rlim_t)
+T(,sa_family_t)
+T(,sem_t)
+T(,sg_io_hdr_t)
+T(,sg_iovec_t)
+T(,sg_req_info_t)
+T(,shmatt_t)
+T(,short)
+T(,sig_atomic_t)
+T(,sig_t)
+T(,sighandler_t)
+T(,siginfo_t)
+T(,sigjmp_buf)
+T(,sigset_t)
+T(,size_t)
+T(,socklen_t)
+T(,speed_t)
+T(,ssize_t)
+T(,stack_t)
+T(struct,FTW)
+//T(struct,__fsid_t)
+T(struct,__jmp_buf_tag)
+//T(struct,__locale_struct)
+//T(struct,__mbstate_t)
+T(struct,__ns_msg)
+T(struct,__ns_rr)
+//T(struct,__ptcb)
+T(struct,__res_state)
+//T(struct,__sigset_t)
+//T(struct,__ucontext)
+T(struct,_ns_flagdata)
+T(struct,acct)
+T(struct,acct_v3)
+T(struct,addrinfo)
+T(struct,aiocb)
+T(struct,ar_hdr)
+T(struct,arpd_request)
+T(struct,arphdr)
+T(struct,arpreq)
+T(struct,arpreq_old)
+T(struct,bandinfo)
+T(struct,ccs_modesel_head)
+T(struct,cmsghdr)
+//T(struct,cpu_set_t)
+T(struct,crypt_data)
+T(struct,dirent)
+T(struct,dl_phdr_info)
+T(struct,dqblk)
+T(struct,dqinfo)
+T(struct,elf_prpsinfo)
+T(struct,elf_prstatus)
+T(struct,elf_siginfo)
+T(struct,entry)
+T(struct,epoll_event)
+T(struct,ether_addr)
+T(struct,ether_arp)
+T(struct,ether_header)
+T(struct,ethhdr)
+T(struct,f_owner_ex)
+T(struct,fanotify_event_metadata)
+T(struct,fanotify_response)
+T(struct,flock)
+T(struct,group)
+T(struct,group_filter)
+T(struct,group_req)
+T(struct,group_source_req)
+T(struct,hostent)
+T(struct,hsearch_data)
+T(struct,icmp)
+T(struct,icmp6_filter)
+T(struct,icmp6_hdr)
+T(struct,icmp6_router_renum)
+T(struct,icmp_ra_addr)
+T(struct,icmphdr)
+T(struct,if_nameindex)
+T(struct,ifaddr)
+T(struct,ifaddrs)
+T(struct,ifconf)
+T(struct,ifmap)
+T(struct,ifreq)
+T(struct,igmp)
+//T(struct,ih_idseq)
+//T(struct,ih_pmtu)
+//T(struct,ih_rtradv)
+T(struct,in6_addr)
+T(struct,in6_pktinfo)
+T(struct,in6_rtmsg)
+T(struct,in_addr)
+T(struct,in_pktinfo)
+T(struct,inotify_event)
+T(struct,iovec)
+T(struct,ip)
+T(struct,ip6_dest)
+T(struct,ip6_ext)
+T(struct,ip6_frag)
+T(struct,ip6_hbh)
+T(struct,ip6_hdr)
+//T(struct,ip6_hdrctl)
+T(struct,ip6_mtuinfo)
+T(struct,ip6_opt)
+T(struct,ip6_opt_jumbo)
+T(struct,ip6_opt_nsap)
+T(struct,ip6_opt_router)
+T(struct,ip6_opt_tunnel)
+T(struct,ip6_rthdr)
+T(struct,ip6_rthdr0)
+T(struct,ip_mreq)
+T(struct,ip_mreq_source)
+T(struct,ip_mreqn)
+T(struct,ip_msfilter)
+T(struct,ip_opts)
+T(struct,ip_timestamp)
+T(struct,ipc_perm)
+T(struct,iphdr)
+T(struct,ipv6_mreq)
+T(struct,itimerspec)
+T(struct,itimerval)
+T(struct,lastlog)
+T(struct,lconv)
+T(struct,linger)
+T(struct,link_map)
+T(struct,mld_hdr)
+T(struct,mmsghdr)
+T(struct,mntent)
+T(struct,mq_attr)
+T(struct,msgbuf)
+T(struct,msghdr)
+T(struct,msginfo)
+T(struct,msqid_ds)
+T(struct,mt_tape_info)
+T(struct,mtconfiginfo)
+T(struct,mtget)
+T(struct,mtop)
+T(struct,mtpos)
+T(struct,nd_neighbor_advert)
+T(struct,nd_neighbor_solicit)
+T(struct,nd_opt_adv_interval)
+T(struct,nd_opt_hdr)
+T(struct,nd_opt_home_agent_info)
+T(struct,nd_opt_mtu)
+T(struct,nd_opt_prefix_info)
+T(struct,nd_opt_rd_hdr)
+T(struct,nd_redirect)
+T(struct,nd_router_advert)
+T(struct,nd_router_solicit)
+T(struct,netent)
+T(struct,ns_tcp_tsig_state)
+T(struct,ns_tsig_key)
+T(struct,ntptimeval)
+T(struct,option)
+T(struct,packet_mreq)
+T(struct,passwd)
+T(struct,pollfd)
+T(struct,prctl_mm_map)
+T(struct,protoent)
+//T(struct,ptrace_peeksiginfo_args)
+T(struct,qelem)
+T(struct,r_debug)
+T(struct,re_pattern_buffer)
+T(struct,res_sym)
+T(struct,rlimit)
+T(struct,rr_pco_match)
+T(struct,rr_pco_use)
+T(struct,rr_result)
+T(struct,rtentry)
+T(struct,rusage)
+T(struct,sched_param)
+T(struct,sembuf)
+T(struct,semid_ds)
+T(struct,seminfo)
+T(struct,servent)
+T(struct,sg_header)
+T(struct,sg_io_hdr)
+T(struct,sg_iovec)
+T(struct,sg_req_info)
+T(struct,sg_scsi_id)
+T(struct,shm_info)
+T(struct,shmid_ds)
+T(struct,shminfo)
+T(struct,sigaction)
+T(struct,sigaltstack)
+T(struct,sigcontext)
+T(struct,sigevent)
+T(struct,signalfd_siginfo)
+T(struct,sockaddr)
+T(struct,sockaddr_in)
+T(struct,sockaddr_in6)
+T(struct,sockaddr_ll)
+T(struct,sockaddr_storage)
+T(struct,sockaddr_un)
+T(struct,spwd)
+T(struct,stat)
+T(struct,statfs)
+T(struct,statvfs)
+T(struct,str_list)
+T(struct,str_mlist)
+T(struct,strbuf)
+T(struct,strfdinsert)
+T(struct,strioctl)
+T(struct,strpeek)
+T(struct,strrecvfd)
+T(struct,sysinfo)
+T(struct,tcp_info)
+T(struct,tcp_md5sig)
+T(struct,tcphdr)
+T(struct,termios)
+T(struct,tftphdr)
+T(struct,timeb)
+T(struct,timespec)
+T(struct,timestamp)
+T(struct,timeval)
+T(struct,timex)
+T(struct,timezone)
+T(struct,tm)
+T(struct,tms)
+T(struct,ucred)
+T(struct,udphdr)
+T(struct,utimbuf)
+T(struct,utmpx)
+T(struct,utsname)
+T(struct,winsize)
+T(,suseconds_t)
+T(,tcflag_t)
+//T(,tcp_seq)
+//T(,thrd_start_t)
+//T(,thrd_t)
+T(,time_t)
+T(,timer_t)
+//T(,tss_dtor_t)
+//T(,tss_t)
+T(,u_char)
+T(,u_int)
+T(,u_int16_t)
+T(,u_int32_t)
+T(,u_int64_t)
+T(,u_int8_t)
+T(,u_long)
+T(,u_quad_t)
+T(,u_short)
+T(,ucontext_t)
+T(,uid_t)
+T(,uint)
+T(,uint16_t)
+T(,uint32_t)
+T(,uint64_t)
+T(,uint8_t)
+T(,uint_fast16_t)
+T(,uint_fast32_t)
+T(,uint_fast64_t)
+T(,uint_fast8_t)
+T(,uint_least16_t)
+T(,uint_least32_t)
+T(,uint_least64_t)
+T(,uint_least8_t)
+T(,uintmax_t)
+T(,uintptr_t)
+T(,ulong)
+//T(union,_G_fpos64_t)
+T(union,epoll_data)
+T(union,sigval)
+T(,useconds_t)
+T(,ushort)
+T(,va_list)
+P(,void)
+T(,wchar_t)
+T(,wctrans_t)
+T(,wctype_t)
+T(,wint_t)
+T(,wordexp_t)
diff --git a/abi_type.mips.cc b/abi_type.mips.cc
new file mode 100644 (file)
index 0000000..42c51a4
--- /dev/null
@@ -0,0 +1,651 @@
+
+#define _GNU_SOURCE 1
+#define _FILE_OFFSET_BITS 64
+#define SYSLOG_NAMES 1
+#include <stddef.h>
+#include <sys/types.h>
+
+#include <aio.h>
+#include <alloca.h>
+#include <ar.h>
+#include <arpa/ftp.h>
+#include <arpa/inet.h>
+#include <arpa/nameser.h>
+#include <arpa/telnet.h>
+#include <arpa/tftp.h>
+#include <assert.h>
+#include <byteswap.h>
+#include <complex.h>
+#include <cpio.h>
+#include <crypt.h>
+#include <ctype.h>
+#include <dirent.h>
+#include <dlfcn.h>
+#include <elf.h>
+#include <endian.h>
+#include <err.h>
+#include <errno.h>
+#include <fcntl.h>
+#include <features.h>
+#include <fenv.h>
+#include <float.h>
+#include <fmtmsg.h>
+#include <fnmatch.h>
+#include <ftw.h>
+#include <getopt.h>
+#include <glob.h>
+#include <grp.h>
+#include <iconv.h>
+#include <ifaddrs.h>
+#include <inttypes.h>
+#include <iso646.h>
+#include <langinfo.h>
+#include <libgen.h>
+#include <libintl.h>
+#include <limits.h>
+#include <link.h>
+#include <locale.h>
+#include <malloc.h>
+#include <math.h>
+#include <mntent.h>
+#include <monetary.h>
+#include <mqueue.h>
+#include <net/ethernet.h>
+#include <net/if.h>
+#include <net/if_arp.h>
+#include <net/route.h>
+#include <netdb.h>
+#include <netinet/ether.h>
+#include <netinet/icmp6.h>
+#include <netinet/if_ether.h>
+#include <netinet/igmp.h>
+#include <netinet/in.h>
+#include <netinet/in_systm.h>
+#include <netinet/ip.h>
+#include <netinet/ip6.h>
+#include <netinet/ip_icmp.h>
+#include <netinet/tcp.h>
+#include <netinet/udp.h>
+#include <netpacket/packet.h>
+#include <nl_types.h>
+#include <paths.h>
+#include <poll.h>
+#include <pthread.h>
+#include <pty.h>
+#include <pwd.h>
+#include <regex.h>
+#include <resolv.h>
+#include <sched.h>
+#include <scsi/scsi.h>
+#include <scsi/scsi_ioctl.h>
+#include <scsi/sg.h>
+#include <search.h>
+#include <semaphore.h>
+#include <setjmp.h>
+#include <shadow.h>
+#include <signal.h>
+#include <spawn.h>
+//#include <stdalign.h>
+#include <stdarg.h>
+#include <stdbool.h>
+#include <stddef.h>
+#include <stdint.h>
+#include <stdio.h>
+#include <stdio_ext.h>
+#include <stdlib.h>
+//#include <stdnoreturn.h>
+#include <string.h>
+#include <strings.h>
+#include <stropts.h>
+#include <sys/acct.h>
+//#include <sys/auxv.h>
+//#include <sys/cachectl.h>
+#include <sys/dir.h>
+#include <sys/epoll.h>
+#include <sys/eventfd.h>
+#include <sys/fanotify.h>
+#include <sys/file.h>
+#include <sys/fsuid.h>
+#include <sys/inotify.h>
+//#include <sys/io.h>
+#include <sys/ioctl.h>
+#include <sys/ipc.h>
+//#include <sys/kd.h>
+#include <sys/klog.h>
+#include <sys/mman.h>
+#include <sys/mount.h>
+#include <sys/msg.h>
+#include <sys/mtio.h>
+#include <sys/param.h>
+#include <sys/personality.h>
+#include <sys/prctl.h>
+#include <sys/procfs.h>
+#include <sys/ptrace.h>
+#include <sys/quota.h>
+#include <sys/reboot.h>
+//#include <sys/reg.h>
+#include <sys/resource.h>
+#include <sys/select.h>
+#include <sys/sem.h>
+#include <sys/sendfile.h>
+#include <sys/shm.h>
+#include <sys/signalfd.h>
+#include <sys/socket.h>
+#include <sys/stat.h>
+#include <sys/statfs.h>
+#include <sys/statvfs.h>
+#include <sys/swap.h>
+#include <sys/syscall.h>
+#include <sys/sysinfo.h>
+#include <sys/sysmacros.h>
+#include <sys/time.h>
+#include <sys/timeb.h>
+#include <sys/timerfd.h>
+#include <sys/times.h>
+#include <sys/timex.h>
+#include <sys/ttydefaults.h>
+#include <sys/types.h>
+#include <sys/uio.h>
+#include <sys/un.h>
+#include <sys/user.h>
+#include <sys/utsname.h>
+#include <sys/wait.h>
+#include <sys/xattr.h>
+#include <sysexits.h>
+#include <syslog.h>
+#include <tar.h>
+#include <termios.h>
+#include <tgmath.h>
+//#include <threads.h>
+#include <time.h>
+#include <uchar.h>
+#include <ucontext.h>
+#include <ulimit.h>
+#include <unistd.h>
+#include <utime.h>
+#include <utmp.h>
+#include <utmpx.h>
+#include <values.h>
+#include <wchar.h>
+#include <wctype.h>
+#include <wordexp.h>
+
+typedef long long long_long;
+typedef long double long_double;
+struct size {char c;};
+struct align {char c;};
+#define T(s,t) void x_##t(s t x, s t* ptr, size(*y)[sizeof(s t)], align(*z)[__alignof__(s t)]){}
+#define P(s,t) void y_##t(s t* ptr, size(*y)[sizeof(s t*)], align(*z)[__alignof__(s t*)]){}
+#ifdef __GLIBC__
+#define M(x)
+#else
+#define M(x) x
+#endif
+
+T(,ACTION)
+T(,CODE)
+P(,DIR)
+T(,Dl_info)
+T(,ENTRY)
+T(,Elf32_Addr)
+T(,Elf32_Conflict)
+T(,Elf32_Dyn)
+T(,Elf32_Ehdr)
+T(,Elf32_Half)
+T(,Elf32_Lib)
+T(,Elf32_Move)
+T(,Elf32_Nhdr)
+T(,Elf32_Off)
+T(,Elf32_Phdr)
+T(,Elf32_RegInfo)
+T(,Elf32_Rel)
+T(,Elf32_Rela)
+T(,Elf32_Section)
+T(,Elf32_Shdr)
+T(,Elf32_Sword)
+T(,Elf32_Sxword)
+T(,Elf32_Sym)
+T(,Elf32_Syminfo)
+T(,Elf32_Verdaux)
+T(,Elf32_Verdef)
+T(,Elf32_Vernaux)
+T(,Elf32_Verneed)
+T(,Elf32_Versym)
+T(,Elf32_Word)
+T(,Elf32_Xword)
+T(,Elf32_auxv_t)
+T(,Elf32_gptab)
+T(,Elf64_Addr)
+T(,Elf64_Dyn)
+T(,Elf64_Ehdr)
+T(,Elf64_Half)
+T(,Elf64_Lib)
+T(,Elf64_Move)
+T(,Elf64_Nhdr)
+T(,Elf64_Off)
+T(,Elf64_Phdr)
+T(,Elf64_Rel)
+T(,Elf64_Rela)
+T(,Elf64_Section)
+T(,Elf64_Shdr)
+T(,Elf64_Sword)
+T(,Elf64_Sxword)
+T(,Elf64_Sym)
+T(,Elf64_Syminfo)
+T(,Elf64_Verdaux)
+T(,Elf64_Verdef)
+T(,Elf64_Vernaux)
+T(,Elf64_Verneed)
+T(,Elf64_Versym)
+T(,Elf64_Word)
+T(,Elf64_Xword)
+T(,Elf64_auxv_t)
+T(,Elf_Options)
+T(,Elf_Options_Hw)
+T(,Elf_Symndx)
+P(,FILE)
+T(,HEADER)
+T(,Sg_io_hdr)
+//T(,Sg_io_vec)
+T(,Sg_req_info)
+T(,Sg_scsi_id)
+T(,VISIT)
+//T(,__isoc_va_list)
+T(,__jmp_buf)
+T(,blkcnt_t)
+T(,blksize_t)
+T(,bool)
+T(,caddr_t)
+T(,cc_t)
+T(,char)
+T(,char16_t)
+T(,char32_t)
+T(,clock_t)
+T(,clockid_t)
+//T(,cnd_t)
+T(,comp_t)
+T(,cpu_set_t)
+T(,dev_t)
+T(,div_t)
+T(,double)
+T(,double_t)
+T(,elf_fpreg_t)
+T(,elf_fpregset_t)
+T(,elf_greg_t)
+T(,elf_gregset_t)
+T(,epoll_data_t)
+T(,eventfd_t)
+T(,fd_mask)
+T(,fd_set)
+T(,fenv_t)
+T(,fexcept_t)
+T(,float)
+T(,float_t)
+T(,fpos_t)
+T(,fpregset_t)
+T(,fsblkcnt_t)
+T(,fsfilcnt_t)
+T(,fsid_t)
+T(,gid_t)
+T(,glob_t)
+T(,greg_t)
+T(,gregset_t)
+T(,iconv_t)
+T(,id_t)
+T(,idtype_t)
+T(,imaxdiv_t)
+T(,in_addr_t)
+T(,in_port_t)
+T(,ino_t)
+T(,int)
+T(,int16_t)
+T(,int32_t)
+T(,int64_t)
+T(,int8_t)
+T(,int_fast16_t)
+T(,int_fast32_t)
+T(,int_fast64_t)
+T(,int_fast8_t)
+T(,int_least16_t)
+T(,int_least32_t)
+T(,int_least64_t)
+T(,int_least8_t)
+T(,intmax_t)
+T(,intptr_t)
+T(,jmp_buf)
+T(,key_t)
+T(,ldiv_t)
+T(,lldiv_t)
+T(,locale_t)
+T(,long)
+T(,long_double)
+T(,long_long)
+T(,lwpid_t)
+T(,max_align_t)
+T(,mbstate_t)
+T(,mcontext_t)
+T(,mode_t)
+T(,mqd_t)
+T(,msglen_t)
+T(,msgqnum_t)
+//T(,mtx_t)
+T(,n_long)
+T(,n_short)
+T(,n_time)
+T(,nfds_t)
+T(,nl_catd)
+T(,nl_item)
+T(,nlink_t)
+T(,ns_cert_types)
+T(,ns_class)
+T(,ns_flag)
+T(,ns_key_types)
+T(,ns_msg)
+T(,ns_opcode)
+T(,ns_rcode)
+T(,ns_rr)
+T(,ns_sect)
+//T(,ns_tcp_tsig_state)
+//T(,ns_tsig_key)
+T(,ns_type)
+T(,ns_update_operation)
+T(,off_t)
+//T(,once_flag)
+T(,pid_t)
+T(,posix_spawn_file_actions_t)
+T(,posix_spawnattr_t)
+T(,prfpregset_t)
+T(,prgregset_t)
+T(,prpsinfo_t)
+T(,prstatus_t)
+T(,psaddr_t)
+T(,pthread_attr_t)
+T(,pthread_barrier_t)
+T(,pthread_barrierattr_t)
+T(,pthread_cond_t)
+T(,pthread_condattr_t)
+T(,pthread_key_t)
+T(,pthread_mutex_t)
+T(,pthread_mutexattr_t)
+T(,pthread_once_t)
+T(,pthread_rwlock_t)
+T(,pthread_rwlockattr_t)
+T(,pthread_spinlock_t)
+T(,pthread_t)
+T(,ptrdiff_t)
+T(,quad_t)
+T(,regex_t)
+T(,register_t)
+T(,regmatch_t)
+T(,regoff_t)
+T(,res_state)
+T(,rlim_t)
+T(,sa_family_t)
+T(,sem_t)
+T(,sg_io_hdr_t)
+T(,sg_iovec_t)
+T(,sg_req_info_t)
+T(,shmatt_t)
+T(,short)
+T(,sig_atomic_t)
+T(,sig_t)
+T(,sighandler_t)
+T(,siginfo_t)
+T(,sigjmp_buf)
+T(,sigset_t)
+T(,size_t)
+T(,socklen_t)
+T(,speed_t)
+T(,ssize_t)
+T(,stack_t)
+T(struct,FTW)
+//T(struct,__fsid_t)
+T(struct,__jmp_buf_tag)
+//T(struct,__locale_struct)
+//T(struct,__mbstate_t)
+T(struct,__ns_msg)
+T(struct,__ns_rr)
+//T(struct,__ptcb)
+T(struct,__res_state)
+//T(struct,__sigset_t)
+//T(struct,__ucontext)
+T(struct,_ns_flagdata)
+T(struct,acct)
+T(struct,acct_v3)
+T(struct,addrinfo)
+T(struct,aiocb)
+T(struct,ar_hdr)
+T(struct,arpd_request)
+T(struct,arphdr)
+T(struct,arpreq)
+T(struct,arpreq_old)
+T(struct,bandinfo)
+T(struct,ccs_modesel_head)
+T(struct,cmsghdr)
+//T(struct,cpu_set_t)
+T(struct,crypt_data)
+T(struct,dirent)
+T(struct,dl_phdr_info)
+T(struct,dqblk)
+T(struct,dqinfo)
+T(struct,elf_prpsinfo)
+T(struct,elf_prstatus)
+T(struct,elf_siginfo)
+T(struct,entry)
+T(struct,epoll_event)
+T(struct,ether_addr)
+T(struct,ether_arp)
+T(struct,ether_header)
+T(struct,ethhdr)
+T(struct,f_owner_ex)
+T(struct,fanotify_event_metadata)
+T(struct,fanotify_response)
+T(struct,flock)
+T(struct,group)
+T(struct,group_filter)
+T(struct,group_req)
+T(struct,group_source_req)
+T(struct,hostent)
+T(struct,hsearch_data)
+T(struct,icmp)
+T(struct,icmp6_filter)
+T(struct,icmp6_hdr)
+T(struct,icmp6_router_renum)
+T(struct,icmp_ra_addr)
+T(struct,icmphdr)
+T(struct,if_nameindex)
+T(struct,ifaddr)
+T(struct,ifaddrs)
+T(struct,ifconf)
+T(struct,ifmap)
+T(struct,ifreq)
+T(struct,igmp)
+//T(struct,ih_idseq)
+//T(struct,ih_pmtu)
+//T(struct,ih_rtradv)
+T(struct,in6_addr)
+T(struct,in6_pktinfo)
+T(struct,in6_rtmsg)
+T(struct,in_addr)
+T(struct,in_pktinfo)
+T(struct,inotify_event)
+T(struct,iovec)
+T(struct,ip)
+T(struct,ip6_dest)
+T(struct,ip6_ext)
+T(struct,ip6_frag)
+T(struct,ip6_hbh)
+T(struct,ip6_hdr)
+//T(struct,ip6_hdrctl)
+T(struct,ip6_mtuinfo)
+T(struct,ip6_opt)
+T(struct,ip6_opt_jumbo)
+T(struct,ip6_opt_nsap)
+T(struct,ip6_opt_router)
+T(struct,ip6_opt_tunnel)
+T(struct,ip6_rthdr)
+T(struct,ip6_rthdr0)
+T(struct,ip_mreq)
+T(struct,ip_mreq_source)
+T(struct,ip_mreqn)
+T(struct,ip_msfilter)
+T(struct,ip_opts)
+T(struct,ip_timestamp)
+T(struct,ipc_perm)
+T(struct,iphdr)
+T(struct,ipv6_mreq)
+T(struct,itimerspec)
+T(struct,itimerval)
+T(struct,lastlog)
+T(struct,lconv)
+T(struct,linger)
+T(struct,link_map)
+T(struct,mld_hdr)
+T(struct,mmsghdr)
+T(struct,mntent)
+T(struct,mq_attr)
+T(struct,msgbuf)
+T(struct,msghdr)
+T(struct,msginfo)
+T(struct,msqid_ds)
+T(struct,mt_tape_info)
+T(struct,mtconfiginfo)
+T(struct,mtget)
+T(struct,mtop)
+T(struct,mtpos)
+T(struct,nd_neighbor_advert)
+T(struct,nd_neighbor_solicit)
+T(struct,nd_opt_adv_interval)
+T(struct,nd_opt_hdr)
+T(struct,nd_opt_home_agent_info)
+T(struct,nd_opt_mtu)
+T(struct,nd_opt_prefix_info)
+T(struct,nd_opt_rd_hdr)
+T(struct,nd_redirect)
+T(struct,nd_router_advert)
+T(struct,nd_router_solicit)
+T(struct,netent)
+T(struct,ns_tcp_tsig_state)
+T(struct,ns_tsig_key)
+T(struct,ntptimeval)
+T(struct,option)
+T(struct,packet_mreq)
+T(struct,passwd)
+T(struct,pollfd)
+T(struct,prctl_mm_map)
+T(struct,protoent)
+//T(struct,ptrace_peeksiginfo_args)
+T(struct,qelem)
+T(struct,r_debug)
+T(struct,re_pattern_buffer)
+T(struct,res_sym)
+T(struct,rlimit)
+T(struct,rr_pco_match)
+T(struct,rr_pco_use)
+T(struct,rr_result)
+T(struct,rtentry)
+T(struct,rusage)
+T(struct,sched_param)
+T(struct,sembuf)
+T(struct,semid_ds)
+T(struct,seminfo)
+T(struct,servent)
+T(struct,sg_header)
+T(struct,sg_io_hdr)
+T(struct,sg_iovec)
+T(struct,sg_req_info)
+T(struct,sg_scsi_id)
+T(struct,shm_info)
+T(struct,shmid_ds)
+T(struct,shminfo)
+T(struct,sigaction)
+T(struct,sigaltstack)
+T(struct,sigcontext)
+T(struct,sigevent)
+T(struct,signalfd_siginfo)
+T(struct,sockaddr)
+T(struct,sockaddr_in)
+T(struct,sockaddr_in6)
+T(struct,sockaddr_ll)
+T(struct,sockaddr_storage)
+T(struct,sockaddr_un)
+T(struct,spwd)
+T(struct,stat)
+T(struct,statfs)
+T(struct,statvfs)
+T(struct,str_list)
+T(struct,str_mlist)
+T(struct,strbuf)
+T(struct,strfdinsert)
+T(struct,strioctl)
+T(struct,strpeek)
+T(struct,strrecvfd)
+T(struct,sysinfo)
+T(struct,tcp_info)
+T(struct,tcp_md5sig)
+T(struct,tcphdr)
+T(struct,termios)
+T(struct,tftphdr)
+T(struct,timeb)
+T(struct,timespec)
+T(struct,timestamp)
+T(struct,timeval)
+T(struct,timex)
+T(struct,timezone)
+T(struct,tm)
+T(struct,tms)
+T(struct,ucred)
+T(struct,udphdr)
+T(struct,user)
+T(struct,utimbuf)
+T(struct,utmpx)
+T(struct,utsname)
+T(struct,winsize)
+T(,suseconds_t)
+T(,tcflag_t)
+//T(,tcp_seq)
+//T(,thrd_start_t)
+//T(,thrd_t)
+T(,time_t)
+T(,timer_t)
+//T(,tss_dtor_t)
+//T(,tss_t)
+T(,u_char)
+T(,u_int)
+T(,u_int16_t)
+T(,u_int32_t)
+T(,u_int64_t)
+T(,u_int8_t)
+T(,u_long)
+T(,u_quad_t)
+T(,u_short)
+T(,ucontext_t)
+T(,uid_t)
+T(,uint)
+T(,uint16_t)
+T(,uint32_t)
+T(,uint64_t)
+T(,uint8_t)
+T(,uint_fast16_t)
+T(,uint_fast32_t)
+T(,uint_fast64_t)
+T(,uint_fast8_t)
+T(,uint_least16_t)
+T(,uint_least32_t)
+T(,uint_least64_t)
+T(,uint_least8_t)
+T(,uintmax_t)
+T(,uintptr_t)
+T(,ulong)
+//T(union,_G_fpos64_t)
+T(union,epoll_data)
+T(union,sigval)
+T(,useconds_t)
+T(,ushort)
+T(,va_list)
+P(,void)
+T(,wchar_t)
+T(,wctrans_t)
+T(,wctype_t)
+T(,wint_t)
+T(,wordexp_t)
diff --git a/abi_type.mips64.cc b/abi_type.mips64.cc
new file mode 100644 (file)
index 0000000..42c51a4
--- /dev/null
@@ -0,0 +1,651 @@
+
+#define _GNU_SOURCE 1
+#define _FILE_OFFSET_BITS 64
+#define SYSLOG_NAMES 1
+#include <stddef.h>
+#include <sys/types.h>
+
+#include <aio.h>
+#include <alloca.h>
+#include <ar.h>
+#include <arpa/ftp.h>
+#include <arpa/inet.h>
+#include <arpa/nameser.h>
+#include <arpa/telnet.h>
+#include <arpa/tftp.h>
+#include <assert.h>
+#include <byteswap.h>
+#include <complex.h>
+#include <cpio.h>
+#include <crypt.h>
+#include <ctype.h>
+#include <dirent.h>
+#include <dlfcn.h>
+#include <elf.h>
+#include <endian.h>
+#include <err.h>
+#include <errno.h>
+#include <fcntl.h>
+#include <features.h>
+#include <fenv.h>
+#include <float.h>
+#include <fmtmsg.h>
+#include <fnmatch.h>
+#include <ftw.h>
+#include <getopt.h>
+#include <glob.h>
+#include <grp.h>
+#include <iconv.h>
+#include <ifaddrs.h>
+#include <inttypes.h>
+#include <iso646.h>
+#include <langinfo.h>
+#include <libgen.h>
+#include <libintl.h>
+#include <limits.h>
+#include <link.h>
+#include <locale.h>
+#include <malloc.h>
+#include <math.h>
+#include <mntent.h>
+#include <monetary.h>
+#include <mqueue.h>
+#include <net/ethernet.h>
+#include <net/if.h>
+#include <net/if_arp.h>
+#include <net/route.h>
+#include <netdb.h>
+#include <netinet/ether.h>
+#include <netinet/icmp6.h>
+#include <netinet/if_ether.h>
+#include <netinet/igmp.h>
+#include <netinet/in.h>
+#include <netinet/in_systm.h>
+#include <netinet/ip.h>
+#include <netinet/ip6.h>
+#include <netinet/ip_icmp.h>
+#include <netinet/tcp.h>
+#include <netinet/udp.h>
+#include <netpacket/packet.h>
+#include <nl_types.h>
+#include <paths.h>
+#include <poll.h>
+#include <pthread.h>
+#include <pty.h>
+#include <pwd.h>
+#include <regex.h>
+#include <resolv.h>
+#include <sched.h>
+#include <scsi/scsi.h>
+#include <scsi/scsi_ioctl.h>
+#include <scsi/sg.h>
+#include <search.h>
+#include <semaphore.h>
+#include <setjmp.h>
+#include <shadow.h>
+#include <signal.h>
+#include <spawn.h>
+//#include <stdalign.h>
+#include <stdarg.h>
+#include <stdbool.h>
+#include <stddef.h>
+#include <stdint.h>
+#include <stdio.h>
+#include <stdio_ext.h>
+#include <stdlib.h>
+//#include <stdnoreturn.h>
+#include <string.h>
+#include <strings.h>
+#include <stropts.h>
+#include <sys/acct.h>
+//#include <sys/auxv.h>
+//#include <sys/cachectl.h>
+#include <sys/dir.h>
+#include <sys/epoll.h>
+#include <sys/eventfd.h>
+#include <sys/fanotify.h>
+#include <sys/file.h>
+#include <sys/fsuid.h>
+#include <sys/inotify.h>
+//#include <sys/io.h>
+#include <sys/ioctl.h>
+#include <sys/ipc.h>
+//#include <sys/kd.h>
+#include <sys/klog.h>
+#include <sys/mman.h>
+#include <sys/mount.h>
+#include <sys/msg.h>
+#include <sys/mtio.h>
+#include <sys/param.h>
+#include <sys/personality.h>
+#include <sys/prctl.h>
+#include <sys/procfs.h>
+#include <sys/ptrace.h>
+#include <sys/quota.h>
+#include <sys/reboot.h>
+//#include <sys/reg.h>
+#include <sys/resource.h>
+#include <sys/select.h>
+#include <sys/sem.h>
+#include <sys/sendfile.h>
+#include <sys/shm.h>
+#include <sys/signalfd.h>
+#include <sys/socket.h>
+#include <sys/stat.h>
+#include <sys/statfs.h>
+#include <sys/statvfs.h>
+#include <sys/swap.h>
+#include <sys/syscall.h>
+#include <sys/sysinfo.h>
+#include <sys/sysmacros.h>
+#include <sys/time.h>
+#include <sys/timeb.h>
+#include <sys/timerfd.h>
+#include <sys/times.h>
+#include <sys/timex.h>
+#include <sys/ttydefaults.h>
+#include <sys/types.h>
+#include <sys/uio.h>
+#include <sys/un.h>
+#include <sys/user.h>
+#include <sys/utsname.h>
+#include <sys/wait.h>
+#include <sys/xattr.h>
+#include <sysexits.h>
+#include <syslog.h>
+#include <tar.h>
+#include <termios.h>
+#include <tgmath.h>
+//#include <threads.h>
+#include <time.h>
+#include <uchar.h>
+#include <ucontext.h>
+#include <ulimit.h>
+#include <unistd.h>
+#include <utime.h>
+#include <utmp.h>
+#include <utmpx.h>
+#include <values.h>
+#include <wchar.h>
+#include <wctype.h>
+#include <wordexp.h>
+
+typedef long long long_long;
+typedef long double long_double;
+struct size {char c;};
+struct align {char c;};
+#define T(s,t) void x_##t(s t x, s t* ptr, size(*y)[sizeof(s t)], align(*z)[__alignof__(s t)]){}
+#define P(s,t) void y_##t(s t* ptr, size(*y)[sizeof(s t*)], align(*z)[__alignof__(s t*)]){}
+#ifdef __GLIBC__
+#define M(x)
+#else
+#define M(x) x
+#endif
+
+T(,ACTION)
+T(,CODE)
+P(,DIR)
+T(,Dl_info)
+T(,ENTRY)
+T(,Elf32_Addr)
+T(,Elf32_Conflict)
+T(,Elf32_Dyn)
+T(,Elf32_Ehdr)
+T(,Elf32_Half)
+T(,Elf32_Lib)
+T(,Elf32_Move)
+T(,Elf32_Nhdr)
+T(,Elf32_Off)
+T(,Elf32_Phdr)
+T(,Elf32_RegInfo)
+T(,Elf32_Rel)
+T(,Elf32_Rela)
+T(,Elf32_Section)
+T(,Elf32_Shdr)
+T(,Elf32_Sword)
+T(,Elf32_Sxword)
+T(,Elf32_Sym)
+T(,Elf32_Syminfo)
+T(,Elf32_Verdaux)
+T(,Elf32_Verdef)
+T(,Elf32_Vernaux)
+T(,Elf32_Verneed)
+T(,Elf32_Versym)
+T(,Elf32_Word)
+T(,Elf32_Xword)
+T(,Elf32_auxv_t)
+T(,Elf32_gptab)
+T(,Elf64_Addr)
+T(,Elf64_Dyn)
+T(,Elf64_Ehdr)
+T(,Elf64_Half)
+T(,Elf64_Lib)
+T(,Elf64_Move)
+T(,Elf64_Nhdr)
+T(,Elf64_Off)
+T(,Elf64_Phdr)
+T(,Elf64_Rel)
+T(,Elf64_Rela)
+T(,Elf64_Section)
+T(,Elf64_Shdr)
+T(,Elf64_Sword)
+T(,Elf64_Sxword)
+T(,Elf64_Sym)
+T(,Elf64_Syminfo)
+T(,Elf64_Verdaux)
+T(,Elf64_Verdef)
+T(,Elf64_Vernaux)
+T(,Elf64_Verneed)
+T(,Elf64_Versym)
+T(,Elf64_Word)
+T(,Elf64_Xword)
+T(,Elf64_auxv_t)
+T(,Elf_Options)
+T(,Elf_Options_Hw)
+T(,Elf_Symndx)
+P(,FILE)
+T(,HEADER)
+T(,Sg_io_hdr)
+//T(,Sg_io_vec)
+T(,Sg_req_info)
+T(,Sg_scsi_id)
+T(,VISIT)
+//T(,__isoc_va_list)
+T(,__jmp_buf)
+T(,blkcnt_t)
+T(,blksize_t)
+T(,bool)
+T(,caddr_t)
+T(,cc_t)
+T(,char)
+T(,char16_t)
+T(,char32_t)
+T(,clock_t)
+T(,clockid_t)
+//T(,cnd_t)
+T(,comp_t)
+T(,cpu_set_t)
+T(,dev_t)
+T(,div_t)
+T(,double)
+T(,double_t)
+T(,elf_fpreg_t)
+T(,elf_fpregset_t)
+T(,elf_greg_t)
+T(,elf_gregset_t)
+T(,epoll_data_t)
+T(,eventfd_t)
+T(,fd_mask)
+T(,fd_set)
+T(,fenv_t)
+T(,fexcept_t)
+T(,float)
+T(,float_t)
+T(,fpos_t)
+T(,fpregset_t)
+T(,fsblkcnt_t)
+T(,fsfilcnt_t)
+T(,fsid_t)
+T(,gid_t)
+T(,glob_t)
+T(,greg_t)
+T(,gregset_t)
+T(,iconv_t)
+T(,id_t)
+T(,idtype_t)
+T(,imaxdiv_t)
+T(,in_addr_t)
+T(,in_port_t)
+T(,ino_t)
+T(,int)
+T(,int16_t)
+T(,int32_t)
+T(,int64_t)
+T(,int8_t)
+T(,int_fast16_t)
+T(,int_fast32_t)
+T(,int_fast64_t)
+T(,int_fast8_t)
+T(,int_least16_t)
+T(,int_least32_t)
+T(,int_least64_t)
+T(,int_least8_t)
+T(,intmax_t)
+T(,intptr_t)
+T(,jmp_buf)
+T(,key_t)
+T(,ldiv_t)
+T(,lldiv_t)
+T(,locale_t)
+T(,long)
+T(,long_double)
+T(,long_long)
+T(,lwpid_t)
+T(,max_align_t)
+T(,mbstate_t)
+T(,mcontext_t)
+T(,mode_t)
+T(,mqd_t)
+T(,msglen_t)
+T(,msgqnum_t)
+//T(,mtx_t)
+T(,n_long)
+T(,n_short)
+T(,n_time)
+T(,nfds_t)
+T(,nl_catd)
+T(,nl_item)
+T(,nlink_t)
+T(,ns_cert_types)
+T(,ns_class)
+T(,ns_flag)
+T(,ns_key_types)
+T(,ns_msg)
+T(,ns_opcode)
+T(,ns_rcode)
+T(,ns_rr)
+T(,ns_sect)
+//T(,ns_tcp_tsig_state)
+//T(,ns_tsig_key)
+T(,ns_type)
+T(,ns_update_operation)
+T(,off_t)
+//T(,once_flag)
+T(,pid_t)
+T(,posix_spawn_file_actions_t)
+T(,posix_spawnattr_t)
+T(,prfpregset_t)
+T(,prgregset_t)
+T(,prpsinfo_t)
+T(,prstatus_t)
+T(,psaddr_t)
+T(,pthread_attr_t)
+T(,pthread_barrier_t)
+T(,pthread_barrierattr_t)
+T(,pthread_cond_t)
+T(,pthread_condattr_t)
+T(,pthread_key_t)
+T(,pthread_mutex_t)
+T(,pthread_mutexattr_t)
+T(,pthread_once_t)
+T(,pthread_rwlock_t)
+T(,pthread_rwlockattr_t)
+T(,pthread_spinlock_t)
+T(,pthread_t)
+T(,ptrdiff_t)
+T(,quad_t)
+T(,regex_t)
+T(,register_t)
+T(,regmatch_t)
+T(,regoff_t)
+T(,res_state)
+T(,rlim_t)
+T(,sa_family_t)
+T(,sem_t)
+T(,sg_io_hdr_t)
+T(,sg_iovec_t)
+T(,sg_req_info_t)
+T(,shmatt_t)
+T(,short)
+T(,sig_atomic_t)
+T(,sig_t)
+T(,sighandler_t)
+T(,siginfo_t)
+T(,sigjmp_buf)
+T(,sigset_t)
+T(,size_t)
+T(,socklen_t)
+T(,speed_t)
+T(,ssize_t)
+T(,stack_t)
+T(struct,FTW)
+//T(struct,__fsid_t)
+T(struct,__jmp_buf_tag)
+//T(struct,__locale_struct)
+//T(struct,__mbstate_t)
+T(struct,__ns_msg)
+T(struct,__ns_rr)
+//T(struct,__ptcb)
+T(struct,__res_state)
+//T(struct,__sigset_t)
+//T(struct,__ucontext)
+T(struct,_ns_flagdata)
+T(struct,acct)
+T(struct,acct_v3)
+T(struct,addrinfo)
+T(struct,aiocb)
+T(struct,ar_hdr)
+T(struct,arpd_request)
+T(struct,arphdr)
+T(struct,arpreq)
+T(struct,arpreq_old)
+T(struct,bandinfo)
+T(struct,ccs_modesel_head)
+T(struct,cmsghdr)
+//T(struct,cpu_set_t)
+T(struct,crypt_data)
+T(struct,dirent)
+T(struct,dl_phdr_info)
+T(struct,dqblk)
+T(struct,dqinfo)
+T(struct,elf_prpsinfo)
+T(struct,elf_prstatus)
+T(struct,elf_siginfo)
+T(struct,entry)
+T(struct,epoll_event)
+T(struct,ether_addr)
+T(struct,ether_arp)
+T(struct,ether_header)
+T(struct,ethhdr)
+T(struct,f_owner_ex)
+T(struct,fanotify_event_metadata)
+T(struct,fanotify_response)
+T(struct,flock)
+T(struct,group)
+T(struct,group_filter)
+T(struct,group_req)
+T(struct,group_source_req)
+T(struct,hostent)
+T(struct,hsearch_data)
+T(struct,icmp)
+T(struct,icmp6_filter)
+T(struct,icmp6_hdr)
+T(struct,icmp6_router_renum)
+T(struct,icmp_ra_addr)
+T(struct,icmphdr)
+T(struct,if_nameindex)
+T(struct,ifaddr)
+T(struct,ifaddrs)
+T(struct,ifconf)
+T(struct,ifmap)
+T(struct,ifreq)
+T(struct,igmp)
+//T(struct,ih_idseq)
+//T(struct,ih_pmtu)
+//T(struct,ih_rtradv)
+T(struct,in6_addr)
+T(struct,in6_pktinfo)
+T(struct,in6_rtmsg)
+T(struct,in_addr)
+T(struct,in_pktinfo)
+T(struct,inotify_event)
+T(struct,iovec)
+T(struct,ip)
+T(struct,ip6_dest)
+T(struct,ip6_ext)
+T(struct,ip6_frag)
+T(struct,ip6_hbh)
+T(struct,ip6_hdr)
+//T(struct,ip6_hdrctl)
+T(struct,ip6_mtuinfo)
+T(struct,ip6_opt)
+T(struct,ip6_opt_jumbo)
+T(struct,ip6_opt_nsap)
+T(struct,ip6_opt_router)
+T(struct,ip6_opt_tunnel)
+T(struct,ip6_rthdr)
+T(struct,ip6_rthdr0)
+T(struct,ip_mreq)
+T(struct,ip_mreq_source)
+T(struct,ip_mreqn)
+T(struct,ip_msfilter)
+T(struct,ip_opts)
+T(struct,ip_timestamp)
+T(struct,ipc_perm)
+T(struct,iphdr)
+T(struct,ipv6_mreq)
+T(struct,itimerspec)
+T(struct,itimerval)
+T(struct,lastlog)
+T(struct,lconv)
+T(struct,linger)
+T(struct,link_map)
+T(struct,mld_hdr)
+T(struct,mmsghdr)
+T(struct,mntent)
+T(struct,mq_attr)
+T(struct,msgbuf)
+T(struct,msghdr)
+T(struct,msginfo)
+T(struct,msqid_ds)
+T(struct,mt_tape_info)
+T(struct,mtconfiginfo)
+T(struct,mtget)
+T(struct,mtop)
+T(struct,mtpos)
+T(struct,nd_neighbor_advert)
+T(struct,nd_neighbor_solicit)
+T(struct,nd_opt_adv_interval)
+T(struct,nd_opt_hdr)
+T(struct,nd_opt_home_agent_info)
+T(struct,nd_opt_mtu)
+T(struct,nd_opt_prefix_info)
+T(struct,nd_opt_rd_hdr)
+T(struct,nd_redirect)
+T(struct,nd_router_advert)
+T(struct,nd_router_solicit)
+T(struct,netent)
+T(struct,ns_tcp_tsig_state)
+T(struct,ns_tsig_key)
+T(struct,ntptimeval)
+T(struct,option)
+T(struct,packet_mreq)
+T(struct,passwd)
+T(struct,pollfd)
+T(struct,prctl_mm_map)
+T(struct,protoent)
+//T(struct,ptrace_peeksiginfo_args)
+T(struct,qelem)
+T(struct,r_debug)
+T(struct,re_pattern_buffer)
+T(struct,res_sym)
+T(struct,rlimit)
+T(struct,rr_pco_match)
+T(struct,rr_pco_use)
+T(struct,rr_result)
+T(struct,rtentry)
+T(struct,rusage)
+T(struct,sched_param)
+T(struct,sembuf)
+T(struct,semid_ds)
+T(struct,seminfo)
+T(struct,servent)
+T(struct,sg_header)
+T(struct,sg_io_hdr)
+T(struct,sg_iovec)
+T(struct,sg_req_info)
+T(struct,sg_scsi_id)
+T(struct,shm_info)
+T(struct,shmid_ds)
+T(struct,shminfo)
+T(struct,sigaction)
+T(struct,sigaltstack)
+T(struct,sigcontext)
+T(struct,sigevent)
+T(struct,signalfd_siginfo)
+T(struct,sockaddr)
+T(struct,sockaddr_in)
+T(struct,sockaddr_in6)
+T(struct,sockaddr_ll)
+T(struct,sockaddr_storage)
+T(struct,sockaddr_un)
+T(struct,spwd)
+T(struct,stat)
+T(struct,statfs)
+T(struct,statvfs)
+T(struct,str_list)
+T(struct,str_mlist)
+T(struct,strbuf)
+T(struct,strfdinsert)
+T(struct,strioctl)
+T(struct,strpeek)
+T(struct,strrecvfd)
+T(struct,sysinfo)
+T(struct,tcp_info)
+T(struct,tcp_md5sig)
+T(struct,tcphdr)
+T(struct,termios)
+T(struct,tftphdr)
+T(struct,timeb)
+T(struct,timespec)
+T(struct,timestamp)
+T(struct,timeval)
+T(struct,timex)
+T(struct,timezone)
+T(struct,tm)
+T(struct,tms)
+T(struct,ucred)
+T(struct,udphdr)
+T(struct,user)
+T(struct,utimbuf)
+T(struct,utmpx)
+T(struct,utsname)
+T(struct,winsize)
+T(,suseconds_t)
+T(,tcflag_t)
+//T(,tcp_seq)
+//T(,thrd_start_t)
+//T(,thrd_t)
+T(,time_t)
+T(,timer_t)
+//T(,tss_dtor_t)
+//T(,tss_t)
+T(,u_char)
+T(,u_int)
+T(,u_int16_t)
+T(,u_int32_t)
+T(,u_int64_t)
+T(,u_int8_t)
+T(,u_long)
+T(,u_quad_t)
+T(,u_short)
+T(,ucontext_t)
+T(,uid_t)
+T(,uint)
+T(,uint16_t)
+T(,uint32_t)
+T(,uint64_t)
+T(,uint8_t)
+T(,uint_fast16_t)
+T(,uint_fast32_t)
+T(,uint_fast64_t)
+T(,uint_fast8_t)
+T(,uint_least16_t)
+T(,uint_least32_t)
+T(,uint_least64_t)
+T(,uint_least8_t)
+T(,uintmax_t)
+T(,uintptr_t)
+T(,ulong)
+//T(union,_G_fpos64_t)
+T(union,epoll_data)
+T(union,sigval)
+T(,useconds_t)
+T(,ushort)
+T(,va_list)
+P(,void)
+T(,wchar_t)
+T(,wctrans_t)
+T(,wctype_t)
+T(,wint_t)
+T(,wordexp_t)
diff --git a/abi_type.or1k.cc b/abi_type.or1k.cc
new file mode 100644 (file)
index 0000000..2492330
--- /dev/null
@@ -0,0 +1,645 @@
+
+#define _GNU_SOURCE 1
+#define _FILE_OFFSET_BITS 64
+#define SYSLOG_NAMES 1
+#include <stddef.h>
+#include <sys/types.h>
+
+#include <aio.h>
+#include <alloca.h>
+#include <ar.h>
+#include <arpa/ftp.h>
+#include <arpa/inet.h>
+#include <arpa/nameser.h>
+#include <arpa/telnet.h>
+#include <arpa/tftp.h>
+#include <assert.h>
+#include <byteswap.h>
+#include <complex.h>
+#include <cpio.h>
+#include <crypt.h>
+#include <ctype.h>
+#include <dirent.h>
+#include <dlfcn.h>
+#include <elf.h>
+#include <endian.h>
+#include <err.h>
+#include <errno.h>
+#include <fcntl.h>
+#include <features.h>
+#include <fenv.h>
+#include <float.h>
+#include <fmtmsg.h>
+#include <fnmatch.h>
+#include <ftw.h>
+#include <getopt.h>
+#include <glob.h>
+#include <grp.h>
+#include <iconv.h>
+#include <ifaddrs.h>
+#include <inttypes.h>
+#include <iso646.h>
+#include <langinfo.h>
+#include <libgen.h>
+#include <libintl.h>
+#include <limits.h>
+#include <link.h>
+#include <locale.h>
+#include <malloc.h>
+#include <math.h>
+#include <mntent.h>
+#include <monetary.h>
+#include <mqueue.h>
+#include <net/ethernet.h>
+#include <net/if.h>
+#include <net/if_arp.h>
+#include <net/route.h>
+#include <netdb.h>
+#include <netinet/ether.h>
+#include <netinet/icmp6.h>
+#include <netinet/if_ether.h>
+#include <netinet/igmp.h>
+#include <netinet/in.h>
+#include <netinet/in_systm.h>
+#include <netinet/ip.h>
+#include <netinet/ip6.h>
+#include <netinet/ip_icmp.h>
+#include <netinet/tcp.h>
+#include <netinet/udp.h>
+#include <netpacket/packet.h>
+#include <nl_types.h>
+#include <paths.h>
+#include <poll.h>
+#include <pthread.h>
+#include <pty.h>
+#include <pwd.h>
+#include <regex.h>
+#include <resolv.h>
+#include <sched.h>
+#include <scsi/scsi.h>
+#include <scsi/scsi_ioctl.h>
+#include <scsi/sg.h>
+#include <search.h>
+#include <semaphore.h>
+#include <setjmp.h>
+#include <shadow.h>
+#include <signal.h>
+#include <spawn.h>
+//#include <stdalign.h>
+#include <stdarg.h>
+#include <stdbool.h>
+#include <stddef.h>
+#include <stdint.h>
+#include <stdio.h>
+#include <stdio_ext.h>
+#include <stdlib.h>
+//#include <stdnoreturn.h>
+#include <string.h>
+#include <strings.h>
+#include <stropts.h>
+#include <sys/acct.h>
+//#include <sys/auxv.h>
+//#include <sys/cachectl.h>
+#include <sys/dir.h>
+#include <sys/epoll.h>
+#include <sys/eventfd.h>
+#include <sys/fanotify.h>
+#include <sys/file.h>
+#include <sys/fsuid.h>
+#include <sys/inotify.h>
+//#include <sys/io.h>
+#include <sys/ioctl.h>
+#include <sys/ipc.h>
+//#include <sys/kd.h>
+#include <sys/klog.h>
+#include <sys/mman.h>
+#include <sys/mount.h>
+#include <sys/msg.h>
+#include <sys/mtio.h>
+#include <sys/param.h>
+#include <sys/personality.h>
+#include <sys/prctl.h>
+#include <sys/procfs.h>
+#include <sys/ptrace.h>
+#include <sys/quota.h>
+#include <sys/reboot.h>
+//#include <sys/reg.h>
+#include <sys/resource.h>
+#include <sys/select.h>
+#include <sys/sem.h>
+#include <sys/sendfile.h>
+#include <sys/shm.h>
+#include <sys/signalfd.h>
+#include <sys/socket.h>
+#include <sys/stat.h>
+#include <sys/statfs.h>
+#include <sys/statvfs.h>
+#include <sys/swap.h>
+#include <sys/syscall.h>
+#include <sys/sysinfo.h>
+#include <sys/sysmacros.h>
+#include <sys/time.h>
+#include <sys/timeb.h>
+#include <sys/timerfd.h>
+#include <sys/times.h>
+#include <sys/timex.h>
+#include <sys/ttydefaults.h>
+#include <sys/types.h>
+#include <sys/uio.h>
+#include <sys/un.h>
+#include <sys/user.h>
+#include <sys/utsname.h>
+#include <sys/wait.h>
+#include <sys/xattr.h>
+#include <sysexits.h>
+#include <syslog.h>
+#include <tar.h>
+#include <termios.h>
+#include <tgmath.h>
+//#include <threads.h>
+#include <time.h>
+#include <uchar.h>
+#include <ucontext.h>
+#include <ulimit.h>
+#include <unistd.h>
+#include <utime.h>
+#include <utmp.h>
+#include <utmpx.h>
+#include <values.h>
+#include <wchar.h>
+#include <wctype.h>
+#include <wordexp.h>
+
+typedef long long long_long;
+typedef long double long_double;
+struct size {char c;};
+struct align {char c;};
+#define T(s,t) void x_##t(s t x, s t* ptr, size(*y)[sizeof(s t)], align(*z)[__alignof__(s t)]){}
+#define P(s,t) void y_##t(s t* ptr, size(*y)[sizeof(s t*)], align(*z)[__alignof__(s t*)]){}
+#ifdef __GLIBC__
+#define M(x)
+#else
+#define M(x) x
+#endif
+
+T(,ACTION)
+T(,CODE)
+P(,DIR)
+T(,Dl_info)
+T(,ENTRY)
+T(,Elf32_Addr)
+T(,Elf32_Conflict)
+T(,Elf32_Dyn)
+T(,Elf32_Ehdr)
+T(,Elf32_Half)
+T(,Elf32_Lib)
+T(,Elf32_Move)
+T(,Elf32_Nhdr)
+T(,Elf32_Off)
+T(,Elf32_Phdr)
+T(,Elf32_RegInfo)
+T(,Elf32_Rel)
+T(,Elf32_Rela)
+T(,Elf32_Section)
+T(,Elf32_Shdr)
+T(,Elf32_Sword)
+T(,Elf32_Sxword)
+T(,Elf32_Sym)
+T(,Elf32_Syminfo)
+T(,Elf32_Verdaux)
+T(,Elf32_Verdef)
+T(,Elf32_Vernaux)
+T(,Elf32_Verneed)
+T(,Elf32_Versym)
+T(,Elf32_Word)
+T(,Elf32_Xword)
+T(,Elf32_auxv_t)
+T(,Elf32_gptab)
+T(,Elf64_Addr)
+T(,Elf64_Dyn)
+T(,Elf64_Ehdr)
+T(,Elf64_Half)
+T(,Elf64_Lib)
+T(,Elf64_Move)
+T(,Elf64_Nhdr)
+T(,Elf64_Off)
+T(,Elf64_Phdr)
+T(,Elf64_Rel)
+T(,Elf64_Rela)
+T(,Elf64_Section)
+T(,Elf64_Shdr)
+T(,Elf64_Sword)
+T(,Elf64_Sxword)
+T(,Elf64_Sym)
+T(,Elf64_Syminfo)
+T(,Elf64_Verdaux)
+T(,Elf64_Verdef)
+T(,Elf64_Vernaux)
+T(,Elf64_Verneed)
+T(,Elf64_Versym)
+T(,Elf64_Word)
+T(,Elf64_Xword)
+T(,Elf64_auxv_t)
+T(,Elf_Options)
+T(,Elf_Options_Hw)
+T(,Elf_Symndx)
+P(,FILE)
+T(,HEADER)
+T(,Sg_io_hdr)
+//T(,Sg_io_vec)
+T(,Sg_req_info)
+T(,Sg_scsi_id)
+T(,VISIT)
+//T(,__isoc_va_list)
+T(,__jmp_buf)
+T(,blkcnt_t)
+T(,blksize_t)
+T(,bool)
+T(,caddr_t)
+T(,cc_t)
+T(,char)
+T(,char16_t)
+T(,char32_t)
+T(,clock_t)
+T(,clockid_t)
+//T(,cnd_t)
+T(,comp_t)
+T(,cpu_set_t)
+T(,dev_t)
+T(,div_t)
+T(,double)
+T(,double_t)
+T(,epoll_data_t)
+T(,eventfd_t)
+T(,fd_mask)
+T(,fd_set)
+T(,fenv_t)
+T(,fexcept_t)
+T(,float)
+T(,float_t)
+T(,fpos_t)
+T(,fsblkcnt_t)
+T(,fsfilcnt_t)
+T(,fsid_t)
+T(,gid_t)
+T(,glob_t)
+T(,greg_t)
+T(,gregset_t)
+T(,iconv_t)
+T(,id_t)
+T(,idtype_t)
+T(,imaxdiv_t)
+T(,in_addr_t)
+T(,in_port_t)
+T(,ino_t)
+T(,int)
+T(,int16_t)
+T(,int32_t)
+T(,int64_t)
+T(,int8_t)
+T(,int_fast16_t)
+T(,int_fast32_t)
+T(,int_fast64_t)
+T(,int_fast8_t)
+T(,int_least16_t)
+T(,int_least32_t)
+T(,int_least64_t)
+T(,int_least8_t)
+T(,intmax_t)
+T(,intptr_t)
+T(,jmp_buf)
+T(,key_t)
+T(,ldiv_t)
+T(,lldiv_t)
+T(,locale_t)
+T(,long)
+T(,long_double)
+T(,long_long)
+T(,lwpid_t)
+T(,max_align_t)
+T(,mbstate_t)
+T(,mcontext_t)
+T(,mode_t)
+T(,mqd_t)
+T(,msglen_t)
+T(,msgqnum_t)
+//T(,mtx_t)
+T(,n_long)
+T(,n_short)
+T(,n_time)
+T(,nfds_t)
+T(,nl_catd)
+T(,nl_item)
+T(,nlink_t)
+T(,ns_cert_types)
+T(,ns_class)
+T(,ns_flag)
+T(,ns_key_types)
+T(,ns_msg)
+T(,ns_opcode)
+T(,ns_rcode)
+T(,ns_rr)
+T(,ns_sect)
+//T(,ns_tcp_tsig_state)
+//T(,ns_tsig_key)
+T(,ns_type)
+T(,ns_update_operation)
+T(,off_t)
+//T(,once_flag)
+T(,pid_t)
+T(,posix_spawn_file_actions_t)
+T(,posix_spawnattr_t)
+T(,prfpregset_t)
+T(,prgregset_t)
+T(,prpsinfo_t)
+T(,prstatus_t)
+T(,psaddr_t)
+T(,pthread_attr_t)
+T(,pthread_barrier_t)
+T(,pthread_barrierattr_t)
+T(,pthread_cond_t)
+T(,pthread_condattr_t)
+T(,pthread_key_t)
+T(,pthread_mutex_t)
+T(,pthread_mutexattr_t)
+T(,pthread_once_t)
+T(,pthread_rwlock_t)
+T(,pthread_rwlockattr_t)
+T(,pthread_spinlock_t)
+T(,pthread_t)
+T(,ptrdiff_t)
+T(,quad_t)
+T(,regex_t)
+T(,register_t)
+T(,regmatch_t)
+T(,regoff_t)
+T(,res_state)
+T(,rlim_t)
+T(,sa_family_t)
+T(,sem_t)
+T(,sg_io_hdr_t)
+T(,sg_iovec_t)
+T(,sg_req_info_t)
+T(,shmatt_t)
+T(,short)
+T(,sig_atomic_t)
+T(,sig_t)
+T(,sighandler_t)
+T(,siginfo_t)
+T(,sigjmp_buf)
+T(,sigset_t)
+T(,size_t)
+T(,socklen_t)
+T(,speed_t)
+T(,ssize_t)
+T(,stack_t)
+T(struct,FTW)
+//T(struct,__fsid_t)
+T(struct,__jmp_buf_tag)
+//T(struct,__locale_struct)
+//T(struct,__mbstate_t)
+T(struct,__ns_msg)
+T(struct,__ns_rr)
+//T(struct,__ptcb)
+T(struct,__res_state)
+//T(struct,__sigset_t)
+//T(struct,__ucontext)
+T(struct,_ns_flagdata)
+T(struct,acct)
+T(struct,acct_v3)
+T(struct,addrinfo)
+T(struct,aiocb)
+T(struct,ar_hdr)
+T(struct,arpd_request)
+T(struct,arphdr)
+T(struct,arpreq)
+T(struct,arpreq_old)
+T(struct,bandinfo)
+T(struct,ccs_modesel_head)
+T(struct,cmsghdr)
+//T(struct,cpu_set_t)
+T(struct,crypt_data)
+T(struct,dirent)
+T(struct,dl_phdr_info)
+T(struct,dqblk)
+T(struct,dqinfo)
+T(struct,elf_prpsinfo)
+T(struct,elf_prstatus)
+T(struct,elf_siginfo)
+T(struct,entry)
+T(struct,epoll_event)
+T(struct,ether_addr)
+T(struct,ether_arp)
+T(struct,ether_header)
+T(struct,ethhdr)
+T(struct,f_owner_ex)
+T(struct,fanotify_event_metadata)
+T(struct,fanotify_response)
+T(struct,flock)
+T(struct,group)
+T(struct,group_filter)
+T(struct,group_req)
+T(struct,group_source_req)
+T(struct,hostent)
+T(struct,hsearch_data)
+T(struct,icmp)
+T(struct,icmp6_filter)
+T(struct,icmp6_hdr)
+T(struct,icmp6_router_renum)
+T(struct,icmp_ra_addr)
+T(struct,icmphdr)
+T(struct,if_nameindex)
+T(struct,ifaddr)
+T(struct,ifaddrs)
+T(struct,ifconf)
+T(struct,ifmap)
+T(struct,ifreq)
+T(struct,igmp)
+//T(struct,ih_idseq)
+//T(struct,ih_pmtu)
+//T(struct,ih_rtradv)
+T(struct,in6_addr)
+T(struct,in6_pktinfo)
+T(struct,in6_rtmsg)
+T(struct,in_addr)
+T(struct,in_pktinfo)
+T(struct,inotify_event)
+T(struct,iovec)
+T(struct,ip)
+T(struct,ip6_dest)
+T(struct,ip6_ext)
+T(struct,ip6_frag)
+T(struct,ip6_hbh)
+T(struct,ip6_hdr)
+//T(struct,ip6_hdrctl)
+T(struct,ip6_mtuinfo)
+T(struct,ip6_opt)
+T(struct,ip6_opt_jumbo)
+T(struct,ip6_opt_nsap)
+T(struct,ip6_opt_router)
+T(struct,ip6_opt_tunnel)
+T(struct,ip6_rthdr)
+T(struct,ip6_rthdr0)
+T(struct,ip_mreq)
+T(struct,ip_mreq_source)
+T(struct,ip_mreqn)
+T(struct,ip_msfilter)
+T(struct,ip_opts)
+T(struct,ip_timestamp)
+T(struct,ipc_perm)
+T(struct,iphdr)
+T(struct,ipv6_mreq)
+T(struct,itimerspec)
+T(struct,itimerval)
+T(struct,lastlog)
+T(struct,lconv)
+T(struct,linger)
+T(struct,link_map)
+T(struct,mld_hdr)
+T(struct,mmsghdr)
+T(struct,mntent)
+T(struct,mq_attr)
+T(struct,msgbuf)
+T(struct,msghdr)
+T(struct,msginfo)
+T(struct,msqid_ds)
+T(struct,mt_tape_info)
+T(struct,mtconfiginfo)
+T(struct,mtget)
+T(struct,mtop)
+T(struct,mtpos)
+T(struct,nd_neighbor_advert)
+T(struct,nd_neighbor_solicit)
+T(struct,nd_opt_adv_interval)
+T(struct,nd_opt_hdr)
+T(struct,nd_opt_home_agent_info)
+T(struct,nd_opt_mtu)
+T(struct,nd_opt_prefix_info)
+T(struct,nd_opt_rd_hdr)
+T(struct,nd_redirect)
+T(struct,nd_router_advert)
+T(struct,nd_router_solicit)
+T(struct,netent)
+T(struct,ns_tcp_tsig_state)
+T(struct,ns_tsig_key)
+T(struct,ntptimeval)
+T(struct,option)
+T(struct,packet_mreq)
+T(struct,passwd)
+T(struct,pollfd)
+T(struct,prctl_mm_map)
+T(struct,protoent)
+//T(struct,ptrace_peeksiginfo_args)
+T(struct,qelem)
+T(struct,r_debug)
+T(struct,re_pattern_buffer)
+T(struct,res_sym)
+T(struct,rlimit)
+T(struct,rr_pco_match)
+T(struct,rr_pco_use)
+T(struct,rr_result)
+T(struct,rtentry)
+T(struct,rusage)
+T(struct,sched_param)
+T(struct,sembuf)
+T(struct,semid_ds)
+T(struct,seminfo)
+T(struct,servent)
+T(struct,sg_header)
+T(struct,sg_io_hdr)
+T(struct,sg_iovec)
+T(struct,sg_req_info)
+T(struct,sg_scsi_id)
+T(struct,shm_info)
+T(struct,shmid_ds)
+T(struct,shminfo)
+T(struct,sigaction)
+T(struct,sigaltstack)
+T(struct,sigcontext)
+T(struct,sigevent)
+T(struct,signalfd_siginfo)
+T(struct,sockaddr)
+T(struct,sockaddr_in)
+T(struct,sockaddr_in6)
+T(struct,sockaddr_ll)
+T(struct,sockaddr_storage)
+T(struct,sockaddr_un)
+T(struct,spwd)
+T(struct,stat)
+T(struct,statfs)
+T(struct,statvfs)
+T(struct,str_list)
+T(struct,str_mlist)
+T(struct,strbuf)
+T(struct,strfdinsert)
+T(struct,strioctl)
+T(struct,strpeek)
+T(struct,strrecvfd)
+T(struct,sysinfo)
+T(struct,tcp_info)
+T(struct,tcp_md5sig)
+T(struct,tcphdr)
+T(struct,termios)
+T(struct,tftphdr)
+T(struct,timeb)
+T(struct,timespec)
+T(struct,timestamp)
+T(struct,timeval)
+T(struct,timex)
+T(struct,timezone)
+T(struct,tm)
+T(struct,tms)
+T(struct,ucred)
+T(struct,udphdr)
+T(struct,utimbuf)
+T(struct,utmpx)
+T(struct,utsname)
+T(struct,winsize)
+T(,suseconds_t)
+T(,tcflag_t)
+//T(,tcp_seq)
+//T(,thrd_start_t)
+//T(,thrd_t)
+T(,time_t)
+T(,timer_t)
+//T(,tss_dtor_t)
+//T(,tss_t)
+T(,u_char)
+T(,u_int)
+T(,u_int16_t)
+T(,u_int32_t)
+T(,u_int64_t)
+T(,u_int8_t)
+T(,u_long)
+T(,u_quad_t)
+T(,u_short)
+T(,ucontext_t)
+T(,uid_t)
+T(,uint)
+T(,uint16_t)
+T(,uint32_t)
+T(,uint64_t)
+T(,uint8_t)
+T(,uint_fast16_t)
+T(,uint_fast32_t)
+T(,uint_fast64_t)
+T(,uint_fast8_t)
+T(,uint_least16_t)
+T(,uint_least32_t)
+T(,uint_least64_t)
+T(,uint_least8_t)
+T(,uintmax_t)
+T(,uintptr_t)
+T(,ulong)
+//T(union,_G_fpos64_t)
+T(union,epoll_data)
+T(union,sigval)
+T(,useconds_t)
+T(,ushort)
+T(,va_list)
+P(,void)
+T(,wchar_t)
+T(,wctrans_t)
+T(,wctype_t)
+T(,wint_t)
+T(,wordexp_t)
diff --git a/abi_type.powerpc.cc b/abi_type.powerpc.cc
new file mode 100644 (file)
index 0000000..48f7fc0
--- /dev/null
@@ -0,0 +1,655 @@
+
+#define _GNU_SOURCE 1
+#define _FILE_OFFSET_BITS 64
+#define SYSLOG_NAMES 1
+#include <stddef.h>
+#include <sys/types.h>
+
+#include <aio.h>
+#include <alloca.h>
+#include <ar.h>
+#include <arpa/ftp.h>
+#include <arpa/inet.h>
+#include <arpa/nameser.h>
+#include <arpa/telnet.h>
+#include <arpa/tftp.h>
+#include <assert.h>
+#include <byteswap.h>
+#include <complex.h>
+#include <cpio.h>
+#include <crypt.h>
+#include <ctype.h>
+#include <dirent.h>
+#include <dlfcn.h>
+#include <elf.h>
+#include <endian.h>
+#include <err.h>
+#include <errno.h>
+#include <fcntl.h>
+#include <features.h>
+#include <fenv.h>
+#include <float.h>
+#include <fmtmsg.h>
+#include <fnmatch.h>
+#include <ftw.h>
+#include <getopt.h>
+#include <glob.h>
+#include <grp.h>
+#include <iconv.h>
+#include <ifaddrs.h>
+#include <inttypes.h>
+#include <iso646.h>
+#include <langinfo.h>
+#include <libgen.h>
+#include <libintl.h>
+#include <limits.h>
+#include <link.h>
+#include <locale.h>
+#include <malloc.h>
+#include <math.h>
+#include <mntent.h>
+#include <monetary.h>
+#include <mqueue.h>
+#include <net/ethernet.h>
+#include <net/if.h>
+#include <net/if_arp.h>
+#include <net/route.h>
+#include <netdb.h>
+#include <netinet/ether.h>
+#include <netinet/icmp6.h>
+#include <netinet/if_ether.h>
+#include <netinet/igmp.h>
+#include <netinet/in.h>
+#include <netinet/in_systm.h>
+#include <netinet/ip.h>
+#include <netinet/ip6.h>
+#include <netinet/ip_icmp.h>
+#include <netinet/tcp.h>
+#include <netinet/udp.h>
+#include <netpacket/packet.h>
+#include <nl_types.h>
+#include <paths.h>
+#include <poll.h>
+#include <pthread.h>
+#include <pty.h>
+#include <pwd.h>
+#include <regex.h>
+#include <resolv.h>
+#include <sched.h>
+#include <scsi/scsi.h>
+#include <scsi/scsi_ioctl.h>
+#include <scsi/sg.h>
+#include <search.h>
+#include <semaphore.h>
+#include <setjmp.h>
+#include <shadow.h>
+#include <signal.h>
+#include <spawn.h>
+//#include <stdalign.h>
+#include <stdarg.h>
+#include <stdbool.h>
+#include <stddef.h>
+#include <stdint.h>
+#include <stdio.h>
+#include <stdio_ext.h>
+#include <stdlib.h>
+//#include <stdnoreturn.h>
+#include <string.h>
+#include <strings.h>
+#include <stropts.h>
+#include <sys/acct.h>
+//#include <sys/auxv.h>
+//#include <sys/cachectl.h>
+#include <sys/dir.h>
+#include <sys/epoll.h>
+#include <sys/eventfd.h>
+#include <sys/fanotify.h>
+#include <sys/file.h>
+#include <sys/fsuid.h>
+#include <sys/inotify.h>
+//#include <sys/io.h>
+#include <sys/ioctl.h>
+#include <sys/ipc.h>
+//#include <sys/kd.h>
+#include <sys/klog.h>
+#include <sys/mman.h>
+#include <sys/mount.h>
+#include <sys/msg.h>
+#include <sys/mtio.h>
+#include <sys/param.h>
+#include <sys/personality.h>
+#include <sys/prctl.h>
+#include <sys/procfs.h>
+#include <sys/ptrace.h>
+#include <sys/quota.h>
+#include <sys/reboot.h>
+//#include <sys/reg.h>
+#include <sys/resource.h>
+#include <sys/select.h>
+#include <sys/sem.h>
+#include <sys/sendfile.h>
+#include <sys/shm.h>
+#include <sys/signalfd.h>
+#include <sys/socket.h>
+#include <sys/stat.h>
+#include <sys/statfs.h>
+#include <sys/statvfs.h>
+#include <sys/swap.h>
+#include <sys/syscall.h>
+#include <sys/sysinfo.h>
+#include <sys/sysmacros.h>
+#include <sys/time.h>
+#include <sys/timeb.h>
+#include <sys/timerfd.h>
+#include <sys/times.h>
+#include <sys/timex.h>
+#include <sys/ttydefaults.h>
+#include <sys/types.h>
+#include <sys/uio.h>
+#include <sys/un.h>
+#include <sys/user.h>
+#include <sys/utsname.h>
+#include <sys/wait.h>
+#include <sys/xattr.h>
+#include <sysexits.h>
+#include <syslog.h>
+#include <tar.h>
+#include <termios.h>
+#include <tgmath.h>
+//#include <threads.h>
+#include <time.h>
+#include <uchar.h>
+#include <ucontext.h>
+#include <ulimit.h>
+#include <unistd.h>
+#include <utime.h>
+#include <utmp.h>
+#include <utmpx.h>
+#include <values.h>
+#include <wchar.h>
+#include <wctype.h>
+#include <wordexp.h>
+
+typedef long long long_long;
+typedef long double long_double;
+struct size {char c;};
+struct align {char c;};
+#define T(s,t) void x_##t(s t x, s t* ptr, size(*y)[sizeof(s t)], align(*z)[__alignof__(s t)]){}
+#define P(s,t) void y_##t(s t* ptr, size(*y)[sizeof(s t*)], align(*z)[__alignof__(s t*)]){}
+#ifdef __GLIBC__
+#define M(x)
+#else
+#define M(x) x
+#endif
+
+T(,ACTION)
+T(,CODE)
+P(,DIR)
+T(,Dl_info)
+T(,ENTRY)
+T(,Elf32_Addr)
+T(,Elf32_Conflict)
+T(,Elf32_Dyn)
+T(,Elf32_Ehdr)
+T(,Elf32_Half)
+T(,Elf32_Lib)
+T(,Elf32_Move)
+T(,Elf32_Nhdr)
+T(,Elf32_Off)
+T(,Elf32_Phdr)
+T(,Elf32_RegInfo)
+T(,Elf32_Rel)
+T(,Elf32_Rela)
+T(,Elf32_Section)
+T(,Elf32_Shdr)
+T(,Elf32_Sword)
+T(,Elf32_Sxword)
+T(,Elf32_Sym)
+T(,Elf32_Syminfo)
+T(,Elf32_Verdaux)
+T(,Elf32_Verdef)
+T(,Elf32_Vernaux)
+T(,Elf32_Verneed)
+T(,Elf32_Versym)
+T(,Elf32_Word)
+T(,Elf32_Xword)
+T(,Elf32_auxv_t)
+T(,Elf32_gptab)
+T(,Elf64_Addr)
+T(,Elf64_Dyn)
+T(,Elf64_Ehdr)
+T(,Elf64_Half)
+T(,Elf64_Lib)
+T(,Elf64_Move)
+T(,Elf64_Nhdr)
+T(,Elf64_Off)
+T(,Elf64_Phdr)
+T(,Elf64_Rel)
+T(,Elf64_Rela)
+T(,Elf64_Section)
+T(,Elf64_Shdr)
+T(,Elf64_Sword)
+T(,Elf64_Sxword)
+T(,Elf64_Sym)
+T(,Elf64_Syminfo)
+T(,Elf64_Verdaux)
+T(,Elf64_Verdef)
+T(,Elf64_Vernaux)
+T(,Elf64_Verneed)
+T(,Elf64_Versym)
+T(,Elf64_Word)
+T(,Elf64_Xword)
+T(,Elf64_auxv_t)
+T(,Elf_Options)
+T(,Elf_Options_Hw)
+T(,Elf_Symndx)
+P(,FILE)
+T(,HEADER)
+T(,Sg_io_hdr)
+//T(,Sg_io_vec)
+T(,Sg_req_info)
+T(,Sg_scsi_id)
+T(,VISIT)
+//T(,__isoc_va_list)
+T(,__jmp_buf)
+T(,blkcnt_t)
+T(,blksize_t)
+T(,bool)
+T(,caddr_t)
+T(,cc_t)
+T(,char)
+T(,char16_t)
+T(,char32_t)
+T(,clock_t)
+T(,clockid_t)
+//T(,cnd_t)
+T(,comp_t)
+T(,cpu_set_t)
+T(,dev_t)
+T(,div_t)
+T(,double)
+T(,double_t)
+T(,elf_fpreg_t)
+T(,elf_fpregset_t)
+T(,elf_greg_t)
+T(,elf_gregset_t)
+T(,elf_vrreg_t)
+T(,elf_vrregset_t)
+T(,epoll_data_t)
+T(,eventfd_t)
+T(,fd_mask)
+T(,fd_set)
+T(,fenv_t)
+T(,fexcept_t)
+T(,float)
+T(,float_t)
+T(,fpos_t)
+T(,fpregset_t)
+T(,fsblkcnt_t)
+T(,fsfilcnt_t)
+T(,fsid_t)
+T(,gid_t)
+T(,glob_t)
+T(,greg_t)
+T(,gregset_t)
+T(,iconv_t)
+T(,id_t)
+T(,idtype_t)
+T(,imaxdiv_t)
+T(,in_addr_t)
+T(,in_port_t)
+T(,ino_t)
+T(,int)
+T(,int16_t)
+T(,int32_t)
+T(,int64_t)
+T(,int8_t)
+T(,int_fast16_t)
+T(,int_fast32_t)
+T(,int_fast64_t)
+T(,int_fast8_t)
+T(,int_least16_t)
+T(,int_least32_t)
+T(,int_least64_t)
+T(,int_least8_t)
+T(,intmax_t)
+T(,intptr_t)
+T(,jmp_buf)
+T(,key_t)
+T(,ldiv_t)
+T(,lldiv_t)
+T(,locale_t)
+T(,long)
+T(,long_double)
+T(,long_long)
+T(,lwpid_t)
+T(,max_align_t)
+T(,mbstate_t)
+T(,mcontext_t)
+T(,mode_t)
+T(,mqd_t)
+T(,msglen_t)
+T(,msgqnum_t)
+//T(,mtx_t)
+T(,n_long)
+T(,n_short)
+T(,n_time)
+T(,nfds_t)
+T(,nl_catd)
+T(,nl_item)
+T(,nlink_t)
+T(,ns_cert_types)
+T(,ns_class)
+T(,ns_flag)
+T(,ns_key_types)
+T(,ns_msg)
+T(,ns_opcode)
+T(,ns_rcode)
+T(,ns_rr)
+T(,ns_sect)
+//T(,ns_tcp_tsig_state)
+//T(,ns_tsig_key)
+T(,ns_type)
+T(,ns_update_operation)
+T(,off_t)
+//T(,once_flag)
+T(,pid_t)
+T(,posix_spawn_file_actions_t)
+T(,posix_spawnattr_t)
+T(,prfpregset_t)
+T(,prgregset_t)
+T(,prpsinfo_t)
+T(,prstatus_t)
+T(,psaddr_t)
+T(,pthread_attr_t)
+T(,pthread_barrier_t)
+T(,pthread_barrierattr_t)
+T(,pthread_cond_t)
+T(,pthread_condattr_t)
+T(,pthread_key_t)
+T(,pthread_mutex_t)
+T(,pthread_mutexattr_t)
+T(,pthread_once_t)
+T(,pthread_rwlock_t)
+T(,pthread_rwlockattr_t)
+T(,pthread_spinlock_t)
+T(,pthread_t)
+T(,ptrdiff_t)
+T(,quad_t)
+T(,regex_t)
+T(,register_t)
+T(,regmatch_t)
+T(,regoff_t)
+T(,res_state)
+T(,rlim_t)
+T(,sa_family_t)
+T(,sem_t)
+T(,sg_io_hdr_t)
+T(,sg_iovec_t)
+T(,sg_req_info_t)
+T(,shmatt_t)
+T(,short)
+T(,sig_atomic_t)
+T(,sig_t)
+T(,sighandler_t)
+T(,siginfo_t)
+T(,sigjmp_buf)
+T(,sigset_t)
+T(,size_t)
+T(,socklen_t)
+T(,speed_t)
+T(,ssize_t)
+T(,stack_t)
+T(struct,FTW)
+//T(struct,__fsid_t)
+T(struct,__jmp_buf_tag)
+//T(struct,__locale_struct)
+//T(struct,__mbstate_t)
+T(struct,__ns_msg)
+T(struct,__ns_rr)
+//T(struct,__ptcb)
+T(struct,__res_state)
+//T(struct,__sigset_t)
+//T(struct,__ucontext)
+T(struct,_ns_flagdata)
+T(struct,acct)
+T(struct,acct_v3)
+T(struct,addrinfo)
+T(struct,aiocb)
+T(struct,ar_hdr)
+T(struct,arpd_request)
+T(struct,arphdr)
+T(struct,arpreq)
+T(struct,arpreq_old)
+T(struct,bandinfo)
+T(struct,ccs_modesel_head)
+T(struct,cmsghdr)
+//T(struct,cpu_set_t)
+T(struct,crypt_data)
+T(struct,dirent)
+T(struct,dl_phdr_info)
+T(struct,dqblk)
+T(struct,dqinfo)
+T(struct,elf_prpsinfo)
+T(struct,elf_prstatus)
+T(struct,elf_siginfo)
+T(struct,entry)
+T(struct,epoll_event)
+T(struct,ether_addr)
+T(struct,ether_arp)
+T(struct,ether_header)
+T(struct,ethhdr)
+T(struct,f_owner_ex)
+T(struct,fanotify_event_metadata)
+T(struct,fanotify_response)
+T(struct,flock)
+T(struct,group)
+T(struct,group_filter)
+T(struct,group_req)
+T(struct,group_source_req)
+T(struct,hostent)
+T(struct,hsearch_data)
+T(struct,icmp)
+T(struct,icmp6_filter)
+T(struct,icmp6_hdr)
+T(struct,icmp6_router_renum)
+T(struct,icmp_ra_addr)
+T(struct,icmphdr)
+T(struct,if_nameindex)
+T(struct,ifaddr)
+T(struct,ifaddrs)
+T(struct,ifconf)
+T(struct,ifmap)
+T(struct,ifreq)
+T(struct,igmp)
+//T(struct,ih_idseq)
+//T(struct,ih_pmtu)
+//T(struct,ih_rtradv)
+T(struct,in6_addr)
+T(struct,in6_pktinfo)
+T(struct,in6_rtmsg)
+T(struct,in_addr)
+T(struct,in_pktinfo)
+T(struct,inotify_event)
+T(struct,iovec)
+T(struct,ip)
+T(struct,ip6_dest)
+T(struct,ip6_ext)
+T(struct,ip6_frag)
+T(struct,ip6_hbh)
+T(struct,ip6_hdr)
+//T(struct,ip6_hdrctl)
+T(struct,ip6_mtuinfo)
+T(struct,ip6_opt)
+T(struct,ip6_opt_jumbo)
+T(struct,ip6_opt_nsap)
+T(struct,ip6_opt_router)
+T(struct,ip6_opt_tunnel)
+T(struct,ip6_rthdr)
+T(struct,ip6_rthdr0)
+T(struct,ip_mreq)
+T(struct,ip_mreq_source)
+T(struct,ip_mreqn)
+T(struct,ip_msfilter)
+T(struct,ip_opts)
+T(struct,ip_timestamp)
+T(struct,ipc_perm)
+T(struct,iphdr)
+T(struct,ipv6_mreq)
+T(struct,itimerspec)
+T(struct,itimerval)
+T(struct,lastlog)
+T(struct,lconv)
+T(struct,linger)
+T(struct,link_map)
+T(struct,mld_hdr)
+T(struct,mmsghdr)
+T(struct,mntent)
+T(struct,mq_attr)
+T(struct,msgbuf)
+T(struct,msghdr)
+T(struct,msginfo)
+T(struct,msqid_ds)
+T(struct,mt_tape_info)
+T(struct,mtconfiginfo)
+T(struct,mtget)
+T(struct,mtop)
+T(struct,mtpos)
+T(struct,nd_neighbor_advert)
+T(struct,nd_neighbor_solicit)
+T(struct,nd_opt_adv_interval)
+T(struct,nd_opt_hdr)
+T(struct,nd_opt_home_agent_info)
+T(struct,nd_opt_mtu)
+T(struct,nd_opt_prefix_info)
+T(struct,nd_opt_rd_hdr)
+T(struct,nd_redirect)
+T(struct,nd_router_advert)
+T(struct,nd_router_solicit)
+T(struct,netent)
+T(struct,ns_tcp_tsig_state)
+T(struct,ns_tsig_key)
+T(struct,ntptimeval)
+T(struct,option)
+T(struct,packet_mreq)
+T(struct,passwd)
+T(struct,pollfd)
+T(struct,prctl_mm_map)
+T(struct,protoent)
+T(struct,pt_regs)
+//T(struct,ptrace_peeksiginfo_args)
+T(struct,qelem)
+T(struct,r_debug)
+T(struct,re_pattern_buffer)
+T(struct,res_sym)
+T(struct,rlimit)
+T(struct,rr_pco_match)
+T(struct,rr_pco_use)
+T(struct,rr_result)
+T(struct,rtentry)
+T(struct,rusage)
+T(struct,sched_param)
+T(struct,sembuf)
+T(struct,semid_ds)
+T(struct,seminfo)
+T(struct,servent)
+T(struct,sg_header)
+T(struct,sg_io_hdr)
+T(struct,sg_iovec)
+T(struct,sg_req_info)
+T(struct,sg_scsi_id)
+T(struct,shm_info)
+T(struct,shmid_ds)
+T(struct,shminfo)
+T(struct,sigaction)
+T(struct,sigaltstack)
+T(struct,sigcontext)
+T(struct,sigevent)
+T(struct,signalfd_siginfo)
+T(struct,sockaddr)
+T(struct,sockaddr_in)
+T(struct,sockaddr_in6)
+T(struct,sockaddr_ll)
+T(struct,sockaddr_storage)
+T(struct,sockaddr_un)
+T(struct,spwd)
+T(struct,stat)
+T(struct,statfs)
+T(struct,statvfs)
+T(struct,str_list)
+T(struct,str_mlist)
+T(struct,strbuf)
+T(struct,strfdinsert)
+T(struct,strioctl)
+T(struct,strpeek)
+T(struct,strrecvfd)
+T(struct,sysinfo)
+T(struct,tcp_info)
+T(struct,tcp_md5sig)
+T(struct,tcphdr)
+T(struct,termios)
+T(struct,tftphdr)
+T(struct,timeb)
+T(struct,timespec)
+T(struct,timestamp)
+T(struct,timeval)
+T(struct,timex)
+T(struct,timezone)
+T(struct,tm)
+T(struct,tms)
+T(struct,ucred)
+T(struct,udphdr)
+T(struct,user)
+T(struct,utimbuf)
+T(struct,utmpx)
+T(struct,utsname)
+T(struct,winsize)
+T(,suseconds_t)
+T(,tcflag_t)
+//T(,tcp_seq)
+//T(,thrd_start_t)
+//T(,thrd_t)
+T(,time_t)
+T(,timer_t)
+//T(,tss_dtor_t)
+//T(,tss_t)
+T(,u_char)
+T(,u_int)
+T(,u_int16_t)
+T(,u_int32_t)
+T(,u_int64_t)
+T(,u_int8_t)
+T(,u_long)
+T(,u_quad_t)
+T(,u_short)
+T(,ucontext_t)
+T(,uid_t)
+T(,uint)
+T(,uint16_t)
+T(,uint32_t)
+T(,uint64_t)
+T(,uint8_t)
+T(,uint_fast16_t)
+T(,uint_fast32_t)
+T(,uint_fast64_t)
+T(,uint_fast8_t)
+T(,uint_least16_t)
+T(,uint_least32_t)
+T(,uint_least64_t)
+T(,uint_least8_t)
+T(,uintmax_t)
+T(,uintptr_t)
+T(,ulong)
+//T(union,_G_fpos64_t)
+T(union,epoll_data)
+T(union,sigval)
+T(,useconds_t)
+T(,ushort)
+T(,va_list)
+P(,void)
+T(,vrregset_t)
+T(,wchar_t)
+T(,wctrans_t)
+T(,wctype_t)
+T(,wint_t)
+T(,wordexp_t)
diff --git a/abi_type.powerpc64.cc b/abi_type.powerpc64.cc
new file mode 100644 (file)
index 0000000..76b4774
--- /dev/null
@@ -0,0 +1,655 @@
+
+#define _GNU_SOURCE 1
+#define _FILE_OFFSET_BITS 64
+#define SYSLOG_NAMES 1
+#include <stddef.h>
+#include <sys/types.h>
+
+#include <aio.h>
+#include <alloca.h>
+#include <ar.h>
+#include <arpa/ftp.h>
+#include <arpa/inet.h>
+#include <arpa/nameser.h>
+#include <arpa/telnet.h>
+#include <arpa/tftp.h>
+#include <assert.h>
+#include <byteswap.h>
+#include <complex.h>
+#include <cpio.h>
+#include <crypt.h>
+#include <ctype.h>
+#include <dirent.h>
+#include <dlfcn.h>
+#include <elf.h>
+#include <endian.h>
+#include <err.h>
+#include <errno.h>
+#include <fcntl.h>
+#include <features.h>
+#include <fenv.h>
+#include <float.h>
+#include <fmtmsg.h>
+#include <fnmatch.h>
+#include <ftw.h>
+#include <getopt.h>
+#include <glob.h>
+#include <grp.h>
+#include <iconv.h>
+#include <ifaddrs.h>
+#include <inttypes.h>
+#include <iso646.h>
+#include <langinfo.h>
+#include <libgen.h>
+#include <libintl.h>
+#include <limits.h>
+#include <link.h>
+#include <locale.h>
+#include <malloc.h>
+#include <math.h>
+#include <mntent.h>
+#include <monetary.h>
+#include <mqueue.h>
+#include <net/ethernet.h>
+#include <net/if.h>
+#include <net/if_arp.h>
+#include <net/route.h>
+#include <netdb.h>
+#include <netinet/ether.h>
+#include <netinet/icmp6.h>
+#include <netinet/if_ether.h>
+#include <netinet/igmp.h>
+#include <netinet/in.h>
+#include <netinet/in_systm.h>
+#include <netinet/ip.h>
+#include <netinet/ip6.h>
+#include <netinet/ip_icmp.h>
+#include <netinet/tcp.h>
+#include <netinet/udp.h>
+#include <netpacket/packet.h>
+#include <nl_types.h>
+#include <paths.h>
+#include <poll.h>
+#include <pthread.h>
+#include <pty.h>
+#include <pwd.h>
+#include <regex.h>
+#include <resolv.h>
+#include <sched.h>
+#include <scsi/scsi.h>
+#include <scsi/scsi_ioctl.h>
+#include <scsi/sg.h>
+#include <search.h>
+#include <semaphore.h>
+#include <setjmp.h>
+#include <shadow.h>
+#include <signal.h>
+#include <spawn.h>
+//#include <stdalign.h>
+#include <stdarg.h>
+#include <stdbool.h>
+#include <stddef.h>
+#include <stdint.h>
+#include <stdio.h>
+#include <stdio_ext.h>
+#include <stdlib.h>
+//#include <stdnoreturn.h>
+#include <string.h>
+#include <strings.h>
+#include <stropts.h>
+#include <sys/acct.h>
+//#include <sys/auxv.h>
+//#include <sys/cachectl.h>
+#include <sys/dir.h>
+#include <sys/epoll.h>
+#include <sys/eventfd.h>
+#include <sys/fanotify.h>
+#include <sys/file.h>
+#include <sys/fsuid.h>
+#include <sys/inotify.h>
+//#include <sys/io.h>
+#include <sys/ioctl.h>
+#include <sys/ipc.h>
+//#include <sys/kd.h>
+#include <sys/klog.h>
+#include <sys/mman.h>
+#include <sys/mount.h>
+#include <sys/msg.h>
+#include <sys/mtio.h>
+#include <sys/param.h>
+#include <sys/personality.h>
+#include <sys/prctl.h>
+#include <sys/procfs.h>
+#include <sys/ptrace.h>
+#include <sys/quota.h>
+#include <sys/reboot.h>
+//#include <sys/reg.h>
+#include <sys/resource.h>
+#include <sys/select.h>
+#include <sys/sem.h>
+#include <sys/sendfile.h>
+#include <sys/shm.h>
+#include <sys/signalfd.h>
+#include <sys/socket.h>
+#include <sys/stat.h>
+#include <sys/statfs.h>
+#include <sys/statvfs.h>
+#include <sys/swap.h>
+#include <sys/syscall.h>
+#include <sys/sysinfo.h>
+#include <sys/sysmacros.h>
+#include <sys/time.h>
+#include <sys/timeb.h>
+#include <sys/timerfd.h>
+#include <sys/times.h>
+#include <sys/timex.h>
+#include <sys/ttydefaults.h>
+#include <sys/types.h>
+#include <sys/uio.h>
+#include <sys/un.h>
+#include <sys/user.h>
+#include <sys/utsname.h>
+#include <sys/wait.h>
+#include <sys/xattr.h>
+#include <sysexits.h>
+#include <syslog.h>
+#include <tar.h>
+#include <termios.h>
+#include <tgmath.h>
+//#include <threads.h>
+#include <time.h>
+#include <uchar.h>
+#include <ucontext.h>
+#include <ulimit.h>
+#include <unistd.h>
+#include <utime.h>
+#include <utmp.h>
+#include <utmpx.h>
+#include <values.h>
+#include <wchar.h>
+#include <wctype.h>
+#include <wordexp.h>
+
+typedef long long long_long;
+typedef long double long_double;
+struct size {char c;};
+struct align {char c;};
+#define T(s,t) void x_##t(s t x, s t* ptr, size(*y)[sizeof(s t)], align(*z)[__alignof__(s t)]){}
+#define P(s,t) void y_##t(s t* ptr, size(*y)[sizeof(s t*)], align(*z)[__alignof__(s t*)]){}
+#ifdef __GLIBC__
+#define M(x)
+#else
+#define M(x) x
+#endif
+
+T(,ACTION)
+T(,CODE)
+P(,DIR)
+T(,Dl_info)
+T(,ENTRY)
+T(,Elf32_Addr)
+T(,Elf32_Conflict)
+T(,Elf32_Dyn)
+T(,Elf32_Ehdr)
+T(,Elf32_Half)
+T(,Elf32_Lib)
+T(,Elf32_Move)
+T(,Elf32_Nhdr)
+T(,Elf32_Off)
+T(,Elf32_Phdr)
+T(,Elf32_RegInfo)
+T(,Elf32_Rel)
+T(,Elf32_Rela)
+T(,Elf32_Section)
+T(,Elf32_Shdr)
+T(,Elf32_Sword)
+T(,Elf32_Sxword)
+T(,Elf32_Sym)
+T(,Elf32_Syminfo)
+T(,Elf32_Verdaux)
+T(,Elf32_Verdef)
+T(,Elf32_Vernaux)
+T(,Elf32_Verneed)
+T(,Elf32_Versym)
+T(,Elf32_Word)
+T(,Elf32_Xword)
+T(,Elf32_auxv_t)
+T(,Elf32_gptab)
+T(,Elf64_Addr)
+T(,Elf64_Dyn)
+T(,Elf64_Ehdr)
+T(,Elf64_Half)
+T(,Elf64_Lib)
+T(,Elf64_Move)
+T(,Elf64_Nhdr)
+T(,Elf64_Off)
+T(,Elf64_Phdr)
+T(,Elf64_Rel)
+T(,Elf64_Rela)
+T(,Elf64_Section)
+T(,Elf64_Shdr)
+T(,Elf64_Sword)
+T(,Elf64_Sxword)
+T(,Elf64_Sym)
+T(,Elf64_Syminfo)
+T(,Elf64_Verdaux)
+T(,Elf64_Verdef)
+T(,Elf64_Vernaux)
+T(,Elf64_Verneed)
+T(,Elf64_Versym)
+T(,Elf64_Word)
+T(,Elf64_Xword)
+T(,Elf64_auxv_t)
+T(,Elf_Options)
+T(,Elf_Options_Hw)
+T(,Elf_Symndx)
+P(,FILE)
+T(,HEADER)
+T(,Sg_io_hdr)
+//T(,Sg_io_vec)
+T(,Sg_req_info)
+T(,Sg_scsi_id)
+T(,VISIT)
+//T(,__isoc_va_list)
+T(,__jmp_buf)
+T(,blkcnt_t)
+T(,blksize_t)
+T(,bool)
+T(,caddr_t)
+T(,cc_t)
+T(,char)
+T(,char16_t)
+T(,char32_t)
+T(,clock_t)
+T(,clockid_t)
+//T(,cnd_t)
+T(,comp_t)
+T(,cpu_set_t)
+T(,dev_t)
+T(,div_t)
+T(,double)
+T(,double_t)
+T(,elf_fpreg_t)
+T(,elf_fpregset_t)
+T(,elf_greg_t)
+T(,elf_gregset_t)
+T(,elf_vrreg_t)
+T(,elf_vrregset_t)
+T(,epoll_data_t)
+T(,eventfd_t)
+T(,fd_mask)
+T(,fd_set)
+T(,fenv_t)
+T(,fexcept_t)
+T(,float)
+T(,float_t)
+T(,fpos_t)
+T(,fpregset_t)
+T(,fsblkcnt_t)
+T(,fsfilcnt_t)
+T(,fsid_t)
+T(,gid_t)
+T(,glob_t)
+M(T(,greg_t))
+T(,gregset_t)
+T(,iconv_t)
+T(,id_t)
+T(,idtype_t)
+T(,imaxdiv_t)
+T(,in_addr_t)
+T(,in_port_t)
+T(,ino_t)
+T(,int)
+T(,int16_t)
+T(,int32_t)
+T(,int64_t)
+T(,int8_t)
+T(,int_fast16_t)
+T(,int_fast32_t)
+T(,int_fast64_t)
+T(,int_fast8_t)
+T(,int_least16_t)
+T(,int_least32_t)
+T(,int_least64_t)
+T(,int_least8_t)
+T(,intmax_t)
+T(,intptr_t)
+T(,jmp_buf)
+T(,key_t)
+T(,ldiv_t)
+T(,lldiv_t)
+T(,locale_t)
+T(,long)
+T(,long_double)
+T(,long_long)
+T(,lwpid_t)
+T(,max_align_t)
+T(,mbstate_t)
+T(,mcontext_t)
+T(,mode_t)
+T(,mqd_t)
+T(,msglen_t)
+T(,msgqnum_t)
+//T(,mtx_t)
+T(,n_long)
+T(,n_short)
+T(,n_time)
+T(,nfds_t)
+T(,nl_catd)
+T(,nl_item)
+T(,nlink_t)
+T(,ns_cert_types)
+T(,ns_class)
+T(,ns_flag)
+T(,ns_key_types)
+T(,ns_msg)
+T(,ns_opcode)
+T(,ns_rcode)
+T(,ns_rr)
+T(,ns_sect)
+//T(,ns_tcp_tsig_state)
+//T(,ns_tsig_key)
+T(,ns_type)
+T(,ns_update_operation)
+T(,off_t)
+//T(,once_flag)
+T(,pid_t)
+T(,posix_spawn_file_actions_t)
+T(,posix_spawnattr_t)
+T(,prfpregset_t)
+T(,prgregset_t)
+T(,prpsinfo_t)
+T(,prstatus_t)
+T(,psaddr_t)
+T(,pthread_attr_t)
+T(,pthread_barrier_t)
+T(,pthread_barrierattr_t)
+T(,pthread_cond_t)
+T(,pthread_condattr_t)
+T(,pthread_key_t)
+T(,pthread_mutex_t)
+T(,pthread_mutexattr_t)
+T(,pthread_once_t)
+T(,pthread_rwlock_t)
+T(,pthread_rwlockattr_t)
+T(,pthread_spinlock_t)
+T(,pthread_t)
+T(,ptrdiff_t)
+T(,quad_t)
+T(,regex_t)
+T(,register_t)
+T(,regmatch_t)
+T(,regoff_t)
+T(,res_state)
+T(,rlim_t)
+T(,sa_family_t)
+T(,sem_t)
+T(,sg_io_hdr_t)
+T(,sg_iovec_t)
+T(,sg_req_info_t)
+T(,shmatt_t)
+T(,short)
+T(,sig_atomic_t)
+T(,sig_t)
+T(,sighandler_t)
+T(,siginfo_t)
+T(,sigjmp_buf)
+T(,sigset_t)
+T(,size_t)
+T(,socklen_t)
+T(,speed_t)
+T(,ssize_t)
+T(,stack_t)
+T(struct,FTW)
+//T(struct,__fsid_t)
+T(struct,__jmp_buf_tag)
+//T(struct,__locale_struct)
+//T(struct,__mbstate_t)
+T(struct,__ns_msg)
+T(struct,__ns_rr)
+//T(struct,__ptcb)
+T(struct,__res_state)
+//T(struct,__sigset_t)
+//T(struct,__ucontext)
+T(struct,_ns_flagdata)
+T(struct,acct)
+T(struct,acct_v3)
+T(struct,addrinfo)
+T(struct,aiocb)
+T(struct,ar_hdr)
+T(struct,arpd_request)
+T(struct,arphdr)
+T(struct,arpreq)
+T(struct,arpreq_old)
+T(struct,bandinfo)
+T(struct,ccs_modesel_head)
+T(struct,cmsghdr)
+//T(struct,cpu_set_t)
+T(struct,crypt_data)
+T(struct,dirent)
+T(struct,dl_phdr_info)
+T(struct,dqblk)
+T(struct,dqinfo)
+T(struct,elf_prpsinfo)
+T(struct,elf_prstatus)
+T(struct,elf_siginfo)
+T(struct,entry)
+T(struct,epoll_event)
+T(struct,ether_addr)
+T(struct,ether_arp)
+T(struct,ether_header)
+T(struct,ethhdr)
+T(struct,f_owner_ex)
+T(struct,fanotify_event_metadata)
+T(struct,fanotify_response)
+T(struct,flock)
+T(struct,group)
+T(struct,group_filter)
+T(struct,group_req)
+T(struct,group_source_req)
+T(struct,hostent)
+T(struct,hsearch_data)
+T(struct,icmp)
+T(struct,icmp6_filter)
+T(struct,icmp6_hdr)
+T(struct,icmp6_router_renum)
+T(struct,icmp_ra_addr)
+T(struct,icmphdr)
+T(struct,if_nameindex)
+T(struct,ifaddr)
+T(struct,ifaddrs)
+T(struct,ifconf)
+T(struct,ifmap)
+T(struct,ifreq)
+T(struct,igmp)
+//T(struct,ih_idseq)
+//T(struct,ih_pmtu)
+//T(struct,ih_rtradv)
+T(struct,in6_addr)
+T(struct,in6_pktinfo)
+T(struct,in6_rtmsg)
+T(struct,in_addr)
+T(struct,in_pktinfo)
+T(struct,inotify_event)
+T(struct,iovec)
+T(struct,ip)
+T(struct,ip6_dest)
+T(struct,ip6_ext)
+T(struct,ip6_frag)
+T(struct,ip6_hbh)
+T(struct,ip6_hdr)
+//T(struct,ip6_hdrctl)
+T(struct,ip6_mtuinfo)
+T(struct,ip6_opt)
+T(struct,ip6_opt_jumbo)
+T(struct,ip6_opt_nsap)
+T(struct,ip6_opt_router)
+T(struct,ip6_opt_tunnel)
+T(struct,ip6_rthdr)
+T(struct,ip6_rthdr0)
+T(struct,ip_mreq)
+T(struct,ip_mreq_source)
+T(struct,ip_mreqn)
+T(struct,ip_msfilter)
+T(struct,ip_opts)
+T(struct,ip_timestamp)
+T(struct,ipc_perm)
+T(struct,iphdr)
+T(struct,ipv6_mreq)
+T(struct,itimerspec)
+T(struct,itimerval)
+T(struct,lastlog)
+T(struct,lconv)
+T(struct,linger)
+T(struct,link_map)
+T(struct,mld_hdr)
+T(struct,mmsghdr)
+T(struct,mntent)
+T(struct,mq_attr)
+T(struct,msgbuf)
+T(struct,msghdr)
+T(struct,msginfo)
+T(struct,msqid_ds)
+T(struct,mt_tape_info)
+T(struct,mtconfiginfo)
+T(struct,mtget)
+T(struct,mtop)
+T(struct,mtpos)
+T(struct,nd_neighbor_advert)
+T(struct,nd_neighbor_solicit)
+T(struct,nd_opt_adv_interval)
+T(struct,nd_opt_hdr)
+T(struct,nd_opt_home_agent_info)
+T(struct,nd_opt_mtu)
+T(struct,nd_opt_prefix_info)
+T(struct,nd_opt_rd_hdr)
+T(struct,nd_redirect)
+T(struct,nd_router_advert)
+T(struct,nd_router_solicit)
+T(struct,netent)
+T(struct,ns_tcp_tsig_state)
+T(struct,ns_tsig_key)
+T(struct,ntptimeval)
+T(struct,option)
+T(struct,packet_mreq)
+T(struct,passwd)
+T(struct,pollfd)
+T(struct,prctl_mm_map)
+T(struct,protoent)
+T(struct,pt_regs)
+//T(struct,ptrace_peeksiginfo_args)
+T(struct,qelem)
+T(struct,r_debug)
+T(struct,re_pattern_buffer)
+T(struct,res_sym)
+T(struct,rlimit)
+T(struct,rr_pco_match)
+T(struct,rr_pco_use)
+T(struct,rr_result)
+T(struct,rtentry)
+T(struct,rusage)
+T(struct,sched_param)
+T(struct,sembuf)
+T(struct,semid_ds)
+T(struct,seminfo)
+T(struct,servent)
+T(struct,sg_header)
+T(struct,sg_io_hdr)
+T(struct,sg_iovec)
+T(struct,sg_req_info)
+T(struct,sg_scsi_id)
+T(struct,shm_info)
+T(struct,shmid_ds)
+T(struct,shminfo)
+T(struct,sigaction)
+T(struct,sigaltstack)
+T(struct,sigcontext)
+T(struct,sigevent)
+T(struct,signalfd_siginfo)
+T(struct,sockaddr)
+T(struct,sockaddr_in)
+T(struct,sockaddr_in6)
+T(struct,sockaddr_ll)
+T(struct,sockaddr_storage)
+T(struct,sockaddr_un)
+T(struct,spwd)
+T(struct,stat)
+T(struct,statfs)
+T(struct,statvfs)
+T(struct,str_list)
+T(struct,str_mlist)
+T(struct,strbuf)
+T(struct,strfdinsert)
+T(struct,strioctl)
+T(struct,strpeek)
+T(struct,strrecvfd)
+T(struct,sysinfo)
+T(struct,tcp_info)
+T(struct,tcp_md5sig)
+T(struct,tcphdr)
+T(struct,termios)
+T(struct,tftphdr)
+T(struct,timeb)
+T(struct,timespec)
+T(struct,timestamp)
+T(struct,timeval)
+T(struct,timex)
+T(struct,timezone)
+T(struct,tm)
+T(struct,tms)
+T(struct,ucred)
+T(struct,udphdr)
+T(struct,user)
+T(struct,utimbuf)
+T(struct,utmpx)
+T(struct,utsname)
+T(struct,winsize)
+T(,suseconds_t)
+T(,tcflag_t)
+//T(,tcp_seq)
+//T(,thrd_start_t)
+//T(,thrd_t)
+T(,time_t)
+T(,timer_t)
+//T(,tss_dtor_t)
+//T(,tss_t)
+T(,u_char)
+T(,u_int)
+T(,u_int16_t)
+T(,u_int32_t)
+T(,u_int64_t)
+T(,u_int8_t)
+T(,u_long)
+T(,u_quad_t)
+T(,u_short)
+T(,ucontext_t)
+T(,uid_t)
+T(,uint)
+T(,uint16_t)
+T(,uint32_t)
+T(,uint64_t)
+T(,uint8_t)
+T(,uint_fast16_t)
+T(,uint_fast32_t)
+T(,uint_fast64_t)
+T(,uint_fast8_t)
+T(,uint_least16_t)
+T(,uint_least32_t)
+T(,uint_least64_t)
+T(,uint_least8_t)
+T(,uintmax_t)
+T(,uintptr_t)
+T(,ulong)
+//T(union,_G_fpos64_t)
+T(union,epoll_data)
+T(union,sigval)
+T(,useconds_t)
+T(,ushort)
+T(,va_list)
+P(,void)
+T(,vrregset_t)
+T(,wchar_t)
+T(,wctrans_t)
+T(,wctype_t)
+T(,wint_t)
+T(,wordexp_t)
diff --git a/abi_type.sh.cc b/abi_type.sh.cc
new file mode 100644 (file)
index 0000000..17ea2ed
--- /dev/null
@@ -0,0 +1,654 @@
+
+#define _GNU_SOURCE 1
+#define _FILE_OFFSET_BITS 64
+#define SYSLOG_NAMES 1
+#include <stddef.h>
+#include <sys/types.h>
+
+#include <aio.h>
+#include <alloca.h>
+#include <ar.h>
+#include <arpa/ftp.h>
+#include <arpa/inet.h>
+#include <arpa/nameser.h>
+#include <arpa/telnet.h>
+#include <arpa/tftp.h>
+#include <assert.h>
+#include <byteswap.h>
+#include <complex.h>
+#include <cpio.h>
+#include <crypt.h>
+#include <ctype.h>
+#include <dirent.h>
+#include <dlfcn.h>
+#include <elf.h>
+#include <endian.h>
+#include <err.h>
+#include <errno.h>
+#include <fcntl.h>
+#include <features.h>
+#include <fenv.h>
+#include <float.h>
+#include <fmtmsg.h>
+#include <fnmatch.h>
+#include <ftw.h>
+#include <getopt.h>
+#include <glob.h>
+#include <grp.h>
+#include <iconv.h>
+#include <ifaddrs.h>
+#include <inttypes.h>
+#include <iso646.h>
+#include <langinfo.h>
+#include <libgen.h>
+#include <libintl.h>
+#include <limits.h>
+#include <link.h>
+#include <locale.h>
+#include <malloc.h>
+#include <math.h>
+#include <mntent.h>
+#include <monetary.h>
+#include <mqueue.h>
+#include <net/ethernet.h>
+#include <net/if.h>
+#include <net/if_arp.h>
+#include <net/route.h>
+#include <netdb.h>
+#include <netinet/ether.h>
+#include <netinet/icmp6.h>
+#include <netinet/if_ether.h>
+#include <netinet/igmp.h>
+#include <netinet/in.h>
+#include <netinet/in_systm.h>
+#include <netinet/ip.h>
+#include <netinet/ip6.h>
+#include <netinet/ip_icmp.h>
+#include <netinet/tcp.h>
+#include <netinet/udp.h>
+#include <netpacket/packet.h>
+#include <nl_types.h>
+#include <paths.h>
+#include <poll.h>
+#include <pthread.h>
+#include <pty.h>
+#include <pwd.h>
+#include <regex.h>
+#include <resolv.h>
+#include <sched.h>
+#include <scsi/scsi.h>
+#include <scsi/scsi_ioctl.h>
+#include <scsi/sg.h>
+#include <search.h>
+#include <semaphore.h>
+#include <setjmp.h>
+#include <shadow.h>
+#include <signal.h>
+#include <spawn.h>
+//#include <stdalign.h>
+#include <stdarg.h>
+#include <stdbool.h>
+#include <stddef.h>
+#include <stdint.h>
+#include <stdio.h>
+#include <stdio_ext.h>
+#include <stdlib.h>
+//#include <stdnoreturn.h>
+#include <string.h>
+#include <strings.h>
+#include <stropts.h>
+#include <sys/acct.h>
+//#include <sys/auxv.h>
+//#include <sys/cachectl.h>
+#include <sys/dir.h>
+#include <sys/epoll.h>
+#include <sys/eventfd.h>
+#include <sys/fanotify.h>
+#include <sys/file.h>
+#include <sys/fsuid.h>
+#include <sys/inotify.h>
+//#include <sys/io.h>
+#include <sys/ioctl.h>
+#include <sys/ipc.h>
+//#include <sys/kd.h>
+#include <sys/klog.h>
+#include <sys/mman.h>
+#include <sys/mount.h>
+#include <sys/msg.h>
+#include <sys/mtio.h>
+#include <sys/param.h>
+#include <sys/personality.h>
+#include <sys/prctl.h>
+#include <sys/procfs.h>
+#include <sys/ptrace.h>
+#include <sys/quota.h>
+#include <sys/reboot.h>
+//#include <sys/reg.h>
+#include <sys/resource.h>
+#include <sys/select.h>
+#include <sys/sem.h>
+#include <sys/sendfile.h>
+#include <sys/shm.h>
+#include <sys/signalfd.h>
+#include <sys/socket.h>
+#include <sys/stat.h>
+#include <sys/statfs.h>
+#include <sys/statvfs.h>
+#include <sys/swap.h>
+#include <sys/syscall.h>
+#include <sys/sysinfo.h>
+#include <sys/sysmacros.h>
+#include <sys/time.h>
+#include <sys/timeb.h>
+#include <sys/timerfd.h>
+#include <sys/times.h>
+#include <sys/timex.h>
+#include <sys/ttydefaults.h>
+#include <sys/types.h>
+#include <sys/uio.h>
+#include <sys/un.h>
+#include <sys/user.h>
+#include <sys/utsname.h>
+#include <sys/wait.h>
+#include <sys/xattr.h>
+#include <sysexits.h>
+#include <syslog.h>
+#include <tar.h>
+#include <termios.h>
+#include <tgmath.h>
+//#include <threads.h>
+#include <time.h>
+#include <uchar.h>
+#include <ucontext.h>
+#include <ulimit.h>
+#include <unistd.h>
+#include <utime.h>
+#include <utmp.h>
+#include <utmpx.h>
+#include <values.h>
+#include <wchar.h>
+#include <wctype.h>
+#include <wordexp.h>
+
+typedef long long long_long;
+typedef long double long_double;
+struct size {char c;};
+struct align {char c;};
+#define T(s,t) void x_##t(s t x, s t* ptr, size(*y)[sizeof(s t)], align(*z)[__alignof__(s t)]){}
+#define P(s,t) void y_##t(s t* ptr, size(*y)[sizeof(s t*)], align(*z)[__alignof__(s t*)]){}
+#ifdef __GLIBC__
+#define M(x)
+#else
+#define M(x) x
+#endif
+
+T(,ACTION)
+T(,CODE)
+P(,DIR)
+T(,Dl_info)
+T(,ENTRY)
+T(,Elf32_Addr)
+T(,Elf32_Conflict)
+T(,Elf32_Dyn)
+T(,Elf32_Ehdr)
+T(,Elf32_Half)
+T(,Elf32_Lib)
+T(,Elf32_Move)
+T(,Elf32_Nhdr)
+T(,Elf32_Off)
+T(,Elf32_Phdr)
+T(,Elf32_RegInfo)
+T(,Elf32_Rel)
+T(,Elf32_Rela)
+T(,Elf32_Section)
+T(,Elf32_Shdr)
+T(,Elf32_Sword)
+T(,Elf32_Sxword)
+T(,Elf32_Sym)
+T(,Elf32_Syminfo)
+T(,Elf32_Verdaux)
+T(,Elf32_Verdef)
+T(,Elf32_Vernaux)
+T(,Elf32_Verneed)
+T(,Elf32_Versym)
+T(,Elf32_Word)
+T(,Elf32_Xword)
+T(,Elf32_auxv_t)
+T(,Elf32_gptab)
+T(,Elf64_Addr)
+T(,Elf64_Dyn)
+T(,Elf64_Ehdr)
+T(,Elf64_Half)
+T(,Elf64_Lib)
+T(,Elf64_Move)
+T(,Elf64_Nhdr)
+T(,Elf64_Off)
+T(,Elf64_Phdr)
+T(,Elf64_Rel)
+T(,Elf64_Rela)
+T(,Elf64_Section)
+T(,Elf64_Shdr)
+T(,Elf64_Sword)
+T(,Elf64_Sxword)
+T(,Elf64_Sym)
+T(,Elf64_Syminfo)
+T(,Elf64_Verdaux)
+T(,Elf64_Verdef)
+T(,Elf64_Vernaux)
+T(,Elf64_Verneed)
+T(,Elf64_Versym)
+T(,Elf64_Word)
+T(,Elf64_Xword)
+T(,Elf64_auxv_t)
+T(,Elf_Options)
+T(,Elf_Options_Hw)
+T(,Elf_Symndx)
+P(,FILE)
+T(,HEADER)
+T(,Sg_io_hdr)
+//T(,Sg_io_vec)
+T(,Sg_req_info)
+T(,Sg_scsi_id)
+T(,VISIT)
+//T(,__isoc_va_list)
+T(,__jmp_buf)
+T(,blkcnt_t)
+T(,blksize_t)
+T(,bool)
+T(,caddr_t)
+T(,cc_t)
+T(,char)
+T(,char16_t)
+T(,char32_t)
+T(,clock_t)
+T(,clockid_t)
+//T(,cnd_t)
+T(,comp_t)
+T(,cpu_set_t)
+T(,dev_t)
+T(,div_t)
+T(,double)
+T(,double_t)
+T(,elf_fpregset_t)
+T(,elf_greg_t)
+T(,elf_gregset_t)
+T(,epoll_data_t)
+T(,eventfd_t)
+T(,fd_mask)
+T(,fd_set)
+T(,fenv_t)
+T(,fexcept_t)
+T(,float)
+T(,float_t)
+T(,fpos_t)
+T(,fpregset_t)
+T(,freg_t)
+T(,fsblkcnt_t)
+T(,fsfilcnt_t)
+T(,fsid_t)
+T(,gid_t)
+T(,glob_t)
+T(,greg_t)
+T(,gregset_t)
+T(,iconv_t)
+T(,id_t)
+T(,idtype_t)
+T(,imaxdiv_t)
+T(,in_addr_t)
+T(,in_port_t)
+T(,ino_t)
+T(,int)
+T(,int16_t)
+T(,int32_t)
+T(,int64_t)
+T(,int8_t)
+T(,int_fast16_t)
+T(,int_fast32_t)
+T(,int_fast64_t)
+T(,int_fast8_t)
+T(,int_least16_t)
+T(,int_least32_t)
+T(,int_least64_t)
+T(,int_least8_t)
+T(,intmax_t)
+T(,intptr_t)
+T(,jmp_buf)
+T(,key_t)
+T(,ldiv_t)
+T(,lldiv_t)
+T(,locale_t)
+T(,long)
+T(,long_double)
+T(,long_long)
+T(,lwpid_t)
+T(,max_align_t)
+T(,mbstate_t)
+T(,mcontext_t)
+T(,mode_t)
+T(,mqd_t)
+T(,msglen_t)
+T(,msgqnum_t)
+//T(,mtx_t)
+T(,n_long)
+T(,n_short)
+T(,n_time)
+T(,nfds_t)
+T(,nl_catd)
+T(,nl_item)
+T(,nlink_t)
+T(,ns_cert_types)
+T(,ns_class)
+T(,ns_flag)
+T(,ns_key_types)
+T(,ns_msg)
+T(,ns_opcode)
+T(,ns_rcode)
+T(,ns_rr)
+T(,ns_sect)
+//T(,ns_tcp_tsig_state)
+//T(,ns_tsig_key)
+T(,ns_type)
+T(,ns_update_operation)
+T(,off_t)
+//T(,once_flag)
+T(,pid_t)
+T(,posix_spawn_file_actions_t)
+T(,posix_spawnattr_t)
+T(,prfpregset_t)
+T(,prgregset_t)
+T(,prpsinfo_t)
+T(,prstatus_t)
+T(,psaddr_t)
+T(,pthread_attr_t)
+T(,pthread_barrier_t)
+T(,pthread_barrierattr_t)
+T(,pthread_cond_t)
+T(,pthread_condattr_t)
+T(,pthread_key_t)
+T(,pthread_mutex_t)
+T(,pthread_mutexattr_t)
+T(,pthread_once_t)
+T(,pthread_rwlock_t)
+T(,pthread_rwlockattr_t)
+T(,pthread_spinlock_t)
+T(,pthread_t)
+T(,ptrdiff_t)
+T(,quad_t)
+T(,regex_t)
+T(,register_t)
+T(,regmatch_t)
+T(,regoff_t)
+T(,res_state)
+T(,rlim_t)
+T(,sa_family_t)
+T(,sem_t)
+T(,sg_io_hdr_t)
+T(,sg_iovec_t)
+T(,sg_req_info_t)
+T(,shmatt_t)
+T(,short)
+T(,sig_atomic_t)
+T(,sig_t)
+T(,sighandler_t)
+T(,siginfo_t)
+T(,sigjmp_buf)
+T(,sigset_t)
+T(,size_t)
+T(,socklen_t)
+T(,speed_t)
+T(,ssize_t)
+T(,stack_t)
+T(struct,FTW)
+//T(struct,__fsid_t)
+T(struct,__jmp_buf_tag)
+//T(struct,__locale_struct)
+//T(struct,__mbstate_t)
+T(struct,__ns_msg)
+T(struct,__ns_rr)
+//T(struct,__ptcb)
+T(struct,__res_state)
+//T(struct,__sigset_t)
+//T(struct,__ucontext)
+T(struct,_ns_flagdata)
+T(struct,acct)
+T(struct,acct_v3)
+T(struct,addrinfo)
+T(struct,aiocb)
+T(struct,ar_hdr)
+T(struct,arpd_request)
+T(struct,arphdr)
+T(struct,arpreq)
+T(struct,arpreq_old)
+T(struct,bandinfo)
+T(struct,ccs_modesel_head)
+T(struct,cmsghdr)
+//T(struct,cpu_set_t)
+T(struct,crypt_data)
+T(struct,dirent)
+T(struct,dl_phdr_info)
+T(struct,dqblk)
+T(struct,dqinfo)
+T(struct,elf_prpsinfo)
+T(struct,elf_prstatus)
+T(struct,elf_siginfo)
+T(struct,entry)
+T(struct,epoll_event)
+T(struct,ether_addr)
+T(struct,ether_arp)
+T(struct,ether_header)
+T(struct,ethhdr)
+T(struct,f_owner_ex)
+T(struct,fanotify_event_metadata)
+T(struct,fanotify_response)
+T(struct,flock)
+T(struct,group)
+T(struct,group_filter)
+T(struct,group_req)
+T(struct,group_source_req)
+T(struct,hostent)
+T(struct,hsearch_data)
+T(struct,icmp)
+T(struct,icmp6_filter)
+T(struct,icmp6_hdr)
+T(struct,icmp6_router_renum)
+T(struct,icmp_ra_addr)
+T(struct,icmphdr)
+T(struct,if_nameindex)
+T(struct,ifaddr)
+T(struct,ifaddrs)
+T(struct,ifconf)
+T(struct,ifmap)
+T(struct,ifreq)
+T(struct,igmp)
+//T(struct,ih_idseq)
+//T(struct,ih_pmtu)
+//T(struct,ih_rtradv)
+T(struct,in6_addr)
+T(struct,in6_pktinfo)
+T(struct,in6_rtmsg)
+T(struct,in_addr)
+T(struct,in_pktinfo)
+T(struct,inotify_event)
+T(struct,iovec)
+T(struct,ip)
+T(struct,ip6_dest)
+T(struct,ip6_ext)
+T(struct,ip6_frag)
+T(struct,ip6_hbh)
+T(struct,ip6_hdr)
+//T(struct,ip6_hdrctl)
+T(struct,ip6_mtuinfo)
+T(struct,ip6_opt)
+T(struct,ip6_opt_jumbo)
+T(struct,ip6_opt_nsap)
+T(struct,ip6_opt_router)
+T(struct,ip6_opt_tunnel)
+T(struct,ip6_rthdr)
+T(struct,ip6_rthdr0)
+T(struct,ip_mreq)
+T(struct,ip_mreq_source)
+T(struct,ip_mreqn)
+T(struct,ip_msfilter)
+T(struct,ip_opts)
+T(struct,ip_timestamp)
+T(struct,ipc_perm)
+T(struct,iphdr)
+T(struct,ipv6_mreq)
+T(struct,itimerspec)
+T(struct,itimerval)
+T(struct,lastlog)
+T(struct,lconv)
+T(struct,linger)
+T(struct,link_map)
+T(struct,mld_hdr)
+T(struct,mmsghdr)
+T(struct,mntent)
+T(struct,mq_attr)
+T(struct,msgbuf)
+T(struct,msghdr)
+T(struct,msginfo)
+T(struct,msqid_ds)
+T(struct,mt_tape_info)
+T(struct,mtconfiginfo)
+T(struct,mtget)
+T(struct,mtop)
+T(struct,mtpos)
+T(struct,nd_neighbor_advert)
+T(struct,nd_neighbor_solicit)
+T(struct,nd_opt_adv_interval)
+T(struct,nd_opt_hdr)
+T(struct,nd_opt_home_agent_info)
+T(struct,nd_opt_mtu)
+T(struct,nd_opt_prefix_info)
+T(struct,nd_opt_rd_hdr)
+T(struct,nd_redirect)
+T(struct,nd_router_advert)
+T(struct,nd_router_solicit)
+T(struct,netent)
+T(struct,ns_tcp_tsig_state)
+T(struct,ns_tsig_key)
+T(struct,ntptimeval)
+T(struct,option)
+T(struct,packet_mreq)
+T(struct,passwd)
+T(struct,pollfd)
+T(struct,prctl_mm_map)
+T(struct,protoent)
+T(struct,pt_dspregs)
+T(struct,pt_regs)
+//T(struct,ptrace_peeksiginfo_args)
+T(struct,qelem)
+T(struct,r_debug)
+T(struct,re_pattern_buffer)
+T(struct,res_sym)
+T(struct,rlimit)
+T(struct,rr_pco_match)
+T(struct,rr_pco_use)
+T(struct,rr_result)
+T(struct,rtentry)
+T(struct,rusage)
+T(struct,sched_param)
+T(struct,sembuf)
+T(struct,semid_ds)
+T(struct,seminfo)
+T(struct,servent)
+T(struct,sg_header)
+T(struct,sg_io_hdr)
+T(struct,sg_iovec)
+T(struct,sg_req_info)
+T(struct,sg_scsi_id)
+T(struct,shm_info)
+T(struct,shmid_ds)
+T(struct,shminfo)
+T(struct,sigaction)
+T(struct,sigaltstack)
+T(struct,sigcontext)
+T(struct,sigevent)
+T(struct,signalfd_siginfo)
+T(struct,sockaddr)
+T(struct,sockaddr_in)
+T(struct,sockaddr_in6)
+T(struct,sockaddr_ll)
+T(struct,sockaddr_storage)
+T(struct,sockaddr_un)
+T(struct,spwd)
+T(struct,stat)
+T(struct,statfs)
+T(struct,statvfs)
+T(struct,str_list)
+T(struct,str_mlist)
+T(struct,strbuf)
+T(struct,strfdinsert)
+T(struct,strioctl)
+T(struct,strpeek)
+T(struct,strrecvfd)
+T(struct,sysinfo)
+T(struct,tcp_info)
+T(struct,tcp_md5sig)
+T(struct,tcphdr)
+T(struct,termios)
+T(struct,tftphdr)
+T(struct,timeb)
+T(struct,timespec)
+T(struct,timestamp)
+T(struct,timeval)
+T(struct,timex)
+T(struct,timezone)
+T(struct,tm)
+T(struct,tms)
+T(struct,ucred)
+T(struct,udphdr)
+T(struct,user)
+T(struct,user_fpu_struct)
+T(struct,utimbuf)
+T(struct,utmpx)
+T(struct,utsname)
+T(struct,winsize)
+T(,suseconds_t)
+T(,tcflag_t)
+//T(,tcp_seq)
+//T(,thrd_start_t)
+//T(,thrd_t)
+T(,time_t)
+T(,timer_t)
+//T(,tss_dtor_t)
+//T(,tss_t)
+T(,u_char)
+T(,u_int)
+T(,u_int16_t)
+T(,u_int32_t)
+T(,u_int64_t)
+T(,u_int8_t)
+T(,u_long)
+T(,u_quad_t)
+T(,u_short)
+T(,ucontext_t)
+T(,uid_t)
+T(,uint)
+T(,uint16_t)
+T(,uint32_t)
+T(,uint64_t)
+T(,uint8_t)
+T(,uint_fast16_t)
+T(,uint_fast32_t)
+T(,uint_fast64_t)
+T(,uint_fast8_t)
+T(,uint_least16_t)
+T(,uint_least32_t)
+T(,uint_least64_t)
+T(,uint_least8_t)
+T(,uintmax_t)
+T(,uintptr_t)
+T(,ulong)
+//T(union,_G_fpos64_t)
+T(union,epoll_data)
+T(union,sigval)
+T(,useconds_t)
+T(,ushort)
+T(,va_list)
+P(,void)
+T(,wchar_t)
+T(,wctrans_t)
+T(,wctype_t)
+T(,wint_t)
+T(,wordexp_t)
diff --git a/abi_type.x32.cc b/abi_type.x32.cc
new file mode 100644 (file)
index 0000000..aabffae
--- /dev/null
@@ -0,0 +1,653 @@
+
+#define _GNU_SOURCE 1
+#define _FILE_OFFSET_BITS 64
+#define SYSLOG_NAMES 1
+#include <stddef.h>
+#include <sys/types.h>
+
+#include <aio.h>
+#include <alloca.h>
+#include <ar.h>
+#include <arpa/ftp.h>
+#include <arpa/inet.h>
+#include <arpa/nameser.h>
+#include <arpa/telnet.h>
+#include <arpa/tftp.h>
+#include <assert.h>
+#include <byteswap.h>
+#include <complex.h>
+#include <cpio.h>
+#include <crypt.h>
+#include <ctype.h>
+#include <dirent.h>
+#include <dlfcn.h>
+#include <elf.h>
+#include <endian.h>
+#include <err.h>
+#include <errno.h>
+#include <fcntl.h>
+#include <features.h>
+#include <fenv.h>
+#include <float.h>
+#include <fmtmsg.h>
+#include <fnmatch.h>
+#include <ftw.h>
+#include <getopt.h>
+#include <glob.h>
+#include <grp.h>
+#include <iconv.h>
+#include <ifaddrs.h>
+#include <inttypes.h>
+#include <iso646.h>
+#include <langinfo.h>
+#include <libgen.h>
+#include <libintl.h>
+#include <limits.h>
+#include <link.h>
+#include <locale.h>
+#include <malloc.h>
+#include <math.h>
+#include <mntent.h>
+#include <monetary.h>
+#include <mqueue.h>
+#include <net/ethernet.h>
+#include <net/if.h>
+#include <net/if_arp.h>
+#include <net/route.h>
+#include <netdb.h>
+#include <netinet/ether.h>
+#include <netinet/icmp6.h>
+#include <netinet/if_ether.h>
+#include <netinet/igmp.h>
+#include <netinet/in.h>
+#include <netinet/in_systm.h>
+#include <netinet/ip.h>
+#include <netinet/ip6.h>
+#include <netinet/ip_icmp.h>
+#include <netinet/tcp.h>
+#include <netinet/udp.h>
+#include <netpacket/packet.h>
+#include <nl_types.h>
+#include <paths.h>
+#include <poll.h>
+#include <pthread.h>
+#include <pty.h>
+#include <pwd.h>
+#include <regex.h>
+#include <resolv.h>
+#include <sched.h>
+#include <scsi/scsi.h>
+#include <scsi/scsi_ioctl.h>
+#include <scsi/sg.h>
+#include <search.h>
+#include <semaphore.h>
+#include <setjmp.h>
+#include <shadow.h>
+#include <signal.h>
+#include <spawn.h>
+//#include <stdalign.h>
+#include <stdarg.h>
+#include <stdbool.h>
+#include <stddef.h>
+#include <stdint.h>
+#include <stdio.h>
+#include <stdio_ext.h>
+#include <stdlib.h>
+//#include <stdnoreturn.h>
+#include <string.h>
+#include <strings.h>
+#include <stropts.h>
+#include <sys/acct.h>
+//#include <sys/auxv.h>
+//#include <sys/cachectl.h>
+#include <sys/dir.h>
+#include <sys/epoll.h>
+#include <sys/eventfd.h>
+#include <sys/fanotify.h>
+#include <sys/file.h>
+#include <sys/fsuid.h>
+#include <sys/inotify.h>
+//#include <sys/io.h>
+#include <sys/ioctl.h>
+#include <sys/ipc.h>
+//#include <sys/kd.h>
+#include <sys/klog.h>
+#include <sys/mman.h>
+#include <sys/mount.h>
+#include <sys/msg.h>
+#include <sys/mtio.h>
+#include <sys/param.h>
+#include <sys/personality.h>
+#include <sys/prctl.h>
+#include <sys/procfs.h>
+#include <sys/ptrace.h>
+#include <sys/quota.h>
+#include <sys/reboot.h>
+//#include <sys/reg.h>
+#include <sys/resource.h>
+#include <sys/select.h>
+#include <sys/sem.h>
+#include <sys/sendfile.h>
+#include <sys/shm.h>
+#include <sys/signalfd.h>
+#include <sys/socket.h>
+#include <sys/stat.h>
+#include <sys/statfs.h>
+#include <sys/statvfs.h>
+#include <sys/swap.h>
+#include <sys/syscall.h>
+#include <sys/sysinfo.h>
+#include <sys/sysmacros.h>
+#include <sys/time.h>
+#include <sys/timeb.h>
+#include <sys/timerfd.h>
+#include <sys/times.h>
+#include <sys/timex.h>
+#include <sys/ttydefaults.h>
+#include <sys/types.h>
+#include <sys/uio.h>
+#include <sys/un.h>
+#include <sys/user.h>
+#include <sys/utsname.h>
+#include <sys/wait.h>
+#include <sys/xattr.h>
+#include <sysexits.h>
+#include <syslog.h>
+#include <tar.h>
+#include <termios.h>
+#include <tgmath.h>
+//#include <threads.h>
+#include <time.h>
+#include <uchar.h>
+#include <ucontext.h>
+#include <ulimit.h>
+#include <unistd.h>
+#include <utime.h>
+#include <utmp.h>
+#include <utmpx.h>
+#include <values.h>
+#include <wchar.h>
+#include <wctype.h>
+#include <wordexp.h>
+
+typedef long long long_long;
+typedef long double long_double;
+struct size {char c;};
+struct align {char c;};
+#define T(s,t) void x_##t(s t x, s t* ptr, size(*y)[sizeof(s t)], align(*z)[__alignof__(s t)]){}
+#define P(s,t) void y_##t(s t* ptr, size(*y)[sizeof(s t*)], align(*z)[__alignof__(s t*)]){}
+#ifdef __GLIBC__
+#define M(x)
+#else
+#define M(x) x
+#endif
+
+T(,ACTION)
+T(,CODE)
+P(,DIR)
+T(,Dl_info)
+T(,ENTRY)
+T(,Elf32_Addr)
+T(,Elf32_Conflict)
+T(,Elf32_Dyn)
+T(,Elf32_Ehdr)
+T(,Elf32_Half)
+T(,Elf32_Lib)
+T(,Elf32_Move)
+T(,Elf32_Nhdr)
+T(,Elf32_Off)
+T(,Elf32_Phdr)
+T(,Elf32_RegInfo)
+T(,Elf32_Rel)
+T(,Elf32_Rela)
+T(,Elf32_Section)
+T(,Elf32_Shdr)
+T(,Elf32_Sword)
+T(,Elf32_Sxword)
+T(,Elf32_Sym)
+T(,Elf32_Syminfo)
+T(,Elf32_Verdaux)
+T(,Elf32_Verdef)
+T(,Elf32_Vernaux)
+T(,Elf32_Verneed)
+T(,Elf32_Versym)
+T(,Elf32_Word)
+T(,Elf32_Xword)
+T(,Elf32_auxv_t)
+T(,Elf32_gptab)
+T(,Elf64_Addr)
+T(,Elf64_Dyn)
+T(,Elf64_Ehdr)
+T(,Elf64_Half)
+T(,Elf64_Lib)
+T(,Elf64_Move)
+T(,Elf64_Nhdr)
+T(,Elf64_Off)
+T(,Elf64_Phdr)
+T(,Elf64_Rel)
+T(,Elf64_Rela)
+T(,Elf64_Section)
+T(,Elf64_Shdr)
+T(,Elf64_Sword)
+T(,Elf64_Sxword)
+T(,Elf64_Sym)
+T(,Elf64_Syminfo)
+T(,Elf64_Verdaux)
+T(,Elf64_Verdef)
+T(,Elf64_Vernaux)
+T(,Elf64_Verneed)
+T(,Elf64_Versym)
+T(,Elf64_Word)
+T(,Elf64_Xword)
+T(,Elf64_auxv_t)
+T(,Elf_Options)
+T(,Elf_Options_Hw)
+T(,Elf_Symndx)
+P(,FILE)
+T(,HEADER)
+T(,Sg_io_hdr)
+//T(,Sg_io_vec)
+T(,Sg_req_info)
+T(,Sg_scsi_id)
+T(,VISIT)
+//T(,__isoc_va_list)
+T(,__jmp_buf)
+T(,blkcnt_t)
+T(,blksize_t)
+T(,bool)
+T(,caddr_t)
+T(,cc_t)
+T(,char)
+T(,char16_t)
+T(,char32_t)
+T(,clock_t)
+T(,clockid_t)
+//T(,cnd_t)
+T(,comp_t)
+T(,cpu_set_t)
+T(,dev_t)
+T(,div_t)
+T(,double)
+T(,double_t)
+T(,elf_fpregset_t)
+T(,elf_greg_t)
+T(,elf_gregset_t)
+T(,epoll_data_t)
+T(,eventfd_t)
+T(,fd_mask)
+T(,fd_set)
+T(,fenv_t)
+T(,fexcept_t)
+T(,float)
+T(,float_t)
+T(,fpos_t)
+T(,fpregset_t)
+T(,fsblkcnt_t)
+T(,fsfilcnt_t)
+T(,fsid_t)
+T(,gid_t)
+T(,glob_t)
+T(,greg_t)
+T(,gregset_t)
+T(,iconv_t)
+T(,id_t)
+T(,idtype_t)
+T(,imaxdiv_t)
+T(,in_addr_t)
+T(,in_port_t)
+T(,ino_t)
+T(,int)
+T(,int16_t)
+T(,int32_t)
+T(,int64_t)
+T(,int8_t)
+T(,int_fast16_t)
+T(,int_fast32_t)
+T(,int_fast64_t)
+T(,int_fast8_t)
+T(,int_least16_t)
+T(,int_least32_t)
+T(,int_least64_t)
+T(,int_least8_t)
+T(,intmax_t)
+T(,intptr_t)
+T(,jmp_buf)
+T(,key_t)
+T(,ldiv_t)
+T(,lldiv_t)
+T(,locale_t)
+T(,long)
+T(,long_double)
+T(,long_long)
+T(,lwpid_t)
+T(,max_align_t)
+T(,mbstate_t)
+T(,mcontext_t)
+T(,mode_t)
+T(,mqd_t)
+T(,msglen_t)
+T(,msgqnum_t)
+//T(,mtx_t)
+T(,n_long)
+T(,n_short)
+T(,n_time)
+T(,nfds_t)
+T(,nl_catd)
+T(,nl_item)
+T(,nlink_t)
+T(,ns_cert_types)
+T(,ns_class)
+T(,ns_flag)
+T(,ns_key_types)
+T(,ns_msg)
+T(,ns_opcode)
+T(,ns_rcode)
+T(,ns_rr)
+T(,ns_sect)
+//T(,ns_tcp_tsig_state)
+//T(,ns_tsig_key)
+T(,ns_type)
+T(,ns_update_operation)
+T(,off_t)
+//T(,once_flag)
+T(,pid_t)
+T(,posix_spawn_file_actions_t)
+T(,posix_spawnattr_t)
+T(,prfpregset_t)
+T(,prgregset_t)
+T(,prpsinfo_t)
+T(,prstatus_t)
+T(,psaddr_t)
+T(,pthread_attr_t)
+T(,pthread_barrier_t)
+T(,pthread_barrierattr_t)
+T(,pthread_cond_t)
+T(,pthread_condattr_t)
+T(,pthread_key_t)
+T(,pthread_mutex_t)
+T(,pthread_mutexattr_t)
+T(,pthread_once_t)
+T(,pthread_rwlock_t)
+T(,pthread_rwlockattr_t)
+T(,pthread_spinlock_t)
+T(,pthread_t)
+T(,ptrdiff_t)
+T(,quad_t)
+T(,regex_t)
+T(,register_t)
+T(,regmatch_t)
+T(,regoff_t)
+T(,res_state)
+T(,rlim_t)
+T(,sa_family_t)
+T(,sem_t)
+T(,sg_io_hdr_t)
+T(,sg_iovec_t)
+T(,sg_req_info_t)
+T(,shmatt_t)
+T(,short)
+T(,sig_atomic_t)
+T(,sig_t)
+T(,sighandler_t)
+T(,siginfo_t)
+T(,sigjmp_buf)
+T(,sigset_t)
+T(,size_t)
+T(,socklen_t)
+T(,speed_t)
+T(,ssize_t)
+T(,stack_t)
+T(struct,FTW)
+//T(struct,__fsid_t)
+T(struct,__jmp_buf_tag)
+//T(struct,__locale_struct)
+//T(struct,__mbstate_t)
+T(struct,__ns_msg)
+T(struct,__ns_rr)
+//T(struct,__ptcb)
+T(struct,__res_state)
+//T(struct,__sigset_t)
+//T(struct,__ucontext)
+T(struct,_fpstate)
+T(struct,_ns_flagdata)
+T(struct,acct)
+T(struct,acct_v3)
+T(struct,addrinfo)
+T(struct,aiocb)
+T(struct,ar_hdr)
+T(struct,arpd_request)
+T(struct,arphdr)
+T(struct,arpreq)
+T(struct,arpreq_old)
+T(struct,bandinfo)
+T(struct,ccs_modesel_head)
+T(struct,cmsghdr)
+//T(struct,cpu_set_t)
+T(struct,crypt_data)
+T(struct,dirent)
+T(struct,dl_phdr_info)
+T(struct,dqblk)
+T(struct,dqinfo)
+T(struct,elf_prpsinfo)
+T(struct,elf_prstatus)
+T(struct,elf_siginfo)
+T(struct,entry)
+T(struct,epoll_event)
+T(struct,ether_addr)
+T(struct,ether_arp)
+T(struct,ether_header)
+T(struct,ethhdr)
+T(struct,f_owner_ex)
+T(struct,fanotify_event_metadata)
+T(struct,fanotify_response)
+T(struct,flock)
+T(struct,group)
+T(struct,group_filter)
+T(struct,group_req)
+T(struct,group_source_req)
+T(struct,hostent)
+T(struct,hsearch_data)
+T(struct,icmp)
+T(struct,icmp6_filter)
+T(struct,icmp6_hdr)
+T(struct,icmp6_router_renum)
+T(struct,icmp_ra_addr)
+T(struct,icmphdr)
+T(struct,if_nameindex)
+T(struct,ifaddr)
+T(struct,ifaddrs)
+T(struct,ifconf)
+T(struct,ifmap)
+T(struct,ifreq)
+T(struct,igmp)
+//T(struct,ih_idseq)
+//T(struct,ih_pmtu)
+//T(struct,ih_rtradv)
+T(struct,in6_addr)
+T(struct,in6_pktinfo)
+T(struct,in6_rtmsg)
+T(struct,in_addr)
+T(struct,in_pktinfo)
+T(struct,inotify_event)
+T(struct,iovec)
+T(struct,ip)
+T(struct,ip6_dest)
+T(struct,ip6_ext)
+T(struct,ip6_frag)
+T(struct,ip6_hbh)
+T(struct,ip6_hdr)
+//T(struct,ip6_hdrctl)
+T(struct,ip6_mtuinfo)
+T(struct,ip6_opt)
+T(struct,ip6_opt_jumbo)
+T(struct,ip6_opt_nsap)
+T(struct,ip6_opt_router)
+T(struct,ip6_opt_tunnel)
+T(struct,ip6_rthdr)
+T(struct,ip6_rthdr0)
+T(struct,ip_mreq)
+T(struct,ip_mreq_source)
+T(struct,ip_mreqn)
+T(struct,ip_msfilter)
+T(struct,ip_opts)
+T(struct,ip_timestamp)
+T(struct,ipc_perm)
+T(struct,iphdr)
+T(struct,ipv6_mreq)
+T(struct,itimerspec)
+T(struct,itimerval)
+T(struct,lastlog)
+T(struct,lconv)
+T(struct,linger)
+T(struct,link_map)
+T(struct,mld_hdr)
+T(struct,mmsghdr)
+T(struct,mntent)
+T(struct,mq_attr)
+T(struct,msgbuf)
+T(struct,msghdr)
+T(struct,msginfo)
+T(struct,msqid_ds)
+T(struct,mt_tape_info)
+T(struct,mtconfiginfo)
+T(struct,mtget)
+T(struct,mtop)
+T(struct,mtpos)
+T(struct,nd_neighbor_advert)
+T(struct,nd_neighbor_solicit)
+T(struct,nd_opt_adv_interval)
+T(struct,nd_opt_hdr)
+T(struct,nd_opt_home_agent_info)
+T(struct,nd_opt_mtu)
+T(struct,nd_opt_prefix_info)
+T(struct,nd_opt_rd_hdr)
+T(struct,nd_redirect)
+T(struct,nd_router_advert)
+T(struct,nd_router_solicit)
+T(struct,netent)
+T(struct,ns_tcp_tsig_state)
+T(struct,ns_tsig_key)
+T(struct,ntptimeval)
+T(struct,option)
+T(struct,packet_mreq)
+T(struct,passwd)
+T(struct,pollfd)
+T(struct,prctl_mm_map)
+T(struct,protoent)
+//T(struct,ptrace_peeksiginfo_args)
+T(struct,qelem)
+T(struct,r_debug)
+T(struct,re_pattern_buffer)
+T(struct,res_sym)
+T(struct,rlimit)
+T(struct,rr_pco_match)
+T(struct,rr_pco_use)
+T(struct,rr_result)
+T(struct,rtentry)
+T(struct,rusage)
+T(struct,sched_param)
+T(struct,sembuf)
+T(struct,semid_ds)
+T(struct,seminfo)
+T(struct,servent)
+T(struct,sg_header)
+T(struct,sg_io_hdr)
+T(struct,sg_iovec)
+T(struct,sg_req_info)
+T(struct,sg_scsi_id)
+T(struct,shm_info)
+T(struct,shmid_ds)
+T(struct,shminfo)
+T(struct,sigaction)
+T(struct,sigaltstack)
+T(struct,sigcontext)
+T(struct,sigevent)
+T(struct,signalfd_siginfo)
+T(struct,sockaddr)
+T(struct,sockaddr_in)
+T(struct,sockaddr_in6)
+T(struct,sockaddr_ll)
+T(struct,sockaddr_storage)
+T(struct,sockaddr_un)
+T(struct,spwd)
+T(struct,stat)
+T(struct,statfs)
+T(struct,statvfs)
+T(struct,str_list)
+T(struct,str_mlist)
+T(struct,strbuf)
+T(struct,strfdinsert)
+T(struct,strioctl)
+T(struct,strpeek)
+T(struct,strrecvfd)
+T(struct,sysinfo)
+T(struct,tcp_info)
+T(struct,tcp_md5sig)
+T(struct,tcphdr)
+T(struct,termios)
+T(struct,tftphdr)
+T(struct,timeb)
+T(struct,timespec)
+T(struct,timestamp)
+T(struct,timeval)
+T(struct,timex)
+T(struct,timezone)
+T(struct,tm)
+T(struct,tms)
+T(struct,ucred)
+T(struct,udphdr)
+T(struct,user)
+T(struct,user_fpregs_struct)
+T(struct,user_regs_struct)
+T(struct,utimbuf)
+T(struct,utmpx)
+T(struct,utsname)
+T(struct,winsize)
+T(,suseconds_t)
+T(,tcflag_t)
+//T(,tcp_seq)
+//T(,thrd_start_t)
+//T(,thrd_t)
+T(,time_t)
+T(,timer_t)
+//T(,tss_dtor_t)
+//T(,tss_t)
+T(,u_char)
+T(,u_int)
+T(,u_int16_t)
+T(,u_int32_t)
+T(,u_int64_t)
+T(,u_int8_t)
+T(,u_long)
+T(,u_quad_t)
+T(,u_short)
+T(,ucontext_t)
+T(,uid_t)
+T(,uint)
+T(,uint16_t)
+T(,uint32_t)
+T(,uint64_t)
+T(,uint8_t)
+T(,uint_fast16_t)
+T(,uint_fast32_t)
+T(,uint_fast64_t)
+T(,uint_fast8_t)
+T(,uint_least16_t)
+T(,uint_least32_t)
+T(,uint_least64_t)
+T(,uint_least8_t)
+T(,uintmax_t)
+T(,uintptr_t)
+T(,ulong)
+//T(union,_G_fpos64_t)
+T(union,epoll_data)
+T(union,sigval)
+T(,useconds_t)
+T(,ushort)
+T(,va_list)
+P(,void)
+T(,wchar_t)
+T(,wctrans_t)
+T(,wctype_t)
+T(,wint_t)
+T(,wordexp_t)
diff --git a/abi_type.x86_64.cc b/abi_type.x86_64.cc
new file mode 100644 (file)
index 0000000..aabffae
--- /dev/null
@@ -0,0 +1,653 @@
+
+#define _GNU_SOURCE 1
+#define _FILE_OFFSET_BITS 64
+#define SYSLOG_NAMES 1
+#include <stddef.h>
+#include <sys/types.h>
+
+#include <aio.h>
+#include <alloca.h>
+#include <ar.h>
+#include <arpa/ftp.h>
+#include <arpa/inet.h>
+#include <arpa/nameser.h>
+#include <arpa/telnet.h>
+#include <arpa/tftp.h>
+#include <assert.h>
+#include <byteswap.h>
+#include <complex.h>
+#include <cpio.h>
+#include <crypt.h>
+#include <ctype.h>
+#include <dirent.h>
+#include <dlfcn.h>
+#include <elf.h>
+#include <endian.h>
+#include <err.h>
+#include <errno.h>
+#include <fcntl.h>
+#include <features.h>
+#include <fenv.h>
+#include <float.h>
+#include <fmtmsg.h>
+#include <fnmatch.h>
+#include <ftw.h>
+#include <getopt.h>
+#include <glob.h>
+#include <grp.h>
+#include <iconv.h>
+#include <ifaddrs.h>
+#include <inttypes.h>
+#include <iso646.h>
+#include <langinfo.h>
+#include <libgen.h>
+#include <libintl.h>
+#include <limits.h>
+#include <link.h>
+#include <locale.h>
+#include <malloc.h>
+#include <math.h>
+#include <mntent.h>
+#include <monetary.h>
+#include <mqueue.h>
+#include <net/ethernet.h>
+#include <net/if.h>
+#include <net/if_arp.h>
+#include <net/route.h>
+#include <netdb.h>
+#include <netinet/ether.h>
+#include <netinet/icmp6.h>
+#include <netinet/if_ether.h>
+#include <netinet/igmp.h>
+#include <netinet/in.h>
+#include <netinet/in_systm.h>
+#include <netinet/ip.h>
+#include <netinet/ip6.h>
+#include <netinet/ip_icmp.h>
+#include <netinet/tcp.h>
+#include <netinet/udp.h>
+#include <netpacket/packet.h>
+#include <nl_types.h>
+#include <paths.h>
+#include <poll.h>
+#include <pthread.h>
+#include <pty.h>
+#include <pwd.h>
+#include <regex.h>
+#include <resolv.h>
+#include <sched.h>
+#include <scsi/scsi.h>
+#include <scsi/scsi_ioctl.h>
+#include <scsi/sg.h>
+#include <search.h>
+#include <semaphore.h>
+#include <setjmp.h>
+#include <shadow.h>
+#include <signal.h>
+#include <spawn.h>
+//#include <stdalign.h>
+#include <stdarg.h>
+#include <stdbool.h>
+#include <stddef.h>
+#include <stdint.h>
+#include <stdio.h>
+#include <stdio_ext.h>
+#include <stdlib.h>
+//#include <stdnoreturn.h>
+#include <string.h>
+#include <strings.h>
+#include <stropts.h>
+#include <sys/acct.h>
+//#include <sys/auxv.h>
+//#include <sys/cachectl.h>
+#include <sys/dir.h>
+#include <sys/epoll.h>
+#include <sys/eventfd.h>
+#include <sys/fanotify.h>
+#include <sys/file.h>
+#include <sys/fsuid.h>
+#include <sys/inotify.h>
+//#include <sys/io.h>
+#include <sys/ioctl.h>
+#include <sys/ipc.h>
+//#include <sys/kd.h>
+#include <sys/klog.h>
+#include <sys/mman.h>
+#include <sys/mount.h>
+#include <sys/msg.h>
+#include <sys/mtio.h>
+#include <sys/param.h>
+#include <sys/personality.h>
+#include <sys/prctl.h>
+#include <sys/procfs.h>
+#include <sys/ptrace.h>
+#include <sys/quota.h>
+#include <sys/reboot.h>
+//#include <sys/reg.h>
+#include <sys/resource.h>
+#include <sys/select.h>
+#include <sys/sem.h>
+#include <sys/sendfile.h>
+#include <sys/shm.h>
+#include <sys/signalfd.h>
+#include <sys/socket.h>
+#include <sys/stat.h>
+#include <sys/statfs.h>
+#include <sys/statvfs.h>
+#include <sys/swap.h>
+#include <sys/syscall.h>
+#include <sys/sysinfo.h>
+#include <sys/sysmacros.h>
+#include <sys/time.h>
+#include <sys/timeb.h>
+#include <sys/timerfd.h>
+#include <sys/times.h>
+#include <sys/timex.h>
+#include <sys/ttydefaults.h>
+#include <sys/types.h>
+#include <sys/uio.h>
+#include <sys/un.h>
+#include <sys/user.h>
+#include <sys/utsname.h>
+#include <sys/wait.h>
+#include <sys/xattr.h>
+#include <sysexits.h>
+#include <syslog.h>
+#include <tar.h>
+#include <termios.h>
+#include <tgmath.h>
+//#include <threads.h>
+#include <time.h>
+#include <uchar.h>
+#include <ucontext.h>
+#include <ulimit.h>
+#include <unistd.h>
+#include <utime.h>
+#include <utmp.h>
+#include <utmpx.h>
+#include <values.h>
+#include <wchar.h>
+#include <wctype.h>
+#include <wordexp.h>
+
+typedef long long long_long;
+typedef long double long_double;
+struct size {char c;};
+struct align {char c;};
+#define T(s,t) void x_##t(s t x, s t* ptr, size(*y)[sizeof(s t)], align(*z)[__alignof__(s t)]){}
+#define P(s,t) void y_##t(s t* ptr, size(*y)[sizeof(s t*)], align(*z)[__alignof__(s t*)]){}
+#ifdef __GLIBC__
+#define M(x)
+#else
+#define M(x) x
+#endif
+
+T(,ACTION)
+T(,CODE)
+P(,DIR)
+T(,Dl_info)
+T(,ENTRY)
+T(,Elf32_Addr)
+T(,Elf32_Conflict)
+T(,Elf32_Dyn)
+T(,Elf32_Ehdr)
+T(,Elf32_Half)
+T(,Elf32_Lib)
+T(,Elf32_Move)
+T(,Elf32_Nhdr)
+T(,Elf32_Off)
+T(,Elf32_Phdr)
+T(,Elf32_RegInfo)
+T(,Elf32_Rel)
+T(,Elf32_Rela)
+T(,Elf32_Section)
+T(,Elf32_Shdr)
+T(,Elf32_Sword)
+T(,Elf32_Sxword)
+T(,Elf32_Sym)
+T(,Elf32_Syminfo)
+T(,Elf32_Verdaux)
+T(,Elf32_Verdef)
+T(,Elf32_Vernaux)
+T(,Elf32_Verneed)
+T(,Elf32_Versym)
+T(,Elf32_Word)
+T(,Elf32_Xword)
+T(,Elf32_auxv_t)
+T(,Elf32_gptab)
+T(,Elf64_Addr)
+T(,Elf64_Dyn)
+T(,Elf64_Ehdr)
+T(,Elf64_Half)
+T(,Elf64_Lib)
+T(,Elf64_Move)
+T(,Elf64_Nhdr)
+T(,Elf64_Off)
+T(,Elf64_Phdr)
+T(,Elf64_Rel)
+T(,Elf64_Rela)
+T(,Elf64_Section)
+T(,Elf64_Shdr)
+T(,Elf64_Sword)
+T(,Elf64_Sxword)
+T(,Elf64_Sym)
+T(,Elf64_Syminfo)
+T(,Elf64_Verdaux)
+T(,Elf64_Verdef)
+T(,Elf64_Vernaux)
+T(,Elf64_Verneed)
+T(,Elf64_Versym)
+T(,Elf64_Word)
+T(,Elf64_Xword)
+T(,Elf64_auxv_t)
+T(,Elf_Options)
+T(,Elf_Options_Hw)
+T(,Elf_Symndx)
+P(,FILE)
+T(,HEADER)
+T(,Sg_io_hdr)
+//T(,Sg_io_vec)
+T(,Sg_req_info)
+T(,Sg_scsi_id)
+T(,VISIT)
+//T(,__isoc_va_list)
+T(,__jmp_buf)
+T(,blkcnt_t)
+T(,blksize_t)
+T(,bool)
+T(,caddr_t)
+T(,cc_t)
+T(,char)
+T(,char16_t)
+T(,char32_t)
+T(,clock_t)
+T(,clockid_t)
+//T(,cnd_t)
+T(,comp_t)
+T(,cpu_set_t)
+T(,dev_t)
+T(,div_t)
+T(,double)
+T(,double_t)
+T(,elf_fpregset_t)
+T(,elf_greg_t)
+T(,elf_gregset_t)
+T(,epoll_data_t)
+T(,eventfd_t)
+T(,fd_mask)
+T(,fd_set)
+T(,fenv_t)
+T(,fexcept_t)
+T(,float)
+T(,float_t)
+T(,fpos_t)
+T(,fpregset_t)
+T(,fsblkcnt_t)
+T(,fsfilcnt_t)
+T(,fsid_t)
+T(,gid_t)
+T(,glob_t)
+T(,greg_t)
+T(,gregset_t)
+T(,iconv_t)
+T(,id_t)
+T(,idtype_t)
+T(,imaxdiv_t)
+T(,in_addr_t)
+T(,in_port_t)
+T(,ino_t)
+T(,int)
+T(,int16_t)
+T(,int32_t)
+T(,int64_t)
+T(,int8_t)
+T(,int_fast16_t)
+T(,int_fast32_t)
+T(,int_fast64_t)
+T(,int_fast8_t)
+T(,int_least16_t)
+T(,int_least32_t)
+T(,int_least64_t)
+T(,int_least8_t)
+T(,intmax_t)
+T(,intptr_t)
+T(,jmp_buf)
+T(,key_t)
+T(,ldiv_t)
+T(,lldiv_t)
+T(,locale_t)
+T(,long)
+T(,long_double)
+T(,long_long)
+T(,lwpid_t)
+T(,max_align_t)
+T(,mbstate_t)
+T(,mcontext_t)
+T(,mode_t)
+T(,mqd_t)
+T(,msglen_t)
+T(,msgqnum_t)
+//T(,mtx_t)
+T(,n_long)
+T(,n_short)
+T(,n_time)
+T(,nfds_t)
+T(,nl_catd)
+T(,nl_item)
+T(,nlink_t)
+T(,ns_cert_types)
+T(,ns_class)
+T(,ns_flag)
+T(,ns_key_types)
+T(,ns_msg)
+T(,ns_opcode)
+T(,ns_rcode)
+T(,ns_rr)
+T(,ns_sect)
+//T(,ns_tcp_tsig_state)
+//T(,ns_tsig_key)
+T(,ns_type)
+T(,ns_update_operation)
+T(,off_t)
+//T(,once_flag)
+T(,pid_t)
+T(,posix_spawn_file_actions_t)
+T(,posix_spawnattr_t)
+T(,prfpregset_t)
+T(,prgregset_t)
+T(,prpsinfo_t)
+T(,prstatus_t)
+T(,psaddr_t)
+T(,pthread_attr_t)
+T(,pthread_barrier_t)
+T(,pthread_barrierattr_t)
+T(,pthread_cond_t)
+T(,pthread_condattr_t)
+T(,pthread_key_t)
+T(,pthread_mutex_t)
+T(,pthread_mutexattr_t)
+T(,pthread_once_t)
+T(,pthread_rwlock_t)
+T(,pthread_rwlockattr_t)
+T(,pthread_spinlock_t)
+T(,pthread_t)
+T(,ptrdiff_t)
+T(,quad_t)
+T(,regex_t)
+T(,register_t)
+T(,regmatch_t)
+T(,regoff_t)
+T(,res_state)
+T(,rlim_t)
+T(,sa_family_t)
+T(,sem_t)
+T(,sg_io_hdr_t)
+T(,sg_iovec_t)
+T(,sg_req_info_t)
+T(,shmatt_t)
+T(,short)
+T(,sig_atomic_t)
+T(,sig_t)
+T(,sighandler_t)
+T(,siginfo_t)
+T(,sigjmp_buf)
+T(,sigset_t)
+T(,size_t)
+T(,socklen_t)
+T(,speed_t)
+T(,ssize_t)
+T(,stack_t)
+T(struct,FTW)
+//T(struct,__fsid_t)
+T(struct,__jmp_buf_tag)
+//T(struct,__locale_struct)
+//T(struct,__mbstate_t)
+T(struct,__ns_msg)
+T(struct,__ns_rr)
+//T(struct,__ptcb)
+T(struct,__res_state)
+//T(struct,__sigset_t)
+//T(struct,__ucontext)
+T(struct,_fpstate)
+T(struct,_ns_flagdata)
+T(struct,acct)
+T(struct,acct_v3)
+T(struct,addrinfo)
+T(struct,aiocb)
+T(struct,ar_hdr)
+T(struct,arpd_request)
+T(struct,arphdr)
+T(struct,arpreq)
+T(struct,arpreq_old)
+T(struct,bandinfo)
+T(struct,ccs_modesel_head)
+T(struct,cmsghdr)
+//T(struct,cpu_set_t)
+T(struct,crypt_data)
+T(struct,dirent)
+T(struct,dl_phdr_info)
+T(struct,dqblk)
+T(struct,dqinfo)
+T(struct,elf_prpsinfo)
+T(struct,elf_prstatus)
+T(struct,elf_siginfo)
+T(struct,entry)
+T(struct,epoll_event)
+T(struct,ether_addr)
+T(struct,ether_arp)
+T(struct,ether_header)
+T(struct,ethhdr)
+T(struct,f_owner_ex)
+T(struct,fanotify_event_metadata)
+T(struct,fanotify_response)
+T(struct,flock)
+T(struct,group)
+T(struct,group_filter)
+T(struct,group_req)
+T(struct,group_source_req)
+T(struct,hostent)
+T(struct,hsearch_data)
+T(struct,icmp)
+T(struct,icmp6_filter)
+T(struct,icmp6_hdr)
+T(struct,icmp6_router_renum)
+T(struct,icmp_ra_addr)
+T(struct,icmphdr)
+T(struct,if_nameindex)
+T(struct,ifaddr)
+T(struct,ifaddrs)
+T(struct,ifconf)
+T(struct,ifmap)
+T(struct,ifreq)
+T(struct,igmp)
+//T(struct,ih_idseq)
+//T(struct,ih_pmtu)
+//T(struct,ih_rtradv)
+T(struct,in6_addr)
+T(struct,in6_pktinfo)
+T(struct,in6_rtmsg)
+T(struct,in_addr)
+T(struct,in_pktinfo)
+T(struct,inotify_event)
+T(struct,iovec)
+T(struct,ip)
+T(struct,ip6_dest)
+T(struct,ip6_ext)
+T(struct,ip6_frag)
+T(struct,ip6_hbh)
+T(struct,ip6_hdr)
+//T(struct,ip6_hdrctl)
+T(struct,ip6_mtuinfo)
+T(struct,ip6_opt)
+T(struct,ip6_opt_jumbo)
+T(struct,ip6_opt_nsap)
+T(struct,ip6_opt_router)
+T(struct,ip6_opt_tunnel)
+T(struct,ip6_rthdr)
+T(struct,ip6_rthdr0)
+T(struct,ip_mreq)
+T(struct,ip_mreq_source)
+T(struct,ip_mreqn)
+T(struct,ip_msfilter)
+T(struct,ip_opts)
+T(struct,ip_timestamp)
+T(struct,ipc_perm)
+T(struct,iphdr)
+T(struct,ipv6_mreq)
+T(struct,itimerspec)
+T(struct,itimerval)
+T(struct,lastlog)
+T(struct,lconv)
+T(struct,linger)
+T(struct,link_map)
+T(struct,mld_hdr)
+T(struct,mmsghdr)
+T(struct,mntent)
+T(struct,mq_attr)
+T(struct,msgbuf)
+T(struct,msghdr)
+T(struct,msginfo)
+T(struct,msqid_ds)
+T(struct,mt_tape_info)
+T(struct,mtconfiginfo)
+T(struct,mtget)
+T(struct,mtop)
+T(struct,mtpos)
+T(struct,nd_neighbor_advert)
+T(struct,nd_neighbor_solicit)
+T(struct,nd_opt_adv_interval)
+T(struct,nd_opt_hdr)
+T(struct,nd_opt_home_agent_info)
+T(struct,nd_opt_mtu)
+T(struct,nd_opt_prefix_info)
+T(struct,nd_opt_rd_hdr)
+T(struct,nd_redirect)
+T(struct,nd_router_advert)
+T(struct,nd_router_solicit)
+T(struct,netent)
+T(struct,ns_tcp_tsig_state)
+T(struct,ns_tsig_key)
+T(struct,ntptimeval)
+T(struct,option)
+T(struct,packet_mreq)
+T(struct,passwd)
+T(struct,pollfd)
+T(struct,prctl_mm_map)
+T(struct,protoent)
+//T(struct,ptrace_peeksiginfo_args)
+T(struct,qelem)
+T(struct,r_debug)
+T(struct,re_pattern_buffer)
+T(struct,res_sym)
+T(struct,rlimit)
+T(struct,rr_pco_match)
+T(struct,rr_pco_use)
+T(struct,rr_result)
+T(struct,rtentry)
+T(struct,rusage)
+T(struct,sched_param)
+T(struct,sembuf)
+T(struct,semid_ds)
+T(struct,seminfo)
+T(struct,servent)
+T(struct,sg_header)
+T(struct,sg_io_hdr)
+T(struct,sg_iovec)
+T(struct,sg_req_info)
+T(struct,sg_scsi_id)
+T(struct,shm_info)
+T(struct,shmid_ds)
+T(struct,shminfo)
+T(struct,sigaction)
+T(struct,sigaltstack)
+T(struct,sigcontext)
+T(struct,sigevent)
+T(struct,signalfd_siginfo)
+T(struct,sockaddr)
+T(struct,sockaddr_in)
+T(struct,sockaddr_in6)
+T(struct,sockaddr_ll)
+T(struct,sockaddr_storage)
+T(struct,sockaddr_un)
+T(struct,spwd)
+T(struct,stat)
+T(struct,statfs)
+T(struct,statvfs)
+T(struct,str_list)
+T(struct,str_mlist)
+T(struct,strbuf)
+T(struct,strfdinsert)
+T(struct,strioctl)
+T(struct,strpeek)
+T(struct,strrecvfd)
+T(struct,sysinfo)
+T(struct,tcp_info)
+T(struct,tcp_md5sig)
+T(struct,tcphdr)
+T(struct,termios)
+T(struct,tftphdr)
+T(struct,timeb)
+T(struct,timespec)
+T(struct,timestamp)
+T(struct,timeval)
+T(struct,timex)
+T(struct,timezone)
+T(struct,tm)
+T(struct,tms)
+T(struct,ucred)
+T(struct,udphdr)
+T(struct,user)
+T(struct,user_fpregs_struct)
+T(struct,user_regs_struct)
+T(struct,utimbuf)
+T(struct,utmpx)
+T(struct,utsname)
+T(struct,winsize)
+T(,suseconds_t)
+T(,tcflag_t)
+//T(,tcp_seq)
+//T(,thrd_start_t)
+//T(,thrd_t)
+T(,time_t)
+T(,timer_t)
+//T(,tss_dtor_t)
+//T(,tss_t)
+T(,u_char)
+T(,u_int)
+T(,u_int16_t)
+T(,u_int32_t)
+T(,u_int64_t)
+T(,u_int8_t)
+T(,u_long)
+T(,u_quad_t)
+T(,u_short)
+T(,ucontext_t)
+T(,uid_t)
+T(,uint)
+T(,uint16_t)
+T(,uint32_t)
+T(,uint64_t)
+T(,uint8_t)
+T(,uint_fast16_t)
+T(,uint_fast32_t)
+T(,uint_fast64_t)
+T(,uint_fast8_t)
+T(,uint_least16_t)
+T(,uint_least32_t)
+T(,uint_least64_t)
+T(,uint_least8_t)
+T(,uintmax_t)
+T(,uintptr_t)
+T(,ulong)
+//T(union,_G_fpos64_t)
+T(union,epoll_data)
+T(union,sigval)
+T(,useconds_t)
+T(,ushort)
+T(,va_list)
+P(,void)
+T(,wchar_t)
+T(,wctrans_t)
+T(,wctype_t)
+T(,wint_t)
+T(,wordexp_t)