[Bug 682333] Re: internal compiler error: in build_polynomial_chrec, at tree-chrec.h:143
Michiel van Wessem
682333 at bugs.launchpad.net
Sat May 28 17:02:18 UTC 2011
Precompiled source:
# 1 "filter_smartyuv.c"
# 1 "/usr/src/transcode-1.1.5/filter//"
# 1 "<built-in>"
# 1 "<command-line>"
# 1 "filter_smartyuv.c"
# 28 "filter_smartyuv.c"
# 1 "../src/transcode.h" 1
# 28 "../src/transcode.h"
# 1 "../config.h" 1
# 29 "../src/transcode.h" 2
# 1 "/usr/include/sys/stat.h" 1 3 4
# 27 "/usr/include/sys/stat.h" 3 4
# 1 "/usr/include/features.h" 1 3 4
# 323 "/usr/include/features.h" 3 4
# 1 "/usr/include/bits/predefs.h" 1 3 4
# 324 "/usr/include/features.h" 2 3 4
# 356 "/usr/include/features.h" 3 4
# 1 "/usr/include/sys/cdefs.h" 1 3 4
# 353 "/usr/include/sys/cdefs.h" 3 4
# 1 "/usr/include/bits/wordsize.h" 1 3 4
# 354 "/usr/include/sys/cdefs.h" 2 3 4
# 357 "/usr/include/features.h" 2 3 4
# 388 "/usr/include/features.h" 3 4
# 1 "/usr/include/gnu/stubs.h" 1 3 4
# 1 "/usr/include/bits/wordsize.h" 1 3 4
# 5 "/usr/include/gnu/stubs.h" 2 3 4
# 1 "/usr/include/gnu/stubs-64.h" 1 3 4
# 10 "/usr/include/gnu/stubs.h" 2 3 4
# 389 "/usr/include/features.h" 2 3 4
# 28 "/usr/include/sys/stat.h" 2 3 4
# 1 "/usr/include/bits/types.h" 1 3 4
# 28 "/usr/include/bits/types.h" 3 4
# 1 "/usr/include/bits/wordsize.h" 1 3 4
# 29 "/usr/include/bits/types.h" 2 3 4
typedef unsigned char __u_char;
typedef unsigned short int __u_short;
typedef unsigned int __u_int;
typedef unsigned long int __u_long;
typedef signed char __int8_t;
typedef unsigned char __uint8_t;
typedef signed short int __int16_t;
typedef unsigned short int __uint16_t;
typedef signed int __int32_t;
typedef unsigned int __uint32_t;
typedef signed long int __int64_t;
typedef unsigned long int __uint64_t;
typedef long int __quad_t;
typedef unsigned long int __u_quad_t;
# 131 "/usr/include/bits/types.h" 3 4
# 1 "/usr/include/bits/typesizes.h" 1 3 4
# 132 "/usr/include/bits/types.h" 2 3 4
typedef unsigned long int __dev_t;
typedef unsigned int __uid_t;
typedef unsigned int __gid_t;
typedef unsigned long int __ino_t;
typedef unsigned long int __ino64_t;
typedef unsigned int __mode_t;
typedef unsigned long int __nlink_t;
typedef long int __off_t;
typedef long int __off64_t;
typedef int __pid_t;
typedef struct { int __val[2]; } __fsid_t;
typedef long int __clock_t;
typedef unsigned long int __rlim_t;
typedef unsigned long int __rlim64_t;
typedef unsigned int __id_t;
typedef long int __time_t;
typedef unsigned int __useconds_t;
typedef long int __suseconds_t;
typedef int __daddr_t;
typedef long int __swblk_t;
typedef int __key_t;
typedef int __clockid_t;
typedef void * __timer_t;
typedef long int __blksize_t;
typedef long int __blkcnt_t;
typedef long int __blkcnt64_t;
typedef unsigned long int __fsblkcnt_t;
typedef unsigned long int __fsblkcnt64_t;
typedef unsigned long int __fsfilcnt_t;
typedef unsigned long int __fsfilcnt64_t;
typedef long int __ssize_t;
typedef __off64_t __loff_t;
typedef __quad_t *__qaddr_t;
typedef char *__caddr_t;
typedef long int __intptr_t;
typedef unsigned int __socklen_t;
# 30 "/usr/include/sys/stat.h" 2 3 4
# 39 "/usr/include/sys/stat.h" 3 4
# 1 "/usr/include/time.h" 1 3 4
# 74 "/usr/include/time.h" 3 4
typedef __time_t time_t;
# 120 "/usr/include/time.h" 3 4
struct timespec
{
__time_t tv_sec;
long int tv_nsec;
};
# 40 "/usr/include/sys/stat.h" 2 3 4
typedef __dev_t dev_t;
typedef __gid_t gid_t;
typedef __ino_t ino_t;
typedef __mode_t mode_t;
typedef __nlink_t nlink_t;
typedef __off_t off_t;
typedef __uid_t uid_t;
# 105 "/usr/include/sys/stat.h" 3 4
# 1 "/usr/include/bits/stat.h" 1 3 4
# 46 "/usr/include/bits/stat.h" 3 4
struct stat
{
__dev_t st_dev;
__ino_t st_ino;
__nlink_t st_nlink;
__mode_t st_mode;
__uid_t st_uid;
__gid_t st_gid;
int __pad0;
__dev_t st_rdev;
__off_t st_size;
__blksize_t st_blksize;
__blkcnt_t st_blocks;
# 91 "/usr/include/bits/stat.h" 3 4
struct timespec st_atim;
struct timespec st_mtim;
struct timespec st_ctim;
# 106 "/usr/include/bits/stat.h" 3 4
long int __unused[3];
# 115 "/usr/include/bits/stat.h" 3 4
};
# 108 "/usr/include/sys/stat.h" 2 3 4
# 211 "/usr/include/sys/stat.h" 3 4
extern int stat (__const char *__restrict __file,
struct stat *__restrict __buf) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int fstat (int __fd, struct stat *__buf) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2)));
# 240 "/usr/include/sys/stat.h" 3 4
extern int fstatat (int __fd, __const char *__restrict __file,
struct stat *__restrict __buf, int __flag)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2, 3)));
# 265 "/usr/include/sys/stat.h" 3 4
extern int lstat (__const char *__restrict __file,
struct stat *__restrict __buf) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
# 286 "/usr/include/sys/stat.h" 3 4
extern int chmod (__const char *__file, __mode_t __mode)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int lchmod (__const char *__file, __mode_t __mode)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int fchmod (int __fd, __mode_t __mode) __attribute__ ((__nothrow__));
extern int fchmodat (int __fd, __const char *__file, __mode_t __mode,
int __flag)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2))) __attribute__ ((__warn_unused_result__));
extern __mode_t umask (__mode_t __mask) __attribute__ ((__nothrow__));
# 323 "/usr/include/sys/stat.h" 3 4
extern int mkdir (__const char *__path, __mode_t __mode)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int mkdirat (int __fd, __const char *__path, __mode_t __mode)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2)));
extern int mknod (__const char *__path, __mode_t __mode, __dev_t __dev)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int mknodat (int __fd, __const char *__path, __mode_t __mode,
__dev_t __dev) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2)));
extern int mkfifo (__const char *__path, __mode_t __mode)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int mkfifoat (int __fd, __const char *__path, __mode_t __mode)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2)));
extern int utimensat (int __fd, __const char *__path,
__const struct timespec __times[2],
int __flags)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2)));
extern int futimens (int __fd, __const struct timespec __times[2]) __attribute__ ((__nothrow__));
# 401 "/usr/include/sys/stat.h" 3 4
extern int __fxstat (int __ver, int __fildes, struct stat *__stat_buf)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3)));
extern int __xstat (int __ver, __const char *__filename,
struct stat *__stat_buf) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2, 3)));
extern int __lxstat (int __ver, __const char *__filename,
struct stat *__stat_buf) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2, 3)));
extern int __fxstatat (int __ver, int __fildes, __const char *__filename,
struct stat *__stat_buf, int __flag)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3, 4)));
# 444 "/usr/include/sys/stat.h" 3 4
extern int __xmknod (int __ver, __const char *__path, __mode_t __mode,
__dev_t *__dev) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2, 4)));
extern int __xmknodat (int __ver, int __fd, __const char *__path,
__mode_t __mode, __dev_t *__dev)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3, 5)));
extern __inline int
__attribute__ ((__nothrow__)) stat (__const char *__path, struct stat *__statbuf)
{
return __xstat (1, __path, __statbuf);
}
extern __inline int
__attribute__ ((__nothrow__)) lstat (__const char *__path, struct stat *__statbuf)
{
return __lxstat (1, __path, __statbuf);
}
extern __inline int
__attribute__ ((__nothrow__)) fstat (int __fd, struct stat *__statbuf)
{
return __fxstat (1, __fd, __statbuf);
}
extern __inline int
__attribute__ ((__nothrow__)) fstatat (int __fd, __const char *__filename, struct stat *__statbuf, int __flag)
{
return __fxstatat (1, __fd, __filename, __statbuf, __flag);
}
extern __inline int
__attribute__ ((__nothrow__)) mknod (__const char *__path, __mode_t __mode, __dev_t __dev)
{
return __xmknod (0, __path, __mode, &__dev);
}
extern __inline int
__attribute__ ((__nothrow__)) mknodat (int __fd, __const char *__path, __mode_t __mode, __dev_t __dev)
{
return __xmknodat (0, __fd, __path, __mode, &__dev);
}
# 536 "/usr/include/sys/stat.h" 3 4
# 32 "../src/transcode.h" 2
# 1 "/usr/include/sys/time.h" 1 3 4
# 27 "/usr/include/sys/time.h" 3 4
# 1 "/usr/include/time.h" 1 3 4
# 28 "/usr/include/sys/time.h" 2 3 4
# 1 "/usr/include/bits/time.h" 1 3 4
# 75 "/usr/include/bits/time.h" 3 4
struct timeval
{
__time_t tv_sec;
__suseconds_t tv_usec;
};
# 30 "/usr/include/sys/time.h" 2 3 4
# 1 "/usr/include/sys/select.h" 1 3 4
# 31 "/usr/include/sys/select.h" 3 4
# 1 "/usr/include/bits/select.h" 1 3 4
# 23 "/usr/include/bits/select.h" 3 4
# 1 "/usr/include/bits/wordsize.h" 1 3 4
# 24 "/usr/include/bits/select.h" 2 3 4
# 32 "/usr/include/sys/select.h" 2 3 4
# 1 "/usr/include/bits/sigset.h" 1 3 4
# 24 "/usr/include/bits/sigset.h" 3 4
typedef int __sig_atomic_t;
typedef struct
{
unsigned long int __val[(1024 / (8 * sizeof (unsigned long int)))];
} __sigset_t;
# 35 "/usr/include/sys/select.h" 2 3 4
typedef __sigset_t sigset_t;
# 1 "/usr/include/time.h" 1 3 4
# 45 "/usr/include/sys/select.h" 2 3 4
# 1 "/usr/include/bits/time.h" 1 3 4
# 47 "/usr/include/sys/select.h" 2 3 4
typedef __suseconds_t suseconds_t;
typedef long int __fd_mask;
# 67 "/usr/include/sys/select.h" 3 4
typedef struct
{
__fd_mask __fds_bits[1024 / (8 * (int) sizeof (__fd_mask))];
} fd_set;
typedef __fd_mask fd_mask;
# 99 "/usr/include/sys/select.h" 3 4
# 109 "/usr/include/sys/select.h" 3 4
extern int select (int __nfds, fd_set *__restrict __readfds,
fd_set *__restrict __writefds,
fd_set *__restrict __exceptfds,
struct timeval *__restrict __timeout);
# 121 "/usr/include/sys/select.h" 3 4
extern int pselect (int __nfds, fd_set *__restrict __readfds,
fd_set *__restrict __writefds,
fd_set *__restrict __exceptfds,
const struct timespec *__restrict __timeout,
const __sigset_t *__restrict __sigmask);
# 32 "/usr/include/sys/time.h" 2 3 4
# 57 "/usr/include/sys/time.h" 3 4
struct timezone
{
int tz_minuteswest;
int tz_dsttime;
};
typedef struct timezone *__restrict __timezone_ptr_t;
# 73 "/usr/include/sys/time.h" 3 4
extern int gettimeofday (struct timeval *__restrict __tv,
__timezone_ptr_t __tz) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int settimeofday (__const struct timeval *__tv,
__const struct timezone *__tz)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int adjtime (__const struct timeval *__delta,
struct timeval *__olddelta) __attribute__ ((__nothrow__));
enum __itimer_which
{
ITIMER_REAL = 0,
ITIMER_VIRTUAL = 1,
ITIMER_PROF = 2
};
struct itimerval
{
struct timeval it_interval;
struct timeval it_value;
};
typedef int __itimer_which_t;
extern int getitimer (__itimer_which_t __which,
struct itimerval *__value) __attribute__ ((__nothrow__));
extern int setitimer (__itimer_which_t __which,
__const struct itimerval *__restrict __new,
struct itimerval *__restrict __old) __attribute__ ((__nothrow__));
extern int utimes (__const char *__file, __const struct timeval __tvp[2])
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int lutimes (__const char *__file, __const struct timeval __tvp[2])
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int futimes (int __fd, __const struct timeval __tvp[2]) __attribute__ ((__nothrow__));
# 191 "/usr/include/sys/time.h" 3 4
# 33 "../src/transcode.h" 2
# 1 "/usr/include/errno.h" 1 3 4
# 32 "/usr/include/errno.h" 3 4
# 1 "/usr/include/bits/errno.h" 1 3 4
# 25 "/usr/include/bits/errno.h" 3 4
# 1 "/usr/include/linux/errno.h" 1 3 4
# 1 "/usr/include/x86_64-linux-gnu/asm/errno.h" 1 3 4
# 1 "/usr/include/asm-generic/errno.h" 1 3 4
# 1 "/usr/include/asm-generic/errno-base.h" 1 3 4
# 5 "/usr/include/asm-generic/errno.h" 2 3 4
# 1 "/usr/include/x86_64-linux-gnu/asm/errno.h" 2 3 4
# 5 "/usr/include/linux/errno.h" 2 3 4
# 26 "/usr/include/bits/errno.h" 2 3 4
# 47 "/usr/include/bits/errno.h" 3 4
extern int *__errno_location (void) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
# 37 "/usr/include/errno.h" 2 3 4
# 59 "/usr/include/errno.h" 3 4
# 34 "../src/transcode.h" 2
# 1 "/usr/include/fcntl.h" 1 3 4
# 30 "/usr/include/fcntl.h" 3 4
# 1 "/usr/include/bits/fcntl.h" 1 3 4
# 25 "/usr/include/bits/fcntl.h" 3 4
# 1 "/usr/include/sys/types.h" 1 3 4
# 28 "/usr/include/sys/types.h" 3 4
typedef __u_char u_char;
typedef __u_short u_short;
typedef __u_int u_int;
typedef __u_long u_long;
typedef __quad_t quad_t;
typedef __u_quad_t u_quad_t;
typedef __fsid_t fsid_t;
typedef __loff_t loff_t;
# 99 "/usr/include/sys/types.h" 3 4
typedef __pid_t pid_t;
typedef __id_t id_t;
typedef __ssize_t ssize_t;
typedef __daddr_t daddr_t;
typedef __caddr_t caddr_t;
typedef __key_t key_t;
# 133 "/usr/include/sys/types.h" 3 4
# 1 "/usr/include/time.h" 1 3 4
# 58 "/usr/include/time.h" 3 4
typedef __clock_t clock_t;
# 92 "/usr/include/time.h" 3 4
typedef __clockid_t clockid_t;
# 104 "/usr/include/time.h" 3 4
typedef __timer_t timer_t;
# 134 "/usr/include/sys/types.h" 2 3 4
# 147 "/usr/include/sys/types.h" 3 4
# 1 "/usr/lib/x86_64-linux-gnu/gcc/x86_64-linux-gnu/4.5.2/include/stddef.h" 1 3 4
# 211 "/usr/lib/x86_64-linux-gnu/gcc/x86_64-linux-gnu/4.5.2/include/stddef.h" 3 4
typedef long unsigned int size_t;
# 148 "/usr/include/sys/types.h" 2 3 4
typedef unsigned long int ulong;
typedef unsigned short int ushort;
typedef unsigned int uint;
# 195 "/usr/include/sys/types.h" 3 4
typedef int int8_t __attribute__ ((__mode__ (__QI__)));
typedef int int16_t __attribute__ ((__mode__ (__HI__)));
typedef int int32_t __attribute__ ((__mode__ (__SI__)));
typedef int int64_t __attribute__ ((__mode__ (__DI__)));
typedef unsigned int u_int8_t __attribute__ ((__mode__ (__QI__)));
typedef unsigned int u_int16_t __attribute__ ((__mode__ (__HI__)));
typedef unsigned int u_int32_t __attribute__ ((__mode__ (__SI__)));
typedef unsigned int u_int64_t __attribute__ ((__mode__ (__DI__)));
typedef int register_t __attribute__ ((__mode__ (__word__)));
# 217 "/usr/include/sys/types.h" 3 4
# 1 "/usr/include/endian.h" 1 3 4
# 37 "/usr/include/endian.h" 3 4
# 1 "/usr/include/bits/endian.h" 1 3 4
# 38 "/usr/include/endian.h" 2 3 4
# 61 "/usr/include/endian.h" 3 4
# 1 "/usr/include/bits/byteswap.h" 1 3 4
# 28 "/usr/include/bits/byteswap.h" 3 4
# 1 "/usr/include/bits/wordsize.h" 1 3 4
# 29 "/usr/include/bits/byteswap.h" 2 3 4
# 62 "/usr/include/endian.h" 2 3 4
# 218 "/usr/include/sys/types.h" 2 3 4
# 1 "/usr/include/sys/sysmacros.h" 1 3 4
# 30 "/usr/include/sys/sysmacros.h" 3 4
__extension__
extern unsigned int gnu_dev_major (unsigned long long int __dev)
__attribute__ ((__nothrow__));
__extension__
extern unsigned int gnu_dev_minor (unsigned long long int __dev)
__attribute__ ((__nothrow__));
__extension__
extern unsigned long long int gnu_dev_makedev (unsigned int __major,
unsigned int __minor)
__attribute__ ((__nothrow__));
__extension__ extern __inline unsigned int
__attribute__ ((__nothrow__)) gnu_dev_major (unsigned long long int __dev)
{
return ((__dev >> 8) & 0xfff) | ((unsigned int) (__dev >> 32) & ~0xfff);
}
__extension__ extern __inline unsigned int
__attribute__ ((__nothrow__)) gnu_dev_minor (unsigned long long int __dev)
{
return (__dev & 0xff) | ((unsigned int) (__dev >> 12) & ~0xff);
}
__extension__ extern __inline unsigned long long int
__attribute__ ((__nothrow__)) gnu_dev_makedev (unsigned int __major, unsigned int __minor)
{
return ((__minor & 0xff) | ((__major & 0xfff) << 8)
| (((unsigned long long int) (__minor & ~0xff)) << 12)
| (((unsigned long long int) (__major & ~0xfff)) << 32));
}
# 224 "/usr/include/sys/types.h" 2 3 4
typedef __blksize_t blksize_t;
typedef __blkcnt_t blkcnt_t;
typedef __fsblkcnt_t fsblkcnt_t;
typedef __fsfilcnt_t fsfilcnt_t;
# 271 "/usr/include/sys/types.h" 3 4
# 1 "/usr/include/bits/pthreadtypes.h" 1 3 4
# 23 "/usr/include/bits/pthreadtypes.h" 3 4
# 1 "/usr/include/bits/wordsize.h" 1 3 4
# 24 "/usr/include/bits/pthreadtypes.h" 2 3 4
# 50 "/usr/include/bits/pthreadtypes.h" 3 4
typedef unsigned long int pthread_t;
typedef union
{
char __size[56];
long int __align;
} pthread_attr_t;
typedef struct __pthread_internal_list
{
struct __pthread_internal_list *__prev;
struct __pthread_internal_list *__next;
} __pthread_list_t;
# 76 "/usr/include/bits/pthreadtypes.h" 3 4
typedef union
{
struct __pthread_mutex_s
{
int __lock;
unsigned int __count;
int __owner;
unsigned int __nusers;
int __kind;
int __spins;
__pthread_list_t __list;
# 101 "/usr/include/bits/pthreadtypes.h" 3 4
} __data;
char __size[40];
long int __align;
} pthread_mutex_t;
typedef union
{
char __size[4];
int __align;
} pthread_mutexattr_t;
typedef union
{
struct
{
int __lock;
unsigned int __futex;
__extension__ unsigned long long int __total_seq;
__extension__ unsigned long long int __wakeup_seq;
__extension__ unsigned long long int __woken_seq;
void *__mutex;
unsigned int __nwaiters;
unsigned int __broadcast_seq;
} __data;
char __size[48];
__extension__ long long int __align;
} pthread_cond_t;
typedef union
{
char __size[4];
int __align;
} pthread_condattr_t;
typedef unsigned int pthread_key_t;
typedef int pthread_once_t;
typedef union
{
struct
{
int __lock;
unsigned int __nr_readers;
unsigned int __readers_wakeup;
unsigned int __writer_wakeup;
unsigned int __nr_readers_queued;
unsigned int __nr_writers_queued;
int __writer;
int __shared;
unsigned long int __pad1;
unsigned long int __pad2;
unsigned int __flags;
} __data;
# 187 "/usr/include/bits/pthreadtypes.h" 3 4
char __size[56];
long int __align;
} pthread_rwlock_t;
typedef union
{
char __size[8];
long int __align;
} pthread_rwlockattr_t;
typedef volatile int pthread_spinlock_t;
typedef union
{
char __size[32];
long int __align;
} pthread_barrier_t;
typedef union
{
char __size[4];
int __align;
} pthread_barrierattr_t;
# 272 "/usr/include/sys/types.h" 2 3 4
# 26 "/usr/include/bits/fcntl.h" 2 3 4
# 1 "/usr/include/bits/wordsize.h" 1 3 4
# 27 "/usr/include/bits/fcntl.h" 2 3 4
# 167 "/usr/include/bits/fcntl.h" 3 4
struct flock
{
short int l_type;
short int l_whence;
__off_t l_start;
__off_t l_len;
__pid_t l_pid;
};
# 267 "/usr/include/bits/fcntl.h" 3 4
# 312 "/usr/include/bits/fcntl.h" 3 4
# 35 "/usr/include/fcntl.h" 2 3 4
# 1 "/usr/include/time.h" 1 3 4
# 41 "/usr/include/fcntl.h" 2 3 4
# 1 "/usr/include/bits/stat.h" 1 3 4
# 42 "/usr/include/fcntl.h" 2 3 4
# 110 "/usr/include/fcntl.h" 3 4
extern int fcntl (int __fd, int __cmd, ...);
# 119 "/usr/include/fcntl.h" 3 4
extern int open (__const char *__file, int __oflag, ...) __attribute__ ((__nonnull__ (1)));
# 143 "/usr/include/fcntl.h" 3 4
extern int openat (int __fd, __const char *__file, int __oflag, ...)
__attribute__ ((__nonnull__ (2)));
# 165 "/usr/include/fcntl.h" 3 4
extern int creat (__const char *__file, __mode_t __mode) __attribute__ ((__nonnull__ (1)));
# 194 "/usr/include/fcntl.h" 3 4
extern int lockf (int __fd, int __cmd, __off_t __len);
# 211 "/usr/include/fcntl.h" 3 4
extern int posix_fadvise (int __fd, __off_t __offset, __off_t __len,
int __advise) __attribute__ ((__nothrow__));
# 233 "/usr/include/fcntl.h" 3 4
extern int posix_fallocate (int __fd, __off_t __offset, __off_t __len);
# 252 "/usr/include/fcntl.h" 3 4
# 1 "/usr/include/bits/fcntl2.h" 1 3 4
# 27 "/usr/include/bits/fcntl2.h" 3 4
extern int __open_2 (__const char *__path, int __oflag) __attribute__ ((__nonnull__ (1)));
extern int __open_alias (__const char *__path, int __oflag, ...) __asm__ ("" "open")
__attribute__ ((__nonnull__ (1)));
extern void __open_too_many_args (void) __attribute__((__error__ ("open can be called either with 2 or 3 arguments, not more")))
;
extern void __open_missing_mode (void) __attribute__((__error__ ("open with O_CREAT in second argument needs 3 arguments")))
;
extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
open (__const char *__path, int __oflag, ...)
{
if (__builtin_va_arg_pack_len () > 1)
__open_too_many_args ();
if (__builtin_constant_p (__oflag))
{
if ((__oflag & 0100) != 0 && __builtin_va_arg_pack_len () < 1)
{
__open_missing_mode ();
return __open_2 (__path, __oflag);
}
return __open_alias (__path, __oflag, __builtin_va_arg_pack ());
}
if (__builtin_va_arg_pack_len () < 1)
return __open_2 (__path, __oflag);
return __open_alias (__path, __oflag, __builtin_va_arg_pack ());
}
# 99 "/usr/include/bits/fcntl2.h" 3 4
extern int __openat_2 (int __fd, __const char *__path, int __oflag)
__attribute__ ((__nonnull__ (2)));
extern int __openat_alias (int __fd, __const char *__path, int __oflag, ...) __asm__ ("" "openat")
__attribute__ ((__nonnull__ (2)));
# 112 "/usr/include/bits/fcntl2.h" 3 4
extern void __openat_too_many_args (void) __attribute__((__error__ ("openat can be called either with 3 or 4 arguments, not more")))
;
extern void __openat_missing_mode (void) __attribute__((__error__ ("openat with O_CREAT in third argument needs 4 arguments")))
;
extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
openat (int __fd, __const char *__path, int __oflag, ...)
{
if (__builtin_va_arg_pack_len () > 1)
__openat_too_many_args ();
if (__builtin_constant_p (__oflag))
{
if ((__oflag & 0100) != 0 && __builtin_va_arg_pack_len () < 1)
{
__openat_missing_mode ();
return __openat_2 (__fd, __path, __oflag);
}
return __openat_alias (__fd, __path, __oflag, __builtin_va_arg_pack ());
}
if (__builtin_va_arg_pack_len () < 1)
return __openat_2 (__fd, __path, __oflag);
return __openat_alias (__fd, __path, __oflag, __builtin_va_arg_pack ());
}
# 253 "/usr/include/fcntl.h" 2 3 4
# 35 "../src/transcode.h" 2
# 1 "/usr/include/pthread.h" 1 3 4
# 25 "/usr/include/pthread.h" 3 4
# 1 "/usr/include/sched.h" 1 3 4
# 30 "/usr/include/sched.h" 3 4
# 1 "/usr/lib/x86_64-linux-gnu/gcc/x86_64-linux-gnu/4.5.2/include/stddef.h" 1 3 4
# 31 "/usr/include/sched.h" 2 3 4
# 1 "/usr/include/time.h" 1 3 4
# 35 "/usr/include/sched.h" 2 3 4
# 43 "/usr/include/sched.h" 3 4
# 1 "/usr/include/bits/sched.h" 1 3 4
# 74 "/usr/include/bits/sched.h" 3 4
struct sched_param
{
int __sched_priority;
};
extern int clone (int (*__fn) (void *__arg), void *__child_stack,
int __flags, void *__arg, ...) __attribute__ ((__nothrow__));
extern int unshare (int __flags) __attribute__ ((__nothrow__));
extern int sched_getcpu (void) __attribute__ ((__nothrow__));
struct __sched_param
{
int __sched_priority;
};
# 116 "/usr/include/bits/sched.h" 3 4
typedef unsigned long int __cpu_mask;
typedef struct
{
__cpu_mask __bits[1024 / (8 * sizeof (__cpu_mask))];
} cpu_set_t;
# 199 "/usr/include/bits/sched.h" 3 4
extern int __sched_cpucount (size_t __setsize, const cpu_set_t *__setp)
__attribute__ ((__nothrow__));
extern cpu_set_t *__sched_cpualloc (size_t __count) __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
extern void __sched_cpufree (cpu_set_t *__set) __attribute__ ((__nothrow__));
# 44 "/usr/include/sched.h" 2 3 4
extern int sched_setparam (__pid_t __pid, __const struct sched_param *__param)
__attribute__ ((__nothrow__));
extern int sched_getparam (__pid_t __pid, struct sched_param *__param) __attribute__ ((__nothrow__));
extern int sched_setscheduler (__pid_t __pid, int __policy,
__const struct sched_param *__param) __attribute__ ((__nothrow__));
extern int sched_getscheduler (__pid_t __pid) __attribute__ ((__nothrow__));
extern int sched_yield (void) __attribute__ ((__nothrow__));
extern int sched_get_priority_max (int __algorithm) __attribute__ ((__nothrow__));
extern int sched_get_priority_min (int __algorithm) __attribute__ ((__nothrow__));
extern int sched_rr_get_interval (__pid_t __pid, struct timespec *__t) __attribute__ ((__nothrow__));
# 126 "/usr/include/sched.h" 3 4
# 26 "/usr/include/pthread.h" 2 3 4
# 1 "/usr/include/time.h" 1 3 4
# 30 "/usr/include/time.h" 3 4
# 1 "/usr/lib/x86_64-linux-gnu/gcc/x86_64-linux-gnu/4.5.2/include/stddef.h" 1 3 4
# 39 "/usr/include/time.h" 2 3 4
# 1 "/usr/include/bits/time.h" 1 3 4
# 43 "/usr/include/time.h" 2 3 4
# 131 "/usr/include/time.h" 3 4
struct tm
{
int tm_sec;
int tm_min;
int tm_hour;
int tm_mday;
int tm_mon;
int tm_year;
int tm_wday;
int tm_yday;
int tm_isdst;
long int tm_gmtoff;
__const char *tm_zone;
};
struct itimerspec
{
struct timespec it_interval;
struct timespec it_value;
};
struct sigevent;
# 180 "/usr/include/time.h" 3 4
extern clock_t clock (void) __attribute__ ((__nothrow__));
extern time_t time (time_t *__timer) __attribute__ ((__nothrow__));
extern double difftime (time_t __time1, time_t __time0)
__attribute__ ((__nothrow__)) __attribute__ ((__const__));
extern time_t mktime (struct tm *__tp) __attribute__ ((__nothrow__));
extern size_t strftime (char *__restrict __s, size_t __maxsize,
__const char *__restrict __format,
__const struct tm *__restrict __tp) __attribute__ ((__nothrow__));
# 215 "/usr/include/time.h" 3 4
# 1 "/usr/include/xlocale.h" 1 3 4
# 28 "/usr/include/xlocale.h" 3 4
typedef struct __locale_struct
{
struct __locale_data *__locales[13];
const unsigned short int *__ctype_b;
const int *__ctype_tolower;
const int *__ctype_toupper;
const char *__names[13];
} *__locale_t;
typedef __locale_t locale_t;
# 216 "/usr/include/time.h" 2 3 4
extern size_t strftime_l (char *__restrict __s, size_t __maxsize,
__const char *__restrict __format,
__const struct tm *__restrict __tp,
__locale_t __loc) __attribute__ ((__nothrow__));
# 230 "/usr/include/time.h" 3 4
extern struct tm *gmtime (__const time_t *__timer) __attribute__
((__nothrow__));
extern struct tm *localtime (__const time_t *__timer) __attribute__
((__nothrow__));
extern struct tm *gmtime_r (__const time_t *__restrict __timer,
struct tm *__restrict __tp) __attribute__ ((__nothrow__));
extern struct tm *localtime_r (__const time_t *__restrict __timer,
struct tm *__restrict __tp) __attribute__ ((__nothrow__));
extern char *asctime (__const struct tm *__tp) __attribute__
((__nothrow__));
extern char *ctime (__const time_t *__timer) __attribute__ ((__nothrow__));
extern char *asctime_r (__const struct tm *__restrict __tp,
char *__restrict __buf) __attribute__ ((__nothrow__));
extern char *ctime_r (__const time_t *__restrict __timer,
char *__restrict __buf) __attribute__ ((__nothrow__));
extern char *__tzname[2];
extern int __daylight;
extern long int __timezone;
extern char *tzname[2];
extern void tzset (void) __attribute__ ((__nothrow__));
extern int daylight;
extern long int timezone;
extern int stime (__const time_t *__when) __attribute__ ((__nothrow__));
# 313 "/usr/include/time.h" 3 4
extern time_t timegm (struct tm *__tp) __attribute__ ((__nothrow__));
extern time_t timelocal (struct tm *__tp) __attribute__ ((__nothrow__));
extern int dysize (int __year) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
# 328 "/usr/include/time.h" 3 4
extern int nanosleep (__const struct timespec *__requested_time,
struct timespec *__remaining);
extern int clock_getres (clockid_t __clock_id, struct timespec *__res)
__attribute__ ((__nothrow__));
extern int clock_gettime (clockid_t __clock_id, struct timespec *__tp) __attribute__ ((__nothrow__));
extern int clock_settime (clockid_t __clock_id, __const struct timespec *__tp)
__attribute__ ((__nothrow__));
extern int clock_nanosleep (clockid_t __clock_id, int __flags,
__const struct timespec *__req,
struct timespec *__rem);
extern int clock_getcpuclockid (pid_t __pid, clockid_t *__clock_id) __attribute__ ((__nothrow__));
extern int timer_create (clockid_t __clock_id,
struct sigevent *__restrict __evp,
timer_t *__restrict __timerid) __attribute__ ((__nothrow__));
extern int timer_delete (timer_t __timerid) __attribute__ ((__nothrow__));
extern int timer_settime (timer_t __timerid, int __flags,
__const struct itimerspec *__restrict __value,
struct itimerspec *__restrict __ovalue) __attribute__ ((__nothrow__));
extern int timer_gettime (timer_t __timerid, struct itimerspec *__value)
__attribute__ ((__nothrow__));
extern int timer_getoverrun (timer_t __timerid) __attribute__ ((__nothrow__));
# 417 "/usr/include/time.h" 3 4
# 27 "/usr/include/pthread.h" 2 3 4
# 1 "/usr/include/bits/setjmp.h" 1 3 4
# 27 "/usr/include/bits/setjmp.h" 3 4
# 1 "/usr/include/bits/wordsize.h" 1 3 4
# 28 "/usr/include/bits/setjmp.h" 2 3 4
typedef long int __jmp_buf[8];
# 30 "/usr/include/pthread.h" 2 3 4
# 1 "/usr/include/bits/wordsize.h" 1 3 4
# 31 "/usr/include/pthread.h" 2 3 4
enum
{
PTHREAD_CREATE_JOINABLE,
PTHREAD_CREATE_DETACHED
};
enum
{
PTHREAD_MUTEX_TIMED_NP,
PTHREAD_MUTEX_RECURSIVE_NP,
PTHREAD_MUTEX_ERRORCHECK_NP,
PTHREAD_MUTEX_ADAPTIVE_NP
,
PTHREAD_MUTEX_NORMAL = PTHREAD_MUTEX_TIMED_NP,
PTHREAD_MUTEX_RECURSIVE = PTHREAD_MUTEX_RECURSIVE_NP,
PTHREAD_MUTEX_ERRORCHECK = PTHREAD_MUTEX_ERRORCHECK_NP,
PTHREAD_MUTEX_DEFAULT = PTHREAD_MUTEX_NORMAL
};
enum
{
PTHREAD_MUTEX_STALLED,
PTHREAD_MUTEX_STALLED_NP = PTHREAD_MUTEX_STALLED,
PTHREAD_MUTEX_ROBUST,
PTHREAD_MUTEX_ROBUST_NP = PTHREAD_MUTEX_ROBUST
};
# 115 "/usr/include/pthread.h" 3 4
enum
{
PTHREAD_RWLOCK_PREFER_READER_NP,
PTHREAD_RWLOCK_PREFER_WRITER_NP,
PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP,
PTHREAD_RWLOCK_DEFAULT_NP = PTHREAD_RWLOCK_PREFER_READER_NP
};
# 147 "/usr/include/pthread.h" 3 4
enum
{
PTHREAD_INHERIT_SCHED,
PTHREAD_EXPLICIT_SCHED
};
enum
{
PTHREAD_SCOPE_SYSTEM,
PTHREAD_SCOPE_PROCESS
};
enum
{
PTHREAD_PROCESS_PRIVATE,
PTHREAD_PROCESS_SHARED
};
# 182 "/usr/include/pthread.h" 3 4
struct _pthread_cleanup_buffer
{
void (*__routine) (void *);
void *__arg;
int __canceltype;
struct _pthread_cleanup_buffer *__prev;
};
enum
{
PTHREAD_CANCEL_ENABLE,
PTHREAD_CANCEL_DISABLE
};
enum
{
PTHREAD_CANCEL_DEFERRED,
PTHREAD_CANCEL_ASYNCHRONOUS
};
# 220 "/usr/include/pthread.h" 3 4
extern int pthread_create (pthread_t *__restrict __newthread,
__const pthread_attr_t *__restrict __attr,
void *(*__start_routine) (void *),
void *__restrict __arg) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 3)));
extern void pthread_exit (void *__retval) __attribute__
((__noreturn__));
extern int pthread_join (pthread_t __th, void **__thread_return);
# 263 "/usr/include/pthread.h" 3 4
extern int pthread_detach (pthread_t __th) __attribute__ ((__nothrow__));
extern pthread_t pthread_self (void) __attribute__ ((__nothrow__))
__attribute__ ((__const__));
extern int pthread_equal (pthread_t __thread1, pthread_t __thread2) __attribute__ ((__nothrow__));
extern int pthread_attr_init (pthread_attr_t *__attr) __attribute__
((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_attr_destroy (pthread_attr_t *__attr)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_attr_getdetachstate (__const pthread_attr_t *__attr,
int *__detachstate)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int pthread_attr_setdetachstate (pthread_attr_t *__attr,
int __detachstate)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_attr_getguardsize (__const pthread_attr_t *__attr,
size_t *__guardsize)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int pthread_attr_setguardsize (pthread_attr_t *__attr,
size_t __guardsize)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_attr_getschedparam (__const pthread_attr_t *__restrict
__attr,
struct sched_param *__restrict __param)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int pthread_attr_setschedparam (pthread_attr_t *__restrict __attr,
__const struct sched_param *__restrict
__param) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int pthread_attr_getschedpolicy (__const pthread_attr_t *__restrict
__attr, int *__restrict __policy)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int pthread_attr_setschedpolicy (pthread_attr_t *__attr, int __policy)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_attr_getinheritsched (__const pthread_attr_t *__restrict
__attr, int *__restrict __inherit)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int pthread_attr_setinheritsched (pthread_attr_t *__attr,
int __inherit)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_attr_getscope (__const pthread_attr_t *__restrict __attr,
int *__restrict __scope)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int pthread_attr_setscope (pthread_attr_t *__attr, int __scope)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_attr_getstackaddr (__const pthread_attr_t *__restrict
__attr, void **__restrict __stackaddr)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2))) __attribute__ ((__deprecated__));
extern int pthread_attr_setstackaddr (pthread_attr_t *__attr,
void *__stackaddr)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__deprecated__));
extern int pthread_attr_getstacksize (__const pthread_attr_t *__restrict
__attr, size_t *__restrict __stacksize)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int pthread_attr_setstacksize (pthread_attr_t *__attr,
size_t __stacksize)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_attr_getstack (__const pthread_attr_t *__restrict __attr,
void **__restrict __stackaddr,
size_t *__restrict __stacksize)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2, 3)));
extern int pthread_attr_setstack (pthread_attr_t *__attr, void *__stackaddr,
size_t __stacksize) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
# 413 "/usr/include/pthread.h" 3 4
extern int pthread_setschedparam (pthread_t __target_thread, int __policy,
__const struct sched_param *__param)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3)));
extern int pthread_getschedparam (pthread_t __target_thread,
int *__restrict __policy,
struct sched_param *__restrict __param)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2, 3)));
extern int pthread_setschedprio (pthread_t __target_thread, int __prio)
__attribute__ ((__nothrow__));
# 478 "/usr/include/pthread.h" 3 4
extern int pthread_once (pthread_once_t *__once_control,
void (*__init_routine) (void)) __attribute__ ((__nonnull__ (1, 2)));
# 490 "/usr/include/pthread.h" 3 4
extern int pthread_setcancelstate (int __state, int *__oldstate);
extern int pthread_setcanceltype (int __type, int *__oldtype);
extern int pthread_cancel (pthread_t __th);
extern void pthread_testcancel (void);
typedef struct
{
struct
{
__jmp_buf __cancel_jmp_buf;
int __mask_was_saved;
} __cancel_jmp_buf[1];
void *__pad[4];
} __pthread_unwind_buf_t __attribute__ ((__aligned__));
# 524 "/usr/include/pthread.h" 3 4
struct __pthread_cleanup_frame
{
void (*__cancel_routine) (void *);
void *__cancel_arg;
int __do_it;
int __cancel_type;
};
# 664 "/usr/include/pthread.h" 3 4
extern void __pthread_register_cancel (__pthread_unwind_buf_t *__buf)
;
# 676 "/usr/include/pthread.h" 3 4
extern void __pthread_unregister_cancel (__pthread_unwind_buf_t *__buf)
;
# 717 "/usr/include/pthread.h" 3 4
extern void __pthread_unwind_next (__pthread_unwind_buf_t *__buf)
__attribute__ ((__noreturn__))
__attribute__ ((__weak__))
;
struct __jmp_buf_tag;
extern int __sigsetjmp (struct __jmp_buf_tag *__env, int __savemask) __attribute__ ((__nothrow__));
extern int pthread_mutex_init (pthread_mutex_t *__mutex,
__const pthread_mutexattr_t *__mutexattr)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_mutex_destroy (pthread_mutex_t *__mutex)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_mutex_trylock (pthread_mutex_t *__mutex)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_mutex_lock (pthread_mutex_t *__mutex)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_mutex_timedlock (pthread_mutex_t *__restrict __mutex,
__const struct timespec *__restrict
__abstime) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int pthread_mutex_unlock (pthread_mutex_t *__mutex)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_mutex_getprioceiling (__const pthread_mutex_t *
__restrict __mutex,
int *__restrict __prioceiling)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int pthread_mutex_setprioceiling (pthread_mutex_t *__restrict __mutex,
int __prioceiling,
int *__restrict __old_ceiling)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 3)));
extern int pthread_mutex_consistent (pthread_mutex_t *__mutex)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
# 790 "/usr/include/pthread.h" 3 4
extern int pthread_mutexattr_init (pthread_mutexattr_t *__attr)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_mutexattr_destroy (pthread_mutexattr_t *__attr)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_mutexattr_getpshared (__const pthread_mutexattr_t *
__restrict __attr,
int *__restrict __pshared)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int pthread_mutexattr_setpshared (pthread_mutexattr_t *__attr,
int __pshared)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_mutexattr_gettype (__const pthread_mutexattr_t *__restrict
__attr, int *__restrict __kind)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int pthread_mutexattr_settype (pthread_mutexattr_t *__attr, int __kind)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_mutexattr_getprotocol (__const pthread_mutexattr_t *
__restrict __attr,
int *__restrict __protocol)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int pthread_mutexattr_setprotocol (pthread_mutexattr_t *__attr,
int __protocol)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_mutexattr_getprioceiling (__const pthread_mutexattr_t *
__restrict __attr,
int *__restrict __prioceiling)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int pthread_mutexattr_setprioceiling (pthread_mutexattr_t *__attr,
int __prioceiling)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_mutexattr_getrobust (__const pthread_mutexattr_t *__attr,
int *__robustness)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int pthread_mutexattr_setrobust (pthread_mutexattr_t *__attr,
int __robustness)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
# 872 "/usr/include/pthread.h" 3 4
extern int pthread_rwlock_init (pthread_rwlock_t *__restrict __rwlock,
__const pthread_rwlockattr_t *__restrict
__attr) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_rwlock_destroy (pthread_rwlock_t *__rwlock)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_rwlock_rdlock (pthread_rwlock_t *__rwlock)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_rwlock_tryrdlock (pthread_rwlock_t *__rwlock)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_rwlock_timedrdlock (pthread_rwlock_t *__restrict __rwlock,
__const struct timespec *__restrict
__abstime) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int pthread_rwlock_wrlock (pthread_rwlock_t *__rwlock)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_rwlock_trywrlock (pthread_rwlock_t *__rwlock)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_rwlock_timedwrlock (pthread_rwlock_t *__restrict __rwlock,
__const struct timespec *__restrict
__abstime) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int pthread_rwlock_unlock (pthread_rwlock_t *__rwlock)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_rwlockattr_init (pthread_rwlockattr_t *__attr)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_rwlockattr_destroy (pthread_rwlockattr_t *__attr)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_rwlockattr_getpshared (__const pthread_rwlockattr_t *
__restrict __attr,
int *__restrict __pshared)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int pthread_rwlockattr_setpshared (pthread_rwlockattr_t *__attr,
int __pshared)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_rwlockattr_getkind_np (__const pthread_rwlockattr_t *
__restrict __attr,
int *__restrict __pref)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int pthread_rwlockattr_setkind_np (pthread_rwlockattr_t *__attr,
int __pref) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_cond_init (pthread_cond_t *__restrict __cond,
__const pthread_condattr_t *__restrict
__cond_attr) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_cond_destroy (pthread_cond_t *__cond)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_cond_signal (pthread_cond_t *__cond)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_cond_broadcast (pthread_cond_t *__cond)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_cond_wait (pthread_cond_t *__restrict __cond,
pthread_mutex_t *__restrict __mutex)
__attribute__ ((__nonnull__ (1, 2)));
# 984 "/usr/include/pthread.h" 3 4
extern int pthread_cond_timedwait (pthread_cond_t *__restrict __cond,
pthread_mutex_t *__restrict __mutex,
__const struct timespec *__restrict
__abstime) __attribute__ ((__nonnull__ (1, 2, 3)));
extern int pthread_condattr_init (pthread_condattr_t *__attr)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_condattr_destroy (pthread_condattr_t *__attr)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_condattr_getpshared (__const pthread_condattr_t *
__restrict __attr,
int *__restrict __pshared)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int pthread_condattr_setpshared (pthread_condattr_t *__attr,
int __pshared) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_condattr_getclock (__const pthread_condattr_t *
__restrict __attr,
__clockid_t *__restrict __clock_id)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int pthread_condattr_setclock (pthread_condattr_t *__attr,
__clockid_t __clock_id)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
# 1028 "/usr/include/pthread.h" 3 4
extern int pthread_spin_init (pthread_spinlock_t *__lock, int __pshared)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_spin_destroy (pthread_spinlock_t *__lock)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_spin_lock (pthread_spinlock_t *__lock)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_spin_trylock (pthread_spinlock_t *__lock)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_spin_unlock (pthread_spinlock_t *__lock)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_barrier_init (pthread_barrier_t *__restrict __barrier,
__const pthread_barrierattr_t *__restrict
__attr, unsigned int __count)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_barrier_destroy (pthread_barrier_t *__barrier)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_barrier_wait (pthread_barrier_t *__barrier)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_barrierattr_init (pthread_barrierattr_t *__attr)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_barrierattr_destroy (pthread_barrierattr_t *__attr)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_barrierattr_getpshared (__const pthread_barrierattr_t *
__restrict __attr,
int *__restrict __pshared)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int pthread_barrierattr_setpshared (pthread_barrierattr_t *__attr,
int __pshared)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
# 1095 "/usr/include/pthread.h" 3 4
extern int pthread_key_create (pthread_key_t *__key,
void (*__destr_function) (void *))
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int pthread_key_delete (pthread_key_t __key) __attribute__ ((__nothrow__));
extern void *pthread_getspecific (pthread_key_t __key) __attribute__ ((__nothrow__));
extern int pthread_setspecific (pthread_key_t __key,
__const void *__pointer) __attribute__ ((__nothrow__)) ;
extern int pthread_getcpuclockid (pthread_t __thread_id,
__clockid_t *__clock_id)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2)));
# 1129 "/usr/include/pthread.h" 3 4
extern int pthread_atfork (void (*__prepare) (void),
void (*__parent) (void),
void (*__child) (void)) __attribute__ ((__nothrow__));
extern __inline int
__attribute__ ((__nothrow__)) pthread_equal (pthread_t __thread1, pthread_t __thread2)
{
return __thread1 == __thread2;
}
# 36 "../src/transcode.h" 2
# 1 "/usr/include/signal.h" 1 3 4
# 31 "/usr/include/signal.h" 3 4
# 1 "/usr/include/bits/sigset.h" 1 3 4
# 104 "/usr/include/bits/sigset.h" 3 4
extern int __sigismember (__const __sigset_t *, int);
extern int __sigaddset (__sigset_t *, int);
extern int __sigdelset (__sigset_t *, int);
# 118 "/usr/include/bits/sigset.h" 3 4
extern __inline int __sigismember (__const __sigset_t *__set, int __sig) { unsigned long int __mask = (((unsigned long int) 1) << (((__sig) - 1) % (8 * sizeof (unsigned long int)))); unsigned long int __word = (((__sig) - 1) / (8 * sizeof (unsigned long int))); return (__set->__val[__word] & __mask) ? 1 : 0; }
extern __inline int __sigaddset ( __sigset_t *__set, int __sig) { unsigned long int __mask = (((unsigned long int) 1) << (((__sig) - 1) % (8 * sizeof (unsigned long int)))); unsigned long int __word = (((__sig) - 1) / (8 * sizeof (unsigned long int))); return ((__set->__val[__word] |= __mask), 0); }
extern __inline int __sigdelset ( __sigset_t *__set, int __sig) { unsigned long int __mask = (((unsigned long int) 1) << (((__sig) - 1) % (8 * sizeof (unsigned long int)))); unsigned long int __word = (((__sig) - 1) / (8 * sizeof (unsigned long int))); return ((__set->__val[__word] &= ~__mask), 0); }
# 34 "/usr/include/signal.h" 2 3 4
typedef __sig_atomic_t sig_atomic_t;
# 58 "/usr/include/signal.h" 3 4
# 1 "/usr/include/bits/signum.h" 1 3 4
# 59 "/usr/include/signal.h" 2 3 4
# 79 "/usr/include/signal.h" 3 4
# 1 "/usr/include/bits/siginfo.h" 1 3 4
# 25 "/usr/include/bits/siginfo.h" 3 4
# 1 "/usr/include/bits/wordsize.h" 1 3 4
# 26 "/usr/include/bits/siginfo.h" 2 3 4
typedef union sigval
{
int sival_int;
void *sival_ptr;
} sigval_t;
# 51 "/usr/include/bits/siginfo.h" 3 4
typedef struct siginfo
{
int si_signo;
int si_errno;
int si_code;
union
{
int _pad[((128 / sizeof (int)) - 4)];
struct
{
__pid_t si_pid;
__uid_t si_uid;
} _kill;
struct
{
int si_tid;
int si_overrun;
sigval_t si_sigval;
} _timer;
struct
{
__pid_t si_pid;
__uid_t si_uid;
sigval_t si_sigval;
} _rt;
struct
{
__pid_t si_pid;
__uid_t si_uid;
int si_status;
__clock_t si_utime;
__clock_t si_stime;
} _sigchld;
struct
{
void *si_addr;
} _sigfault;
struct
{
long int si_band;
int si_fd;
} _sigpoll;
} _sifields;
} siginfo_t;
# 129 "/usr/include/bits/siginfo.h" 3 4
enum
{
SI_ASYNCNL = -60,
SI_TKILL = -6,
SI_SIGIO,
SI_ASYNCIO,
SI_MESGQ,
SI_TIMER,
SI_QUEUE,
SI_USER,
SI_KERNEL = 0x80
};
enum
{
ILL_ILLOPC = 1,
ILL_ILLOPN,
ILL_ILLADR,
ILL_ILLTRP,
ILL_PRVOPC,
ILL_PRVREG,
ILL_COPROC,
ILL_BADSTK
};
enum
{
FPE_INTDIV = 1,
FPE_INTOVF,
FPE_FLTDIV,
FPE_FLTOVF,
FPE_FLTUND,
FPE_FLTRES,
FPE_FLTINV,
FPE_FLTSUB
};
enum
{
SEGV_MAPERR = 1,
SEGV_ACCERR
};
enum
{
BUS_ADRALN = 1,
BUS_ADRERR,
BUS_OBJERR
};
enum
{
TRAP_BRKPT = 1,
TRAP_TRACE
};
enum
{
CLD_EXITED = 1,
CLD_KILLED,
CLD_DUMPED,
CLD_TRAPPED,
CLD_STOPPED,
CLD_CONTINUED
};
enum
{
POLL_IN = 1,
POLL_OUT,
POLL_MSG,
POLL_ERR,
POLL_PRI,
POLL_HUP
};
# 273 "/usr/include/bits/siginfo.h" 3 4
typedef struct sigevent
{
sigval_t sigev_value;
int sigev_signo;
int sigev_notify;
union
{
int _pad[((64 / sizeof (int)) - 4)];
__pid_t _tid;
struct
{
void (*_function) (sigval_t);
void *_attribute;
} _sigev_thread;
} _sigev_un;
} sigevent_t;
enum
{
SIGEV_SIGNAL = 0,
SIGEV_NONE,
SIGEV_THREAD,
SIGEV_THREAD_ID = 4
};
# 80 "/usr/include/signal.h" 2 3 4
typedef void (*__sighandler_t) (int);
extern __sighandler_t __sysv_signal (int __sig, __sighandler_t __handler)
__attribute__ ((__nothrow__));
# 99 "/usr/include/signal.h" 3 4
extern __sighandler_t signal (int __sig, __sighandler_t __handler)
__attribute__ ((__nothrow__));
# 113 "/usr/include/signal.h" 3 4
# 126 "/usr/include/signal.h" 3 4
extern int kill (__pid_t __pid, int __sig) __attribute__ ((__nothrow__));
extern int killpg (__pid_t __pgrp, int __sig) __attribute__ ((__nothrow__));
extern int raise (int __sig) __attribute__ ((__nothrow__));
extern __sighandler_t ssignal (int __sig, __sighandler_t __handler)
__attribute__ ((__nothrow__));
extern int gsignal (int __sig) __attribute__ ((__nothrow__));
extern void psignal (int __sig, __const char *__s);
extern void psiginfo (__const siginfo_t *__pinfo, __const char *__s);
# 168 "/usr/include/signal.h" 3 4
extern int __sigpause (int __sig_or_mask, int __is_sig);
# 196 "/usr/include/signal.h" 3 4
extern int sigblock (int __mask) __attribute__ ((__nothrow__)) __attribute__ ((__deprecated__));
extern int sigsetmask (int __mask) __attribute__ ((__nothrow__)) __attribute__ ((__deprecated__));
extern int siggetmask (void) __attribute__ ((__nothrow__)) __attribute__ ((__deprecated__));
# 216 "/usr/include/signal.h" 3 4
typedef __sighandler_t sig_t;
extern int sigemptyset (sigset_t *__set) __attribute__ ((__nothrow__))
__attribute__ ((__nonnull__ (1)));
extern int sigfillset (sigset_t *__set) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int sigaddset (sigset_t *__set, int __signo) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int sigdelset (sigset_t *__set, int __signo) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int sigismember (__const sigset_t *__set, int __signo)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
# 252 "/usr/include/signal.h" 3 4
# 1 "/usr/include/bits/sigaction.h" 1 3 4
# 25 "/usr/include/bits/sigaction.h" 3 4
struct sigaction
{
union
{
__sighandler_t sa_handler;
void (*sa_sigaction) (int, siginfo_t *, void *);
}
__sigaction_handler;
__sigset_t sa_mask;
int sa_flags;
void (*sa_restorer) (void);
};
# 253 "/usr/include/signal.h" 2 3 4
extern int sigprocmask (int __how, __const sigset_t *__restrict __set,
sigset_t *__restrict __oset) __attribute__ ((__nothrow__));
extern int sigsuspend (__const sigset_t *__set) __attribute__ ((__nonnull__ (1)));
extern int sigaction (int __sig, __const struct sigaction *__restrict __act,
struct sigaction *__restrict __oact) __attribute__ ((__nothrow__));
extern int sigpending (sigset_t *__set) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int sigwait (__const sigset_t *__restrict __set, int *__restrict __sig)
__attribute__ ((__nonnull__ (1, 2)));
extern int sigwaitinfo (__const sigset_t *__restrict __set,
siginfo_t *__restrict __info) __attribute__ ((__nonnull__ (1)));
extern int sigtimedwait (__const sigset_t *__restrict __set,
siginfo_t *__restrict __info,
__const struct timespec *__restrict __timeout)
__attribute__ ((__nonnull__ (1)));
extern int sigqueue (__pid_t __pid, int __sig, __const union sigval __val)
__attribute__ ((__nothrow__));
# 310 "/usr/include/signal.h" 3 4
extern __const char *__const _sys_siglist[65];
extern __const char *__const sys_siglist[65];
struct sigvec
{
__sighandler_t sv_handler;
int sv_mask;
int sv_flags;
};
# 334 "/usr/include/signal.h" 3 4
extern int sigvec (int __sig, __const struct sigvec *__vec,
struct sigvec *__ovec) __attribute__ ((__nothrow__));
# 1 "/usr/include/bits/sigcontext.h" 1 3 4
# 26 "/usr/include/bits/sigcontext.h" 3 4
# 1 "/usr/include/bits/wordsize.h" 1 3 4
# 27 "/usr/include/bits/sigcontext.h" 2 3 4
struct _fpreg
{
unsigned short significand[4];
unsigned short exponent;
};
struct _fpxreg
{
unsigned short significand[4];
unsigned short exponent;
unsigned short padding[3];
};
struct _xmmreg
{
__uint32_t element[4];
};
# 109 "/usr/include/bits/sigcontext.h" 3 4
struct _fpstate
{
__uint16_t cwd;
__uint16_t swd;
__uint16_t ftw;
__uint16_t fop;
__uint64_t rip;
__uint64_t rdp;
__uint32_t mxcsr;
__uint32_t mxcr_mask;
struct _fpxreg _st[8];
struct _xmmreg _xmm[16];
__uint32_t padding[24];
};
struct sigcontext
{
unsigned long r8;
unsigned long r9;
unsigned long r10;
unsigned long r11;
unsigned long r12;
unsigned long r13;
unsigned long r14;
unsigned long r15;
unsigned long rdi;
unsigned long rsi;
unsigned long rbp;
unsigned long rbx;
unsigned long rdx;
unsigned long rax;
unsigned long rcx;
unsigned long rsp;
unsigned long rip;
unsigned long eflags;
unsigned short cs;
unsigned short gs;
unsigned short fs;
unsigned short __pad0;
unsigned long err;
unsigned long trapno;
unsigned long oldmask;
unsigned long cr2;
struct _fpstate * fpstate;
unsigned long __reserved1 [8];
};
# 340 "/usr/include/signal.h" 2 3 4
extern int sigreturn (struct sigcontext *__scp) __attribute__ ((__nothrow__));
# 1 "/usr/lib/x86_64-linux-gnu/gcc/x86_64-linux-gnu/4.5.2/include/stddef.h" 1 3 4
# 350 "/usr/include/signal.h" 2 3 4
extern int siginterrupt (int __sig, int __interrupt) __attribute__ ((__nothrow__));
# 1 "/usr/include/bits/sigstack.h" 1 3 4
# 26 "/usr/include/bits/sigstack.h" 3 4
struct sigstack
{
void *ss_sp;
int ss_onstack;
};
enum
{
SS_ONSTACK = 1,
SS_DISABLE
};
# 50 "/usr/include/bits/sigstack.h" 3 4
typedef struct sigaltstack
{
void *ss_sp;
int ss_flags;
size_t ss_size;
} stack_t;
# 357 "/usr/include/signal.h" 2 3 4
# 1 "/usr/include/sys/ucontext.h" 1 3 4
# 23 "/usr/include/sys/ucontext.h" 3 4
# 1 "/usr/include/signal.h" 1 3 4
# 24 "/usr/include/sys/ucontext.h" 2 3 4
# 1 "/usr/include/bits/wordsize.h" 1 3 4
# 25 "/usr/include/sys/ucontext.h" 2 3 4
# 33 "/usr/include/sys/ucontext.h" 3 4
typedef long int greg_t;
typedef greg_t gregset_t[23];
# 94 "/usr/include/sys/ucontext.h" 3 4
struct _libc_fpxreg
{
unsigned short int significand[4];
unsigned short int exponent;
unsigned short int padding[3];
};
struct _libc_xmmreg
{
__uint32_t element[4];
};
struct _libc_fpstate
{
__uint16_t cwd;
__uint16_t swd;
__uint16_t ftw;
__uint16_t fop;
__uint64_t rip;
__uint64_t rdp;
__uint32_t mxcsr;
__uint32_t mxcr_mask;
struct _libc_fpxreg _st[8];
struct _libc_xmmreg _xmm[16];
__uint32_t padding[24];
};
typedef struct _libc_fpstate *fpregset_t;
typedef struct
{
gregset_t gregs;
fpregset_t fpregs;
unsigned long __reserved1 [8];
} mcontext_t;
typedef struct ucontext
{
unsigned long int uc_flags;
struct ucontext *uc_link;
stack_t uc_stack;
mcontext_t uc_mcontext;
__sigset_t uc_sigmask;
struct _libc_fpstate __fpregs_mem;
} ucontext_t;
# 360 "/usr/include/signal.h" 2 3 4
extern int sigstack (struct sigstack *__ss, struct sigstack *__oss)
__attribute__ ((__nothrow__)) __attribute__ ((__deprecated__));
extern int sigaltstack (__const struct sigaltstack *__restrict __ss,
struct sigaltstack *__restrict __oss) __attribute__ ((__nothrow__));
# 395 "/usr/include/signal.h" 3 4
# 1 "/usr/include/bits/sigthread.h" 1 3 4
# 31 "/usr/include/bits/sigthread.h" 3 4
extern int pthread_sigmask (int __how,
__const __sigset_t *__restrict __newmask,
__sigset_t *__restrict __oldmask)__attribute__ ((__nothrow__));
extern int pthread_kill (pthread_t __threadid, int __signo) __attribute__ ((__nothrow__));
# 396 "/usr/include/signal.h" 2 3 4
extern int __libc_current_sigrtmin (void) __attribute__ ((__nothrow__));
extern int __libc_current_sigrtmax (void) __attribute__ ((__nothrow__));
# 37 "../src/transcode.h" 2
# 1 "/usr/lib/x86_64-linux-gnu/gcc/x86_64-linux-gnu/4.5.2/include/stdarg.h" 1 3 4
# 40 "/usr/lib/x86_64-linux-gnu/gcc/x86_64-linux-gnu/4.5.2/include/stdarg.h" 3 4
typedef __builtin_va_list __gnuc_va_list;
# 102 "/usr/lib/x86_64-linux-gnu/gcc/x86_64-linux-gnu/4.5.2/include/stdarg.h" 3 4
typedef __gnuc_va_list va_list;
# 38 "../src/transcode.h" 2
# 1 "/usr/lib/x86_64-linux-gnu/gcc/x86_64-linux-gnu/4.5.2/include/stdint.h" 1 3 4
# 1 "/usr/include/stdint.h" 1 3 4
# 27 "/usr/include/stdint.h" 3 4
# 1 "/usr/include/bits/wchar.h" 1 3 4
# 28 "/usr/include/stdint.h" 2 3 4
# 1 "/usr/include/bits/wordsize.h" 1 3 4
# 29 "/usr/include/stdint.h" 2 3 4
# 49 "/usr/include/stdint.h" 3 4
typedef unsigned char uint8_t;
typedef unsigned short int uint16_t;
typedef unsigned int uint32_t;
typedef unsigned long int uint64_t;
# 66 "/usr/include/stdint.h" 3 4
typedef signed char int_least8_t;
typedef short int int_least16_t;
typedef int int_least32_t;
typedef long int int_least64_t;
typedef unsigned char uint_least8_t;
typedef unsigned short int uint_least16_t;
typedef unsigned int uint_least32_t;
typedef unsigned long int uint_least64_t;
# 91 "/usr/include/stdint.h" 3 4
typedef signed char int_fast8_t;
typedef long int int_fast16_t;
typedef long int int_fast32_t;
typedef long int int_fast64_t;
# 104 "/usr/include/stdint.h" 3 4
typedef unsigned char uint_fast8_t;
typedef unsigned long int uint_fast16_t;
typedef unsigned long int uint_fast32_t;
typedef unsigned long int uint_fast64_t;
# 120 "/usr/include/stdint.h" 3 4
typedef long int intptr_t;
typedef unsigned long int uintptr_t;
# 135 "/usr/include/stdint.h" 3 4
typedef long int intmax_t;
typedef unsigned long int uintmax_t;
# 4 "/usr/lib/x86_64-linux-gnu/gcc/x86_64-linux-gnu/4.5.2/include/stdint.h" 2 3 4
# 39 "../src/transcode.h" 2
# 1 "/usr/include/stdio.h" 1 3 4
# 30 "/usr/include/stdio.h" 3 4
# 1 "/usr/lib/x86_64-linux-gnu/gcc/x86_64-linux-gnu/4.5.2/include/stddef.h" 1 3 4
# 35 "/usr/include/stdio.h" 2 3 4
# 45 "/usr/include/stdio.h" 3 4
struct _IO_FILE;
typedef struct _IO_FILE FILE;
# 65 "/usr/include/stdio.h" 3 4
typedef struct _IO_FILE __FILE;
# 75 "/usr/include/stdio.h" 3 4
# 1 "/usr/include/libio.h" 1 3 4
# 32 "/usr/include/libio.h" 3 4
# 1 "/usr/include/_G_config.h" 1 3 4
# 15 "/usr/include/_G_config.h" 3 4
# 1 "/usr/lib/x86_64-linux-gnu/gcc/x86_64-linux-gnu/4.5.2/include/stddef.h" 1 3 4
# 16 "/usr/include/_G_config.h" 2 3 4
# 1 "/usr/include/wchar.h" 1 3 4
# 83 "/usr/include/wchar.h" 3 4
typedef struct
{
int __count;
union
{
unsigned int __wch;
char __wchb[4];
} __value;
} __mbstate_t;
# 21 "/usr/include/_G_config.h" 2 3 4
typedef struct
{
__off_t __pos;
__mbstate_t __state;
} _G_fpos_t;
typedef struct
{
__off64_t __pos;
__mbstate_t __state;
} _G_fpos64_t;
# 53 "/usr/include/_G_config.h" 3 4
typedef int _G_int16_t __attribute__ ((__mode__ (__HI__)));
typedef int _G_int32_t __attribute__ ((__mode__ (__SI__)));
typedef unsigned int _G_uint16_t __attribute__ ((__mode__ (__HI__)));
typedef unsigned int _G_uint32_t __attribute__ ((__mode__ (__SI__)));
# 33 "/usr/include/libio.h" 2 3 4
# 170 "/usr/include/libio.h" 3 4
struct _IO_jump_t; struct _IO_FILE;
# 180 "/usr/include/libio.h" 3 4
typedef void _IO_lock_t;
struct _IO_marker {
struct _IO_marker *_next;
struct _IO_FILE *_sbuf;
int _pos;
# 203 "/usr/include/libio.h" 3 4
};
enum __codecvt_result
{
__codecvt_ok,
__codecvt_partial,
__codecvt_error,
__codecvt_noconv
};
# 271 "/usr/include/libio.h" 3 4
struct _IO_FILE {
int _flags;
char* _IO_read_ptr;
char* _IO_read_end;
char* _IO_read_base;
char* _IO_write_base;
char* _IO_write_ptr;
char* _IO_write_end;
char* _IO_buf_base;
char* _IO_buf_end;
char *_IO_save_base;
char *_IO_backup_base;
char *_IO_save_end;
struct _IO_marker *_markers;
struct _IO_FILE *_chain;
int _fileno;
int _flags2;
__off_t _old_offset;
unsigned short _cur_column;
signed char _vtable_offset;
char _shortbuf[1];
_IO_lock_t *_lock;
# 319 "/usr/include/libio.h" 3 4
__off64_t _offset;
# 328 "/usr/include/libio.h" 3 4
void *__pad1;
void *__pad2;
void *__pad3;
void *__pad4;
size_t __pad5;
int _mode;
char _unused2[15 * sizeof (int) - 4 * sizeof (void *) - sizeof
(size_t)];
};
typedef struct _IO_FILE _IO_FILE;
struct _IO_FILE_plus;
extern struct _IO_FILE_plus _IO_2_1_stdin_;
extern struct _IO_FILE_plus _IO_2_1_stdout_;
extern struct _IO_FILE_plus _IO_2_1_stderr_;
# 364 "/usr/include/libio.h" 3 4
typedef __ssize_t __io_read_fn (void *__cookie, char *__buf, size_t __nbytes);
typedef __ssize_t __io_write_fn (void *__cookie, __const char *__buf,
size_t __n);
typedef int __io_seek_fn (void *__cookie, __off64_t *__pos, int __w);
typedef int __io_close_fn (void *__cookie);
# 416 "/usr/include/libio.h" 3 4
extern int __underflow (_IO_FILE *);
extern int __uflow (_IO_FILE *);
extern int __overflow (_IO_FILE *, int);
# 460 "/usr/include/libio.h" 3 4
extern int _IO_getc (_IO_FILE *__fp);
extern int _IO_putc (int __c, _IO_FILE *__fp);
extern int _IO_feof (_IO_FILE *__fp) __attribute__ ((__nothrow__));
extern int _IO_ferror (_IO_FILE *__fp) __attribute__ ((__nothrow__));
extern int _IO_peekc_locked (_IO_FILE *__fp);
extern void _IO_flockfile (_IO_FILE *) __attribute__ ((__nothrow__));
extern void _IO_funlockfile (_IO_FILE *) __attribute__ ((__nothrow__));
extern int _IO_ftrylockfile (_IO_FILE *) __attribute__ ((__nothrow__));
# 490 "/usr/include/libio.h" 3 4
extern int _IO_vfscanf (_IO_FILE * __restrict, const char * __restrict,
__gnuc_va_list, int *__restrict);
extern int _IO_vfprintf (_IO_FILE *__restrict, const char *__restrict,
__gnuc_va_list);
extern __ssize_t _IO_padn (_IO_FILE *, int, __ssize_t);
extern size_t _IO_sgetn (_IO_FILE *, void *, size_t);
extern __off64_t _IO_seekoff (_IO_FILE *, __off64_t, int, int);
extern __off64_t _IO_seekpos (_IO_FILE *, __off64_t, int);
extern void _IO_free_backup_area (_IO_FILE *) __attribute__ ((__nothrow__));
# 76 "/usr/include/stdio.h" 2 3 4
# 109 "/usr/include/stdio.h" 3 4
typedef _G_fpos_t fpos_t;
# 161 "/usr/include/stdio.h" 3 4
# 1 "/usr/include/bits/stdio_lim.h" 1 3 4
# 162 "/usr/include/stdio.h" 2 3 4
extern struct _IO_FILE *stdin;
extern struct _IO_FILE *stdout;
extern struct _IO_FILE *stderr;
extern int remove (__const char *__filename) __attribute__
((__nothrow__));
extern int rename (__const char *__old, __const char *__new)
__attribute__ ((__nothrow__));
extern int renameat (int __oldfd, __const char *__old, int __newfd,
__const char *__new) __attribute__ ((__nothrow__));
extern FILE *tmpfile (void) __attribute__ ((__warn_unused_result__));
# 206 "/usr/include/stdio.h" 3 4
extern char *tmpnam (char *__s) __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
extern char *tmpnam_r (char *__s) __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
# 224 "/usr/include/stdio.h" 3 4
extern char *tempnam (__const char *__dir, __const char *__pfx)
__attribute__ ((__nothrow__)) __attribute__ ((__malloc__)) __attribute__ ((__warn_unused_result__));
extern int fclose (FILE *__stream);
extern int fflush (FILE *__stream);
# 249 "/usr/include/stdio.h" 3 4
extern int fflush_unlocked (FILE *__stream);
# 263 "/usr/include/stdio.h" 3 4
extern FILE *fopen (__const char *__restrict __filename,
__const char *__restrict __modes) __attribute__ ((__warn_unused_result__));
extern FILE *freopen (__const char *__restrict __filename,
__const char *__restrict __modes,
FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
# 292 "/usr/include/stdio.h" 3 4
# 303 "/usr/include/stdio.h" 3 4
extern FILE *fdopen (int __fd, __const char *__modes) __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
# 316 "/usr/include/stdio.h" 3 4
extern FILE *fmemopen (void *__s, size_t __len, __const char *__modes)
__attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
extern FILE *open_memstream (char **__bufloc, size_t *__sizeloc) __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
extern void setbuf (FILE *__restrict __stream, char *__restrict __buf) __attribute__ ((__nothrow__));
extern int setvbuf (FILE *__restrict __stream, char *__restrict __buf,
int __modes, size_t __n) __attribute__ ((__nothrow__));
extern void setbuffer (FILE *__restrict __stream, char *__restrict __buf,
size_t __size) __attribute__ ((__nothrow__));
extern void setlinebuf (FILE *__stream) __attribute__ ((__nothrow__));
extern int fprintf (FILE *__restrict __stream,
__const char *__restrict __format, ...);
extern int printf (__const char *__restrict __format, ...);
extern int sprintf (char *__restrict __s,
__const char *__restrict __format, ...) __attribute__ ((__nothrow__));
extern int vfprintf (FILE *__restrict __s, __const char *__restrict __format,
__gnuc_va_list __arg);
extern int vprintf (__const char *__restrict __format, __gnuc_va_list __arg);
extern int vsprintf (char *__restrict __s, __const char *__restrict __format,
__gnuc_va_list __arg) __attribute__ ((__nothrow__));
extern int snprintf (char *__restrict __s, size_t __maxlen,
__const char *__restrict __format, ...)
__attribute__ ((__nothrow__)) __attribute__ ((__format__ (__printf__, 3, 4)));
extern int vsnprintf (char *__restrict __s, size_t __maxlen,
__const char *__restrict __format, __gnuc_va_list __arg)
__attribute__ ((__nothrow__)) __attribute__ ((__format__ (__printf__, 3, 0)));
# 414 "/usr/include/stdio.h" 3 4
extern int vdprintf (int __fd, __const char *__restrict __fmt,
__gnuc_va_list __arg)
__attribute__ ((__format__ (__printf__, 2, 0)));
extern int dprintf (int __fd, __const char *__restrict __fmt, ...)
__attribute__ ((__format__ (__printf__, 2, 3)));
extern int fscanf (FILE *__restrict __stream,
__const char *__restrict __format, ...) __attribute__ ((__warn_unused_result__));
extern int scanf (__const char *__restrict __format, ...) __attribute__ ((__warn_unused_result__));
extern int sscanf (__const char *__restrict __s,
__const char *__restrict __format, ...) __attribute__ ((__nothrow__));
# 445 "/usr/include/stdio.h" 3 4
extern int fscanf (FILE *__restrict __stream, __const char *__restrict __format, ...) __asm__ ("" "__isoc99_fscanf")
__attribute__ ((__warn_unused_result__));
extern int scanf (__const char *__restrict __format, ...) __asm__ ("" "__isoc99_scanf")
__attribute__ ((__warn_unused_result__));
extern int sscanf (__const char *__restrict __s, __const char *__restrict __format, ...) __asm__ ("" "__isoc99_sscanf") __attribute__ ((__nothrow__))
;
# 465 "/usr/include/stdio.h" 3 4
extern int vfscanf (FILE *__restrict __s, __const char *__restrict __format,
__gnuc_va_list __arg)
__attribute__ ((__format__ (__scanf__, 2, 0))) __attribute__ ((__warn_unused_result__));
extern int vscanf (__const char *__restrict __format, __gnuc_va_list __arg)
__attribute__ ((__format__ (__scanf__, 1, 0))) __attribute__ ((__warn_unused_result__));
extern int vsscanf (__const char *__restrict __s,
__const char *__restrict __format, __gnuc_va_list __arg)
__attribute__ ((__nothrow__)) __attribute__ ((__format__ (__scanf__, 2, 0)));
# 496 "/usr/include/stdio.h" 3 4
extern int vfscanf (FILE *__restrict __s, __const char *__restrict __format, __gnuc_va_list __arg) __asm__ ("" "__isoc99_vfscanf")
__attribute__ ((__format__ (__scanf__, 2, 0))) __attribute__ ((__warn_unused_result__));
extern int vscanf (__const char *__restrict __format, __gnuc_va_list __arg) __asm__ ("" "__isoc99_vscanf")
__attribute__ ((__format__ (__scanf__, 1, 0))) __attribute__ ((__warn_unused_result__));
extern int vsscanf (__const char *__restrict __s, __const char *__restrict __format, __gnuc_va_list __arg) __asm__ ("" "__isoc99_vsscanf") __attribute__ ((__nothrow__))
__attribute__ ((__format__ (__scanf__, 2, 0)));
# 524 "/usr/include/stdio.h" 3 4
extern int fgetc (FILE *__stream);
extern int getc (FILE *__stream);
extern int getchar (void);
# 552 "/usr/include/stdio.h" 3 4
extern int getc_unlocked (FILE *__stream);
extern int getchar_unlocked (void);
# 563 "/usr/include/stdio.h" 3 4
extern int fgetc_unlocked (FILE *__stream);
extern int fputc (int __c, FILE *__stream);
extern int putc (int __c, FILE *__stream);
extern int putchar (int __c);
# 596 "/usr/include/stdio.h" 3 4
extern int fputc_unlocked (int __c, FILE *__stream);
extern int putc_unlocked (int __c, FILE *__stream);
extern int putchar_unlocked (int __c);
extern int getw (FILE *__stream);
extern int putw (int __w, FILE *__stream);
extern char *fgets (char *__restrict __s, int __n, FILE *__restrict __stream)
__attribute__ ((__warn_unused_result__));
extern char *gets (char *__s) __attribute__ ((__warn_unused_result__));
# 658 "/usr/include/stdio.h" 3 4
extern __ssize_t __getdelim (char **__restrict __lineptr,
size_t *__restrict __n, int __delimiter,
FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
extern __ssize_t getdelim (char **__restrict __lineptr,
size_t *__restrict __n, int __delimiter,
FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
extern __ssize_t getline (char **__restrict __lineptr,
size_t *__restrict __n,
FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
extern int fputs (__const char *__restrict __s, FILE *__restrict __stream);
extern int puts (__const char *__s);
extern int ungetc (int __c, FILE *__stream);
extern size_t fread (void *__restrict __ptr, size_t __size,
size_t __n, FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
extern size_t fwrite (__const void *__restrict __ptr, size_t __size,
size_t __n, FILE *__restrict __s);
# 730 "/usr/include/stdio.h" 3 4
extern size_t fread_unlocked (void *__restrict __ptr, size_t __size,
size_t __n, FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
extern size_t fwrite_unlocked (__const void *__restrict __ptr, size_t __size,
size_t __n, FILE *__restrict __stream);
extern int fseek (FILE *__stream, long int __off, int __whence);
extern long int ftell (FILE *__stream) __attribute__ ((__warn_unused_result__));
extern void rewind (FILE *__stream);
# 766 "/usr/include/stdio.h" 3 4
extern int fseeko (FILE *__stream, __off_t __off, int __whence);
extern __off_t ftello (FILE *__stream) __attribute__ ((__warn_unused_result__));
# 785 "/usr/include/stdio.h" 3 4
extern int fgetpos (FILE *__restrict __stream, fpos_t *__restrict __pos);
extern int fsetpos (FILE *__stream, __const fpos_t *__pos);
# 808 "/usr/include/stdio.h" 3 4
# 817 "/usr/include/stdio.h" 3 4
extern void clearerr (FILE *__stream) __attribute__ ((__nothrow__));
extern int feof (FILE *__stream) __attribute__ ((__nothrow__))
__attribute__ ((__warn_unused_result__));
extern int ferror (FILE *__stream) __attribute__ ((__nothrow__))
__attribute__ ((__warn_unused_result__));
extern void clearerr_unlocked (FILE *__stream) __attribute__ ((__nothrow__));
extern int feof_unlocked (FILE *__stream) __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
extern int ferror_unlocked (FILE *__stream) __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
extern void perror (__const char *__s);
# 1 "/usr/include/bits/sys_errlist.h" 1 3 4
# 27 "/usr/include/bits/sys_errlist.h" 3 4
extern int sys_nerr;
extern __const char *__const sys_errlist[];
# 847 "/usr/include/stdio.h" 2 3 4
extern int fileno (FILE *__stream) __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
extern int fileno_unlocked (FILE *__stream) __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
# 866 "/usr/include/stdio.h" 3 4
extern FILE *popen (__const char *__command, __const char *__modes) __attribute__ ((__warn_unused_result__));
extern int pclose (FILE *__stream);
extern char *ctermid (char *__s) __attribute__ ((__nothrow__));
# 906 "/usr/include/stdio.h" 3 4
extern void flockfile (FILE *__stream) __attribute__ ((__nothrow__));
extern int ftrylockfile (FILE *__stream) __attribute__ ((__nothrow__))
__attribute__ ((__warn_unused_result__));
extern void funlockfile (FILE *__stream) __attribute__ ((__nothrow__));
# 927 "/usr/include/stdio.h" 3 4
# 1 "/usr/include/bits/stdio.h" 1 3 4
# 44 "/usr/include/bits/stdio.h" 3 4
extern __inline int
getchar (void)
{
return _IO_getc (stdin);
}
extern __inline int
fgetc_unlocked (FILE *__fp)
{
return (__builtin_expect (((__fp)->_IO_read_ptr >= (__fp)->_IO_read_end), 0) ? __uflow (__fp) : *(unsigned char *) (__fp)->_IO_read_ptr++);
}
extern __inline int
getc_unlocked (FILE *__fp)
{
return (__builtin_expect (((__fp)->_IO_read_ptr >= (__fp)->_IO_read_end), 0) ? __uflow (__fp) : *(unsigned char *) (__fp)->_IO_read_ptr++);
}
extern __inline int
getchar_unlocked (void)
{
return (__builtin_expect (((stdin)->_IO_read_ptr >= (stdin)->_IO_read_end), 0) ? __uflow (stdin) : *(unsigned char *) (stdin)->_IO_read_ptr++);
}
extern __inline int
putchar (int __c)
{
return _IO_putc (__c, stdout);
}
extern __inline int
fputc_unlocked (int __c, FILE *__stream)
{
return (__builtin_expect (((__stream)->_IO_write_ptr >= (__stream)->_IO_write_end), 0) ? __overflow (__stream, (unsigned char) (__c)) : (unsigned char) (*(__stream)->_IO_write_ptr++ = (__c)));
}
extern __inline int
putc_unlocked (int __c, FILE *__stream)
{
return (__builtin_expect (((__stream)->_IO_write_ptr >= (__stream)->_IO_write_end), 0) ? __overflow (__stream, (unsigned char) (__c)) : (unsigned char) (*(__stream)->_IO_write_ptr++ = (__c)));
}
extern __inline int
putchar_unlocked (int __c)
{
return (__builtin_expect (((stdout)->_IO_write_ptr >= (stdout)->_IO_write_end), 0) ? __overflow (stdout, (unsigned char) (__c)) : (unsigned char) (*(stdout)->_IO_write_ptr++ = (__c)));
}
# 125 "/usr/include/bits/stdio.h" 3 4
extern __inline int
__attribute__ ((__nothrow__)) feof_unlocked (FILE *__stream)
{
return (((__stream)->_flags & 0x10) != 0);
}
extern __inline int
__attribute__ ((__nothrow__)) ferror_unlocked (FILE *__stream)
{
return (((__stream)->_flags & 0x20) != 0);
}
# 928 "/usr/include/stdio.h" 2 3 4
# 1 "/usr/include/bits/stdio2.h" 1 3 4
# 24 "/usr/include/bits/stdio2.h" 3 4
extern int __sprintf_chk (char *__restrict __s, int __flag, size_t __slen,
__const char *__restrict __format, ...) __attribute__ ((__nothrow__));
extern int __vsprintf_chk (char *__restrict __s, int __flag, size_t __slen,
__const char *__restrict __format,
__gnuc_va_list __ap) __attribute__ ((__nothrow__));
extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
__attribute__ ((__nothrow__)) sprintf (char *__restrict __s, __const char *__restrict __fmt, ...)
{
return __builtin___sprintf_chk (__s, 2 - 1,
__builtin_object_size (__s, 2 > 1), __fmt, __builtin_va_arg_pack ());
}
extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
__attribute__ ((__nothrow__)) vsprintf (char *__restrict __s, __const char *__restrict __fmt, __gnuc_va_list __ap)
{
return __builtin___vsprintf_chk (__s, 2 - 1,
__builtin_object_size (__s, 2 > 1), __fmt, __ap);
}
extern int __snprintf_chk (char *__restrict __s, size_t __n, int __flag,
size_t __slen, __const char *__restrict __format,
...) __attribute__ ((__nothrow__));
extern int __vsnprintf_chk (char *__restrict __s, size_t __n, int __flag,
size_t __slen, __const char *__restrict __format,
__gnuc_va_list __ap) __attribute__ ((__nothrow__));
extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
__attribute__ ((__nothrow__)) snprintf (char *__restrict __s, size_t __n, __const char *__restrict __fmt, ...)
{
return __builtin___snprintf_chk (__s, __n, 2 - 1,
__builtin_object_size (__s, 2 > 1), __fmt, __builtin_va_arg_pack ());
}
extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
__attribute__ ((__nothrow__)) vsnprintf (char *__restrict __s, size_t __n, __const char *__restrict __fmt, __gnuc_va_list __ap)
{
return __builtin___vsnprintf_chk (__s, __n, 2 - 1,
__builtin_object_size (__s, 2 > 1), __fmt, __ap);
}
extern int __fprintf_chk (FILE *__restrict __stream, int __flag,
__const char *__restrict __format, ...);
extern int __printf_chk (int __flag, __const char *__restrict __format, ...);
extern int __vfprintf_chk (FILE *__restrict __stream, int __flag,
__const char *__restrict __format, __gnuc_va_list __ap);
extern int __vprintf_chk (int __flag, __const char *__restrict __format,
__gnuc_va_list __ap);
extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
fprintf (FILE *__restrict __stream, __const char *__restrict __fmt, ...)
{
return __fprintf_chk (__stream, 2 - 1, __fmt,
__builtin_va_arg_pack ());
}
extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
printf (__const char *__restrict __fmt, ...)
{
return __printf_chk (2 - 1, __fmt, __builtin_va_arg_pack ());
}
extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
vprintf (__const char *__restrict __fmt, __gnuc_va_list __ap)
{
return __vfprintf_chk (stdout, 2 - 1, __fmt, __ap);
}
extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
vfprintf (FILE *__restrict __stream,
__const char *__restrict __fmt, __gnuc_va_list __ap)
{
return __vfprintf_chk (__stream, 2 - 1, __fmt, __ap);
}
# 220 "/usr/include/bits/stdio2.h" 3 4
extern char *__gets_chk (char *__str, size_t) __attribute__ ((__warn_unused_result__));
extern char *__gets_warn (char *__str) __asm__ ("" "gets")
__attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("please use fgets or getline instead, gets can't " "specify buffer size")))
;
extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) __attribute__ ((__warn_unused_result__)) char *
gets (char *__str)
{
if (__builtin_object_size (__str, 2 > 1) != (size_t) -1)
return __gets_chk (__str, __builtin_object_size (__str, 2 > 1));
return __gets_warn (__str);
}
extern char *__fgets_chk (char *__restrict __s, size_t __size, int __n,
FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
extern char *__fgets_alias (char *__restrict __s, int __n, FILE *__restrict __stream) __asm__ ("" "fgets")
__attribute__ ((__warn_unused_result__));
extern char *__fgets_chk_warn (char *__restrict __s, size_t __size, int __n, FILE *__restrict __stream) __asm__ ("" "__fgets_chk")
__attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("fgets called with bigger size than length " "of destination buffer")))
;
extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) __attribute__ ((__warn_unused_result__)) char *
fgets (char *__restrict __s, int __n, FILE *__restrict __stream)
{
if (__builtin_object_size (__s, 2 > 1) != (size_t) -1)
{
if (!__builtin_constant_p (__n) || __n <= 0)
return __fgets_chk (__s, __builtin_object_size (__s, 2 > 1), __n, __stream);
if ((size_t) __n > __builtin_object_size (__s, 2 > 1))
return __fgets_chk_warn (__s, __builtin_object_size (__s, 2 > 1), __n, __stream);
}
return __fgets_alias (__s, __n, __stream);
}
extern size_t __fread_chk (void *__restrict __ptr, size_t __ptrlen,
size_t __size, size_t __n,
FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
extern size_t __fread_alias (void *__restrict __ptr, size_t __size, size_t __n, FILE *__restrict __stream) __asm__ ("" "fread")
__attribute__ ((__warn_unused_result__));
extern size_t __fread_chk_warn (void *__restrict __ptr, size_t __ptrlen, size_t __size, size_t __n, FILE *__restrict __stream) __asm__ ("" "__fread_chk")
__attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("fread called with bigger size * nmemb than length " "of destination buffer")))
;
extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) __attribute__ ((__warn_unused_result__)) size_t
fread (void *__restrict __ptr, size_t __size, size_t __n,
FILE *__restrict __stream)
{
if (__builtin_object_size (__ptr, 0) != (size_t) -1)
{
if (!__builtin_constant_p (__size)
|| !__builtin_constant_p (__n)
|| (__size | __n) >= (((size_t) 1) << (8 * sizeof (size_t) / 2)))
return __fread_chk (__ptr, __builtin_object_size (__ptr, 0), __size, __n, __stream);
if (__size * __n > __builtin_object_size (__ptr, 0))
return __fread_chk_warn (__ptr, __builtin_object_size (__ptr, 0), __size, __n, __stream);
}
return __fread_alias (__ptr, __size, __n, __stream);
}
# 319 "/usr/include/bits/stdio2.h" 3 4
extern size_t __fread_unlocked_chk (void *__restrict __ptr, size_t __ptrlen,
size_t __size, size_t __n,
FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
extern size_t __fread_unlocked_alias (void *__restrict __ptr, size_t __size, size_t __n, FILE *__restrict __stream) __asm__ ("" "fread_unlocked")
__attribute__ ((__warn_unused_result__));
extern size_t __fread_unlocked_chk_warn (void *__restrict __ptr, size_t __ptrlen, size_t __size, size_t __n, FILE *__restrict __stream) __asm__ ("" "__fread_unlocked_chk")
__attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("fread_unlocked called with bigger size * nmemb than " "length of destination buffer")))
;
extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) __attribute__ ((__warn_unused_result__)) size_t
fread_unlocked (void *__restrict __ptr, size_t __size, size_t __n,
FILE *__restrict __stream)
{
if (__builtin_object_size (__ptr, 0) != (size_t) -1)
{
if (!__builtin_constant_p (__size)
|| !__builtin_constant_p (__n)
|| (__size | __n) >= (((size_t) 1) << (8 * sizeof (size_t) / 2)))
return __fread_unlocked_chk (__ptr, __builtin_object_size (__ptr, 0), __size, __n,
__stream);
if (__size * __n > __builtin_object_size (__ptr, 0))
return __fread_unlocked_chk_warn (__ptr, __builtin_object_size (__ptr, 0), __size, __n,
__stream);
}
if (__builtin_constant_p (__size)
&& __builtin_constant_p (__n)
&& (__size | __n) < (((size_t) 1) << (8 * sizeof (size_t) / 2))
&& __size * __n <= 8)
{
size_t __cnt = __size * __n;
char *__cptr = (char *) __ptr;
if (__cnt == 0)
return 0;
for (; __cnt > 0; --__cnt)
{
int __c = (__builtin_expect (((__stream)->_IO_read_ptr >= (__stream)->_IO_read_end), 0) ? __uflow (__stream) : *(unsigned char *) (__stream)->_IO_read_ptr++);
if (__c == (-1))
break;
*__cptr++ = __c;
}
return (__cptr - (char *) __ptr) / __size;
}
return __fread_unlocked_alias (__ptr, __size, __n, __stream);
}
# 931 "/usr/include/stdio.h" 2 3 4
# 40 "../src/transcode.h" 2
# 1 "/usr/include/stdlib.h" 1 3 4
# 33 "/usr/include/stdlib.h" 3 4
# 1 "/usr/lib/x86_64-linux-gnu/gcc/x86_64-linux-gnu/4.5.2/include/stddef.h" 1 3 4
# 323 "/usr/lib/x86_64-linux-gnu/gcc/x86_64-linux-gnu/4.5.2/include/stddef.h" 3 4
typedef int wchar_t;
# 34 "/usr/include/stdlib.h" 2 3 4
# 1 "/usr/include/bits/waitflags.h" 1 3 4
# 43 "/usr/include/stdlib.h" 2 3 4
# 1 "/usr/include/bits/waitstatus.h" 1 3 4
# 67 "/usr/include/bits/waitstatus.h" 3 4
union wait
{
int w_status;
struct
{
unsigned int __w_termsig:7;
unsigned int __w_coredump:1;
unsigned int __w_retcode:8;
unsigned int:16;
} __wait_terminated;
struct
{
unsigned int __w_stopval:8;
unsigned int __w_stopsig:8;
unsigned int:16;
} __wait_stopped;
};
# 44 "/usr/include/stdlib.h" 2 3 4
# 68 "/usr/include/stdlib.h" 3 4
typedef union
{
union wait *__uptr;
int *__iptr;
} __WAIT_STATUS __attribute__ ((__transparent_union__));
# 96 "/usr/include/stdlib.h" 3 4
typedef struct
{
int quot;
int rem;
} div_t;
typedef struct
{
long int quot;
long int rem;
} ldiv_t;
__extension__ typedef struct
{
long long int quot;
long long int rem;
} lldiv_t;
# 140 "/usr/include/stdlib.h" 3 4
extern size_t __ctype_get_mb_cur_max (void) __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
extern double atof (__const char *__nptr)
__attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
extern int atoi (__const char *__nptr)
__attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
extern long int atol (__const char *__nptr)
__attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
__extension__ extern long long int atoll (__const char *__nptr)
__attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
extern double strtod (__const char *__restrict __nptr,
char **__restrict __endptr)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
extern float strtof (__const char *__restrict __nptr,
char **__restrict __endptr) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
extern long double strtold (__const char *__restrict __nptr,
char **__restrict __endptr)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
extern long int strtol (__const char *__restrict __nptr,
char **__restrict __endptr, int __base)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
extern unsigned long int strtoul (__const char *__restrict __nptr,
char **__restrict __endptr, int __base)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
__extension__
extern long long int strtoq (__const char *__restrict __nptr,
char **__restrict __endptr, int __base)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
__extension__
extern unsigned long long int strtouq (__const char *__restrict __nptr,
char **__restrict __endptr, int __base)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
__extension__
extern long long int strtoll (__const char *__restrict __nptr,
char **__restrict __endptr, int __base)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
__extension__
extern unsigned long long int strtoull (__const char *__restrict __nptr,
char **__restrict __endptr, int __base)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
# 277 "/usr/include/stdlib.h" 3 4
extern __inline double
__attribute__ ((__nothrow__)) atof (__const char *__nptr)
{
return strtod (__nptr, (char **) ((void *)0));
}
extern __inline int
__attribute__ ((__nothrow__)) atoi (__const char *__nptr)
{
return (int) strtol (__nptr, (char **) ((void *)0), 10);
}
extern __inline long int
__attribute__ ((__nothrow__)) atol (__const char *__nptr)
{
return strtol (__nptr, (char **) ((void *)0), 10);
}
__extension__ extern __inline long long int
__attribute__ ((__nothrow__)) atoll (__const char *__nptr)
{
return strtoll (__nptr, (char **) ((void *)0), 10);
}
# 311 "/usr/include/stdlib.h" 3 4
extern char *l64a (long int __n) __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
extern long int a64l (__const char *__s)
__attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
# 327 "/usr/include/stdlib.h" 3 4
extern long int random (void) __attribute__ ((__nothrow__));
extern void srandom (unsigned int __seed) __attribute__ ((__nothrow__));
extern char *initstate (unsigned int __seed, char *__statebuf,
size_t __statelen) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2)));
extern char *setstate (char *__statebuf) __attribute__ ((__nothrow__))
__attribute__ ((__nonnull__ (1)));
struct random_data
{
int32_t *fptr;
int32_t *rptr;
int32_t *state;
int rand_type;
int rand_deg;
int rand_sep;
int32_t *end_ptr;
};
extern int random_r (struct random_data *__restrict __buf,
int32_t *__restrict __result) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int srandom_r (unsigned int __seed, struct random_data *__buf)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2)));
extern int initstate_r (unsigned int __seed, char *__restrict __statebuf,
size_t __statelen,
struct random_data *__restrict __buf)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2, 4)));
extern int setstate_r (char *__restrict __statebuf,
struct random_data *__restrict __buf)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int rand (void) __attribute__ ((__nothrow__));
extern void srand (unsigned int __seed) __attribute__ ((__nothrow__));
extern int rand_r (unsigned int *__seed) __attribute__ ((__nothrow__));
extern double drand48 (void) __attribute__ ((__nothrow__));
extern double erand48 (unsigned short int __xsubi[3]) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern long int lrand48 (void) __attribute__ ((__nothrow__));
extern long int nrand48 (unsigned short int __xsubi[3])
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern long int mrand48 (void) __attribute__ ((__nothrow__));
extern long int jrand48 (unsigned short int __xsubi[3])
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern void srand48 (long int __seedval) __attribute__ ((__nothrow__));
extern unsigned short int *seed48 (unsigned short int __seed16v[3])
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern void lcong48 (unsigned short int __param[7]) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
struct drand48_data
{
unsigned short int __x[3];
unsigned short int __old_x[3];
unsigned short int __c;
unsigned short int __init;
unsigned long long int __a;
};
extern int drand48_r (struct drand48_data *__restrict __buffer,
double *__restrict __result) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int erand48_r (unsigned short int __xsubi[3],
struct drand48_data *__restrict __buffer,
double *__restrict __result) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int lrand48_r (struct drand48_data *__restrict __buffer,
long int *__restrict __result)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int nrand48_r (unsigned short int __xsubi[3],
struct drand48_data *__restrict __buffer,
long int *__restrict __result)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int mrand48_r (struct drand48_data *__restrict __buffer,
long int *__restrict __result)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int jrand48_r (unsigned short int __xsubi[3],
struct drand48_data *__restrict __buffer,
long int *__restrict __result)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int srand48_r (long int __seedval, struct drand48_data *__buffer)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2)));
extern int seed48_r (unsigned short int __seed16v[3],
struct drand48_data *__buffer) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int lcong48_r (unsigned short int __param[7],
struct drand48_data *__buffer)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern void *malloc (size_t __size) __attribute__ ((__nothrow__))
__attribute__ ((__malloc__)) __attribute__ ((__warn_unused_result__));
extern void *calloc (size_t __nmemb, size_t __size)
__attribute__ ((__nothrow__)) __attribute__ ((__malloc__)) __attribute__ ((__warn_unused_result__));
extern void *realloc (void *__ptr, size_t __size)
__attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
extern void free (void *__ptr) __attribute__ ((__nothrow__));
extern void cfree (void *__ptr) __attribute__ ((__nothrow__));
# 1 "/usr/include/alloca.h" 1 3 4
# 25 "/usr/include/alloca.h" 3 4
# 1 "/usr/lib/x86_64-linux-gnu/gcc/x86_64-linux-gnu/4.5.2/include/stddef.h" 1 3 4
# 26 "/usr/include/alloca.h" 2 3 4
extern void *alloca (size_t __size) __attribute__ ((__nothrow__));
# 498 "/usr/include/stdlib.h" 2 3 4
extern void *valloc (size_t __size) __attribute__ ((__nothrow__))
__attribute__ ((__malloc__)) __attribute__ ((__warn_unused_result__));
extern int posix_memalign (void **__memptr, size_t __alignment, size_t __size)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
extern void abort (void) __attribute__ ((__nothrow__)) __attribute__ ((__noreturn__));
extern int atexit (void (*__func) (void)) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
# 531 "/usr/include/stdlib.h" 3 4
extern int on_exit (void (*__func) (int __status, void *__arg), void *__arg)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern void exit (int __status) __attribute__ ((__nothrow__)) __attribute__ ((__noreturn__));
# 554 "/usr/include/stdlib.h" 3 4
extern void _Exit (int __status) __attribute__ ((__nothrow__)) __attribute__ ((__noreturn__));
extern char *getenv (__const char *__name) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
extern char *__secure_getenv (__const char *__name)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
extern int putenv (char *__string) __attribute__ ((__nothrow__))
__attribute__ ((__nonnull__ (1)));
extern int setenv (__const char *__name, __const char *__value, int __replace)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2)));
extern int unsetenv (__const char *__name) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int clearenv (void) __attribute__ ((__nothrow__));
# 606 "/usr/include/stdlib.h" 3 4
extern char *mktemp (char *__template) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
# 620 "/usr/include/stdlib.h" 3 4
extern int mkstemp (char *__template) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
# 642 "/usr/include/stdlib.h" 3 4
extern int mkstemps (char *__template, int __suffixlen) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
# 663 "/usr/include/stdlib.h" 3 4
extern char *mkdtemp (char *__template) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
# 712 "/usr/include/stdlib.h" 3 4
extern int system (__const char *__command) __attribute__
((__warn_unused_result__));
# 734 "/usr/include/stdlib.h" 3 4
extern char *realpath (__const char *__restrict __name,
char *__restrict __resolved) __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
typedef int (*__compar_fn_t) (__const void *, __const void *);
# 752 "/usr/include/stdlib.h" 3 4
extern void *bsearch (__const void *__key, __const void *__base,
size_t __nmemb, size_t __size, __compar_fn_t __compar)
__attribute__ ((__nonnull__ (1, 2, 5))) __attribute__ ((__warn_unused_result__));
extern void qsort (void *__base, size_t __nmemb, size_t __size,
__compar_fn_t __compar) __attribute__ ((__nonnull__ (1, 4)));
# 771 "/usr/include/stdlib.h" 3 4
extern int abs (int __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__)) __attribute__ ((__warn_unused_result__));
extern long int labs (long int __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__)) __attribute__ ((__warn_unused_result__));
__extension__ extern long long int llabs (long long int __x)
__attribute__ ((__nothrow__)) __attribute__ ((__const__)) __attribute__ ((__warn_unused_result__));
extern div_t div (int __numer, int __denom)
__attribute__ ((__nothrow__)) __attribute__ ((__const__)) __attribute__ ((__warn_unused_result__));
extern ldiv_t ldiv (long int __numer, long int __denom)
__attribute__ ((__nothrow__)) __attribute__ ((__const__)) __attribute__ ((__warn_unused_result__));
__extension__ extern lldiv_t lldiv (long long int __numer,
long long int __denom)
__attribute__ ((__nothrow__)) __attribute__ ((__const__)) __attribute__ ((__warn_unused_result__));
# 808 "/usr/include/stdlib.h" 3 4
extern char *ecvt (double __value, int __ndigit, int *__restrict __decpt,
int *__restrict __sign) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3, 4))) __attribute__ ((__warn_unused_result__));
extern char *fcvt (double __value, int __ndigit, int *__restrict __decpt,
int *__restrict __sign) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3, 4))) __attribute__ ((__warn_unused_result__));
extern char *gcvt (double __value, int __ndigit, char *__buf)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3))) __attribute__ ((__warn_unused_result__));
extern char *qecvt (long double __value, int __ndigit,
int *__restrict __decpt, int *__restrict __sign)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3, 4))) __attribute__ ((__warn_unused_result__));
extern char *qfcvt (long double __value, int __ndigit,
int *__restrict __decpt, int *__restrict __sign)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3, 4))) __attribute__ ((__warn_unused_result__));
extern char *qgcvt (long double __value, int __ndigit, char *__buf)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3))) __attribute__ ((__warn_unused_result__));
extern int ecvt_r (double __value, int __ndigit, int *__restrict __decpt,
int *__restrict __sign, char *__restrict __buf,
size_t __len) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3, 4, 5)));
extern int fcvt_r (double __value, int __ndigit, int *__restrict __decpt,
int *__restrict __sign, char *__restrict __buf,
size_t __len) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3, 4, 5)));
extern int qecvt_r (long double __value, int __ndigit,
int *__restrict __decpt, int *__restrict __sign,
char *__restrict __buf, size_t __len)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3, 4, 5)));
extern int qfcvt_r (long double __value, int __ndigit,
int *__restrict __decpt, int *__restrict __sign,
char *__restrict __buf, size_t __len)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3, 4, 5)));
extern int mblen (__const char *__s, size_t __n) __attribute__
((__nothrow__)) __attribute__ ((__warn_unused_result__));
extern int mbtowc (wchar_t *__restrict __pwc,
__const char *__restrict __s, size_t __n) __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
extern int wctomb (char *__s, wchar_t __wchar) __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
extern size_t mbstowcs (wchar_t *__restrict __pwcs,
__const char *__restrict __s, size_t __n) __attribute__ ((__nothrow__));
extern size_t wcstombs (char *__restrict __s,
__const wchar_t *__restrict __pwcs, size_t __n)
__attribute__ ((__nothrow__));
extern int rpmatch (__const char *__response) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
# 896 "/usr/include/stdlib.h" 3 4
extern int getsubopt (char **__restrict __optionp,
char *__const *__restrict __tokens,
char **__restrict __valuep)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2, 3))) __attribute__ ((__warn_unused_result__));
# 948 "/usr/include/stdlib.h" 3 4
extern int getloadavg (double __loadavg[], int __nelem)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
# 1 "/usr/include/bits/stdlib.h" 1 3 4
# 24 "/usr/include/bits/stdlib.h" 3 4
extern char *__realpath_chk (__const char *__restrict __name,
char *__restrict __resolved,
size_t __resolvedlen) __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
extern char *__realpath_alias (__const char *__restrict __name, char *__restrict __resolved) __asm__ ("" "realpath") __attribute__ ((__nothrow__))
__attribute__ ((__warn_unused_result__));
extern char *__realpath_chk_warn (__const char *__restrict __name, char *__restrict __resolved, size_t __resolvedlen) __asm__ ("" "__realpath_chk") __attribute__ ((__nothrow__))
__attribute__ ((__warn_unused_result__))
__attribute__((__warning__ ("second argument of realpath must be either NULL or at " "least PATH_MAX bytes long buffer")))
;
extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) __attribute__ ((__warn_unused_result__)) char *
__attribute__ ((__nothrow__)) realpath (__const char *__restrict __name, char *__restrict __resolved)
{
if (__builtin_object_size (__resolved, 2 > 1) != (size_t) -1)
{
return __realpath_chk (__name, __resolved, __builtin_object_size (__resolved, 2 > 1));
}
return __realpath_alias (__name, __resolved);
}
extern int __ptsname_r_chk (int __fd, char *__buf, size_t __buflen,
size_t __nreal) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2)));
extern int __ptsname_r_alias (int __fd, char *__buf, size_t __buflen) __asm__ ("" "ptsname_r") __attribute__ ((__nothrow__))
__attribute__ ((__nonnull__ (2)));
extern int __ptsname_r_chk_warn (int __fd, char *__buf, size_t __buflen, size_t __nreal) __asm__ ("" "__ptsname_r_chk") __attribute__ ((__nothrow__))
__attribute__ ((__nonnull__ (2))) __attribute__((__warning__ ("ptsname_r called with buflen bigger than " "size of buf")))
;
extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
__attribute__ ((__nothrow__)) ptsname_r (int __fd, char *__buf, size_t __buflen)
{
if (__builtin_object_size (__buf, 2 > 1) != (size_t) -1)
{
if (!__builtin_constant_p (__buflen))
return __ptsname_r_chk (__fd, __buf, __buflen, __builtin_object_size (__buf, 2 > 1));
if (__buflen > __builtin_object_size (__buf, 2 > 1))
return __ptsname_r_chk_warn (__fd, __buf, __buflen, __builtin_object_size (__buf, 2 > 1));
}
return __ptsname_r_alias (__fd, __buf, __buflen);
}
extern int __wctomb_chk (char *__s, wchar_t __wchar, size_t __buflen)
__attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
extern int __wctomb_alias (char *__s, wchar_t __wchar) __asm__ ("" "wctomb") __attribute__ ((__nothrow__))
__attribute__ ((__warn_unused_result__));
extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) __attribute__ ((__warn_unused_result__)) int
__attribute__ ((__nothrow__)) wctomb (char *__s, wchar_t __wchar)
{
if (__builtin_object_size (__s, 2 > 1) != (size_t) -1 && 16 > __builtin_object_size (__s, 2 > 1))
return __wctomb_chk (__s, __wchar, __builtin_object_size (__s, 2 > 1));
return __wctomb_alias (__s, __wchar);
}
extern size_t __mbstowcs_chk (wchar_t *__restrict __dst,
__const char *__restrict __src,
size_t __len, size_t __dstlen) __attribute__ ((__nothrow__));
extern size_t __mbstowcs_alias (wchar_t *__restrict __dst, __const char *__restrict __src, size_t __len) __asm__ ("" "mbstowcs") __attribute__ ((__nothrow__))
;
extern size_t __mbstowcs_chk_warn (wchar_t *__restrict __dst, __const char *__restrict __src, size_t __len, size_t __dstlen) __asm__ ("" "__mbstowcs_chk") __attribute__ ((__nothrow__))
__attribute__((__warning__ ("mbstowcs called with dst buffer smaller than len " "* sizeof (wchar_t)")))
;
extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) size_t
__attribute__ ((__nothrow__)) mbstowcs (wchar_t *__restrict __dst, __const char *__restrict __src, size_t __len)
{
if (__builtin_object_size (__dst, 2 > 1) != (size_t) -1)
{
if (!__builtin_constant_p (__len))
return __mbstowcs_chk (__dst, __src, __len,
__builtin_object_size (__dst, 2 > 1) / sizeof (wchar_t));
if (__len > __builtin_object_size (__dst, 2 > 1) / sizeof (wchar_t))
return __mbstowcs_chk_warn (__dst, __src, __len,
__builtin_object_size (__dst, 2 > 1) / sizeof (wchar_t));
}
return __mbstowcs_alias (__dst, __src, __len);
}
extern size_t __wcstombs_chk (char *__restrict __dst,
__const wchar_t *__restrict __src,
size_t __len, size_t __dstlen) __attribute__ ((__nothrow__));
extern size_t __wcstombs_alias (char *__restrict __dst, __const wchar_t *__restrict __src, size_t __len) __asm__ ("" "wcstombs") __attribute__ ((__nothrow__))
;
extern size_t __wcstombs_chk_warn (char *__restrict __dst, __const wchar_t *__restrict __src, size_t __len, size_t __dstlen) __asm__ ("" "__wcstombs_chk") __attribute__ ((__nothrow__))
__attribute__((__warning__ ("wcstombs called with dst buffer
smaller than len")));
extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) size_t
__attribute__ ((__nothrow__)) wcstombs (char *__restrict __dst, __const wchar_t *__restrict __src, size_t __len)
{
if (__builtin_object_size (__dst, 2 > 1) != (size_t) -1)
{
if (!__builtin_constant_p (__len))
return __wcstombs_chk (__dst, __src, __len, __builtin_object_size (__dst, 2 > 1));
if (__len > __builtin_object_size (__dst, 2 > 1))
return __wcstombs_chk_warn (__dst, __src, __len, __builtin_object_size (__dst, 2 > 1));
}
return __wcstombs_alias (__dst, __src, __len);
}
# 956 "/usr/include/stdlib.h" 2 3 4
# 964 "/usr/include/stdlib.h" 3 4
# 41 "../src/transcode.h" 2
# 1 "/usr/include/string.h" 1 3 4
# 29 "/usr/include/string.h" 3 4
# 1 "/usr/lib/x86_64-linux-gnu/gcc/x86_64-linux-gnu/4.5.2/include/stddef.h" 1 3 4
# 35 "/usr/include/string.h" 2 3 4
extern void *memcpy (void *__restrict __dest,
__const void *__restrict __src, size_t __n)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern void *memmove (void *__dest, __const void *__src, size_t __n)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern void *memccpy (void *__restrict __dest, __const void *__restrict __src,
int __c, size_t __n)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern void *memset (void *__s, int __c, size_t __n) __attribute__
((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int memcmp (__const void *__s1, __const void *__s2, size_t __n)
__attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
# 95 "/usr/include/string.h" 3 4
extern void *memchr (__const void *__s, int __c, size_t __n)
__attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
# 126 "/usr/include/string.h" 3 4
extern char *strcpy (char *__restrict __dest, __const char *__restrict __src)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern char *strncpy (char *__restrict __dest,
__const char *__restrict __src, size_t __n)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern char *strcat (char *__restrict __dest, __const char *__restrict __src)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern char *strncat (char *__restrict __dest, __const char *__restrict __src,
size_t __n) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int strcmp (__const char *__s1, __const char *__s2)
__attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
extern int strncmp (__const char *__s1, __const char *__s2, size_t __n)
__attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
extern int strcoll (__const char *__s1, __const char *__s2)
__attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
extern size_t strxfrm (char *__restrict __dest,
__const char *__restrict __src, size_t __n)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2)));
# 165 "/usr/include/string.h" 3 4
extern int strcoll_l (__const char *__s1, __const char *__s2, __locale_t __l)
__attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2, 3)));
extern size_t strxfrm_l (char *__dest, __const char *__src, size_t __n,
__locale_t __l) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2, 4)));
extern char *strdup (__const char *__s)
__attribute__ ((__nothrow__)) __attribute__ ((__malloc__)) __attribute__ ((__nonnull__ (1)));
extern char *strndup (__const char *__string, size_t __n)
__attribute__ ((__nothrow__)) __attribute__ ((__malloc__)) __attribute__ ((__nonnull__ (1)));
# 210 "/usr/include/string.h" 3 4
# 235 "/usr/include/string.h" 3 4
extern char *strchr (__const char *__s, int __c)
__attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
# 262 "/usr/include/string.h" 3 4
extern char *strrchr (__const char *__s, int __c)
__attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
# 281 "/usr/include/string.h" 3 4
extern size_t strcspn (__const char *__s, __const char *__reject)
__attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
extern size_t strspn (__const char *__s, __const char *__accept)
__attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
# 314 "/usr/include/string.h" 3 4
extern char *strpbrk (__const char *__s, __const char *__accept)
__attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
# 342 "/usr/include/string.h" 3 4
extern char *strstr (__const char *__haystack, __const char *__needle)
__attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
extern char *strtok (char *__restrict __s, __const char *__restrict __delim)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2)));
extern char *__strtok_r (char *__restrict __s,
__const char *__restrict __delim,
char **__restrict __save_ptr)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2, 3)));
extern char *strtok_r (char *__restrict __s, __const char *__restrict __delim,
char **__restrict __save_ptr)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2, 3)));
# 397 "/usr/include/string.h" 3 4
extern size_t strlen (__const char *__s)
__attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
extern size_t strnlen (__const char *__string, size_t __maxlen)
__attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
extern char *strerror (int __errnum) __attribute__ ((__nothrow__));
# 427 "/usr/include/string.h" 3 4
extern int strerror_r (int __errnum, char *__buf, size_t __buflen) __asm__ ("" "__xpg_strerror_r") __attribute__ ((__nothrow__))
__attribute__ ((__nonnull__ (2)));
# 445 "/usr/include/string.h" 3 4
extern char *strerror_l (int __errnum, __locale_t __l) __attribute__ ((__nothrow__));
extern void __bzero (void *__s, size_t __n) __attribute__
((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern void bcopy (__const void *__src, void *__dest, size_t __n)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern void bzero (void *__s, size_t __n) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int bcmp (__const void *__s1, __const void *__s2, size_t __n)
__attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
# 489 "/usr/include/string.h" 3 4
extern char *index (__const char *__s, int __c)
__attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
# 517 "/usr/include/string.h" 3 4
extern char *rindex (__const char *__s, int __c)
__attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
extern int ffs (int __i) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
# 536 "/usr/include/string.h" 3 4
extern int strcasecmp (__const char *__s1, __const char *__s2)
__attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
extern int strncasecmp (__const char *__s1, __const char *__s2, size_t __n)
__attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
# 559 "/usr/include/string.h" 3 4
extern char *strsep (char **__restrict __stringp,
__const char *__restrict __delim)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern char *strsignal (int __sig) __attribute__ ((__nothrow__));
extern char *__stpcpy (char *__restrict __dest, __const char *__restrict __src)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern char *stpcpy (char *__restrict __dest, __const char *__restrict __src)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern char *__stpncpy (char *__restrict __dest,
__const char *__restrict __src, size_t __n)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern char *stpncpy (char *__restrict __dest,
__const char *__restrict __src, size_t __n)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
# 634 "/usr/include/string.h" 3 4
# 1 "/usr/include/bits/string.h" 1 3 4
# 635 "/usr/include/string.h" 2 3 4
# 1 "/usr/include/bits/string2.h" 1 3 4
# 394 "/usr/include/bits/string2.h" 3 4
extern void *__rawmemchr (const void *__s, int __c);
# 969 "/usr/include/bits/string2.h" 3 4
extern __inline size_t __strcspn_c1 (__const char *__s, int __reject);
extern __inline size_t
__strcspn_c1 (__const char *__s, int __reject)
{
register size_t __result = 0;
while (__s[__result] != '\0' && __s[__result] != __reject)
++__result;
return __result;
}
extern __inline size_t __strcspn_c2 (__const char *__s, int __reject1,
int __reject2);
extern __inline size_t
__strcspn_c2 (__const char *__s, int __reject1, int __reject2)
{
register size_t __result = 0;
while (__s[__result] != '\0' && __s[__result] != __reject1
&& __s[__result] != __reject2)
++__result;
return __result;
}
extern __inline size_t __strcspn_c3 (__const char *__s, int __reject1,
int __reject2, int __reject3);
extern __inline size_t
__strcspn_c3 (__const char *__s, int __reject1, int __reject2,
int __reject3)
{
register size_t __result = 0;
while (__s[__result] != '\0' && __s[__result] != __reject1
&& __s[__result] != __reject2 && __s[__result] != __reject3)
++__result;
return __result;
}
# 1045 "/usr/include/bits/string2.h" 3 4
extern __inline size_t __strspn_c1 (__const char *__s, int __accept);
extern __inline size_t
__strspn_c1 (__const char *__s, int __accept)
{
register size_t __result = 0;
while (__s[__result] == __accept)
++__result;
return __result;
}
extern __inline size_t __strspn_c2 (__const char *__s, int __accept1,
int __accept2);
extern __inline size_t
__strspn_c2 (__const char *__s, int __accept1, int __accept2)
{
register size_t __result = 0;
while (__s[__result] == __accept1 || __s[__result] == __accept2)
++__result;
return __result;
}
extern __inline size_t __strspn_c3 (__const char *__s, int __accept1,
int __accept2, int __accept3);
extern __inline size_t
__strspn_c3 (__const char *__s, int __accept1, int __accept2, int __accept3)
{
register size_t __result = 0;
while (__s[__result] == __accept1 || __s[__result] == __accept2
|| __s[__result] == __accept3)
++__result;
return __result;
}
# 1121 "/usr/include/bits/string2.h" 3 4
extern __inline char *__strpbrk_c2 (__const char *__s, int __accept1,
int __accept2);
extern __inline char *
__strpbrk_c2 (__const char *__s, int __accept1, int __accept2)
{
while (*__s != '\0' && *__s != __accept1 && *__s != __accept2)
++__s;
return *__s == '\0' ? ((void *)0) : (char *) (size_t) __s;
}
extern __inline char *__strpbrk_c3 (__const char *__s, int __accept1,
int __accept2, int __accept3);
extern __inline char *
__strpbrk_c3 (__const char *__s, int __accept1, int __accept2,
int __accept3)
{
while (*__s != '\0' && *__s != __accept1 && *__s != __accept2
&& *__s != __accept3)
++__s;
return *__s == '\0' ? ((void *)0) : (char *) (size_t) __s;
}
# 1172 "/usr/include/bits/string2.h" 3 4
extern __inline char *__strtok_r_1c (char *__s, char __sep, char **__nextp);
extern __inline char *
__strtok_r_1c (char *__s, char __sep, char **__nextp)
{
char *__result;
if (__s == ((void *)0))
__s = *__nextp;
while (*__s == __sep)
++__s;
__result = ((void *)0);
if (*__s != '\0')
{
__result = __s++;
while (*__s != '\0')
if (*__s++ == __sep)
{
__s[-1] = '\0';
break;
}
}
*__nextp = __s;
return __result;
}
# 1204 "/usr/include/bits/string2.h" 3 4
extern char *__strsep_g (char **__stringp, __const char *__delim);
# 1222 "/usr/include/bits/string2.h" 3 4
extern __inline char *__strsep_1c (char **__s, char __reject);
extern __inline char *
__strsep_1c (char **__s, char __reject)
{
register char *__retval = *__s;
if (__retval != ((void *)0) && (*__s = (__extension__ (__builtin_constant_p (__reject) && !__builtin_constant_p (__retval) && (__reject) == '\0' ? (char *) __rawmemchr (__retval, __reject) : __builtin_strchr (__retval, __reject)))) != ((void *)0))
*(*__s)++ = '\0';
return __retval;
}
extern __inline char *__strsep_2c (char **__s, char __reject1, char __reject2);
extern __inline char *
__strsep_2c (char **__s, char __reject1, char __reject2)
{
register char *__retval = *__s;
if (__retval != ((void *)0))
{
register char *__cp = __retval;
while (1)
{
if (*__cp == '\0')
{
__cp = ((void *)0);
break;
}
if (*__cp == __reject1 || *__cp == __reject2)
{
*__cp++ = '\0';
break;
}
++__cp;
}
*__s = __cp;
}
return __retval;
}
extern __inline char *__strsep_3c (char **__s, char __reject1, char __reject2,
char __reject3);
extern __inline char *
__strsep_3c (char **__s, char __reject1, char __reject2, char __reject3)
{
register char *__retval = *__s;
if (__retval != ((void *)0))
{
register char *__cp = __retval;
while (1)
{
if (*__cp == '\0')
{
__cp = ((void *)0);
break;
}
if (*__cp == __reject1 || *__cp == __reject2 || *__cp == __reject3)
{
*__cp++ = '\0';
break;
}
++__cp;
}
*__s = __cp;
}
return __retval;
}
# 1303 "/usr/include/bits/string2.h" 3 4
extern char *__strdup (__const char *__string) __attribute__ ((__nothrow__)) __attribute__ ((__malloc__));
# 1322 "/usr/include/bits/string2.h" 3 4
extern char *__strndup (__const char *__string, size_t __n)
__attribute__ ((__nothrow__)) __attribute__ ((__malloc__));
# 638 "/usr/include/string.h" 2 3 4
# 1 "/usr/include/bits/string3.h" 1 3 4
# 23 "/usr/include/bits/string3.h" 3 4
extern void __warn_memset_zero_len (void) __attribute__((__warning__ ("memset used with constant zero length parameter; this could be due to transposed parameters")))
;
# 48 "/usr/include/bits/string3.h" 3 4
extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) void *
__attribute__ ((__nothrow__)) memcpy (void *__restrict __dest, __const void *__restrict __src, size_t __len)
{
return __builtin___memcpy_chk (__dest, __src, __len, __builtin_object_size (__dest, 0));
}
extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) void *
__attribute__ ((__nothrow__)) memmove (void *__dest, __const void *__src, size_t __len)
{
return __builtin___memmove_chk (__dest, __src, __len, __builtin_object_size (__dest, 0));
}
# 76 "/usr/include/bits/string3.h" 3 4
extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) void *
__attribute__ ((__nothrow__)) memset (void *__dest, int __ch, size_t __len)
{
if (__builtin_constant_p (__len) && __len == 0
&& (!__builtin_constant_p (__ch) || __ch != 0))
{
__warn_memset_zero_len ();
return __dest;
}
return __builtin___memset_chk (__dest, __ch, __len, __builtin_object_size (__dest, 0));
}
extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) void
__attribute__ ((__nothrow__)) bcopy (__const void *__src, void *__dest, size_t __len)
{
(void) __builtin___memmove_chk (__dest, __src, __len, __builtin_object_size (__dest, 0));
}
extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) void
__attribute__ ((__nothrow__)) bzero (void *__dest, size_t __len)
{
(void) __builtin___memset_chk (__dest, '\0', __len, __builtin_object_size (__dest, 0));
}
extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) char *
__attribute__ ((__nothrow__)) strcpy (char *__restrict __dest, __const char *__restrict __src)
{
return __builtin___strcpy_chk (__dest, __src, __builtin_object_size (__dest, 2 > 1));
}
# 117 "/usr/include/bits/string3.h" 3 4
extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) char *
__attribute__ ((__nothrow__)) strncpy (char *__restrict __dest, __const char *__restrict __src, size_t __len)
{
return __builtin___strncpy_chk (__dest, __src, __len, __builtin_object_size (__dest, 2 > 1));
}
extern char *__stpncpy_chk (char *__dest, __const char *__src, size_t __n,
size_t __destlen) __attribute__ ((__nothrow__));
extern char *__stpncpy_alias (char *__dest, __const char *__src, size_t __n) __asm__ ("" "stpncpy") __attribute__ ((__nothrow__))
;
extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) char *
__attribute__ ((__nothrow__)) stpncpy (char *__dest, __const char *__src, size_t __n)
{
if (__builtin_object_size (__dest, 2 > 1) != (size_t) -1
&& (!__builtin_constant_p (__n) || __n <= __builtin_object_size (__dest, 2 > 1)))
return __stpncpy_chk (__dest, __src, __n, __builtin_object_size (__dest, 2 > 1));
return __stpncpy_alias (__dest, __src, __n);
}
extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) char *
__attribute__ ((__nothrow__)) strcat (char *__restrict __dest, __const char *__restrict __src)
{
return __builtin___strcat_chk (__dest, __src, __builtin_object_size (__dest, 2 > 1));
}
extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) char *
__attribute__ ((__nothrow__)) strncat (char *__restrict __dest, __const char *__restrict __src, size_t __len)
{
return __builtin___strncat_chk (__dest, __src, __len, __builtin_object_size (__dest, 2 > 1));
}
# 643 "/usr/include/string.h" 2 3 4
# 42 "../src/transcode.h" 2
# 1 "/usr/include/unistd.h" 1 3 4
# 28 "/usr/include/unistd.h" 3 4
# 203 "/usr/include/unistd.h" 3 4
# 1 "/usr/include/bits/posix_opt.h" 1 3 4
# 204 "/usr/include/unistd.h" 2 3 4
# 1 "/usr/include/bits/environments.h" 1 3 4
# 23 "/usr/include/bits/environments.h" 3 4
# 1 "/usr/include/bits/wordsize.h" 1 3 4
# 24 "/usr/include/bits/environments.h" 2 3 4
# 208 "/usr/include/unistd.h" 2 3 4
# 227 "/usr/include/unistd.h" 3 4
# 1 "/usr/lib/x86_64-linux-gnu/gcc/x86_64-linux-gnu/4.5.2/include/stddef.h" 1 3 4
# 228 "/usr/include/unistd.h" 2 3 4
# 256 "/usr/include/unistd.h" 3 4
typedef __useconds_t useconds_t;
# 275 "/usr/include/unistd.h" 3 4
typedef __socklen_t socklen_t;
# 288 "/usr/include/unistd.h" 3 4
extern int access (__const char *__name, int __type) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
# 305 "/usr/include/unistd.h" 3 4
extern int faccessat (int __fd, __const char *__file, int __type, int __flag)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2))) __attribute__ ((__warn_unused_result__));
# 331 "/usr/include/unistd.h" 3 4
extern __off_t lseek (int __fd, __off_t __offset, int __whence) __attribute__ ((__nothrow__));
# 350 "/usr/include/unistd.h" 3 4
extern int close (int __fd);
extern ssize_t read (int __fd, void *__buf, size_t __nbytes) __attribute__ ((__warn_unused_result__));
extern ssize_t write (int __fd, __const void *__buf, size_t __n) __attribute__ ((__warn_unused_result__));
# 373 "/usr/include/unistd.h" 3 4
extern ssize_t pread (int __fd, void *__buf, size_t __nbytes,
__off_t __offset) __attribute__ ((__warn_unused_result__));
extern ssize_t pwrite (int __fd, __const void *__buf, size_t __n,
__off_t __offset) __attribute__ ((__warn_unused_result__));
# 414 "/usr/include/unistd.h" 3 4
extern int pipe (int __pipedes[2]) __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
# 429 "/usr/include/unistd.h" 3 4
extern unsigned int alarm (unsigned int __seconds) __attribute__ ((__nothrow__));
# 441 "/usr/include/unistd.h" 3 4
extern unsigned int sleep (unsigned int __seconds);
extern __useconds_t ualarm (__useconds_t __value, __useconds_t __interval)
__attribute__ ((__nothrow__));
extern int usleep (__useconds_t __useconds);
# 466 "/usr/include/unistd.h" 3 4
extern int pause (void);
extern int chown (__const char *__file, __uid_t __owner, __gid_t __group)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
extern int fchown (int __fd, __uid_t __owner, __gid_t __group)
__attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
extern int lchown (__const char *__file, __uid_t __owner, __gid_t __group)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
extern int fchownat (int __fd, __const char *__file, __uid_t __owner,
__gid_t __group, int __flag)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2))) __attribute__ ((__warn_unused_result__));
extern int chdir (__const char *__path) __attribute__ ((__nothrow__))
__attribute__ ((__nonnull__ (1))) __attribute__
((__warn_unused_result__));
extern int fchdir (int __fd) __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
# 508 "/usr/include/unistd.h" 3 4
extern char *getcwd (char *__buf, size_t __size) __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
# 522 "/usr/include/unistd.h" 3 4
extern char *getwd (char *__buf)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__deprecated__)) __attribute__ ((__warn_unused_result__));
extern int dup (int __fd) __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
extern int dup2 (int __fd, int __fd2) __attribute__ ((__nothrow__));
# 540 "/usr/include/unistd.h" 3 4
extern char **__environ;
extern int execve (__const char *__path, char *__const __argv[],
char *__const __envp[]) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int fexecve (int __fd, char *__const __argv[], char *__const __envp[])
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2)));
extern int execv (__const char *__path, char *__const __argv[])
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int execle (__const char *__path, __const char *__arg, ...)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int execl (__const char *__path, __const char *__arg, ...)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int execvp (__const char *__file, char *__const __argv[])
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int execlp (__const char *__file, __const char *__arg, ...)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
# 595 "/usr/include/unistd.h" 3 4
extern int nice (int __inc) __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
extern void _exit (int __status) __attribute__ ((__noreturn__));
# 1 "/usr/include/bits/confname.h" 1 3 4
# 26 "/usr/include/bits/confname.h" 3 4
enum
{
_PC_LINK_MAX,
_PC_MAX_CANON,
_PC_MAX_INPUT,
_PC_NAME_MAX,
_PC_PATH_MAX,
_PC_PIPE_BUF,
_PC_CHOWN_RESTRICTED,
_PC_NO_TRUNC,
_PC_VDISABLE,
_PC_SYNC_IO,
_PC_ASYNC_IO,
_PC_PRIO_IO,
_PC_SOCK_MAXBUF,
_PC_FILESIZEBITS,
_PC_REC_INCR_XFER_SIZE,
_PC_REC_MAX_XFER_SIZE,
_PC_REC_MIN_XFER_SIZE,
_PC_REC_XFER_ALIGN,
_PC_ALLOC_SIZE_MIN,
_PC_SYMLINK_MAX,
_PC_2_SYMLINKS
};
enum
{
_SC_ARG_MAX,
_SC_CHILD_MAX,
_SC_CLK_TCK,
_SC_NGROUPS_MAX,
_SC_OPEN_MAX,
_SC_STREAM_MAX,
_SC_TZNAME_MAX,
_SC_JOB_CONTROL,
_SC_SAVED_IDS,
_SC_REALTIME_SIGNALS,
_SC_PRIORITY_SCHEDULING,
_SC_TIMERS,
_SC_ASYNCHRONOUS_IO,
_SC_PRIORITIZED_IO,
_SC_SYNCHRONIZED_IO,
_SC_FSYNC,
_SC_MAPPED_FILES,
_SC_MEMLOCK,
_SC_MEMLOCK_RANGE,
_SC_MEMORY_PROTECTION,
_SC_MESSAGE_PASSING,
_SC_SEMAPHORES,
_SC_SHARED_MEMORY_OBJECTS,
_SC_AIO_LISTIO_MAX,
_SC_AIO_MAX,
_SC_AIO_PRIO_DELTA_MAX,
_SC_DELAYTIMER_MAX,
_SC_MQ_OPEN_MAX,
_SC_MQ_PRIO_MAX,
_SC_VERSION,
_SC_PAGESIZE,
_SC_RTSIG_MAX,
_SC_SEM_NSEMS_MAX,
_SC_SEM_VALUE_MAX,
_SC_SIGQUEUE_MAX,
_SC_TIMER_MAX,
_SC_BC_BASE_MAX,
_SC_BC_DIM_MAX,
_SC_BC_SCALE_MAX,
_SC_BC_STRING_MAX,
_SC_COLL_WEIGHTS_MAX,
_SC_EQUIV_CLASS_MAX,
_SC_EXPR_NEST_MAX,
_SC_LINE_MAX,
_SC_RE_DUP_MAX,
_SC_CHARCLASS_NAME_MAX,
_SC_2_VERSION,
_SC_2_C_BIND,
_SC_2_C_DEV,
_SC_2_FORT_DEV,
_SC_2_FORT_RUN,
_SC_2_SW_DEV,
_SC_2_LOCALEDEF,
_SC_PII,
_SC_PII_XTI,
_SC_PII_SOCKET,
_SC_PII_INTERNET,
_SC_PII_OSI,
_SC_POLL,
_SC_SELECT,
_SC_UIO_MAXIOV,
_SC_IOV_MAX = _SC_UIO_MAXIOV,
_SC_PII_INTERNET_STREAM,
_SC_PII_INTERNET_DGRAM,
_SC_PII_OSI_COTS,
_SC_PII_OSI_CLTS,
_SC_PII_OSI_M,
_SC_T_IOV_MAX,
_SC_THREADS,
_SC_THREAD_SAFE_FUNCTIONS,
_SC_GETGR_R_SIZE_MAX,
_SC_GETPW_R_SIZE_MAX,
_SC_LOGIN_NAME_MAX,
_SC_TTY_NAME_MAX,
_SC_THREAD_DESTRUCTOR_ITERATIONS,
_SC_THREAD_KEYS_MAX,
_SC_THREAD_STACK_MIN,
_SC_THREAD_THREADS_MAX,
_SC_THREAD_ATTR_STACKADDR,
_SC_THREAD_ATTR_STACKSIZE,
_SC_THREAD_PRIORITY_SCHEDULING,
_SC_THREAD_PRIO_INHERIT,
_SC_THREAD_PRIO_PROTECT,
_SC_THREAD_PROCESS_SHARED,
_SC_NPROCESSORS_CONF,
_SC_NPROCESSORS_ONLN,
_SC_PHYS_PAGES,
_SC_AVPHYS_PAGES,
_SC_ATEXIT_MAX,
_SC_PASS_MAX,
_SC_XOPEN_VERSION,
_SC_XOPEN_XCU_VERSION,
_SC_XOPEN_UNIX,
_SC_XOPEN_CRYPT,
_SC_XOPEN_ENH_I18N,
_SC_XOPEN_SHM,
_SC_2_CHAR_TERM,
_SC_2_C_VERSION,
_SC_2_UPE,
_SC_XOPEN_XPG2,
_SC_XOPEN_XPG3,
_SC_XOPEN_XPG4,
_SC_CHAR_BIT,
_SC_CHAR_MAX,
_SC_CHAR_MIN,
_SC_INT_MAX,
_SC_INT_MIN,
_SC_LONG_BIT,
_SC_WORD_BIT,
_SC_MB_LEN_MAX,
_SC_NZERO,
_SC_SSIZE_MAX,
_SC_SCHAR_MAX,
_SC_SCHAR_MIN,
_SC_SHRT_MAX,
_SC_SHRT_MIN,
_SC_UCHAR_MAX,
_SC_UINT_MAX,
_SC_ULONG_MAX,
_SC_USHRT_MAX,
_SC_NL_ARGMAX,
_SC_NL_LANGMAX,
_SC_NL_MSGMAX,
_SC_NL_NMAX,
_SC_NL_SETMAX,
_SC_NL_TEXTMAX,
_SC_XBS5_ILP32_OFF32,
_SC_XBS5_ILP32_OFFBIG,
_SC_XBS5_LP64_OFF64,
_SC_XBS5_LPBIG_OFFBIG,
_SC_XOPEN_LEGACY,
_SC_XOPEN_REALTIME,
_SC_XOPEN_REALTIME_THREADS,
_SC_ADVISORY_INFO,
_SC_BARRIERS,
_SC_BASE,
_SC_C_LANG_SUPPORT,
_SC_C_LANG_SUPPORT_R,
_SC_CLOCK_SELECTION,
_SC_CPUTIME,
_SC_THREAD_CPUTIME,
_SC_DEVICE_IO,
_SC_DEVICE_SPECIFIC,
_SC_DEVICE_SPECIFIC_R,
_SC_FD_MGMT,
_SC_FIFO,
_SC_PIPE,
_SC_FILE_ATTRIBUTES,
_SC_FILE_LOCKING,
_SC_FILE_SYSTEM,
_SC_MONOTONIC_CLOCK,
_SC_MULTI_PROCESS,
_SC_SINGLE_PROCESS,
_SC_NETWORKING,
_SC_READER_WRITER_LOCKS,
_SC_SPIN_LOCKS,
_SC_REGEXP,
_SC_REGEX_VERSION,
_SC_SHELL,
_SC_SIGNALS,
_SC_SPAWN,
_SC_SPORADIC_SERVER,
_SC_THREAD_SPORADIC_SERVER,
_SC_SYSTEM_DATABASE,
_SC_SYSTEM_DATABASE_R,
_SC_TIMEOUTS,
_SC_TYPED_MEMORY_OBJECTS,
_SC_USER_GROUPS,
_SC_USER_GROUPS_R,
_SC_2_PBS,
_SC_2_PBS_ACCOUNTING,
_SC_2_PBS_LOCATE,
_SC_2_PBS_MESSAGE,
_SC_2_PBS_TRACK,
_SC_SYMLOOP_MAX,
_SC_STREAMS,
_SC_2_PBS_CHECKPOINT,
_SC_V6_ILP32_OFF32,
_SC_V6_ILP32_OFFBIG,
_SC_V6_LP64_OFF64,
_SC_V6_LPBIG_OFFBIG,
_SC_HOST_NAME_MAX,
_SC_TRACE,
_SC_TRACE_EVENT_FILTER,
_SC_TRACE_INHERIT,
_SC_TRACE_LOG,
_SC_LEVEL1_ICACHE_SIZE,
_SC_LEVEL1_ICACHE_ASSOC,
_SC_LEVEL1_ICACHE_LINESIZE,
_SC_LEVEL1_DCACHE_SIZE,
_SC_LEVEL1_DCACHE_ASSOC,
_SC_LEVEL1_DCACHE_LINESIZE,
_SC_LEVEL2_CACHE_SIZE,
_SC_LEVEL2_CACHE_ASSOC,
_SC_LEVEL2_CACHE_LINESIZE,
_SC_LEVEL3_CACHE_SIZE,
_SC_LEVEL3_CACHE_ASSOC,
_SC_LEVEL3_CACHE_LINESIZE,
_SC_LEVEL4_CACHE_SIZE,
_SC_LEVEL4_CACHE_ASSOC,
_SC_LEVEL4_CACHE_LINESIZE,
_SC_IPV6 = _SC_LEVEL1_ICACHE_SIZE + 50,
_SC_RAW_SOCKETS,
_SC_V7_ILP32_OFF32,
_SC_V7_ILP32_OFFBIG,
_SC_V7_LP64_OFF64,
_SC_V7_LPBIG_OFFBIG,
_SC_SS_REPL_MAX,
_SC_TRACE_EVENT_NAME_MAX,
_SC_TRACE_NAME_MAX,
_SC_TRACE_SYS_MAX,
_SC_TRACE_USER_EVENT_MAX,
_SC_XOPEN_STREAMS,
_SC_THREAD_ROBUST_PRIO_INHERIT,
_SC_THREAD_ROBUST_PRIO_PROTECT
};
enum
{
_CS_PATH,
_CS_V6_WIDTH_RESTRICTED_ENVS,
_CS_GNU_LIBC_VERSION,
_CS_GNU_LIBPTHREAD_VERSION,
_CS_V5_WIDTH_RESTRICTED_ENVS,
_CS_V7_WIDTH_RESTRICTED_ENVS,
_CS_LFS_CFLAGS = 1000,
_CS_LFS_LDFLAGS,
_CS_LFS_LIBS,
_CS_LFS_LINTFLAGS,
_CS_LFS64_CFLAGS,
_CS_LFS64_LDFLAGS,
_CS_LFS64_LIBS,
_CS_LFS64_LINTFLAGS,
_CS_XBS5_ILP32_OFF32_CFLAGS = 1100,
_CS_XBS5_ILP32_OFF32_LDFLAGS,
_CS_XBS5_ILP32_OFF32_LIBS,
_CS_XBS5_ILP32_OFF32_LINTFLAGS,
_CS_XBS5_ILP32_OFFBIG_CFLAGS,
_CS_XBS5_ILP32_OFFBIG_LDFLAGS,
_CS_XBS5_ILP32_OFFBIG_LIBS,
_CS_XBS5_ILP32_OFFBIG_LINTFLAGS,
_CS_XBS5_LP64_OFF64_CFLAGS,
_CS_XBS5_LP64_OFF64_LDFLAGS,
_CS_XBS5_LP64_OFF64_LIBS,
_CS_XBS5_LP64_OFF64_LINTFLAGS,
_CS_XBS5_LPBIG_OFFBIG_CFLAGS,
_CS_XBS5_LPBIG_OFFBIG_LDFLAGS,
_CS_XBS5_LPBIG_OFFBIG_LIBS,
_CS_XBS5_LPBIG_OFFBIG_LINTFLAGS,
_CS_POSIX_V6_ILP32_OFF32_CFLAGS,
_CS_POSIX_V6_ILP32_OFF32_LDFLAGS,
_CS_POSIX_V6_ILP32_OFF32_LIBS,
_CS_POSIX_V6_ILP32_OFF32_LINTFLAGS,
_CS_POSIX_V6_ILP32_OFFBIG_CFLAGS,
_CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS,
_CS_POSIX_V6_ILP32_OFFBIG_LIBS,
_CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS,
_CS_POSIX_V6_LP64_OFF64_CFLAGS,
_CS_POSIX_V6_LP64_OFF64_LDFLAGS,
_CS_POSIX_V6_LP64_OFF64_LIBS,
_CS_POSIX_V6_LP64_OFF64_LINTFLAGS,
_CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS,
_CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS,
_CS_POSIX_V6_LPBIG_OFFBIG_LIBS,
_CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS,
_CS_POSIX_V7_ILP32_OFF32_CFLAGS,
_CS_POSIX_V7_ILP32_OFF32_LDFLAGS,
_CS_POSIX_V7_ILP32_OFF32_LIBS,
_CS_POSIX_V7_ILP32_OFF32_LINTFLAGS,
_CS_POSIX_V7_ILP32_OFFBIG_CFLAGS,
_CS_POSIX_V7_ILP32_OFFBIG_LDFLAGS,
_CS_POSIX_V7_ILP32_OFFBIG_LIBS,
_CS_POSIX_V7_ILP32_OFFBIG_LINTFLAGS,
_CS_POSIX_V7_LP64_OFF64_CFLAGS,
_CS_POSIX_V7_LP64_OFF64_LDFLAGS,
_CS_POSIX_V7_LP64_OFF64_LIBS,
_CS_POSIX_V7_LP64_OFF64_LINTFLAGS,
_CS_POSIX_V7_LPBIG_OFFBIG_CFLAGS,
_CS_POSIX_V7_LPBIG_OFFBIG_LDFLAGS,
_CS_POSIX_V7_LPBIG_OFFBIG_LIBS,
_CS_POSIX_V7_LPBIG_OFFBIG_LINTFLAGS,
_CS_V6_ENV,
_CS_V7_ENV
};
# 607 "/usr/include/unistd.h" 2 3 4
extern long int pathconf (__const char *__path, int __name)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern long int fpathconf (int __fd, int __name) __attribute__ ((__nothrow__));
extern long int sysconf (int __name) __attribute__ ((__nothrow__));
extern size_t confstr (int __name, char *__buf, size_t __len)
__attribute__ ((__nothrow__));
extern __pid_t getpid (void) __attribute__ ((__nothrow__));
extern __pid_t getppid (void) __attribute__ ((__nothrow__));
extern __pid_t getpgrp (void) __attribute__ ((__nothrow__));
# 643 "/usr/include/unistd.h" 3 4
extern __pid_t __getpgid (__pid_t __pid) __attribute__ ((__nothrow__));
extern __pid_t getpgid (__pid_t __pid) __attribute__ ((__nothrow__));
extern int setpgid (__pid_t __pid, __pid_t __pgid) __attribute__ ((__nothrow__));
# 669 "/usr/include/unistd.h" 3 4
extern int setpgrp (void) __attribute__ ((__nothrow__));
# 686 "/usr/include/unistd.h" 3 4
extern __pid_t setsid (void) __attribute__ ((__nothrow__));
extern __pid_t getsid (__pid_t __pid) __attribute__ ((__nothrow__));
extern __uid_t getuid (void) __attribute__ ((__nothrow__));
extern __uid_t geteuid (void) __attribute__ ((__nothrow__));
extern __gid_t getgid (void) __attribute__ ((__nothrow__));
extern __gid_t getegid (void) __attribute__ ((__nothrow__));
extern int getgroups (int __size, __gid_t __list[]) __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
# 719 "/usr/include/unistd.h" 3 4
extern int setuid (__uid_t __uid) __attribute__ ((__nothrow__));
extern int setreuid (__uid_t __ruid, __uid_t __euid) __attribute__ ((__nothrow__));
extern int seteuid (__uid_t __uid) __attribute__ ((__nothrow__));
extern int setgid (__gid_t __gid) __attribute__ ((__nothrow__));
extern int setregid (__gid_t __rgid, __gid_t __egid) __attribute__ ((__nothrow__));
extern int setegid (__gid_t __gid) __attribute__ ((__nothrow__));
# 775 "/usr/include/unistd.h" 3 4
extern __pid_t fork (void) __attribute__ ((__nothrow__));
extern __pid_t vfork (void) __attribute__ ((__nothrow__));
extern char *ttyname (int __fd) __attribute__ ((__nothrow__));
extern int ttyname_r (int __fd, char *__buf, size_t __buflen)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2))) __attribute__ ((__warn_unused_result__));
extern int isatty (int __fd) __attribute__ ((__nothrow__));
extern int ttyslot (void) __attribute__ ((__nothrow__));
extern int link (__const char *__from, __const char *__to)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2))) __attribute__ ((__warn_unused_result__));
extern int linkat (int __fromfd, __const char *__from, int __tofd,
__const char *__to, int __flags)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2, 4))) __attribute__ ((__warn_unused_result__));
extern int symlink (__const char *__from, __const char *__to)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2))) __attribute__ ((__warn_unused_result__));
extern ssize_t readlink (__const char *__restrict __path,
char *__restrict __buf, size_t __len)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2))) __attribute__ ((__warn_unused_result__));
extern int symlinkat (__const char *__from, int __tofd,
__const char *__to) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 3))) __attribute__ ((__warn_unused_result__));
extern ssize_t readlinkat (int __fd, __const char *__restrict __path,
char *__restrict __buf, size_t __len)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2, 3))) __attribute__ ((__warn_unused_result__));
extern int unlink (__const char *__name) __attribute__ ((__nothrow__))
__attribute__ ((__nonnull__ (1)));
extern int unlinkat (int __fd, __const char *__name, int __flag)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2)));
extern int rmdir (__const char *__path) __attribute__ ((__nothrow__))
__attribute__ ((__nonnull__ (1)));
extern __pid_t tcgetpgrp (int __fd) __attribute__ ((__nothrow__));
extern int tcsetpgrp (int __fd, __pid_t __pgrp_id) __attribute__ ((__nothrow__));
extern char *getlogin (void);
extern int getlogin_r (char *__name, size_t __name_len) __attribute__
((__nonnull__ (1)));
extern int setlogin (__const char *__name) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
# 890 "/usr/include/unistd.h" 3 4
# 1 "/usr/include/getopt.h" 1 3 4
# 59 "/usr/include/getopt.h" 3 4
extern char *optarg;
# 73 "/usr/include/getopt.h" 3 4
extern int optind;
extern int opterr;
extern int optopt;
# 152 "/usr/include/getopt.h" 3 4
extern int getopt (int ___argc, char *const *___argv, const char *__shortopts)
__attribute__ ((__nothrow__));
# 891 "/usr/include/unistd.h" 2 3 4
extern int gethostname (char *__name, size_t __len) __attribute__
((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int sethostname (__const char *__name, size_t __len)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
extern int sethostid (long int __id) __attribute__ ((__nothrow__))
__attribute__ ((__warn_unused_result__));
extern int getdomainname (char *__name, size_t __len)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
extern int setdomainname (__const char *__name, size_t __len)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
extern int vhangup (void) __attribute__ ((__nothrow__));
extern int revoke (__const char *__file) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
extern int profil (unsigned short int *__sample_buffer, size_t __size,
size_t __offset, unsigned int __scale)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int acct (__const char *__name) __attribute__ ((__nothrow__));
extern char *getusershell (void) __attribute__ ((__nothrow__));
extern void endusershell (void) __attribute__ ((__nothrow__));
extern void setusershell (void) __attribute__ ((__nothrow__));
extern int daemon (int __nochdir, int __noclose) __attribute__
((__nothrow__)) __attribute__ ((__warn_unused_result__));
extern int chroot (__const char *__path) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
extern char *getpass (__const char *__prompt) __attribute__ ((__nonnull__ (1)));
# 976 "/usr/include/unistd.h" 3 4
extern int fsync (int __fd);
extern long int gethostid (void);
extern void sync (void) __attribute__ ((__nothrow__));
extern int getpagesize (void) __attribute__ ((__nothrow__))
__attribute__ ((__const__));
extern int getdtablesize (void) __attribute__ ((__nothrow__));
# 1007 "/usr/include/unistd.h" 3 4
extern int truncate (__const char *__file, __off_t __length)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
# 1029 "/usr/include/unistd.h" 3 4
extern int ftruncate (int __fd, __off_t __length) __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
# 1050 "/usr/include/unistd.h" 3 4
extern int brk (void *__addr) __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
extern void *sbrk (intptr_t __delta) __attribute__ ((__nothrow__));
# 1071 "/usr/include/unistd.h" 3 4
extern long int syscall (long int __sysno, ...) __attribute__ ((__nothrow__));
# 1125 "/usr/include/unistd.h" 3 4
extern int fdatasync (int __fildes);
# 1154 "/usr/include/unistd.h" 3 4
extern char *ctermid (char *__s) __attribute__ ((__nothrow__));
# 1 "/usr/include/bits/unistd.h" 1 3 4
# 24 "/usr/include/bits/unistd.h" 3 4
extern ssize_t __read_chk (int __fd, void *__buf, size_t __nbytes,
size_t __buflen) __attribute__ ((__warn_unused_result__));
extern ssize_t __read_alias (int __fd, void *__buf, size_t __nbytes) __asm__ ("" "read")
__attribute__ ((__warn_unused_result__));
extern ssize_t __read_chk_warn (int __fd, void *__buf, size_t __nbytes, size_t __buflen) __asm__ ("" "__read_chk")
__attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("read called with bigger length than size of " "the destination buffer")))
;
extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) __attribute__ ((__warn_unused_result__)) ssize_t
read (int __fd, void *__buf, size_t __nbytes)
{
if (__builtin_object_size (__buf, 0) != (size_t) -1)
{
if (!__builtin_constant_p (__nbytes))
return __read_chk (__fd, __buf, __nbytes, __builtin_object_size (__buf, 0));
if (__nbytes > __builtin_object_size (__buf, 0))
return __read_chk_warn (__fd, __buf, __nbytes, __builtin_object_size (__buf, 0));
}
return __read_alias (__fd, __buf, __nbytes);
}
# 124 "/usr/include/bits/unistd.h" 3 4
extern ssize_t __readlink_chk (__const char *__restrict __path,
char *__restrict __buf, size_t __len,
size_t __buflen)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2))) __attribute__ ((__warn_unused_result__));
extern ssize_t __readlink_alias (__const char *__restrict __path, char *__restrict __buf, size_t __len) __asm__ ("" "readlink") __attribute__ ((__nothrow__))
__attribute__ ((__nonnull__ (1, 2))) __attribute__ ((__warn_unused_result__));
extern ssize_t __readlink_chk_warn (__const char *__restrict __path, char *__restrict __buf, size_t __len, size_t __buflen) __asm__ ("" "__readlink_chk") __attribute__ ((__nothrow__))
__attribute__ ((__nonnull__ (1, 2))) __attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("readlink called with bigger length " "than size of destination buffer")))
;
extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) __attribute__ ((__nonnull__ (1, 2))) __attribute__ ((__warn_unused_result__)) ssize_t
__attribute__ ((__nothrow__)) readlink (__const char *__restrict __path, char *__restrict __buf, size_t __len)
{
if (__builtin_object_size (__buf, 2 > 1) != (size_t) -1)
{
if (!__builtin_constant_p (__len))
return __readlink_chk (__path, __buf, __len, __builtin_object_size (__buf, 2 > 1));
if ( __len > __builtin_object_size (__buf, 2 > 1))
return __readlink_chk_warn (__path, __buf, __len, __builtin_object_size (__buf, 2 > 1));
}
return __readlink_alias (__path, __buf, __len);
}
extern ssize_t __readlinkat_chk (int __fd, __const char *__restrict __path,
char *__restrict __buf, size_t __len,
size_t __buflen)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2, 3))) __attribute__ ((__warn_unused_result__));
extern ssize_t __readlinkat_alias (int __fd, __const char *__restrict __path, char *__restrict __buf, size_t __len) __asm__ ("" "readlinkat") __attribute__ ((__nothrow__))
__attribute__ ((__nonnull__ (2, 3))) __attribute__ ((__warn_unused_result__));
extern ssize_t __readlinkat_chk_warn (int __fd, __const char *__restrict __path, char *__restrict __buf, size_t __len, size_t __buflen) __asm__ ("" "__readlinkat_chk") __attribute__ ((__nothrow__))
__attribute__ ((__nonnull__ (2, 3))) __attribute__
((__warn_unused_result__)) __attribute__((__warning__ ("readlinkat
called with bigger " "length than size of destination " "buffer")))
;
extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) __attribute__ ((__nonnull__ (2, 3))) __attribute__ ((__warn_unused_result__)) ssize_t
__attribute__ ((__nothrow__)) readlinkat (int __fd, __const char *__restrict __path, char *__restrict __buf, size_t __len)
{
if (__builtin_object_size (__buf, 2 > 1) != (size_t) -1)
{
if (!__builtin_constant_p (__len))
return __readlinkat_chk (__fd, __path, __buf, __len, __builtin_object_size (__buf, 2 > 1));
if (__len > __builtin_object_size (__buf, 2 > 1))
return __readlinkat_chk_warn (__fd, __path, __buf, __len,
__builtin_object_size (__buf, 2 > 1));
}
return __readlinkat_alias (__fd, __path, __buf, __len);
}
extern char *__getcwd_chk (char *__buf, size_t __size, size_t __buflen)
__attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
extern char *__getcwd_alias (char *__buf, size_t __size) __asm__ ("" "getcwd") __attribute__ ((__nothrow__))
__attribute__ ((__warn_unused_result__));
extern char *__getcwd_chk_warn (char *__buf, size_t __size, size_t __buflen) __asm__ ("" "__getcwd_chk") __attribute__ ((__nothrow__))
__attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("getcwd caller with bigger length than size of " "destination buffer")))
;
extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) __attribute__ ((__warn_unused_result__)) char *
__attribute__ ((__nothrow__)) getcwd (char *__buf, size_t __size)
{
if (__builtin_object_size (__buf, 2 > 1) != (size_t) -1)
{
if (!__builtin_constant_p (__size))
return __getcwd_chk (__buf, __size, __builtin_object_size (__buf, 2 > 1));
if (__size > __builtin_object_size (__buf, 2 > 1))
return __getcwd_chk_warn (__buf, __size, __builtin_object_size (__buf, 2 > 1));
}
return __getcwd_alias (__buf, __size);
}
extern char *__getwd_chk (char *__buf, size_t buflen)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
extern char *__getwd_warn (char *__buf) __asm__ ("" "getwd") __attribute__ ((__nothrow__))
__attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("please use getcwd instead, as getwd " "doesn't specify buffer size")))
;
extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__deprecated__)) __attribute__ ((__warn_unused_result__)) char *
__attribute__ ((__nothrow__)) getwd (char *__buf)
{
if (__builtin_object_size (__buf, 2 > 1) != (size_t) -1)
return __getwd_chk (__buf, __builtin_object_size (__buf, 2 > 1));
return __getwd_warn (__buf);
}
extern size_t __confstr_chk (int __name, char *__buf, size_t __len,
size_t __buflen) __attribute__ ((__nothrow__));
extern size_t __confstr_alias (int __name, char *__buf, size_t __len) __asm__ ("" "confstr") __attribute__ ((__nothrow__))
;
extern size_t __confstr_chk_warn (int __name, char *__buf, size_t __len, size_t __buflen) __asm__ ("" "__confstr_chk") __attribute__ ((__nothrow__))
__attribute__((__warning__ ("confstr called with bigger length than size of destination " "buffer")))
;
extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) size_t
__attribute__ ((__nothrow__)) confstr (int __name, char *__buf, size_t __len)
{
if (__builtin_object_size (__buf, 2 > 1) != (size_t) -1)
{
if (!__builtin_constant_p (__len))
return __confstr_chk (__name, __buf, __len, __builtin_object_size (__buf, 2 > 1));
if (__builtin_object_size (__buf, 2 > 1) < __len)
return __confstr_chk_warn (__name, __buf, __len, __builtin_object_size (__buf, 2 > 1));
}
return __confstr_alias (__name, __buf, __len);
}
extern int __getgroups_chk (int __size, __gid_t __list[], size_t __listlen)
__attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
extern int __getgroups_alias (int __size, __gid_t __list[]) __asm__ ("" "getgroups") __attribute__ ((__nothrow__))
__attribute__ ((__warn_unused_result__));
extern int __getgroups_chk_warn (int __size, __gid_t __list[], size_t __listlen) __asm__ ("" "__getgroups_chk") __attribute__ ((__nothrow__))
__attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("getgroups called with bigger group count than what " "can fit into destination buffer")))
;
extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
__attribute__ ((__nothrow__)) getgroups (int __size, __gid_t __list[])
{
if (__builtin_object_size (__list, 2 > 1) != (size_t) -1)
{
if (!__builtin_constant_p (__size) || __size < 0)
return __getgroups_chk (__size, __list, __builtin_object_size (__list, 2 > 1));
if (__size * sizeof (__gid_t) > __builtin_object_size (__list, 2 > 1))
return __getgroups_chk_warn (__size, __list, __builtin_object_size (__list, 2 > 1));
}
return __getgroups_alias (__size, __list);
}
extern int __ttyname_r_chk (int __fd, char *__buf, size_t __buflen,
size_t __nreal) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2)));
extern int __ttyname_r_alias (int __fd, char *__buf, size_t __buflen) __asm__ ("" "ttyname_r") __attribute__ ((__nothrow__))
__attribute__ ((__nonnull__ (2)));
extern int __ttyname_r_chk_warn (int __fd, char *__buf, size_t __buflen, size_t __nreal) __asm__ ("" "__ttyname_r_chk") __attribute__ ((__nothrow__))
__attribute__ ((__nonnull__ (2))) __attribute__((__warning__ ("ttyname_r called with bigger buflen than " "size of destination buffer")))
;
extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
__attribute__ ((__nothrow__)) ttyname_r (int __fd, char *__buf, size_t __buflen)
{
if (__builtin_object_size (__buf, 2 > 1) != (size_t) -1)
{
if (!__builtin_constant_p (__buflen))
return __ttyname_r_chk (__fd, __buf, __buflen, __builtin_object_size (__buf, 2 > 1));
if (__buflen > __builtin_object_size (__buf, 2 > 1))
return __ttyname_r_chk_warn (__fd, __buf, __buflen, __builtin_object_size (__buf, 2 > 1));
}
return __ttyname_r_alias (__fd, __buf, __buflen);
}
extern int __getlogin_r_chk (char *__buf, size_t __buflen, size_t __nreal)
__attribute__ ((__nonnull__ (1)));
extern int __getlogin_r_alias (char *__buf, size_t __buflen) __asm__ ("" "getlogin_r")
__attribute__ ((__nonnull__ (1)));
extern int __getlogin_r_chk_warn (char *__buf, size_t __buflen, size_t __nreal) __asm__ ("" "__getlogin_r_chk")
__attribute__ ((__nonnull__ (1))) __attribute__((__warning__ ("getlogin_r called with bigger buflen than " "size of destination buffer")))
;
extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
getlogin_r (char *__buf, size_t __buflen)
{
if (__builtin_object_size (__buf, 2 > 1) != (size_t) -1)
{
if (!__builtin_constant_p (__buflen))
return __getlogin_r_chk (__buf, __buflen, __builtin_object_size (__buf, 2 > 1));
if (__buflen > __builtin_object_size (__buf, 2 > 1))
return __getlogin_r_chk_warn (__buf, __buflen, __builtin_object_size (__buf, 2 > 1));
}
return __getlogin_r_alias (__buf, __buflen);
}
extern int __gethostname_chk (char *__buf, size_t __buflen, size_t __nreal)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int __gethostname_alias (char *__buf, size_t __buflen) __asm__ ("" "gethostname") __attribute__ ((__nothrow__))
__attribute__ ((__nonnull__ (1)));
extern int __gethostname_chk_warn (char *__buf, size_t __buflen, size_t __nreal) __asm__ ("" "__gethostname_chk") __attribute__ ((__nothrow__))
__attribute__ ((__nonnull__ (1))) __attribute__((__warning__ ("gethostname called with bigger buflen than " "size of destination buffer")))
;
extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
__attribute__ ((__nothrow__)) gethostname (char *__buf, size_t __buflen)
{
if (__builtin_object_size (__buf, 2 > 1) != (size_t) -1)
{
if (!__builtin_constant_p (__buflen))
return __gethostname_chk (__buf, __buflen, __builtin_object_size (__buf, 2 > 1));
if (__buflen > __builtin_object_size (__buf, 2 > 1))
return __gethostname_chk_warn (__buf, __buflen, __builtin_object_size (__buf, 2 > 1));
}
return __gethostname_alias (__buf, __buflen);
}
extern int __getdomainname_chk (char *__buf, size_t __buflen, size_t __nreal)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
extern int __getdomainname_alias (char *__buf, size_t __buflen) __asm__ ("" "getdomainname") __attribute__ ((__nothrow__))
__attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
extern int __getdomainname_chk_warn (char *__buf, size_t __buflen, size_t __nreal) __asm__ ("" "__getdomainname_chk") __attribute__ ((__nothrow__))
__attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("getdomainname called with bigger " "buflen than size of destination " "buffer")))
;
extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
__attribute__ ((__nothrow__)) getdomainname (char *__buf, size_t __buflen)
{
if (__builtin_object_size (__buf, 2 > 1) != (size_t) -1)
{
if (!__builtin_constant_p (__buflen))
return __getdomainname_chk (__buf, __buflen, __builtin_object_size (__buf, 2 > 1));
if (__buflen > __builtin_object_size (__buf, 2 > 1))
return __getdomainname_chk_warn (__buf, __buflen, __builtin_object_size (__buf, 2 > 1));
}
return __getdomainname_alias (__buf, __buflen);
}
# 1161 "/usr/include/unistd.h" 2 3 4
# 43 "../src/transcode.h" 2
# 1 "../avilib/avilib.h" 1
# 36 "../avilib/avilib.h"
# 1 "/usr/lib/x86_64-linux-gnu/gcc/x86_64-linux-gnu/4.5.2/include-fixed/limits.h" 1 3 4
# 34 "/usr/lib/x86_64-linux-gnu/gcc/x86_64-linux-gnu/4.5.2/include-fixed/limits.h" 3 4
# 1 "/usr/lib/x86_64-linux-gnu/gcc/x86_64-linux-gnu/4.5.2/include-fixed/syslimits.h" 1 3 4
# 1 "/usr/lib/x86_64-linux-gnu/gcc/x86_64-linux-gnu/4.5.2/include-fixed/limits.h" 1 3 4
# 169 "/usr/lib/x86_64-linux-gnu/gcc/x86_64-linux-gnu/4.5.2/include-fixed/limits.h" 3 4
# 1 "/usr/include/limits.h" 1 3 4
# 145 "/usr/include/limits.h" 3 4
# 1 "/usr/include/bits/posix1_lim.h" 1 3 4
# 157 "/usr/include/bits/posix1_lim.h" 3 4
# 1 "/usr/include/bits/local_lim.h" 1 3 4
# 39 "/usr/include/bits/local_lim.h" 3 4
# 1 "/usr/include/linux/limits.h" 1 3 4
# 40 "/usr/include/bits/local_lim.h" 2 3 4
# 158 "/usr/include/bits/posix1_lim.h" 2 3 4
# 146 "/usr/include/limits.h" 2 3 4
# 1 "/usr/include/bits/posix2_lim.h" 1 3 4
# 150 "/usr/include/limits.h" 2 3 4
# 170 "/usr/lib/x86_64-linux-gnu/gcc/x86_64-linux-gnu/4.5.2/include-fixed/limits.h" 2 3 4
# 8 "/usr/lib/x86_64-linux-gnu/gcc/x86_64-linux-gnu/4.5.2/include-fixed/syslimits.h" 2 3 4
# 35 "/usr/lib/x86_64-linux-gnu/gcc/x86_64-linux-gnu/4.5.2/include-fixed/limits.h" 2 3 4
# 37 "../avilib/avilib.h" 2
# 1 "/usr/include/errno.h" 1 3 4
# 40 "../avilib/avilib.h" 2
enum {
AVI_ERROR = -1,
AVI_OK = 0,
};
typedef struct
{
off_t key;
off_t pos;
off_t len;
} video_index_entry;
typedef struct
{
off_t pos;
off_t len;
off_t tot;
} audio_index_entry;
# 82 "../avilib/avilib.h"
typedef struct _avisuperindex_entry {
uint64_t qwOffset;
uint32_t dwSize;
uint32_t dwDuration;
} avisuperindex_entry;
typedef struct _avistdindex_entry {
uint32_t dwOffset;
uint32_t dwSize;
} avistdindex_entry;
typedef struct _avistdindex_chunk {
char fcc[4];
uint32_t dwSize;
uint16_t wLongsPerEntry;
uint8_t bIndexSubType;
uint8_t bIndexType;
uint32_t nEntriesInUse;
char dwChunkId[4];
uint64_t qwBaseOffset;
uint32_t dwReserved3;
avistdindex_entry *aIndex;
} avistdindex_chunk;
typedef struct _avisuperindex_chunk {
char fcc[4];
uint32_t dwSize;
uint16_t wLongsPerEntry;
uint8_t bIndexSubType;
uint8_t bIndexType;
uint32_t nEntriesInUse;
char dwChunkId[4];
uint32_t dwReserved[3];
avisuperindex_entry *aIndex;
avistdindex_chunk **stdindex;
} avisuperindex_chunk;
typedef struct track_s
{
long a_fmt;
long a_chans;
long a_rate;
long a_bits;
long mp3rate;
long a_vbr;
long padrate;
long audio_strn;
off_t audio_bytes;
long audio_chunks;
char audio_tag[4];
long audio_posc;
long audio_posb;
off_t a_codech_off;
off_t a_codecf_off;
audio_index_entry *audio_index;
avisuperindex_chunk *audio_superindex;
} track_t;
typedef struct
{
uint32_t bi_size;
uint32_t bi_width;
uint32_t bi_height;
uint16_t bi_planes;
uint16_t bi_bit_count;
uint32_t bi_compression;
uint32_t bi_size_image;
uint32_t bi_x_pels_per_meter;
uint32_t bi_y_pels_per_meter;
uint32_t bi_clr_used;
uint32_t bi_clr_important;
} alBITMAPINFOHEADER;
typedef struct __attribute__((__packed__))
{
uint16_t w_format_tag;
uint16_t n_channels;
uint32_t n_samples_per_sec;
uint32_t n_avg_bytes_per_sec;
uint16_t n_block_align;
uint16_t w_bits_per_sample;
uint16_t cb_size;
} alWAVEFORMATEX;
typedef struct __attribute__((__packed__))
{
uint32_t fcc_type;
uint32_t fcc_handler;
uint32_t dw_flags;
uint32_t dw_caps;
uint16_t w_priority;
uint16_t w_language;
uint32_t dw_scale;
uint32_t dw_rate;
uint32_t dw_start;
uint32_t dw_length;
uint32_t dw_initial_frames;
uint32_t dw_suggested_buffer_size;
uint32_t dw_quality;
uint32_t dw_sample_size;
uint32_t dw_left;
uint32_t dw_top;
uint32_t dw_right;
uint32_t dw_bottom;
uint32_t dw_edit_count;
uint32_t dw_format_change_count;
char sz_name[64];
} alAVISTREAMINFO;
typedef struct
{
long fdes;
long mode;
long width;
long height;
double fps;
char compressor[8];
char compressor2[8];
long video_strn;
long video_frames;
char video_tag[4];
long video_pos;
uint32_t max_len;
track_t track[8];
off_t pos;
long n_idx;
long max_idx;
off_t v_codech_off;
off_t v_codecf_off;
uint8_t (*idx)[16];
video_index_entry *video_index;
avisuperindex_chunk *video_superindex;
int is_opendml;
off_t last_pos;
uint32_t last_len;
int must_use_index;
off_t movi_start;
int total_frames;
int anum;
int aptr;
int comment_fd;
char *index_file;
alBITMAPINFOHEADER *bitmap_info_header;
alWAVEFORMATEX *wave_format_ex[8];
void* extradata;
unsigned long extradata_size;
} avi_t;
# 324 "../avilib/avilib.h"
avi_t *AVI_open_output_file(const char *filename);
void AVI_set_video(avi_t *AVI, int width, int height, double fps,
const char *compressor);
void AVI_set_audio(avi_t *AVI, int channels, long rate, int bits, int format,
long mp3rate);
int AVI_write_frame(avi_t *AVI, const char *data, long bytes, int keyframe);
int AVI_write_audio(avi_t *AVI, const char *data, long bytes);
long AVI_bytes_remain(avi_t *AVI);
int AVI_close(avi_t *AVI);
long AVI_bytes_written(avi_t *AVI);
avi_t *AVI_open_input_file(const char *filename, int getIndex);
avi_t *AVI_open_input_indexfile(const char *filename, int getIndex,
const char *indexfile);
avi_t *AVI_open_fd(int fd, int getIndex);
avi_t *AVI_open_indexfd(int fd, int getIndex, const char *indexfile);
long AVI_audio_mp3rate(avi_t *AVI);
long AVI_audio_padrate(avi_t *AVI);
long AVI_video_frames(avi_t *AVI);
int AVI_video_width(avi_t *AVI);
int AVI_video_height(avi_t *AVI);
double AVI_frame_rate(avi_t *AVI);
char* AVI_video_compressor(avi_t *AVI);
int AVI_audio_channels(avi_t *AVI);
int AVI_audio_bits(avi_t *AVI);
int AVI_audio_format(avi_t *AVI);
long AVI_audio_rate(avi_t *AVI);
long AVI_audio_bytes(avi_t *AVI);
long AVI_audio_chunks(avi_t *AVI);
int AVI_can_read_audio(avi_t *AVI);
long AVI_max_video_chunk(avi_t *AVI);
long AVI_frame_size(avi_t *AVI, long frame);
long AVI_audio_size(avi_t *AVI, long frame);
int AVI_seek_start(avi_t *AVI);
int AVI_set_video_position(avi_t *AVI, long frame);
long AVI_get_video_position(avi_t *AVI, long frame);
long AVI_read_frame(avi_t *AVI, char *vidbuf, int *keyframe);
long AVI_read_video(avi_t *AVI, char *vidbuf, long bytes, int *keyframe);
int AVI_set_audio_position(avi_t *AVI, long byte);
int AVI_set_audio_bitrate(avi_t *AVI, long bitrate);
long AVI_get_audio_position_index(avi_t *AVI);
int AVI_set_audio_position_index(avi_t *AVI, long indexpos);
long AVI_read_audio(avi_t *AVI, char *audbuf, long bytes);
long AVI_read_audio_chunk(avi_t *AVI, char *audbuf);
long AVI_audio_codech_offset(avi_t *AVI);
long AVI_audio_codecf_offset(avi_t *AVI);
long AVI_video_codech_offset(avi_t *AVI);
long AVI_video_codecf_offset(avi_t *AVI);
void AVI_print_error(const char *str);
const char *AVI_strerror(void);
int AVI_scan(const char *name);
int AVI_dump(const char *name, int mode);
uint64_t AVI_max_size(void);
int AVI_set_audio_track(avi_t *AVI, int track);
int AVI_get_audio_track(avi_t *AVI);
int AVI_audio_tracks(avi_t *AVI);
void AVI_set_audio_vbr(avi_t *AVI, long is_vbr);
long AVI_get_audio_vbr(avi_t *AVI);
void AVI_set_comment_fd(avi_t *AVI, int fd);
int AVI_get_comment_fd(avi_t *AVI);
struct riff_struct
{
uint8_t id[4];
uint32_t len;
uint8_t wave_id[4];
};
struct chunk_struct
{
uint8_t id[4];
uint32_t len;
};
struct common_struct
{
uint16_t wFormatTag;
uint16_t wChannels;
uint32_t dwSamplesPerSec;
uint32_t dwAvgBytesPerSec;
uint16_t wBlockAlign;
uint16_t wBitsPerSample;
};
struct wave_header
{
struct riff_struct riff;
struct chunk_struct format;
struct common_struct common;
struct chunk_struct data;
};
struct AVIStreamHeader {
uint32_t fccType;
uint32_t fccHandler;
uint32_t dwFlags;
uint32_t dwPriority;
uint32_t dwInitialFrames;
uint32_t dwScale;
uint32_t dwRate;
uint32_t dwStart;
uint32_t dwLength;
uint32_t dwSuggestedBufferSize;
uint32_t dwQuality;
uint32_t dwSampleSize;
} __attribute__((__packed__));
# 45 "../src/transcode.h" 2
# 1 "../aclib/ac.h" 1
# 15 "../aclib/ac.h"
# 1 "../config.h" 1
# 16 "../aclib/ac.h" 2
# 1 "/usr/lib/x86_64-linux-gnu/gcc/x86_64-linux-gnu/4.5.2/include/stddef.h" 1 3 4
# 149 "/usr/lib/x86_64-linux-gnu/gcc/x86_64-linux-gnu/4.5.2/include/stddef.h" 3 4
typedef long int ptrdiff_t;
# 19 "../aclib/ac.h" 2
# 54 "../aclib/ac.h"
extern int ac_init(int accel);
extern int ac_cpuinfo(void);
extern int ac_endian(void);
extern const char *ac_flagstotext(int accel);
extern void *ac_memcpy(void *dest, const void *src, size_t size);
extern void ac_average(const uint8_t *src1, const uint8_t *src2,
uint8_t *dest, int bytes);
extern void ac_rescale(const uint8_t *src1, const uint8_t *src2,
uint8_t *dest, int bytes,
uint32_t weight1, uint32_t weight2);
# 46 "../src/transcode.h" 2
# 1 "../libtc/tcglob.h" 1
# 37 "../libtc/tcglob.h"
typedef struct tcglob_ TCGlob;
# 54 "../libtc/tcglob.h"
TCGlob *tc_glob_open(const char *pattern, uint32_t flags);
# 75 "../libtc/tcglob.h"
const char *tc_glob_next(TCGlob *tcg);
# 90 "../libtc/tcglob.h"
int tc_glob_has_more(TCGlob *tcg);
# 105 "../libtc/tcglob.h"
int tc_glob_close(TCGlob *tcg);
# 47 "../src/transcode.h" 2
# 1 "../libtc/framecode.h" 1
# 20 "../libtc/framecode.h"
struct fc_time {
struct fc_time *next;
double fps;
unsigned int stepf;
unsigned int vob_offset;
unsigned int sh;
unsigned int sm;
unsigned int ss;
unsigned int sf;
unsigned int stf;
unsigned int eh;
unsigned int em;
unsigned int es;
unsigned int ef;
unsigned int etf;
};
struct fc_time *new_fc_time(void);
void free_fc_time(struct fc_time *list);
void set_fc_time(struct fc_time *range, int start, int end);
int fc_time_contains(const struct fc_time *list, unsigned int frame);
struct fc_time *new_fc_time_from_string(const char *string,
const char *separator,
double fps, int verbose);
# 48 "../src/transcode.h" 2
# 1 "../libtcvideo/tcvideo.h" 1
# 15 "../libtcvideo/tcvideo.h"
# 1 "../config.h" 1
# 16 "../libtcvideo/tcvideo.h" 2
# 1 "../aclib/imgconvert.h" 1
# 17 "../aclib/imgconvert.h"
typedef enum {
IMG_UNKNOWN = 0,
IMG_YUV_BASE = 0x1000,
IMG_YUV420P,
IMG_YV12,
IMG_YUV411P,
IMG_YUV422P,
IMG_YUV444P,
IMG_YUY2,
IMG_UYVY,
IMG_YVYU,
IMG_Y8,
IMG_YUV_LAST,
IMG_RGB_BASE = 0x2000,
IMG_RGB24,
IMG_BGR24,
IMG_RGBA32,
IMG_ABGR32,
IMG_ARGB32,
IMG_BGRA32,
IMG_GRAY8,
IMG_RGB_LAST,
} ImageFormat;
# 82 "../aclib/imgconvert.h"
extern int ac_imgconvert_init(int accel);
extern int ac_imgconvert(uint8_t **src,
ImageFormat srcfmt,
uint8_t **dest,
ImageFormat destfmt,
int width,
int height
);
# 21 "../libtcvideo/tcvideo.h" 2
typedef struct tcvhandle_ *TCVHandle;
typedef enum {
TCV_DEINTERLACE_DROP_FIELD_TOP,
TCV_DEINTERLACE_DROP_FIELD_BOTTOM,
TCV_DEINTERLACE_INTERPOLATE,
TCV_DEINTERLACE_LINEAR_BLEND,
} TCVDeinterlaceMode;
typedef enum {
TCV_ZOOM_DEFAULT = 0,
TCV_ZOOM_HERMITE = 1,
TCV_ZOOM_BOX,
TCV_ZOOM_TRIANGLE,
TCV_ZOOM_BELL,
TCV_ZOOM_B_SPLINE,
TCV_ZOOM_LANCZOS3,
TCV_ZOOM_MITCHELL,
TCV_ZOOM_CUBIC_KEYS4,
TCV_ZOOM_SINC8,
TCV_ZOOM_NULL,
} TCVZoomFilter;
TCVHandle tcv_init(void);
void tcv_free(TCVHandle handle);
int tcv_clip(TCVHandle handle,
uint8_t *src, uint8_t *dest, int width, int height, int Bpp,
int clip_left, int clip_right, int clip_top, int clip_bottom,
uint8_t black_pixel);
int tcv_deinterlace(TCVHandle handle,
uint8_t *src, uint8_t *dest, int width, int height,
int Bpp, TCVDeinterlaceMode mode);
int tcv_resize(TCVHandle handle,
uint8_t *src, uint8_t *dest, int width, int height, int Bpp,
int resize_w, int resize_h, int scale_w, int scale_h);
int tcv_zoom(TCVHandle handle,
uint8_t *src, uint8_t *dest, int width, int height, int Bpp,
int new_w, int new_h, TCVZoomFilter filter);
int tcv_reduce(TCVHandle handle,
uint8_t *src, uint8_t *dest, int width, int height, int Bpp,
int reduce_w, int reduce_h);
int tcv_flip_v(TCVHandle handle,
uint8_t *src, uint8_t *dest, int width, int height, int Bpp);
int tcv_flip_h(TCVHandle handle,
uint8_t *src, uint8_t *dest, int width, int height, int Bpp);
int tcv_gamma_correct(TCVHandle handle,
uint8_t *src, uint8_t *dest, int width, int height,
int Bpp, double gamma);
int tcv_antialias(TCVHandle handle,
uint8_t *src, uint8_t *dest, int width, int height,
int Bpp, double weight, double bias);
int tcv_convert(TCVHandle handle, uint8_t *src, uint8_t *dest, int width,
int height, ImageFormat srcfmt, ImageFormat destfmt);
const char *tcv_zoom_filter_to_string(TCVZoomFilter filter);
TCVZoomFilter tcv_zoom_filter_from_string(const char *name);
# 49 "../src/transcode.h" 2
# 1 "../src/tc_defaults.h" 1
# 25 "../src/tc_defaults.h"
# 1 "../config.h" 1
# 26 "../src/tc_defaults.h" 2
# 1 "/usr/lib/x86_64-linux-gnu/gcc/x86_64-linux-gnu/4.5.2/include-fixed/limits.h" 1 3 4
# 29 "../src/tc_defaults.h" 2
# 100 "../src/tc_defaults.h"
typedef enum tcdebugmode_ TCDebugMode;
enum tcdebugmode_ {
TC_QUIET = 0,
TC_INFO = 1,
TC_DEBUG = 2,
TC_STATS = 4,
TC_CLEANUP = 8,
TC_FLIST = 16,
TC_SYNC = 32,
TC_COUNTER = 64,
TC_PRIVATE = 128,
TC_THREADS = 256,
TC_WATCH = 512,
};
# 206 "../src/tc_defaults.h"
typedef enum tcexportattribute_ TCExportAttribute;
enum tcexportattribute_ {
TC_EXPORT_ATTRIBUTE_NONE = ( 0),
TC_EXPORT_ATTRIBUTE_VBITRATE = (1<< 1),
TC_EXPORT_ATTRIBUTE_ABITRATE = (1<< 2),
TC_EXPORT_ATTRIBUTE_FIELDS = (1<< 3),
TC_EXPORT_ATTRIBUTE_VMODULE = (1<< 4),
TC_EXPORT_ATTRIBUTE_AMODULE = (1<< 5),
TC_EXPORT_ATTRIBUTE_FRC = (1<< 6),
TC_EXPORT_ATTRIBUTE_FPS = (1<< 7),
TC_EXPORT_ATTRIBUTE_VCODEC = (1<< 8),
TC_EXPORT_ATTRIBUTE_ACODEC = (1<< 9),
TC_EXPORT_ATTRIBUTE_ARATE = (1<<10),
TC_EXPORT_ATTRIBUTE_ABITS = (1<<11),
TC_EXPORT_ATTRIBUTE_ACHANS = (1<<12),
TC_EXPORT_ATTRIBUTE_ASR = (1<<13),
TC_EXPORT_ATTRIBUTE_PAR = (1<<14),
TC_EXPORT_ATTRIBUTE_GOP = (1<<15),
};
# 56 "../src/transcode.h" 2
# 1 "../src/framebuffer.h" 1
# 32 "../src/framebuffer.h"
# 1 "../libtc/tcframes.h" 1
# 27 "../libtc/tcframes.h"
# 1 "../config.h" 1
# 28 "../libtc/tcframes.h" 2
# 1 "../libtc/libtc.h" 1
# 29 "../libtc/libtc.h"
# 1 "../config.h" 1
# 30 "../libtc/libtc.h" 2
# 1 "/usr/include/sys/param.h" 1 3 4
# 26 "/usr/include/sys/param.h" 3 4
# 1 "/usr/lib/x86_64-linux-gnu/gcc/x86_64-linux-gnu/4.5.2/include-fixed/limits.h" 1 3 4
# 27 "/usr/include/sys/param.h" 2 3 4
# 1 "/usr/include/linux/param.h" 1 3 4
# 1 "/usr/include/x86_64-linux-gnu/asm/param.h" 1 3 4
# 1 "/usr/include/asm-generic/param.h" 1 3 4
# 1 "/usr/include/x86_64-linux-gnu/asm/param.h" 2 3 4
# 5 "/usr/include/linux/param.h" 2 3 4
# 29 "/usr/include/sys/param.h" 2 3 4
# 37 "../libtc/libtc.h" 2
# 1 "/usr/include/malloc.h" 1 3 4
# 25 "/usr/include/malloc.h" 3 4
# 1 "/usr/lib/x86_64-linux-gnu/gcc/x86_64-linux-gnu/4.5.2/include/stddef.h" 1 3 4
# 26 "/usr/include/malloc.h" 2 3 4
# 48 "/usr/include/malloc.h" 3 4
extern void *malloc (size_t __size) __attribute__ ((__nothrow__))
__attribute__ ((__malloc__)) __attribute__ ((__warn_unused_result__));
extern void *calloc (size_t __nmemb, size_t __size) __attribute__ ((__nothrow__))
__attribute__ ((__malloc__)) __attribute__ ((__warn_unused_result__));
extern void *realloc (void *__ptr, size_t __size) __attribute__ ((__nothrow__))
__attribute__ ((__warn_unused_result__));
extern void free (void *__ptr) __attribute__ ((__nothrow__));
extern void cfree (void *__ptr) __attribute__ ((__nothrow__));
extern void *memalign (size_t __alignment, size_t __size) __attribute__ ((__nothrow__))
__attribute__ ((__malloc__)) __attribute__ ((__warn_unused_result__));
extern void *valloc (size_t __size) __attribute__ ((__nothrow__))
__attribute__ ((__malloc__)) __attribute__ ((__warn_unused_result__));
extern void * pvalloc (size_t __size) __attribute__ ((__nothrow__))
__attribute__ ((__malloc__)) __attribute__ ((__warn_unused_result__));
extern void *(*__morecore) (ptrdiff_t __size);
extern void *__default_morecore (ptrdiff_t __size) __attribute__ ((__nothrow__))
__attribute__ ((__malloc__));
struct mallinfo {
int arena;
int ordblks;
int smblks;
int hblks;
int hblkhd;
int usmblks;
int fsmblks;
int uordblks;
int fordblks;
int keepcost;
};
extern struct mallinfo mallinfo (void) __attribute__ ((__nothrow__));
# 135 "/usr/include/malloc.h" 3 4
extern int mallopt (int __param, int __val) __attribute__ ((__nothrow__));
extern int malloc_trim (size_t __pad) __attribute__ ((__nothrow__));
extern size_t malloc_usable_size (void *__ptr) __attribute__
((__nothrow__));
extern void malloc_stats (void) __attribute__ ((__nothrow__));
extern int malloc_info (int __options, FILE *__fp);
extern void *malloc_get_state (void) __attribute__ ((__nothrow__));
extern int malloc_set_state (void *__ptr) __attribute__ ((__nothrow__));
extern void (*__malloc_initialize_hook) (void);
extern void (*__free_hook) (void *__ptr, __const void *)
;
extern void *(*__malloc_hook) (size_t __size, __const void *)
;
extern void *(*__realloc_hook) (void *__ptr, size_t __size, __const void *)
;
extern void *(*__memalign_hook) (size_t __alignment, size_t __size, __const void *)
;
extern void (*__after_morecore_hook) (void);
extern void __malloc_check_init (void) __attribute__ ((__nothrow__));
# 43 "../libtc/libtc.h" 2
# 1 "../libtc/tccodecs.h" 1
# 33 "../libtc/tccodecs.h"
typedef enum {
TC_CODEC_PCM = 0x00000001,
TC_CODEC_LPCM = 0x00010001,
TC_CODEC_AC3 = 0x00002000,
TC_CODEC_DTS = 0x0001000f,
TC_CODEC_MP3 = 0x00000055,
TC_CODEC_MP2 = 0x00000050,
TC_CODEC_AAC = 0x000000FF,
TC_CODEC_VORBIS = 0x0000FFFE,
TC_CODEC_RGB = 0x00000024,
TC_CODEC_YV12 = 0x32315659,
TC_CODEC_YUV420P = 0x30323449,
TC_CODEC_YUV422P = 0x42323459,
TC_CODEC_UYVY = 0x59565955,
TC_CODEC_YUV2 = 0x32565559,
TC_CODEC_YUY2 = 0x32595559,
TC_CODEC_M2V = 0x000001b3,
TC_CODEC_MPEG = 0x01000000,
TC_CODEC_MPEG1 = 0x00100000,
TC_CODEC_MPEG2 = 0x00010000,
TC_CODEC_PS1 = 0x00007001,
TC_CODEC_PS2 = 0x00007002,
TC_CODEC_SUB = 0xA0000011,
TC_CODEC_DV = 0x00001000,
TC_CODEC_VAG = 0x0000FEED,
TC_CODEC_PV3 = 0x50563301,
TC_CODEC_DIVX3 = 0xFFFE0001,
TC_CODEC_MP42,
TC_CODEC_MP43,
TC_CODEC_DIVX4,
TC_CODEC_DIVX5,
TC_CODEC_XVID,
TC_CODEC_H264,
TC_CODEC_MJPEG,
TC_CODEC_MPG1,
TC_CODEC_NUV,
TC_CODEC_LZO1,
TC_CODEC_RV10,
TC_CODEC_SVQ1,
TC_CODEC_SVQ3,
TC_CODEC_VP3,
TC_CODEC_4XM,
TC_CODEC_WMV1,
TC_CODEC_WMV2,
TC_CODEC_HUFFYUV,
TC_CODEC_INDEO3,
TC_CODEC_H263P,
TC_CODEC_H263I,
TC_CODEC_LZO2,
TC_CODEC_FRAPS,
TC_CODEC_FFV1,
TC_CODEC_ASV1,
TC_CODEC_ASV2,
TC_CODEC_THEORA,
TC_CODEC_MPEG1VIDEO,
TC_CODEC_MPEG2VIDEO,
TC_CODEC_MPEG4VIDEO,
TC_CODEC_LJPEG,
TC_CODEC_UNKNOWN = 0x00000000,
TC_CODEC_RAW = 0xFEFEFEFE,
TC_CODEC_ANY = 0xFFFFFFFE,
TC_CODEC_ERROR = 0xFFFFFFFF
} TCCodecID;
# 47 "../libtc/libtc.h" 2
# 1 "../libtc/tcformats.h" 1
# 32 "../libtc/tcformats.h"
typedef enum {
TC_FORMAT_WAV,
TC_FORMAT_CDXA,
TC_FORMAT_YUV4MPEG,
TC_FORMAT_PVN,
TC_FORMAT_AVI,
TC_FORMAT_ASF,
TC_FORMAT_MOV,
TC_FORMAT_OGG,
TC_FORMAT_MPEG,
TC_FORMAT_MPEG_ES,
TC_FORMAT_MPEG_PS,
TC_FORMAT_MPEG_TS,
TC_FORMAT_MPEG_PES,
TC_FORMAT_MPEG_VOB,
TC_FORMAT_MPEG_VDR,
TC_FORMAT_MPEG_MP4,
TC_FORMAT_MXF,
TC_FORMAT_PV3,
TC_FORMAT_VAG,
TC_FORMAT_NUV,
TC_FORMAT_FLV,
TC_FORMAT_RAW,
TC_FORMAT_ALSA,
TC_FORMAT_X11,
TC_FORMAT_XML,
TC_FORMAT_VIDEO4LINUX,
TC_FORMAT_OSS,
TC_FORMAT_BKTR,
TC_FORMAT_VNC,
TC_FORMAT_DVD,
TC_FORMAT_DVD_PAL,
TC_FORMAT_DVD_NTSC,
TC_FORMAT_UNKNOWN = 0x00000000,
TC_FORMAT_NULL = 0xFFFFFF00,
TC_FORMAT_ANY = 0xFFFFFFFE,
TC_FORMAT_ERROR = 0xFFFFFFFF
} TCFormatID;
# 48 "../libtc/libtc.h" 2
enum {
TC_FALSE,
TC_TRUE
};
# 87 "../libtc/libtc.h"
typedef enum {
TC_ERROR = -1,
TC_OK = 0,
TC_INTERRUPT = 1,
TC_UNKNOWN,
} TCReturnCode;
typedef enum {
TC_LOG_ERR = 0,
TC_LOG_WARN,
TC_LOG_INFO,
TC_LOG_MSG,
TC_LOG_EXTRA,
} TCLogLevel;
# 130 "../libtc/libtc.h"
void libtc_init(int *argc, char ***argv);
# 159 "../libtc/libtc.h"
int tc_log(TCLogLevel level, const char *tag, const char *fmt, ...)
__attribute__((format(printf,3,4)))
;
# 235 "../libtc/libtc.h"
int tc_mangle_cmdline(int *argc, char ***argv,
const char *opt, const char **optval);
# 252 "../libtc/libtc.h"
int tc_test_program(const char *name);
size_t strlcpy(char *dst, const char *src, size_t size);
size_t strlcat(char *dst, const char *src, size_t size);
# 282 "../libtc/libtc.h"
char **tc_strsplit(const char *str, char sep, size_t *pieces_num);
# 293 "../libtc/libtc.h"
void tc_strfreev(char **pieces);
# 307 "../libtc/libtc.h"
void tc_strstrip(char *s);
# 328 "../libtc/libtc.h"
int tc_test_string(const char *file, int line, int limit,
long ret, int errnum);
# 341 "../libtc/libtc.h"
int _tc_vsnprintf(const char *file, int line, char *buf, size_t limit,
const char *format, va_list args);
int _tc_snprintf(const char *file, int line, char *buf, size_t limit,
const char *format, ...);
# 384 "../libtc/libtc.h"
void *_tc_malloc(const char *file, int line, size_t size);
# 405 "../libtc/libtc.h"
void *_tc_zalloc(const char *file, int line, size_t size);
# 425 "../libtc/libtc.h"
void *_tc_realloc(const char *file, int line, void *p, size_t size);
# 453 "../libtc/libtc.h"
void *_tc_bufalloc(const char *file, int line, size_t size);
# 469 "../libtc/libtc.h"
void tc_buffree(void *ptr);
# 508 "../libtc/libtc.h"
char *_tc_strndup(const char *file, int line, const char *s, size_t n);
# 528 "../libtc/libtc.h"
int tc_file_check(const char *file);
# 550 "../libtc/libtc.h"
ssize_t tc_pread(int fd, uint8_t *buf, size_t len);
# 572 "../libtc/libtc.h"
ssize_t tc_pwrite(int fd, const uint8_t *buf, size_t len);
# 588 "../libtc/libtc.h"
int tc_preadwrite(int in, int out);
enum {
TC_PROBE_PATH_INVALID = 0,
TC_PROBE_PATH_ABSPATH,
TC_PROBE_PATH_RELDIR,
TC_PROBE_PATH_FILE,
TC_PROBE_PATH_BKTR,
TC_PROBE_PATH_SUNAU,
TC_PROBE_PATH_V4L_VIDEO,
TC_PROBE_PATH_V4L_AUDIO,
TC_PROBE_PATH_OSS,
};
# 616 "../libtc/libtc.h"
int tc_probe_path(const char *name);
# 631 "../libtc/libtc.h"
int tc_translate_codec_id(TCCodecID codec);
# 645 "../libtc/libtc.h"
const char* tc_codec_to_comment(TCCodecID codec);
# 659 "../libtc/libtc.h"
const char* tc_codec_to_string(TCCodecID codec);
# 671 "../libtc/libtc.h"
TCCodecID tc_codec_from_string(const char *codec);
# 684 "../libtc/libtc.h"
const char* tc_codec_fourcc(TCCodecID codec);
# 699 "../libtc/libtc.h"
int tc_codec_description(TCCodecID codec, char *buf, size_t bufsize);
# 711 "../libtc/libtc.h"
int tc_codec_is_multipass(TCCodecID codec);
# 749 "../libtc/libtc.h"
int tc_compute_fast_resize_values(void *_vob, int strict);
# 773 "../libtc/libtc.h"
int tc_find_best_aspect_ratio(const void *_vob,
int *sar_num, int *sar_den,
const char *tag);
# 832 "../libtc/libtc.h"
int tc_read_matrix(const char *filename, uint8_t *m8, uint16_t *m16);
# 856 "../libtc/libtc.h"
void tc_print_matrix(uint8_t *m8, uint16_t *m16);
# 35 "../libtc/tcframes.h" 2
# 1 "../libtc/tctimer.h" 1
# 25 "../libtc/tctimer.h"
# 1 "../config.h" 1
# 26 "../libtc/tctimer.h" 2
typedef union tctimestamp_ TCTimestamp;
union tctimestamp_ {
uint64_t u;
double d;
};
# 70 "../libtc/tctimer.h"
uint64_t tc_gettime(void);
typedef struct tctimer_ TCTimer;
struct tctimer_ {
uint64_t last_time;
int (*fini)(TCTimer *timer);
uint64_t (*elapsed)(TCTimer *timer);
int (*sleep)(TCTimer *timer, uint64_t amount);
};
int tc_timer_init_soft(TCTimer *timer, uint16_t frequency);
# 98 "../libtc/tctimer.h"
__attribute__((unused))
static int tc_timer_fini(TCTimer *timer)
{
return timer->fini(timer);
}
# 120 "../libtc/tctimer.h"
__attribute__((unused))
static uint64_t tc_timer_elapsed(TCTimer *timer)
{
return timer->elapsed(timer);
}
# 147 "../libtc/tctimer.h"
__attribute__((unused))
static int tc_timer_sleep(TCTimer *timer, uint64_t amount)
{
return timer->sleep(timer, amount);
}
# 36 "../libtc/tcframes.h" 2
# 1 "../libtc/tccodecs.h" 1
# 37 "../libtc/tcframes.h" 2
typedef enum tcframeattributes_ TCFrameAttributes;
enum tcframeattributes_ {
TC_FRAME_IS_KEYFRAME = 1,
TC_FRAME_IS_INTERLACED = 2,
TC_FRAME_IS_BROKEN = 4,
TC_FRAME_IS_SKIPPED = 8,
TC_FRAME_IS_CLONED = 16,
TC_FRAME_WAS_CLONED = 32,
TC_FRAME_IS_OUT_OF_RANGE = 64,
TC_FRAME_IS_DELAYED = 128,
TC_FRAME_IS_END_OF_STREAM = 256,
};
typedef enum tcframestatus_ TCFrameStatus;
enum tcframestatus_ {
TC_FRAME_NULL = -1,
TC_FRAME_EMPTY = 0,
TC_FRAME_WAIT,
TC_FRAME_LOCKED,
TC_FRAME_READY,
};
# 170 "../libtc/tcframes.h"
typedef struct tcframe_ TCFrame;
struct tcframe_ {
int id; int bufid; int tag; int filter_id; TCFrameStatus status; TCFrameAttributes attributes; TCTimestamp timestamp;
int codec;
int size;
int len;
int param1;
int param2;
int param3;
struct tcframe_ *next;
struct tcframe_ *prev;
};
typedef struct tcframe_ frame_list_t;
typedef struct tcframevideo_ TCFrameVideo;
struct tcframevideo_ {
int id; int bufid; int tag; int filter_id; TCFrameStatus status; TCFrameAttributes attributes; TCTimestamp timestamp;
int v_codec;
int video_size;
int video_len;
int v_width;
int v_height;
int v_bpp;
struct tcframevideo_ *next;
struct tcframevideo_ *prev;
uint8_t *video_buf;
uint8_t *video_buf2;
int free;
uint8_t *internal_video_buf_0;
uint8_t *internal_video_buf_1;
int deinter_flag;
uint8_t *video_buf_RGB[2];
uint8_t *video_buf_Y[2];
uint8_t *video_buf_U[2];
uint8_t *video_buf_V[2];
};
typedef struct tcframevideo_ vframe_list_t;
typedef struct tcframeaudio_ TCFrameAudio;
struct tcframeaudio_ {
int id; int bufid; int tag; int filter_id; TCFrameStatus status; TCFrameAttributes attributes; TCTimestamp timestamp;
int a_codec;
int audio_size;
int audio_len;
int a_rate;
int a_bits;
int a_chan;
struct tcframeaudio_ *next;
struct tcframeaudio_ *prev;
uint8_t *audio_buf;
uint8_t *audio_buf2;
int free;
uint8_t *internal_audio_buf;
uint8_t *internal_audio_buf_1;
};
typedef struct tcframeaudio_ aframe_list_t;
typedef union tcframeptr_ TCFramePtr;
union tcframeptr_ {
TCFrame *generic;
TCFrameVideo *video;
TCFrameAudio *audio;
};
# 294 "../libtc/tcframes.h"
int tc_video_planes_size(size_t psizes[3],
int width, int height, int format);
# 310 "../libtc/tcframes.h"
__attribute__((unused))
static size_t tc_video_frame_size(int width, int height, int format)
{
size_t psizes[3] = { 0, 0, 0 };
tc_video_planes_size(psizes, width, height, format);
return (psizes[0] + psizes[1] + psizes[2]);
}
# 347 "../libtc/tcframes.h"
size_t tc_audio_frame_size(double samples, int channels,
int bits, int *adjust);
# 366 "../libtc/tcframes.h"
TCFrameVideo *tc_alloc_video_frame(size_t size, int partial);
TCFrameAudio *tc_alloc_audio_frame(size_t size);
# 393 "../libtc/tcframes.h"
void tc_init_video_frame(TCFrameVideo *vptr,
int width, int height, int format);
# 419 "../libtc/tcframes.h"
void tc_init_audio_frame(TCFrameAudio *aptr,
double samples, int channels, int bits);
# 440 "../libtc/tcframes.h"
TCFrameVideo *tc_new_video_frame(int width, int height, int format,
int partial);
# 460 "../libtc/tcframes.h"
TCFrameAudio *tc_new_audio_frame(double samples, int channels, int bits);
# 474 "../libtc/tcframes.h"
void tc_del_video_frame(TCFrameVideo *vptr);
void tc_del_audio_frame(TCFrameAudio *aptr);
# 487 "../libtc/tcframes.h"
void tc_blank_video_frame(TCFrameVideo *ptr);
void tc_blank_audio_frame(TCFrameAudio *ptr);
# 33 "../src/framebuffer.h" 2
# 1 "../src/tc_defaults.h" 1
# 25 "../src/tc_defaults.h"
# 1 "../config.h" 1
# 26 "../src/tc_defaults.h" 2
# 1 "/usr/lib/x86_64-linux-gnu/gcc/x86_64-linux-gnu/4.5.2/include-fixed/limits.h" 1 3 4
# 29 "../src/tc_defaults.h" 2
# 34 "../src/framebuffer.h" 2
# 99 "../src/framebuffer.h"
typedef struct tcframespecs_ TCFrameSpecs;
struct tcframespecs_ {
int frc;
int width;
int height;
int format;
int rate;
int channels;
int bits;
double samples;
};
# 130 "../src/framebuffer.h"
const TCFrameSpecs *tc_framebuffer_get_specs(void);
# 146 "../src/framebuffer.h"
void tc_framebuffer_set_specs(const TCFrameSpecs *specs);
# 168 "../src/framebuffer.h"
void tc_framebuffer_interrupt(void);
void tc_framebuffer_interrupt_import(void);
# 186 "../src/framebuffer.h"
int vframe_alloc(int num);
int aframe_alloc(int num);
# 207 "../src/framebuffer.h"
vframe_list_t *vframe_alloc_single(void);
aframe_list_t *aframe_alloc_single(void);
# 222 "../src/framebuffer.h"
void vframe_free(void);
void aframe_free(void);
# 235 "../src/framebuffer.h"
void vframe_flush(void);
void aframe_flush(void);
# 248 "../src/framebuffer.h"
void tc_framebuffer_flush(void);
# 279 "../src/framebuffer.h"
vframe_list_t *vframe_register(int id);
aframe_list_t *aframe_register(int id);
# 310 "../src/framebuffer.h"
vframe_list_t *vframe_reserve(void);
aframe_list_t *aframe_reserve(void);
# 341 "../src/framebuffer.h"
vframe_list_t *vframe_retrieve(void);
aframe_list_t *aframe_retrieve(void);
# 361 "../src/framebuffer.h"
void vframe_remove(vframe_list_t *ptr);
void aframe_remove(aframe_list_t *ptr);
# 384 "../src/framebuffer.h"
void vframe_push_next(vframe_list_t *ptr, TCFrameStatus status);
void aframe_push_next(aframe_list_t *ptr, TCFrameStatus status);
# 405 "../src/framebuffer.h"
vframe_list_t *vframe_dup(vframe_list_t *f);
aframe_list_t *aframe_dup(aframe_list_t *f);
# 429 "../src/framebuffer.h"
void vframe_copy(vframe_list_t *dst, const vframe_list_t *src, int copy_data);
void aframe_copy(aframe_list_t *dst, const aframe_list_t *src, int copy_data);
# 448 "../src/framebuffer.h"
void vframe_dump_status(void);
void aframe_dump_status(void);
# 461 "../src/framebuffer.h"
int vframe_have_more(void);
int aframe_have_more(void);
# 479 "../src/framebuffer.h"
void vframe_get_counters(int *im, int *fl, int *ex);
void aframe_get_counters(int *im, int *fl, int *ex);
# 497 "../src/framebuffer.h"
void tc_framebuffer_get_counters(int *im, int *fl, int *ex);
# 57 "../src/transcode.h" 2
# 68 "../src/transcode.h"
typedef enum {
PROF_NONE = 0,
VCD,
VCD_PAL,
VCD_NTSC,
SVCD,
SVCD_PAL,
SVCD_NTSC,
XVCD,
XVCD_PAL,
XVCD_NTSC,
DVD,
DVD_PAL,
DVD_NTSC
} mpeg_profile_t;
# 91 "../src/transcode.h"
typedef struct _transfer_t {
int flag;
FILE *fd;
int size;
uint8_t *buffer;
uint8_t *buffer2;
int attributes;
} transfer_t;
typedef struct _vob_t {
const char *vmod_probed;
const char *amod_probed;
const char *vmod_probed_xml;
const char *amod_probed_xml;
int verbose;
TCGlob *video_in_files;
TCGlob *audio_in_files;
const char *video_in_file;
const char *audio_in_file;
const char *nav_seek_file;
int has_audio;
int has_audio_track;
int has_video;
int lang_code;
int a_track;
int v_track;
int s_track;
int sync;
int sync_ms;
int sync_samples;
int dvd_title;
int dvd_chapter1;
int dvd_chapter2;
int dvd_max_chapters;
int dvd_angle;
int ps_unit;
int ps_seq1;
int ps_seq2;
int ts_pid1;
int ts_pid2;
int vob_offset;
int vob_chunk;
int vob_chunk_num1;
int vob_chunk_num2;
int vob_chunk_max;
int vob_percentage;
int vob_psu_num1;
int vob_psu_num2;
const char *vob_info_file;
double pts_start;
double psu_offset;
int demuxer;
long v_format_flag;
long v_codec_flag;
long a_format_flag;
long a_codec_flag;
int quality;
int a_stream_bitrate;
int a_chan;
int a_bits;
int a_rate;
int a_padrate;
int im_a_size;
int ex_a_size;
int im_a_codec;
int a_leap_frame;
int a_leap_bytes;
int a_vbr;
int a52_mode;
int dm_bits;
int dm_chan;
int v_stream_bitrate;
double fps;
int im_frc;
double ex_fps;
int ex_frc;
int hard_fps_flag;
int pulldown;
int im_v_height;
int im_v_width;
int im_v_size;
int im_asr;
int im_par;
int im_par_width;
int im_par_height;
int ex_asr;
int ex_par;
int ex_par_width;
int ex_par_height;
int attributes;
int im_v_codec;
int encode_fields;
int dv_yuy2_mode;
double volume;
double ac3_gain[3];
int clip_count;
int ex_v_width;
int ex_v_height;
int ex_v_size;
int reduce_h;
int reduce_w;
int resize1_mult;
int vert_resize1;
int hori_resize1;
int resize2_mult;
int vert_resize2;
int hori_resize2;
int zoom_width;
int zoom_height;
int zoom_interlaced;
TCVZoomFilter zoom_filter;
int antialias;
int deinterlace;
int decolor;
double aa_weight;
double aa_bias;
double gamma;
int ex_clip_top;
int ex_clip_bottom;
int ex_clip_left;
int ex_clip_right;
int im_clip_top;
int im_clip_bottom;
int im_clip_left;
int im_clip_right;
int post_ex_clip_top;
int post_ex_clip_bottom;
int post_ex_clip_left;
int post_ex_clip_right;
int pre_im_clip_top;
int pre_im_clip_bottom;
int pre_im_clip_left;
int pre_im_clip_right;
const char *video_out_file;
const char *audio_out_file;
avi_t *avifile_in;
avi_t *avifile_out;
int avi_comment_fd;
int audio_file_flag;
int divxbitrate;
int divxkeyframes;
int divxquality;
int divxcrispness;
int divxmultipass;
int video_max_bitrate;
const char *divxlogfile;
int min_quantizer;
int max_quantizer;
int rc_period;
int rc_reaction_period;
int rc_reaction_ratio;
int divx5_vbv_prof;
int divx5_vbv_bitrate;
int divx5_vbv_size;
int divx5_vbv_occupancy;
int mp3bitrate;
int mp3frequency;
float mp3quality;
int mp3mode;
int bitreservoir;
const char *lame_preset;
const char *audiologfile;
int ex_a_codec;
int ex_v_codec;
const char *ex_v_fcc;
const char *ex_a_fcc;
const char *ex_profile_name;
int pass_flag;
int encoder_flush;
const char *mod_path;
struct fc_time *ttime;
unsigned int frame_interval;
char *im_v_string;
char *im_a_string;
char *ex_v_string;
char *ex_a_string;
char *ex_m_string;
float m2v_requant;
mpeg_profile_t mpeg_profile;
unsigned int export_attributes;
} vob_t;
typedef struct subtitle_header_s {
unsigned int header_length;
unsigned int header_version;
unsigned int payload_length;
unsigned int lpts;
double rpts;
unsigned int discont_ctr;
} subtitle_header_t;
int tc_import(int opt, void *para1, void *para2);
int tc_export(int opt, void *para1, void *para2);
vob_t *tc_get_vob(void);
int tc_next_video_in_file(vob_t *vob);
int tc_next_audio_in_file(vob_t *vob);
int tc_has_more_video_in_file(vob_t *vob);
int tc_has_more_audio_in_file(vob_t *vob);
void tc_outstream_rotate(void);
void tc_outstream_rotate_request(void);
void version(void);
extern int verbose;
extern int pcmswap;
extern int rescale;
extern int im_clip;
extern int ex_clip;
extern int pre_im_clip;
extern int post_ex_clip;
extern int flip;
extern int mirror;
extern int rgbswap;
extern int resize1;
extern int resize2;
extern int decolor;
extern int zoom;
extern int dgamma;
extern int keepasr;
extern int fast_resize;
extern int tc_buffer_delay_dec;
extern int tc_buffer_delay_enc;
extern int tc_cluster_mode;
extern int tc_decoder_delay;
extern int tc_progress_meter;
extern int tc_progress_rate;
extern int tc_accel;
extern unsigned int tc_avi_limit;
extern pid_t tc_probe_pid;
extern int tc_niceness;
extern int max_frame_buffer;
extern int max_frame_threads;
enum {
TC_EXPORT_NAME = 10,
TC_EXPORT_OPEN,
TC_EXPORT_INIT,
TC_EXPORT_ENCODE,
TC_EXPORT_CLOSE,
TC_EXPORT_STOP,
};
enum {
TC_EXPORT_ERROR = -1,
TC_EXPORT_OK = 0,
TC_EXPORT_UNKNOWN = 1,
};
enum {
TC_IMPORT_NAME = 20,
TC_IMPORT_OPEN,
TC_IMPORT_DECODE,
TC_IMPORT_CLOSE,
};
enum {
TC_IMPORT_ERROR = -1,
TC_IMPORT_OK = 0,
TC_IMPORT_UNKNOWN = 1,
};
enum {
TC_CAP_NONE = 0,
TC_CAP_PCM = 1,
TC_CAP_RGB = 2,
TC_CAP_AC3 = 4,
TC_CAP_YUV = 8,
TC_CAP_AUD = 16,
TC_CAP_VID = 32,
TC_CAP_MP3 = 64,
TC_CAP_YUY2 = 128,
TC_CAP_DV = 256,
TC_CAP_YUV422 = 512,
};
enum {
TC_MODE_DEFAULT = 0,
TC_MODE_AVI_SPLIT = 1,
TC_MODE_DVD_CHAPTER = 2,
TC_MODE_PSU = 4,
TC_MODE_DIRECTORY = 16,
TC_MODE_DEBUG = 32,
};
enum {
TC_ENCODE_FIELDS_PROGRESSIVE = 0,
TC_ENCODE_FIELDS_TOP_FIRST,
TC_ENCODE_FIELDS_BOTTOM_FIRST,
TC_ENCODE_FIELDS_UNKNOWN,
};
# 29 "filter_smartyuv.c" 2
# 1 "../src/filter.h" 1
# 25 "../src/filter.h"
enum tc_filter_list_enum {
TC_FILTER_LIST_LOADED,
TC_FILTER_LIST_ENABLED,
TC_FILTER_LIST_DISABLED,
};
extern int tc_filter_init(void);
extern void tc_filter_fini(void);
extern void tc_filter_process(frame_list_t *frame);
extern int tc_filter_add(const char *name, const char *options);
extern int tc_filter_find(const char *name);
extern void tc_filter_remove(int id);
extern int tc_filter_enable(int id);
extern int tc_filter_disable(int id);
extern int tc_filter_configure(int id, const char *options);
extern const char *tc_filter_get_conf(int id, const char *option);
extern const char *tc_filter_list(enum tc_filter_list_enum what);
typedef int (*TCFilterOldEntryFunc)(void *ptr, char *options);
extern int tc_filter(frame_list_t *ptr, char *options);
# 30 "filter_smartyuv.c" 2
# 1 "../libtc/optstr.h" 1
# 75 "../libtc/optstr.h"
const char * optstr_lookup(const char *haystack, const char *needle);
# 100 "../libtc/optstr.h"
int optstr_get(const char *options, const char *name, const char *fmt, ...)
__attribute__((format(scanf,3,4)))
;
# 143 "../libtc/optstr.h"
int optstr_filter_desc(char *buf,
const char *filter_name,
const char *filter_comment,
const char *filter_version,
const char *filter_author,
const char *capabilities,
const char *frames_needed);
# 168 "../libtc/optstr.h"
int optstr_frames_needed(const char *filter_desc, int *needed_frames);
# 206 "../libtc/optstr.h"
int optstr_param(char *buf,
const char *name,
const char *comment,
const char *fmt,
const char *val,
...);
# 32 "filter_smartyuv.c" 2
# 42 "filter_smartyuv.c"
# 1 "mmx.h" 1
# 32 "mmx.h"
void deinterlace_bob_yuv_mmx( uint8_t *pdst, uint8_t *psrc,
int width, int height );
# 47 "mmx.h"
typedef union {
long long q;
unsigned long long uq;
int d[2];
unsigned int ud[2];
short w[4];
unsigned short uw[4];
char b[8];
unsigned char ub[8];
float s[2];
} __attribute__ ((__aligned__ ((64 <8) ? 64 : 8))) mmx_t;
# 43 "filter_smartyuv.c" 2
# 52 "filter_smartyuv.c"
static vob_t *vob = ((void *)0);
enum {
FRAME_ONLY = 0,
FIELD_ONLY = 1,
FRAME_AND_FIELD = 2,
DENOISE_DIAMETER = 5,
DENOISE_THRESH = 7,
BLACK_BYTE_Y = 16,
BLACK_BYTE_UV = 128,
MIN_Y = 16,
MAX_Y = 240,
LUMA_THRESHOLD = 14,
CHROMA_THRESHOLD = 7,
SCENE_THRESHOLD = 31,
PAD = 32
};
typedef uint8_t (*yuv_clamp_fn)(int x);
static uint8_t clamp_Y(int x) {
return (((((((((MIN_Y)) > ((x))) ?((MIN_Y)) :((x)))) < ((MAX_Y))) ?(((((MIN_Y)) > ((x))) ?((MIN_Y)) :((x)))) :((MAX_Y)))) & 0xFF);
}
static uint8_t clamp_UV(int x) {
return (x & 0xFF);
}
# 101 "filter_smartyuv.c"
static void smartyuv_core (char *_src, char *_dst, char *_prev, int _width, int _height,
int _srcpitch, int _dstpitch,
unsigned char *_moving, unsigned char *_fmoving,
yuv_clamp_fn clamp_f, int _threshold );
typedef struct MyFilterData {
char *buf;
char *prevFrame;
unsigned char *movingY;
unsigned char *movingU;
unsigned char *movingV;
unsigned char *fmovingY;
unsigned char *fmovingU;
unsigned char *fmovingV;
int motionOnly;
int threshold;
int chromathres;
int codec;
int diffmode;
int scenethreshold;
int cubic;
int highq;
int Blend;
int doChroma;
int verbose;
} MyFilterData;
static MyFilterData *mfd = ((void *)0);
static void help_optstr(void)
{
tc_log(TC_LOG_INFO, "filter_smartyuv.so", "(%s) help\n" "* Overview\n" " This filter is basically a rewrite of the\n" " smartdeinter filter by Donald Graft (without advanced processing\n" " options) for YUV mode only. Its faster than using the smartdeinter\n" " in YUV mode and is also tuned with its threshold settings for YUV\n" " mode. The filter detects motion and static areas in an image and\n" " only deinterlaces (either by blending or by cubic interpolation)\n" " the moving areas. The result is an image with high detail in\n" " static areas, no information is lost there.\n" "\n" " The threshold settings should be sufficent for most users. As a\n" " rule of thumb, I recommend setting the chroma threshold to about\n" " the half of the luma threshold. If you want more deinterlacing,\n" " lower the thresholds. The scene threshold can be easily found by\n" " turning on verbose mode and the preview filter. In verbose mode,\n" " the filter will print out, when it detects a scene change. If\n" " scenechanges go by unnoticed, lower the scene threshold. You can\n" " completly disable chroma processing with the doChroma=0 option.\n" " Here is a sample commandline\n" " -J smartyuv=highq=1:diffmode=2:cubic=1:Blend=1:chromathres=4:threshold=8:doChroma=1\n" "* Options\n" " 'motionOnly' Show motion areas only (0=off, 1=on) [0]\n" " 'diffmode' Motion Detection (0=frame, 1=field, 2=both) [0]\n" " 'threshold' Motion Threshold (luma) (0-255) [14]\n" " 'chromathres' Motion Threshold (chroma) (0-255) [7]\n" " 'scenethres' Threshold for detecting scenechanges (0-255) [31]\n" " 'cubic' Do cubic interpolation (0=off 1=on) [1]\n" " 'highq' High-Quality processing (motion Map denoising) (0=off 1=on) [1]\n" " 'Blend' Blend the frames for deinterlacing (0=off 1=on) [1]\n" " 'doChroma' Enable chroma processing (slower but more accurate) (0=off 1=on) [1]\n" " 'verbose' Verbose mode (0=off 1=on) [1]\n" , "Motion-adaptive deinterlacing")
# 164 "filter_smartyuv.c"
;
}
static void Erode_Dilate (uint8_t *_moving, uint8_t *_fmoving, int width, int height)
{
int sum, x, y;
uint8_t *m, *fmoving, *moving, *p;
int w4 = width+PAD;
int can_use_mmx = !(width%4);
fmoving = _fmoving;
moving = _moving;
p = moving - 2*w4 -2;
for (y = 0; y < height; y++)
{
# 192 "filter_smartyuv.c"
if (can_use_mmx) {
for (x = 0; x < width; x+=4)
{
uint8_t res[8];
ac_memcpy(fmoving, moving, 4);
m = p;
__asm__ __volatile__ ("movq" " %0, %%" "mm0" : : "m" (*m)); m += w4;
__asm__ __volatile__ ("paddusb" " %0, %%" "mm0" : : "m" (*m)); m += w4;
__asm__ __volatile__ ("paddusb" " %0, %%" "mm0" : : "m" (*m)); m += w4;
__asm__ __volatile__ ("paddusb" " %0, %%" "mm0" : : "m" (*m)); m += w4;
__asm__ __volatile__ ("paddusb" " %0, %%" "mm0" : : "m" (*m));
__asm__ __volatile__ ("movq" " %%" "mm0" ", %0" : "=m" (*res) : );
if (*moving++) {
res[0]+=res[1];
res[0]+=res[2];
res[0]+=res[3];
res[0]+=res[4];
*fmoving = (res[0] > 7);
}
fmoving++;
if (*moving++) {
res[1]+=res[2];
res[1]+=res[3];
res[1]+=res[4];
res[1]+=res[5];
*fmoving = (res[1] > 7);
}
fmoving++;
if (*moving++) {
res[2]+=res[3];
res[2]+=res[4];
res[2]+=res[5];
res[2]+=res[6];
*fmoving = (res[2] > 7);
}
fmoving++;
if (*moving++) {
res[3]+=res[4];
res[3]+=res[5];
res[3]+=res[6];
res[3]+=res[7];
*fmoving = (res[3] > 7);
}
fmoving++;
p += 4;
}
fmoving += PAD;
moving += PAD;
p += PAD;
} else
{
for (x = 0; x < width; x++)
{
if (!(fmoving[x] = moving[x]) )
continue;
m = moving + x - 2*w4 -2;
sum = 1;
sum <<= m[0]; sum <<= m[1]; sum <<= m[2]; sum <<= m[3]; sum <<= m[4];
m += w4;
sum <<= m[0]; sum <<= m[1]; sum <<= m[2]; sum <<= m[3]; sum <<= m[4];
m += w4;
sum <<= m[0]; sum <<= m[1]; sum <<= m[2]; sum <<= m[3]; sum <<= m[4];
m += w4;
sum <<= m[0]; sum <<= m[1]; sum <<= m[2]; sum <<= m[3]; sum <<= m[4];
m += w4;
sum <<= m[0]; sum <<= m[1]; sum <<= m[2]; sum <<= m[3]; sum <<= m[4];
fmoving[x] = (sum > 128);
}
fmoving += w4;
moving += w4;
}
}
__asm__ __volatile__ ("emms");
fmoving = _fmoving;
moving = _moving;
for (y = 0; y < height; y++)
{
for (x = 0; x < width; x++)
{
if ((moving[x] = fmoving[x])) {
m = moving + x - 2*w4 -2;
memset(m, 1, 5);
m += w4;
memset(m, 1, 5);
m += w4;
memset(m, 1, 5);
m += w4;
memset(m, 1, 5);
m += w4;
memset(m, 1, 5);
}
}
moving += w4;
fmoving += w4;
}
}
static void inline Blendline_c (uint8_t *dst, uint8_t *src, uint8_t *srcminus, uint8_t *srcplus,
uint8_t *moving, uint8_t *movingminus, uint8_t *movingplus,
const int w, const int scenechange)
{
int x = 0;
do {
if (movingminus[x] | moving[x] | movingplus[x] | scenechange) {
dst[x] = ((src[x]>>1) + (srcminus[x]>>2) + (srcplus[x]>>2)) & 0xff;
} else {
dst[x] = src[x];
}
} while(++x < w);
}
static void smartyuv_core (char *_src, char *_dst, char *_prev, int _width, int _height,
int _srcpitch, int _dstpitch,
unsigned char *_moving, unsigned char *_fmoving,
yuv_clamp_fn clamp_f, int _threshold )
{
const int srcpitch = _srcpitch;
const int dstpitch = _dstpitch;
const int w = _width;
const int wminus1 = w - 1;
const int h = _height;
const int hminus1 = h - 1;
const int hminus3 = h - 3;
char *src, *dst, *srcminus=((void *)0), *srcplus, *srcminusminus=((void *)0), *srcplusplus=((void *)0);
unsigned char *moving, *movingminus, *movingplus;
unsigned char *fmoving;
char *prev;
int scenechange=0;
long count=0;
int x, y;
int luma, luman, lumap, T;
int p1, p2;
int rp, rn, rpp, rnn, R;
unsigned char fiMotion;
int cubic = mfd->cubic;
static int counter=0;
const int can_use_mmx = !(w%8);
char * dst_buf;
char * src_buf;
src_buf = _src;
dst_buf = _dst;
if (h < 2) return;
src = src_buf + srcpitch;
srcminus = src - srcpitch;
srcplus = src + srcpitch;
moving = _moving + w+PAD;
prev = _prev + w;
if (mfd->diffmode == FRAME_ONLY || mfd->diffmode == FRAME_AND_FIELD)
{
if (mfd->diffmode == FRAME_ONLY) {
if (can_use_mmx) {
uint64_t mask1 = 0x00FF00FF00FF00FFULL;
uint64_t thres = (_threshold<<16) | (_threshold);
thres = (thres << 32) | (thres);
__asm__ __volatile__ ("movq" " %0, %%" "mm6" : : "m" (mask1));
__asm__ __volatile__ ("movq" " %0, %%" "mm5" : : "m" (thres));
count = 0;
for (y = 1; y < hminus1; y++)
{
for (x=0; x<w; x+=4) {
__asm__ __volatile__ ("movd" " %0, %%" "mm0" : : "m" (*src));
__asm__ __volatile__ ("punpcklbw" " %" "mm0" ", %" "mm0");
__asm__ __volatile__ ("pand" " %" "mm6" ", %" "mm0");
__asm__ __volatile__ ("movd" " %0, %%" "mm1" : : "m" (*prev));
__asm__ __volatile__ ("punpcklbw" " %" "mm1" ", %" "mm1");
__asm__ __volatile__ ("pand" " %" "mm6" ", %" "mm1");
__asm__ __volatile__ ("psubsw" " %" "mm1" ", %" "mm0");
__asm__ __volatile__ ("movq" " %" "mm0" ", %" "mm3");
__asm__ __volatile__ ("psraw" " %0, %%" "mm3" : : "i" (15) );
__asm__ __volatile__ ("pxor" " %" "mm3" ", %" "mm0");
__asm__ __volatile__ ("psubw" " %" "mm3" ", %" "mm0");
__asm__ __volatile__ ("pcmpgtw" " %" "mm5" ", %" "mm0");
__asm__ __volatile__ ("psrlw" " %0, %%" "mm0" : : "i" (15) );
__asm__ __volatile__ ("packuswb" " %" "mm0" ", %" "mm0");
__asm__ __volatile__ ("movd" " %%" "mm0" ", %0" : "=m" (*moving) : );
ac_memcpy(prev, src, 4);
src+=4;
prev+=4;
count += *moving++;
count += *moving++;
count += *moving++;
count += *moving++;
}
moving += PAD;
}
__asm__ __volatile__ ("emms");
} else
# 490 "filter_smartyuv.c"
{
count = 0;
for (y = 1; y < hminus1; y++)
{
for (x=0; x<w; x++) {
int luma = *src++&0xff;
int p0 = luma - (*prev&0xff);
*prev++ = luma;
*moving = (((((p0)^((p0)>>7))-((p0)>>7)) > _threshold));
count += *moving++;
}
moving += PAD;
}
}
} else if (mfd->diffmode == FRAME_AND_FIELD) {
if (can_use_mmx) {
uint64_t mask1 = 0x00FF00FF00FF00FFULL;
uint64_t thres = (_threshold<<16) | (_threshold);
thres = (thres << 32) | (thres);
__asm__ __volatile__ ("movq" " %0, %%" "mm6" : : "m" (mask1));
__asm__ __volatile__ ("movq" " %0, %%" "mm5" : : "m" (thres));
count = 0;
for (y = 1; y < hminus1; y++)
{
if (y & 1) {
for (x=0; x<w; x+=4) {
__asm__ __volatile__ ("movd" " %0, %%" "mm0" : : "m" (*src));
__asm__ __volatile__ ("movd" " %0, %%" "mm1" : : "m" (*srcminus));
__asm__ __volatile__ ("movd" " %0, %%" "mm2" : : "m" (*prev));
__asm__ __volatile__ ("punpcklbw" " %" "mm0" ", %" "mm0");
__asm__ __volatile__ ("punpcklbw" " %" "mm1" ", %" "mm1");
__asm__ __volatile__ ("punpcklbw" " %" "mm2" ", %" "mm2");
__asm__ __volatile__ ("pand" " %" "mm6" ", %" "mm0");
__asm__ __volatile__ ("pand" " %" "mm6" ", %" "mm1");
__asm__ __volatile__ ("pand" " %" "mm6" ", %" "mm2");
__asm__ __volatile__ ("movq" " %" "mm0" ", %" "mm7");
__asm__ __volatile__ ("psubsw" " %" "mm1" ", %" "mm0");
__asm__ __volatile__ ("psubsw" " %" "mm2" ", %" "mm7");
__asm__ __volatile__ ("movq" " %" "mm0" ", %" "mm3");
__asm__ __volatile__ ("movq" " %" "mm7" ", %" "mm4");
__asm__ __volatile__ ("psraw" " %0, %%" "mm3" : : "i" (15) );
__asm__ __volatile__ ("psraw" " %0, %%" "mm4" : : "i" (15) );
__asm__ __volatile__ ("pxor" " %" "mm3" ", %" "mm0");
__asm__ __volatile__ ("pxor" " %" "mm4" ", %" "mm7");
__asm__ __volatile__ ("psubw" " %" "mm3" ", %" "mm0");
__asm__ __volatile__ ("psubw" " %" "mm4" ", %" "mm7");
__asm__ __volatile__ ("pcmpgtw" " %" "mm5" ", %" "mm0");
__asm__ __volatile__ ("pcmpgtw" " %" "mm5" ", %" "mm7");
__asm__ __volatile__ ("psrlw" " %0, %%" "mm0" : : "i" (15) );
__asm__ __volatile__ ("psrlw" " %0, %%" "mm7" : : "i" (15) );
__asm__ __volatile__ ("packuswb" " %" "mm0" ", %" "mm0");
__asm__ __volatile__ ("packuswb" " %" "mm7" ", %" "mm7");
__asm__ __volatile__ ("pand" " %" "mm7" ", %" "mm0");
__asm__ __volatile__ ("movd" " %%" "mm0" ", %0" : "=m" (*moving) : );
ac_memcpy(prev, src, 4);
src+=4;
prev+=4;
srcminus+=4;
count += *moving++;
count += *moving++;
count += *moving++;
count += *moving++;
}
} else {
for (x=0; x<w; x+=4) {
__asm__ __volatile__ ("movd" " %0, %%" "mm0" : : "m" (*src));
__asm__ __volatile__ ("movd" " %0, %%" "mm1" : : "m" (*(prev+w)));
__asm__ __volatile__ ("movd" " %0, %%" "mm2" : : "m" (*prev));
__asm__ __volatile__ ("punpcklbw" " %" "mm0" ", %" "mm0");
__asm__ __volatile__ ("punpcklbw" " %" "mm1" ", %" "mm1");
__asm__ __volatile__ ("punpcklbw" " %" "mm2" ", %" "mm2");
__asm__ __volatile__ ("pand" " %" "mm6" ", %" "mm0");
__asm__ __volatile__ ("pand" " %" "mm6" ", %" "mm1");
__asm__ __volatile__ ("pand" " %" "mm6" ", %" "mm2");
__asm__ __volatile__ ("movq" " %" "mm0" ", %" "mm7");
__asm__ __volatile__ ("psubsw" " %" "mm1" ", %" "mm0");
__asm__ __volatile__ ("psubsw" " %" "mm2" ", %" "mm7");
__asm__ __volatile__ ("movq" " %" "mm0" ", %" "mm3");
__asm__ __volatile__ ("movq" " %" "mm7" ", %" "mm4");
__asm__ __volatile__ ("psraw" " %0, %%" "mm3" : : "i" (15) );
__asm__ __volatile__ ("psraw" " %0, %%" "mm4" : : "i" (15) );
__asm__ __volatile__ ("pxor" " %" "mm3" ", %" "mm0");
__asm__ __volatile__ ("pxor" " %" "mm4" ", %" "mm7");
__asm__ __volatile__ ("psubw" " %" "mm3" ", %" "mm0");
__asm__ __volatile__ ("psubw" " %" "mm4" ", %" "mm7");
__asm__ __volatile__ ("pcmpgtw" " %" "mm5" ", %" "mm0");
__asm__ __volatile__ ("pcmpgtw" " %" "mm5" ", %" "mm7");
__asm__ __volatile__ ("psrlw" " %0, %%" "mm0" : : "i" (15) );
__asm__ __volatile__ ("psrlw" " %0, %%" "mm7" : : "i" (15) );
__asm__ __volatile__ ("packuswb" " %" "mm0" ", %" "mm0");
__asm__ __volatile__ ("packuswb" " %" "mm7" ", %" "mm7");
__asm__ __volatile__ ("pand" " %" "mm7" ", %" "mm0");
__asm__ __volatile__ ("movd" " %%" "mm0" ", %0" : "=m" (*moving) : );
ac_memcpy(prev, src, 4);
src+=4;
prev+=4;
count += *moving++;
count += *moving++;
count += *moving++;
count += *moving++;
}
}
srcminus += srcpitch;
moving += PAD;
}
__asm__ __volatile__ ("emms");
} else
# 745 "filter_smartyuv.c"
{
count = 0;
for (y = 1; y < hminus1; y++)
{
x = 0;
if (y & 1) {
do {
int luma = *src++&0xff;
int p0 = luma - (*(srcminus+x)&0xff);
int p1 = luma - (*prev&0xff);
*prev++ = luma;
*moving = (((((p0)^((p0)>>7))-((p0)>>7)) > _threshold) & ((((p1)^((p1)>>7))-((p1)>>7)) > _threshold));
count += *moving++;
} while(++x < w);
} else {
do {
int luma = *src++ & 0xff;
int p0 = luma - (*(prev+w)&0xff);
int p1 = luma - (*prev&0xff);
*prev++ = luma;
*moving = (((((p0)^((p0)>>7))-((p0)>>7)) > _threshold) & ((((p1)^((p1)>>7))-((p1)>>7)) > _threshold));
count += *moving++;
} while(++x < w);
}
moving += PAD;
srcminus += srcpitch;
}
}
}
if ((100L * count) / (h * w) >= mfd->scenethreshold) scenechange = 1;
else scenechange = 0;
if (scenechange && mfd->verbose)
tc_log(TC_LOG_INFO, "filter_smartyuv.so", "Scenechange at %6d (%6ld moving pixels)" , counter, count);
if (!scenechange && mfd->highq)
{
Erode_Dilate(_moving, _fmoving, w, h);
}
}
if (mfd->diffmode == FIELD_ONLY) {
T = _threshold * _threshold;
for (y = 1; y < hminus1; y++)
{
x = 0;
do
{
moving[x] = 0;
if (y & 1)
{
fiMotion = 0;
luma = (src[x]) & 0xff;
lumap= (srcminus[x]) & 0xff;
luman = (srcplus[x]) & 0xff;
if ((lumap - luma) * (luman - luma) > T)
moving[x] = 1;
}
if (moving[x]) count++;
} while(++x < w);
src = src + srcpitch;
srcminus = srcminus + srcpitch;
srcplus = srcplus + srcpitch;
moving += (w+PAD);
}
if ((100L * count) / (h * w) >= mfd->scenethreshold) scenechange = 1;
else scenechange = 0;
if (!scenechange && mfd->highq)
{
int xlo, xhi, ylo, yhi;
int u, v;
int N = 5;
int Nover2 = N/2;
int sum;
unsigned char *m;
fmoving = _fmoving;
for (y = 0; y < h; y++)
{
for (x = 0; x < w; x++)
{
if (!((_moving + y * (w+PAD))[x]))
{
fmoving[x] = 0;
continue;
}
xlo = x - Nover2; if (xlo < 0) xlo = 0;
xhi = x + Nover2; if (xhi >= w) xhi = wminus1;
ylo = y - Nover2; if (ylo < 0) ylo = 0;
yhi = y + Nover2; if (yhi >= h) yhi = hminus1;
m = _moving + ylo * (w+PAD);
sum = 0;
for (u = ylo; u <= yhi; u++)
{
for (v = xlo; v <= xhi; v++)
{
sum += m[v];
}
m += w;
}
if (sum > 9)
fmoving[x] = 1;
else
fmoving[x] = 0;
}
fmoving += (w+PAD);
}
N = 5;
Nover2 = N/2;
moving = _moving;
for (y = 0; y < h; y++)
{
for (x = 0; x < w; x++)
{
if (!((_fmoving + y * (w+PAD))[x]))
{
moving[x] = 0;
continue;
}
xlo = x - Nover2; if (xlo < 0) xlo = 0;
xhi = x + Nover2; if (xhi >= w) xhi = wminus1;
ylo = y - Nover2; if (ylo < 0) ylo = 0;
yhi = y + Nover2; if (yhi >= h) yhi = hminus1;
m = _moving + ylo * (w+PAD);
for (u = ylo; u <= yhi; u++)
{
for (v = xlo; v <= xhi; v++)
{
m[v] = 1;
}
m += (w+PAD);
}
}
moving += (w+PAD);
}
}
}
src = src_buf;
dst = dst_buf;
ac_memcpy(dst, src, w);
src = src_buf + srcpitch;
srcminus = src - srcpitch;
srcplus = src + srcpitch;
if (cubic)
{
srcminusminus = src - 3 * srcpitch;
srcplusplus = src + 3 * srcpitch;
}
dst = dst_buf + dstpitch;
moving = _moving + w+PAD;
movingminus = _moving;
movingplus = moving + w+PAD;
if (mfd->motionOnly)
{
for (y = 1; y < hminus1; y++)
{
if (mfd->Blend)
{
x = 0;
do {
if (!(movingminus[x] | moving[x] | movingplus[x]) && !scenechange)
dst[x] = (clamp_f==clamp_Y)?BLACK_BYTE_Y:BLACK_BYTE_UV;
else
{
dst[x] = (((src[x]&0xff)>>1) + ((srcminus[x]&0xff)>>2) + ((srcplus[x]&0xff)>>2))&0xff;
}
} while(++x < w);
}
else
{
x = 0;
do {
if (!(movingminus[x] | moving[x] | movingplus[x]) && !scenechange)
dst[x] = (clamp_f==clamp_Y)?BLACK_BYTE_Y:BLACK_BYTE_UV;
else if (y & 1)
{
if (cubic && (y > 2) && (y < hminus3))
{
rpp = (srcminusminus[x]) & 0xff;
rp = (srcminus[x]) & 0xff;
rn = (srcplus[x]) & 0xff;
rnn = (srcplusplus[x]) & 0xff;
R = (5 * (rp + rn) - (rpp + rnn)) >> 3;
dst[x] = clamp_f(R);
}
else
{
p1 = srcminus[x] &0xff;
p1 &= 0xfe;
p2 = srcplus[x] &0xff;
p2 &= 0xfe;
dst[x] = ((p1>>1) + (p2>>1)) &0xff;
}
}
else
dst[x] = src[x];
} while(++x < w);
}
src = src + srcpitch;
srcminus = srcminus + srcpitch;
srcplus = srcplus + srcpitch;
if (cubic)
{
srcminusminus = srcminusminus + srcpitch;
srcplusplus = srcplusplus + srcpitch;
}
dst = dst + dstpitch;
moving += (w+PAD);
movingminus += (w+PAD);
movingplus += (w+PAD);
}
ac_memcpy(dst, src, w);
if (clamp_f == clamp_Y)
counter++;
return;
}
if (mfd->Blend)
{
for (y = 1; y < hminus1; y++)
{
if (can_use_mmx) {
uint64_t scmask = (scenechange<<24) | (scenechange<<16) | (scenechange<<8) | scenechange;
scmask = (scmask << 32) | scmask;
__asm__ __volatile__ ("pcmpeqw" " %" "mm4" ", %" "mm4");
__asm__ __volatile__ ("psrlw" " %0, %%" "mm4" : : "i" (9) );
__asm__ __volatile__ ("packuswb" " %" "mm4" ", %" "mm4");
__asm__ __volatile__ ("pcmpeqw" " %" "mm6" ", %" "mm6");
__asm__ __volatile__ ("psrlw" " %0, %%" "mm6" : : "i" (10) );
__asm__ __volatile__ ("packuswb" " %" "mm6" ", %" "mm6");
for (x=0; x<w; x+=8) {
__asm__ __volatile__ ("movq" " %0, %%" "mm0" : : "m" (scmask));
__asm__ __volatile__ ("pxor" " %" "mm5" ", %" "mm5");
__asm__ __volatile__ ("por" " %0, %%" "mm0" : : "m" (moving [x]));
__asm__ __volatile__ ("movq" " %0, %%" "mm1" : : "m" (src [x]));
__asm__ __volatile__ ("por" " %0, %%" "mm0" : : "m" (movingminus[x]));
__asm__ __volatile__ ("movq" " %0, %%" "mm2" : : "m" (src [x-w]));
__asm__ __volatile__ ("por" " %0, %%" "mm0" : : "m" (movingplus [x]));
__asm__ __volatile__ ("movq" " %0, %%" "mm3" : : "m" (src [x+w]));
__asm__ __volatile__ ("movq" " %" "mm1" ", %" "mm7");
__asm__ __volatile__ ("pcmpgtb" " %" "mm5" ", %" "mm0");
__asm__ __volatile__ ("pcmpeqw" " %" "mm5" ", %" "mm5");
__asm__ __volatile__ ("psubb" " %" "mm0" ", %" "mm5");
__asm__ __volatile__ ("pand" " %" "mm0" ", %" "mm7");
__asm__ __volatile__ ("pand" " %" "mm5" ", %" "mm1");
__asm__ __volatile__ ("psrlw" " %0, %%" "mm7" : : "i" (1) );
__asm__ __volatile__ ("pand" " %" "mm4" ", %" "mm7");
__asm__ __volatile__ ("por" " %" "mm7" ", %" "mm1");
# 1078 "filter_smartyuv.c"
__asm__ __volatile__ ("pand" " %" "mm0" ", %" "mm2");
__asm__ __volatile__ ("pand" " %" "mm0" ", %" "mm3");
__asm__ __volatile__ ("psrlw" " %0, %%" "mm2" : : "i" (2) );
__asm__ __volatile__ ("psrlw" " %0, %%" "mm3" : : "i" (2) );
__asm__ __volatile__ ("pand" " %" "mm6" ", %" "mm2");
__asm__ __volatile__ ("pand" " %" "mm6" ", %" "mm3");
__asm__ __volatile__ ("paddusb" " %" "mm2" ", %" "mm1");
__asm__ __volatile__ ("paddusb" " %" "mm3" ", %" "mm1");
__asm__ __volatile__ ("movq" " %%" "mm1" ", %0" : "=m" (dst[x]) :
);
}
} else
# 1129 "filter_smartyuv.c"
{
Blendline_c (dst, src, srcminus, srcplus, moving, movingminus, movingplus, w, scenechange);
}
src += srcpitch;
srcminus += srcpitch;
srcplus += srcpitch;
dst += dstpitch;
moving += (w+PAD);
movingminus += (w+PAD);
movingplus += (w+PAD);
}
__asm__ __volatile__ ("emms");
return;
}
__asm__ __volatile__ ("emms");
for (y = 1; y < hminus1; y++)
{
if (y&1)
{
x = 0;
do {
if (movingminus[x] | moving[x] | movingplus[x] | scenechange)
if (cubic & (y > 2) & (y < hminus3))
{
R = (5 * ((srcminus[x] & 0xff) + (srcplus[x] & 0xff))
- ((srcminusminus[x] & 0xff) + (srcplusplus[x] & 0xff))) >> 3;
dst[x] = clamp_f(R);
}
else
{
dst[x] = (((srcminus[x]&0xff) >> 1) + ((srcplus[x]&0xff) >> 1)) & 0xff;
}
else
{
dst[x] = src[x];
}
} while(++x < w);
}
else
{
ac_memcpy(dst, src, w);
}
src += srcpitch;
srcminus += srcpitch;
srcplus += srcpitch;
if (cubic)
{
srcminusminus += srcpitch;
srcplusplus += srcpitch;
}
dst += dstpitch;
moving += (w+PAD);
movingminus += (w+PAD);
movingplus += (w+PAD);
}
ac_memcpy(dst, src, w);
if (clamp_f == clamp_Y)
counter++;
return;
}
int tc_filter(frame_list_t *ptr_, char *options)
{
vframe_list_t *ptr = (vframe_list_t *)ptr_;
# 1216 "filter_smartyuv.c"
if(ptr->tag & 16) {
unsigned int width, height;
int msize;
if((vob = tc_get_vob())==((void *)0)) return(-1);
mfd = _tc_zalloc("filter_smartyuv.c", 1224, sizeof(MyFilterData));
if (!mfd) {
tc_log(TC_LOG_ERR, "filter_smartyuv.so", "No memory!");
return (-1);
}
width = vob->im_v_width;
height = vob->im_v_height;
mfd->motionOnly = 0;
mfd->threshold = LUMA_THRESHOLD;
mfd->chromathres = CHROMA_THRESHOLD;
mfd->scenethreshold = SCENE_THRESHOLD;
mfd->diffmode = FRAME_ONLY;
mfd->codec = vob->im_v_codec;
mfd->highq = 1;
mfd->cubic = 1;
mfd->doChroma = 1;
mfd->Blend = 1;
mfd->verbose = 0;
if (mfd->codec != 2) {
tc_log(TC_LOG_ERR, "filter_smartyuv.so", "This filter is only capable of YUV mode");
return -1;
}
if (options != ((void *)0)) {
if(verbose) tc_log(TC_LOG_INFO, "filter_smartyuv.so", "options=%s" ,
options);
optstr_get (options, "motionOnly", "%d", &mfd->motionOnly );
optstr_get (options, "threshold", "%d", &mfd->threshold );
optstr_get (options, "chromathres", "%d", &mfd->chromathres );
optstr_get (options, "Blend", "%d", &mfd->Blend );
optstr_get (options, "scenethres", "%d", &mfd->scenethreshold );
optstr_get (options, "highq", "%d", &mfd->highq );
optstr_get (options, "cubic", "%d", &mfd->cubic );
optstr_get (options, "diffmode", "%d", &mfd->diffmode );
optstr_get (options, "doChroma", "%d", &mfd->doChroma );
optstr_get (options, "verbose", "%d", &mfd->verbose );
if (optstr_lookup (options, "help") != ((void *)0)) {
help_optstr();
}
}
if (verbose > 1) {
tc_log(TC_LOG_INFO, "filter_smartyuv.so", " Smart YUV Deinterlacer Test Filter Settings (%dx%d):" , width, height);
tc_log(TC_LOG_INFO, "filter_smartyuv.so", " motionOnly = %d" , mfd->motionOnly);
tc_log(TC_LOG_INFO, "filter_smartyuv.so", " diffmode = %d" , mfd->diffmode);
tc_log(TC_LOG_INFO, "filter_smartyuv.so", " threshold = %d" , mfd->threshold);
tc_log(TC_LOG_INFO, "filter_smartyuv.so", " chromathres = %d" , mfd->chromathres);
tc_log(TC_LOG_INFO, "filter_smartyuv.so", " scenethres = %d" , mfd->scenethreshold);
tc_log(TC_LOG_INFO, "filter_smartyuv.so", " cubic = %d" , mfd->cubic);
tc_log(TC_LOG_INFO, "filter_smartyuv.so", " highq = %d" , mfd->highq);
tc_log(TC_LOG_INFO, "filter_smartyuv.so", " Blend = %d" , mfd->Blend);
tc_log(TC_LOG_INFO, "filter_smartyuv.so", " doChroma = %d" , mfd->doChroma);
tc_log(TC_LOG_INFO, "filter_smartyuv.so", " verbose = %d" , mfd->verbose);
}
mfd->buf = _tc_bufalloc("filter_smartyuv.c", 1289, width*height*3);
mfd->prevFrame = _tc_bufalloc("filter_smartyuv.c", 1290, width*height*3);
msize = width*height + 4*(width+PAD) + PAD*height;
mfd->movingY = (unsigned char *) _tc_bufalloc("filter_smartyuv.c", 1293, sizeof(unsigned char)*msize);
mfd->fmovingY = (unsigned char *) _tc_bufalloc("filter_smartyuv.c", 1294, sizeof(unsigned char)*msize);
msize = width*height/4 + 4*(width+PAD) + PAD*height;
mfd->movingU = (unsigned char *) _tc_bufalloc("filter_smartyuv.c", 1297, sizeof(unsigned char)*msize);
mfd->movingV = (unsigned char *) _tc_bufalloc("filter_smartyuv.c", 1298, sizeof(unsigned char)*msize);
mfd->fmovingU = (unsigned char *) _tc_bufalloc("filter_smartyuv.c", 1299, sizeof(unsigned char)*msize);
mfd->fmovingV = (unsigned char *) _tc_bufalloc("filter_smartyuv.c", 1300, sizeof(unsigned char)*msize);
if ( !mfd->movingY || !mfd->movingU || !mfd->movingV || !mfd->fmovingY ||
!mfd->fmovingU || !mfd->fmovingV || !mfd->buf || !mfd->prevFrame) {
tc_log(TC_LOG_MSG, "filter_smartyuv.so", "Memory allocation error");
return -1;
}
memset(mfd->prevFrame, BLACK_BYTE_Y, width*height);
memset(mfd->prevFrame+width*height, BLACK_BYTE_UV, width*height/2);
memset(mfd->buf, BLACK_BYTE_Y, width*height);
memset(mfd->buf+width*height, BLACK_BYTE_UV, width*height/2);
msize = width*height + 4*(width+PAD) + PAD*height;
memset(mfd->movingY, 0, msize);
memset(mfd->fmovingY, 0, msize);
msize = width*height/4 + 4*(width+PAD) + PAD*height;
memset(mfd->movingU, 0, msize);
memset(mfd->movingV, 0, msize);
memset(mfd->fmovingU, 0, msize);
memset(mfd->fmovingV, 0, msize);
# 1360 "filter_smartyuv.c"
if(verbose) tc_log(TC_LOG_INFO, "filter_smartyuv.so", "(MMX) " "%s %s" , "0.1.6 (2007-05-31)", "Motion-adaptive deinterlacing")
;
return 0;
}
if(ptr->tag & 4096) {
char buf[255];
optstr_filter_desc (options, "filter_smartyuv.so", "Motion-adaptive deinterlacing", "0.1.6 (2007-05-31)", "Tilmann Bitterberg", "VYE", "1");
_tc_snprintf("filter_smartyuv.c", 1378, buf, sizeof(buf), "%d" , mfd->motionOnly);
optstr_param (options, "motionOnly", "Show motion areas only, blacking out static areas" ,"%d", buf, "0", "1");
_tc_snprintf("filter_smartyuv.c", 1380, buf, sizeof(buf), "%d" , mfd->diffmode);
optstr_param (options, "diffmode", "Motion Detection (0=frame, 1=field, 2=both)", "%d", buf, "0", "2" );
_tc_snprintf("filter_smartyuv.c", 1382, buf, sizeof(buf), "%d" , mfd->threshold);
optstr_param (options, "threshold", "Motion Threshold (luma)", "%d", buf, "0", "255" );
_tc_snprintf("filter_smartyuv.c", 1384, buf, sizeof(buf), "%d" , mfd->chromathres);
optstr_param (options, "chromathres", "Motion Threshold (chroma)", "%d", buf, "0", "255" );
_tc_snprintf("filter_smartyuv.c", 1386, buf, sizeof(buf), "%d" , mfd->scenethreshold);
optstr_param (options, "scenethres", "Threshold for detecting scenechanges", "%d", buf, "0", "255" );
_tc_snprintf("filter_smartyuv.c", 1388, buf, sizeof(buf), "%d" , mfd->highq);
optstr_param (options, "highq", "High-Quality processing (motion Map denoising)", "%d", buf, "0", "1" );
_tc_snprintf("filter_smartyuv.c", 1390, buf, sizeof(buf), "%d" , mfd->cubic);
optstr_param (options, "cubic", "Do cubic interpolation", "%d", buf, "0", "1" );
_tc_snprintf("filter_smartyuv.c", 1392, buf, sizeof(buf), "%d" , mfd->Blend);
optstr_param (options, "Blend", "Blend the frames for deinterlacing", "%d", buf, "0", "1" );
_tc_snprintf("filter_smartyuv.c", 1394, buf, sizeof(buf), "%d" , mfd->doChroma);
optstr_param (options, "doChroma", "Enable chroma processing (slower but more accurate)", "%d", buf, "0", "1" );
_tc_snprintf("filter_smartyuv.c", 1396, buf, sizeof(buf), "%d" , mfd->verbose);
optstr_param (options, "verbose", "Verbose mode", "%d", buf, "0", "1" );
return (0);
}
if(ptr->tag & 2048) {
if (!mfd)
return 0;
tc_buffree (mfd->buf);
mfd->buf = ((void *)0);
tc_buffree (mfd->prevFrame);
mfd->prevFrame = ((void *)0);
tc_buffree (mfd->movingY);
mfd->movingY = ((void *)0);
tc_buffree (mfd->movingU);
mfd->movingU = ((void *)0);
tc_buffree (mfd->movingV);
mfd->movingV = ((void *)0);
tc_buffree (mfd->fmovingY);
mfd->fmovingY = ((void *)0);
tc_buffree (mfd->fmovingU);
mfd->fmovingU = ((void *)0);
tc_buffree (mfd->fmovingV);
mfd->fmovingV = ((void *)0);
if (mfd)
free(mfd);
return 0;
}
if(ptr->tag & 64 && ptr->tag & 1 && !(ptr->attributes & TC_FRAME_IS_SKIPPED)) {
int U = ptr->v_width*ptr->v_height;
int V = ptr->v_width*ptr->v_height*5/4;
int w2 = ptr->v_width/2;
int h2 = ptr->v_height/2;
int msize = ptr->v_width*ptr->v_height + 4*(ptr->v_width+PAD) + PAD*ptr->v_height;
int off = 2*(ptr->v_width+PAD)+PAD/2;
memset(mfd->movingY, 0, msize);
memset(mfd->fmovingY, 0, msize);
smartyuv_core(ptr->video_buf, mfd->buf, mfd->prevFrame,
ptr->v_width, ptr->v_height, ptr->v_width, ptr->v_width,
mfd->movingY+off, mfd->fmovingY+off, clamp_Y, mfd->threshold);
if (mfd->doChroma) {
msize = ptr->v_width*ptr->v_height/4 + 4*(ptr->v_width+PAD) + PAD*ptr->v_height;
off = 2*(ptr->v_width/2+PAD)+PAD/2;
memset(mfd->movingU, 0, msize);
memset(mfd->fmovingU, 0, msize);
memset(mfd->movingV, 0, msize);
memset(mfd->fmovingV, 0, msize);
smartyuv_core(ptr->video_buf+U, mfd->buf+U, mfd->prevFrame+U,
w2, h2, w2, w2,
mfd->movingU+off, mfd->fmovingU+off, clamp_UV, mfd->chromathres);
smartyuv_core(ptr->video_buf+V, mfd->buf+V, mfd->prevFrame+V,
w2, h2, w2, w2,
mfd->movingV+off, mfd->fmovingV+off, clamp_UV, mfd->chromathres);
} else {
ac_memcpy(mfd->buf+U, ptr->video_buf+U,
ptr->v_width*ptr->v_height/2);
}
ac_memcpy (ptr->video_buf, mfd->buf, ptr->video_size);
return 0;
}
return 0;
}
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to gcc-4.5 in Ubuntu.
https://bugs.launchpad.net/bugs/682333
Title:
internal compiler error: in build_polynomial_chrec, at tree-
chrec.h:143
Status in “gcc-4.5” package in Ubuntu:
Incomplete
Bug description:
Binary package hint: gcc-4.5
I've been trying to build transcode on Natty with the attached patch
and but the building fails with the following error:
/bin/bash ../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I.. -D_REENTRANT -I.. -I../src -Wall -Wstrict-prototypes -Wmissing-prototypes -g -O2 -c -o filter_smartyuv.lo filter_smartyuv.c
libtool: compile: gcc -DHAVE_CONFIG_H -I. -I.. -D_REENTRANT -I.. -I../src -Wall -Wstrict-prototypes -Wmissing-prototypes -g -O2 -c filter_smartyuv.c -fPIC -DPIC -o .libs/filter_smartyuv.o
filter_smartyuv.c: In function 'smartyuv_core':
filter_smartyuv.c:1130:3: warning: pointer targets in passing argument 1 of 'Blendline_c' differ in signedness
filter_smartyuv.c:313:20: note: expected 'uint8_t *' but argument is of type 'char *'
filter_smartyuv.c:1130:3: warning: pointer targets in passing argument 2 of 'Blendline_c' differ in signedness
filter_smartyuv.c:313:20: note: expected 'uint8_t *' but argument is of type 'char *'
filter_smartyuv.c:1130:3: warning: pointer targets in passing argument 3 of 'Blendline_c' differ in signedness
filter_smartyuv.c:313:20: note: expected 'uint8_t *' but argument is of type 'char *'
filter_smartyuv.c:1130:3: warning: pointer targets in passing argument 4 of 'Blendline_c' differ in signedness
filter_smartyuv.c:313:20: note: expected 'uint8_t *' but argument is of type 'char *'
filter_smartyuv.c: In function 'tc_filter':
filter_smartyuv.c:1454:11: warning: pointer targets in passing argument 1 of 'smartyuv_core' differ in signedness
filter_smartyuv.c:331:13: note: expected 'char *' but argument is of type 'uint8_t *'
filter_smartyuv.c:1470:6: warning: pointer targets in passing argument 1 of 'smartyuv_core' differ in signedness
filter_smartyuv.c:331:13: note: expected 'char *' but argument is of type 'uint8_t *'
filter_smartyuv.c:1474:6: warning: pointer targets in passing argument 1 of 'smartyuv_core' differ in signedness
filter_smartyuv.c:331:13: note: expected 'char *' but argument is of type 'uint8_t *'
filter_smartyuv.c: In function 'smartyuv_core':
filter_smartyuv.c:331:13: internal compiler error: in build_polynomial_chrec, at tree-chrec.h:143
Please submit a full bug report,
with preprocessed source if appropriate.
See <file:///usr/share/doc/gcc-4.5/README.Bugs> for instructions.
make[4]: *** [filter_smartyuv.lo] Error 1
make[4]: Leaving directory `/tmp/buildd/transcode-1.1.5/filter'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/tmp/buildd/transcode-1.1.5/filter'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/tmp/buildd/transcode-1.1.5'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/tmp/buildd/transcode-1.1.5'
The full buildlog is attached.
More information about the foundations-bugs
mailing list