public inbox for gcc-prs@sourceware.org
help / color / mirror / Atom feed
* Re: c/10422: Internal compiler error in simplify_subreg, at simplify-rtx.c:2452
@ 2003-05-05 14:50 bangerth
  0 siblings, 0 replies; 3+ messages in thread
From: bangerth @ 2003-05-05 14:50 UTC (permalink / raw)
  To: gcc-bugs, gcc-prs, nobody, oliver.graebner

Synopsis: Internal compiler error in simplify_subreg, at simplify-rtx.c:2452

State-Changed-From-To: open->closed
State-Changed-By: bangerth
State-Changed-When: Mon May  5 14:50:51 2003
State-Changed-Why:
    Confirmed, but already fixed in 3.2.3, 3.3 and 3.4

http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=10422


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: c/10422: Internal compiler error in simplify_subreg, at simplify-rtx.c:2452
@ 2003-04-17  9:56 Oliver Gräbner
  0 siblings, 0 replies; 3+ messages in thread
From: Oliver Gräbner @ 2003-04-17  9:56 UTC (permalink / raw)
  To: nobody; +Cc: gcc-prs

The following reply was made to PR c/10422; it has been noted by GNATS.

From: Oliver =?iso-8859-1?q?Gr=E4bner?= <oliver.graebner@siemens.com>
To: gcc-gnats@gcc.gnu.org, gcc-bugs@gcc.gnu.org, nobody@gcc.gnu.org,
   gcc-prs@gcc.gnu.org, oliver.graebner@siemens.com
Cc:  
Subject: Re: c/10422: Internal compiler error in simplify_subreg, at simplify-rtx.c:2452
Date: Thu, 17 Apr 2003 10:56:18 +0200

 --------------Boundary-00=_UTCH4TK8JIHUCD697UZS
 Content-Type: text/plain;
   charset="us-ascii"
 Content-Transfer-Encoding: quoted-printable
 
 http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=3Dview%20audit-trail&database=3D=
 gcc&pr=3D10422
 
 Hi,
 
 I thrilled down into the crash and had a closer look at the source code. =
 I=20
 found the responsible source code lines which crashes gcc and commented t=
 hem=20
 out. Please have a look at the attached tc-ppc.c.patch file for the=20
 appropriate source code lines.
 
 The attached tc-ppc.i file has the patch incorporated and thus compiles=20
 properly. (If this produces a running cross compiler - I do not know at t=
 he=20
 moment!).=20
 
 This may ease your work.
 
 Best Regards
 
 Oliver
 --------------Boundary-00=_UTCH4TK8JIHUCD697UZS
 Content-Type: text/plain;
   charset="us-ascii";
   name="tc-ppc.i"
 Content-Transfer-Encoding: quoted-printable
 Content-Disposition: attachment; filename="tc-ppc.i"
 
 # 1 "../../binutils-2.13.1/gas/config/tc-ppc.c"
 # 1 "<built-in>"
 # 1 "<command line>"
 # 1 "../../binutils-2.13.1/gas/config/tc-ppc.c"
 # 23 "../../binutils-2.13.1/gas/config/tc-ppc.c"
 # 1 "/usr/include/stdio.h" 1 3
 # 28 "/usr/include/stdio.h" 3
 # 1 "/usr/include/features.h" 1 3
 # 283 "/usr/include/features.h" 3
 # 1 "/usr/include/sys/cdefs.h" 1 3
 # 284 "/usr/include/features.h" 2 3
 # 312 "/usr/include/features.h" 3
 # 1 "/usr/include/gnu/stubs.h" 1 3
 # 313 "/usr/include/features.h" 2 3
 # 29 "/usr/include/stdio.h" 2 3
 
 
 
 
 
 # 1 "/usr/lib/gcc-lib/i486-suse-linux/3.2/include/stddef.h" 1 3
 # 201 "/usr/lib/gcc-lib/i486-suse-linux/3.2/include/stddef.h" 3
 typedef unsigned int size_t;
 # 35 "/usr/include/stdio.h" 2 3
 
 # 1 "/usr/include/bits/types.h" 1 3
 # 29 "/usr/include/bits/types.h" 3
 # 1 "/usr/lib/gcc-lib/i486-suse-linux/3.2/include/stddef.h" 1 3
 # 30 "/usr/include/bits/types.h" 2 3
 
 
 typedef unsigned char __u_char;
 typedef unsigned short __u_short;
 typedef unsigned int __u_int;
 typedef unsigned long __u_long;
 
 __extension__ typedef unsigned long long int __u_quad_t;
 __extension__ typedef long long int __quad_t;
 # 49 "/usr/include/bits/types.h" 3
 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;
 
 __extension__ typedef signed long long int __int64_t;
 __extension__ typedef unsigned long long int __uint64_t;
 
 typedef __quad_t *__qaddr_t;
 
 typedef __u_quad_t __dev_t;
 typedef __u_int __uid_t;
 typedef __u_int __gid_t;
 typedef __u_long __ino_t;
 typedef __u_int __mode_t;
 typedef __u_int __nlink_t;
 typedef long int __off_t;
 typedef __quad_t __loff_t;
 typedef int __pid_t;
 typedef int __ssize_t;
 typedef __u_long __rlim_t;
 typedef __u_quad_t __rlim64_t;
 typedef __u_int __id_t;
 
 typedef struct
   {
     int __val[2];
   } __fsid_t;
 
 
 typedef int __daddr_t;
 typedef char *__caddr_t;
 typedef long int __time_t;
 typedef unsigned int __useconds_t;
 typedef long int __suseconds_t;
 typedef long int __swblk_t;
 
 typedef long int __clock_t;
 
 
 typedef int __clockid_t;
 
 
 typedef int __timer_t;
 
 
 
 
 
 
 typedef int __key_t;
 
 
 typedef unsigned short int __ipc_pid_t;
 
 
 
 typedef long int __blksize_t;
 
 
 
 
 typedef long int __blkcnt_t;
 typedef __quad_t __blkcnt64_t;
 
 
 typedef __u_long __fsblkcnt_t;
 typedef __u_quad_t __fsblkcnt64_t;
 
 
 typedef __u_long __fsfilcnt_t;
 typedef __u_quad_t __fsfilcnt64_t;
 
 
 typedef __u_quad_t __ino64_t;
 
 
 typedef __loff_t __off64_t;
 
 
 typedef long int __t_scalar_t;
 typedef unsigned long int __t_uscalar_t;
 
 
 typedef int __intptr_t;
 
 
 typedef unsigned int __socklen_t;
 
 
 
 
 # 1 "/usr/include/bits/pthreadtypes.h" 1 3
 # 23 "/usr/include/bits/pthreadtypes.h" 3
 # 1 "/usr/include/bits/sched.h" 1 3
 # 68 "/usr/include/bits/sched.h" 3
 struct __sched_param
   {
     int __sched_priority;
   };
 # 24 "/usr/include/bits/pthreadtypes.h" 2 3
 
 
 struct _pthread_fastlock
 {
   long int __status;
   int __spinlock;
 
 };
 
 
 
 typedef struct _pthread_descr_struct *_pthread_descr;
 
 
 
 
 
 typedef struct __pthread_attr_s
 {
   int __detachstate;
   int __schedpolicy;
   struct __sched_param __schedparam;
   int __inheritsched;
   int __scope;
   size_t __guardsize;
   int __stackaddr_set;
   void *__stackaddr;
   size_t __stacksize;
 } pthread_attr_t;
 
 
 
 typedef struct
 {
   struct _pthread_fastlock __c_lock;
   _pthread_descr __c_waiting;
 } pthread_cond_t;
 
 
 
 typedef struct
 {
   int __dummy;
 } pthread_condattr_t;
 
 
 typedef unsigned int pthread_key_t;
 
 
 
 
 
 typedef struct
 {
   int __m_reserved;
   int __m_count;
   _pthread_descr __m_owner;
   int __m_kind;
   struct _pthread_fastlock __m_lock;
 } pthread_mutex_t;
 
 
 
 typedef struct
 {
   int __mutexkind;
 } pthread_mutexattr_t;
 
 
 
 typedef int pthread_once_t;
 
 
 
 
 typedef struct _pthread_rwlock_t
 {
   struct _pthread_fastlock __rw_lock;
   int __rw_readers;
   _pthread_descr __rw_writer;
   _pthread_descr __rw_read_waiting;
   _pthread_descr __rw_write_waiting;
   int __rw_kind;
   int __rw_pshared;
 } pthread_rwlock_t;
 
 
 
 typedef struct
 {
   int __lockkind;
   int __pshared;
 } pthread_rwlockattr_t;
 
 
 
 
 typedef volatile int pthread_spinlock_t;
 
 
 typedef struct {
   struct _pthread_fastlock __ba_lock;
   int __ba_required;
   int __ba_present;
   _pthread_descr __ba_waiting;
 } pthread_barrier_t;
 
 
 typedef struct {
   int __pshared;
 } pthread_barrierattr_t;
 
 
 
 
 
 typedef unsigned long int pthread_t;
 # 144 "/usr/include/bits/types.h" 2 3
 # 37 "/usr/include/stdio.h" 2 3
 # 45 "/usr/include/stdio.h" 3
 typedef struct _IO_FILE FILE;
 # 55 "/usr/include/stdio.h" 3
 typedef struct _IO_FILE __FILE;
 # 65 "/usr/include/stdio.h" 3
 # 1 "/usr/include/libio.h" 1 3
 # 32 "/usr/include/libio.h" 3
 # 1 "/usr/include/_G_config.h" 1 3
 # 14 "/usr/include/_G_config.h" 3
 # 1 "/usr/lib/gcc-lib/i486-suse-linux/3.2/include/stddef.h" 1 3
 # 294 "/usr/lib/gcc-lib/i486-suse-linux/3.2/include/stddef.h" 3
 typedef long int wchar_t;
 # 321 "/usr/lib/gcc-lib/i486-suse-linux/3.2/include/stddef.h" 3
 typedef unsigned int wint_t;
 # 15 "/usr/include/_G_config.h" 2 3
 # 24 "/usr/include/_G_config.h" 3
 # 1 "/usr/include/wchar.h" 1 3
 # 48 "/usr/include/wchar.h" 3
 # 1 "/usr/lib/gcc-lib/i486-suse-linux/3.2/include/stddef.h" 1 3
 # 49 "/usr/include/wchar.h" 2 3
 
 # 1 "/usr/include/bits/wchar.h" 1 3
 # 51 "/usr/include/wchar.h" 2 3
 # 67 "/usr/include/wchar.h" 3
 typedef struct
 {
   int __count;
   union
   {
     wint_t __wch;
     char __wchb[4];
   } __value;
 } __mbstate_t;
 # 25 "/usr/include/_G_config.h" 2 3
 
 typedef struct
 {
   __off_t __pos;
   __mbstate_t __state;
 } _G_fpos_t;
 typedef struct
 {
   __off64_t __pos;
   __mbstate_t __state;
 } _G_fpos64_t;
 # 44 "/usr/include/_G_config.h" 3
 # 1 "/usr/include/gconv.h" 1 3
 # 28 "/usr/include/gconv.h" 3
 # 1 "/usr/include/wchar.h" 1 3
 # 48 "/usr/include/wchar.h" 3
 # 1 "/usr/lib/gcc-lib/i486-suse-linux/3.2/include/stddef.h" 1 3
 # 49 "/usr/include/wchar.h" 2 3
 # 29 "/usr/include/gconv.h" 2 3
 
 
 # 1 "/usr/lib/gcc-lib/i486-suse-linux/3.2/include/stddef.h" 1 3
 # 32 "/usr/include/gconv.h" 2 3
 
 
 
 
 
 enum
 {
   __GCONV_OK =3D 0,
   __GCONV_NOCONV,
   __GCONV_NODB,
   __GCONV_NOMEM,
 
   __GCONV_EMPTY_INPUT,
   __GCONV_FULL_OUTPUT,
   __GCONV_ILLEGAL_INPUT,
   __GCONV_INCOMPLETE_INPUT,
 
   __GCONV_ILLEGAL_DESCRIPTOR,
   __GCONV_INTERNAL_ERROR
 };
 
 
 
 enum
 {
   __GCONV_IS_LAST =3D 0x0001,
   __GCONV_IGNORE_ERRORS =3D 0x0002
 };
 
 
 
 struct __gconv_step;
 struct __gconv_step_data;
 struct __gconv_loaded_object;
 struct __gconv_trans_data;
 
 
 
 typedef int (*__gconv_fct) (struct __gconv_step *, struct __gconv_step_da=
 ta *,
                             __const unsigned char **, __const unsigned ch=
 ar *,
                             unsigned char **, size_t *, int, int);
 
 
 typedef int (*__gconv_init_fct) (struct __gconv_step *);
 typedef void (*__gconv_end_fct) (struct __gconv_step *);
 
 
 
 typedef int (*__gconv_trans_fct) (struct __gconv_step *,
                                   struct __gconv_step_data *, void *,
                                   __const unsigned char *,
                                   __const unsigned char **,
                                   __const unsigned char *, unsigned char =
 **,
                                   size_t *);
 
 
 typedef int (*__gconv_trans_context_fct) (void *, __const unsigned char *=
 ,
                                           __const unsigned char *,
                                           unsigned char *, unsigned char =
 *);
 
 
 typedef int (*__gconv_trans_query_fct) (__const char *, __const char ***,
                                         size_t *);
 
 
 typedef int (*__gconv_trans_init_fct) (void **, const char *);
 typedef void (*__gconv_trans_end_fct) (void *);
 
 struct __gconv_trans_data
 {
 
   __gconv_trans_fct __trans_fct;
   __gconv_trans_context_fct __trans_context_fct;
   __gconv_trans_end_fct __trans_end_fct;
   void *__data;
   struct __gconv_trans_data *__next;
 };
 
 
 
 struct __gconv_step
 {
   struct __gconv_loaded_object *__shlib_handle;
   __const char *__modname;
 
   int __counter;
 
   char *__from_name;
   char *__to_name;
 
   __gconv_fct __fct;
   __gconv_init_fct __init_fct;
   __gconv_end_fct __end_fct;
 
 
 
   int __min_needed_from;
   int __max_needed_from;
   int __min_needed_to;
   int __max_needed_to;
 
 
   int __stateful;
 
   void *__data;
 };
 
 
 
 struct __gconv_step_data
 {
   unsigned char *__outbuf;
   unsigned char *__outbufend;
 
 
 
   int __flags;
 
 
 
   int __invocation_counter;
 
 
 
   int __internal_use;
 
   __mbstate_t *__statep;
   __mbstate_t __state;
 
 
 
   struct __gconv_trans_data *__trans;
 };
 
 
 
 typedef struct __gconv_info
 {
   size_t __nsteps;
   struct __gconv_step *__steps;
   __extension__ struct __gconv_step_data __data [];
 } *__gconv_t;
 # 45 "/usr/include/_G_config.h" 2 3
 typedef union
 {
   struct __gconv_info __cd;
   struct
   {
     struct __gconv_info __cd;
     struct __gconv_step_data __data;
   } __combined;
 } _G_iconv_t;
 
 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
 # 53 "/usr/include/libio.h" 3
 # 1 "/usr/lib/gcc-lib/i486-suse-linux/3.2/include/stdarg.h" 1 3
 # 43 "/usr/lib/gcc-lib/i486-suse-linux/3.2/include/stdarg.h" 3
 typedef __builtin_va_list __gnuc_va_list;
 # 54 "/usr/include/libio.h" 2 3
 # 160 "/usr/include/libio.h" 3
 struct _IO_jump_t; struct _IO_FILE;
 # 170 "/usr/include/libio.h" 3
 typedef void _IO_lock_t;
 
 
 
 
 
 struct _IO_marker {
   struct _IO_marker *_next;
   struct _IO_FILE *_sbuf;
 
 
 
   int _pos;
 # 193 "/usr/include/libio.h" 3
 };
 
 
 enum __codecvt_result
 {
   __codecvt_ok,
   __codecvt_partial,
   __codecvt_error,
   __codecvt_noconv
 };
 # 261 "/usr/include/libio.h" 3
 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 _blksize;
   __off_t _old_offset;
 
 
 
   unsigned short _cur_column;
   signed char _vtable_offset;
   char _shortbuf[1];
 
 
 
   _IO_lock_t *_lock;
 # 305 "/usr/include/libio.h" 3
   __off64_t _offset;
 
 
 
 
 
   void *__pad1;
   void *__pad2;
 
   int _mode;
 
   char _unused2[15 * sizeof (int) - 2 * sizeof (void *)];
 
 };
 
 
 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_;
 # 344 "/usr/include/libio.h" 3
 typedef __ssize_t __io_read_fn (void *__cookie, char *__buf, size_t __nby=
 tes);
 
 
 
 
 
 
 
 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);
 
 
 
 
 typedef __io_read_fn cookie_read_function_t;
 typedef __io_write_fn cookie_write_function_t;
 typedef __io_seek_fn cookie_seek_function_t;
 typedef __io_close_fn cookie_close_function_t;
 
 
 typedef struct
 {
   __io_read_fn *read;
   __io_write_fn *write;
   __io_seek_fn *seek;
   __io_close_fn *close;
 } _IO_cookie_io_functions_t;
 typedef _IO_cookie_io_functions_t cookie_io_functions_t;
 
 struct _IO_cookie_file;
 
 
 extern void _IO_cookie_init (struct _IO_cookie_file *__cfile, int __read_=
 write,
                              void *__cookie, _IO_cookie_io_functions_t __=
 fns);
 
 
 
 
 
 
 
 extern int __underflow (_IO_FILE *) ;
 extern int __uflow (_IO_FILE *) ;
 extern int __overflow (_IO_FILE *, int) ;
 extern wint_t __wunderflow (_IO_FILE *) ;
 extern wint_t __wuflow (_IO_FILE *) ;
 extern wint_t __woverflow (_IO_FILE *, wint_t) ;
 # 426 "/usr/include/libio.h" 3
 extern int _IO_getc (_IO_FILE *__fp) ;
 extern int _IO_putc (int __c, _IO_FILE *__fp) ;
 extern int _IO_feof (_IO_FILE *__fp) ;
 extern int _IO_ferror (_IO_FILE *__fp) ;
 
 extern int _IO_peekc_locked (_IO_FILE *__fp) ;
 
 
 
 
 
 extern void _IO_flockfile (_IO_FILE *) ;
 extern void _IO_funlockfile (_IO_FILE *) ;
 extern int _IO_ftrylockfile (_IO_FILE *) ;
 # 456 "/usr/include/libio.h" 3
 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 *) ;
 # 66 "/usr/include/stdio.h" 2 3
 
 
 
 
 typedef __gnuc_va_list va_list;
 # 80 "/usr/include/stdio.h" 3
 typedef _G_fpos_t fpos_t;
 
 
 
 
 typedef _G_fpos64_t fpos64_t;
 # 129 "/usr/include/stdio.h" 3
 # 1 "/usr/include/bits/stdio_lim.h" 1 3
 # 130 "/usr/include/stdio.h" 2 3
 
 
 
 extern FILE *stdin;
 extern FILE *stdout;
 extern FILE *stderr;
 
 
 
 
 
 
 extern int remove (__const char *__filename) ;
 
 extern int rename (__const char *__old, __const char *__new) ;
 
 
 
 
 extern FILE *tmpfile (void) ;
 # 158 "/usr/include/stdio.h" 3
 extern FILE *tmpfile64 (void) ;
 
 
 extern char *tmpnam (char *__s) ;
 
 
 
 
 extern char *tmpnam_r (char *__s) ;
 # 178 "/usr/include/stdio.h" 3
 extern char *tempnam (__const char *__dir, __const char *__pfx)
      __attribute__ ((__malloc__));
 
 
 
 
 extern int fclose (FILE *__stream) ;
 
 extern int fflush (FILE *__stream) ;
 
 
 
 extern int fflush_unlocked (FILE *__stream) ;
 
 
 
 
 extern int fcloseall (void) ;
 
 
 
 
 
 extern FILE *fopen (__const char *__restrict __filename,
                     __const char *__restrict __modes) ;
 
 extern FILE *freopen (__const char *__restrict __filename,
                       __const char *__restrict __modes,
                       FILE *__restrict __stream) ;
 # 222 "/usr/include/stdio.h" 3
 extern FILE *fopen64 (__const char *__restrict __filename,
                       __const char *__restrict __modes) ;
 extern FILE *freopen64 (__const char *__restrict __filename,
                         __const char *__restrict __modes,
                         FILE *__restrict __stream) ;
 
 
 
 
 extern FILE *fdopen (int __fd, __const char *__modes) ;
 
 
 
 
 
 extern FILE *fopencookie (void *__restrict __magic_cookie,
                           __const char *__restrict __modes,
                           _IO_cookie_io_functions_t __io_funcs) ;
 
 
 extern FILE *fmemopen (void *__s, size_t __len, __const char *__modes) ;
 
 
 
 
 extern FILE *open_memstream (char **__restrict __bufloc,
                              size_t *__restrict __sizeloc) ;
 
 
 
 
 
 extern void setbuf (FILE *__restrict __stream, char *__restrict __buf) ;
 
 
 
 extern int setvbuf (FILE *__restrict __stream, char *__restrict __buf,
                     int __modes, size_t __n) ;
 
 
 
 
 extern void setbuffer (FILE *__restrict __stream, char *__restrict __buf,
                        size_t __size) ;
 
 
 extern void setlinebuf (FILE *__stream) ;
 
 
 
 
 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, ...) ;
 
 
 extern int vfprintf (FILE *__restrict __s, __const char *__restrict __for=
 mat,
                      __gnuc_va_list __arg) ;
 
 extern int vprintf (__const char *__restrict __format, __gnuc_va_list __a=
 rg)
      ;
 
 extern int vsprintf (char *__restrict __s, __const char *__restrict __for=
 mat,
                      __gnuc_va_list __arg) ;
 
 
 
 extern int snprintf (char *__restrict __s, size_t __maxlen,
                      __const char *__restrict __format, ...)
      __attribute__ ((__format__ (__printf__, 3, 4)));
 
 extern int vsnprintf (char *__restrict __s, size_t __maxlen,
                       __const char *__restrict __format, __gnuc_va_list _=
 _arg)
      __attribute__ ((__format__ (__printf__, 3, 0)));
 
 
 
 
 
 extern int vasprintf (char **__restrict __ptr, __const char *__restrict _=
 _f,
                       __gnuc_va_list __arg)
      __attribute__ ((__format__ (__printf__, 2, 0)));
 extern int __asprintf (char **__restrict __ptr,
                        __const char *__restrict __fmt, ...)
      __attribute__ ((__format__ (__printf__, 2, 3)));
 extern int asprintf (char **__restrict __ptr,
                      __const char *__restrict __fmt, ...)
      __attribute__ ((__format__ (__printf__, 2, 3)));
 
 
 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, ...) ;
 
 extern int scanf (__const char *__restrict __format, ...) ;
 
 extern int sscanf (__const char *__restrict __s,
                    __const char *__restrict __format, ...) ;
 
 
 
 extern int vfscanf (FILE *__restrict __s, __const char *__restrict __form=
 at,
                     __gnuc_va_list __arg)
      __attribute__ ((__format__ (__scanf__, 2, 0)));
 
 
 extern int vscanf (__const char *__restrict __format, __gnuc_va_list __ar=
 g)
      __attribute__ ((__format__ (__scanf__, 1, 0)));
 
 
 extern int vsscanf (__const char *__restrict __s,
                     __const char *__restrict __format, __gnuc_va_list __a=
 rg)
      __attribute__ ((__format__ (__scanf__, 2, 0)));
 
 
 
 
 extern int fgetc (FILE *__stream) ;
 extern int getc (FILE *__stream) ;
 
 
 extern int getchar (void) ;
 
 
 
 
 
 
 
 extern int getc_unlocked (FILE *__stream) ;
 extern int getchar_unlocked (void) ;
 
 
 
 
 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) ;
 
 
 
 
 
 
 
 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 __str=
 eam)
      ;
 
 
 
 extern char *fgets_unlocked (char *__restrict __s, int __n,
                              FILE *__restrict __stream) ;
 
 
 
 
 extern char *gets (char *__s) ;
 # 426 "/usr/include/stdio.h" 3
 extern __ssize_t __getdelim (char **__restrict __lineptr,
                                size_t *__restrict __n, int __delimiter,
                                FILE *__restrict __stream) ;
 extern __ssize_t getdelim (char **__restrict __lineptr,
                              size_t *__restrict __n, int __delimiter,
                              FILE *__restrict __stream) ;
 
 
 extern __ssize_t getline (char **__restrict __lineptr,
                             size_t *__restrict __n,
                             FILE *__restrict __stream) ;
 
 
 
 
 extern int fputs (__const char *__restrict __s, FILE *__restrict __stream=
 )
      ;
 
 
 
 extern int fputs_unlocked (__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) ;
 
 extern size_t fwrite (__const void *__restrict __ptr, size_t __size,
                       size_t __n, FILE *__restrict __s) ;
 
 
 
 extern size_t fread_unlocked (void *__restrict __ptr, size_t __size,
                               size_t __n, FILE *__restrict __stream) ;
 extern size_t fwrite_unlocked (__const void *__restrict __ptr, size_t __s=
 ize,
                                size_t __n, FILE *__restrict __stream) ;
 
 
 
 
 extern int fseek (FILE *__stream, long int __off, int __whence) ;
 
 extern long int ftell (FILE *__stream) ;
 
 extern void rewind (FILE *__stream) ;
 # 489 "/usr/include/stdio.h" 3
 extern int fseeko (FILE *__stream, __off_t __off, int __whence) ;
 
 extern __off_t ftello (FILE *__stream) ;
 
 
 
 extern int fgetpos (FILE *__restrict __stream, fpos_t *__restrict __pos)
      ;
 
 extern int fsetpos (FILE *__stream, __const fpos_t *__pos) ;
 # 523 "/usr/include/stdio.h" 3
 extern int fseeko64 (FILE *__stream, __off64_t __off, int __whence) ;
 extern __off64_t ftello64 (FILE *__stream) ;
 extern int fgetpos64 (FILE *__restrict __stream, fpos64_t *__restrict __p=
 os)
      ;
 extern int fsetpos64 (FILE *__stream, __const fpos64_t *__pos) ;
 
 
 
 extern void clearerr (FILE *__stream) ;
 
 extern int feof (FILE *__stream) ;
 
 extern int ferror (FILE *__stream) ;
 
 
 
 extern void clearerr_unlocked (FILE *__stream) ;
 extern int feof_unlocked (FILE *__stream) ;
 extern int ferror_unlocked (FILE *__stream) ;
 
 
 
 
 extern void perror (__const char *__s) ;
 
 
 
 
 
 # 1 "/usr/include/bits/sys_errlist.h" 1 3
 # 27 "/usr/include/bits/sys_errlist.h" 3
 extern int sys_nerr;
 extern __const char *__const sys_errlist[];
 
 
 extern int _sys_nerr;
 extern __const char *__const _sys_errlist[];
 # 553 "/usr/include/stdio.h" 2 3
 
 
 
 
 extern int fileno (FILE *__stream) ;
 
 
 
 
 extern int fileno_unlocked (FILE *__stream) ;
 
 
 
 
 
 
 extern FILE *popen (__const char *__command, __const char *__modes) ;
 
 
 extern int pclose (FILE *__stream) ;
 
 
 
 
 
 extern char *ctermid (char *__s) ;
 
 
 
 
 
 extern char *cuserid (char *__s) ;
 
 
 
 
 struct obstack;
 
 
 extern int obstack_printf (struct obstack *__restrict __obstack,
                            __const char *__restrict __format, ...) ;
 extern int obstack_vprintf (struct obstack *__restrict __obstack,
                             __const char *__restrict __format,
                             __gnuc_va_list __args) ;
 
 
 
 
 
 
 
 extern void flockfile (FILE *__stream) ;
 
 
 
 extern int ftrylockfile (FILE *__stream) ;
 
 
 extern void funlockfile (FILE *__stream) ;
 # 625 "/usr/include/stdio.h" 3
 # 1 "/usr/include/bits/stdio.h" 1 3
 # 33 "/usr/include/bits/stdio.h" 3
 extern __inline int
 vprintf (__const char *__restrict __fmt, __gnuc_va_list __arg)
 {
   return vfprintf (stdout, __fmt, __arg);
 }
 
 
 extern __inline int
 getchar (void)
 {
   return _IO_getc (stdin);
 }
 
 
 
 
 extern __inline int
 getc_unlocked (FILE *__fp)
 {
   return ((__fp)->_IO_read_ptr >=3D (__fp)->_IO_read_end ? __uflow (__fp)=
  : *(unsigned char *) (__fp)->_IO_read_ptr++);
 }
 
 
 extern __inline int
 getchar_unlocked (void)
 {
   return ((stdin)->_IO_read_ptr >=3D (stdin)->_IO_read_end ? __uflow (std=
 in) : *(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 (((__stream)->_IO_write_ptr >=3D (__stream)->_IO_write_end) ? __=
 overflow (__stream, (unsigned char) (__c)) : (unsigned char) (*(__stream)=
 ->_IO_write_ptr++ =3D (__c)));
 }
 
 
 
 
 
 extern __inline int
 putc_unlocked (int __c, FILE *__stream)
 {
   return (((__stream)->_IO_write_ptr >=3D (__stream)->_IO_write_end) ? __=
 overflow (__stream, (unsigned char) (__c)) : (unsigned char) (*(__stream)=
 ->_IO_write_ptr++ =3D (__c)));
 }
 
 
 extern __inline int
 putchar_unlocked (int __c)
 {
   return (((stdout)->_IO_write_ptr >=3D (stdout)->_IO_write_end) ? __over=
 flow (stdout, (unsigned char) (__c)) : (unsigned char) (*(stdout)->_IO_wr=
 ite_ptr++ =3D (__c)));
 }
 
 
 
 
 
 extern __inline __ssize_t
 getline (char **__lineptr, size_t *__n, FILE *__stream)
 {
   return __getdelim (__lineptr, __n, '\n', __stream);
 }
 
 
 
 
 
 extern __inline int
 feof_unlocked (FILE *__stream)
 {
   return (((__stream)->_flags & 0x10) !=3D 0);
 }
 
 
 extern __inline int
 ferror_unlocked (FILE *__stream)
 {
   return (((__stream)->_flags & 0x20) !=3D 0);
 }
 # 626 "/usr/include/stdio.h" 2 3
 
 
 
 # 24 "../../binutils-2.13.1/gas/config/tc-ppc.c" 2
 # 1 "../../binutils-2.13.1/gas/as.h" 1
 # 40 "../../binutils-2.13.1/gas/as.h"
 # 1 "config.h" 1
 # 41 "../../binutils-2.13.1/gas/as.h" 2
 # 1 "../../binutils-2.13.1/include/bin-bugs.h" 1
 # 42 "../../binutils-2.13.1/gas/as.h" 2
 # 77 "../../binutils-2.13.1/gas/as.h"
 # 1 "/usr/include/string.h" 1 3
 # 28 "/usr/include/string.h" 3
 
 
 
 
 
 # 1 "/usr/lib/gcc-lib/i486-suse-linux/3.2/include/stddef.h" 1 3
 # 34 "/usr/include/string.h" 2 3
 
 
 
 extern void *memcpy (void *__restrict __dest,
                      __const void *__restrict __src, size_t __n) ;
 
 
 extern void *memmove (void *__dest, __const void *__src, size_t __n)
      ;
 
 
 
 
 
 extern void *memccpy (void *__restrict __dest, __const void *__restrict _=
 _src,
                       int __c, size_t __n)
      ;
 
 
 
 
 extern void *memset (void *__s, int __c, size_t __n) ;
 
 
 extern int memcmp (__const void *__s1, __const void *__s2, size_t __n)
      __attribute__ ((__pure__));
 
 
 extern void *memchr (__const void *__s, int __c, size_t __n)
       __attribute__ ((__pure__));
 
 
 
 
 extern void *rawmemchr (__const void *__s, int __c) __attribute__ ((__pur=
 e__));
 
 
 extern void *memrchr (__const void *__s, int __c, size_t __n)
       __attribute__ ((__pure__));
 
 
 
 
 extern char *strcpy (char *__restrict __dest, __const char *__restrict __=
 src)
      ;
 
 extern char *strncpy (char *__restrict __dest,
                       __const char *__restrict __src, size_t __n) ;
 
 
 extern char *strcat (char *__restrict __dest, __const char *__restrict __=
 src)
      ;
 
 extern char *strncat (char *__restrict __dest, __const char *__restrict _=
 _src,
                       size_t __n) ;
 
 
 extern int strcmp (__const char *__s1, __const char *__s2)
      __attribute__ ((__pure__));
 
 extern int strncmp (__const char *__s1, __const char *__s2, size_t __n)
      __attribute__ ((__pure__));
 
 
 extern int strcoll (__const char *__s1, __const char *__s2)
      __attribute__ ((__pure__));
 
 extern size_t strxfrm (char *__restrict __dest,
                        __const char *__restrict __src, size_t __n) ;
 
 
 
 
 
 # 1 "/usr/include/xlocale.h" 1 3
 # 28 "/usr/include/xlocale.h" 3
 typedef struct __locale_struct
 {
 
   struct locale_data *__locales[13];
 
 
   const unsigned short int *__ctype_b;
   const int *__ctype_tolower;
   const int *__ctype_toupper;
 } *__locale_t;
 # 109 "/usr/include/string.h" 2 3
 
 
 extern int __strcoll_l (__const char *__s1, __const char *__s2, __locale_=
 t __l)
      __attribute__ ((__pure__));
 
 extern size_t __strxfrm_l (char *__dest, __const char *__src, size_t __n,
                            __locale_t __l) ;
 
 
 
 
 extern char *strdup (__const char *__s) __attribute__ ((__malloc__));
 
 
 
 
 
 
 extern char *strndup (__const char *__string, size_t __n)
      __attribute__ ((__malloc__));
 # 155 "/usr/include/string.h" 3
 extern char *strchr (__const char *__s, int __c) __attribute__ ((__pure__=
 ));
 
 extern char *strrchr (__const char *__s, int __c) __attribute__ ((__pure_=
 _));
 
 
 
 
 extern char *strchrnul (__const char *__s, int __c) __attribute__ ((__pur=
 e__));
 
 
 
 
 extern size_t strcspn (__const char *__s, __const char *__reject)
      __attribute__ ((__pure__));
 
 
 extern size_t strspn (__const char *__s, __const char *__accept)
      __attribute__ ((__pure__));
 
 extern char *strpbrk (__const char *__s, __const char *__accept)
      __attribute__ ((__pure__));
 
 extern char *strstr (__const char *__haystack, __const char *__needle)
      __attribute__ ((__pure__));
 
 
 
 extern char *strcasestr (__const char *__haystack, __const char *__needle=
 )
      __attribute__ ((__pure__));
 
 
 
 extern char *strtok (char *__restrict __s, __const char *__restrict __del=
 im)
      ;
 
 
 
 extern char *__strtok_r (char *__restrict __s,
                          __const char *__restrict __delim,
                          char **__restrict __save_ptr) ;
 
 extern char *strtok_r (char *__restrict __s, __const char *__restrict __d=
 elim,
                        char **__restrict __save_ptr) ;
 
 
 
 
 
 
 extern void *memmem (__const void *__haystack, size_t __haystacklen,
                      __const void *__needle, size_t __needlelen)
      __attribute__ ((__pure__));
 
 
 
 extern void *__mempcpy (void *__restrict __dest,
                         __const void *__restrict __src, size_t __n) ;
 extern void *mempcpy (void *__restrict __dest,
                       __const void *__restrict __src, size_t __n) ;
 
 
 
 
 extern size_t strlen (__const char *__s) __attribute__ ((__pure__));
 
 
 
 
 extern size_t strnlen (__const char *__string, size_t __maxlen)
      __attribute__ ((__pure__));
 
 
 
 
 extern char *strerror (int __errnum) ;
 
 
 
 extern char *strerror_r (int __errnum, char *__buf, size_t __buflen) ;
 
 
 
 
 extern void __bzero (void *__s, size_t __n) ;
 
 
 
 extern void bcopy (__const void *__src, void *__dest, size_t __n) ;
 
 
 extern void bzero (void *__s, size_t __n) ;
 
 
 extern int bcmp (__const void *__s1, __const void *__s2, size_t __n)
      __attribute__ ((__pure__));
 
 
 extern char *index (__const char *__s, int __c) __attribute__ ((__pure__)=
 );
 
 
 extern char *rindex (__const char *__s, int __c) __attribute__ ((__pure__=
 ));
 
 
 
 extern int ffs (int __i) __attribute__ ((__const__));
 
 
 
 
 extern int ffsl (long int __l) __attribute__ ((__const__));
 
 __extension__ extern int ffsll (long long int __ll)
      __attribute__ ((__const__));
 
 
 
 
 extern int strcasecmp (__const char *__s1, __const char *__s2)
      __attribute__ ((__pure__));
 
 
 extern int strncasecmp (__const char *__s1, __const char *__s2, size_t __=
 n)
      __attribute__ ((__pure__));
 
 
 
 
 
 extern int __strcasecmp_l (__const char *__s1, __const char *__s2,
                            __locale_t __loc) __attribute__ ((__pure__));
 
 extern int __strncasecmp_l (__const char *__s1, __const char *__s2,
                             size_t __n, __locale_t __loc)
      __attribute__ ((__pure__));
 
 
 
 
 
 extern char *strsep (char **__restrict __stringp,
                      __const char *__restrict __delim) ;
 
 
 
 
 extern int strverscmp (__const char *__s1, __const char *__s2)
      __attribute__ ((__pure__));
 
 
 extern char *strsignal (int __sig) ;
 
 
 extern char *__stpcpy (char *__restrict __dest, __const char *__restrict =
 __src)
      ;
 extern char *stpcpy (char *__restrict __dest, __const char *__restrict __=
 src)
      ;
 
 
 
 extern char *__stpncpy (char *__restrict __dest,
                         __const char *__restrict __src, size_t __n) ;
 extern char *stpncpy (char *__restrict __dest,
                       __const char *__restrict __src, size_t __n) ;
 
 
 extern char *strfry (char *__string) ;
 
 
 extern void *memfrob (void *__s, size_t __n) ;
 
 
 
 
 
 
 extern char *basename (__const char *__filename) ;
 # 357 "/usr/include/string.h" 3
 # 1 "/usr/include/bits/string.h" 1 3
 # 358 "/usr/include/string.h" 2 3
 
 
 # 1 "/usr/include/bits/string2.h" 1 3
 # 52 "/usr/include/bits/string2.h" 3
 # 1 "/usr/include/endian.h" 1 3
 # 37 "/usr/include/endian.h" 3
 # 1 "/usr/include/bits/endian.h" 1 3
 # 38 "/usr/include/endian.h" 2 3
 # 53 "/usr/include/bits/string2.h" 2 3
 # 387 "/usr/include/bits/string2.h" 3
 extern void *__rawmemchr (const void *__s, int __c);
 # 917 "/usr/include/bits/string2.h" 3
 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 =3D 0;
   while (__s[__result] !=3D '\0' && __s[__result] !=3D __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 =3D 0;
   while (__s[__result] !=3D '\0' && __s[__result] !=3D __reject1
          && __s[__result] !=3D __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 =3D 0;
   while (__s[__result] !=3D '\0' && __s[__result] !=3D __reject1
          && __s[__result] !=3D __reject2 && __s[__result] !=3D __reject3)
     ++__result;
   return __result;
 }
 # 974 "/usr/include/bits/string2.h" 3
 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 =3D 0;
 
   while (__s[__result] =3D=3D __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 =3D 0;
 
   while (__s[__result] =3D=3D __accept1 || __s[__result] =3D=3D __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 __accep=
 t3)
 {
   register size_t __result =3D 0;
 
   while (__s[__result] =3D=3D __accept1 || __s[__result] =3D=3D __accept2
          || __s[__result] =3D=3D __accept3)
     ++__result;
   return __result;
 }
 # 1031 "/usr/include/bits/string2.h" 3
 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 !=3D '\0' && *__s !=3D __accept1 && *__s !=3D __accept2)
     ++__s;
   return *__s =3D=3D '\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 !=3D '\0' && *__s !=3D __accept1 && *__s !=3D __accept2
          && *__s !=3D __accept3)
     ++__s;
   return *__s =3D=3D '\0' ? ((void *)0) : (char *) (size_t) __s;
 }
 # 1083 "/usr/include/bits/string2.h" 3
 extern __inline char *__strtok_r_1c (char *__s, char __sep, char **__next=
 p);
 extern __inline char *
 __strtok_r_1c (char *__s, char __sep, char **__nextp)
 {
   char *__result;
   if (__s =3D=3D ((void *)0))
     __s =3D *__nextp;
   while (*__s =3D=3D __sep)
     ++__s;
   __result =3D ((void *)0);
   if (*__s !=3D '\0')
     {
       __result =3D __s++;
       while (*__s !=3D '\0')
         if (*__s++ =3D=3D __sep)
           {
             __s[-1] =3D '\0';
             break;
           }
       *__nextp =3D __s;
     }
   return __result;
 }
 # 1115 "/usr/include/bits/string2.h" 3
 extern char *__strsep_g (char **__stringp, __const char *__delim);
 # 1133 "/usr/include/bits/string2.h" 3
 extern __inline char *__strsep_1c (char **__s, char __reject);
 extern __inline char *
 __strsep_1c (char **__s, char __reject)
 {
   register char *__retval =3D *__s;
   if (__retval !=3D ((void *)0) && (*__s =3D (__extension__ (__builtin_co=
 nstant_p (__reject) && (__reject) =3D=3D '\0' ? (char *) __rawmemchr (__r=
 etval, __reject) : strchr (__retval, __reject)))) !=3D ((void *)0))
     *(*__s)++ =3D '\0';
   return __retval;
 }
 
 extern __inline char *__strsep_2c (char **__s, char __reject1, char __rej=
 ect2);
 extern __inline char *
 __strsep_2c (char **__s, char __reject1, char __reject2)
 {
   register char *__retval =3D *__s;
   if (__retval !=3D ((void *)0))
     {
       register char *__cp =3D __retval;
       while (1)
         {
           if (*__cp =3D=3D '\0')
             {
               __cp =3D ((void *)0);
           break;
             }
           if (*__cp =3D=3D __reject1 || *__cp =3D=3D __reject2)
             {
               *__cp++ =3D '\0';
               break;
             }
           ++__cp;
         }
       *__s =3D __cp;
     }
   return __retval;
 }
 
 extern __inline char *__strsep_3c (char **__s, char __reject1, char __rej=
 ect2,
                                    char __reject3);
 extern __inline char *
 __strsep_3c (char **__s, char __reject1, char __reject2, char __reject3)
 {
   register char *__retval =3D *__s;
   if (__retval !=3D ((void *)0))
     {
       register char *__cp =3D __retval;
       while (1)
         {
           if (*__cp =3D=3D '\0')
             {
               __cp =3D ((void *)0);
           break;
             }
           if (*__cp =3D=3D __reject1 || *__cp =3D=3D __reject2 || *__cp =3D=
 =3D __reject3)
             {
               *__cp++ =3D '\0';
               break;
             }
           ++__cp;
         }
       *__s =3D __cp;
     }
   return __retval;
 }
 # 1209 "/usr/include/bits/string2.h" 3
 # 1 "/usr/include/stdlib.h" 1 3
 # 33 "/usr/include/stdlib.h" 3
 # 1 "/usr/lib/gcc-lib/i486-suse-linux/3.2/include/stddef.h" 1 3
 # 34 "/usr/include/stdlib.h" 2 3
 
 
 # 527 "/usr/include/stdlib.h" 3
 extern void *malloc (size_t __size) __attribute__ ((__malloc__));
 
 extern void *calloc (size_t __nmemb, size_t __size)
      __attribute__ ((__malloc__));
 # 864 "/usr/include/stdlib.h" 3
 
 # 1210 "/usr/include/bits/string2.h" 2 3
 
 
 
 
 extern char *__strdup (__const char *__string) __attribute__ ((__malloc__=
 ));
 # 1233 "/usr/include/bits/string2.h" 3
 extern char *__strndup (__const char *__string, size_t __n)
      __attribute__ ((__malloc__));
 # 361 "/usr/include/string.h" 2 3
 
 
 
 
 # 78 "../../binutils-2.13.1/gas/as.h" 2
 
 
 
 
 
 
 # 1 "/usr/include/stdlib.h" 1 3
 # 33 "/usr/include/stdlib.h" 3
 # 1 "/usr/lib/gcc-lib/i486-suse-linux/3.2/include/stddef.h" 1 3
 # 34 "/usr/include/stdlib.h" 2 3
 
 
 
 
 
 
 
 
 # 1 "/usr/include/bits/waitflags.h" 1 3
 # 43 "/usr/include/stdlib.h" 2 3
 # 1 "/usr/include/bits/waitstatus.h" 1 3
 # 65 "/usr/include/bits/waitstatus.h" 3
 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
 # 68 "/usr/include/stdlib.h" 3
 typedef union
   {
     union wait *__uptr;
     int *__iptr;
   } __WAIT_STATUS __attribute__ ((__transparent_union__));
 # 94 "/usr/include/stdlib.h" 3
 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;
 # 133 "/usr/include/stdlib.h" 3
 extern size_t __ctype_get_mb_cur_max (void) ;
 
 
 
 extern double atof (__const char *__nptr) __attribute__ ((__pure__));
 
 extern int atoi (__const char *__nptr) __attribute__ ((__pure__));
 
 extern long int atol (__const char *__nptr) __attribute__ ((__pure__));
 
 
 
 __extension__ extern long long int atoll (__const char *__nptr)
      __attribute__ ((__pure__));
 
 
 
 extern double strtod (__const char *__restrict __nptr,
                       char **__restrict __endptr) ;
 
 
 
 extern float strtof (__const char *__restrict __nptr,
                      char **__restrict __endptr) ;
 
 extern long double strtold (__const char *__restrict __nptr,
                             char **__restrict __endptr) ;
 
 
 
 extern long int strtol (__const char *__restrict __nptr,
                         char **__restrict __endptr, int __base) ;
 
 extern unsigned long int strtoul (__const char *__restrict __nptr,
                                   char **__restrict __endptr, int __base)
      ;
 
 
 
 __extension__
 extern long long int strtoq (__const char *__restrict __nptr,
                              char **__restrict __endptr, int __base) ;
 
 __extension__
 extern unsigned long long int strtouq (__const char *__restrict __nptr,
                                        char **__restrict __endptr, int __=
 base)
      ;
 
 
 
 
 
 
 __extension__
 extern long long int strtoll (__const char *__restrict __nptr,
                               char **__restrict __endptr, int __base) ;
 
 __extension__
 extern unsigned long long int strtoull (__const char *__restrict __nptr,
                                         char **__restrict __endptr, int _=
 _base)
      ;
 # 215 "/usr/include/stdlib.h" 3
 extern long int __strtol_l (__const char *__restrict __nptr,
                             char **__restrict __endptr, int __base,
                             __locale_t __loc) ;
 
 extern unsigned long int __strtoul_l (__const char *__restrict __nptr,
                                       char **__restrict __endptr,
                                       int __base, __locale_t __loc) ;
 
 __extension__
 extern long long int __strtoll_l (__const char *__restrict __nptr,
                                   char **__restrict __endptr, int __base,
                                   __locale_t __loc) ;
 
 __extension__
 extern unsigned long long int __strtoull_l (__const char *__restrict __np=
 tr,
                                             char **__restrict __endptr,
                                             int __base, __locale_t __loc)
      ;
 
 extern double __strtod_l (__const char *__restrict __nptr,
                           char **__restrict __endptr, __locale_t __loc)
      ;
 
 extern float __strtof_l (__const char *__restrict __nptr,
                          char **__restrict __endptr, __locale_t __loc) ;
 
 extern long double __strtold_l (__const char *__restrict __nptr,
                                 char **__restrict __endptr,
                                 __locale_t __loc) ;
 
 
 
 
 
 
 extern double __strtod_internal (__const char *__restrict __nptr,
                                  char **__restrict __endptr, int __group)
      ;
 extern float __strtof_internal (__const char *__restrict __nptr,
                                 char **__restrict __endptr, int __group)
      ;
 extern long double __strtold_internal (__const char *__restrict __nptr,
                                        char **__restrict __endptr,
                                        int __group) ;
 
 extern long int __strtol_internal (__const char *__restrict __nptr,
                                    char **__restrict __endptr,
                                    int __base, int __group) ;
 
 
 
 extern unsigned long int __strtoul_internal (__const char *__restrict __n=
 ptr,
                                              char **__restrict __endptr,
                                              int __base, int __group) ;
 
 
 
 
 __extension__
 extern long long int __strtoll_internal (__const char *__restrict __nptr,
                                          char **__restrict __endptr,
                                          int __base, int __group) ;
 
 
 
 __extension__
 extern unsigned long long int __strtoull_internal (__const char *
                                                    __restrict __nptr,
                                                    char **__restrict __en=
 dptr,
                                                    int __base, int __grou=
 p)
      ;
 
 
 
 
 
 
 
 extern __inline double
 strtod (__const char *__restrict __nptr, char **__restrict __endptr)
 {
   return __strtod_internal (__nptr, __endptr, 0);
 }
 extern __inline long int
 strtol (__const char *__restrict __nptr, char **__restrict __endptr,
         int __base)
 {
   return __strtol_internal (__nptr, __endptr, __base, 0);
 }
 extern __inline unsigned long int
 strtoul (__const char *__restrict __nptr, char **__restrict __endptr,
          int __base)
 {
   return __strtoul_internal (__nptr, __endptr, __base, 0);
 }
 
 
 extern __inline float
 strtof (__const char *__restrict __nptr, char **__restrict __endptr)
 {
   return __strtof_internal (__nptr, __endptr, 0);
 }
 extern __inline long double
 strtold (__const char *__restrict __nptr, char **__restrict __endptr)
 {
   return __strtold_internal (__nptr, __endptr, 0);
 }
 
 
 
 __extension__ extern __inline long long int
 strtoq (__const char *__restrict __nptr, char **__restrict __endptr,
         int __base)
 {
   return __strtoll_internal (__nptr, __endptr, __base, 0);
 }
 __extension__ extern __inline unsigned long long int
 strtouq (__const char *__restrict __nptr, char **__restrict __endptr,
          int __base)
 {
   return __strtoull_internal (__nptr, __endptr, __base, 0);
 }
 
 
 
 __extension__ extern __inline long long int
 strtoll (__const char *__restrict __nptr, char **__restrict __endptr,
          int __base)
 {
   return __strtoll_internal (__nptr, __endptr, __base, 0);
 }
 __extension__ extern __inline unsigned long long int
 strtoull (__const char * __restrict __nptr, char **__restrict __endptr,
           int __base)
 {
   return __strtoull_internal (__nptr, __endptr, __base, 0);
 }
 
 
 extern __inline double
 atof (__const char *__nptr)
 {
   return strtod (__nptr, (char **) ((void *)0));
 }
 extern __inline int
 atoi (__const char *__nptr)
 {
   return (int) strtol (__nptr, (char **) ((void *)0), 10);
 }
 extern __inline long int
 atol (__const char *__nptr)
 {
   return strtol (__nptr, (char **) ((void *)0), 10);
 }
 
 
 __extension__ extern __inline long long int
 atoll (__const char *__nptr)
 {
   return strtoll (__nptr, (char **) ((void *)0), 10);
 }
 # 384 "/usr/include/stdlib.h" 3
 extern char *l64a (long int __n) ;
 
 
 extern long int a64l (__const char *__s) __attribute__ ((__pure__));
 
 
 # 1 "/usr/include/sys/types.h" 1 3
 # 28 "/usr/include/sys/types.h" 3
 
 
 
 
 
 
 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;
 
 
 
 typedef __ino_t ino_t;
 
 
 
 
 
 
 typedef __ino64_t ino64_t;
 
 
 
 
 typedef __dev_t dev_t;
 
 
 
 
 typedef __gid_t gid_t;
 
 
 
 
 typedef __mode_t mode_t;
 
 
 
 
 typedef __nlink_t nlink_t;
 
 
 
 
 typedef __uid_t uid_t;
 
 
 
 
 
 typedef __off_t off_t;
 
 
 
 
 
 
 typedef __off64_t off64_t;
 
 
 
 
 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;
 # 132 "/usr/include/sys/types.h" 3
 # 1 "/usr/include/time.h" 1 3
 # 59 "/usr/include/time.h" 3
 typedef __clock_t clock_t;
 # 70 "/usr/include/time.h" 3
 typedef __time_t time_t;
 # 82 "/usr/include/time.h" 3
 typedef __clockid_t clockid_t;
 # 94 "/usr/include/time.h" 3
 typedef __timer_t timer_t;
 # 133 "/usr/include/sys/types.h" 2 3
 
 
 
 typedef __useconds_t useconds_t;
 
 
 
 typedef __suseconds_t suseconds_t;
 
 
 
 
 
 # 1 "/usr/lib/gcc-lib/i486-suse-linux/3.2/include/stddef.h" 1 3
 # 147 "/usr/include/sys/types.h" 2 3
 
 
 
 typedef unsigned long int ulong;
 typedef unsigned short int ushort;
 typedef unsigned int uint;
 # 190 "/usr/include/sys/types.h" 3
 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__)));
 # 215 "/usr/include/sys/types.h" 3
 # 1 "/usr/include/sys/select.h" 1 3
 # 31 "/usr/include/sys/select.h" 3
 # 1 "/usr/include/bits/select.h" 1 3
 # 32 "/usr/include/sys/select.h" 2 3
 
 
 # 1 "/usr/include/bits/sigset.h" 1 3
 # 23 "/usr/include/bits/sigset.h" 3
 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
 
 
 
 typedef __sigset_t sigset_t;
 
 
 
 
 
 # 1 "/usr/include/time.h" 1 3
 # 106 "/usr/include/time.h" 3
 struct timespec
   {
     __time_t tv_sec;
     long int tv_nsec;
   };
 # 45 "/usr/include/sys/select.h" 2 3
 
 # 1 "/usr/include/bits/time.h" 1 3
 # 67 "/usr/include/bits/time.h" 3
 struct timeval
   {
     __time_t tv_sec;
     __suseconds_t tv_usec;
   };
 # 47 "/usr/include/sys/select.h" 2 3
 # 55 "/usr/include/sys/select.h" 3
 typedef long int __fd_mask;
 
 
 
 
 
 
 
 typedef struct
   {
 
 
 
     __fd_mask fds_bits[1024 / (8 * sizeof (__fd_mask))];
 
 
 
 
 
   } fd_set;
 
 
 
 
 
 
 typedef __fd_mask fd_mask;
 # 95 "/usr/include/sys/select.h" 3
 
 
 
 
 
 
 
 extern int select (int __nfds, fd_set *__restrict __readfds,
                    fd_set *__restrict __writefds,
                    fd_set *__restrict __exceptfds,
                    struct timeval *__restrict __timeout) ;
 
 
 
 
 
 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) ;
 
 
 
 # 216 "/usr/include/sys/types.h" 2 3
 
 
 # 1 "/usr/include/sys/sysmacros.h" 1 3
 # 219 "/usr/include/sys/types.h" 2 3
 
 
 
 
 typedef __blksize_t blksize_t;
 
 
 
 
 
 
 typedef __blkcnt_t blkcnt_t;
 
 
 
 typedef __fsblkcnt_t fsblkcnt_t;
 
 
 
 typedef __fsfilcnt_t fsfilcnt_t;
 # 257 "/usr/include/sys/types.h" 3
 typedef __blkcnt64_t blkcnt64_t;
 typedef __fsblkcnt64_t fsblkcnt64_t;
 typedef __fsfilcnt64_t fsfilcnt64_t;
 
 
 
 # 391 "/usr/include/stdlib.h" 2 3
 
 
 
 
 
 
 extern long int random (void) ;
 
 
 extern void srandom (unsigned int __seed) ;
 
 
 
 
 
 extern char *initstate (unsigned int __seed, char *__statebuf,
                         size_t __statelen) ;
 
 
 
 extern char *setstate (char *__statebuf) ;
 
 
 
 
 
 
 
 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) ;
 
 extern int srandom_r (unsigned int __seed, struct random_data *__buf) ;
 
 extern int initstate_r (unsigned int __seed, char *__restrict __statebuf,
                         size_t __statelen,
                         struct random_data *__restrict __buf) ;
 
 extern int setstate_r (char *__restrict __statebuf,
                        struct random_data *__restrict __buf) ;
 
 
 
 
 
 extern int rand (void) ;
 
 extern void srand (unsigned int __seed) ;
 
 
 
 extern int rand_r (unsigned int *__seed) ;
 
 
 
 
 
 
 
 extern double drand48 (void) ;
 extern double erand48 (unsigned short int __xsubi[3]) ;
 
 
 extern long int lrand48 (void) ;
 extern long int nrand48 (unsigned short int __xsubi[3]) ;
 
 
 extern long int mrand48 (void) ;
 extern long int jrand48 (unsigned short int __xsubi[3]) ;
 
 
 extern void srand48 (long int __seedval) ;
 extern unsigned short int *seed48 (unsigned short int __seed16v[3]) ;
 extern void lcong48 (unsigned short int __param[7]) ;
 
 
 
 
 
 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) ;
 extern int erand48_r (unsigned short int __xsubi[3],
                       struct drand48_data *__restrict __buffer,
                       double *__restrict __result) ;
 
 
 extern int lrand48_r (struct drand48_data *__restrict __buffer,
                       long int *__restrict __result) ;
 extern int nrand48_r (unsigned short int __xsubi[3],
                       struct drand48_data *__restrict __buffer,
                       long int *__restrict __result) ;
 
 
 extern int mrand48_r (struct drand48_data *__restrict __buffer,
                       long int *__restrict __result) ;
 extern int jrand48_r (unsigned short int __xsubi[3],
                       struct drand48_data *__restrict __buffer,
                       long int *__restrict __result) ;
 
 
 extern int srand48_r (long int __seedval, struct drand48_data *__buffer)
      ;
 
 extern int seed48_r (unsigned short int __seed16v[3],
                      struct drand48_data *__buffer) ;
 
 extern int lcong48_r (unsigned short int __param[7],
                       struct drand48_data *__buffer) ;
 # 536 "/usr/include/stdlib.h" 3
 extern void *realloc (void *__ptr, size_t __size) __attribute__ ((__mallo=
 c__));
 
 extern void free (void *__ptr) ;
 
 
 
 extern void cfree (void *__ptr) ;
 
 
 
 # 1 "/usr/include/alloca.h" 1 3
 # 25 "/usr/include/alloca.h" 3
 # 1 "/usr/lib/gcc-lib/i486-suse-linux/3.2/include/stddef.h" 1 3
 # 26 "/usr/include/alloca.h" 2 3
 
 
 
 
 
 
 
 extern void *alloca (size_t __size) ;
 
 
 
 
 
 
 # 547 "/usr/include/stdlib.h" 2 3
 
 
 
 
 extern void *valloc (size_t __size) __attribute__ ((__malloc__));
 
 
 
 
 extern int posix_memalign (void **__memptr, size_t __alignment, size_t __=
 size)
      __attribute__ ((__malloc__));
 
 
 
 extern void abort (void) __attribute__ ((__noreturn__));
 
 
 
 extern int atexit (void (*__func) (void)) ;
 
 
 
 
 extern int on_exit (void (*__func) (int __status, void *__arg), void *__a=
 rg)
      ;
 
 
 
 
 
 extern void exit (int __status) __attribute__ ((__noreturn__));
 
 
 
 
 extern void _Exit (int __status) __attribute__ ((__noreturn__));
 
 
 
 
 extern char *getenv (__const char *__name) ;
 
 
 
 extern char *__secure_getenv (__const char *__name) ;
 
 
 
 
 
 extern int putenv (char *__string) ;
 
 
 
 
 
 extern int setenv (__const char *__name, __const char *__value, int __rep=
 lace)
      ;
 
 
 extern int unsetenv (__const char *__name) ;
 
 
 
 
 
 
 extern int clearenv (void) ;
 # 623 "/usr/include/stdlib.h" 3
 extern char *mktemp (char *__template) ;
 
 
 
 
 
 
 
 extern int mkstemp (char *__template) ;
 # 640 "/usr/include/stdlib.h" 3
 extern int mkstemp64 (char *__template) ;
 # 650 "/usr/include/stdlib.h" 3
 extern char *mkdtemp (char *__template) ;
 
 
 
 
 extern int system (__const char *__command) ;
 
 
 
 
 
 
 extern char *canonicalize_file_name (__const char *__name) ;
 # 672 "/usr/include/stdlib.h" 3
 extern char *realpath (__const char *__restrict __name,
                        char *__restrict __resolved) ;
 
 
 
 
 
 
 typedef int (*__compar_fn_t) (__const void *, __const void *);
 
 
 typedef __compar_fn_t comparison_fn_t;
 
 
 
 
 
 extern void *bsearch (__const void *__key, __const void *__base,
                       size_t __nmemb, size_t __size, __compar_fn_t __comp=
 ar);
 
 
 
 extern void qsort (void *__base, size_t __nmemb, size_t __size,
                    __compar_fn_t __compar);
 
 
 
 extern int abs (int __x) __attribute__ ((__const__));
 extern long int labs (long int __x) __attribute__ ((__const__));
 
 __extension__ extern long long int llabs (long long int __x)
      __attribute__ ((__const__));
 
 
 
 
 
 
 extern div_t div (int __numer, int __denom)
      __attribute__ ((__const__));
 extern ldiv_t ldiv (long int __numer, long int __denom)
      __attribute__ ((__const__));
 
 __extension__ extern lldiv_t lldiv (long long int __numer,
                                     long long int __denom)
      __attribute__ ((__const__));
 # 728 "/usr/include/stdlib.h" 3
 extern char *ecvt (double __value, int __ndigit, int *__restrict __decpt,
                    int *__restrict __sign) ;
 
 
 
 
 extern char *fcvt (double __value, int __ndigit, int *__restrict __decpt,
                    int *__restrict __sign) ;
 
 
 
 
 extern char *gcvt (double __value, int __ndigit, char *__buf) ;
 
 
 
 
 extern char *qecvt (long double __value, int __ndigit,
                     int *__restrict __decpt, int *__restrict __sign) ;
 extern char *qfcvt (long double __value, int __ndigit,
                     int *__restrict __decpt, int *__restrict __sign) ;
 extern char *qgcvt (long double __value, int __ndigit, char *__buf) ;
 
 
 
 
 extern int ecvt_r (double __value, int __ndigit, int *__restrict __decpt,
                    int *__restrict __sign, char *__restrict __buf,
                    size_t __len) ;
 extern int fcvt_r (double __value, int __ndigit, int *__restrict __decpt,
                    int *__restrict __sign, char *__restrict __buf,
                    size_t __len) ;
 
 extern int qecvt_r (long double __value, int __ndigit,
                     int *__restrict __decpt, int *__restrict __sign,
                     char *__restrict __buf, size_t __len) ;
 extern int qfcvt_r (long double __value, int __ndigit,
                     int *__restrict __decpt, int *__restrict __sign,
                     char *__restrict __buf, size_t __len) ;
 
 
 
 
 
 
 extern int mblen (__const char *__s, size_t __n) ;
 
 
 extern int mbtowc (wchar_t *__restrict __pwc,
                    __const char *__restrict __s, size_t __n) ;
 
 
 extern int wctomb (char *__s, wchar_t __wchar) ;
 
 
 
 extern size_t mbstowcs (wchar_t *__restrict __pwcs,
                         __const char *__restrict __s, size_t __n) ;
 
 extern size_t wcstombs (char *__restrict __s,
                         __const wchar_t *__restrict __pwcs, size_t __n)
      ;
 
 
 
 
 
 
 
 extern int rpmatch (__const char *__response) ;
 # 808 "/usr/include/stdlib.h" 3
 extern int getsubopt (char **__restrict __optionp,
                       char *__const *__restrict __tokens,
                       char **__restrict __valuep) ;
 
 
 
 
 
 extern void setkey (__const char *__key) ;
 
 
 
 
 
 
 
 extern int posix_openpt (int __oflag) ;
 
 
 
 
 
 
 
 extern int grantpt (int __fd) ;
 
 
 
 extern int unlockpt (int __fd) ;
 
 
 
 
 extern char *ptsname (int __fd) ;
 
 
 
 
 
 
 extern int ptsname_r (int __fd, char *__buf, size_t __buflen) ;
 
 
 extern int getpt (void) ;
 
 
 
 
 
 
 extern int getloadavg (double __loadavg[], int __nelem) ;
 
 
 
 
 
 
 # 85 "../../binutils-2.13.1/gas/as.h" 2
 
 
 # 1 "/usr/include/unistd.h" 1 3
 # 28 "/usr/include/unistd.h" 3
 
 # 175 "/usr/include/unistd.h" 3
 # 1 "/usr/include/bits/posix_opt.h" 1 3
 # 176 "/usr/include/unistd.h" 2 3
 
 
 
 # 1 "/usr/include/bits/environments.h" 1 3
 # 23 "/usr/include/bits/environments.h" 3
 # 1 "/usr/include/bits/wordsize.h" 1 3
 # 24 "/usr/include/bits/environments.h" 2 3
 # 180 "/usr/include/unistd.h" 2 3
 # 199 "/usr/include/unistd.h" 3
 # 1 "/usr/lib/gcc-lib/i486-suse-linux/3.2/include/stddef.h" 1 3
 # 200 "/usr/include/unistd.h" 2 3
 # 240 "/usr/include/unistd.h" 3
 typedef __intptr_t intptr_t;
 
 
 
 
 
 
 typedef __socklen_t socklen_t;
 # 260 "/usr/include/unistd.h" 3
 extern int access (__const char *__name, int __type) ;
 
 
 
 
 extern int euidaccess (__const char *__name, int __type) ;
 # 290 "/usr/include/unistd.h" 3
 extern __off_t lseek (int __fd, __off_t __offset, int __whence) ;
 # 302 "/usr/include/unistd.h" 3
 extern __off64_t lseek64 (int __fd, __off64_t __offset, int __whence) ;
 
 
 
 extern int close (int __fd) ;
 
 
 
 extern ssize_t read (int __fd, void *__buf, size_t __nbytes) ;
 
 
 extern ssize_t write (int __fd, __const void *__buf, size_t __n) ;
 
 
 
 extern ssize_t pread (int __fd, void *__buf, size_t __nbytes, __off_t __o=
 ffset)
      ;
 extern ssize_t pwrite (int __fd, __const void *__buf, size_t __n,
                        __off_t __offset) ;
 # 340 "/usr/include/unistd.h" 3
 extern ssize_t pread64 (int __fd, void *__buf, size_t __nbytes,
                         __off64_t __offset) ;
 
 
 extern ssize_t pwrite64 (int __fd, __const void *__buf, size_t __n,
                          __off64_t __offset) ;
 
 
 
 
 
 
 
 extern int pipe (int __pipedes[2]) ;
 # 362 "/usr/include/unistd.h" 3
 extern unsigned int alarm (unsigned int __seconds) ;
 # 371 "/usr/include/unistd.h" 3
 extern unsigned int sleep (unsigned int __seconds) ;
 
 
 
 
 
 
 extern __useconds_t ualarm (__useconds_t __value, __useconds_t __interval=
 )
      ;
 
 
 
 extern int usleep (__useconds_t __useconds) ;
 
 
 
 
 
 extern int pause (void) ;
 
 
 
 extern int chown (__const char *__file, __uid_t __owner, __gid_t __group)
      ;
 
 
 
 extern int fchown (int __fd, __uid_t __owner, __gid_t __group) ;
 
 
 
 
 extern int lchown (__const char *__file, __uid_t __owner, __gid_t __group=
 )
      ;
 
 
 
 
 extern int chdir (__const char *__path) ;
 
 
 
 extern int fchdir (int __fd) ;
 # 423 "/usr/include/unistd.h" 3
 extern char *getcwd (char *__buf, size_t __size) ;
 
 
 
 
 
 extern char *get_current_dir_name (void) ;
 
 
 
 
 
 
 extern char *getwd (char *__buf) ;
 
 
 
 
 extern int dup (int __fd) ;
 
 
 extern int dup2 (int __fd, int __fd2) ;
 
 
 extern char **__environ;
 
 extern char **environ;
 
 
 
 
 
 extern int execve (__const char *__path, char *__const __argv[],
                    char *__const __envp[]) ;
 
 
 
 
 extern int fexecve (int __fd, char *__const __argv[], char *__const __env=
 p[])
      ;
 
 
 
 
 extern int execv (__const char *__path, char *__const __argv[]) ;
 
 
 
 extern int execle (__const char *__path, __const char *__arg, ...) ;
 
 
 
 extern int execl (__const char *__path, __const char *__arg, ...) ;
 
 
 
 extern int execvp (__const char *__file, char *__const __argv[]) ;
 
 
 
 
 extern int execlp (__const char *__file, __const char *__arg, ...) ;
 
 
 
 
 extern int nice (int __inc) ;
 
 
 
 
 extern void _exit (int __status) __attribute__ ((__noreturn__));
 
 
 
 
 
 # 1 "/usr/include/bits/confname.h" 1 3
 # 25 "/usr/include/bits/confname.h" 3
 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
 
   };
 
 
 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 =3D _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
 
   };
 
 
 
 
 
 enum
   {
     _CS_PATH,
 
 
 
 
     _CS_LFS_CFLAGS =3D 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 =3D 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_V6_WIDTH_RESTRICTED_ENVS
 
   };
 # 501 "/usr/include/unistd.h" 2 3
 
 
 extern long int pathconf (__const char *__path, int __name) ;
 
 
 extern long int fpathconf (int __fd, int __name) ;
 
 
 extern long int sysconf (int __name) __attribute__ ((__const__));
 
 
 
 extern size_t confstr (int __name, char *__buf, size_t __len) ;
 
 
 
 
 extern __pid_t getpid (void) ;
 
 
 extern __pid_t getppid (void) ;
 
 
 
 
 extern __pid_t getpgrp (void) ;
 # 536 "/usr/include/unistd.h" 3
 extern __pid_t __getpgid (__pid_t __pid) ;
 
 extern __pid_t getpgid (__pid_t __pid) ;
 
 
 
 
 
 
 extern int setpgid (__pid_t __pid, __pid_t __pgid) ;
 # 562 "/usr/include/unistd.h" 3
 extern int setpgrp (void) ;
 # 580 "/usr/include/unistd.h" 3
 extern __pid_t setsid (void) ;
 
 
 
 extern __pid_t getsid (__pid_t __pid) ;
 
 
 
 extern __uid_t getuid (void) ;
 
 
 extern __uid_t geteuid (void) ;
 
 
 extern __gid_t getgid (void) ;
 
 
 extern __gid_t getegid (void) ;
 
 
 
 
 extern int getgroups (int __size, __gid_t __list[]) ;
 
 
 
 extern int group_member (__gid_t __gid) ;
 
 
 
 
 
 
 extern int setuid (__uid_t __uid) ;
 
 
 
 
 extern int setreuid (__uid_t __ruid, __uid_t __euid) ;
 
 
 
 
 extern int seteuid (__uid_t __uid) ;
 
 
 
 
 
 
 extern int setgid (__gid_t __gid) ;
 
 
 
 
 extern int setregid (__gid_t __rgid, __gid_t __egid) ;
 
 
 
 
 extern int setegid (__gid_t __gid) ;
 
 
 
 
 
 
 extern __pid_t fork (void) ;
 
 
 
 
 
 
 extern __pid_t vfork (void) ;
 
 
 
 
 
 extern char *ttyname (int __fd) ;
 
 
 
 extern int ttyname_r (int __fd, char *__buf, size_t __buflen) ;
 
 
 
 extern int isatty (int __fd) ;
 
 
 
 
 
 extern int ttyslot (void) ;
 
 
 
 
 extern int link (__const char *__from, __const char *__to) ;
 
 
 
 extern int symlink (__const char *__from, __const char *__to) ;
 
 
 
 
 extern int readlink (__const char *__restrict __path, char *__restrict __=
 buf,
                      size_t __len) ;
 
 
 
 extern int unlink (__const char *__name) ;
 
 
 extern int rmdir (__const char *__path) ;
 
 
 
 extern __pid_t tcgetpgrp (int __fd) ;
 
 
 extern int tcsetpgrp (int __fd, __pid_t __pgrp_id) ;
 
 
 
 extern char *getlogin (void) ;
 
 
 
 
 extern int getlogin_r (char *__name, size_t __name_len) ;
 
 
 
 
 extern int setlogin (__const char *__name) ;
 # 726 "/usr/include/unistd.h" 3
 # 1 "../../binutils-2.13.1/include/getopt.h" 1 3
 # 36 "../../binutils-2.13.1/include/getopt.h" 3
 extern char *optarg;
 # 50 "../../binutils-2.13.1/include/getopt.h" 3
 extern int optind;
 
 
 
 
 extern int opterr;
 
 
 
 extern int optopt;
 # 82 "../../binutils-2.13.1/include/getopt.h" 3
 struct option
 {
 
   const char *name;
 
 
 
 
 
   int has_arg;
   int *flag;
   int val;
 };
 # 113 "../../binutils-2.13.1/include/getopt.h" 3
 extern int getopt (int argc, char *const *argv, const char *shortopts);
 
 
 
 
 
 extern int getopt_long (int argc, char *const *argv, const char *shortopt=
 s,
                         const struct option *longopts, int *longind);
 extern int getopt_long_only (int argc, char *const *argv,
                              const char *shortopts,
                              const struct option *longopts, int *longind)=
 ;
 
 
 extern int _getopt_internal (int argc, char *const *argv,
                              const char *shortopts,
                              const struct option *longopts, int *longind,
                              int long_only);
 # 727 "/usr/include/unistd.h" 2 3
 
 
 
 
 
 
 
 extern int gethostname (char *__name, size_t __len) ;
 
 
 
 
 
 
 extern int sethostname (__const char *__name, size_t __len) ;
 
 
 
 extern int sethostid (long int __id) ;
 
 
 
 
 
 extern int getdomainname (char *__name, size_t __len) ;
 extern int setdomainname (__const char *__name, size_t __len) ;
 
 
 
 
 
 extern int vhangup (void) ;
 
 
 extern int revoke (__const char *__file) ;
 
 
 
 
 
 
 
 extern int profil (unsigned short int *__sample_buffer, size_t __size,
                    size_t __offset, unsigned int __scale) ;
 
 
 
 
 
 extern int acct (__const char *__name) ;
 
 
 
 extern char *getusershell (void) ;
 extern void endusershell (void) ;
 extern void setusershell (void) ;
 
 
 
 
 
 extern int daemon (int __nochdir, int __noclose) ;
 
 
 
 
 
 
 extern int chroot (__const char *__path) ;
 
 
 
 extern char *getpass (__const char *__prompt) ;
 
 
 
 
 
 extern int fsync (int __fd) ;
 
 
 
 
 
 
 extern long int gethostid (void) ;
 
 
 extern void sync (void) ;
 
 
 
 
 extern int getpagesize (void) __attribute__ ((__const__));
 
 
 
 
 extern int truncate (__const char *__file, __off_t __length) ;
 # 836 "/usr/include/unistd.h" 3
 extern int truncate64 (__const char *__file, __off64_t __length) ;
 
 
 
 
 extern int ftruncate (int __fd, __off_t __length) ;
 # 851 "/usr/include/unistd.h" 3
 extern int ftruncate64 (int __fd, __off64_t __length) ;
 
 
 
 
 
 extern int getdtablesize (void) ;
 # 866 "/usr/include/unistd.h" 3
 extern int brk (void *__addr) ;
 
 
 
 
 
 extern void *sbrk (intptr_t __delta) ;
 # 887 "/usr/include/unistd.h" 3
 extern long int syscall (long int __sysno, ...) ;
 # 907 "/usr/include/unistd.h" 3
 extern int lockf (int __fd, int __cmd, __off_t __len) ;
 # 917 "/usr/include/unistd.h" 3
 extern int lockf64 (int __fd, int __cmd, __off64_t __len) ;
 # 938 "/usr/include/unistd.h" 3
 extern int fdatasync (int __fildes) ;
 
 
 
 
 
 
 
 extern char *crypt (__const char *__key, __const char *__salt) ;
 
 
 
 extern void encrypt (char *__block, int __edflag) ;
 
 
 
 
 
 
 extern void swab (__const void *__restrict __from, void *__restrict __to,
                   ssize_t __n) ;
 
 
 
 
 
 
 
 extern char *ctermid (char *__s) ;
 # 983 "/usr/include/unistd.h" 3
 extern int pthread_atfork (void (*__prepare) (void),
                            void (*__parent) (void),
                            void (*__child) (void)) ;
 
 
 
 # 88 "../../binutils-2.13.1/gas/as.h" 2
 # 130 "../../binutils-2.13.1/gas/as.h"
 # 1 "../../binutils-2.13.1/include/ansidecl.h" 1
 # 131 "../../binutils-2.13.1/gas/as.h" 2
 
 # 1 "../bfd/bfd.h" 1
 # 37 "../bfd/bfd.h"
 # 1 "../../binutils-2.13.1/include/symcat.h" 1
 # 38 "../bfd/bfd.h" 2
 # 81 "../bfd/bfd.h"
 typedef struct _bfd bfd;
 # 114 "../bfd/bfd.h"
 typedef enum bfd_boolean {false, true} boolean;
 # 171 "../bfd/bfd.h"
 typedef unsigned long bfd_vma;
 
 
 
 
 
 typedef long bfd_signed_vma;
 
 typedef unsigned long symvalue;
 typedef unsigned long bfd_size_type;
 # 196 "../bfd/bfd.h"
 typedef bfd_signed_vma file_ptr;
 typedef bfd_vma ufile_ptr;
 
 extern void bfd_sprintf_vma (bfd *, char *, bfd_vma);
 extern void bfd_fprintf_vma (bfd *, void *, bfd_vma);
 
 
 
 
 typedef unsigned int flagword;
 typedef unsigned char bfd_byte;
 
 
 
 typedef enum bfd_format
 {
   bfd_unknown =3D 0,
   bfd_object,
   bfd_archive,
   bfd_core,
   bfd_type_end
 }
 bfd_format;
 # 280 "../bfd/bfd.h"
 typedef unsigned long symindex;
 
 
 typedef const struct reloc_howto_struct reloc_howto_type;
 # 302 "../bfd/bfd.h"
 typedef struct carsym
 {
   char *name;
   file_ptr file_offset;
 }
 carsym;
 
 
 
 struct orl
 {
   char **name;
   union
   {
     file_ptr pos;
     bfd *abfd;
   } u;
   int namidx;
 };
 
 
 typedef struct lineno_cache_entry
 {
   unsigned int line_number;
   union
   {
     struct symbol_cache_entry *sym;
     bfd_vma offset;
   } u;
 }
 alent;
 
 
 
 
 
 
 typedef struct sec *sec_ptr;
 # 359 "../bfd/bfd.h"
 typedef struct stat stat_type;
 
 typedef enum bfd_print_symbol
 {
   bfd_print_symbol_name,
   bfd_print_symbol_more,
   bfd_print_symbol_all
 } bfd_print_symbol_type;
 
 
 
 typedef struct _symbol_info
 {
   symvalue value;
   char type;
   const char *name;
   unsigned char stab_type;
   char stab_other;
   short stab_desc;
   const char *stab_name;
 } symbol_info;
 
 
 
 extern const char *bfd_get_stab_name (int);
 
 
 
 
 
 
 struct bfd_hash_entry
 {
 
   struct bfd_hash_entry *next;
 
   const char *string;
 
 
   unsigned long hash;
 };
 
 
 
 struct bfd_hash_table
 {
 
   struct bfd_hash_entry **table;
 
   unsigned int size;
 
 
 
 
 
 
 
   struct bfd_hash_entry *(*newfunc) (struct bfd_hash_entry *, struct bfd_=
 hash_table *, const char *);
 
 
 
 
   void * memory;
 };
 
 
 extern boolean bfd_hash_table_init
   (struct bfd_hash_table *, struct bfd_hash_entry *(*) (struct bfd_hash_e=
 ntry *, struct bfd_hash_table *, const char *));
 
 
 
 
 
 extern boolean bfd_hash_table_init_n
   (struct bfd_hash_table *, struct bfd_hash_entry *(*) (struct bfd_hash_e=
 ntry *, struct bfd_hash_table *, const char *), unsigned int size);
 
 
 
 
 
 
 extern void bfd_hash_table_free (struct bfd_hash_table *);
 
 
 
 
 
 extern struct bfd_hash_entry *bfd_hash_lookup
   (struct bfd_hash_table *, const char *, boolean create, boolean copy);
 
 
 
 extern void bfd_hash_replace
   (struct bfd_hash_table *, struct bfd_hash_entry *old, struct bfd_hash_e=
 ntry *nw);
 
 
 
 extern struct bfd_hash_entry *bfd_hash_newfunc
   (struct bfd_hash_entry *, struct bfd_hash_table *, const char *);
 
 
 
 extern void * bfd_hash_allocate (struct bfd_hash_table *, unsigned int);
 
 
 
 
 
 extern void bfd_hash_traverse (struct bfd_hash_table *, boolean (*) (stru=
 ct bfd_hash_entry *, void *), void * info);
 # 479 "../bfd/bfd.h"
 extern bfd_size_type bfd_bread (void *, bfd_size_type, bfd *);
 extern bfd_size_type bfd_bwrite (const void *, bfd_size_type, bfd *);
 extern int bfd_seek (bfd *, file_ptr, int);
 extern ufile_ptr bfd_tell (bfd *);
 extern int bfd_flush (bfd *);
 extern int bfd_stat (bfd *, struct stat *);
 # 502 "../bfd/bfd.h"
 extern void warn_deprecated
   (const char *, const char *, int, const char *);
 # 541 "../bfd/bfd.h"
 extern boolean bfd_cache_close (bfd *abfd);
 
 
 extern boolean bfd_record_phdr
   (bfd *, unsigned long, boolean, flagword, boolean, bfd_vma, boolean, bo=
 olean, unsigned int, struct sec **);
 
 
 
 
 bfd_vma bfd_getb64 (const unsigned char *);
 bfd_vma bfd_getl64 (const unsigned char *);
 bfd_signed_vma bfd_getb_signed_64 (const unsigned char *);
 bfd_signed_vma bfd_getl_signed_64 (const unsigned char *);
 bfd_vma bfd_getb32 (const unsigned char *);
 bfd_vma bfd_getl32 (const unsigned char *);
 bfd_signed_vma bfd_getb_signed_32 (const unsigned char *);
 bfd_signed_vma bfd_getl_signed_32 (const unsigned char *);
 bfd_vma bfd_getb16 (const unsigned char *);
 bfd_vma bfd_getl16 (const unsigned char *);
 bfd_signed_vma bfd_getb_signed_16 (const unsigned char *);
 bfd_signed_vma bfd_getl_signed_16 (const unsigned char *);
 void bfd_putb64 (bfd_vma, unsigned char *);
 void bfd_putl64 (bfd_vma, unsigned char *);
 void bfd_putb32 (bfd_vma, unsigned char *);
 void bfd_putl32 (bfd_vma, unsigned char *);
 void bfd_putb16 (bfd_vma, unsigned char *);
 void bfd_putl16 (bfd_vma, unsigned char *);
 
 
 
 bfd_vma bfd_get_bits (bfd_byte *, int, boolean);
 void bfd_put_bits (bfd_vma, bfd_byte *, int, boolean);
 
 
 
 
 struct ecoff_debug_info;
 struct ecoff_debug_swap;
 struct ecoff_extr;
 struct symbol_cache_entry;
 struct bfd_link_info;
 struct bfd_link_hash_entry;
 struct bfd_elf_version_tree;
 
 extern bfd_vma bfd_ecoff_get_gp_value (bfd * abfd);
 extern boolean bfd_ecoff_set_gp_value (bfd *abfd, bfd_vma gp_value);
 extern boolean bfd_ecoff_set_regmasks
   (bfd *abfd, unsigned long gprmask, unsigned long fprmask, unsigned long=
  *cprmask);
 
 extern void * bfd_ecoff_debug_init
   (bfd *output_bfd, struct ecoff_debug_info *output_debug, const struct e=
 coff_debug_swap *output_swap, struct bfd_link_info *);
 
 
 extern void bfd_ecoff_debug_free
   (void * handle, bfd *output_bfd, struct ecoff_debug_info *output_debug,=
  const struct ecoff_debug_swap *output_swap, struct bfd_link_info *);
 
 
 extern boolean bfd_ecoff_debug_accumulate
   (void * handle, bfd *output_bfd, struct ecoff_debug_info *output_debug,=
  const struct ecoff_debug_swap *output_swap, bfd *input_bfd, struct ecoff=
 _debug_info *input_debug, const struct ecoff_debug_swap *input_swap, stru=
 ct bfd_link_info *);
 
 
 
 
 extern boolean bfd_ecoff_debug_accumulate_other
   (void * handle, bfd *output_bfd, struct ecoff_debug_info *output_debug,=
  const struct ecoff_debug_swap *output_swap, bfd *input_bfd, struct bfd_l=
 ink_info *);
 
 
 extern boolean bfd_ecoff_debug_externals
   (bfd *abfd, struct ecoff_debug_info *debug, const struct ecoff_debug_sw=
 ap *swap, boolean relocateable, boolean (*get_extr) (struct symbol_cache_=
 entry *, struct ecoff_extr *), void (*set_index) (struct symbol_cache_ent=
 ry *, bfd_size_type));
 
 
 
 
 
 
 extern boolean bfd_ecoff_debug_one_external
   (bfd *abfd, struct ecoff_debug_info *debug, const struct ecoff_debug_sw=
 ap *swap, const char *name, struct ecoff_extr *esym);
 
 
 extern bfd_size_type bfd_ecoff_debug_size
   (bfd *abfd, struct ecoff_debug_info *debug, const struct ecoff_debug_sw=
 ap *swap);
 
 extern boolean bfd_ecoff_write_debug
   (bfd *abfd, struct ecoff_debug_info *debug, const struct ecoff_debug_sw=
 ap *swap, file_ptr where);
 
 extern boolean bfd_ecoff_write_accumulated_debug
   (void * handle, bfd *abfd, struct ecoff_debug_info *debug, const struct=
  ecoff_debug_swap *swap, struct bfd_link_info *info, file_ptr where);
 
 
 extern boolean bfd_mips_ecoff_create_embedded_relocs
   (bfd *, struct bfd_link_info *, struct sec *, struct sec *, char **);
 
 
 
 
 struct bfd_link_needed_list
 {
   struct bfd_link_needed_list *next;
   bfd *by;
   const char *name;
 };
 
 extern boolean bfd_elf32_record_link_assignment
   (bfd *, struct bfd_link_info *, const char *, boolean);
 extern boolean bfd_elf64_record_link_assignment
   (bfd *, struct bfd_link_info *, const char *, boolean);
 extern struct bfd_link_needed_list *bfd_elf_get_needed_list
   (bfd *, struct bfd_link_info *);
 extern boolean bfd_elf_get_bfd_needed_list
   (bfd *, struct bfd_link_needed_list **);
 extern boolean bfd_elf32_size_dynamic_sections
   (bfd *, const char *, const char *, const char *, const char * const *,=
  struct bfd_link_info *, struct sec **, struct bfd_elf_version_tree *);
 
 
 extern boolean bfd_elf64_size_dynamic_sections
   (bfd *, const char *, const char *, const char *, const char * const *,=
  struct bfd_link_info *, struct sec **, struct bfd_elf_version_tree *);
 
 
 extern void bfd_elf_set_dt_needed_name (bfd *, const char *);
 extern void bfd_elf_set_dt_needed_soname (bfd *, const char *);
 extern const char *bfd_elf_get_dt_soname (bfd *);
 extern struct bfd_link_needed_list *bfd_elf_get_runpath_list
   (bfd *, struct bfd_link_info *);
 extern boolean bfd_elf32_discard_info
   (bfd *, struct bfd_link_info *);
 extern boolean bfd_elf64_discard_info
   (bfd *, struct bfd_link_info *);
 
 
 
 
 extern long bfd_get_elf_phdr_upper_bound (bfd *abfd);
 # 681 "../bfd/bfd.h"
 extern int bfd_get_elf_phdrs (bfd *abfd, void *phdrs);
 
 
 extern int bfd_get_arch_size (bfd *);
 
 
 extern int bfd_get_sign_extend_vma (bfd *);
 
 extern boolean bfd_m68k_elf32_create_embedded_relocs
   (bfd *, struct bfd_link_info *, struct sec *, struct sec *, char **);
 
 extern boolean bfd_mips_elf32_create_embedded_relocs
   (bfd *, struct bfd_link_info *, struct sec *, struct sec *, char **);
 
 
 
 
 extern struct bfd_link_needed_list *bfd_sunos_get_needed_list
   (bfd *, struct bfd_link_info *);
 extern boolean bfd_sunos_record_link_assignment
   (bfd *, struct bfd_link_info *, const char *);
 extern boolean bfd_sunos_size_dynamic_sections
   (bfd *, struct bfd_link_info *, struct sec **, struct sec **, struct se=
 c **);
 
 
 
 
 extern boolean bfd_i386linux_size_dynamic_sections
   (bfd *, struct bfd_link_info *);
 extern boolean bfd_m68klinux_size_dynamic_sections
   (bfd *, struct bfd_link_info *);
 extern boolean bfd_sparclinux_size_dynamic_sections
   (bfd *, struct bfd_link_info *);
 
 
 
 struct _bfd_window_internal;
 typedef struct _bfd_window_internal bfd_window_internal;
 
 typedef struct _bfd_window
 {
 
   void * data;
   bfd_size_type size;
 
 
 
 
 
 
   struct _bfd_window_internal *i;
 }
 bfd_window;
 
 extern void bfd_init_window (bfd_window *);
 extern void bfd_free_window (bfd_window *);
 extern boolean bfd_get_file_window
   (bfd *, file_ptr, bfd_size_type, bfd_window *, boolean);
 
 
 
 extern boolean bfd_xcoff_link_record_set
   (bfd *, struct bfd_link_info *, struct bfd_link_hash_entry *, bfd_size_=
 type);
 
 extern boolean bfd_xcoff_import_symbol
   (bfd *, struct bfd_link_info *, struct bfd_link_hash_entry *, bfd_vma, =
 const char *, const char *, const char *, unsigned int);
 
 extern boolean bfd_xcoff_export_symbol
   (bfd *, struct bfd_link_info *, struct bfd_link_hash_entry *);
 extern boolean bfd_xcoff_link_count_reloc
   (bfd *, struct bfd_link_info *, const char *);
 extern boolean bfd_xcoff_record_link_assignment
   (bfd *, struct bfd_link_info *, const char *);
 extern boolean bfd_xcoff_size_dynamic_sections
   (bfd *, struct bfd_link_info *, const char *, const char *, unsigned lo=
 ng, unsigned long, unsigned long, boolean, int, boolean, boolean, struct =
 sec **, boolean);
 
 
 extern boolean bfd_xcoff_link_generate_rtinit
   (bfd *, const char *, const char *, boolean);
 
 
 extern boolean bfd_xcoff_ar_archive_set_magic (bfd *, char *);
 
 
 
 
 struct internal_syment;
 union internal_auxent;
 
 
 extern boolean bfd_coff_get_syment
   (bfd *, struct symbol_cache_entry *, struct internal_syment *);
 
 extern boolean bfd_coff_get_auxent
   (bfd *, struct symbol_cache_entry *, int, union internal_auxent *);
 
 extern boolean bfd_coff_set_symbol_class
   (bfd *, struct symbol_cache_entry *, unsigned int);
 
 extern boolean bfd_m68k_coff_create_embedded_relocs
   (bfd *, struct bfd_link_info *, struct sec *, struct sec *, char **);
 
 
 
 extern boolean bfd_arm_allocate_interworking_sections
   (struct bfd_link_info *);
 
 extern boolean bfd_arm_process_before_allocation
   (bfd *, struct bfd_link_info *, int);
 
 extern boolean bfd_arm_get_bfd_for_interworking
   (bfd *, struct bfd_link_info *);
 
 
 extern boolean bfd_arm_pe_allocate_interworking_sections
   (struct bfd_link_info *);
 
 extern boolean bfd_arm_pe_process_before_allocation
   (bfd *, struct bfd_link_info *, int);
 
 extern boolean bfd_arm_pe_get_bfd_for_interworking
   (bfd *, struct bfd_link_info *);
 
 
 extern boolean bfd_elf32_arm_allocate_interworking_sections
   (struct bfd_link_info *);
 
 extern boolean bfd_elf32_arm_process_before_allocation
   (bfd *, struct bfd_link_info *, int);
 
 extern boolean bfd_elf32_arm_get_bfd_for_interworking
   (bfd *, struct bfd_link_info *);
 
 extern boolean bfd_elf32_arm_add_glue_sections_to_bfd
   (bfd *, struct bfd_link_info *);
 
 
 extern void bfd_ticoff_set_section_load_page
   (struct sec *, int);
 
 extern int bfd_ticoff_get_section_load_page
   (struct sec *);
 
 
 void
 bfd_init (void);
 
 
 bfd *
 bfd_openr (const char *filename, const char *target);
 
 bfd *
 bfd_fdopenr (const char *filename, const char *target, int fd);
 
 bfd *
 bfd_openstreamr (const char *, const char *, void *);
 
 bfd *
 bfd_openw (const char *filename, const char *target);
 
 boolean
 bfd_close (bfd *abfd);
 
 boolean
 bfd_close_all_done (bfd *);
 
 bfd *
 bfd_create (const char *filename, bfd *templ);
 
 boolean
 bfd_make_writable (bfd *abfd);
 
 boolean
 bfd_make_readable (bfd *abfd);
 # 1003 "../bfd/bfd.h"
 struct bfd_comdat_info
 {
 
   const char *name;
 
 
 
 
 
   long symbol;
 };
 
 typedef struct sec
 {
 
 
   const char *name;
 
 
   int id;
 
 
   int index;
 
 
   struct sec *next;
 
 
 
 
   flagword flags;
 # 1211 "../bfd/bfd.h"
   unsigned int user_set_vma : 1;
 
 
   unsigned int reloc_done : 1;
 
 
   unsigned int linker_mark : 1;
 
 
 
   unsigned int linker_has_input : 1;
 
 
   unsigned int gc_mark : 1;
 
 
 
   unsigned int segment_mark : 1;
 # 1238 "../bfd/bfd.h"
   bfd_vma vma;
 
 
 
 
   bfd_vma lma;
 
 
 
 
   bfd_size_type _cooked_size;
 
 
 
 
   bfd_size_type _raw_size;
 # 1262 "../bfd/bfd.h"
   bfd_vma output_offset;
 
 
   struct sec *output_section;
 
 
 
   unsigned int alignment_power;
 
 
 
   struct reloc_cache_entry *relocation;
 
 
 
   struct reloc_cache_entry **orelocation;
 
 
   unsigned reloc_count;
 
 
 
 
 
   file_ptr filepos;
 
 
   file_ptr rel_filepos;
 
 
   file_ptr line_filepos;
 
 
   void * userdata;
 
 
 
   unsigned char *contents;
 
 
   alent *lineno;
 
 
   unsigned int lineno_count;
 
 
   unsigned int entsize;
 
 
   struct bfd_comdat_info *comdat;
 
 
 
   file_ptr moving_line_filepos;
 
 
   int target_index;
 
   void * used_by_bfd;
 
 
 
   struct relent_chain *constructor_chain;
 
 
   bfd *owner;
 
 
   struct symbol_cache_entry *symbol;
   struct symbol_cache_entry **symbol_ptr_ptr;
 
   struct bfd_link_order *link_order_head;
   struct bfd_link_order *link_order_tail;
 } asection;
 # 1348 "../bfd/bfd.h"
 extern const asection bfd_abs_section;
 
 
 
 extern const asection bfd_und_section;
 
 
 
 extern const asection bfd_com_section;
 
 
 extern const asection bfd_ind_section;
 # 1369 "../bfd/bfd.h"
 extern const struct symbol_cache_entry * const bfd_abs_symbol;
 extern const struct symbol_cache_entry * const bfd_com_symbol;
 extern const struct symbol_cache_entry * const bfd_und_symbol;
 extern const struct symbol_cache_entry * const bfd_ind_symbol;
 # 1405 "../bfd/bfd.h"
 void
 bfd_section_list_clear (bfd *);
 
 asection *
 bfd_get_section_by_name (bfd *abfd, const char *name);
 
 char *
 bfd_get_unique_section_name (bfd *abfd, const char *templat, int *count);
 
 
 
 asection *
 bfd_make_section_old_way (bfd *abfd, const char *name);
 
 asection *
 bfd_make_section_anyway (bfd *abfd, const char *name);
 
 asection *
 bfd_make_section (bfd *, const char *name);
 
 boolean
 bfd_set_section_flags (bfd *abfd, asection *sec, flagword flags);
 
 void
 bfd_map_over_sections (bfd *abfd, void (*func) (bfd *abfd, asection *sect=
 , void * obj), void * obj);
 
 
 
 
 
 boolean
 bfd_set_section_size (bfd *abfd, asection *sec, bfd_size_type val);
 
 boolean
 bfd_set_section_contents (bfd *abfd, asection *section, void * data, file=
 _ptr offset, bfd_size_type count);
 
 
 
 boolean
 bfd_get_section_contents (bfd *abfd, asection *section, void * location, =
 file_ptr offset, bfd_size_type count);
 
 
 
 boolean
 bfd_copy_private_section_data (bfd *ibfd, asection *isec, bfd *obfd, asec=
 tion *osec);
 
 
 
 
 
 void
 _bfd_strip_section_from_output (struct bfd_link_info *info, asection *sec=
 tion);
 
 boolean
 bfd_generic_discard_group (bfd *abfd, asection *group);
 
 
 enum bfd_architecture
 {
   bfd_arch_unknown,
   bfd_arch_obscure,
   bfd_arch_m68k,
 # 1479 "../bfd/bfd.h"
   bfd_arch_vax,
   bfd_arch_i960,
 # 1498 "../bfd/bfd.h"
   bfd_arch_or32,
 
   bfd_arch_a29k,
   bfd_arch_sparc,
 # 1517 "../bfd/bfd.h"
   bfd_arch_mips,
 # 1538 "../bfd/bfd.h"
   bfd_arch_i386,
 
 
 
 
 
   bfd_arch_we32k,
   bfd_arch_tahoe,
   bfd_arch_i860,
   bfd_arch_i370,
   bfd_arch_romp,
   bfd_arch_alliant,
   bfd_arch_convex,
   bfd_arch_m88k,
   bfd_arch_pyramid,
   bfd_arch_h8300,
 
 
 
   bfd_arch_pdp11,
   bfd_arch_powerpc,
 # 1577 "../bfd/bfd.h"
   bfd_arch_rs6000,
 
 
 
 
   bfd_arch_hppa,
   bfd_arch_d10v,
 
 
 
   bfd_arch_d30v,
   bfd_arch_dlx,
   bfd_arch_m68hc11,
   bfd_arch_m68hc12,
   bfd_arch_z8k,
 
 
   bfd_arch_h8500,
   bfd_arch_sh,
 # 1604 "../bfd/bfd.h"
   bfd_arch_alpha,
 
 
 
   bfd_arch_arm,
 # 1619 "../bfd/bfd.h"
   bfd_arch_ns32k,
   bfd_arch_w65,
   bfd_arch_tic30,
   bfd_arch_tic54x,
   bfd_arch_tic80,
   bfd_arch_v850,
 
 
 
   bfd_arch_arc,
 
 
 
 
   bfd_arch_m32r,
 
 
   bfd_arch_mn10200,
   bfd_arch_mn10300,
 
 
   bfd_arch_fr30,
 
   bfd_arch_frv,
 
 
 
 
 
 
   bfd_arch_mcore,
   bfd_arch_ia64,
 
 
   bfd_arch_pj,
   bfd_arch_avr,
 
 
 
 
 
   bfd_arch_cris,
   bfd_arch_s390,
 
 
   bfd_arch_openrisc,
   bfd_arch_mmix,
   bfd_arch_xstormy16,
 
   bfd_arch_last
   };
 
 typedef struct bfd_arch_info
 {
   int bits_per_word;
   int bits_per_address;
   int bits_per_byte;
   enum bfd_architecture arch;
   unsigned long mach;
   const char *arch_name;
   const char *printable_name;
   unsigned int section_align_power;
 
 
 
   boolean the_default;
   const struct bfd_arch_info * (*compatible)
        (const struct bfd_arch_info *a, const struct bfd_arch_info *b);
 
 
   boolean (*scan) (const struct bfd_arch_info *, const char *);
 
   const struct bfd_arch_info *next;
 }
 bfd_arch_info_type;
 
 const char *
 bfd_printable_name (bfd *abfd);
 
 const bfd_arch_info_type *
 bfd_scan_arch (const char *string);
 
 const char **
 bfd_arch_list (void);
 
 const bfd_arch_info_type *
 bfd_arch_get_compatible ( const bfd *abfd, const bfd *bbfd);
 
 
 
 void
 bfd_set_arch_info (bfd *abfd, const bfd_arch_info_type *arg);
 
 enum bfd_architecture
 bfd_get_arch (bfd *abfd);
 
 unsigned long
 bfd_get_mach (bfd *abfd);
 
 unsigned int
 bfd_arch_bits_per_byte (bfd *abfd);
 
 unsigned int
 bfd_arch_bits_per_address (bfd *abfd);
 
 const bfd_arch_info_type *
 bfd_get_arch_info (bfd *abfd);
 
 const bfd_arch_info_type *
 bfd_lookup_arch (enum bfd_architecture arch, unsigned long machine);
 
 
 
 const char *
 bfd_printable_arch_mach (enum bfd_architecture arch, unsigned long machin=
 e);
 
 unsigned int
 bfd_octets_per_byte (bfd *abfd);
 
 unsigned int
 bfd_arch_mach_octets_per_byte (enum bfd_architecture arch, unsigned long =
 machine);
 
 
 
 typedef enum bfd_reloc_status
 {
 
   bfd_reloc_ok,
 
 
   bfd_reloc_overflow,
 
 
   bfd_reloc_outofrange,
 
 
   bfd_reloc_continue,
 
 
   bfd_reloc_notsupported,
 
 
   bfd_reloc_other,
 
 
   bfd_reloc_undefined,
 
 
 
 
 
   bfd_reloc_dangerous
  }
  bfd_reloc_status_type;
 
 
 typedef struct reloc_cache_entry
 {
 
   struct symbol_cache_entry **sym_ptr_ptr;
 
 
   bfd_size_type address;
 
 
   bfd_vma addend;
 
 
   reloc_howto_type *howto;
 
 }
 arelent;
 
 enum complain_overflow
 {
 
   complain_overflow_dont,
 
 
 
   complain_overflow_bitfield,
 
 
 
   complain_overflow_signed,
 
 
 
   complain_overflow_unsigned
 };
 
 struct reloc_howto_struct
 {
 
 
 
 
 
 
   unsigned int type;
 
 
 
   unsigned int rightshift;
 
 
 
 
   int size;
 
 
 
   unsigned int bitsize;
 
 
 
 
 
   boolean pc_relative;
 
 
 
   unsigned int bitpos;
 
 
 
   enum complain_overflow complain_on_overflow;
 
 
 
 
 
   bfd_reloc_status_type (*special_function)
     (bfd *, arelent *, struct symbol_cache_entry *, void *, asection *, b=
 fd *, char **);
 
 
 
   char *name;
 # 1873 "../bfd/bfd.h"
   boolean partial_inplace;
 # 1882 "../bfd/bfd.h"
   bfd_vma src_mask;
 
 
 
 
 
   bfd_vma dst_mask;
 
 
 
 
 
 
 
   boolean pcrel_offset;
 };
 # 1924 "../bfd/bfd.h"
 unsigned int
 bfd_get_reloc_size (reloc_howto_type *);
 
 typedef struct relent_chain
 {
   arelent relent;
   struct relent_chain *next;
 }
 arelent_chain;
 
 bfd_reloc_status_type
 bfd_check_overflow (enum complain_overflow how, unsigned int bitsize, uns=
 igned int rightshift, unsigned int addrsize, bfd_vma relocation);
 
 
 
 
 
 bfd_reloc_status_type
 bfd_perform_relocation (bfd *abfd, arelent *reloc_entry, void * data, ase=
 ction *input_section, bfd *output_bfd, char **error_message);
 
 
 
 
 
 
 bfd_reloc_status_type
 bfd_install_relocation (bfd *abfd, arelent *reloc_entry, void * data, bfd=
 _vma data_start, asection *input_section, char **error_message);
 
 
 
 
 
 enum bfd_reloc_code_real {
   _dummy_first_bfd_reloc_code_real,
 
 
 
   BFD_RELOC_64,
   BFD_RELOC_32,
   BFD_RELOC_26,
   BFD_RELOC_24,
   BFD_RELOC_16,
   BFD_RELOC_14,
   BFD_RELOC_8,
 
 
 
 
 
 
   BFD_RELOC_64_PCREL,
   BFD_RELOC_32_PCREL,
   BFD_RELOC_24_PCREL,
   BFD_RELOC_16_PCREL,
   BFD_RELOC_12_PCREL,
   BFD_RELOC_8_PCREL,
 
 
   BFD_RELOC_32_GOT_PCREL,
   BFD_RELOC_16_GOT_PCREL,
   BFD_RELOC_8_GOT_PCREL,
   BFD_RELOC_32_GOTOFF,
   BFD_RELOC_16_GOTOFF,
   BFD_RELOC_LO16_GOTOFF,
   BFD_RELOC_HI16_GOTOFF,
   BFD_RELOC_HI16_S_GOTOFF,
   BFD_RELOC_8_GOTOFF,
   BFD_RELOC_64_PLT_PCREL,
   BFD_RELOC_32_PLT_PCREL,
   BFD_RELOC_24_PLT_PCREL,
   BFD_RELOC_16_PLT_PCREL,
   BFD_RELOC_8_PLT_PCREL,
   BFD_RELOC_64_PLTOFF,
   BFD_RELOC_32_PLTOFF,
   BFD_RELOC_16_PLTOFF,
   BFD_RELOC_LO16_PLTOFF,
   BFD_RELOC_HI16_PLTOFF,
   BFD_RELOC_HI16_S_PLTOFF,
   BFD_RELOC_8_PLTOFF,
 
 
   BFD_RELOC_68K_GLOB_DAT,
   BFD_RELOC_68K_JMP_SLOT,
   BFD_RELOC_68K_RELATIVE,
 
 
   BFD_RELOC_32_BASEREL,
   BFD_RELOC_16_BASEREL,
   BFD_RELOC_LO16_BASEREL,
   BFD_RELOC_HI16_BASEREL,
   BFD_RELOC_HI16_S_BASEREL,
   BFD_RELOC_8_BASEREL,
   BFD_RELOC_RVA,
 
 
   BFD_RELOC_8_FFnn,
 
 
 
 
 
 
 
   BFD_RELOC_32_PCREL_S2,
   BFD_RELOC_16_PCREL_S2,
   BFD_RELOC_23_PCREL_S2,
 
 
 
   BFD_RELOC_HI22,
   BFD_RELOC_LO10,
 
 
 
 
 
   BFD_RELOC_GPREL16,
   BFD_RELOC_GPREL32,
 
 
   BFD_RELOC_I960_CALLJ,
 
 
 
   BFD_RELOC_NONE,
   BFD_RELOC_SPARC_WDISP22,
   BFD_RELOC_SPARC22,
   BFD_RELOC_SPARC13,
   BFD_RELOC_SPARC_GOT10,
   BFD_RELOC_SPARC_GOT13,
   BFD_RELOC_SPARC_GOT22,
   BFD_RELOC_SPARC_PC10,
   BFD_RELOC_SPARC_PC22,
   BFD_RELOC_SPARC_WPLT30,
   BFD_RELOC_SPARC_COPY,
   BFD_RELOC_SPARC_GLOB_DAT,
   BFD_RELOC_SPARC_JMP_SLOT,
   BFD_RELOC_SPARC_RELATIVE,
   BFD_RELOC_SPARC_UA16,
   BFD_RELOC_SPARC_UA32,
   BFD_RELOC_SPARC_UA64,
 
 
   BFD_RELOC_SPARC_BASE13,
   BFD_RELOC_SPARC_BASE22,
 
 
 
   BFD_RELOC_SPARC_10,
   BFD_RELOC_SPARC_11,
   BFD_RELOC_SPARC_OLO10,
   BFD_RELOC_SPARC_HH22,
   BFD_RELOC_SPARC_HM10,
   BFD_RELOC_SPARC_LM22,
   BFD_RELOC_SPARC_PC_HH22,
   BFD_RELOC_SPARC_PC_HM10,
   BFD_RELOC_SPARC_PC_LM22,
   BFD_RELOC_SPARC_WDISP16,
   BFD_RELOC_SPARC_WDISP19,
   BFD_RELOC_SPARC_7,
   BFD_RELOC_SPARC_6,
   BFD_RELOC_SPARC_5,
 
   BFD_RELOC_SPARC_PLT32,
   BFD_RELOC_SPARC_PLT64,
   BFD_RELOC_SPARC_HIX22,
   BFD_RELOC_SPARC_LOX10,
   BFD_RELOC_SPARC_H44,
   BFD_RELOC_SPARC_M44,
   BFD_RELOC_SPARC_L44,
   BFD_RELOC_SPARC_REGISTER,
 
 
   BFD_RELOC_SPARC_REV32,
 
 
 
 
 
 
 
   BFD_RELOC_ALPHA_GPDISP_HI16,
 
 
 
 
 
   BFD_RELOC_ALPHA_GPDISP_LO16,
 
 
 
 
   BFD_RELOC_ALPHA_GPDISP,
 # 2141 "../bfd/bfd.h"
   BFD_RELOC_ALPHA_LITERAL,
   BFD_RELOC_ALPHA_ELF_LITERAL,
   BFD_RELOC_ALPHA_LITUSE,
 
 
 
 
   BFD_RELOC_ALPHA_HINT,
 
 
 
   BFD_RELOC_ALPHA_LINKAGE,
 
 
 
   BFD_RELOC_ALPHA_CODEADDR,
 
 
 
   BFD_RELOC_ALPHA_GPREL_HI16,
   BFD_RELOC_ALPHA_GPREL_LO16,
 
 
 
 
   BFD_RELOC_ALPHA_BRSGP,
 
 
   BFD_RELOC_ALPHA_TLSGD,
   BFD_RELOC_ALPHA_TLSLDM,
   BFD_RELOC_ALPHA_DTPMOD64,
   BFD_RELOC_ALPHA_GOTDTPREL16,
   BFD_RELOC_ALPHA_DTPREL64,
   BFD_RELOC_ALPHA_DTPREL_HI16,
   BFD_RELOC_ALPHA_DTPREL_LO16,
   BFD_RELOC_ALPHA_DTPREL16,
   BFD_RELOC_ALPHA_GOTTPREL16,
   BFD_RELOC_ALPHA_TPREL64,
   BFD_RELOC_ALPHA_TPREL_HI16,
   BFD_RELOC_ALPHA_TPREL_LO16,
   BFD_RELOC_ALPHA_TPREL16,
 
 
 
   BFD_RELOC_MIPS_JMP,
 
 
   BFD_RELOC_MIPS16_JMP,
 
 
   BFD_RELOC_MIPS16_GPREL,
 
 
   BFD_RELOC_HI16,
 
 
 
 
 
   BFD_RELOC_HI16_S,
 
 
   BFD_RELOC_LO16,
 
 
   BFD_RELOC_PCREL_HI16_S,
 
 
   BFD_RELOC_PCREL_LO16,
 
 
   BFD_RELOC_MIPS_LITERAL,
 
 
   BFD_RELOC_MIPS_GOT16,
   BFD_RELOC_MIPS_CALL16,
   BFD_RELOC_MIPS_GOT_HI16,
   BFD_RELOC_MIPS_GOT_LO16,
   BFD_RELOC_MIPS_CALL_HI16,
   BFD_RELOC_MIPS_CALL_LO16,
   BFD_RELOC_MIPS_SUB,
   BFD_RELOC_MIPS_GOT_PAGE,
   BFD_RELOC_MIPS_GOT_OFST,
   BFD_RELOC_MIPS_GOT_DISP,
   BFD_RELOC_MIPS_SHIFT5,
   BFD_RELOC_MIPS_SHIFT6,
   BFD_RELOC_MIPS_INSERT_A,
   BFD_RELOC_MIPS_INSERT_B,
   BFD_RELOC_MIPS_DELETE,
   BFD_RELOC_MIPS_HIGHEST,
   BFD_RELOC_MIPS_HIGHER,
   BFD_RELOC_MIPS_SCN_DISP,
   BFD_RELOC_MIPS_REL16,
   BFD_RELOC_MIPS_RELGOT,
   BFD_RELOC_MIPS_JALR,
 
 
   BFD_RELOC_FRV_LABEL16,
   BFD_RELOC_FRV_LABEL24,
   BFD_RELOC_FRV_LO16,
   BFD_RELOC_FRV_HI16,
   BFD_RELOC_FRV_GPREL12,
   BFD_RELOC_FRV_GPRELU12,
   BFD_RELOC_FRV_GPREL32,
   BFD_RELOC_FRV_GPRELHI,
   BFD_RELOC_FRV_GPRELLO,
 
 
 
   BFD_RELOC_386_GOT32,
   BFD_RELOC_386_PLT32,
   BFD_RELOC_386_COPY,
   BFD_RELOC_386_GLOB_DAT,
   BFD_RELOC_386_JUMP_SLOT,
   BFD_RELOC_386_RELATIVE,
   BFD_RELOC_386_GOTOFF,
   BFD_RELOC_386_GOTPC,
   BFD_RELOC_386_TLS_TPOFF,
   BFD_RELOC_386_TLS_IE,
   BFD_RELOC_386_TLS_GOTIE,
   BFD_RELOC_386_TLS_LE,
   BFD_RELOC_386_TLS_GD,
   BFD_RELOC_386_TLS_LDM,
   BFD_RELOC_386_TLS_LDO_32,
   BFD_RELOC_386_TLS_IE_32,
   BFD_RELOC_386_TLS_LE_32,
   BFD_RELOC_386_TLS_DTPMOD32,
   BFD_RELOC_386_TLS_DTPOFF32,
   BFD_RELOC_386_TLS_TPOFF32,
 
 
   BFD_RELOC_X86_64_GOT32,
   BFD_RELOC_X86_64_PLT32,
   BFD_RELOC_X86_64_COPY,
   BFD_RELOC_X86_64_GLOB_DAT,
   BFD_RELOC_X86_64_JUMP_SLOT,
   BFD_RELOC_X86_64_RELATIVE,
   BFD_RELOC_X86_64_GOTPCREL,
   BFD_RELOC_X86_64_32S,
 
 
   BFD_RELOC_NS32K_IMM_8,
   BFD_RELOC_NS32K_IMM_16,
   BFD_RELOC_NS32K_IMM_32,
   BFD_RELOC_NS32K_IMM_8_PCREL,
   BFD_RELOC_NS32K_IMM_16_PCREL,
   BFD_RELOC_NS32K_IMM_32_PCREL,
   BFD_RELOC_NS32K_DISP_8,
   BFD_RELOC_NS32K_DISP_16,
   BFD_RELOC_NS32K_DISP_32,
   BFD_RELOC_NS32K_DISP_8_PCREL,
   BFD_RELOC_NS32K_DISP_16_PCREL,
   BFD_RELOC_NS32K_DISP_32_PCREL,
 
 
   BFD_RELOC_PDP11_DISP_8_PCREL,
   BFD_RELOC_PDP11_DISP_6_PCREL,
 
 
   BFD_RELOC_PJ_CODE_HI16,
   BFD_RELOC_PJ_CODE_LO16,
   BFD_RELOC_PJ_CODE_DIR16,
   BFD_RELOC_PJ_CODE_DIR32,
   BFD_RELOC_PJ_CODE_REL16,
   BFD_RELOC_PJ_CODE_REL32,
 
 
   BFD_RELOC_PPC_B26,
   BFD_RELOC_PPC_BA26,
   BFD_RELOC_PPC_TOC16,
   BFD_RELOC_PPC_B16,
   BFD_RELOC_PPC_B16_BRTAKEN,
   BFD_RELOC_PPC_B16_BRNTAKEN,
   BFD_RELOC_PPC_BA16,
   BFD_RELOC_PPC_BA16_BRTAKEN,
   BFD_RELOC_PPC_BA16_BRNTAKEN,
   BFD_RELOC_PPC_COPY,
   BFD_RELOC_PPC_GLOB_DAT,
   BFD_RELOC_PPC_JMP_SLOT,
   BFD_RELOC_PPC_RELATIVE,
   BFD_RELOC_PPC_LOCAL24PC,
   BFD_RELOC_PPC_EMB_NADDR32,
   BFD_RELOC_PPC_EMB_NADDR16,
   BFD_RELOC_PPC_EMB_NADDR16_LO,
   BFD_RELOC_PPC_EMB_NADDR16_HI,
   BFD_RELOC_PPC_EMB_NADDR16_HA,
   BFD_RELOC_PPC_EMB_SDAI16,
   BFD_RELOC_PPC_EMB_SDA2I16,
   BFD_RELOC_PPC_EMB_SDA2REL,
   BFD_RELOC_PPC_EMB_SDA21,
   BFD_RELOC_PPC_EMB_MRKREF,
   BFD_RELOC_PPC_EMB_RELSEC16,
   BFD_RELOC_PPC_EMB_RELST_LO,
   BFD_RELOC_PPC_EMB_RELST_HI,
   BFD_RELOC_PPC_EMB_RELST_HA,
   BFD_RELOC_PPC_EMB_BIT_FLD,
   BFD_RELOC_PPC_EMB_RELSDA,
   BFD_RELOC_PPC64_HIGHER,
   BFD_RELOC_PPC64_HIGHER_S,
   BFD_RELOC_PPC64_HIGHEST,
   BFD_RELOC_PPC64_HIGHEST_S,
   BFD_RELOC_PPC64_TOC16_LO,
   BFD_RELOC_PPC64_TOC16_HI,
   BFD_RELOC_PPC64_TOC16_HA,
   BFD_RELOC_PPC64_TOC,
   BFD_RELOC_PPC64_PLTGOT16,
   BFD_RELOC_PPC64_PLTGOT16_LO,
   BFD_RELOC_PPC64_PLTGOT16_HI,
   BFD_RELOC_PPC64_PLTGOT16_HA,
   BFD_RELOC_PPC64_ADDR16_DS,
   BFD_RELOC_PPC64_ADDR16_LO_DS,
   BFD_RELOC_PPC64_GOT16_DS,
   BFD_RELOC_PPC64_GOT16_LO_DS,
   BFD_RELOC_PPC64_PLT16_LO_DS,
   BFD_RELOC_PPC64_SECTOFF_DS,
   BFD_RELOC_PPC64_SECTOFF_LO_DS,
   BFD_RELOC_PPC64_TOC16_DS,
   BFD_RELOC_PPC64_TOC16_LO_DS,
   BFD_RELOC_PPC64_PLTGOT16_DS,
   BFD_RELOC_PPC64_PLTGOT16_LO_DS,
 
 
   BFD_RELOC_I370_D12,
 
 
 
 
   BFD_RELOC_CTOR,
 
 
 
   BFD_RELOC_ARM_PCREL_BRANCH,
 
 
 
 
   BFD_RELOC_ARM_PCREL_BLX,
 
 
 
 
   BFD_RELOC_THUMB_PCREL_BLX,
 
 
 
   BFD_RELOC_ARM_IMMEDIATE,
   BFD_RELOC_ARM_ADRL_IMMEDIATE,
   BFD_RELOC_ARM_OFFSET_IMM,
   BFD_RELOC_ARM_SHIFT_IMM,
   BFD_RELOC_ARM_SWI,
   BFD_RELOC_ARM_MULTI,
   BFD_RELOC_ARM_CP_OFF_IMM,
   BFD_RELOC_ARM_ADR_IMM,
   BFD_RELOC_ARM_LDR_IMM,
   BFD_RELOC_ARM_LITERAL,
   BFD_RELOC_ARM_IN_POOL,
   BFD_RELOC_ARM_OFFSET_IMM8,
   BFD_RELOC_ARM_HWLITERAL,
   BFD_RELOC_ARM_THUMB_ADD,
   BFD_RELOC_ARM_THUMB_IMM,
   BFD_RELOC_ARM_THUMB_SHIFT,
   BFD_RELOC_ARM_THUMB_OFFSET,
   BFD_RELOC_ARM_GOT12,
   BFD_RELOC_ARM_GOT32,
   BFD_RELOC_ARM_JUMP_SLOT,
   BFD_RELOC_ARM_COPY,
   BFD_RELOC_ARM_GLOB_DAT,
   BFD_RELOC_ARM_PLT32,
   BFD_RELOC_ARM_RELATIVE,
   BFD_RELOC_ARM_GOTOFF,
   BFD_RELOC_ARM_GOTPC,
 
 
   BFD_RELOC_SH_PCDISP8BY2,
   BFD_RELOC_SH_PCDISP12BY2,
   BFD_RELOC_SH_IMM4,
   BFD_RELOC_SH_IMM4BY2,
   BFD_RELOC_SH_IMM4BY4,
   BFD_RELOC_SH_IMM8,
   BFD_RELOC_SH_IMM8BY2,
   BFD_RELOC_SH_IMM8BY4,
   BFD_RELOC_SH_PCRELIMM8BY2,
   BFD_RELOC_SH_PCRELIMM8BY4,
   BFD_RELOC_SH_SWITCH16,
   BFD_RELOC_SH_SWITCH32,
   BFD_RELOC_SH_USES,
   BFD_RELOC_SH_COUNT,
   BFD_RELOC_SH_ALIGN,
   BFD_RELOC_SH_CODE,
   BFD_RELOC_SH_DATA,
   BFD_RELOC_SH_LABEL,
   BFD_RELOC_SH_LOOP_START,
   BFD_RELOC_SH_LOOP_END,
   BFD_RELOC_SH_COPY,
   BFD_RELOC_SH_GLOB_DAT,
   BFD_RELOC_SH_JMP_SLOT,
   BFD_RELOC_SH_RELATIVE,
   BFD_RELOC_SH_GOTPC,
   BFD_RELOC_SH_GOT_LOW16,
   BFD_RELOC_SH_GOT_MEDLOW16,
   BFD_RELOC_SH_GOT_MEDHI16,
   BFD_RELOC_SH_GOT_HI16,
   BFD_RELOC_SH_GOTPLT_LOW16,
   BFD_RELOC_SH_GOTPLT_MEDLOW16,
   BFD_RELOC_SH_GOTPLT_MEDHI16,
   BFD_RELOC_SH_GOTPLT_HI16,
   BFD_RELOC_SH_PLT_LOW16,
   BFD_RELOC_SH_PLT_MEDLOW16,
   BFD_RELOC_SH_PLT_MEDHI16,
   BFD_RELOC_SH_PLT_HI16,
   BFD_RELOC_SH_GOTOFF_LOW16,
   BFD_RELOC_SH_GOTOFF_MEDLOW16,
   BFD_RELOC_SH_GOTOFF_MEDHI16,
   BFD_RELOC_SH_GOTOFF_HI16,
   BFD_RELOC_SH_GOTPC_LOW16,
   BFD_RELOC_SH_GOTPC_MEDLOW16,
   BFD_RELOC_SH_GOTPC_MEDHI16,
   BFD_RELOC_SH_GOTPC_HI16,
   BFD_RELOC_SH_COPY64,
   BFD_RELOC_SH_GLOB_DAT64,
   BFD_RELOC_SH_JMP_SLOT64,
   BFD_RELOC_SH_RELATIVE64,
   BFD_RELOC_SH_GOT10BY4,
   BFD_RELOC_SH_GOT10BY8,
   BFD_RELOC_SH_GOTPLT10BY4,
   BFD_RELOC_SH_GOTPLT10BY8,
   BFD_RELOC_SH_GOTPLT32,
   BFD_RELOC_SH_SHMEDIA_CODE,
   BFD_RELOC_SH_IMMU5,
   BFD_RELOC_SH_IMMS6,
   BFD_RELOC_SH_IMMS6BY32,
   BFD_RELOC_SH_IMMU6,
   BFD_RELOC_SH_IMMS10,
   BFD_RELOC_SH_IMMS10BY2,
   BFD_RELOC_SH_IMMS10BY4,
   BFD_RELOC_SH_IMMS10BY8,
   BFD_RELOC_SH_IMMS16,
   BFD_RELOC_SH_IMMU16,
   BFD_RELOC_SH_IMM_LOW16,
   BFD_RELOC_SH_IMM_LOW16_PCREL,
   BFD_RELOC_SH_IMM_MEDLOW16,
   BFD_RELOC_SH_IMM_MEDLOW16_PCREL,
   BFD_RELOC_SH_IMM_MEDHI16,
   BFD_RELOC_SH_IMM_MEDHI16_PCREL,
   BFD_RELOC_SH_IMM_HI16,
   BFD_RELOC_SH_IMM_HI16_PCREL,
   BFD_RELOC_SH_PT_16,
 
 
 
   BFD_RELOC_THUMB_PCREL_BRANCH9,
   BFD_RELOC_THUMB_PCREL_BRANCH12,
   BFD_RELOC_THUMB_PCREL_BRANCH23,
 
 
 
 
 
   BFD_RELOC_ARC_B22_PCREL,
 
 
 
 
   BFD_RELOC_ARC_B26,
 
 
 
 
   BFD_RELOC_D10V_10_PCREL_R,
 
 
 
 
 
 
   BFD_RELOC_D10V_10_PCREL_L,
 
 
 
   BFD_RELOC_D10V_18,
 
 
 
   BFD_RELOC_D10V_18_PCREL,
 
 
 
   BFD_RELOC_D30V_6,
 
 
 
   BFD_RELOC_D30V_9_PCREL,
 
 
 
 
 
   BFD_RELOC_D30V_9_PCREL_R,
 
 
 
   BFD_RELOC_D30V_15,
 
 
 
   BFD_RELOC_D30V_15_PCREL,
 
 
 
 
 
   BFD_RELOC_D30V_15_PCREL_R,
 
 
 
   BFD_RELOC_D30V_21,
 
 
 
   BFD_RELOC_D30V_21_PCREL,
 
 
 
 
 
   BFD_RELOC_D30V_21_PCREL_R,
 
 
   BFD_RELOC_D30V_32,
 
 
   BFD_RELOC_D30V_32_PCREL,
 
 
   BFD_RELOC_DLX_HI16_S,
 
 
   BFD_RELOC_DLX_LO16,
 
 
   BFD_RELOC_DLX_JMP26,
 
 
 
   BFD_RELOC_M32R_24,
 
 
   BFD_RELOC_M32R_10_PCREL,
 
 
   BFD_RELOC_M32R_18_PCREL,
 
 
   BFD_RELOC_M32R_26_PCREL,
 
 
 
   BFD_RELOC_M32R_HI16_ULO,
 
 
 
   BFD_RELOC_M32R_HI16_SLO,
 
 
   BFD_RELOC_M32R_LO16,
 
 
 
   BFD_RELOC_M32R_SDA16,
 
 
   BFD_RELOC_V850_9_PCREL,
 
 
   BFD_RELOC_V850_22_PCREL,
 
 
   BFD_RELOC_V850_SDA_16_16_OFFSET,
 
 
 
   BFD_RELOC_V850_SDA_15_16_OFFSET,
 
 
   BFD_RELOC_V850_ZDA_16_16_OFFSET,
 
 
 
   BFD_RELOC_V850_ZDA_15_16_OFFSET,
 
 
 
   BFD_RELOC_V850_TDA_6_8_OFFSET,
 
 
 
   BFD_RELOC_V850_TDA_7_8_OFFSET,
 
 
   BFD_RELOC_V850_TDA_7_7_OFFSET,
 
 
   BFD_RELOC_V850_TDA_16_16_OFFSET,
 
 
 
   BFD_RELOC_V850_TDA_4_5_OFFSET,
 
 
   BFD_RELOC_V850_TDA_4_4_OFFSET,
 
 
 
   BFD_RELOC_V850_SDA_16_16_SPLIT_OFFSET,
 
 
 
   BFD_RELOC_V850_ZDA_16_16_SPLIT_OFFSET,
 
 
   BFD_RELOC_V850_CALLT_6_7_OFFSET,
 
 
   BFD_RELOC_V850_CALLT_16_16_OFFSET,
 
 
 
 
   BFD_RELOC_MN10300_32_PCREL,
 
 
 
   BFD_RELOC_MN10300_16_PCREL,
 
 
 
 
   BFD_RELOC_TIC30_LDP,
 
 
 
 
   BFD_RELOC_TIC54X_PARTLS7,
 
 
 
 
   BFD_RELOC_TIC54X_PARTMS9,
 
 
   BFD_RELOC_TIC54X_23,
 
 
 
 
   BFD_RELOC_TIC54X_16_OF_23,
 
 
 
 
   BFD_RELOC_TIC54X_MS7_OF_23,
 
 
   BFD_RELOC_FR30_48,
 
 
 
   BFD_RELOC_FR30_20,
 
 
 
   BFD_RELOC_FR30_6_IN_4,
 
 
 
   BFD_RELOC_FR30_8_IN_8,
 
 
 
   BFD_RELOC_FR30_9_IN_8,
 
 
 
   BFD_RELOC_FR30_10_IN_8,
 
 
 
   BFD_RELOC_FR30_9_PCREL,
 
 
 
   BFD_RELOC_FR30_12_PCREL,
 
 
   BFD_RELOC_MCORE_PCREL_IMM8BY4,
   BFD_RELOC_MCORE_PCREL_IMM11BY2,
   BFD_RELOC_MCORE_PCREL_IMM4BY2,
   BFD_RELOC_MCORE_PCREL_32,
   BFD_RELOC_MCORE_PCREL_JSR_IMM11BY2,
   BFD_RELOC_MCORE_RVA,
 
 
   BFD_RELOC_MMIX_GETA,
   BFD_RELOC_MMIX_GETA_1,
   BFD_RELOC_MMIX_GETA_2,
   BFD_RELOC_MMIX_GETA_3,
 
 
   BFD_RELOC_MMIX_CBRANCH,
   BFD_RELOC_MMIX_CBRANCH_J,
   BFD_RELOC_MMIX_CBRANCH_1,
   BFD_RELOC_MMIX_CBRANCH_2,
   BFD_RELOC_MMIX_CBRANCH_3,
 
 
   BFD_RELOC_MMIX_PUSHJ,
   BFD_RELOC_MMIX_PUSHJ_1,
   BFD_RELOC_MMIX_PUSHJ_2,
   BFD_RELOC_MMIX_PUSHJ_3,
 
 
   BFD_RELOC_MMIX_JMP,
   BFD_RELOC_MMIX_JMP_1,
   BFD_RELOC_MMIX_JMP_2,
   BFD_RELOC_MMIX_JMP_3,
 
 
 
   BFD_RELOC_MMIX_ADDR19,
 
 
   BFD_RELOC_MMIX_ADDR27,
 
 
 
   BFD_RELOC_MMIX_REG_OR_BYTE,
 
 
 
   BFD_RELOC_MMIX_REG,
 
 
 
   BFD_RELOC_MMIX_BASE_PLUS_OFFSET,
 
 
 
   BFD_RELOC_MMIX_LOCAL,
 
 
 
   BFD_RELOC_AVR_7_PCREL,
 
 
 
   BFD_RELOC_AVR_13_PCREL,
 
 
 
   BFD_RELOC_AVR_16_PM,
 
 
 
   BFD_RELOC_AVR_LO8_LDI,
 
 
 
   BFD_RELOC_AVR_HI8_LDI,
 
 
 
   BFD_RELOC_AVR_HH8_LDI,
 
 
 
   BFD_RELOC_AVR_LO8_LDI_NEG,
 
 
 
 
   BFD_RELOC_AVR_HI8_LDI_NEG,
 
 
 
 
   BFD_RELOC_AVR_HH8_LDI_NEG,
 
 
 
   BFD_RELOC_AVR_LO8_LDI_PM,
 
 
 
   BFD_RELOC_AVR_HI8_LDI_PM,
 
 
 
   BFD_RELOC_AVR_HH8_LDI_PM,
 
 
 
   BFD_RELOC_AVR_LO8_LDI_PM_NEG,
 
 
 
 
   BFD_RELOC_AVR_HI8_LDI_PM_NEG,
 
 
 
 
   BFD_RELOC_AVR_HH8_LDI_PM_NEG,
 
 
 
   BFD_RELOC_AVR_CALL,
 
 
   BFD_RELOC_390_12,
 
 
   BFD_RELOC_390_GOT12,
 
 
   BFD_RELOC_390_PLT32,
 
 
   BFD_RELOC_390_COPY,
 
 
   BFD_RELOC_390_GLOB_DAT,
 
 
   BFD_RELOC_390_JMP_SLOT,
 
 
   BFD_RELOC_390_RELATIVE,
 
 
   BFD_RELOC_390_GOTPC,
 
 
   BFD_RELOC_390_GOT16,
 
 
   BFD_RELOC_390_PC16DBL,
 
 
   BFD_RELOC_390_PLT16DBL,
 
 
   BFD_RELOC_390_PC32DBL,
 
 
   BFD_RELOC_390_PLT32DBL,
 
 
   BFD_RELOC_390_GOTPCDBL,
 
 
   BFD_RELOC_390_GOT64,
 
 
   BFD_RELOC_390_PLT64,
 
 
   BFD_RELOC_390_GOTENT,
 # 2926 "../bfd/bfd.h"
   BFD_RELOC_VTABLE_INHERIT,
   BFD_RELOC_VTABLE_ENTRY,
 
 
   BFD_RELOC_IA64_IMM14,
   BFD_RELOC_IA64_IMM22,
   BFD_RELOC_IA64_IMM64,
   BFD_RELOC_IA64_DIR32MSB,
   BFD_RELOC_IA64_DIR32LSB,
   BFD_RELOC_IA64_DIR64MSB,
   BFD_RELOC_IA64_DIR64LSB,
   BFD_RELOC_IA64_GPREL22,
   BFD_RELOC_IA64_GPREL64I,
   BFD_RELOC_IA64_GPREL32MSB,
   BFD_RELOC_IA64_GPREL32LSB,
   BFD_RELOC_IA64_GPREL64MSB,
   BFD_RELOC_IA64_GPREL64LSB,
   BFD_RELOC_IA64_LTOFF22,
   BFD_RELOC_IA64_LTOFF64I,
   BFD_RELOC_IA64_PLTOFF22,
   BFD_RELOC_IA64_PLTOFF64I,
   BFD_RELOC_IA64_PLTOFF64MSB,
   BFD_RELOC_IA64_PLTOFF64LSB,
   BFD_RELOC_IA64_FPTR64I,
   BFD_RELOC_IA64_FPTR32MSB,
   BFD_RELOC_IA64_FPTR32LSB,
   BFD_RELOC_IA64_FPTR64MSB,
   BFD_RELOC_IA64_FPTR64LSB,
   BFD_RELOC_IA64_PCREL21B,
   BFD_RELOC_IA64_PCREL21BI,
   BFD_RELOC_IA64_PCREL21M,
   BFD_RELOC_IA64_PCREL21F,
   BFD_RELOC_IA64_PCREL22,
   BFD_RELOC_IA64_PCREL60B,
   BFD_RELOC_IA64_PCREL64I,
   BFD_RELOC_IA64_PCREL32MSB,
   BFD_RELOC_IA64_PCREL32LSB,
   BFD_RELOC_IA64_PCREL64MSB,
   BFD_RELOC_IA64_PCREL64LSB,
   BFD_RELOC_IA64_LTOFF_FPTR22,
   BFD_RELOC_IA64_LTOFF_FPTR64I,
   BFD_RELOC_IA64_LTOFF_FPTR32MSB,
   BFD_RELOC_IA64_LTOFF_FPTR32LSB,
   BFD_RELOC_IA64_LTOFF_FPTR64MSB,
   BFD_RELOC_IA64_LTOFF_FPTR64LSB,
   BFD_RELOC_IA64_SEGREL32MSB,
   BFD_RELOC_IA64_SEGREL32LSB,
   BFD_RELOC_IA64_SEGREL64MSB,
   BFD_RELOC_IA64_SEGREL64LSB,
   BFD_RELOC_IA64_SECREL32MSB,
   BFD_RELOC_IA64_SECREL32LSB,
   BFD_RELOC_IA64_SECREL64MSB,
   BFD_RELOC_IA64_SECREL64LSB,
   BFD_RELOC_IA64_REL32MSB,
   BFD_RELOC_IA64_REL32LSB,
   BFD_RELOC_IA64_REL64MSB,
   BFD_RELOC_IA64_REL64LSB,
   BFD_RELOC_IA64_LTV32MSB,
   BFD_RELOC_IA64_LTV32LSB,
   BFD_RELOC_IA64_LTV64MSB,
   BFD_RELOC_IA64_LTV64LSB,
   BFD_RELOC_IA64_IPLTMSB,
   BFD_RELOC_IA64_IPLTLSB,
   BFD_RELOC_IA64_COPY,
   BFD_RELOC_IA64_LTOFF22X,
   BFD_RELOC_IA64_LDXMOV,
   BFD_RELOC_IA64_TPREL14,
   BFD_RELOC_IA64_TPREL22,
   BFD_RELOC_IA64_TPREL64I,
   BFD_RELOC_IA64_TPREL64MSB,
   BFD_RELOC_IA64_TPREL64LSB,
   BFD_RELOC_IA64_LTOFF_TPREL22,
   BFD_RELOC_IA64_DTPMOD64MSB,
   BFD_RELOC_IA64_DTPMOD64LSB,
   BFD_RELOC_IA64_LTOFF_DTPMOD22,
   BFD_RELOC_IA64_DTPREL14,
   BFD_RELOC_IA64_DTPREL22,
   BFD_RELOC_IA64_DTPREL64I,
   BFD_RELOC_IA64_DTPREL32MSB,
   BFD_RELOC_IA64_DTPREL32LSB,
   BFD_RELOC_IA64_DTPREL64MSB,
   BFD_RELOC_IA64_DTPREL64LSB,
   BFD_RELOC_IA64_LTOFF_DTPREL22,
 
 
 
   BFD_RELOC_M68HC11_HI8,
 
 
 
   BFD_RELOC_M68HC11_LO8,
 
 
 
   BFD_RELOC_M68HC11_3B,
 
 
 
   BFD_RELOC_CRIS_BDISP8,
   BFD_RELOC_CRIS_UNSIGNED_5,
   BFD_RELOC_CRIS_SIGNED_6,
   BFD_RELOC_CRIS_UNSIGNED_6,
   BFD_RELOC_CRIS_UNSIGNED_4,
 
 
   BFD_RELOC_CRIS_COPY,
   BFD_RELOC_CRIS_GLOB_DAT,
   BFD_RELOC_CRIS_JUMP_SLOT,
   BFD_RELOC_CRIS_RELATIVE,
 
 
   BFD_RELOC_CRIS_32_GOT,
 
 
   BFD_RELOC_CRIS_16_GOT,
 
 
   BFD_RELOC_CRIS_32_GOTPLT,
 
 
   BFD_RELOC_CRIS_16_GOTPLT,
 
 
   BFD_RELOC_CRIS_32_GOTREL,
 
 
   BFD_RELOC_CRIS_32_PLT_GOTREL,
 
 
   BFD_RELOC_CRIS_32_PLT_PCREL,
 
 
   BFD_RELOC_860_COPY,
   BFD_RELOC_860_GLOB_DAT,
   BFD_RELOC_860_JUMP_SLOT,
   BFD_RELOC_860_RELATIVE,
   BFD_RELOC_860_PC26,
   BFD_RELOC_860_PLT26,
   BFD_RELOC_860_PC16,
   BFD_RELOC_860_LOW0,
   BFD_RELOC_860_SPLIT0,
   BFD_RELOC_860_LOW1,
   BFD_RELOC_860_SPLIT1,
   BFD_RELOC_860_LOW2,
   BFD_RELOC_860_SPLIT2,
   BFD_RELOC_860_LOW3,
   BFD_RELOC_860_LOGOT0,
   BFD_RELOC_860_SPGOT0,
   BFD_RELOC_860_LOGOT1,
   BFD_RELOC_860_SPGOT1,
   BFD_RELOC_860_LOGOTOFF0,
   BFD_RELOC_860_SPGOTOFF0,
   BFD_RELOC_860_LOGOTOFF1,
   BFD_RELOC_860_SPGOTOFF1,
   BFD_RELOC_860_LOGOTOFF2,
   BFD_RELOC_860_LOGOTOFF3,
   BFD_RELOC_860_LOPC,
   BFD_RELOC_860_HIGHADJ,
   BFD_RELOC_860_HAGOT,
   BFD_RELOC_860_HAGOTOFF,
   BFD_RELOC_860_HAPC,
   BFD_RELOC_860_HIGH,
   BFD_RELOC_860_HIGOT,
   BFD_RELOC_860_HIGOTOFF,
 
 
   BFD_RELOC_OPENRISC_ABS_26,
   BFD_RELOC_OPENRISC_REL_26,
 
 
   BFD_RELOC_H8_DIR16A8,
   BFD_RELOC_H8_DIR16R8,
   BFD_RELOC_H8_DIR24A8,
   BFD_RELOC_H8_DIR24R8,
   BFD_RELOC_H8_DIR32A16,
 
 
   BFD_RELOC_XSTORMY16_REL_12,
   BFD_RELOC_XSTORMY16_24,
   BFD_RELOC_XSTORMY16_FPTR16,
 
 
   BFD_RELOC_VAX_GLOB_DAT,
   BFD_RELOC_VAX_JMP_SLOT,
   BFD_RELOC_VAX_RELATIVE,
   BFD_RELOC_UNUSED };
 typedef enum bfd_reloc_code_real bfd_reloc_code_real_type;
 reloc_howto_type *
 bfd_reloc_type_lookup (bfd *abfd, bfd_reloc_code_real_type code);
 
 const char *
 bfd_get_reloc_code_name (bfd_reloc_code_real_type code);
 
 
 
 typedef struct symbol_cache_entry
 {
 # 3132 "../bfd/bfd.h"
   struct _bfd *the_bfd;
 
 
 
   const char *name;
 
 
 
 
   symvalue value;
 # 3228 "../bfd/bfd.h"
   flagword flags;
 
 
 
 
   struct sec *section;
 
 
   union
     {
       void * p;
       bfd_vma i;
     }
   udata;
 }
 asymbol;
 
 
 
 
 boolean
 bfd_is_local_label (bfd *abfd, asymbol *sym);
 
 boolean
 bfd_is_local_label_name (bfd *abfd, const char *name);
 # 3261 "../bfd/bfd.h"
 boolean
 bfd_set_symtab (bfd *abfd, asymbol **location, unsigned int count);
 
 void
 bfd_print_symbol_vandf (bfd *abfd, void * file, asymbol *symbol);
 
 
 
 
 asymbol *
 _bfd_generic_make_empty_symbol (bfd *);
 
 
 
 
 int
 bfd_decode_symclass (asymbol *symbol);
 
 boolean
 bfd_is_undefined_symclass (int symclass);
 
 void
 bfd_symbol_info (asymbol *symbol, symbol_info *ret);
 
 boolean
 bfd_copy_private_symbol_data (bfd *ibfd, asymbol *isym, bfd *obfd, asymbo=
 l *osym);
 
 
 
 
 
 
 struct _bfd
 {
 
   const char *filename;
 
 
   const struct bfd_target *xvec;
 # 3308 "../bfd/bfd.h"
   void * iostream;
 
 
 
   boolean cacheable;
 
 
 
 
   boolean target_defaulted;
 
 
 
   struct _bfd *lru_prev, *lru_next;
 
 
 
   ufile_ptr where;
 
 
   boolean opened_once;
 
 
 
   boolean mtime_set;
 
 
   long mtime;
 
 
   int ifd;
 
 
   bfd_format format;
 
 
   enum bfd_direction
     {
       no_direction =3D 0,
       read_direction =3D 1,
       write_direction =3D 2,
       both_direction =3D 3
     }
   direction;
 
 
   flagword flags;
 
 
 
 
   ufile_ptr origin;
 
 
 
   boolean output_has_begun;
 
 
   struct bfd_hash_table section_htab;
 
 
   struct sec *sections;
 
 
   struct sec **section_tail;
 
 
   unsigned int section_count;
 
 
 
   bfd_vma start_address;
 
 
   unsigned int symcount;
 
 
   struct symbol_cache_entry **outsymbols;
 
 
   unsigned int dynsymcount;
 
 
   const struct bfd_arch_info *arch_info;
 
 
   void * arelt_data;
   struct _bfd *my_archive;
   struct _bfd *next;
   struct _bfd *archive_head;
   boolean has_armap;
 
 
   struct _bfd *link_next;
 
 
 
   int archive_pass;
 
 
   union
     {
       struct aout_data_struct *aout_data;
       struct artdata *aout_ar_data;
       struct _oasys_data *oasys_obj_data;
       struct _oasys_ar_data *oasys_ar_data;
       struct coff_tdata *coff_obj_data;
       struct pe_tdata *pe_obj_data;
       struct xcoff_tdata *xcoff_obj_data;
       struct ecoff_tdata *ecoff_obj_data;
       struct ieee_data_struct *ieee_data;
       struct ieee_ar_data_struct *ieee_ar_data;
       struct srec_data_struct *srec_data;
       struct ihex_data_struct *ihex_data;
       struct tekhex_data_struct *tekhex_data;
       struct elf_obj_tdata *elf_obj_data;
       struct nlm_obj_tdata *nlm_obj_data;
       struct bout_data_struct *bout_data;
       struct mmo_data_struct *mmo_data;
       struct sun_core_struct *sun_core_data;
       struct sco5_core_struct *sco5_core_data;
       struct trad_core_struct *trad_core_data;
       struct som_data_struct *som_data;
       struct hpux_core_struct *hpux_core_data;
       struct hppabsd_core_struct *hppabsd_core_data;
       struct sgi_core_struct *sgi_core_data;
       struct lynx_core_struct *lynx_core_data;
       struct osf_core_struct *osf_core_data;
       struct cisco_core_struct *cisco_core_data;
       struct versados_data_struct *versados_data;
       struct netbsd_core_struct *netbsd_core_data;
       void * any;
     }
   tdata;
 
 
   void * usrdata;
 
 
 
 
   void * memory;
 };
 
 typedef enum bfd_error
 {
   bfd_error_no_error =3D 0,
   bfd_error_system_call,
   bfd_error_invalid_target,
   bfd_error_wrong_format,
   bfd_error_wrong_object_format,
   bfd_error_invalid_operation,
   bfd_error_no_memory,
   bfd_error_no_symbols,
   bfd_error_no_armap,
   bfd_error_no_more_archived_files,
   bfd_error_malformed_archive,
   bfd_error_file_not_recognized,
   bfd_error_file_ambiguously_recognized,
   bfd_error_no_contents,
   bfd_error_nonrepresentable_section,
   bfd_error_no_debug_section,
   bfd_error_bad_value,
   bfd_error_file_truncated,
   bfd_error_file_too_big,
   bfd_error_invalid_error_code
 }
 bfd_error_type;
 
 bfd_error_type
 bfd_get_error (void);
 
 void
 bfd_set_error (bfd_error_type error_tag);
 
 const char *
 bfd_errmsg (bfd_error_type error_tag);
 
 void
 bfd_perror (const char *message);
 
 typedef void (*bfd_error_handler_type) (const char *, ...);
 
 bfd_error_handler_type
 bfd_set_error_handler (bfd_error_handler_type);
 
 void
 bfd_set_error_program_name (const char *);
 
 bfd_error_handler_type
 bfd_get_error_handler (void);
 
 const char *
 bfd_archive_filename (bfd *);
 
 long
 bfd_get_reloc_upper_bound (bfd *abfd, asection *sect);
 
 long
 bfd_canonicalize_reloc (bfd *abfd, asection *sec, arelent **loc, asymbol =
 **syms);
 
 
 
 
 void
 bfd_set_reloc (bfd *abfd, asection *sec, arelent **rel, unsigned int coun=
 t);
 
 boolean
 bfd_set_file_flags (bfd *abfd, flagword flags);
 
 int
 bfd_get_arch_size (bfd *abfd);
 
 int
 bfd_get_sign_extend_vma (bfd *abfd);
 
 boolean
 bfd_set_start_address (bfd *abfd, bfd_vma vma);
 
 long
 bfd_get_mtime (bfd *abfd);
 
 long
 bfd_get_size (bfd *abfd);
 
 unsigned int
 bfd_get_gp_size (bfd *abfd);
 
 void
 bfd_set_gp_size (bfd *abfd, unsigned int i);
 
 bfd_vma
 bfd_scan_vma (const char *string, const char **end, int base);
 
 boolean
 bfd_copy_private_bfd_data (bfd *ibfd, bfd *obfd);
 
 
 
 
 boolean
 bfd_merge_private_bfd_data (bfd *ibfd, bfd *obfd);
 
 
 
 
 boolean
 bfd_set_private_flags (bfd *abfd, flagword flags);
 # 3631 "../bfd/bfd.h"
 extern bfd_byte *bfd_get_relocated_section_contents
        (bfd *, struct bfd_link_info *, struct bfd_link_order *, bfd_byte =
 *, boolean, asymbol **);
 
 
 
 boolean
 bfd_alt_mach_code (bfd *abfd, int alternative);
 
 
 symindex
 bfd_get_next_mapent (bfd *abfd, symindex previous, carsym **sym);
 
 boolean
 bfd_set_archive_head (bfd *output, bfd *new_head);
 
 bfd *
 bfd_openr_next_archived_file (bfd *archive, bfd *previous);
 
 
 const char *
 bfd_core_file_failing_command (bfd *abfd);
 
 int
 bfd_core_file_failing_signal (bfd *abfd);
 
 boolean
 core_file_matches_executable_p (bfd *core_bfd, bfd *exec_bfd);
 # 3681 "../bfd/bfd.h"
 enum bfd_flavour
 {
   bfd_target_unknown_flavour,
   bfd_target_aout_flavour,
   bfd_target_coff_flavour,
   bfd_target_ecoff_flavour,
   bfd_target_xcoff_flavour,
   bfd_target_elf_flavour,
   bfd_target_ieee_flavour,
   bfd_target_nlm_flavour,
   bfd_target_oasys_flavour,
   bfd_target_tekhex_flavour,
   bfd_target_srec_flavour,
   bfd_target_ihex_flavour,
   bfd_target_som_flavour,
   bfd_target_os9k_flavour,
   bfd_target_versados_flavour,
   bfd_target_msdos_flavour,
   bfd_target_ovax_flavour,
   bfd_target_evax_flavour,
   bfd_target_mmo_flavour
 };
 
 enum bfd_endian { BFD_ENDIAN_BIG, BFD_ENDIAN_LITTLE, BFD_ENDIAN_UNKNOWN }=
 ;
 
 
 typedef struct bfd_link_info _bfd_link_info;
 
 typedef struct bfd_target
 {
 
   char *name;
 
 
 
   enum bfd_flavour flavour;
 
 
   enum bfd_endian byteorder;
 
 
   enum bfd_endian header_byteorder;
 
 
 
   flagword object_flags;
 
 
 
   flagword section_flags;
 
 
 
   char symbol_leading_char;
 
 
   char ar_pad_char;
 
 
   unsigned short ar_max_namelen;
 
 
 
 
   bfd_vma (*bfd_getx64) (const bfd_byte *);
   bfd_signed_vma (*bfd_getx_signed_64) (const bfd_byte *);
   void (*bfd_putx64) (bfd_vma, bfd_byte *);
   bfd_vma (*bfd_getx32) (const bfd_byte *);
   bfd_signed_vma (*bfd_getx_signed_32) (const bfd_byte *);
   void (*bfd_putx32) (bfd_vma, bfd_byte *);
   bfd_vma (*bfd_getx16) (const bfd_byte *);
   bfd_signed_vma (*bfd_getx_signed_16) (const bfd_byte *);
   void (*bfd_putx16) (bfd_vma, bfd_byte *);
 
 
   bfd_vma (*bfd_h_getx64) (const bfd_byte *);
   bfd_signed_vma (*bfd_h_getx_signed_64) (const bfd_byte *);
   void (*bfd_h_putx64) (bfd_vma, bfd_byte *);
   bfd_vma (*bfd_h_getx32) (const bfd_byte *);
   bfd_signed_vma (*bfd_h_getx_signed_32) (const bfd_byte *);
   void (*bfd_h_putx32) (bfd_vma, bfd_byte *);
   bfd_vma (*bfd_h_getx16) (const bfd_byte *);
   bfd_signed_vma (*bfd_h_getx_signed_16) (const bfd_byte *);
   void (*bfd_h_putx16) (bfd_vma, bfd_byte *);
 
 
 
 
 
   const struct bfd_target *(*_bfd_check_format[bfd_type_end]) (bfd *);
 
 
   boolean (*_bfd_set_format[bfd_type_end]) (bfd *);
 
 
   boolean (*_bfd_write_contents[bfd_type_end]) (bfd *);
 # 3788 "../bfd/bfd.h"
   boolean (*_close_and_cleanup) (bfd *);
 
   boolean (*_bfd_free_cached_info) (bfd *);
 
   boolean (*_new_section_hook) (bfd *, sec_ptr);
 
   boolean (*_bfd_get_section_contents) (bfd *, sec_ptr, void *, file_ptr,=
  bfd_size_type);
 
   boolean (*_bfd_get_section_contents_in_window)
     (bfd *, sec_ptr, bfd_window *, file_ptr, bfd_size_type);
 # 3809 "../bfd/bfd.h"
   boolean (*_bfd_copy_private_bfd_data) (bfd *, bfd *);
 
 
   boolean (*_bfd_merge_private_bfd_data) (bfd *, bfd *);
 
 
   boolean (*_bfd_copy_private_section_data) (bfd *, sec_ptr, bfd *, sec_p=
 tr);
 
 
 
   boolean (*_bfd_copy_private_symbol_data) (bfd *, asymbol *, bfd *, asym=
 bol *);
 
 
   boolean (*_bfd_set_private_flags) (bfd *, flagword);
 
 
   boolean (*_bfd_print_private_bfd_data) (bfd *, void *);
 
 
 
 
 
 
   char * (*_core_file_failing_command) (bfd *);
   int (*_core_file_failing_signal) (bfd *);
   boolean (*_core_file_matches_executable_p) (bfd *, bfd *);
 # 3848 "../bfd/bfd.h"
   boolean (*_bfd_slurp_armap) (bfd *);
   boolean (*_bfd_slurp_extended_name_table) (bfd *);
   boolean (*_bfd_construct_extended_name_table)
     (bfd *, char **, bfd_size_type *, const char **);
   void (*_bfd_truncate_arname) (bfd *, const char *, char *);
   boolean (*write_armap)
     (bfd *, unsigned int, struct orl *, unsigned int, int);
   void * (*_bfd_read_ar_hdr_fn) (bfd *);
   bfd * (*openr_next_archived_file) (bfd *, bfd *);
 
   bfd * (*_bfd_get_elt_at_index) (bfd *, symindex);
   int (*_bfd_stat_arch_elt) (bfd *, struct stat *);
   boolean (*_bfd_update_armap_timestamp) (bfd *);
 # 3875 "../bfd/bfd.h"
   long (*_bfd_get_symtab_upper_bound) (bfd *);
   long (*_bfd_canonicalize_symtab) (bfd *, struct symbol_cache_entry **);
 
   struct symbol_cache_entry *
            (*_bfd_make_empty_symbol) (bfd *);
   void (*_bfd_print_symbol) (bfd *, void *, struct symbol_cache_entry *, =
 bfd_print_symbol_type);
 
 
 
   void (*_bfd_get_symbol_info) (bfd *, struct symbol_cache_entry *, symbo=
 l_info *);
 
 
 
   boolean (*_bfd_is_local_label_name) (bfd *, const char *);
 
   alent * (*_get_lineno) (bfd *, struct symbol_cache_entry *);
   boolean (*_bfd_find_nearest_line)
     (bfd *, struct sec *, struct symbol_cache_entry **, bfd_vma, const ch=
 ar **, const char **, unsigned int *);
 
 
 
 
   asymbol *(*_bfd_make_debug_symbol) (bfd *, void *, unsigned long size);
 
 
 
   long (*_read_minisymbols) (bfd *, boolean, void * *, unsigned int *);
 
 
 
   asymbol *(*_minisymbol_to_symbol) (bfd *, boolean, const void *, asymbo=
 l *);
 
 
 
 
 
 
 
   long (*_get_reloc_upper_bound) (bfd *, sec_ptr);
   long (*_bfd_canonicalize_reloc) (bfd *, sec_ptr, arelent **, struct sym=
 bol_cache_entry **);
 
 
   reloc_howto_type *
            (*reloc_type_lookup) (bfd *, bfd_reloc_code_real_type);
 
 
 
 
 
   boolean (*_bfd_set_arch_mach) (bfd *, enum bfd_architecture, unsigned l=
 ong);
 
   boolean (*_bfd_set_section_contents) (bfd *, sec_ptr, void *, file_ptr,=
  bfd_size_type);
 # 3943 "../bfd/bfd.h"
   int (*_bfd_sizeof_headers) (bfd *, boolean);
   bfd_byte *(*_bfd_get_relocated_section_contents)
     (bfd *, struct bfd_link_info *, struct bfd_link_order *, bfd_byte *, =
 boolean, struct symbol_cache_entry **);
 
 
   boolean (*_bfd_relax_section)
     (bfd *, struct sec *, struct bfd_link_info *, boolean *);
 
 
 
   struct bfd_link_hash_table *(*_bfd_link_hash_table_create) (bfd *);
 
 
   void (*_bfd_link_hash_table_free) (struct bfd_link_hash_table *);
 
 
   boolean (*_bfd_link_add_symbols) (bfd *, struct bfd_link_info *);
 
 
   void (*_bfd_link_just_syms) (asection *, struct bfd_link_info *);
 
 
 
   boolean (*_bfd_final_link) (bfd *, struct bfd_link_info *);
 
 
   boolean (*_bfd_link_split_section) (bfd *, struct sec *);
 
 
   boolean (*_bfd_gc_sections) (bfd *, struct bfd_link_info *);
 
 
   boolean (*_bfd_merge_sections) (bfd *, struct bfd_link_info *);
 
 
   boolean (*_bfd_discard_group) (bfd *, struct sec *);
 # 3987 "../bfd/bfd.h"
   long (*_bfd_get_dynamic_symtab_upper_bound) (bfd *);
 
   long (*_bfd_canonicalize_dynamic_symtab)
     (bfd *, struct symbol_cache_entry **);
 
   long (*_bfd_get_dynamic_reloc_upper_bound) (bfd *);
 
   long (*_bfd_canonicalize_dynamic_reloc)
     (bfd *, arelent **, struct symbol_cache_entry **);
 
 
   const struct bfd_target * alternative_target;
 
 
 
   void * backend_data;
 
 } bfd_target;
 
 boolean
 bfd_set_default_target (const char *name);
 
 const bfd_target *
 bfd_find_target (const char *target_name, bfd *abfd);
 
 const char **
 bfd_target_list (void);
 
 const bfd_target *
 bfd_search_for_target (int (* search_func) (const bfd_target *, void *), =
 void *);
 
 
 boolean
 bfd_check_format (bfd *abfd, bfd_format format);
 
 boolean
 bfd_check_format_matches (bfd *abfd, bfd_format format, char ***matching)=
 ;
 
 boolean
 bfd_set_format (bfd *abfd, bfd_format format);
 
 const char *
 bfd_format_string (bfd_format format);
 # 133 "../../binutils-2.13.1/gas/as.h" 2
 
 # 1 "../../binutils-2.13.1/include/libiberty.h" 1
 # 46 "../../binutils-2.13.1/include/libiberty.h"
 # 1 "/usr/lib/gcc-lib/i486-suse-linux/3.2/include/stddef.h" 1 3
 # 147 "/usr/lib/gcc-lib/i486-suse-linux/3.2/include/stddef.h" 3
 typedef int ptrdiff_t;
 # 47 "../../binutils-2.13.1/include/libiberty.h" 2
 
 # 1 "/usr/lib/gcc-lib/i486-suse-linux/3.2/include/stdarg.h" 1 3
 # 49 "../../binutils-2.13.1/include/libiberty.h" 2
 
 
 
 
 
 extern char **buildargv (const char *) __attribute__ ((__malloc__));
 
 
 
 extern void freeargv (char **);
 
 
 
 
 extern char **dupargv (char **) __attribute__ ((__malloc__));
 # 78 "../../binutils-2.13.1/include/libiberty.h"
 extern char *basename (const char *);
 
 
 
 
 
 
 
 extern const char *lbasename (const char *);
 
 
 
 
 
 extern char *concat (const char *, ...) __attribute__ ((__malloc__));
 # 101 "../../binutils-2.13.1/include/libiberty.h"
 extern char *reconcat (char *, const char *, ...) __attribute__ ((__mallo=
 c__));
 
 
 
 
 
 extern unsigned long concat_length (const char *, ...);
 
 
 
 
 
 
 extern char *concat_copy (char *, const char *, ...);
 
 
 
 
 
 
 extern char *concat_copy2 (const char *, ...);
 
 
 
 extern char *libiberty_concat_ptr;
 # 137 "../../binutils-2.13.1/include/libiberty.h"
 extern int fdmatch (int fd1, int fd2);
 
 
 
 
 extern char * getpwd (void);
 
 
 
 extern long get_run_time (void);
 
 
 
 extern char *choose_temp_base (void) __attribute__ ((__malloc__));
 
 
 
 extern char *make_temp_file (const char *) __attribute__ ((__malloc__));
 
 
 
 extern const char *spaces (int count);
 
 
 
 
 extern int errno_max (void);
 
 
 
 
 extern const char *strerrno (int);
 
 
 
 extern int strtoerrno (const char *);
 
 
 
 extern char *xstrerror (int);
 
 
 
 
 extern int signo_max (void);
 # 193 "../../binutils-2.13.1/include/libiberty.h"
 extern const char *strsigno (int);
 
 
 
 extern int strtosigno (const char *);
 
 
 
 extern int xatexit (void (*fn) (void));
 
 
 
 extern void xexit (int status) __attribute__ ((__noreturn__));
 
 
 
 extern void xmalloc_set_program_name (const char *);
 
 
 extern void xmalloc_failed (size_t) __attribute__ ((__noreturn__));
 
 
 
 
 
 extern void * xmalloc (size_t) __attribute__ ((__malloc__));
 
 
 
 
 
 extern void * xrealloc (void *, size_t);
 
 
 
 
 extern void * xcalloc (size_t, size_t) __attribute__ ((__malloc__));
 
 
 
 extern char *xstrdup (const char *) __attribute__ ((__malloc__));
 
 
 
 extern void * xmemdup (const void *, size_t, size_t) __attribute__ ((__ma=
 lloc__));
 
 
 
 
 
 extern const char _hex_value[256];
 extern void hex_init (void);
 # 260 "../../binutils-2.13.1/include/libiberty.h"
 extern int pexecute (const char *, char * const *, const char *, const ch=
 ar *, char **, char **, int);
 
 
 
 
 extern int pwait (int, int *, int);
 
 
 
 
 extern int asprintf (char **, const char *, ...) __attribute__ ((__format=
 __ (__printf__, 2, 3)));
 
 
 
 
 extern int vasprintf (char **, const char *, va_list)
   __attribute__ ((__format__ (__printf__, 2, 0)));
 # 286 "../../binutils-2.13.1/include/libiberty.h"
 extern void * C_alloca (size_t) __attribute__ ((__malloc__));
 # 135 "../../binutils-2.13.1/gas/as.h" 2
 
 
 # 1 "../../binutils-2.13.1/include/progress.h" 1
 # 138 "../../binutils-2.13.1/gas/as.h" 2
 # 161 "../../binutils-2.13.1/gas/as.h"
 extern char **environ;
 # 194 "../../binutils-2.13.1/gas/as.h"
 # 1 "../../binutils-2.13.1/include/fopen-same.h" 1
 # 195 "../../binutils-2.13.1/gas/as.h" 2
 # 212 "../../binutils-2.13.1/gas/as.h"
 # 1 "../../binutils-2.13.1/gas/asintl.h" 1
 # 24 "../../binutils-2.13.1/gas/asintl.h"
 # 1 "/usr/include/locale.h" 1 3
 # 29 "/usr/include/locale.h" 3
 # 1 "/usr/lib/gcc-lib/i486-suse-linux/3.2/include/stddef.h" 1 3
 # 30 "/usr/include/locale.h" 2 3
 # 1 "/usr/include/bits/locale.h" 1 3
 # 27 "/usr/include/bits/locale.h" 3
 enum
 {
   __LC_CTYPE =3D 0,
   __LC_NUMERIC =3D 1,
   __LC_TIME =3D 2,
   __LC_COLLATE =3D 3,
   __LC_MONETARY =3D 4,
   __LC_MESSAGES =3D 5,
   __LC_ALL =3D 6,
   __LC_PAPER =3D 7,
   __LC_NAME =3D 8,
   __LC_ADDRESS =3D 9,
   __LC_TELEPHONE =3D 10,
   __LC_MEASUREMENT =3D 11,
   __LC_IDENTIFICATION =3D 12
 };
 # 31 "/usr/include/locale.h" 2 3
 
 
 # 52 "/usr/include/locale.h" 3
 struct lconv
 {
 
 
   char *decimal_point;
   char *thousands_sep;
 
 
 
 
 
   char *grouping;
 
 
 
 
 
   char *int_curr_symbol;
   char *currency_symbol;
   char *mon_decimal_point;
   char *mon_thousands_sep;
   char *mon_grouping;
   char *positive_sign;
   char *negative_sign;
   char int_frac_digits;
   char frac_digits;
 
   char p_cs_precedes;
 
   char p_sep_by_space;
 
   char n_cs_precedes;
 
   char n_sep_by_space;
 
 
 
 
 
 
   char p_sign_posn;
   char n_sign_posn;
 
 
   char int_p_cs_precedes;
 
   char int_p_sep_by_space;
 
   char int_n_cs_precedes;
 
   char int_n_sep_by_space;
 
 
 
 
 
 
   char int_p_sign_posn;
   char int_n_sign_posn;
 # 119 "/usr/include/locale.h" 3
 };
 
 
 
 extern char *setlocale (int __category, __const char *__locale) ;
 
 
 extern struct lconv *localeconv (void) ;
 # 149 "/usr/include/locale.h" 3
 extern __locale_t __newlocale (int __category_mask, __const char *__local=
 e,
                                __locale_t __base) ;
 
 
 
 extern __locale_t __duplocale (__locale_t __dataset) ;
 
 
 
 extern void __freelocale (__locale_t __dataset) ;
 
 
 
 # 25 "../../binutils-2.13.1/gas/asintl.h" 2
 
 
 
 # 1 "/usr/include/libintl.h" 1 3
 # 30 "/usr/include/libintl.h" 3
 
 
 
 
 
 extern char *gettext (__const char *__msgid) ;
 
 
 
 extern char *dgettext (__const char *__domainname, __const char *__msgid)
      ;
 extern char *__dgettext (__const char *__domainname, __const char *__msgi=
 d)
      __attribute__ ((__format_arg__ (2)));
 
 
 
 extern char *dcgettext (__const char *__domainname,
                         __const char *__msgid, int __category) ;
 extern char *__dcgettext (__const char *__domainname,
                           __const char *__msgid, int __category)
      __attribute__ ((__format_arg__ (2)));
 
 
 
 
 extern char *ngettext (__const char *__msgid1, __const char *__msgid2,
                        unsigned long int __n)
      __attribute__ ((__format_arg__ (1))) __attribute__ ((__format_arg__ =
 (2)));
 
 
 
 extern char *dngettext (__const char *__domainname, __const char *__msgid=
 1,
                         __const char *__msgid2, unsigned long int __n)
      __attribute__ ((__format_arg__ (2))) __attribute__ ((__format_arg__ =
 (3)));
 
 
 
 extern char *dcngettext (__const char *__domainname, __const char *__msgi=
 d1,
                          __const char *__msgid2, unsigned long int __n,
                          int __category)
      __attribute__ ((__format_arg__ (2))) __attribute__ ((__format_arg__ =
 (3)));
 
 
 
 
 
 extern char *textdomain (__const char *__domainname) ;
 
 
 
 extern char *bindtextdomain (__const char *__domainname,
                              __const char *__dirname) ;
 
 
 
 extern char *bind_textdomain_codeset (__const char *__domainname,
                                       __const char *__codeset) ;
 
 
 
 
 
 
 
 # 1 "/usr/lib/gcc-lib/i486-suse-linux/3.2/include/stddef.h" 1 3
 # 95 "/usr/include/libintl.h" 2 3
 # 115 "/usr/include/libintl.h" 3
 
 # 29 "../../binutils-2.13.1/gas/asintl.h" 2
 # 213 "../../binutils-2.13.1/gas/as.h" 2
 
 
 
 
 
 
 
 # 1 "../../binutils-2.13.1/gas/flonum.h" 1
 # 35 "../../binutils-2.13.1/gas/flonum.h"
 # 1 "../../binutils-2.13.1/gas/bignum.h" 1
 # 41 "../../binutils-2.13.1/gas/bignum.h"
 typedef unsigned short LITTLENUM_TYPE;
 
 
 
 
 
 
 
 int bignum_copy (LITTLENUM_TYPE * in, int in_length, LITTLENUM_TYPE * out=
 , int out_length);
 # 36 "../../binutils-2.13.1/gas/flonum.h" 2
 # 52 "../../binutils-2.13.1/gas/flonum.h"
 struct FLONUM_STRUCT {
   LITTLENUM_TYPE *low;
   LITTLENUM_TYPE *high;
   LITTLENUM_TYPE *leader;
 
   long exponent;
   char sign;
 };
 
 typedef struct FLONUM_STRUCT FLONUM_TYPE;
 # 75 "../../binutils-2.13.1/gas/flonum.h"
 extern const FLONUM_TYPE flonum_positive_powers_of_ten[];
 extern const FLONUM_TYPE flonum_negative_powers_of_ten[];
 extern const int table_size_of_flonum_powers_of_ten;
 # 87 "../../binutils-2.13.1/gas/flonum.h"
 int atof_generic (char **address_of_string_pointer, const char *string_of=
 _decimal_marks, const char *string_of_decimal_exponent_marks, FLONUM_TYPE=
  * address_of_generic_floating_point_number);
 
 
 
 
 void flonum_copy (FLONUM_TYPE * in, FLONUM_TYPE * out);
 void flonum_multip (const FLONUM_TYPE * a, const FLONUM_TYPE * b, FLONUM_=
 TYPE * product);
 # 221 "../../binutils-2.13.1/gas/as.h" 2
 
 
 
 
 extern bfd *stdoutput;
 typedef bfd_vma addressT;
 typedef bfd_signed_vma offsetT;
 
 
 
 
 
 
 typedef addressT valueT;
 # 296 "../../binutils-2.13.1/gas/as.h"
 typedef asection *segT;
 
 
 
 
 
 typedef int subsegT;
 
 
 extern subsegT now_subseg;
 
 
 extern segT now_seg;
 # 322 "../../binutils-2.13.1/gas/as.h"
 extern segT reg_section, expr_section;
 
 extern segT text_section, data_section, bss_section;
 # 339 "../../binutils-2.13.1/gas/as.h"
 enum _relax_state {
 
 
 
   rs_fill =3D 1,
 
 
 
 
 
   rs_align,
 
 
 
 
 
 
   rs_align_code,
 
 
 
   rs_align_test,
 
 
 
   rs_org,
 
 
 
   rs_broken_word,
 
 
 
   rs_machine_dependent,
 
 
 
 
 
   rs_space,
 
 
 
   rs_leb128,
 
 
   rs_cfa,
 
 
   rs_dwarf2dbg
 };
 
 typedef enum _relax_state relax_stateT;
 
 
 
 typedef unsigned int relax_substateT;
 
 
 
 typedef addressT relax_addressT;
 
 
 
 extern unsigned char flag_no_comments;
 extern unsigned char flag_debug;
 extern unsigned char flag_signed_overflow_ok;
 
 extern unsigned char flag_warn_displacement;
 
 
 
 extern int flag_keep_locals;
 
 
 extern int flag_mri;
 
 
 
 extern unsigned char flag_readonly_data_in_text;
 
 
 extern int flag_no_warnings;
 
 
 extern int flag_fatal_warnings;
 
 
 
 extern unsigned char flag_always_generate_output;
 
 
 extern unsigned char flag_print_statistics;
 
 
 extern int flag_strip_local_absolute;
 
 
 extern int flag_traditional_format;
 
 
 extern char *out_file_name;
 
 
 extern char *insttbl_file_name;
 
 
 extern int need_pass_2;
 
 
 
 extern int linkrelax;
 
 
 extern int listing;
 # 463 "../../binutils-2.13.1/gas/as.h"
 enum debug_info_type {
   DEBUG_UNSPECIFIED,
   DEBUG_NONE,
   DEBUG_STABS,
   DEBUG_ECOFF,
   DEBUG_DWARF,
   DEBUG_DWARF2
 };
 
 extern enum debug_info_type debug_type;
 
 
 extern int max_macro_nest;
 
 
 
 extern int chunksize;
 
 struct _pseudo_type {
 
   const char *poc_name;
 
   void (*poc_handler) (int);
 
   int poc_val;
 };
 
 typedef struct _pseudo_type pseudo_typeS;
 # 539 "../../binutils-2.13.1/gas/as.h"
 void as_bad (const char *format, ...) __attribute__ ((__format__ (__print=
 f__, 1, 2)));
 void as_fatal (const char *format, ...) __attribute__ ((__format__ (__pri=
 ntf__, 1, 2))) __attribute__ ((__noreturn__));
 void as_tsktsk (const char *format, ...) __attribute__ ((__format__ (__pr=
 intf__, 1, 2)));
 void as_warn (const char *format, ...) __attribute__ ((__format__ (__prin=
 tf__, 1, 2)));
 void as_bad_where (char *file, unsigned int line, const char *format, ...=
 ) __attribute__ ((__format__ (__printf__, 3, 4)));
 void as_warn_where (char *file, unsigned int line, const char *format, ..=
 =2E) __attribute__ ((__format__ (__printf__, 3, 4)));
 
 void as_assert (const char *, int, const char *);
 void as_abort (const char *, int, const char *) __attribute__ ((__noretur=
 n__));
 
 void fprint_value (FILE *file, addressT value);
 void sprint_value (char *buf, addressT value);
 
 int had_errors (void);
 int had_warnings (void);
 
 void print_version_id (void);
 char *app_push (void);
 char *atof_ieee (char *str, int what_kind, LITTLENUM_TYPE * words);
 char *input_scrub_include_file (char *filename, char *position);
 extern void input_scrub_insert_line (const char *line);
 extern void input_scrub_insert_file (char *path);
 char *input_scrub_new_file (char *filename);
 char *input_scrub_next_buffer (char **bufp);
 int do_scrub_chars (int (*get) (char *, int), char *to, int tolen);
 int gen_to_words (LITTLENUM_TYPE * words, int precision, long exponent_bi=
 ts);
 
 int had_err (void);
 int ignore_input (void);
 void cond_finish_check (int);
 void cond_exit_macro (int);
 int seen_at_least_1_file (void);
 void app_pop (char *arg);
 void as_howmuch (FILE * stream);
 void as_perror (const char *gripe, const char *filename);
 void as_where (char **namep, unsigned int *linep);
 void bump_line_counters (void);
 void do_scrub_begin (int);
 void input_scrub_begin (void);
 void input_scrub_close (void);
 void input_scrub_end (void);
 int new_logical_line (char *fname, int line_number);
 void subsegs_begin (void);
 void subseg_change (segT seg, int subseg);
 segT subseg_new (const char *name, subsegT subseg);
 segT subseg_force_new (const char *name, subsegT subseg);
 void subseg_set (segT seg, subsegT subseg);
 
 segT subseg_get (const char *, int);
 
 int subseg_text_p (segT);
 
 void start_dependencies (char *);
 void register_dependency (char *);
 void print_dependencies (void);
 
 struct expressionS;
 struct fix;
 typedef struct symbol symbolS;
 struct relax_type;
 typedef struct frag fragS;
 
 
 
 valueT add_to_literal_pool (symbolS *, valueT, segT, int);
 
 
 int check_eh_frame (struct expressionS *, unsigned int *);
 int eh_frame_estimate_size_before_relax (fragS *);
 int eh_frame_relax_frag (fragS *);
 void eh_frame_convert_frag (fragS *);
 
 # 1 "../../binutils-2.13.1/gas/expr.h" 1
 # 43 "../../binutils-2.13.1/gas/expr.h"
 typedef enum {
 
   O_illegal,
 
   O_absent,
 
   O_constant,
 
   O_symbol,
 
   O_symbol_rva,
 
   O_register,
 
 
 
 
   O_big,
 
   O_uminus,
 
   O_bit_not,
 
   O_logical_not,
 
   O_multiply,
 
   O_divide,
 
   O_modulus,
 
   O_left_shift,
 
   O_right_shift,
 
   O_bit_inclusive_or,
 
   O_bit_or_not,
 
   O_bit_exclusive_or,
 
   O_bit_and,
 
   O_add,
 
   O_subtract,
 
   O_eq,
 
   O_ne,
 
   O_lt,
 
   O_le,
 
   O_ge,
 
   O_gt,
 
   O_logical_and,
 
   O_logical_or,
 
   O_index,
 
   O_md1, O_md2, O_md3, O_md4, O_md5, O_md6, O_md7, O_md8,
   O_md9, O_md10, O_md11, O_md12, O_md13, O_md14, O_md15, O_md16,
   O_md17, O_md18, O_md19, O_md20, O_md21, O_md22, O_md23, O_md24,
   O_md25, O_md26, O_md27, O_md28, O_md29, O_md30, O_md31, O_md32,
 
   O_max
 } operatorT;
 
 typedef struct expressionS {
 
   symbolS *X_add_symbol;
 
   symbolS *X_op_symbol;
 
   offsetT X_add_number;
 
 
 
 
 
   operatorT X_op : 8;
 # 138 "../../binutils-2.13.1/gas/expr.h"
   unsigned int X_unsigned : 1;
 
 
 
 
   unsigned short X_md;
 } expressionS;
 
 
 
 
 
 
 
 extern FLONUM_TYPE generic_floating_point_number;
 
 extern LITTLENUM_TYPE generic_bignum[];
 
 
 
 typedef char operator_rankT;
 
 extern char get_symbol_end (void);
 extern void expr_begin (void);
 extern void expr_set_precedence (void);
 extern segT expr (int rank, expressionS * resultP);
 extern unsigned int get_single_number (void);
 extern symbolS *make_expr_symbol (expressionS * expressionP);
 extern int expr_symbol_where
   (symbolS *, char **, unsigned int *);
 
 extern symbolS *expr_build_uconstant (offsetT);
 extern symbolS *expr_build_unary (operatorT, symbolS *);
 extern symbolS *expr_build_binary (operatorT, symbolS *, symbolS *);
 extern symbolS *expr_build_dot (void);
 # 612 "../../binutils-2.13.1/gas/as.h" 2
 
 
 # 1 "targ-env.h" 1
 # 1 "../../binutils-2.13.1/gas/config/te-generic.h" 1
 # 19 "../../binutils-2.13.1/gas/config/te-generic.h"
 # 1 "obj-format.h" 1
 # 1 "../../binutils-2.13.1/gas/config/obj-elf.h" 1
 # 40 "../../binutils-2.13.1/gas/config/obj-elf.h"
 # 1 "../../binutils-2.13.1/bfd/elf-bfd.h" 1
 # 25 "../../binutils-2.13.1/bfd/elf-bfd.h"
 # 1 "../../binutils-2.13.1/include/elf/common.h" 1
 # 26 "../../binutils-2.13.1/bfd/elf-bfd.h" 2
 # 1 "../../binutils-2.13.1/include/elf/internal.h" 1
 # 44 "../../binutils-2.13.1/include/elf/internal.h"
 typedef struct elf_internal_ehdr {
   unsigned char e_ident[16];
   bfd_vma e_entry;
   bfd_size_type e_phoff;
   bfd_size_type e_shoff;
   unsigned long e_version;
   unsigned long e_flags;
   unsigned short e_type;
   unsigned short e_machine;
   unsigned int e_ehsize;
   unsigned int e_phentsize;
   unsigned int e_phnum;
   unsigned int e_shentsize;
   unsigned int e_shnum;
   unsigned int e_shstrndx;
 } Elf_Internal_Ehdr;
 # 68 "../../binutils-2.13.1/include/elf/internal.h"
 struct elf_internal_phdr {
   unsigned long p_type;
   unsigned long p_flags;
   bfd_vma p_offset;
   bfd_vma p_vaddr;
   bfd_vma p_paddr;
   bfd_vma p_filesz;
   bfd_vma p_memsz;
   bfd_vma p_align;
 };
 
 typedef struct elf_internal_phdr Elf_Internal_Phdr;
 
 
 
 
 
 
 
 typedef struct elf_internal_shdr {
   unsigned int sh_name;
   unsigned int sh_type;
   bfd_vma sh_flags;
   bfd_vma sh_addr;
   bfd_size_type sh_size;
   bfd_size_type sh_entsize;
   unsigned long sh_link;
   unsigned long sh_info;
   file_ptr sh_offset;
   unsigned int sh_addralign;
 
 
   asection * bfd_section;
   unsigned char *contents;
 } Elf_Internal_Shdr;
 # 111 "../../binutils-2.13.1/include/elf/internal.h"
 struct elf_internal_sym {
   bfd_vma st_value;
   bfd_vma st_size;
   unsigned long st_name;
   unsigned char st_info;
   unsigned char st_other;
   unsigned int st_shndx;
 };
 
 typedef struct elf_internal_sym Elf_Internal_Sym;
 # 129 "../../binutils-2.13.1/include/elf/internal.h"
 typedef struct elf_internal_note {
   unsigned long namesz;
   unsigned long descsz;
   unsigned long type;
   char * namedata;
   char * descdata;
   bfd_vma descpos;
 } Elf_Internal_Note;
 
 
 
 
 
 typedef struct elf_internal_rel {
   bfd_vma r_offset;
 
   bfd_vma r_info;
 } Elf_Internal_Rel;
 
 
 
 
 
 
 typedef struct elf_internal_rela {
   bfd_vma r_offset;
   bfd_vma r_info;
   bfd_vma r_addend;
 } Elf_Internal_Rela;
 # 166 "../../binutils-2.13.1/include/elf/internal.h"
 typedef struct elf_internal_dyn {
 
   bfd_vma d_tag;
   union {
 
     bfd_vma d_val;
     bfd_vma d_ptr;
   } d_un;
 } Elf_Internal_Dyn;
 # 183 "../../binutils-2.13.1/include/elf/internal.h"
 typedef struct elf_internal_verdef {
   unsigned short vd_version;
   unsigned short vd_flags;
   unsigned short vd_ndx;
   unsigned short vd_cnt;
   unsigned long vd_hash;
   unsigned long vd_aux;
   unsigned long vd_next;
 
 
 
   bfd *vd_bfd;
   const char *vd_nodename;
   struct elf_internal_verdef *vd_nextdef;
   struct elf_internal_verdaux *vd_auxptr;
   unsigned int vd_exp_refno;
 } Elf_Internal_Verdef;
 
 
 
 typedef struct elf_internal_verdaux {
   unsigned long vda_name;
   unsigned long vda_next;
 
 
 
   const char *vda_nodename;
   struct elf_internal_verdaux *vda_nextptr;
 } Elf_Internal_Verdaux;
 
 
 
 typedef struct elf_internal_verneed {
   unsigned short vn_version;
   unsigned short vn_cnt;
   unsigned long vn_file;
   unsigned long vn_aux;
   unsigned long vn_next;
 
 
 
   bfd *vn_bfd;
   const char *vn_filename;
   struct elf_internal_vernaux *vn_auxptr;
   struct elf_internal_verneed *vn_nextref;
 } Elf_Internal_Verneed;
 
 
 
 typedef struct elf_internal_vernaux {
   unsigned long vna_hash;
   unsigned short vna_flags;
   unsigned short vna_other;
   unsigned long vna_name;
   unsigned long vna_next;
 
 
 
   const char *vna_nodename;
   struct elf_internal_vernaux *vna_nextptr;
 } Elf_Internal_Vernaux;
 
 
 
 
 typedef struct elf_internal_versym {
   unsigned short vs_vers;
 } Elf_Internal_Versym;
 
 
 typedef struct
 {
   unsigned short int si_boundto;
   unsigned short int si_flags;
 } Elf_Internal_Syminfo;
 # 287 "../../binutils-2.13.1/include/elf/internal.h"
 struct elf_segment_map
 {
 
   struct elf_segment_map *next;
 
   unsigned long p_type;
 
   unsigned long p_flags;
 
   bfd_vma p_paddr;
 
 
   unsigned int p_flags_valid : 1;
 
 
   unsigned int p_paddr_valid : 1;
 
   unsigned int includes_filehdr : 1;
 
   unsigned int includes_phdrs : 1;
 
   unsigned int count;
 
   asection *sections[1];
 };
 # 27 "../../binutils-2.13.1/bfd/elf-bfd.h" 2
 # 1 "../../binutils-2.13.1/include/elf/external.h" 1
 # 40 "../../binutils-2.13.1/include/elf/external.h"
 typedef struct {
   unsigned char e_ident[16];
   unsigned char e_type[2];
   unsigned char e_machine[2];
   unsigned char e_version[4];
   unsigned char e_entry[4];
   unsigned char e_phoff[4];
   unsigned char e_shoff[4];
   unsigned char e_flags[4];
   unsigned char e_ehsize[2];
   unsigned char e_phentsize[2];
   unsigned char e_phnum[2];
   unsigned char e_shentsize[2];
   unsigned char e_shnum[2];
   unsigned char e_shstrndx[2];
 } Elf32_External_Ehdr;
 
 typedef struct {
   unsigned char e_ident[16];
   unsigned char e_type[2];
   unsigned char e_machine[2];
   unsigned char e_version[4];
   unsigned char e_entry[8];
   unsigned char e_phoff[8];
   unsigned char e_shoff[8];
   unsigned char e_flags[4];
   unsigned char e_ehsize[2];
   unsigned char e_phentsize[2];
   unsigned char e_phnum[2];
   unsigned char e_shentsize[2];
   unsigned char e_shnum[2];
   unsigned char e_shstrndx[2];
 } Elf64_External_Ehdr;
 
 
 
 typedef struct {
   unsigned char p_type[4];
   unsigned char p_offset[4];
   unsigned char p_vaddr[4];
   unsigned char p_paddr[4];
   unsigned char p_filesz[4];
   unsigned char p_memsz[4];
   unsigned char p_flags[4];
   unsigned char p_align[4];
 } Elf32_External_Phdr;
 
 typedef struct {
   unsigned char p_type[4];
   unsigned char p_flags[4];
   unsigned char p_offset[8];
   unsigned char p_vaddr[8];
   unsigned char p_paddr[8];
   unsigned char p_filesz[8];
   unsigned char p_memsz[8];
   unsigned char p_align[8];
 } Elf64_External_Phdr;
 
 
 
 typedef struct {
   unsigned char sh_name[4];
   unsigned char sh_type[4];
   unsigned char sh_flags[4];
   unsigned char sh_addr[4];
   unsigned char sh_offset[4];
   unsigned char sh_size[4];
   unsigned char sh_link[4];
   unsigned char sh_info[4];
   unsigned char sh_addralign[4];
   unsigned char sh_entsize[4];
 } Elf32_External_Shdr;
 
 typedef struct {
   unsigned char sh_name[4];
   unsigned char sh_type[4];
   unsigned char sh_flags[8];
   unsigned char sh_addr[8];
   unsigned char sh_offset[8];
   unsigned char sh_size[8];
   unsigned char sh_link[4];
   unsigned char sh_info[4];
   unsigned char sh_addralign[8];
   unsigned char sh_entsize[8];
 } Elf64_External_Shdr;
 
 
 
 typedef struct {
   unsigned char st_name[4];
   unsigned char st_value[4];
   unsigned char st_size[4];
   unsigned char st_info[1];
   unsigned char st_other[1];
   unsigned char st_shndx[2];
 } Elf32_External_Sym;
 
 typedef struct {
   unsigned char st_name[4];
   unsigned char st_info[1];
   unsigned char st_other[1];
   unsigned char st_shndx[2];
   unsigned char st_value[8];
   unsigned char st_size[8];
 } Elf64_External_Sym;
 
 typedef struct {
   unsigned char est_shndx[4];
 } Elf_External_Sym_Shndx;
 
 
 
 typedef struct {
   unsigned char namesz[4];
   unsigned char descsz[4];
   unsigned char type[4];
   char name[1];
 } Elf_External_Note;
 
 
 typedef struct {
   unsigned char r_offset[4];
   unsigned char r_info[4];
 } Elf32_External_Rel;
 
 typedef struct {
   unsigned char r_offset[4];
   unsigned char r_info[4];
   unsigned char r_addend[4];
 } Elf32_External_Rela;
 
 typedef struct {
   unsigned char r_offset[8];
   unsigned char r_info[8];
 } Elf64_External_Rel;
 
 typedef struct {
   unsigned char r_offset[8];
   unsigned char r_info[8];
   unsigned char r_addend[8];
 } Elf64_External_Rela;
 
 
 
 typedef struct {
   unsigned char d_tag[4];
   union {
     unsigned char d_val[4];
     unsigned char d_ptr[4];
   } d_un;
 } Elf32_External_Dyn;
 
 typedef struct {
   unsigned char d_tag[8];
   union {
     unsigned char d_val[8];
     unsigned char d_ptr[8];
   } d_un;
 } Elf64_External_Dyn;
 
 
 
 
 
 
 
 typedef struct {
   unsigned char vd_version[2];
   unsigned char vd_flags[2];
   unsigned char vd_ndx[2];
   unsigned char vd_cnt[2];
   unsigned char vd_hash[4];
   unsigned char vd_aux[4];
   unsigned char vd_next[4];
 } Elf_External_Verdef;
 
 
 
 typedef struct {
   unsigned char vda_name[4];
   unsigned char vda_next[4];
 } Elf_External_Verdaux;
 
 
 
 typedef struct {
   unsigned char vn_version[2];
   unsigned char vn_cnt[2];
   unsigned char vn_file[4];
   unsigned char vn_aux[4];
   unsigned char vn_next[4];
 } Elf_External_Verneed;
 
 
 
 typedef struct {
   unsigned char vna_hash[4];
   unsigned char vna_flags[2];
   unsigned char vna_other[2];
   unsigned char vna_name[4];
   unsigned char vna_next[4];
 } Elf_External_Vernaux;
 
 
 
 
 typedef struct {
   unsigned char vs_vers[2];
 }
 
   __attribute__ ((packed))
 
   Elf_External_Versym;
 
 
 typedef struct
 {
   unsigned char si_boundto[2];
   unsigned char si_flags[2];
 } Elf_External_Syminfo;
 # 28 "../../binutils-2.13.1/bfd/elf-bfd.h" 2
 # 1 "../../binutils-2.13.1/include/bfdlink.h" 1
 # 26 "../../binutils-2.13.1/include/bfdlink.h"
 enum bfd_link_strip
 {
   strip_none,
   strip_debugger,
   strip_some,
   strip_all
 };
 
 
 
 enum bfd_link_discard
 {
   discard_sec_merge,
 
   discard_none,
   discard_l,
   discard_all
 };
 
 
 
 
 enum bfd_link_hash_table_type
   {
     bfd_link_generic_hash_table,
     bfd_link_elf_hash_table
   };
 
 
 
 
 enum bfd_link_hash_type
 {
   bfd_link_hash_new,
   bfd_link_hash_undefined,
   bfd_link_hash_undefweak,
   bfd_link_hash_defined,
   bfd_link_hash_defweak,
   bfd_link_hash_common,
   bfd_link_hash_indirect,
   bfd_link_hash_warning
 };
 
 
 
 
 struct bfd_link_hash_entry
 {
 
   struct bfd_hash_entry root;
 
   enum bfd_link_hash_type type;
 # 97 "../../binutils-2.13.1/include/bfdlink.h"
   struct bfd_link_hash_entry *next;
 
   union
     {
 
 
       struct
         {
           bfd *abfd;
         } undef;
 
       struct
         {
           bfd_vma value;
           asection *section;
         } def;
 
       struct
         {
           struct bfd_link_hash_entry *link;
           const char *warning;
         } i;
 
       struct
         {
 # 131 "../../binutils-2.13.1/include/bfdlink.h"
           bfd_size_type size;
           struct bfd_link_hash_common_entry
             {
               unsigned int alignment_power;
               asection *section;
             } *p;
         } c;
     } u;
 };
 
 
 
 
 struct bfd_link_hash_table
 {
 
   struct bfd_hash_table table;
 
 
 
 
   const bfd_target *creator;
 
 
   struct bfd_link_hash_entry *undefs;
 
   struct bfd_link_hash_entry *undefs_tail;
 
   enum bfd_link_hash_table_type type;
 };
 
 
 
 
 extern struct bfd_link_hash_entry *bfd_link_hash_lookup
   (struct bfd_link_hash_table *, const char *, boolean create, boolean co=
 py, boolean follow);
 
 
 
 
 
 
 extern struct bfd_link_hash_entry *bfd_wrapped_link_hash_lookup
   (bfd *, struct bfd_link_info *, const char *, boolean, boolean, boolean=
 );
 
 
 
 extern void bfd_link_hash_traverse
   (struct bfd_link_hash_table *, boolean (*) (struct bfd_link_hash_entry =
 *, void *), void *);
 
 
 
 
 extern void bfd_link_add_undef
   (struct bfd_link_hash_table *, struct bfd_link_hash_entry *);
 
 struct bfd_sym_chain
 {
   struct bfd_sym_chain *next;
   const char *name;
 };
 
 
 
 
 struct bfd_link_info
 {
 
   const struct bfd_link_callbacks *callbacks;
 
 
   boolean relocateable;
 
 
 
   boolean emitrelocations;
 
 
 
 
   boolean task_link;
 
 
   boolean shared;
 
 
   boolean symbolic;
 
 
 
   boolean export_dynamic;
 
 
   boolean static_link;
 
 
 
 
 
   boolean traditional_format;
 
 
 
   boolean optimize;
 
 
 
   boolean no_undefined;
 # 252 "../../binutils-2.13.1/include/bfdlink.h"
   boolean allow_shlib_undefined;
 
 
   boolean allow_multiple_definition;
 
 
   boolean allow_undefined_version;
 
 
   enum bfd_link_strip strip;
 
 
   enum bfd_link_discard discard;
 
 
 
   boolean keep_memory;
 
 
 
   bfd *input_bfds;
 
 
 
 
 
 
   asection *create_object_symbols_section;
 
 
 
   struct bfd_sym_chain *gc_sym_list;
 
 
   struct bfd_link_hash_table *hash;
 
 
 
   struct bfd_hash_table *keep_hash;
 
 
 
   boolean notice_all;
 
 
 
 
   struct bfd_hash_table *notice_hash;
 
 
 
   struct bfd_hash_table *wrap_hash;
 
 
   void * base_file;
 
 
 
 
   int mpc860c0;
 
 
 
   const char *init_function;
 
 
 
   const char *fini_function;
 
 
   boolean new_dtags;
 
 
   bfd_vma flags;
 
 
   bfd_vma flags_1;
 
 
 
 
   int pei386_auto_import;
 
 
 
   boolean combreloc;
 
 
 
   boolean nocopyreloc;
 
 
 
   boolean eh_frame_hdr;
 
 
   unsigned int spare_dynamic_tags;
 };
 # 358 "../../binutils-2.13.1/include/bfdlink.h"
 struct bfd_link_callbacks
 {
 
 
 
 
   boolean (*add_archive_element) (struct bfd_link_info *, bfd *abfd, cons=
 t char *name);
 # 373 "../../binutils-2.13.1/include/bfdlink.h"
   boolean (*multiple_definition) (struct bfd_link_info *, const char *nam=
 e, bfd *obfd, asection *osec, bfd_vma oval, bfd *nbfd, asection *nsec, bf=
 d_vma nval);
 # 392 "../../binutils-2.13.1/include/bfdlink.h"
   boolean (*multiple_common) (struct bfd_link_info *, const char *name, b=
 fd *obfd, enum bfd_link_hash_type otype, bfd_vma osize, bfd *nbfd, enum b=
 fd_link_hash_type ntype, bfd_vma nsize);
 # 406 "../../binutils-2.13.1/include/bfdlink.h"
   boolean (*add_to_set) (struct bfd_link_info *, struct bfd_link_hash_ent=
 ry *entry, bfd_reloc_code_real_type reloc, bfd *abfd, asection *sec, bfd_=
 vma value);
 # 416 "../../binutils-2.13.1/include/bfdlink.h"
   boolean (*constructor) (struct bfd_link_info *, boolean constructor, co=
 nst char *name, bfd *abfd, asection *sec, bfd_vma value);
 # 427 "../../binutils-2.13.1/include/bfdlink.h"
   boolean (*warning) (struct bfd_link_info *, const char *warning, const =
 char *symbol, bfd *abfd, asection *section, bfd_vma address);
 # 436 "../../binutils-2.13.1/include/bfdlink.h"
   boolean (*undefined_symbol) (struct bfd_link_info *, const char *name, =
 bfd *abfd, asection *section, bfd_vma address, boolean fatal);
 # 448 "../../binutils-2.13.1/include/bfdlink.h"
   boolean (*reloc_overflow) (struct bfd_link_info *, const char *name, co=
 nst char *reloc_name, bfd_vma addend, bfd *abfd, asection *section, bfd_v=
 ma address);
 # 460 "../../binutils-2.13.1/include/bfdlink.h"
   boolean (*reloc_dangerous) (struct bfd_link_info *, const char *message=
 , bfd *abfd, asection *section, bfd_vma address);
 # 470 "../../binutils-2.13.1/include/bfdlink.h"
   boolean (*unattached_reloc) (struct bfd_link_info *, const char *name, =
 bfd *abfd, asection *section, bfd_vma address);
 
 
 
 
 
 
 
   boolean (*notice) (struct bfd_link_info *, const char *name, bfd *abfd,=
  asection *section, bfd_vma address);
 
 };
 
 
 
 
 
 
 enum bfd_link_order_type
 {
   bfd_undefined_link_order,
   bfd_indirect_link_order,
   bfd_data_link_order,
   bfd_section_reloc_link_order,
   bfd_symbol_reloc_link_order
 };
 
 
 
 
 struct bfd_link_order
 {
 
   struct bfd_link_order *next;
 
   enum bfd_link_order_type type;
 
   bfd_vma offset;
 
   bfd_size_type size;
 
   union
     {
       struct
         {
 
 
 
 
 
 
           asection *section;
         } indirect;
       struct
         {
 
 
 
 
           unsigned int size;
 
           bfd_byte *contents;
         } data;
       struct
         {
 
 
 
           struct bfd_link_order_reloc *p;
         } reloc;
     } u;
 };
 # 554 "../../binutils-2.13.1/include/bfdlink.h"
 struct bfd_link_order_reloc
 {
 
   bfd_reloc_code_real_type reloc;
 
   union
     {
 
 
 
       asection *section;
 
 
       const char *name;
     } u;
 
 
 
 
 
 
   bfd_vma addend;
 };
 
 
 extern struct bfd_link_order *bfd_new_link_order (bfd *, asection *);
 # 588 "../../binutils-2.13.1/include/bfdlink.h"
 struct bfd_elf_version_expr
 {
 
   struct bfd_elf_version_expr *next;
 
   const char *pattern;
 
   int (*match) (struct bfd_elf_version_expr *, const char *);
 
   unsigned int symver: 1;
 
   unsigned int script : 1;
 };
 
 
 
 struct bfd_elf_version_deps
 {
 
   struct bfd_elf_version_deps *next;
 
   struct bfd_elf_version_tree *version_needed;
 };
 
 
 
 struct bfd_elf_version_tree
 {
 
   struct bfd_elf_version_tree *next;
 
   const char *name;
 
   unsigned int vernum;
 
   struct bfd_elf_version_expr *globals;
 
   struct bfd_elf_version_expr *locals;
 
   struct bfd_elf_version_deps *deps;
 
   unsigned int name_indx;
 
   int used;
 };
 # 29 "../../binutils-2.13.1/bfd/elf-bfd.h" 2
 # 60 "../../binutils-2.13.1/bfd/elf-bfd.h"
 typedef struct
 {
 
   asymbol symbol;
 
   Elf_Internal_Sym internal_elf_sym;
 
   union
     {
       unsigned int hppa_arg_reloc;
       void * mips_extr;
       void * any;
     }
   tc_data;
 
 
 
 
   unsigned short version;
 
 } elf_symbol_type;
 
 struct elf_strtab_hash;
 
 
 
 struct elf_link_hash_entry
 {
   struct bfd_link_hash_entry root;
 
 
 
   long indx;
 # 106 "../../binutils-2.13.1/bfd/elf-bfd.h"
   long dynindx;
 
 
   unsigned long dynstr_index;
 
 
   unsigned long elf_hash_value;
 
 
 
 
   struct elf_link_hash_entry *weakdef;
 
 
 
 
   struct elf_linker_section_pointers *linker_section_pointer;
 
 
   union
   {
 
 
 
     Elf_Internal_Verdef *verdef;
 
 
 
     struct bfd_elf_version_tree *vertree;
   } verinfo;
 
 
 
 
 
   size_t vtable_entries_size;
   boolean *vtable_entries_used;
 
 
   struct elf_link_hash_entry *vtable_parent;
 # 154 "../../binutils-2.13.1/bfd/elf-bfd.h"
   union
     {
       bfd_signed_vma refcount;
       bfd_vma offset;
     } got;
 
 
   union
     {
       bfd_signed_vma refcount;
       bfd_vma offset;
     } plt;
 
 
   bfd_size_type size;
 
 
   char type;
 
 
   unsigned char other;
 
 
   unsigned short elf_link_hash_flags;
 # 205 "../../binutils-2.13.1/bfd/elf-bfd.h"
 };
 
 
 
 struct elf_link_local_dynamic_entry
 {
   struct elf_link_local_dynamic_entry *next;
 
 
   bfd *input_bfd;
 
 
   long input_indx;
 
 
   long dynindx;
 
 
   Elf_Internal_Sym isym;
 };
 
 struct elf_link_loaded_list
 {
   struct elf_link_loaded_list *next;
   bfd *abfd;
 };
 
 enum elf_link_info_type
 {
   ELF_INFO_TYPE_NONE,
   ELF_INFO_TYPE_STABS,
   ELF_INFO_TYPE_MERGE,
   ELF_INFO_TYPE_EH_FRAME,
   ELF_INFO_TYPE_EH_FRAME_HDR,
   ELF_INFO_TYPE_JUST_SYMS,
   ELF_INFO_TYPE_LAST
 };
 
 
 struct elf_link_tls_segment
 {
   bfd_vma start;
   bfd_size_type size;
   unsigned int align;
 };
 
 
 
 struct elf_link_hash_table
 {
   struct bfd_link_hash_table root;
 
 
 
   boolean dynamic_sections_created;
 
 
 
 
   bfd *dynobj;
 
 
 
 
 
   bfd_signed_vma init_refcount;
 
 
 
   bfd_size_type dynsymcount;
 
 
 
   struct elf_strtab_hash *dynstr;
 
 
 
   bfd_size_type bucketcount;
 
 
 
   struct bfd_link_needed_list *needed;
 
 
   struct elf_link_hash_entry *hgot;
 
 
   void * stab_info;
 
 
   void * merge_info;
 
 
   struct elf_link_local_dynamic_entry *dynlocal;
 
 
 
   struct bfd_link_needed_list *runpath;
 
 
   struct elf_link_tls_segment *tls_segment;
 
 
   struct elf_link_loaded_list *loaded;
 };
 # 337 "../../binutils-2.13.1/bfd/elf-bfd.h"
 struct sym_sec_cache
 {
   bfd *abfd;
   unsigned long indx[32];
   asection *sec[32];
 };
 
 
 
 struct elf_size_info {
   unsigned char sizeof_ehdr, sizeof_phdr, sizeof_shdr;
   unsigned char sizeof_rel, sizeof_rela, sizeof_sym, sizeof_dyn, sizeof_n=
 ote;
 
 
   unsigned char sizeof_hash_entry;
 
 
 
   unsigned char int_rels_per_ext_rel;
 
   unsigned char arch_size, file_align;
   unsigned char elfclass, ev_current;
   int (*write_out_phdrs)
     (bfd *, const Elf_Internal_Phdr *, unsigned int);
   boolean (*write_shdrs_and_ehdr)
     (bfd *);
   void (*write_relocs)
     (bfd *, asection *, void *);
   void (*swap_symbol_in)
     (bfd *, const void *, const void *, Elf_Internal_Sym *);
   void (*swap_symbol_out)
     (bfd *, const Elf_Internal_Sym *, void *, void *);
   boolean (*slurp_reloc_table)
     (bfd *, asection *, asymbol **, boolean);
   long (*slurp_symbol_table)
     (bfd *, asymbol **, boolean);
   void (*swap_dyn_in)
     (bfd *, const void *, Elf_Internal_Dyn *);
   void (*swap_dyn_out)
     (bfd *, const Elf_Internal_Dyn *, void *);
 
 
 
 
 
   void (*swap_reloc_in)
     (bfd *, const bfd_byte *, Elf_Internal_Rel *);
 
 
 
   void (*swap_reloc_out)
     (bfd *, const Elf_Internal_Rel *, bfd_byte *);
 
 
 
 
 
   void (*swap_reloca_in)
     (bfd *, const bfd_byte *, Elf_Internal_Rela *);
 
 
 
   void (*swap_reloca_out)
     (bfd *, const Elf_Internal_Rela *, bfd_byte *);
 
 };
 
 
 
 
 
 
 
 enum elf_reloc_type_class {
   reloc_class_normal,
   reloc_class_relative,
   reloc_class_plt,
   reloc_class_copy
 };
 
 struct elf_reloc_cookie
 {
   Elf_Internal_Rela *rels, *rel, *relend;
   Elf_Internal_Sym *locsyms;
   bfd *abfd;
   size_t locsymcount;
   size_t extsymoff;
   struct elf_link_hash_entry **sym_hashes;
   boolean bad_symtab;
 };
 
 
 
 typedef enum {
   ict_none,
   ict_irix5,
   ict_irix6
 } irix_compat_t;
 
 struct elf_backend_data
 {
 
   enum bfd_architecture arch;
 
 
   int elf_machine_code;
 
 
   bfd_vma maxpagesize;
 
 
 
   void (*elf_info_to_howto)
     (bfd *, arelent *, Elf_Internal_Rela *);
 
 
 
   void (*elf_info_to_howto_rel)
     (bfd *, arelent *, Elf_Internal_Rel *);
 
 
 
 
 
 
   boolean (*elf_backend_sym_is_global)
     (bfd *, asymbol *);
 # 474 "../../binutils-2.13.1/bfd/elf-bfd.h"
   boolean (*elf_backend_object_p)
     (bfd *);
 
 
 
 
   void (*elf_backend_symbol_processing)
     (bfd *, asymbol *);
 
 
 
   boolean (*elf_backend_symbol_table_processing)
     (bfd *, elf_symbol_type *, unsigned int);
 
 
 
   int (*elf_backend_get_symbol_type)
     ( Elf_Internal_Sym *, int);
 
 
 
 
 
   boolean (*elf_backend_section_processing)
     (bfd *, Elf_Internal_Shdr *);
 
 
 
   boolean (*elf_backend_section_from_shdr)
     (bfd *, Elf_Internal_Shdr *, const char *);
 
 
 
   boolean (*elf_backend_section_flags)
     (flagword *, Elf_Internal_Shdr *);
 
 
 
   boolean (*elf_backend_section_from_phdr)
     (bfd *, Elf_Internal_Phdr *, int);
 
 
 
 
   boolean (*elf_backend_fake_sections)
     (bfd *, Elf_Internal_Shdr *, asection *);
 
 
 
 
 
   boolean (*elf_backend_section_from_bfd_section)
     (bfd *, asection *, int *retval);
 # 536 "../../binutils-2.13.1/bfd/elf-bfd.h"
   boolean (*elf_add_symbol_hook)
     (bfd *abfd, struct bfd_link_info *info, const Elf_Internal_Sym *, con=
 st char **name, flagword *flags, asection **sec, bfd_vma *value);
 
 
 
 
 
   boolean (*elf_backend_link_output_symbol_hook)
     (bfd *, struct bfd_link_info *info, const char *, Elf_Internal_Sym *,=
  asection *);
 # 555 "../../binutils-2.13.1/bfd/elf-bfd.h"
   boolean (*elf_backend_create_dynamic_sections)
     (bfd *abfd, struct bfd_link_info *info);
 # 568 "../../binutils-2.13.1/bfd/elf-bfd.h"
   boolean (*check_relocs)
     (bfd *abfd, struct bfd_link_info *info, asection *o, const Elf_Intern=
 al_Rela *relocs);
 # 584 "../../binutils-2.13.1/bfd/elf-bfd.h"
   boolean (*elf_backend_adjust_dynamic_symbol)
     (struct bfd_link_info *info, struct elf_link_hash_entry *h);
 
 
 
 
 
   boolean (*elf_backend_always_size_sections)
     (bfd *output_bfd, struct bfd_link_info *info);
 # 604 "../../binutils-2.13.1/bfd/elf-bfd.h"
   boolean (*elf_backend_size_dynamic_sections)
     (bfd *output_bfd, struct bfd_link_info *info);
 # 635 "../../binutils-2.13.1/bfd/elf-bfd.h"
   boolean (*elf_backend_relocate_section)
     (bfd *output_bfd, struct bfd_link_info *info, bfd *input_bfd, asectio=
 n *input_section, bfd_byte *contents, Elf_Internal_Rela *relocs, Elf_Inte=
 rnal_Sym *local_syms, asection **local_sections);
 # 648 "../../binutils-2.13.1/bfd/elf-bfd.h"
   boolean (*elf_backend_finish_dynamic_symbol)
     (bfd *output_bfd, struct bfd_link_info *info, struct elf_link_hash_en=
 try *h, Elf_Internal_Sym *sym);
 
 
 
 
 
 
   boolean (*elf_backend_finish_dynamic_sections)
     (bfd *output_bfd, struct bfd_link_info *info);
 
 
 
   void (*elf_backend_begin_write_processing)
     (bfd *, struct bfd_link_info *);
 
 
 
 
   void (*elf_backend_final_write_processing)
     (bfd *, boolean linker);
 
 
 
 
   int (*elf_backend_additional_program_headers)
     (bfd *);
 
 
 
   boolean (*elf_backend_modify_segment_map)
     (bfd *);
 
 
 
   asection * (*gc_mark_hook)
     (asection *sec, struct bfd_link_info *, Elf_Internal_Rela *, struct e=
 lf_link_hash_entry *h, Elf_Internal_Sym *);
 
 
 
 
 
   boolean (*gc_sweep_hook)
     (bfd *abfd, struct bfd_link_info *info, asection *o, const Elf_Intern=
 al_Rela *relocs);
 
 
 
 
 
   void (*elf_backend_post_process_headers)
     (bfd *, struct bfd_link_info *);
 
 
 
 
   const char *(*elf_backend_print_symbol_all)
     (bfd *, void *, asymbol *);
 
 
 
 
 
   boolean (*elf_backend_output_arch_syms)
     (bfd *, struct bfd_link_info *, void *, boolean (*) (void *, const ch=
 ar *, Elf_Internal_Sym *, asection *));
 
 
 
 
 
 
 
   void (*elf_backend_copy_indirect_symbol)
     (struct elf_backend_data *, struct elf_link_hash_entry *, struct elf_=
 link_hash_entry *);
 
 
 
 
   void (*elf_backend_hide_symbol)
     (struct bfd_link_info *, struct elf_link_hash_entry *, boolean);
 
 
 
   boolean (*elf_backend_emit_relocs)
     (bfd *, asection *, Elf_Internal_Shdr *, Elf_Internal_Rela *);
 
 
 
   unsigned int (*elf_backend_count_relocs)
     (asection *, Elf_Internal_Rela *);
 
 
 
   boolean (*elf_backend_grok_prstatus)
     (bfd *, Elf_Internal_Note *);
 
 
 
   boolean (*elf_backend_grok_psinfo)
     (bfd *, Elf_Internal_Note *);
 
 
   void (* elf_backend_sprintf_vma)
     (bfd *, char *, bfd_vma);
   void (* elf_backend_fprintf_vma)
     (bfd *, void *, bfd_vma);
 
 
   enum elf_reloc_type_class (*elf_backend_reloc_type_class)
     (const Elf_Internal_Rela *);
 
 
 
   boolean (*elf_backend_discard_info)
     (bfd *, struct elf_reloc_cookie *, struct bfd_link_info *);
 
 
 
   boolean (*elf_backend_ignore_discarded_relocs)
     (asection *);
 
 
 
   boolean (*elf_backend_write_section)
     (bfd *, asection *, bfd_byte *);
 
 
 
   irix_compat_t (*elf_backend_mips_irix_compat)
     (bfd *);
 
   reloc_howto_type *(*elf_backend_mips_rtype_to_howto)
     (unsigned int, boolean);
 
 
 
   const struct ecoff_debug_swap *elf_backend_ecoff_debug_swap;
 
 
   int elf_machine_alt1;
   int elf_machine_alt2;
 
   const struct elf_size_info *s;
 
 
 
   bfd_vma got_symbol_offset;
 
 
 
   bfd_vma got_header_size;
   bfd_vma plt_header_size;
 
 
 
 
 
   unsigned collect : 1;
 
 
 
 
 
   unsigned type_change_ok : 1;
 
 
 
 
   unsigned may_use_rel_p : 1;
 
 
 
 
   unsigned may_use_rela_p : 1;
 
 
 
 
 
 
   unsigned default_use_rela_p : 1;
 
 
 
 
   unsigned rela_normal : 1;
 
 
 
   unsigned sign_extend_vma : 1;
 
   unsigned want_got_plt : 1;
   unsigned plt_readonly : 1;
   unsigned want_plt_sym : 1;
   unsigned plt_not_loaded : 1;
   unsigned plt_alignment : 4;
   unsigned can_gc_sections : 1;
   unsigned can_refcount : 1;
   unsigned want_got_sym : 1;
   unsigned want_dynbss : 1;
 
 
 
   unsigned want_p_paddr_set_to_zero : 1;
 };
 
 
 
 
 struct bfd_elf_section_data
 {
 
   Elf_Internal_Shdr this_hdr;
 
 
 
   Elf_Internal_Shdr rel_hdr;
 
 
 
   Elf_Internal_Shdr *rel_hdr2;
 
 
   unsigned int rel_count;
 
 
   unsigned int rel_count2;
 
 
 
   void * local_dynrel;
 
 
   asection *sreloc;
 
 
 
   int this_idx;
 
 
 
   int rel_idx;
 
 
 
   int rel_idx2;
 
 
 
   struct elf_link_hash_entry **rel_hashes;
 
 
 
 
   Elf_Internal_Rela *relocs;
 
 
 
 
 
   long dynindx;
 
 
   void * sec_info;
 
 
   enum elf_link_info_type sec_info_type;
 
   union {
 
     const char *name;
 
 
     struct symbol_cache_entry *id;
   } group;
 
 
 
   asection *next_in_group;
 
 
   void * tdata;
 
 
   unsigned int use_rela_p:1;
 
 
   unsigned int linkonce_p:1;
 };
 # 954 "../../binutils-2.13.1/bfd/elf-bfd.h"
 typedef enum elf_linker_section_enum
 {
   LINKER_SECTION_UNKNOWN,
   LINKER_SECTION_GOT,
   LINKER_SECTION_PLT,
   LINKER_SECTION_SDATA,
   LINKER_SECTION_SDATA2,
   LINKER_SECTION_MAX
 } elf_linker_section_enum_t;
 
 
 
 typedef struct elf_linker_section
 {
   char *name;
   char *rel_name;
   char *bss_name;
   char *sym_name;
   asection *section;
   asection *bss_section;
   asection *rel_section;
   struct elf_link_hash_entry *sym_hash;
   bfd_vma initial_size;
   bfd_vma sym_offset;
   bfd_vma hole_size;
   bfd_vma hole_offset;
   bfd_vma max_hole_offset;
   elf_linker_section_enum_t which;
   boolean hole_written_p;
   unsigned int alignment;
   flagword flags;
 } elf_linker_section_t;
 
 
 
 
 typedef struct elf_linker_section_pointers
 {
   struct elf_linker_section_pointers *next;
   bfd_vma offset;
   bfd_vma addend;
   elf_linker_section_enum_t which;
   boolean written_address_p;
 } elf_linker_section_pointers_t;
 
 
 
 
 struct elf_obj_tdata
 {
   Elf_Internal_Ehdr elf_header[1];
   Elf_Internal_Shdr **elf_sect_ptr;
   Elf_Internal_Phdr *phdr;
   struct elf_segment_map *segment_map;
   struct elf_strtab_hash *strtab_ptr;
   int num_locals;
   int num_globals;
   unsigned int num_elf_sections;
   int num_section_syms;
   asymbol **section_syms;
   Elf_Internal_Shdr symtab_hdr;
   Elf_Internal_Shdr shstrtab_hdr;
   Elf_Internal_Shdr strtab_hdr;
   Elf_Internal_Shdr dynsymtab_hdr;
   Elf_Internal_Shdr dynstrtab_hdr;
   Elf_Internal_Shdr dynversym_hdr;
   Elf_Internal_Shdr dynverref_hdr;
   Elf_Internal_Shdr dynverdef_hdr;
   Elf_Internal_Shdr symtab_shndx_hdr;
   unsigned int symtab_section, shstrtab_section;
   unsigned int strtab_section, dynsymtab_section;
   unsigned int symtab_shndx_section;
   unsigned int dynversym_section, dynverdef_section, dynverref_section;
   file_ptr next_file_pos;
 
 
 
 
 
 
   bfd_vma gp;
   unsigned int gp_size;
 
   Elf_Internal_Shdr **group_sect_ptr;
   int num_group;
 
 
   int core_signal;
   int core_pid;
   int core_lwpid;
   char* core_program;
   char* core_command;
 
 
 
   boolean linker;
 
 
 
 
   struct elf_link_hash_entry **sym_hashes;
 # 1063 "../../binutils-2.13.1/bfd/elf-bfd.h"
   union
     {
       bfd_signed_vma *refcounts;
       bfd_vma *offsets;
     } local_got;
 
 
 
   elf_linker_section_pointers_t **linker_section_pointers;
 # 1081 "../../binutils-2.13.1/bfd/elf-bfd.h"
   const char *dt_name;
 
 
 
 
 
 
 
   const char *dt_soname;
 
 
 
 
 
 
   boolean bad_symtab;
 
 
   bfd_size_type program_header_size;
 
 
   void * line_info;
 
 
 
 
 
   struct mips_elf_find_line *find_line_info;
 
 
   struct dwarf1_debug *dwarf1_find_line_info;
 
 
   void * dwarf2_find_line_info;
 
 
 
 
   asection **local_stubs;
 
 
   boolean flags_init;
 
 
 
   boolean eh_frame_hdr;
 
 
   unsigned int cverdefs;
 
 
   unsigned int cverrefs;
 
 
   Elf_Internal_Verdef *verdef;
 
 
   Elf_Internal_Verneed *verref;
 
 
   struct elf_linker_section *linker_section[ (int)LINKER_SECTION_MAX ];
 
 
 
   asymbol *elf_data_symbol;
   asymbol *elf_text_symbol;
   asection *elf_data_section;
   asection *elf_text_section;
 };
 # 1180 "../../binutils-2.13.1/bfd/elf-bfd.h"
 extern void _bfd_elf_swap_verdef_in
   (bfd *, const Elf_External_Verdef *, Elf_Internal_Verdef *);
 extern void _bfd_elf_swap_verdef_out
   (bfd *, const Elf_Internal_Verdef *, Elf_External_Verdef *);
 extern void _bfd_elf_swap_verdaux_in
   (bfd *, const Elf_External_Verdaux *, Elf_Internal_Verdaux *);
 extern void _bfd_elf_swap_verdaux_out
   (bfd *, const Elf_Internal_Verdaux *, Elf_External_Verdaux *);
 extern void _bfd_elf_swap_verneed_in
   (bfd *, const Elf_External_Verneed *, Elf_Internal_Verneed *);
 extern void _bfd_elf_swap_verneed_out
   (bfd *, const Elf_Internal_Verneed *, Elf_External_Verneed *);
 extern void _bfd_elf_swap_vernaux_in
   (bfd *, const Elf_External_Vernaux *, Elf_Internal_Vernaux *);
 extern void _bfd_elf_swap_vernaux_out
   (bfd *, const Elf_Internal_Vernaux *, Elf_External_Vernaux *);
 extern void _bfd_elf_swap_versym_in
   (bfd *, const Elf_External_Versym *, Elf_Internal_Versym *);
 extern void _bfd_elf_swap_versym_out
   (bfd *, const Elf_Internal_Versym *, Elf_External_Versym *);
 
 extern int _bfd_elf_section_from_bfd_section
   (bfd *, asection *);
 extern char *bfd_elf_string_from_elf_section
   (bfd *, unsigned, unsigned);
 extern char *bfd_elf_get_str_section
   (bfd *, unsigned);
 extern Elf_Internal_Sym *bfd_elf_get_elf_syms
   (bfd *, Elf_Internal_Shdr *, size_t, size_t, Elf_Internal_Sym *, void *=
 , Elf_External_Sym_Shndx *);
 
 
 extern boolean _bfd_elf_copy_private_bfd_data
   (bfd *, bfd *);
 extern boolean _bfd_elf_print_private_bfd_data
   (bfd *, void *);
 extern void bfd_elf_print_symbol
   (bfd *, void *, asymbol *, bfd_print_symbol_type);
 # 1225 "../../binutils-2.13.1/bfd/elf-bfd.h"
 extern void _bfd_elf_sprintf_vma
   (bfd *, char *, bfd_vma);
 extern void _bfd_elf_fprintf_vma
   (bfd *, void *, bfd_vma);
 
 extern enum elf_reloc_type_class _bfd_elf_reloc_type_class
   (const Elf_Internal_Rela *);
 extern bfd_vma _bfd_elf_rela_local_sym
   (bfd *, Elf_Internal_Sym *, asection *, Elf_Internal_Rela *);
 extern bfd_vma _bfd_elf_rel_local_sym
   (bfd *, Elf_Internal_Sym *, asection **, bfd_vma);
 extern bfd_vma _bfd_elf_section_offset
   (bfd *, struct bfd_link_info *, asection *, bfd_vma);
 
 extern unsigned long bfd_elf_hash
   (const char *);
 
 extern bfd_reloc_status_type bfd_elf_generic_reloc
   (bfd *, arelent *, asymbol *, void *, asection *, bfd *, char **);
 extern boolean bfd_elf_mkobject
   (bfd *);
 extern boolean bfd_elf_mkcorefile
   (bfd *);
 extern Elf_Internal_Shdr *bfd_elf_find_section
   (bfd *, char *);
 extern boolean _bfd_elf_make_section_from_shdr
   (bfd *, Elf_Internal_Shdr *, const char *);
 extern boolean _bfd_elf_make_section_from_phdr
   (bfd *, Elf_Internal_Phdr *, int, const char *);
 extern struct bfd_hash_entry *_bfd_elf_link_hash_newfunc
   (struct bfd_hash_entry *, struct bfd_hash_table *, const char *);
 extern struct bfd_link_hash_table *_bfd_elf_link_hash_table_create
   (bfd *);
 extern void _bfd_elf_link_hash_copy_indirect
   (struct elf_backend_data *, struct elf_link_hash_entry *, struct elf_li=
 nk_hash_entry *);
 
 extern void _bfd_elf_link_hash_hide_symbol
   (struct bfd_link_info *, struct elf_link_hash_entry *, boolean);
 extern boolean _bfd_elf_link_hash_table_init
   (struct elf_link_hash_table *, bfd *, struct bfd_hash_entry *(*) (struc=
 t bfd_hash_entry *, struct bfd_hash_table *, const char *));
 
 
 
 extern boolean _bfd_elf_slurp_version_tables
   (bfd *);
 extern boolean _bfd_elf_merge_sections
   (bfd *, struct bfd_link_info *);
 extern boolean bfd_elf_discard_group
   (bfd *, struct sec *);
 extern void bfd_elf_set_group_contents
   (bfd *, asection *, void *);
 extern void _bfd_elf_link_just_syms
   (asection *, struct bfd_link_info *);
 extern boolean _bfd_elf_copy_private_symbol_data
   (bfd *, asymbol *, bfd *, asymbol *);
 extern boolean _bfd_elf_copy_private_section_data
   (bfd *, asection *, bfd *, asection *);
 extern boolean _bfd_elf_write_object_contents
   (bfd *);
 extern boolean _bfd_elf_write_corefile_contents
   (bfd *);
 extern boolean _bfd_elf_set_section_contents
   (bfd *, sec_ptr, void *, file_ptr, bfd_size_type);
 extern long _bfd_elf_get_symtab_upper_bound
   (bfd *);
 extern long _bfd_elf_get_symtab
   (bfd *, asymbol **);
 extern long _bfd_elf_get_dynamic_symtab_upper_bound
   (bfd *);
 extern long _bfd_elf_canonicalize_dynamic_symtab
   (bfd *, asymbol **);
 extern long _bfd_elf_get_reloc_upper_bound
   (bfd *, sec_ptr);
 extern long _bfd_elf_canonicalize_reloc
   (bfd *, sec_ptr, arelent **, asymbol **);
 extern long _bfd_elf_get_dynamic_reloc_upper_bound
   (bfd *);
 extern long _bfd_elf_canonicalize_dynamic_reloc
   (bfd *, arelent **, asymbol **);
 extern asymbol *_bfd_elf_make_empty_symbol
   (bfd *);
 extern void _bfd_elf_get_symbol_info
   (bfd *, asymbol *, symbol_info *);
 extern boolean _bfd_elf_is_local_label_name
   (bfd *, const char *);
 extern alent *_bfd_elf_get_lineno
   (bfd *, asymbol *);
 extern boolean _bfd_elf_set_arch_mach
   (bfd *, enum bfd_architecture, unsigned long);
 extern boolean _bfd_elf_find_nearest_line
   (bfd *, asection *, asymbol **, bfd_vma, const char **, const char **, =
 unsigned int *);
 
 
 
 extern int _bfd_elf_sizeof_headers
   (bfd *, boolean);
 extern boolean _bfd_elf_new_section_hook
   (bfd *, asection *);
 extern boolean _bfd_elf_init_reloc_shdr
   (bfd *, Elf_Internal_Shdr *, asection *, boolean);
 
 
 extern void _bfd_elf_no_info_to_howto
   (bfd *, arelent *, Elf_Internal_Rela *);
 
 extern boolean bfd_section_from_shdr
   (bfd *, unsigned int shindex);
 extern boolean bfd_section_from_phdr
   (bfd *, Elf_Internal_Phdr *, int);
 
 extern int _bfd_elf_symbol_from_bfd_symbol
   (bfd *, asymbol **);
 
 extern asection *bfd_section_from_r_symndx
   (bfd *, struct sym_sec_cache *, asection *, unsigned long);
 extern asection *bfd_section_from_elf_index
   (bfd *, unsigned int);
 extern boolean _bfd_elf_create_dynamic_sections
   (bfd *, struct bfd_link_info *);
 extern struct bfd_strtab_hash *_bfd_elf_stringtab_init
   (void);
 
 extern struct elf_strtab_hash * _bfd_elf_strtab_init
   (void);
 extern void _bfd_elf_strtab_free
   (struct elf_strtab_hash *);
 extern bfd_size_type _bfd_elf_strtab_add
   (struct elf_strtab_hash *, const char *, boolean);
 extern void _bfd_elf_strtab_addref
   (struct elf_strtab_hash *, bfd_size_type);
 extern void _bfd_elf_strtab_delref
   (struct elf_strtab_hash *, bfd_size_type);
 extern void _bfd_elf_strtab_clear_all_refs
   (struct elf_strtab_hash *);
 extern bfd_size_type _bfd_elf_strtab_size
   (struct elf_strtab_hash *);
 extern bfd_size_type _bfd_elf_strtab_offset
   (struct elf_strtab_hash *, bfd_size_type);
 extern boolean _bfd_elf_strtab_emit
   (bfd *, struct elf_strtab_hash *);
 extern void _bfd_elf_strtab_finalize
   (struct elf_strtab_hash *);
 
 extern boolean _bfd_elf_discard_section_eh_frame
   (bfd *, struct bfd_link_info *, asection *, asection *, boolean (*) (bf=
 d_vma, void *), struct elf_reloc_cookie *);
 
 extern boolean _bfd_elf_discard_section_eh_frame_hdr
   (bfd *, struct bfd_link_info *, asection *);
 extern bfd_vma _bfd_elf_eh_frame_section_offset
   (bfd *, asection *, bfd_vma);
 extern boolean _bfd_elf_write_section_eh_frame
   (bfd *, asection *, asection *, bfd_byte *);
 extern boolean _bfd_elf_write_section_eh_frame_hdr
   (bfd *, asection *);
 extern boolean _bfd_elf_maybe_strip_eh_frame_hdr
   (struct bfd_link_info *);
 
 extern boolean _bfd_elf_link_record_dynamic_symbol
   (struct bfd_link_info *, struct elf_link_hash_entry *);
 extern long _bfd_elf_link_lookup_local_dynindx
   (struct bfd_link_info *, bfd *, long);
 extern boolean _bfd_elf_compute_section_file_positions
   (bfd *, struct bfd_link_info *);
 extern void _bfd_elf_assign_file_positions_for_relocs
   (bfd *);
 extern file_ptr _bfd_elf_assign_file_position_for_section
   (Elf_Internal_Shdr *, file_ptr, boolean);
 
 extern boolean _bfd_elf_validate_reloc
   (bfd *, arelent *);
 
 extern boolean _bfd_elf_create_dynamic_sections
   (bfd *, struct bfd_link_info *);
 extern boolean _bfd_elf_create_got_section
   (bfd *, struct bfd_link_info *);
 extern unsigned long _bfd_elf_link_renumber_dynsyms
   (bfd *, struct bfd_link_info *);
 
 extern boolean _bfd_elfcore_make_pseudosection
   (bfd *, char *, size_t, ufile_ptr);
 extern char *_bfd_elfcore_strndup
   (bfd *, char *, size_t);
 
 extern elf_linker_section_t *_bfd_elf_create_linker_section
   (bfd *, struct bfd_link_info *, enum elf_linker_section_enum, elf_linke=
 r_section_t *);
 
 
 extern elf_linker_section_pointers_t *_bfd_elf_find_pointer_linker_sectio=
 n
   (elf_linker_section_pointers_t *, bfd_vma, elf_linker_section_enum_t);
 
 
 extern boolean bfd_elf32_create_pointer_linker_section
   (bfd *, struct bfd_link_info *, elf_linker_section_t *, struct elf_link=
 _hash_entry *, const Elf_Internal_Rela *);
 
 
 extern bfd_vma bfd_elf32_finish_pointer_linker_section
   (bfd *, bfd *, struct bfd_link_info *, elf_linker_section_t *, struct e=
 lf_link_hash_entry *, bfd_vma, const Elf_Internal_Rela *, int);
 
 
 
 extern boolean bfd_elf64_create_pointer_linker_section
   (bfd *, struct bfd_link_info *, elf_linker_section_t *, struct elf_link=
 _hash_entry *, const Elf_Internal_Rela *);
 
 
 extern bfd_vma bfd_elf64_finish_pointer_linker_section
   (bfd *, bfd *, struct bfd_link_info *, elf_linker_section_t *, struct e=
 lf_link_hash_entry *, bfd_vma, const Elf_Internal_Rela *, int);
 
 
 
 extern boolean _bfd_elf_make_linker_section_rela
   (bfd *, elf_linker_section_t *, int);
 
 extern const bfd_target *bfd_elf32_object_p
   (bfd *);
 extern const bfd_target *bfd_elf32_core_file_p
   (bfd *);
 extern char *bfd_elf32_core_file_failing_command
   (bfd *);
 extern int bfd_elf32_core_file_failing_signal
   (bfd *);
 extern boolean bfd_elf32_core_file_matches_executable_p
   (bfd *, bfd *);
 
 extern boolean bfd_elf32_bfd_link_add_symbols
   (bfd *, struct bfd_link_info *);
 extern boolean bfd_elf32_bfd_final_link
   (bfd *, struct bfd_link_info *);
 
 extern void bfd_elf32_swap_symbol_in
   (bfd *, const void *, const void *, Elf_Internal_Sym *);
 extern void bfd_elf32_swap_symbol_out
   (bfd *, const Elf_Internal_Sym *, void *, void *);
 extern void bfd_elf32_swap_reloc_in
   (bfd *, const Elf32_External_Rel *, Elf_Internal_Rel *);
 extern void bfd_elf32_swap_reloc_out
   (bfd *, const Elf_Internal_Rel *, Elf32_External_Rel *);
 extern void bfd_elf32_swap_reloca_in
   (bfd *, const Elf32_External_Rela *, Elf_Internal_Rela *);
 extern void bfd_elf32_swap_reloca_out
   (bfd *, const Elf_Internal_Rela *, Elf32_External_Rela *);
 extern void bfd_elf32_swap_phdr_in
   (bfd *, const Elf32_External_Phdr *, Elf_Internal_Phdr *);
 extern void bfd_elf32_swap_phdr_out
   (bfd *, const Elf_Internal_Phdr *, Elf32_External_Phdr *);
 extern void bfd_elf32_swap_dyn_in
   (bfd *, const void *, Elf_Internal_Dyn *);
 extern void bfd_elf32_swap_dyn_out
   (bfd *, const Elf_Internal_Dyn *, void *);
 extern long bfd_elf32_slurp_symbol_table
   (bfd *, asymbol **, boolean);
 extern boolean bfd_elf32_write_shdrs_and_ehdr
   (bfd *);
 extern int bfd_elf32_write_out_phdrs
   (bfd *, const Elf_Internal_Phdr *, unsigned int);
 extern void bfd_elf32_write_relocs
   (bfd *, asection *, void *);
 extern boolean bfd_elf32_slurp_reloc_table
   (bfd *, asection *, asymbol **, boolean);
 extern boolean bfd_elf32_add_dynamic_entry
   (struct bfd_link_info *, bfd_vma, bfd_vma);
 extern boolean bfd_elf32_link_create_dynamic_sections
   (bfd *, struct bfd_link_info *);
 extern Elf_Internal_Rela *_bfd_elf32_link_read_relocs
   (bfd *, asection *, void *, Elf_Internal_Rela *, boolean);
 
 extern const bfd_target *bfd_elf64_object_p
   (bfd *);
 extern const bfd_target *bfd_elf64_core_file_p
   (bfd *);
 extern char *bfd_elf64_core_file_failing_command
   (bfd *);
 extern int bfd_elf64_core_file_failing_signal
   (bfd *);
 extern boolean bfd_elf64_core_file_matches_executable_p
   (bfd *, bfd *);
 extern boolean bfd_elf64_bfd_link_add_symbols
   (bfd *, struct bfd_link_info *);
 extern boolean bfd_elf64_bfd_final_link
   (bfd *, struct bfd_link_info *);
 
 extern void bfd_elf64_swap_symbol_in
   (bfd *, const void *, const void *, Elf_Internal_Sym *);
 extern void bfd_elf64_swap_symbol_out
   (bfd *, const Elf_Internal_Sym *, void *, void *);
 extern void bfd_elf64_swap_reloc_in
   (bfd *, const Elf64_External_Rel *, Elf_Internal_Rel *);
 extern void bfd_elf64_swap_reloc_out
   (bfd *, const Elf_Internal_Rel *, Elf64_External_Rel *);
 extern void bfd_elf64_swap_reloca_in
   (bfd *, const Elf64_External_Rela *, Elf_Internal_Rela *);
 extern void bfd_elf64_swap_reloca_out
   (bfd *, const Elf_Internal_Rela *, Elf64_External_Rela *);
 extern void bfd_elf64_swap_phdr_in
   (bfd *, const Elf64_External_Phdr *, Elf_Internal_Phdr *);
 extern void bfd_elf64_swap_phdr_out
   (bfd *, const Elf_Internal_Phdr *, Elf64_External_Phdr *);
 extern void bfd_elf64_swap_dyn_in
   (bfd *, const void *, Elf_Internal_Dyn *);
 extern void bfd_elf64_swap_dyn_out
   (bfd *, const Elf_Internal_Dyn *, void *);
 extern long bfd_elf64_slurp_symbol_table
   (bfd *, asymbol **, boolean);
 extern boolean bfd_elf64_write_shdrs_and_ehdr
   (bfd *);
 extern int bfd_elf64_write_out_phdrs
   (bfd *, const Elf_Internal_Phdr *, unsigned int);
 extern void bfd_elf64_write_relocs
   (bfd *, asection *, void *);
 extern boolean bfd_elf64_slurp_reloc_table
   (bfd *, asection *, asymbol **, boolean);
 extern boolean bfd_elf64_add_dynamic_entry
   (struct bfd_link_info *, bfd_vma, bfd_vma);
 extern boolean bfd_elf64_link_create_dynamic_sections
   (bfd *, struct bfd_link_info *);
 extern Elf_Internal_Rela *_bfd_elf64_link_read_relocs
   (bfd *, asection *, void *, Elf_Internal_Rela *, boolean);
 
 
 
 
 
 
 extern int elf_link_record_local_dynamic_symbol
   (struct bfd_link_info *, bfd *, long);
 
 
 
 
 
 extern boolean _bfd_elf_close_and_cleanup
   (bfd *);
 extern bfd_reloc_status_type _bfd_elf_rel_vtable_reloc_fn
   (bfd *, arelent *, struct symbol_cache_entry *, void *, asection *, bfd=
  *, char **);
 
 
 extern boolean _bfd_elf32_gc_sections
   (bfd *, struct bfd_link_info *);
 extern boolean _bfd_elf32_gc_common_finalize_got_offsets
   (bfd *, struct bfd_link_info *);
 extern boolean _bfd_elf32_gc_common_final_link
   (bfd *, struct bfd_link_info *);
 extern boolean _bfd_elf32_gc_record_vtinherit
   (bfd *, asection *, struct elf_link_hash_entry *, bfd_vma);
 extern boolean _bfd_elf32_gc_record_vtentry
   (bfd *, asection *, struct elf_link_hash_entry *, bfd_vma);
 
 extern boolean _bfd_elf64_gc_sections
   (bfd *, struct bfd_link_info *);
 extern boolean _bfd_elf64_gc_common_finalize_got_offsets
   (bfd *, struct bfd_link_info *);
 extern boolean _bfd_elf64_gc_common_final_link
   (bfd *, struct bfd_link_info *);
 extern boolean _bfd_elf64_gc_record_vtinherit
   (bfd *, asection *, struct elf_link_hash_entry *, bfd_vma);
 extern boolean _bfd_elf64_gc_record_vtentry
   (bfd *, asection *, struct elf_link_hash_entry *, bfd_vma);
 
 extern boolean _bfd_elf32_reloc_symbol_deleted_p
   (bfd_vma, void *);
 extern boolean _bfd_elf64_reloc_symbol_deleted_p
   (bfd_vma, void *);
 
 
 extern char *elfcore_write_note
   (bfd *, char *, int *, const char *, int, const void *, int);
 extern char *elfcore_write_prpsinfo
   (bfd *, char *, int *, const char *, const char *);
 extern char *elfcore_write_prstatus
   (bfd *, char *, int *, long, int, const void *);
 extern char * elfcore_write_pstatus
   (bfd *, char *, int *, long, int, const void *);
 extern char *elfcore_write_prfpreg
   (bfd *, char *, int *, const void *, int);
 extern char *elfcore_write_prxfpreg
   (bfd *, char *, int *, const void *, int);
 extern char *elfcore_write_lwpstatus
   (bfd *, char *, int *, long, int, const void *);
 
 
 
 extern boolean _sh_elf_set_mach_from_flags
   (bfd *);
 # 41 "../../binutils-2.13.1/gas/config/obj-elf.h" 2
 
 # 1 "targ-cpu.h" 1
 # 1 "../../binutils-2.13.1/gas/config/tc-ppc.h" 1
 # 26 "../../binutils-2.13.1/gas/config/tc-ppc.h"
 struct fix;
 # 51 "../../binutils-2.13.1/gas/config/tc-ppc.h"
 extern enum bfd_architecture ppc_arch (void);
 extern unsigned long ppc_mach (void);
 
 
 extern int target_big_endian;
 
 
 
 extern char *ppc_target_format (void);
 # 232 "../../binutils-2.13.1/gas/config/tc-ppc.h"
 extern int ppc_section_letter (int, char **);
 extern int ppc_section_type (char *, size_t);
 extern int ppc_section_word (char *, size_t);
 extern int ppc_section_flags (int, int, int);
 # 258 "../../binutils-2.13.1/gas/config/tc-ppc.h"
 extern const char *ppc_comment_chars;
 
 
 
 extern int ppc_fix_adjustable (struct fix *);
 # 275 "../../binutils-2.13.1/gas/config/tc-ppc.h"
 extern void ppc_frob_file_before_adjust (void);
 
 
 
 
 
 
 extern long md_pcrel_from_section (struct fix *, segT);
 
 
 extern int ppc_parse_name (const char *, struct expressionS *);
 # 2 "targ-cpu.h" 2
 # 43 "../../binutils-2.13.1/gas/config/obj-elf.h" 2
 # 62 "../../binutils-2.13.1/gas/config/obj-elf.h"
 struct elf_obj_sy
 {
 
   int local;
 
 
 
   expressionS *size;
 
 
   char *versioned_name;
 # 81 "../../binutils-2.13.1/gas/config/obj-elf.h"
 };
 # 103 "../../binutils-2.13.1/gas/config/obj-elf.h"
 extern void elf_begin (void);
 # 126 "../../binutils-2.13.1/gas/config/obj-elf.h"
 int elf_s_get_other (symbolS *);
 # 135 "../../binutils-2.13.1/gas/config/obj-elf.h"
 extern asection *gdb_section;
 
 
 
 
 extern void elf_frob_file (void);
 
 
 
 
 extern void elf_frob_file_before_adjust (void);
 
 
 
 
 extern void elf_frob_file_after_relocs (void);
 
 
 
 
 extern void elf_file_symbol (const char *);
 
 extern void obj_elf_section_change_hook (void);
 
 extern void obj_elf_section (int);
 extern void obj_elf_previous (int);
 extern void obj_elf_version (int);
 extern void obj_elf_common (int);
 extern void obj_elf_data (int);
 extern void obj_elf_text (int);
 extern struct fix *obj_elf_vtable_inherit (int);
 extern struct fix *obj_elf_vtable_entry (int);
 
 
 
 
 
 
 
 void elf_obj_read_begin_hook (void);
 
 
 
 
 void elf_obj_symbol_new_hook (symbolS *);
 
 
 
 
 void elf_copy_symbol_attributes (symbolS *, symbolS *);
 # 201 "../../binutils-2.13.1/gas/config/obj-elf.h"
 extern void obj_elf_init_stab_section (segT);
 # 223 "../../binutils-2.13.1/gas/config/obj-elf.h"
 extern void elf_frob_symbol (symbolS *, int *);
 
 
 
 
 extern void elf_pop_insert (void);
 
 
 
 
 
 
 
 struct ecoff_extr;
 
 extern void elf_ecoff_set_ext (symbolS *, struct ecoff_extr *);
 # 2 "obj-format.h" 2
 # 20 "../../binutils-2.13.1/gas/config/te-generic.h" 2
 # 2 "targ-env.h" 2
 # 615 "../../binutils-2.13.1/gas/as.h" 2
 
 
 
 
 
 # 1 "../../binutils-2.13.1/gas/write.h" 1
 # 45 "../../binutils-2.13.1/gas/write.h"
 # 1 "../../binutils-2.13.1/gas/bit_fix.h" 1
 # 36 "../../binutils-2.13.1/gas/bit_fix.h"
 struct bit_fix {
   int fx_bit_size;
   int fx_bit_offset;
   long fx_bit_base;
 
   long fx_bit_base_adj;
   long fx_bit_max;
   long fx_bit_min;
   long fx_bit_add;
 };
 typedef struct bit_fix bit_fixS;
 # 46 "../../binutils-2.13.1/gas/write.h" 2
 
 
 
 
 
 struct fix
 {
 
 
 
 
   char fx_pcrel_adjust;
 
 
   unsigned char fx_size;
 
 
   unsigned fx_pcrel : 1;
 
 
 
 
 
 
   unsigned fx_plt : 1;
 
 
 
   unsigned fx_im_disp : 2;
 
 
 
   unsigned fx_tcbit : 1;
 
 
   unsigned fx_done : 1;
 
 
 
 
 
 
   unsigned fx_no_overflow : 1;
 
 
   unsigned fx_signed : 1;
 
 
   fragS *fx_frag;
 
 
   long fx_where;
 
 
   symbolS *fx_addsy;
 
 
   symbolS *fx_subsy;
 
 
   valueT fx_offset;
 
 
   struct fix *fx_next;
 
 
 
 
 
 
   bit_fixS *fx_bit_fixP;
 
 
   bfd_reloc_code_real_type fx_r_type;
 # 135 "../../binutils-2.13.1/gas/write.h"
   valueT fx_addnumber;
 
 
 
   char *fx_file;
   unsigned fx_line;
 # 156 "../../binutils-2.13.1/gas/write.h"
 };
 
 typedef struct fix fixS;
 
 extern int finalize_syms;
 # 175 "../../binutils-2.13.1/gas/write.h"
 extern long string_byte_count;
 extern int section_alignment[];
 
 extern bit_fixS *bit_fix_new
   (int size, int offset, long base_type, long base_adj, long min, long ma=
 x, long add);
 
 extern void append (char **charPP, char *fromP, unsigned long length);
 extern void record_alignment (segT seg, int align);
 extern int get_recorded_alignment (segT seg);
 extern void subsegs_finish (void);
 extern void write_object_file (void);
 extern long relax_frag (segT, fragS *, long);
 extern int relax_segment
   (struct frag * seg_frag_root, segT seg_type);
 
 extern void number_to_chars_littleendian (char *, valueT, int);
 extern void number_to_chars_bigendian (char *, valueT, int);
 
 
 extern fixS *fix_new
   (fragS * frag, int where, int size, symbolS * add_symbol, offsetT offse=
 t, int pcrel, bfd_reloc_code_real_type r_type);
 
 extern fixS *fix_new_exp
   (fragS * frag, int where, int size, expressionS *exp, int pcrel, bfd_re=
 loc_code_real_type r_type);
 # 209 "../../binutils-2.13.1/gas/write.h"
 extern void write_print_statistics (FILE *);
 # 621 "../../binutils-2.13.1/gas/as.h" 2
 # 1 "../../binutils-2.13.1/gas/frags.h" 1
 # 26 "../../binutils-2.13.1/gas/frags.h"
 struct obstack;
 # 43 "../../binutils-2.13.1/gas/frags.h"
 struct frag {
 
   addressT fr_address;
 
 
   addressT last_fr_address;
 
 
   offsetT fr_fix;
 
 
   offsetT fr_var;
 
   offsetT fr_offset;
 
   symbolS *fr_symbol;
 
   char *fr_opcode;
 
 
   struct frag *fr_next;
 
 
   char *fr_file;
   unsigned int fr_line;
 
 
   struct list_info_struct *line;
 
 
 
 
   unsigned int relax_marker:1;
 
 
   relax_stateT fr_type;
   relax_substateT fr_subtype;
 # 98 "../../binutils-2.13.1/gas/frags.h"
   char fr_literal[1];
 };
 # 108 "../../binutils-2.13.1/gas/frags.h"
 extern fragS *frag_now;
 extern addressT frag_now_fix (void);
 extern addressT frag_now_fix_octets (void);
 
 
 extern fragS zero_address_frag;
 
 extern fragS bss_address_frag;
 # 130 "../../binutils-2.13.1/gas/frags.h"
 extern void frag_append_1_char (int);
 
 
 
 void frag_init (void);
 fragS *frag_alloc (struct obstack *);
 void frag_grow (unsigned int nchars);
 char *frag_more (int nchars);
 void frag_align (int alignment, int fill_character, int max);
 void frag_align_pattern (int alignment, const char *fill_pattern, int n_f=
 ill, int max);
 
 
 
 void frag_align_code (int alignment, int max);
 void frag_new (int old_frags_var_max_size);
 void frag_wane (fragS * fragP);
 
 char *frag_variant (relax_stateT type, int max_chars, int var, relax_subs=
 tateT subtype, symbolS * symbol, offsetT offset, char *opcode);
 
 
 
 
 
 
 
 char *frag_var (relax_stateT type, int max_chars, int var, relax_substate=
 T subtype, symbolS * symbol, offsetT offset, char *opcode);
 # 622 "../../binutils-2.13.1/gas/as.h" 2
 # 1 "../../binutils-2.13.1/gas/hash.h" 1
 # 24 "../../binutils-2.13.1/gas/hash.h"
 struct hash_control;
 
 
 
 extern struct hash_control *hash_new (void);
 
 
 
 extern void hash_die (struct hash_control *);
 
 
 
 
 
 
 extern const char *hash_insert (struct hash_control *, const char *key, v=
 oid * value);
 
 
 
 
 
 
 extern const char *hash_jam (struct hash_control *, const char *key, void=
  * value);
 
 
 
 
 
 
 extern void * hash_replace (struct hash_control *, const char *key, void =
 * value);
 
 
 
 
 
 extern void * hash_find (struct hash_control *, const char *key);
 
 
 
 
 extern void * hash_delete (struct hash_control *, const char *key);
 
 
 
 
 extern void hash_traverse (struct hash_control *, void (*pfn) (const char=
  *key, void * value));
 
 
 
 
 
 extern void hash_print_statistics (FILE *, const char *name, struct hash_=
 control *);
 # 623 "../../binutils-2.13.1/gas/as.h" 2
 # 1 "../../binutils-2.13.1/gas/read.h" 1
 # 23 "../../binutils-2.13.1/gas/read.h"
 extern char *input_line_pointer;
 # 58 "../../binutils-2.13.1/gas/read.h"
 extern char lex_type[];
 extern char is_end_of_line[];
 
 extern int is_it_end_of_statement (void);
 
 extern int target_big_endian;
 
 
 extern const char comment_chars[];
 extern const char line_comment_chars[];
 extern const char line_separator_chars[];
 
 
 extern char **include_dirs;
 extern int include_dir_count;
 extern int include_dir_maxlen;
 
 
 extern addressT abs_section_offset;
 
 
 extern symbolS *line_label;
 
 
 extern symbolS *mri_common_symbol;
 
 
 extern int outputting_stabs_line_debug;
 
 
 enum linkonce_type {
   LINKONCE_UNSET =3D 0,
   LINKONCE_DISCARD,
   LINKONCE_ONE_ONLY,
   LINKONCE_SAME_SIZE,
   LINKONCE_SAME_CONTENTS
 };
 
 
 
 extern char original_case_string[];
 
 
 extern void pop_insert (const pseudo_typeS *);
 extern unsigned int get_stab_string_offset
   (const char *string, const char *stabstr_secname);
 extern void aout_process_stab (int, const char *, int, int, int);
 extern char *demand_copy_C_string (int *len_pointer);
 extern char get_absolute_expression_and_terminator
   (long *val_pointer);
 extern offsetT get_absolute_expression (void);
 extern unsigned int next_char_of_string (void);
 extern void s_mri_sect (char *);
 extern char *mri_comment_field (char *);
 extern void mri_comment_end (char *, int);
 extern void add_include_dir (char *path);
 extern void cons (int nbytes);
 extern void demand_empty_rest_of_line (void);
 extern void emit_expr (expressionS *exp, unsigned int nbytes);
 extern void emit_leb128_expr (expressionS *, int);
 extern void equals (char *sym_name, int reassign);
 extern void float_cons (int float_type);
 extern void ignore_rest_of_line (void);
 extern void discard_rest_of_line (void);
 extern int output_leb128 (char *, valueT, int sign);
 extern void pseudo_set (symbolS * symbolP);
 extern void read_a_source_file (char *name);
 extern void read_begin (void);
 extern void read_print_statistics (FILE *);
 extern int sizeof_leb128 (valueT, int sign);
 extern void stabs_generate_asm_file (void);
 extern void stabs_generate_asm_lineno (void);
 extern void stabs_generate_asm_func (const char *, const char *);
 extern void stabs_generate_asm_endfunc (const char *, const char *);
 extern void do_repeat (int,const char *,const char *);
 extern void end_repeat (int);
 
 extern void generate_lineno_debug (void);
 
 extern void s_abort (int) __attribute__ ((__noreturn__));
 extern void s_align_bytes (int arg);
 extern void s_align_ptwo (int);
 extern void s_app_file_string (char *);
 extern void s_app_file (int);
 extern void s_app_line (int);
 extern void s_bad_endr (int);
 extern void s_comm (int);
 extern void s_data (int);
 extern void s_desc (int);
 extern void s_else (int arg);
 extern void s_elseif (int arg);
 extern void s_end (int arg);
 extern void s_endif (int arg);
 extern void s_err (int);
 extern void s_fail (int);
 extern void s_fill (int);
 extern void s_float_space (int mult);
 extern void s_func (int);
 extern void do_s_func (int, const char *);
 extern void s_globl (int arg);
 extern void s_if (int arg);
 extern void s_ifc (int arg);
 extern void s_ifdef (int arg);
 extern void s_ifeqs (int arg);
 extern void s_ignore (int arg);
 extern void s_include (int arg);
 extern void s_irp (int arg);
 extern void s_lcomm (int needs_align);
 extern void s_lcomm_bytes (int needs_align);
 extern void s_leb128 (int sign);
 extern void s_linkonce (int);
 extern void s_lsym (int);
 extern void s_macro (int);
 extern void s_mexit (int);
 extern void s_mri (int);
 extern void s_mri_common (int);
 extern void s_org (int);
 extern void s_print (int);
 extern void s_purgem (int);
 extern void s_rept (int);
 extern void s_set (int);
 extern void s_space (int mult);
 extern void s_stab (int what);
 extern void s_struct (int);
 extern void s_text (int);
 extern void stringer (int append_zero);
 extern void s_xstab (int what);
 extern void s_rva (int);
 extern void s_incbin (int);
 # 624 "../../binutils-2.13.1/gas/as.h" 2
 # 1 "../../binutils-2.13.1/gas/symbols.h" 1
 # 34 "../../binutils-2.13.1/gas/symbols.h"
 extern struct obstack notes;
 
 extern struct obstack cond_obstack;
 
 
 extern symbolS *symbol_rootP;
 extern symbolS *symbol_lastP;
 
 extern symbolS abs_symbol;
 
 extern int symbol_table_frozen;
 
 
 
 extern int symbols_case_sensitive;
 
 char *decode_local_label_name (char *s);
 symbolS *symbol_find (const char *name);
 symbolS *symbol_find_exact (const char *name);
 symbolS *symbol_find_base (const char *name, int strip_underscore);
 symbolS *symbol_find_or_make (const char *name);
 symbolS *symbol_make (const char *name);
 symbolS *symbol_new (const char *name, segT segment, valueT value, fragS =
 * frag);
 
 symbolS *symbol_create (const char *name, segT segment, valueT value, fra=
 gS * frag);
 
 symbolS *colon (const char *sym_name);
 void local_colon (int n);
 void symbol_begin (void);
 void symbol_print_statistics (FILE *);
 void symbol_table_insert (symbolS * symbolP);
 valueT resolve_symbol_value (symbolS *);
 void resolve_local_symbol_values (void);
 
 void print_symbol_value (symbolS *);
 void print_expr (expressionS *);
 void print_expr_1 (FILE *, expressionS *);
 void print_symbol_value_1 (FILE *, symbolS *);
 
 int dollar_label_defined (long l);
 void dollar_label_clear (void);
 void define_dollar_label (long l);
 char *dollar_label_name (long l, int augend);
 
 void fb_label_instance_inc (long label);
 char *fb_label_name (long n, long augend);
 
 extern void copy_symbol_attributes (symbolS *, symbolS *);
 
 
 extern valueT S_GET_VALUE (symbolS *);
 extern void S_SET_VALUE (symbolS *, valueT);
 
 
 extern int S_IS_FUNCTION (symbolS *);
 extern int S_IS_EXTERNAL (symbolS *);
 extern int S_IS_WEAK (symbolS *);
 extern int S_IS_COMMON (symbolS *);
 extern int S_IS_DEFINED (symbolS *);
 extern int S_IS_DEBUG (symbolS *);
 extern int S_IS_LOCAL (symbolS *);
 extern int S_IS_EXTERN (symbolS *);
 extern int S_IS_STABD (symbolS *);
 extern const char *S_GET_NAME (symbolS *);
 extern segT S_GET_SEGMENT (symbolS *);
 extern void S_SET_SEGMENT (symbolS *, segT);
 extern void S_SET_EXTERNAL (symbolS *);
 extern void S_SET_NAME (symbolS *, char *);
 extern void S_CLEAR_EXTERNAL (symbolS *);
 extern void S_SET_WEAK (symbolS *);
 # 140 "../../binutils-2.13.1/gas/symbols.h"
 extern const segT N_TYPE_seg[];
 
 
 extern const short seg_N_TYPE[];
 
 
 
 void symbol_clear_list_pointers (symbolS * symbolP);
 
 
 
 void symbol_insert (symbolS * addme, symbolS * target, symbolS ** rootP, =
 symbolS ** lastP);
 
 void symbol_remove (symbolS * symbolP, symbolS ** rootP, symbolS ** lastP=
 );
 
 
 extern symbolS *symbol_previous (symbolS *);
 
 
 
 void verify_symbol_chain (symbolS * rootP, symbolS * lastP);
 void verify_symbol_chain_2 (symbolS * symP);
 
 void symbol_append (symbolS * addme, symbolS * target, symbolS ** rootP, =
 symbolS ** lastP);
 
 
 extern symbolS *symbol_next (symbolS *);
 
 extern expressionS *symbol_get_value_expression (symbolS *);
 extern void symbol_set_value_expression (symbolS *, const expressionS *);
 
 extern void symbol_set_frag (symbolS *, fragS *);
 extern fragS *symbol_get_frag (symbolS *);
 extern void symbol_mark_used (symbolS *);
 extern void symbol_clear_used (symbolS *);
 extern int symbol_used_p (symbolS *);
 extern void symbol_mark_used_in_reloc (symbolS *);
 extern void symbol_clear_used_in_reloc (symbolS *);
 extern int symbol_used_in_reloc_p (symbolS *);
 extern void symbol_mark_mri_common (symbolS *);
 extern void symbol_clear_mri_common (symbolS *);
 extern int symbol_mri_common_p (symbolS *);
 extern void symbol_mark_written (symbolS *);
 extern void symbol_clear_written (symbolS *);
 extern int symbol_written_p (symbolS *);
 extern void symbol_mark_resolved (symbolS *);
 extern int symbol_resolved_p (symbolS *);
 extern int symbol_section_p (symbolS *);
 extern int symbol_equated_p (symbolS *);
 extern int symbol_equated_reloc_p (symbolS *);
 extern int symbol_constant_p (symbolS *);
 
 
 extern asymbol *symbol_get_bfdsym (symbolS *);
 extern void symbol_set_bfdsym (symbolS *, asymbol *);
 
 
 
 struct elf_obj_sy *symbol_get_obj (symbolS *);
 void symbol_set_obj (symbolS *, struct elf_obj_sy *);
 # 625 "../../binutils-2.13.1/gas/as.h" 2
 
 # 1 "../../binutils-2.13.1/gas/tc.h" 1
 # 25 "../../binutils-2.13.1/gas/tc.h"
 extern const pseudo_typeS md_pseudo_table[];
 
 
 
 
 struct relax_type
 {
 
   long rlx_forward;
 
   long rlx_backward;
 
 
   unsigned char rlx_length;
 
 
   relax_substateT rlx_more;
 };
 
 typedef struct relax_type relax_typeS;
 
 extern const int md_reloc_size;
 
 char *md_atof (int what_statement_type, char *literalP, int *sizeP);
 
 int md_estimate_size_before_relax (fragS * fragP, segT segment);
 
 int md_parse_option (int c, char *arg);
 void md_show_usage (FILE *);
 long md_pcrel_from (fixS * fixP);
 short tc_coff_fix2rtype (fixS * fixP);
 void md_assemble (char *str);
 void md_begin (void);
 
 void md_create_long_jump (char *ptr, addressT from_addr, addressT to_addr=
 , fragS * frag, symbolS * to_symbol);
 
 
 
 
 void md_create_short_jump (char *ptr, addressT from_addr, addressT to_add=
 r, fragS * frag, symbolS * to_symbol);
 
 
 
 void md_number_to_chars (char *buf, valueT val, int n);
 
 
 
 
 
 void md_apply_fix3 (fixS *, valueT *, segT);
 
 
 
 void md_convert_frag (bfd * headers, segT sec, fragS * fragP);
 
 
 void tc_headers_hook (segT *, fixS *);
 
 
 extern arelent *tc_gen_reloc (asection *, fixS *);
 # 103 "../../binutils-2.13.1/gas/tc.h"
 valueT md_section_align (segT seg, valueT size);
 
 
 
 symbolS *md_undefined_symbol (char *name);
 # 627 "../../binutils-2.13.1/gas/as.h" 2
 # 1 "../../binutils-2.13.1/gas/obj.h" 1
 # 24 "../../binutils-2.13.1/gas/obj.h"
 char *obj_default_output_file_name (void);
 void obj_emit_relocations (char **where, fixS * fixP, relax_addressT segm=
 ent_address_in_file);
 
 void obj_emit_strings (char **where);
 void obj_emit_symbols (char **where, symbolS * symbols);
 # 44 "../../binutils-2.13.1/gas/obj.h"
 void obj_symbol_to_chars (char **where, symbolS * symbolP);
 
 extern const pseudo_typeS obj_pseudo_table[];
 
 
 struct format_ops {
   int flavor;
   unsigned dfl_leading_underscore : 1;
   unsigned emit_section_symbols : 1;
   void (*begin) (void);
   void (*app_file) (const char *);
   void (*frob_symbol) (symbolS *, int *);
   void (*frob_file) (void);
   void (*frob_file_before_adjust) (void);
   void (*frob_file_after_relocs) (void);
   bfd_vma (*s_get_size) (symbolS *);
   void (*s_set_size) (symbolS *, bfd_vma);
   bfd_vma (*s_get_align) (symbolS *);
   void (*s_set_align) (symbolS *, bfd_vma);
   int (*s_get_other) (symbolS *);
   void (*s_set_other) (symbolS *, int);
   int (*s_get_desc) (symbolS *);
   void (*s_set_desc) (symbolS *, int);
   int (*s_get_type) (symbolS *);
   void (*s_set_type) (symbolS *, int);
   void (*copy_symbol_attributes) (symbolS *, symbolS *);
   void (*generate_asm_lineno) (void);
   void (*process_stab) (segT, int, const char *, int, int, int);
   int (*separate_stab_sections) (void);
   void (*init_stab_section) (segT);
   int (*sec_sym_ok_for_reloc) (asection *);
   void (*pop_insert) (void);
 
   void (*ecoff_set_ext) (symbolS *, struct ecoff_extr *);
 
   void (*read_begin_hook) (void);
   void (*symbol_new_hook) (symbolS *);
 };
 
 extern const struct format_ops elf_format_ops;
 extern const struct format_ops ecoff_format_ops;
 extern const struct format_ops coff_format_ops;
 extern const struct format_ops aout_format_ops;
 
 
 extern const struct format_ops *this_format;
 # 628 "../../binutils-2.13.1/gas/as.h" 2
 
 
 
 
 # 1 "../../binutils-2.13.1/gas/listing.h" 1
 # 44 "../../binutils-2.13.1/gas/listing.h"
 void listing_eject (int);
 void listing_error (const char *message);
 void listing_file (const char *name);
 void listing_flags (int);
 void listing_list (int on);
 void listing_newline (char *ps);
 void listing_prev_line (void);
 void listing_print (char *name);
 void listing_psize (int);
 void listing_nopage (int);
 void listing_source_file (const char *);
 void listing_source_line (unsigned int);
 void listing_title (int depth);
 void listing_warning (const char *message);
 void listing_width (unsigned int x);
 
 extern int listing_lhs_width;
 extern int listing_lhs_width_second;
 extern int listing_lhs_cont_lines;
 extern int listing_rhs_width;
 # 633 "../../binutils-2.13.1/gas/as.h" 2
 # 25 "../../binutils-2.13.1/gas/config/tc-ppc.c" 2
 # 1 "../../binutils-2.13.1/include/safe-ctype.h" 1
 # 44 "../../binutils-2.13.1/include/safe-ctype.h"
 enum {
 
   _sch_isblank =3D 0x0001,
   _sch_iscntrl =3D 0x0002,
   _sch_isdigit =3D 0x0004,
   _sch_islower =3D 0x0008,
   _sch_isprint =3D 0x0010,
   _sch_ispunct =3D 0x0020,
   _sch_isspace =3D 0x0040,
   _sch_isupper =3D 0x0080,
   _sch_isxdigit =3D 0x0100,
 
 
   _sch_isidst =3D 0x0200,
   _sch_isvsp =3D 0x0400,
   _sch_isnvsp =3D 0x0800,
 
 
   _sch_isalpha =3D _sch_isupper|_sch_islower,
   _sch_isalnum =3D _sch_isalpha|_sch_isdigit,
   _sch_isidnum =3D _sch_isidst|_sch_isdigit,
   _sch_isgraph =3D _sch_isalnum|_sch_ispunct,
   _sch_iscppsp =3D _sch_isvsp|_sch_isnvsp,
   _sch_isbasic =3D _sch_isprint|_sch_iscppsp
 
 };
 
 
 extern const unsigned short _sch_istable[256];
 # 97 "../../binutils-2.13.1/include/safe-ctype.h"
 extern const unsigned char _sch_toupper[256];
 extern const unsigned char _sch_tolower[256];
 # 26 "../../binutils-2.13.1/gas/config/tc-ppc.c" 2
 # 1 "../../binutils-2.13.1/gas/subsegs.h" 1
 # 41 "../../binutils-2.13.1/gas/subsegs.h"
 # 1 "../../binutils-2.13.1/include/obstack.h" 1
 # 161 "../../binutils-2.13.1/include/obstack.h"
 struct _obstack_chunk
 {
   char *limit;
   struct _obstack_chunk *prev;
   char contents[4];
 };
 
 struct obstack
 {
   long chunk_size;
   struct _obstack_chunk *chunk;
   char *object_base;
   char *next_free;
   char *chunk_limit;
   int temp;
   int alignment_mask;
 
 
 
 
   struct _obstack_chunk *(*chunkfun) (void *, long);
   void (*freefun) (void *, struct _obstack_chunk *);
   void *extra_arg;
 
 
 
 
 
   unsigned use_extra_arg:1;
   unsigned maybe_empty_object:1;
 
 
 
   unsigned alloc_failed:1;
 
 
 };
 
 
 
 
 extern void _obstack_newchunk (struct obstack *, int);
 extern void _obstack_free (struct obstack *, void *);
 extern int _obstack_begin (struct obstack *, int, int,
                             void *(*) (long), void (*) (void *));
 extern int _obstack_begin_1 (struct obstack *, int, int,
                              void *(*) (void *, long),
                              void (*) (void *, void *), void *);
 extern int _obstack_memory_used (struct obstack *);
 # 223 "../../binutils-2.13.1/include/obstack.h"
 void obstack_init (struct obstack *obstack);
 
 void * obstack_alloc (struct obstack *obstack, int size);
 
 void * obstack_copy (struct obstack *obstack, void *address, int size);
 void * obstack_copy0 (struct obstack *obstack, void *address, int size);
 
 void obstack_free (struct obstack *obstack, void *block);
 
 void obstack_blank (struct obstack *obstack, int size);
 
 void obstack_grow (struct obstack *obstack, void *data, int size);
 void obstack_grow0 (struct obstack *obstack, void *data, int size);
 
 void obstack_1grow (struct obstack *obstack, int data_char);
 void obstack_ptr_grow (struct obstack *obstack, void *data);
 void obstack_int_grow (struct obstack *obstack, int data);
 
 void * obstack_finish (struct obstack *obstack);
 
 int obstack_object_size (struct obstack *obstack);
 
 int obstack_room (struct obstack *obstack);
 void obstack_make_room (struct obstack *obstack, int size);
 void obstack_1grow_fast (struct obstack *obstack, int data_char);
 void obstack_ptr_grow_fast (struct obstack *obstack, void *data);
 void obstack_int_grow_fast (struct obstack *obstack, int data);
 void obstack_blank_fast (struct obstack *obstack, int size);
 
 void * obstack_base (struct obstack *obstack);
 void * obstack_next_free (struct obstack *obstack);
 int obstack_alignment_mask (struct obstack *obstack);
 int obstack_chunk_size (struct obstack *obstack);
 int obstack_memory_used (struct obstack *obstack);
 # 267 "../../binutils-2.13.1/include/obstack.h"
 extern void (*obstack_alloc_failed_handler) (void);
 
 
 
 
 
 extern int obstack_exit_failure;
 # 42 "../../binutils-2.13.1/gas/subsegs.h" 2
 
 struct frchain
 {
   struct frag *frch_root;
   struct frag *frch_last;
   struct frchain *frch_next;
   segT frch_seg;
   subsegT frch_subseg;
 
   fixS *fix_root;
   fixS *fix_tail;
 
   struct obstack frch_obstack;
   fragS *frch_frag_now;
 };
 
 typedef struct frchain frchainS;
 
 
 extern frchainS *frchain_root;
 
 
 
 extern frchainS *frchain_now;
 
 typedef struct segment_info_struct {
   frchainS *frchainP;
   unsigned int hadone : 1;
 
 
 
 
 
 
   unsigned int bss : 1;
 
   int user_stuff;
 
 
 
   fixS *fix_root;
   fixS *fix_tail;
 
 
 
 
 
 
 
   symbolS *dot;
 
   struct lineno_list *lineno_list_head;
   struct lineno_list *lineno_list_tail;
 
 
 
   asection *bfd_section;
 
 
 
   symbolS *sym;
 
 
   union {
 
     unsigned long stab_string_size;
 
     char *p;
   }
   stabu;
 # 120 "../../binutils-2.13.1/gas/subsegs.h"
 } segment_info_type;
 
 
 
 extern segment_info_type *seg_info (segT);
 extern symbolS *section_symbol (segT);
 # 155 "../../binutils-2.13.1/gas/subsegs.h"
 extern void subsegs_print_statistics (FILE *);
 # 27 "../../binutils-2.13.1/gas/config/tc-ppc.c" 2
 
 # 1 "../../binutils-2.13.1/include/opcode/ppc.h" 1
 # 27 "../../binutils-2.13.1/include/opcode/ppc.h"
 struct powerpc_opcode
 {
 
   const char *name;
 
 
 
   unsigned long opcode;
 
 
 
 
 
   unsigned long mask;
 
 
 
 
   unsigned long flags;
 
 
 
 
   unsigned char operands[8];
 };
 
 
 
 
 extern const struct powerpc_opcode powerpc_opcodes[];
 extern const int powerpc_num_opcodes;
 # 115 "../../binutils-2.13.1/include/opcode/ppc.h"
 struct powerpc_operand
 {
 
   int bits;
 
 
   int shift;
 # 139 "../../binutils-2.13.1/include/opcode/ppc.h"
   unsigned long (*insert) (unsigned long instruction, long op, int dialec=
 t, const char **errmsg);
 # 160 "../../binutils-2.13.1/include/opcode/ppc.h"
   long (*extract) (unsigned long instruction, int dialect, int *invalid);
 
 
 
   unsigned long flags;
 };
 
 
 
 
 extern const struct powerpc_operand powerpc_operands[];
 # 257 "../../binutils-2.13.1/include/opcode/ppc.h"
 struct powerpc_macro
 {
 
   const char *name;
 
 
   unsigned int operands;
 
 
 
 
   unsigned long flags;
 
 
 
 
   const char *format;
 };
 
 extern const struct powerpc_macro powerpc_macros[];
 extern const int powerpc_num_macros;
 # 29 "../../binutils-2.13.1/gas/config/tc-ppc.c" 2
 
 
 # 1 "../../binutils-2.13.1/include/elf/ppc.h" 1
 # 30 "../../binutils-2.13.1/include/elf/ppc.h"
 # 1 "../../binutils-2.13.1/include/elf/reloc-macros.h" 1
 # 31 "../../binutils-2.13.1/include/elf/ppc.h" 2
 
 
 enum elf_ppc_reloc_type {
   R_PPC_NONE =3D 0,
   R_PPC_ADDR32 =3D 1,
   R_PPC_ADDR24 =3D 2,
   R_PPC_ADDR16 =3D 3,
   R_PPC_ADDR16_LO =3D 4,
   R_PPC_ADDR16_HI =3D 5,
   R_PPC_ADDR16_HA =3D 6,
   R_PPC_ADDR14 =3D 7,
   R_PPC_ADDR14_BRTAKEN =3D 8,
   R_PPC_ADDR14_BRNTAKEN =3D 9,
   R_PPC_REL24 =3D 10,
   R_PPC_REL14 =3D 11,
   R_PPC_REL14_BRTAKEN =3D 12,
   R_PPC_REL14_BRNTAKEN =3D 13,
   R_PPC_GOT16 =3D 14,
   R_PPC_GOT16_LO =3D 15,
   R_PPC_GOT16_HI =3D 16,
   R_PPC_GOT16_HA =3D 17,
   R_PPC_PLTREL24 =3D 18,
   R_PPC_COPY =3D 19,
   R_PPC_GLOB_DAT =3D 20,
   R_PPC_JMP_SLOT =3D 21,
   R_PPC_RELATIVE =3D 22,
   R_PPC_LOCAL24PC =3D 23,
   R_PPC_UADDR32 =3D 24,
   R_PPC_UADDR16 =3D 25,
   R_PPC_REL32 =3D 26,
   R_PPC_PLT32 =3D 27,
   R_PPC_PLTREL32 =3D 28,
   R_PPC_PLT16_LO =3D 29,
   R_PPC_PLT16_HI =3D 30,
   R_PPC_PLT16_HA =3D 31,
   R_PPC_SDAREL16 =3D 32,
   R_PPC_SECTOFF =3D 33,
   R_PPC_SECTOFF_LO =3D 34,
   R_PPC_SECTOFF_HI =3D 35,
   R_PPC_SECTOFF_HA =3D 36,
   R_PPC_ADDR30 =3D 37,
 
 
   R_PPC64_ADDR64 =3D 38,
   R_PPC64_ADDR16_HIGHER =3D 39,
   R_PPC64_ADDR16_HIGHERA =3D 40,
   R_PPC64_ADDR16_HIGHEST =3D 41,
   R_PPC64_ADDR16_HIGHESTA =3D 42,
   R_PPC64_UADDR64 =3D 43,
   R_PPC64_REL64 =3D 44,
   R_PPC64_PLT64 =3D 45,
   R_PPC64_PLTREL64 =3D 46,
   R_PPC64_TOC16 =3D 47,
   R_PPC64_TOC16_LO =3D 48,
   R_PPC64_TOC16_HI =3D 49,
   R_PPC64_TOC16_HA =3D 50,
   R_PPC64_TOC =3D 51,
   R_PPC64_PLTGOT16 =3D 52,
   R_PPC64_PLTGOT16_LO =3D 53,
   R_PPC64_PLTGOT16_HI =3D 54,
   R_PPC64_PLTGOT16_HA =3D 55,
 
 
   R_PPC64_ADDR16_DS =3D 56,
   R_PPC64_ADDR16_LO_DS =3D 57,
   R_PPC64_GOT16_DS =3D 58,
   R_PPC64_GOT16_LO_DS =3D 59,
   R_PPC64_PLT16_LO_DS =3D 60,
   R_PPC64_SECTOFF_DS =3D 61,
   R_PPC64_SECTOFF_LO_DS =3D 62,
   R_PPC64_TOC16_DS =3D 63,
   R_PPC64_TOC16_LO_DS =3D 64,
   R_PPC64_PLTGOT16_DS =3D 65,
   R_PPC64_PLTGOT16_LO_DS =3D 66,
 
 
 
   R_PPC_EMB_NADDR32 =3D 101,
   R_PPC_EMB_NADDR16 =3D 102,
   R_PPC_EMB_NADDR16_LO =3D 103,
   R_PPC_EMB_NADDR16_HI =3D 104,
   R_PPC_EMB_NADDR16_HA =3D 105,
   R_PPC_EMB_SDAI16 =3D 106,
   R_PPC_EMB_SDA2I16 =3D 107,
   R_PPC_EMB_SDA2REL =3D 108,
   R_PPC_EMB_SDA21 =3D 109,
   R_PPC_EMB_MRKREF =3D 110,
   R_PPC_EMB_RELSEC16 =3D 111,
   R_PPC_EMB_RELST_LO =3D 112,
   R_PPC_EMB_RELST_HI =3D 113,
   R_PPC_EMB_RELST_HA =3D 114,
   R_PPC_EMB_BIT_FLD =3D 115,
   R_PPC_EMB_RELSDA =3D 116,
 
 
   R_PPC_GNU_VTINHERIT =3D 253,
   R_PPC_GNU_VTENTRY =3D 254,
 
 
 
   R_PPC_TOC16 =3D 255,
 
 R_PPC_max };
 # 32 "../../binutils-2.13.1/gas/config/tc-ppc.c" 2
 # 1 "../../binutils-2.13.1/gas/dwarf2dbg.h" 1
 # 29 "../../binutils-2.13.1/gas/dwarf2dbg.h"
 struct dwarf2_line_info {
   unsigned int filenum;
   unsigned int line;
   unsigned int column;
   unsigned int flags;
 };
 
 
 
 
 extern char *dwarf2_directive_file (int dummy);
 
 
 
 
 
 
 
 extern void dwarf2_directive_loc (int dummy);
 
 
 
 
 
 extern void dwarf2_where (struct dwarf2_line_info *l);
 
 
 
 
 
 
 extern void dwarf2_gen_line_info (addressT addr, struct dwarf2_line_info =
 *l);
 
 
 
 extern void dwarf2_emit_insn (int);
 
 extern void dwarf2_finish (void);
 
 extern int dwarf2dbg_estimate_size_before_relax (fragS *);
 extern int dwarf2dbg_relax_frag (fragS *);
 extern void dwarf2dbg_convert_frag (fragS *);
 # 33 "../../binutils-2.13.1/gas/config/tc-ppc.c" 2
 # 42 "../../binutils-2.13.1/gas/config/tc-ppc.c"
 extern int target_big_endian;
 
 
 static int set_target_endian =3D 0;
 # 86 "../../binutils-2.13.1/gas/config/tc-ppc.c"
 static boolean reg_names_p =3D false;
 
 static boolean register_name (expressionS *);
 static void ppc_set_cpu (void);
 static unsigned long ppc_insert_operand
   (unsigned long insn, const struct powerpc_operand *operand, offsetT val=
 , char *file, unsigned int line);
 
 static void ppc_macro (char *str, const struct powerpc_macro *macro);
 static void ppc_byte (int);
 
 
 static int ppc_is_toc_sym (symbolS *sym);
 static void ppc_tc (int);
 static void ppc_machine (int);
 # 128 "../../binutils-2.13.1/gas/config/tc-ppc.c"
 static bfd_reloc_code_real_type ppc_elf_suffix (char **, expressionS *);
 static void ppc_elf_cons (int);
 static void ppc_elf_rdata (int);
 static void ppc_elf_lcomm (int);
 static void ppc_elf_validate_fix (fixS *, segT);
 # 158 "../../binutils-2.13.1/gas/config/tc-ppc.c"
 static const char ppc_solaris_comment_chars[] =3D "#!";
 static const char ppc_eabi_comment_chars[] =3D "#";
 
 
 
 
 const char *ppc_comment_chars =3D ppc_eabi_comment_chars;
 
 
 
 
 
 
 const char line_comment_chars[] =3D "#";
 
 
 
 const char line_separator_chars[] =3D ";";
 
 
 
 const char EXP_CHARS[] =3D "eE";
 
 
 
 const char FLT_CHARS[] =3D "dD";
 
 
 
 const pseudo_typeS md_pseudo_table[] =3D
 {
 
   { "byte", ppc_byte, 0 },
 # 227 "../../binutils-2.13.1/gas/config/tc-ppc.c"
   { "llong", ppc_elf_cons, 8 },
   { "quad", ppc_elf_cons, 8 },
   { "long", ppc_elf_cons, 4 },
   { "word", ppc_elf_cons, 2 },
   { "short", ppc_elf_cons, 2 },
   { "rdata", ppc_elf_rdata, 0 },
   { "rodata", ppc_elf_rdata, 0 },
   { "lcomm", ppc_elf_lcomm, 0 },
   { "file", (void (*) (int)) dwarf2_directive_file, 0 },
   { "loc", dwarf2_directive_loc, 0 },
 # 256 "../../binutils-2.13.1/gas/config/tc-ppc.c"
   { "tc", ppc_tc, 0 },
   { "machine", ppc_machine, 0 },
 
 
   { ((void *)0), ((void *)0), 0 }
 };
 
 
 
 
 
 
 
 struct pd_reg
   {
     char *name;
     int value;
   };
 # 310 "../../binutils-2.13.1/gas/config/tc-ppc.c"
 static const struct pd_reg pre_defined_registers[] =3D
 {
   { "cr.0", 0 },
   { "cr.1", 1 },
   { "cr.2", 2 },
   { "cr.3", 3 },
   { "cr.4", 4 },
   { "cr.5", 5 },
   { "cr.6", 6 },
   { "cr.7", 7 },
 
   { "cr0", 0 },
   { "cr1", 1 },
   { "cr2", 2 },
   { "cr3", 3 },
   { "cr4", 4 },
   { "cr5", 5 },
   { "cr6", 6 },
   { "cr7", 7 },
 
   { "ctr", 9 },
 
   { "dar", 19 },
   { "dec", 22 },
   { "dsisr", 18 },
 
   { "f.0", 0 },
   { "f.1", 1 },
   { "f.10", 10 },
   { "f.11", 11 },
   { "f.12", 12 },
   { "f.13", 13 },
   { "f.14", 14 },
   { "f.15", 15 },
   { "f.16", 16 },
   { "f.17", 17 },
   { "f.18", 18 },
   { "f.19", 19 },
   { "f.2", 2 },
   { "f.20", 20 },
   { "f.21", 21 },
   { "f.22", 22 },
   { "f.23", 23 },
   { "f.24", 24 },
   { "f.25", 25 },
   { "f.26", 26 },
   { "f.27", 27 },
   { "f.28", 28 },
   { "f.29", 29 },
   { "f.3", 3 },
   { "f.30", 30 },
   { "f.31", 31 },
   { "f.4", 4 },
   { "f.5", 5 },
   { "f.6", 6 },
   { "f.7", 7 },
   { "f.8", 8 },
   { "f.9", 9 },
 
   { "f0", 0 },
   { "f1", 1 },
   { "f10", 10 },
   { "f11", 11 },
   { "f12", 12 },
   { "f13", 13 },
   { "f14", 14 },
   { "f15", 15 },
   { "f16", 16 },
   { "f17", 17 },
   { "f18", 18 },
   { "f19", 19 },
   { "f2", 2 },
   { "f20", 20 },
   { "f21", 21 },
   { "f22", 22 },
   { "f23", 23 },
   { "f24", 24 },
   { "f25", 25 },
   { "f26", 26 },
   { "f27", 27 },
   { "f28", 28 },
   { "f29", 29 },
   { "f3", 3 },
   { "f30", 30 },
   { "f31", 31 },
   { "f4", 4 },
   { "f5", 5 },
   { "f6", 6 },
   { "f7", 7 },
   { "f8", 8 },
   { "f9", 9 },
 
   { "fpscr", 0 },
 
   { "lr", 8 },
 
   { "pmr", 0 },
 
   { "r.0", 0 },
   { "r.1", 1 },
   { "r.10", 10 },
   { "r.11", 11 },
   { "r.12", 12 },
   { "r.13", 13 },
   { "r.14", 14 },
   { "r.15", 15 },
   { "r.16", 16 },
   { "r.17", 17 },
   { "r.18", 18 },
   { "r.19", 19 },
   { "r.2", 2 },
   { "r.20", 20 },
   { "r.21", 21 },
   { "r.22", 22 },
   { "r.23", 23 },
   { "r.24", 24 },
   { "r.25", 25 },
   { "r.26", 26 },
   { "r.27", 27 },
   { "r.28", 28 },
   { "r.29", 29 },
   { "r.3", 3 },
   { "r.30", 30 },
   { "r.31", 31 },
   { "r.4", 4 },
   { "r.5", 5 },
   { "r.6", 6 },
   { "r.7", 7 },
   { "r.8", 8 },
   { "r.9", 9 },
 
   { "r.sp", 1 },
 
   { "r.toc", 2 },
 
   { "r0", 0 },
   { "r1", 1 },
   { "r10", 10 },
   { "r11", 11 },
   { "r12", 12 },
   { "r13", 13 },
   { "r14", 14 },
   { "r15", 15 },
   { "r16", 16 },
   { "r17", 17 },
   { "r18", 18 },
   { "r19", 19 },
   { "r2", 2 },
   { "r20", 20 },
   { "r21", 21 },
   { "r22", 22 },
   { "r23", 23 },
   { "r24", 24 },
   { "r25", 25 },
   { "r26", 26 },
   { "r27", 27 },
   { "r28", 28 },
   { "r29", 29 },
   { "r3", 3 },
   { "r30", 30 },
   { "r31", 31 },
   { "r4", 4 },
   { "r5", 5 },
   { "r6", 6 },
   { "r7", 7 },
   { "r8", 8 },
   { "r9", 9 },
 
   { "rtoc", 2 },
 
   { "sdr1", 25 },
 
   { "sp", 1 },
 
   { "srr0", 26 },
   { "srr1", 27 },
 
   { "v.0", 0 },
   { "v.1", 1 },
   { "v.10", 10 },
   { "v.11", 11 },
   { "v.12", 12 },
   { "v.13", 13 },
   { "v.14", 14 },
   { "v.15", 15 },
   { "v.16", 16 },
   { "v.17", 17 },
   { "v.18", 18 },
   { "v.19", 19 },
   { "v.2", 2 },
   { "v.20", 20 },
   { "v.21", 21 },
   { "v.22", 22 },
   { "v.23", 23 },
   { "v.24", 24 },
   { "v.25", 25 },
   { "v.26", 26 },
   { "v.27", 27 },
   { "v.28", 28 },
   { "v.29", 29 },
   { "v.3", 3 },
   { "v.30", 30 },
   { "v.31", 31 },
   { "v.4", 4 },
   { "v.5", 5 },
   { "v.6", 6 },
   { "v.7", 7 },
   { "v.8", 8 },
   { "v.9", 9 },
 
   { "v0", 0 },
   { "v1", 1 },
   { "v10", 10 },
   { "v11", 11 },
   { "v12", 12 },
   { "v13", 13 },
   { "v14", 14 },
   { "v15", 15 },
   { "v16", 16 },
   { "v17", 17 },
   { "v18", 18 },
   { "v19", 19 },
   { "v2", 2 },
   { "v20", 20 },
   { "v21", 21 },
   { "v22", 22 },
   { "v23", 23 },
   { "v24", 24 },
   { "v25", 25 },
   { "v26", 26 },
   { "v27", 27 },
   { "v28", 28 },
   { "v29", 29 },
   { "v3", 3 },
   { "v30", 30 },
   { "v31", 31 },
   { "v4", 4 },
   { "v5", 5 },
   { "v6", 6 },
   { "v7", 7 },
   { "v8", 8 },
   { "v9", 9 },
 
   { "xer", 1 },
 
 };
 
 
 
 
 
 
 static int reg_name_search
   (const struct pd_reg *, int, const char * name);
 
 static int
 reg_name_search (regs, regcount, name)
      const struct pd_reg *regs;
      int regcount;
      const char *name;
 {
   int middle, low, high;
   int cmp;
 
   low =3D 0;
   high =3D regcount - 1;
 
   do
     {
       middle =3D (low + high) / 2;
       cmp =3D strcasecmp (name, regs[middle].name);
       if (cmp < 0)
         high =3D middle - 1;
       else if (cmp > 0)
         low =3D middle + 1;
       else
         return regs[middle].value;
     }
   while (low <=3D high);
 
   return -1;
 }
 # 605 "../../binutils-2.13.1/gas/config/tc-ppc.c"
 static boolean
 register_name (expressionP)
      expressionS *expressionP;
 {
   int reg_number;
   char *name;
   char *start;
   char c;
 
 
   start =3D name =3D input_line_pointer;
   if (name[0] =3D=3D '%' && (_sch_istable[(name[1]) & 0xff] & (unsigned s=
 hort)(_sch_isalpha)))
     name =3D ++input_line_pointer;
 
   else if (!reg_names_p || !(_sch_istable[(name[0]) & 0xff] & (unsigned s=
 hort)(_sch_isalpha)))
     return false;
 
   c =3D get_symbol_end ();
   reg_number =3D reg_name_search (pre_defined_registers, (sizeof (pre_def=
 ined_registers) / sizeof (struct pd_reg)), name);
 
 
   *input_line_pointer =3D c;
 
 
   if (reg_number >=3D 0)
     {
       expressionP->X_op =3D O_register;
       expressionP->X_add_number =3D reg_number;
 
 
       expressionP->X_add_symbol =3D ((void *)0);
       expressionP->X_op_symbol =3D ((void *)0);
       return true;
     }
 
 
   input_line_pointer =3D start;
   return false;
 }
 
 
 
 
 
 
 static boolean cr_operand;
 
 
 static const struct pd_reg cr_names[] =3D
 {
   { "cr0", 0 },
   { "cr1", 1 },
   { "cr2", 2 },
   { "cr3", 3 },
   { "cr4", 4 },
   { "cr5", 5 },
   { "cr6", 6 },
   { "cr7", 7 },
   { "eq", 2 },
   { "gt", 1 },
   { "lt", 0 },
   { "so", 3 },
   { "un", 3 }
 };
 
 
 
 
 int
 ppc_parse_name (name, expr)
      const char *name;
      expressionS *expr;
 {
   int val;
 
   if (! cr_operand)
     return 0;
 
   val =3D reg_name_search (cr_names, sizeof cr_names / sizeof cr_names[0]=
 ,
                          name);
   if (val < 0)
     return 0;
 
   expr->X_op =3D O_constant;
   expr->X_add_number =3D val;
 
   return 1;
 }
 
 
 
 
 
 static unsigned long ppc_cpu =3D 0;
 
 
 static unsigned int ppc_obj64 =3D 32 =3D=3D 64;
 
 
 static struct hash_control *ppc_hash;
 
 
 static struct hash_control *ppc_macro_hash;
 
 
 
 static enum { SHLIB_NONE, SHLIB_PIC, SHLIB_MRELOCATABLE } shlib =3D SHLIB=
 _NONE;
 
 
 static flagword ppc_flags =3D 0;
 # 723 "../../binutils-2.13.1/gas/config/tc-ppc.c"
 static boolean msolaris =3D false;
 # 789 "../../binutils-2.13.1/gas/config/tc-ppc.c"
 symbolS *GOT_symbol;
 
 
 
 const char *const md_shortopts =3D "b:l:usm:K:VQ:";
 
 
 
 const struct option md_longopts[] =3D {
   {((void *)0), 0, ((void *)0), 0}
 };
 const size_t md_longopts_size =3D sizeof (md_longopts);
 
 int
 md_parse_option (c, arg)
      int c;
      char *arg;
 {
   switch (c)
     {
     case 'u':
 
 
       break;
 
 
     case 'l':
 
 
       if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant=
 _p (arg) && __builtin_constant_p ("e") && (__s1_len =3D strlen (arg), __s=
 2_len =3D strlen ("e"), (!((size_t)(const void *)((arg) + 1) - (size_t)(c=
 onst void *)(arg) =3D=3D 1) || __s1_len >=3D 4) && (!((size_t)(const void=
  *)(("e") + 1) - (size_t)(const void *)("e") =3D=3D 1) || __s2_len >=3D 4=
 )) ? memcmp ((__const char *) (arg), (__const char *) ("e"), (__s1_len < =
 __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && ((s=
 ize_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) =3D=3D 1) &=
 & (__s1_len =3D strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("e")=
  && ((size_t)(const void *)(("e") + 1) - (size_t)(const void *)("e") =3D=3D=
  1) ? (__extension__ ({ register int __result =3D (((__const unsigned cha=
 r *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const cha=
 r *)("e"))[0]); if (__s1_len > 0 && __result =3D=3D 0) { __result =3D (((=
 __const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned =
 char *) (__const char *) ("e"))[1]); if (__s1_len > 1 && __result =3D=3D =
 0) { __result =3D (((__const unsigned char *) (__const char *) (arg))[2] =
 - ((__const unsigned char *) (__const char *) ("e"))[2]); if (__s1_len > =
 2 && __result =3D=3D 0) __result =3D (((__const unsigned char *) (__const=
  char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("e"))[3=
 ]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 =3D=
  (__const unsigned char *) (__const char *) ("e"); register int __result =
 =3D (((__const unsigned char *) (__const char *) (arg))[0] - __s2[0]); if=
  (__s1_len > 0 && __result =3D=3D 0) { __result =3D (((__const unsigned c=
 har *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __resul=
 t =3D=3D 0) { __result =3D (((__const unsigned char *) (__const char *) (=
 arg))[2] - __s2[2]); if (__s1_len > 2 && __result =3D=3D 0) __result =3D =
 (((__const unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __=
 result; }))) : (__builtin_constant_p ("e") && ((size_t)(const void *)(("e=
 ") + 1) - (size_t)(const void *)("e") =3D=3D 1) && (__s2_len =3D strlen (=
 "e"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void=
  *)((arg) + 1) - (size_t)(const void *)(arg) =3D=3D 1) ? (__extension__ (=
 { register int __result =3D (((__const unsigned char *) (__const char *) =
 (arg))[0] - ((__const unsigned char *) (__const char *)("e"))[0]); if (__=
 s2_len > 0 && __result =3D=3D 0) { __result =3D (((__const unsigned char =
 *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char =
 *) ("e"))[1]); if (__s2_len > 1 && __result =3D=3D 0) { __result =3D (((_=
 _const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned c=
 har *) (__const char *) ("e"))[2]); if (__s2_len > 2 && __result =3D=3D 0=
 ) __result =3D (((__const unsigned char *) (__const char *) (arg))[3] - (=
 (__const unsigned char *) (__const char *) ("e"))[3]); } } __result; })) =
 : (__extension__ ({ __const unsigned char *__s1 =3D (__const unsigned cha=
 r *) (__const char *) (arg); register int __result =3D __s1[0] - ((__cons=
 t unsigned char *) (__const char *) ("e"))[0]; if (__s2_len > 0 && __resu=
 lt =3D=3D 0) { __result =3D (__s1[1] - ((__const unsigned char *) (__cons=
 t char *) ("e"))[1]); if (__s2_len > 1 && __result =3D=3D 0) { __result =3D=
  (__s1[2] - ((__const unsigned char *) (__const char *) ("e"))[2]); if (_=
 _s2_len > 2 && __result =3D=3D 0) __result =3D (__s1[3] - ((__const unsig=
 ned char *) (__const char *) ("e"))[3]); } } __result; }))) : strcmp (arg=
 , "e")))); }) =3D=3D 0)
         {
           target_big_endian =3D 0;
           set_target_endian =3D 1;
         }
       else
         return 0;
 
       break;
 
     case 'b':
       if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant=
 _p (arg) && __builtin_constant_p ("e") && (__s1_len =3D strlen (arg), __s=
 2_len =3D strlen ("e"), (!((size_t)(const void *)((arg) + 1) - (size_t)(c=
 onst void *)(arg) =3D=3D 1) || __s1_len >=3D 4) && (!((size_t)(const void=
  *)(("e") + 1) - (size_t)(const void *)("e") =3D=3D 1) || __s2_len >=3D 4=
 )) ? memcmp ((__const char *) (arg), (__const char *) ("e"), (__s1_len < =
 __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && ((s=
 ize_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) =3D=3D 1) &=
 & (__s1_len =3D strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("e")=
  && ((size_t)(const void *)(("e") + 1) - (size_t)(const void *)("e") =3D=3D=
  1) ? (__extension__ ({ register int __result =3D (((__const unsigned cha=
 r *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const cha=
 r *)("e"))[0]); if (__s1_len > 0 && __result =3D=3D 0) { __result =3D (((=
 __const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned =
 char *) (__const char *) ("e"))[1]); if (__s1_len > 1 && __result =3D=3D =
 0) { __result =3D (((__const unsigned char *) (__const char *) (arg))[2] =
 - ((__const unsigned char *) (__const char *) ("e"))[2]); if (__s1_len > =
 2 && __result =3D=3D 0) __result =3D (((__const unsigned char *) (__const=
  char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("e"))[3=
 ]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 =3D=
  (__const unsigned char *) (__const char *) ("e"); register int __result =
 =3D (((__const unsigned char *) (__const char *) (arg))[0] - __s2[0]); if=
  (__s1_len > 0 && __result =3D=3D 0) { __result =3D (((__const unsigned c=
 har *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __resul=
 t =3D=3D 0) { __result =3D (((__const unsigned char *) (__const char *) (=
 arg))[2] - __s2[2]); if (__s1_len > 2 && __result =3D=3D 0) __result =3D =
 (((__const unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __=
 result; }))) : (__builtin_constant_p ("e") && ((size_t)(const void *)(("e=
 ") + 1) - (size_t)(const void *)("e") =3D=3D 1) && (__s2_len =3D strlen (=
 "e"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void=
  *)((arg) + 1) - (size_t)(const void *)(arg) =3D=3D 1) ? (__extension__ (=
 { register int __result =3D (((__const unsigned char *) (__const char *) =
 (arg))[0] - ((__const unsigned char *) (__const char *)("e"))[0]); if (__=
 s2_len > 0 && __result =3D=3D 0) { __result =3D (((__const unsigned char =
 *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char =
 *) ("e"))[1]); if (__s2_len > 1 && __result =3D=3D 0) { __result =3D (((_=
 _const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned c=
 har *) (__const char *) ("e"))[2]); if (__s2_len > 2 && __result =3D=3D 0=
 ) __result =3D (((__const unsigned char *) (__const char *) (arg))[3] - (=
 (__const unsigned char *) (__const char *) ("e"))[3]); } } __result; })) =
 : (__extension__ ({ __const unsigned char *__s1 =3D (__const unsigned cha=
 r *) (__const char *) (arg); register int __result =3D __s1[0] - ((__cons=
 t unsigned char *) (__const char *) ("e"))[0]; if (__s2_len > 0 && __resu=
 lt =3D=3D 0) { __result =3D (__s1[1] - ((__const unsigned char *) (__cons=
 t char *) ("e"))[1]); if (__s2_len > 1 && __result =3D=3D 0) { __result =3D=
  (__s1[2] - ((__const unsigned char *) (__const char *) ("e"))[2]); if (_=
 _s2_len > 2 && __result =3D=3D 0) __result =3D (__s1[3] - ((__const unsig=
 ned char *) (__const char *) ("e"))[3]); } } __result; }))) : strcmp (arg=
 , "e")))); }) =3D=3D 0)
         {
           target_big_endian =3D 1;
           set_target_endian =3D 1;
         }
       else
         return 0;
 
       break;
 
     case 'K':
 
       if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant=
 _p (arg) && __builtin_constant_p ("PIC") && (__s1_len =3D strlen (arg), _=
 _s2_len =3D strlen ("PIC"), (!((size_t)(const void *)((arg) + 1) - (size_=
 t)(const void *)(arg) =3D=3D 1) || __s1_len >=3D 4) && (!((size_t)(const =
 void *)(("PIC") + 1) - (size_t)(const void *)("PIC") =3D=3D 1) || __s2_le=
 n >=3D 4)) ? memcmp ((__const char *) (arg), (__const char *) ("PIC"), (_=
 _s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (a=
 rg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) =3D=
 =3D 1) && (__s1_len =3D strlen (arg), __s1_len < 4) ? (__builtin_constant=
 _p ("PIC") && ((size_t)(const void *)(("PIC") + 1) - (size_t)(const void =
 *)("PIC") =3D=3D 1) ? (__extension__ ({ register int __result =3D (((__co=
 nst unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char=
  *) (__const char *)("PIC"))[0]); if (__s1_len > 0 && __result =3D=3D 0) =
 { __result =3D (((__const unsigned char *) (__const char *) (arg))[1] - (=
 (__const unsigned char *) (__const char *) ("PIC"))[1]); if (__s1_len > 1=
  && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__cons=
 t char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("PIC")=
 )[2]); if (__s1_len > 2 && __result =3D=3D 0) __result =3D (((__const uns=
 igned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__=
 const char *) ("PIC"))[3]); } } __result; })) : (__extension__ ({ __const=
  unsigned char *__s2 =3D (__const unsigned char *) (__const char *) ("PIC=
 "); register int __result =3D (((__const unsigned char *) (__const char *=
 ) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result =3D=3D 0) { __result=
  =3D (((__const unsigned char *) (__const char *) (arg))[1] - __s2[1]); i=
 f (__s1_len > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned =
 char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __resu=
 lt =3D=3D 0) __result =3D (((__const unsigned char *) (__const char *) (a=
 rg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("PIC") &&=
  ((size_t)(const void *)(("PIC") + 1) - (size_t)(const void *)("PIC") =3D=
 =3D 1) && (__s2_len =3D strlen ("PIC"), __s2_len < 4) ? (__builtin_consta=
 nt_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)=
 (arg) =3D=3D 1) ? (__extension__ ({ register int __result =3D (((__const =
 unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) =
 (__const char *)("PIC"))[0]); if (__s2_len > 0 && __result =3D=3D 0) { __=
 result =3D (((__const unsigned char *) (__const char *) (arg))[1] - ((__c=
 onst unsigned char *) (__const char *) ("PIC"))[1]); if (__s2_len > 1 && =
 __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__const ch=
 ar *) (arg))[2] - ((__const unsigned char *) (__const char *) ("PIC"))[2]=
 ); if (__s2_len > 2 && __result =3D=3D 0) __result =3D (((__const unsigne=
 d char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__cons=
 t char *) ("PIC"))[3]); } } __result; })) : (__extension__ ({ __const uns=
 igned char *__s1 =3D (__const unsigned char *) (__const char *) (arg); re=
 gister int __result =3D __s1[0] - ((__const unsigned char *) (__const cha=
 r *) ("PIC"))[0]; if (__s2_len > 0 && __result =3D=3D 0) { __result =3D (=
 __s1[1] - ((__const unsigned char *) (__const char *) ("PIC"))[1]); if (_=
 _s2_len > 1 && __result =3D=3D 0) { __result =3D (__s1[2] - ((__const uns=
 igned char *) (__const char *) ("PIC"))[2]); if (__s2_len > 2 && __result=
  =3D=3D 0) __result =3D (__s1[3] - ((__const unsigned char *) (__const ch=
 ar *) ("PIC"))[3]); } } __result; }))) : strcmp (arg, "PIC")))); }) =3D=3D=
  0 || __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (=
 arg) && __builtin_constant_p ("pic") && (__s1_len =3D strlen (arg), __s2_=
 len =3D strlen ("pic"), (!((size_t)(const void *)((arg) + 1) - (size_t)(c=
 onst void *)(arg) =3D=3D 1) || __s1_len >=3D 4) && (!((size_t)(const void=
  *)(("pic") + 1) - (size_t)(const void *)("pic") =3D=3D 1) || __s2_len >=3D=
  4)) ? memcmp ((__const char *) (arg), (__const char *) ("pic"), (__s1_le=
 n < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) &&=
  ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) =3D=3D =
 1) && (__s1_len =3D strlen (arg), __s1_len < 4) ? (__builtin_constant_p (=
 "pic") && ((size_t)(const void *)(("pic") + 1) - (size_t)(const void *)("=
 pic") =3D=3D 1) ? (__extension__ ({ register int __result =3D (((__const =
 unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) =
 (__const char *)("pic"))[0]); if (__s1_len > 0 && __result =3D=3D 0) { __=
 result =3D (((__const unsigned char *) (__const char *) (arg))[1] - ((__c=
 onst unsigned char *) (__const char *) ("pic"))[1]); if (__s1_len > 1 && =
 __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__const ch=
 ar *) (arg))[2] - ((__const unsigned char *) (__const char *) ("pic"))[2]=
 ); if (__s1_len > 2 && __result =3D=3D 0) __result =3D (((__const unsigne=
 d char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__cons=
 t char *) ("pic"))[3]); } } __result; })) : (__extension__ ({ __const uns=
 igned char *__s2 =3D (__const unsigned char *) (__const char *) ("pic"); =
 register int __result =3D (((__const unsigned char *) (__const char *) (a=
 rg))[0] - __s2[0]); if (__s1_len > 0 && __result =3D=3D 0) { __result =3D=
  (((__const unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (_=
 _s1_len > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned char=
  *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result =3D=
 =3D 0) __result =3D (((__const unsigned char *) (__const char *) (arg))[3=
 ] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("pic") && ((siz=
 e_t)(const void *)(("pic") + 1) - (size_t)(const void *)("pic") =3D=3D 1)=
  && (__s2_len =3D strlen ("pic"), __s2_len < 4) ? (__builtin_constant_p (=
 arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) =
 =3D=3D 1) ? (__extension__ ({ register int __result =3D (((__const unsign=
 ed char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__con=
 st char *)("pic"))[0]); if (__s2_len > 0 && __result =3D=3D 0) { __result=
  =3D (((__const unsigned char *) (__const char *) (arg))[1] - ((__const u=
 nsigned char *) (__const char *) ("pic"))[1]); if (__s2_len > 1 && __resu=
 lt =3D=3D 0) { __result =3D (((__const unsigned char *) (__const char *) =
 (arg))[2] - ((__const unsigned char *) (__const char *) ("pic"))[2]); if =
 (__s2_len > 2 && __result =3D=3D 0) __result =3D (((__const unsigned char=
  *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char=
  *) ("pic"))[3]); } } __result; })) : (__extension__ ({ __const unsigned =
 char *__s1 =3D (__const unsigned char *) (__const char *) (arg); register=
  int __result =3D __s1[0] - ((__const unsigned char *) (__const char *) (=
 "pic"))[0]; if (__s2_len > 0 && __result =3D=3D 0) { __result =3D (__s1[1=
 ] - ((__const unsigned char *) (__const char *) ("pic"))[1]); if (__s2_le=
 n > 1 && __result =3D=3D 0) { __result =3D (__s1[2] - ((__const unsigned =
 char *) (__const char *) ("pic"))[2]); if (__s2_len > 2 && __result =3D=3D=
  0) __result =3D (__s1[3] - ((__const unsigned char *) (__const char *) (=
 "pic"))[3]); } } __result; }))) : strcmp (arg, "pic")))); }) =3D=3D 0)
         {
           shlib =3D SHLIB_PIC;
           ppc_flags |=3D 0x00008000;
         }
       else
         return 0;
 
       break;
 
 
 
     case 'a':
       if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant=
 _p (arg) && __builtin_constant_p ("64") && (__s1_len =3D strlen (arg), __=
 s2_len =3D strlen ("64"), (!((size_t)(const void *)((arg) + 1) - (size_t)=
 (const void *)(arg) =3D=3D 1) || __s1_len >=3D 4) && (!((size_t)(const vo=
 id *)(("64") + 1) - (size_t)(const void *)("64") =3D=3D 1) || __s2_len >=3D=
  4)) ? memcmp ((__const char *) (arg), (__const char *) ("64"), (__s1_len=
  < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && =
 ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) =3D=3D 1=
 ) && (__s1_len =3D strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("=
 64") && ((size_t)(const void *)(("64") + 1) - (size_t)(const void *)("64"=
 ) =3D=3D 1) ? (__extension__ ({ register int __result =3D (((__const unsi=
 gned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__c=
 onst char *)("64"))[0]); if (__s1_len > 0 && __result =3D=3D 0) { __resul=
 t =3D (((__const unsigned char *) (__const char *) (arg))[1] - ((__const =
 unsigned char *) (__const char *) ("64"))[1]); if (__s1_len > 1 && __resu=
 lt =3D=3D 0) { __result =3D (((__const unsigned char *) (__const char *) =
 (arg))[2] - ((__const unsigned char *) (__const char *) ("64"))[2]); if (=
 __s1_len > 2 && __result =3D=3D 0) __result =3D (((__const unsigned char =
 *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char =
 *) ("64"))[3]); } } __result; })) : (__extension__ ({ __const unsigned ch=
 ar *__s2 =3D (__const unsigned char *) (__const char *) ("64"); register =
 int __result =3D (((__const unsigned char *) (__const char *) (arg))[0] -=
  __s2[0]); if (__s1_len > 0 && __result =3D=3D 0) { __result =3D (((__con=
 st unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len >=
  1 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__co=
 nst char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result =3D=3D 0) =
 __result =3D (((__const unsigned char *) (__const char *) (arg))[3] - __s=
 2[3]); } } __result; }))) : (__builtin_constant_p ("64") && ((size_t)(con=
 st void *)(("64") + 1) - (size_t)(const void *)("64") =3D=3D 1) && (__s2_=
 len =3D strlen ("64"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((s=
 ize_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) =3D=3D 1) ?=
  (__extension__ ({ register int __result =3D (((__const unsigned char *) =
 (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)(=
 "64"))[0]); if (__s2_len > 0 && __result =3D=3D 0) { __result =3D (((__co=
 nst unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char=
  *) (__const char *) ("64"))[1]); if (__s2_len > 1 && __result =3D=3D 0) =
 { __result =3D (((__const unsigned char *) (__const char *) (arg))[2] - (=
 (__const unsigned char *) (__const char *) ("64"))[2]); if (__s2_len > 2 =
 && __result =3D=3D 0) __result =3D (((__const unsigned char *) (__const c=
 har *) (arg))[3] - ((__const unsigned char *) (__const char *) ("64"))[3]=
 ); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 =3D =
 (__const unsigned char *) (__const char *) (arg); register int __result =3D=
  __s1[0] - ((__const unsigned char *) (__const char *) ("64"))[0]; if (__=
 s2_len > 0 && __result =3D=3D 0) { __result =3D (__s1[1] - ((__const unsi=
 gned char *) (__const char *) ("64"))[1]); if (__s2_len > 1 && __result =3D=
 =3D 0) { __result =3D (__s1[2] - ((__const unsigned char *) (__const char=
  *) ("64"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __result =3D (__s=
 1[3] - ((__const unsigned char *) (__const char *) ("64"))[3]); } } __res=
 ult; }))) : strcmp (arg, "64")))); }) =3D=3D 0)
         ppc_obj64 =3D 1;
       else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_con=
 stant_p (arg) && __builtin_constant_p ("32") && (__s1_len =3D strlen (arg=
 ), __s2_len =3D strlen ("32"), (!((size_t)(const void *)((arg) + 1) - (si=
 ze_t)(const void *)(arg) =3D=3D 1) || __s1_len >=3D 4) && (!((size_t)(con=
 st void *)(("32") + 1) - (size_t)(const void *)("32") =3D=3D 1) || __s2_l=
 en >=3D 4)) ? memcmp ((__const char *) (arg), (__const char *) ("32"), (_=
 _s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (a=
 rg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) =3D=
 =3D 1) && (__s1_len =3D strlen (arg), __s1_len < 4) ? (__builtin_constant=
 _p ("32") && ((size_t)(const void *)(("32") + 1) - (size_t)(const void *)=
 ("32") =3D=3D 1) ? (__extension__ ({ register int __result =3D (((__const=
  unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *)=
  (__const char *)("32"))[0]); if (__s1_len > 0 && __result =3D=3D 0) { __=
 result =3D (((__const unsigned char *) (__const char *) (arg))[1] - ((__c=
 onst unsigned char *) (__const char *) ("32"))[1]); if (__s1_len > 1 && _=
 _result =3D=3D 0) { __result =3D (((__const unsigned char *) (__const cha=
 r *) (arg))[2] - ((__const unsigned char *) (__const char *) ("32"))[2]);=
  if (__s1_len > 2 && __result =3D=3D 0) __result =3D (((__const unsigned =
 char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const =
 char *) ("32"))[3]); } } __result; })) : (__extension__ ({ __const unsign=
 ed char *__s2 =3D (__const unsigned char *) (__const char *) ("32"); regi=
 ster int __result =3D (((__const unsigned char *) (__const char *) (arg))=
 [0] - __s2[0]); if (__s1_len > 0 && __result =3D=3D 0) { __result =3D (((=
 __const unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_=
 len > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) =
 (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result =3D=3D=
  0) __result =3D (((__const unsigned char *) (__const char *) (arg))[3] -=
  __s2[3]); } } __result; }))) : (__builtin_constant_p ("32") && ((size_t)=
 (const void *)(("32") + 1) - (size_t)(const void *)("32") =3D=3D 1) && (_=
 _s2_len =3D strlen ("32"), __s2_len < 4) ? (__builtin_constant_p (arg) &&=
  ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) =3D=3D =
 1) ? (__extension__ ({ register int __result =3D (((__const unsigned char=
  *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char=
  *)("32"))[0]); if (__s2_len > 0 && __result =3D=3D 0) { __result =3D (((=
 __const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned =
 char *) (__const char *) ("32"))[1]); if (__s2_len > 1 && __result =3D=3D=
  0) { __result =3D (((__const unsigned char *) (__const char *) (arg))[2]=
  - ((__const unsigned char *) (__const char *) ("32"))[2]); if (__s2_len =
 > 2 && __result =3D=3D 0) __result =3D (((__const unsigned char *) (__con=
 st char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("32")=
 )[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 =
 =3D (__const unsigned char *) (__const char *) (arg); register int __resu=
 lt =3D __s1[0] - ((__const unsigned char *) (__const char *) ("32"))[0]; =
 if (__s2_len > 0 && __result =3D=3D 0) { __result =3D (__s1[1] - ((__cons=
 t unsigned char *) (__const char *) ("32"))[1]); if (__s2_len > 1 && __re=
 sult =3D=3D 0) { __result =3D (__s1[2] - ((__const unsigned char *) (__co=
 nst char *) ("32"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __result =
 =3D (__s1[3] - ((__const unsigned char *) (__const char *) ("32"))[3]); }=
  } __result; }))) : strcmp (arg, "32")))); }) =3D=3D 0)
         ppc_obj64 =3D 0;
       else
         return 0;
       break;
 
     case 'm':
 
 
       if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant=
 _p (arg) && __builtin_constant_p ("pwrx") && (__s1_len =3D strlen (arg), =
 __s2_len =3D strlen ("pwrx"), (!((size_t)(const void *)((arg) + 1) - (siz=
 e_t)(const void *)(arg) =3D=3D 1) || __s1_len >=3D 4) && (!((size_t)(cons=
 t void *)(("pwrx") + 1) - (size_t)(const void *)("pwrx") =3D=3D 1) || __s=
 2_len >=3D 4)) ? memcmp ((__const char *) (arg), (__const char *) ("pwrx"=
 ), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant=
 _p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(a=
 rg) =3D=3D 1) && (__s1_len =3D strlen (arg), __s1_len < 4) ? (__builtin_c=
 onstant_p ("pwrx") && ((size_t)(const void *)(("pwrx") + 1) - (size_t)(co=
 nst void *)("pwrx") =3D=3D 1) ? (__extension__ ({ register int __result =3D=
  (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsig=
 ned char *) (__const char *)("pwrx"))[0]); if (__s1_len > 0 && __result =3D=
 =3D 0) { __result =3D (((__const unsigned char *) (__const char *) (arg))=
 [1] - ((__const unsigned char *) (__const char *) ("pwrx"))[1]); if (__s1=
 _len > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned char *)=
  (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *)=
  ("pwrx"))[2]); if (__s1_len > 2 && __result =3D=3D 0) __result =3D (((__=
 const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned ch=
 ar *) (__const char *) ("pwrx"))[3]); } } __result; })) : (__extension__ =
 ({ __const unsigned char *__s2 =3D (__const unsigned char *) (__const cha=
 r *) ("pwrx"); register int __result =3D (((__const unsigned char *) (__c=
 onst char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result =3D=3D 0)=
  { __result =3D (((__const unsigned char *) (__const char *) (arg))[1] - =
 __s2[1]); if (__s1_len > 1 && __result =3D=3D 0) { __result =3D (((__cons=
 t unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > =
 2 && __result =3D=3D 0) __result =3D (((__const unsigned char *) (__const=
  char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p=
  ("pwrx") && ((size_t)(const void *)(("pwrx") + 1) - (size_t)(const void =
 *)("pwrx") =3D=3D 1) && (__s2_len =3D strlen ("pwrx"), __s2_len < 4) ? (_=
 _builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t=
 )(const void *)(arg) =3D=3D 1) ? (__extension__ ({ register int __result =
 =3D (((__const unsigned char *) (__const char *) (arg))[0] - ((__const un=
 signed char *) (__const char *)("pwrx"))[0]); if (__s2_len > 0 && __resul=
 t =3D=3D 0) { __result =3D (((__const unsigned char *) (__const char *) (=
 arg))[1] - ((__const unsigned char *) (__const char *) ("pwrx"))[1]); if =
 (__s2_len > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned ch=
 ar *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const ch=
 ar *) ("pwrx"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __result =3D =
 (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsign=
 ed char *) (__const char *) ("pwrx"))[3]); } } __result; })) : (__extensi=
 on__ ({ __const unsigned char *__s1 =3D (__const unsigned char *) (__cons=
 t char *) (arg); register int __result =3D __s1[0] - ((__const unsigned c=
 har *) (__const char *) ("pwrx"))[0]; if (__s2_len > 0 && __result =3D=3D=
  0) { __result =3D (__s1[1] - ((__const unsigned char *) (__const char *)=
  ("pwrx"))[1]); if (__s2_len > 1 && __result =3D=3D 0) { __result =3D (__=
 s1[2] - ((__const unsigned char *) (__const char *) ("pwrx"))[2]); if (__=
 s2_len > 2 && __result =3D=3D 0) __result =3D (__s1[3] - ((__const unsign=
 ed char *) (__const char *) ("pwrx"))[3]); } } __result; }))) : strcmp (a=
 rg, "pwrx")))); }) =3D=3D 0 || __extension__ ({ size_t __s1_len, __s2_len=
 ; (__builtin_constant_p (arg) && __builtin_constant_p ("pwr2") && (__s1_l=
 en =3D strlen (arg), __s2_len =3D strlen ("pwr2"), (!((size_t)(const void=
  *)((arg) + 1) - (size_t)(const void *)(arg) =3D=3D 1) || __s1_len >=3D 4=
 ) && (!((size_t)(const void *)(("pwr2") + 1) - (size_t)(const void *)("pw=
 r2") =3D=3D 1) || __s2_len >=3D 4)) ? memcmp ((__const char *) (arg), (__=
 const char *) ("pwr2"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) =
 : (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (si=
 ze_t)(const void *)(arg) =3D=3D 1) && (__s1_len =3D strlen (arg), __s1_le=
 n < 4) ? (__builtin_constant_p ("pwr2") && ((size_t)(const void *)(("pwr2=
 ") + 1) - (size_t)(const void *)("pwr2") =3D=3D 1) ? (__extension__ ({ re=
 gister int __result =3D (((__const unsigned char *) (__const char *) (arg=
 ))[0] - ((__const unsigned char *) (__const char *)("pwr2"))[0]); if (__s=
 1_len > 0 && __result =3D=3D 0) { __result =3D (((__const unsigned char *=
 ) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *=
 ) ("pwr2"))[1]); if (__s1_len > 1 && __result =3D=3D 0) { __result =3D ((=
 (__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned=
  char *) (__const char *) ("pwr2"))[2]); if (__s1_len > 2 && __result =3D=
 =3D 0) __result =3D (((__const unsigned char *) (__const char *) (arg))[3=
 ] - ((__const unsigned char *) (__const char *) ("pwr2"))[3]); } } __resu=
 lt; })) : (__extension__ ({ __const unsigned char *__s2 =3D (__const unsi=
 gned char *) (__const char *) ("pwr2"); register int __result =3D (((__co=
 nst unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len =
 > 0 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__c=
 onst char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result =3D=3D 0)=
  { __result =3D (((__const unsigned char *) (__const char *) (arg))[2] - =
 __s2[2]); if (__s1_len > 2 && __result =3D=3D 0) __result =3D (((__const =
 unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))=
 ) : (__builtin_constant_p ("pwr2") && ((size_t)(const void *)(("pwr2") + =
 1) - (size_t)(const void *)("pwr2") =3D=3D 1) && (__s2_len =3D strlen ("p=
 wr2"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const voi=
 d *)((arg) + 1) - (size_t)(const void *)(arg) =3D=3D 1) ? (__extension__ =
 ({ register int __result =3D (((__const unsigned char *) (__const char *)=
  (arg))[0] - ((__const unsigned char *) (__const char *)("pwr2"))[0]); if=
  (__s2_len > 0 && __result =3D=3D 0) { __result =3D (((__const unsigned c=
 har *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const c=
 har *) ("pwr2"))[1]); if (__s2_len > 1 && __result =3D=3D 0) { __result =3D=
  (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsig=
 ned char *) (__const char *) ("pwr2"))[2]); if (__s2_len > 2 && __result =
 =3D=3D 0) __result =3D (((__const unsigned char *) (__const char *) (arg)=
 )[3] - ((__const unsigned char *) (__const char *) ("pwr2"))[3]); } } __r=
 esult; })) : (__extension__ ({ __const unsigned char *__s1 =3D (__const u=
 nsigned char *) (__const char *) (arg); register int __result =3D __s1[0]=
  - ((__const unsigned char *) (__const char *) ("pwr2"))[0]; if (__s2_len=
  > 0 && __result =3D=3D 0) { __result =3D (__s1[1] - ((__const unsigned c=
 har *) (__const char *) ("pwr2"))[1]); if (__s2_len > 1 && __result =3D=3D=
  0) { __result =3D (__s1[2] - ((__const unsigned char *) (__const char *)=
  ("pwr2"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __result =3D (__s1=
 [3] - ((__const unsigned char *) (__const char *) ("pwr2"))[3]); } } __re=
 sult; }))) : strcmp (arg, "pwr2")))); }) =3D=3D 0)
         ppc_cpu =3D (02) | (04) | (010);
 
       else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_con=
 stant_p (arg) && __builtin_constant_p ("pwr") && (__s1_len =3D strlen (ar=
 g), __s2_len =3D strlen ("pwr"), (!((size_t)(const void *)((arg) + 1) - (=
 size_t)(const void *)(arg) =3D=3D 1) || __s1_len >=3D 4) && (!((size_t)(c=
 onst void *)(("pwr") + 1) - (size_t)(const void *)("pwr") =3D=3D 1) || __=
 s2_len >=3D 4)) ? memcmp ((__const char *) (arg), (__const char *) ("pwr"=
 ), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant=
 _p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(a=
 rg) =3D=3D 1) && (__s1_len =3D strlen (arg), __s1_len < 4) ? (__builtin_c=
 onstant_p ("pwr") && ((size_t)(const void *)(("pwr") + 1) - (size_t)(cons=
 t void *)("pwr") =3D=3D 1) ? (__extension__ ({ register int __result =3D =
 (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsign=
 ed char *) (__const char *)("pwr"))[0]); if (__s1_len > 0 && __result =3D=
 =3D 0) { __result =3D (((__const unsigned char *) (__const char *) (arg))=
 [1] - ((__const unsigned char *) (__const char *) ("pwr"))[1]); if (__s1_=
 len > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) =
 (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) =
 ("pwr"))[2]); if (__s1_len > 2 && __result =3D=3D 0) __result =3D (((__co=
 nst unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char=
  *) (__const char *) ("pwr"))[3]); } } __result; })) : (__extension__ ({ =
 __const unsigned char *__s2 =3D (__const unsigned char *) (__const char *=
 ) ("pwr"); register int __result =3D (((__const unsigned char *) (__const=
  char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result =3D=3D 0) { _=
 _result =3D (((__const unsigned char *) (__const char *) (arg))[1] - __s2=
 [1]); if (__s1_len > 1 && __result =3D=3D 0) { __result =3D (((__const un=
 signed char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 &&=
  __result =3D=3D 0) __result =3D (((__const unsigned char *) (__const cha=
 r *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("p=
 wr") && ((size_t)(const void *)(("pwr") + 1) - (size_t)(const void *)("pw=
 r") =3D=3D 1) && (__s2_len =3D strlen ("pwr"), __s2_len < 4) ? (__builtin=
 _constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const =
 void *)(arg) =3D=3D 1) ? (__extension__ ({ register int __result =3D (((_=
 _const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned c=
 har *) (__const char *)("pwr"))[0]); if (__s2_len > 0 && __result =3D=3D =
 0) { __result =3D (((__const unsigned char *) (__const char *) (arg))[1] =
 - ((__const unsigned char *) (__const char *) ("pwr"))[1]); if (__s2_len =
 > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__c=
 onst char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("pw=
 r"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __result =3D (((__const =
 unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) =
 (__const char *) ("pwr"))[3]); } } __result; })) : (__extension__ ({ __co=
 nst unsigned char *__s1 =3D (__const unsigned char *) (__const char *) (a=
 rg); register int __result =3D __s1[0] - ((__const unsigned char *) (__co=
 nst char *) ("pwr"))[0]; if (__s2_len > 0 && __result =3D=3D 0) { __resul=
 t =3D (__s1[1] - ((__const unsigned char *) (__const char *) ("pwr"))[1])=
 ; if (__s2_len > 1 && __result =3D=3D 0) { __result =3D (__s1[2] - ((__co=
 nst unsigned char *) (__const char *) ("pwr"))[2]); if (__s2_len > 2 && _=
 _result =3D=3D 0) __result =3D (__s1[3] - ((__const unsigned char *) (__c=
 onst char *) ("pwr"))[3]); } } __result; }))) : strcmp (arg, "pwr")))); }=
 ) =3D=3D 0)
         ppc_cpu =3D (02) | (010);
 
 
       else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_con=
 stant_p (arg) && __builtin_constant_p ("601") && (__s1_len =3D strlen (ar=
 g), __s2_len =3D strlen ("601"), (!((size_t)(const void *)((arg) + 1) - (=
 size_t)(const void *)(arg) =3D=3D 1) || __s1_len >=3D 4) && (!((size_t)(c=
 onst void *)(("601") + 1) - (size_t)(const void *)("601") =3D=3D 1) || __=
 s2_len >=3D 4)) ? memcmp ((__const char *) (arg), (__const char *) ("601"=
 ), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant=
 _p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(a=
 rg) =3D=3D 1) && (__s1_len =3D strlen (arg), __s1_len < 4) ? (__builtin_c=
 onstant_p ("601") && ((size_t)(const void *)(("601") + 1) - (size_t)(cons=
 t void *)("601") =3D=3D 1) ? (__extension__ ({ register int __result =3D =
 (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsign=
 ed char *) (__const char *)("601"))[0]); if (__s1_len > 0 && __result =3D=
 =3D 0) { __result =3D (((__const unsigned char *) (__const char *) (arg))=
 [1] - ((__const unsigned char *) (__const char *) ("601"))[1]); if (__s1_=
 len > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) =
 (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) =
 ("601"))[2]); if (__s1_len > 2 && __result =3D=3D 0) __result =3D (((__co=
 nst unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char=
  *) (__const char *) ("601"))[3]); } } __result; })) : (__extension__ ({ =
 __const unsigned char *__s2 =3D (__const unsigned char *) (__const char *=
 ) ("601"); register int __result =3D (((__const unsigned char *) (__const=
  char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result =3D=3D 0) { _=
 _result =3D (((__const unsigned char *) (__const char *) (arg))[1] - __s2=
 [1]); if (__s1_len > 1 && __result =3D=3D 0) { __result =3D (((__const un=
 signed char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 &&=
  __result =3D=3D 0) __result =3D (((__const unsigned char *) (__const cha=
 r *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("6=
 01") && ((size_t)(const void *)(("601") + 1) - (size_t)(const void *)("60=
 1") =3D=3D 1) && (__s2_len =3D strlen ("601"), __s2_len < 4) ? (__builtin=
 _constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const =
 void *)(arg) =3D=3D 1) ? (__extension__ ({ register int __result =3D (((_=
 _const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned c=
 har *) (__const char *)("601"))[0]); if (__s2_len > 0 && __result =3D=3D =
 0) { __result =3D (((__const unsigned char *) (__const char *) (arg))[1] =
 - ((__const unsigned char *) (__const char *) ("601"))[1]); if (__s2_len =
 > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__c=
 onst char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("60=
 1"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __result =3D (((__const =
 unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) =
 (__const char *) ("601"))[3]); } } __result; })) : (__extension__ ({ __co=
 nst unsigned char *__s1 =3D (__const unsigned char *) (__const char *) (a=
 rg); register int __result =3D __s1[0] - ((__const unsigned char *) (__co=
 nst char *) ("601"))[0]; if (__s2_len > 0 && __result =3D=3D 0) { __resul=
 t =3D (__s1[1] - ((__const unsigned char *) (__const char *) ("601"))[1])=
 ; if (__s2_len > 1 && __result =3D=3D 0) { __result =3D (__s1[2] - ((__co=
 nst unsigned char *) (__const char *) ("601"))[2]); if (__s2_len > 2 && _=
 _result =3D=3D 0) __result =3D (__s1[3] - ((__const unsigned char *) (__c=
 onst char *) ("601"))[3]); } } __result; }))) : strcmp (arg, "601")))); }=
 ) =3D=3D 0)
         ppc_cpu =3D (01) | (040) | (010);
 
 
       else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_con=
 stant_p (arg) && __builtin_constant_p ("ppc") && (__s1_len =3D strlen (ar=
 g), __s2_len =3D strlen ("ppc"), (!((size_t)(const void *)((arg) + 1) - (=
 size_t)(const void *)(arg) =3D=3D 1) || __s1_len >=3D 4) && (!((size_t)(c=
 onst void *)(("ppc") + 1) - (size_t)(const void *)("ppc") =3D=3D 1) || __=
 s2_len >=3D 4)) ? memcmp ((__const char *) (arg), (__const char *) ("ppc"=
 ), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant=
 _p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(a=
 rg) =3D=3D 1) && (__s1_len =3D strlen (arg), __s1_len < 4) ? (__builtin_c=
 onstant_p ("ppc") && ((size_t)(const void *)(("ppc") + 1) - (size_t)(cons=
 t void *)("ppc") =3D=3D 1) ? (__extension__ ({ register int __result =3D =
 (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsign=
 ed char *) (__const char *)("ppc"))[0]); if (__s1_len > 0 && __result =3D=
 =3D 0) { __result =3D (((__const unsigned char *) (__const char *) (arg))=
 [1] - ((__const unsigned char *) (__const char *) ("ppc"))[1]); if (__s1_=
 len > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) =
 (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) =
 ("ppc"))[2]); if (__s1_len > 2 && __result =3D=3D 0) __result =3D (((__co=
 nst unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char=
  *) (__const char *) ("ppc"))[3]); } } __result; })) : (__extension__ ({ =
 __const unsigned char *__s2 =3D (__const unsigned char *) (__const char *=
 ) ("ppc"); register int __result =3D (((__const unsigned char *) (__const=
  char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result =3D=3D 0) { _=
 _result =3D (((__const unsigned char *) (__const char *) (arg))[1] - __s2=
 [1]); if (__s1_len > 1 && __result =3D=3D 0) { __result =3D (((__const un=
 signed char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 &&=
  __result =3D=3D 0) __result =3D (((__const unsigned char *) (__const cha=
 r *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("p=
 pc") && ((size_t)(const void *)(("ppc") + 1) - (size_t)(const void *)("pp=
 c") =3D=3D 1) && (__s2_len =3D strlen ("ppc"), __s2_len < 4) ? (__builtin=
 _constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const =
 void *)(arg) =3D=3D 1) ? (__extension__ ({ register int __result =3D (((_=
 _const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned c=
 har *) (__const char *)("ppc"))[0]); if (__s2_len > 0 && __result =3D=3D =
 0) { __result =3D (((__const unsigned char *) (__const char *) (arg))[1] =
 - ((__const unsigned char *) (__const char *) ("ppc"))[1]); if (__s2_len =
 > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__c=
 onst char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("pp=
 c"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __result =3D (((__const =
 unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) =
 (__const char *) ("ppc"))[3]); } } __result; })) : (__extension__ ({ __co=
 nst unsigned char *__s1 =3D (__const unsigned char *) (__const char *) (a=
 rg); register int __result =3D __s1[0] - ((__const unsigned char *) (__co=
 nst char *) ("ppc"))[0]; if (__s2_len > 0 && __result =3D=3D 0) { __resul=
 t =3D (__s1[1] - ((__const unsigned char *) (__const char *) ("ppc"))[1])=
 ; if (__s2_len > 1 && __result =3D=3D 0) { __result =3D (__s1[2] - ((__co=
 nst unsigned char *) (__const char *) ("ppc"))[2]); if (__s2_len > 2 && _=
 _result =3D=3D 0) __result =3D (__s1[3] - ((__const unsigned char *) (__c=
 onst char *) ("ppc"))[3]); } } __result; }))) : strcmp (arg, "ppc")))); }=
 ) =3D=3D 0
                || __extension__ ({ size_t __s1_len, __s2_len; (__builtin_=
 constant_p (arg) && __builtin_constant_p ("ppc32") && (__s1_len =3D strle=
 n (arg), __s2_len =3D strlen ("ppc32"), (!((size_t)(const void *)((arg) +=
  1) - (size_t)(const void *)(arg) =3D=3D 1) || __s1_len >=3D 4) && (!((si=
 ze_t)(const void *)(("ppc32") + 1) - (size_t)(const void *)("ppc32") =3D=3D=
  1) || __s2_len >=3D 4)) ? memcmp ((__const char *) (arg), (__const char =
 *) ("ppc32"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__built=
 in_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(cons=
 t void *)(arg) =3D=3D 1) && (__s1_len =3D strlen (arg), __s1_len < 4) ? (=
 __builtin_constant_p ("ppc32") && ((size_t)(const void *)(("ppc32") + 1) =
 - (size_t)(const void *)("ppc32") =3D=3D 1) ? (__extension__ ({ register =
 int __result =3D (((__const unsigned char *) (__const char *) (arg))[0] -=
  ((__const unsigned char *) (__const char *)("ppc32"))[0]); if (__s1_len =
 > 0 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__c=
 onst char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("pp=
 c32"))[1]); if (__s1_len > 1 && __result =3D=3D 0) { __result =3D (((__co=
 nst unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char=
  *) (__const char *) ("ppc32"))[2]); if (__s1_len > 2 && __result =3D=3D =
 0) __result =3D (((__const unsigned char *) (__const char *) (arg))[3] - =
 ((__const unsigned char *) (__const char *) ("ppc32"))[3]); } } __result;=
  })) : (__extension__ ({ __const unsigned char *__s2 =3D (__const unsigne=
 d char *) (__const char *) ("ppc32"); register int __result =3D (((__cons=
 t unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > =
 0 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__con=
 st char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result =3D=3D 0) {=
  __result =3D (((__const unsigned char *) (__const char *) (arg))[2] - __=
 s2[2]); if (__s1_len > 2 && __result =3D=3D 0) __result =3D (((__const un=
 signed char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) =
 : (__builtin_constant_p ("ppc32") && ((size_t)(const void *)(("ppc32") + =
 1) - (size_t)(const void *)("ppc32") =3D=3D 1) && (__s2_len =3D strlen ("=
 ppc32"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const v=
 oid *)((arg) + 1) - (size_t)(const void *)(arg) =3D=3D 1) ? (__extension_=
 _ ({ register int __result =3D (((__const unsigned char *) (__const char =
 *) (arg))[0] - ((__const unsigned char *) (__const char *)("ppc32"))[0]);=
  if (__s2_len > 0 && __result =3D=3D 0) { __result =3D (((__const unsigne=
 d char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__cons=
 t char *) ("ppc32"))[1]); if (__s2_len > 1 && __result =3D=3D 0) { __resu=
 lt =3D (((__const unsigned char *) (__const char *) (arg))[2] - ((__const=
  unsigned char *) (__const char *) ("ppc32"))[2]); if (__s2_len > 2 && __=
 result =3D=3D 0) __result =3D (((__const unsigned char *) (__const char *=
 ) (arg))[3] - ((__const unsigned char *) (__const char *) ("ppc32"))[3]);=
  } } __result; })) : (__extension__ ({ __const unsigned char *__s1 =3D (_=
 _const unsigned char *) (__const char *) (arg); register int __result =3D=
  __s1[0] - ((__const unsigned char *) (__const char *) ("ppc32"))[0]; if =
 (__s2_len > 0 && __result =3D=3D 0) { __result =3D (__s1[1] - ((__const u=
 nsigned char *) (__const char *) ("ppc32"))[1]); if (__s2_len > 1 && __re=
 sult =3D=3D 0) { __result =3D (__s1[2] - ((__const unsigned char *) (__co=
 nst char *) ("ppc32"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __resu=
 lt =3D (__s1[3] - ((__const unsigned char *) (__const char *) ("ppc32"))[=
 3]); } } __result; }))) : strcmp (arg, "ppc32")))); }) =3D=3D 0
                || __extension__ ({ size_t __s1_len, __s2_len; (__builtin_=
 constant_p (arg) && __builtin_constant_p ("603") && (__s1_len =3D strlen =
 (arg), __s2_len =3D strlen ("603"), (!((size_t)(const void *)((arg) + 1) =
 - (size_t)(const void *)(arg) =3D=3D 1) || __s1_len >=3D 4) && (!((size_t=
 )(const void *)(("603") + 1) - (size_t)(const void *)("603") =3D=3D 1) ||=
  __s2_len >=3D 4)) ? memcmp ((__const char *) (arg), (__const char *) ("6=
 03"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_const=
 ant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *=
 )(arg) =3D=3D 1) && (__s1_len =3D strlen (arg), __s1_len < 4) ? (__builti=
 n_constant_p ("603") && ((size_t)(const void *)(("603") + 1) - (size_t)(c=
 onst void *)("603") =3D=3D 1) ? (__extension__ ({ register int __result =3D=
  (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsig=
 ned char *) (__const char *)("603"))[0]); if (__s1_len > 0 && __result =3D=
 =3D 0) { __result =3D (((__const unsigned char *) (__const char *) (arg))=
 [1] - ((__const unsigned char *) (__const char *) ("603"))[1]); if (__s1_=
 len > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) =
 (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) =
 ("603"))[2]); if (__s1_len > 2 && __result =3D=3D 0) __result =3D (((__co=
 nst unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char=
  *) (__const char *) ("603"))[3]); } } __result; })) : (__extension__ ({ =
 __const unsigned char *__s2 =3D (__const unsigned char *) (__const char *=
 ) ("603"); register int __result =3D (((__const unsigned char *) (__const=
  char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result =3D=3D 0) { _=
 _result =3D (((__const unsigned char *) (__const char *) (arg))[1] - __s2=
 [1]); if (__s1_len > 1 && __result =3D=3D 0) { __result =3D (((__const un=
 signed char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 &&=
  __result =3D=3D 0) __result =3D (((__const unsigned char *) (__const cha=
 r *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("6=
 03") && ((size_t)(const void *)(("603") + 1) - (size_t)(const void *)("60=
 3") =3D=3D 1) && (__s2_len =3D strlen ("603"), __s2_len < 4) ? (__builtin=
 _constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const =
 void *)(arg) =3D=3D 1) ? (__extension__ ({ register int __result =3D (((_=
 _const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned c=
 har *) (__const char *)("603"))[0]); if (__s2_len > 0 && __result =3D=3D =
 0) { __result =3D (((__const unsigned char *) (__const char *) (arg))[1] =
 - ((__const unsigned char *) (__const char *) ("603"))[1]); if (__s2_len =
 > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__c=
 onst char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("60=
 3"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __result =3D (((__const =
 unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) =
 (__const char *) ("603"))[3]); } } __result; })) : (__extension__ ({ __co=
 nst unsigned char *__s1 =3D (__const unsigned char *) (__const char *) (a=
 rg); register int __result =3D __s1[0] - ((__const unsigned char *) (__co=
 nst char *) ("603"))[0]; if (__s2_len > 0 && __result =3D=3D 0) { __resul=
 t =3D (__s1[1] - ((__const unsigned char *) (__const char *) ("603"))[1])=
 ; if (__s2_len > 1 && __result =3D=3D 0) { __result =3D (__s1[2] - ((__co=
 nst unsigned char *) (__const char *) ("603"))[2]); if (__s2_len > 2 && _=
 _result =3D=3D 0) __result =3D (__s1[3] - ((__const unsigned char *) (__c=
 onst char *) ("603"))[3]); } } __result; }))) : strcmp (arg, "603")))); }=
 ) =3D=3D 0
                || __extension__ ({ size_t __s1_len, __s2_len; (__builtin_=
 constant_p (arg) && __builtin_constant_p ("604") && (__s1_len =3D strlen =
 (arg), __s2_len =3D strlen ("604"), (!((size_t)(const void *)((arg) + 1) =
 - (size_t)(const void *)(arg) =3D=3D 1) || __s1_len >=3D 4) && (!((size_t=
 )(const void *)(("604") + 1) - (size_t)(const void *)("604") =3D=3D 1) ||=
  __s2_len >=3D 4)) ? memcmp ((__const char *) (arg), (__const char *) ("6=
 04"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_const=
 ant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *=
 )(arg) =3D=3D 1) && (__s1_len =3D strlen (arg), __s1_len < 4) ? (__builti=
 n_constant_p ("604") && ((size_t)(const void *)(("604") + 1) - (size_t)(c=
 onst void *)("604") =3D=3D 1) ? (__extension__ ({ register int __result =3D=
  (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsig=
 ned char *) (__const char *)("604"))[0]); if (__s1_len > 0 && __result =3D=
 =3D 0) { __result =3D (((__const unsigned char *) (__const char *) (arg))=
 [1] - ((__const unsigned char *) (__const char *) ("604"))[1]); if (__s1_=
 len > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) =
 (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) =
 ("604"))[2]); if (__s1_len > 2 && __result =3D=3D 0) __result =3D (((__co=
 nst unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char=
  *) (__const char *) ("604"))[3]); } } __result; })) : (__extension__ ({ =
 __const unsigned char *__s2 =3D (__const unsigned char *) (__const char *=
 ) ("604"); register int __result =3D (((__const unsigned char *) (__const=
  char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result =3D=3D 0) { _=
 _result =3D (((__const unsigned char *) (__const char *) (arg))[1] - __s2=
 [1]); if (__s1_len > 1 && __result =3D=3D 0) { __result =3D (((__const un=
 signed char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 &&=
  __result =3D=3D 0) __result =3D (((__const unsigned char *) (__const cha=
 r *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("6=
 04") && ((size_t)(const void *)(("604") + 1) - (size_t)(const void *)("60=
 4") =3D=3D 1) && (__s2_len =3D strlen ("604"), __s2_len < 4) ? (__builtin=
 _constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const =
 void *)(arg) =3D=3D 1) ? (__extension__ ({ register int __result =3D (((_=
 _const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned c=
 har *) (__const char *)("604"))[0]); if (__s2_len > 0 && __result =3D=3D =
 0) { __result =3D (((__const unsigned char *) (__const char *) (arg))[1] =
 - ((__const unsigned char *) (__const char *) ("604"))[1]); if (__s2_len =
 > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__c=
 onst char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("60=
 4"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __result =3D (((__const =
 unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) =
 (__const char *) ("604"))[3]); } } __result; })) : (__extension__ ({ __co=
 nst unsigned char *__s1 =3D (__const unsigned char *) (__const char *) (a=
 rg); register int __result =3D __s1[0] - ((__const unsigned char *) (__co=
 nst char *) ("604"))[0]; if (__s2_len > 0 && __result =3D=3D 0) { __resul=
 t =3D (__s1[1] - ((__const unsigned char *) (__const char *) ("604"))[1])=
 ; if (__s2_len > 1 && __result =3D=3D 0) { __result =3D (__s1[2] - ((__co=
 nst unsigned char *) (__const char *) ("604"))[2]); if (__s2_len > 2 && _=
 _result =3D=3D 0) __result =3D (__s1[3] - ((__const unsigned char *) (__c=
 onst char *) ("604"))[3]); } } __result; }))) : strcmp (arg, "604")))); }=
 ) =3D=3D 0)
         ppc_cpu =3D (01) | (010);
 
       else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_con=
 stant_p (arg) && __builtin_constant_p ("403") && (__s1_len =3D strlen (ar=
 g), __s2_len =3D strlen ("403"), (!((size_t)(const void *)((arg) + 1) - (=
 size_t)(const void *)(arg) =3D=3D 1) || __s1_len >=3D 4) && (!((size_t)(c=
 onst void *)(("403") + 1) - (size_t)(const void *)("403") =3D=3D 1) || __=
 s2_len >=3D 4)) ? memcmp ((__const char *) (arg), (__const char *) ("403"=
 ), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant=
 _p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(a=
 rg) =3D=3D 1) && (__s1_len =3D strlen (arg), __s1_len < 4) ? (__builtin_c=
 onstant_p ("403") && ((size_t)(const void *)(("403") + 1) - (size_t)(cons=
 t void *)("403") =3D=3D 1) ? (__extension__ ({ register int __result =3D =
 (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsign=
 ed char *) (__const char *)("403"))[0]); if (__s1_len > 0 && __result =3D=
 =3D 0) { __result =3D (((__const unsigned char *) (__const char *) (arg))=
 [1] - ((__const unsigned char *) (__const char *) ("403"))[1]); if (__s1_=
 len > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) =
 (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) =
 ("403"))[2]); if (__s1_len > 2 && __result =3D=3D 0) __result =3D (((__co=
 nst unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char=
  *) (__const char *) ("403"))[3]); } } __result; })) : (__extension__ ({ =
 __const unsigned char *__s2 =3D (__const unsigned char *) (__const char *=
 ) ("403"); register int __result =3D (((__const unsigned char *) (__const=
  char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result =3D=3D 0) { _=
 _result =3D (((__const unsigned char *) (__const char *) (arg))[1] - __s2=
 [1]); if (__s1_len > 1 && __result =3D=3D 0) { __result =3D (((__const un=
 signed char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 &&=
  __result =3D=3D 0) __result =3D (((__const unsigned char *) (__const cha=
 r *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("4=
 03") && ((size_t)(const void *)(("403") + 1) - (size_t)(const void *)("40=
 3") =3D=3D 1) && (__s2_len =3D strlen ("403"), __s2_len < 4) ? (__builtin=
 _constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const =
 void *)(arg) =3D=3D 1) ? (__extension__ ({ register int __result =3D (((_=
 _const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned c=
 har *) (__const char *)("403"))[0]); if (__s2_len > 0 && __result =3D=3D =
 0) { __result =3D (((__const unsigned char *) (__const char *) (arg))[1] =
 - ((__const unsigned char *) (__const char *) ("403"))[1]); if (__s2_len =
 > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__c=
 onst char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("40=
 3"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __result =3D (((__const =
 unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) =
 (__const char *) ("403"))[3]); } } __result; })) : (__extension__ ({ __co=
 nst unsigned char *__s1 =3D (__const unsigned char *) (__const char *) (a=
 rg); register int __result =3D __s1[0] - ((__const unsigned char *) (__co=
 nst char *) ("403"))[0]; if (__s2_len > 0 && __result =3D=3D 0) { __resul=
 t =3D (__s1[1] - ((__const unsigned char *) (__const char *) ("403"))[1])=
 ; if (__s2_len > 1 && __result =3D=3D 0) { __result =3D (__s1[2] - ((__co=
 nst unsigned char *) (__const char *) ("403"))[2]); if (__s2_len > 2 && _=
 _result =3D=3D 0) __result =3D (__s1[3] - ((__const unsigned char *) (__c=
 onst char *) ("403"))[3]); } } __result; }))) : strcmp (arg, "403")))); }=
 ) =3D=3D 0
                || __extension__ ({ size_t __s1_len, __s2_len; (__builtin_=
 constant_p (arg) && __builtin_constant_p ("405") && (__s1_len =3D strlen =
 (arg), __s2_len =3D strlen ("405"), (!((size_t)(const void *)((arg) + 1) =
 - (size_t)(const void *)(arg) =3D=3D 1) || __s1_len >=3D 4) && (!((size_t=
 )(const void *)(("405") + 1) - (size_t)(const void *)("405") =3D=3D 1) ||=
  __s2_len >=3D 4)) ? memcmp ((__const char *) (arg), (__const char *) ("4=
 05"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_const=
 ant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *=
 )(arg) =3D=3D 1) && (__s1_len =3D strlen (arg), __s1_len < 4) ? (__builti=
 n_constant_p ("405") && ((size_t)(const void *)(("405") + 1) - (size_t)(c=
 onst void *)("405") =3D=3D 1) ? (__extension__ ({ register int __result =3D=
  (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsig=
 ned char *) (__const char *)("405"))[0]); if (__s1_len > 0 && __result =3D=
 =3D 0) { __result =3D (((__const unsigned char *) (__const char *) (arg))=
 [1] - ((__const unsigned char *) (__const char *) ("405"))[1]); if (__s1_=
 len > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) =
 (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) =
 ("405"))[2]); if (__s1_len > 2 && __result =3D=3D 0) __result =3D (((__co=
 nst unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char=
  *) (__const char *) ("405"))[3]); } } __result; })) : (__extension__ ({ =
 __const unsigned char *__s2 =3D (__const unsigned char *) (__const char *=
 ) ("405"); register int __result =3D (((__const unsigned char *) (__const=
  char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result =3D=3D 0) { _=
 _result =3D (((__const unsigned char *) (__const char *) (arg))[1] - __s2=
 [1]); if (__s1_len > 1 && __result =3D=3D 0) { __result =3D (((__const un=
 signed char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 &&=
  __result =3D=3D 0) __result =3D (((__const unsigned char *) (__const cha=
 r *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("4=
 05") && ((size_t)(const void *)(("405") + 1) - (size_t)(const void *)("40=
 5") =3D=3D 1) && (__s2_len =3D strlen ("405"), __s2_len < 4) ? (__builtin=
 _constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const =
 void *)(arg) =3D=3D 1) ? (__extension__ ({ register int __result =3D (((_=
 _const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned c=
 har *) (__const char *)("405"))[0]); if (__s2_len > 0 && __result =3D=3D =
 0) { __result =3D (((__const unsigned char *) (__const char *) (arg))[1] =
 - ((__const unsigned char *) (__const char *) ("405"))[1]); if (__s2_len =
 > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__c=
 onst char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("40=
 5"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __result =3D (((__const =
 unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) =
 (__const char *) ("405"))[3]); } } __result; })) : (__extension__ ({ __co=
 nst unsigned char *__s1 =3D (__const unsigned char *) (__const char *) (a=
 rg); register int __result =3D __s1[0] - ((__const unsigned char *) (__co=
 nst char *) ("405"))[0]; if (__s2_len > 0 && __result =3D=3D 0) { __resul=
 t =3D (__s1[1] - ((__const unsigned char *) (__const char *) ("405"))[1])=
 ; if (__s2_len > 1 && __result =3D=3D 0) { __result =3D (__s1[2] - ((__co=
 nst unsigned char *) (__const char *) ("405"))[2]); if (__s2_len > 2 && _=
 _result =3D=3D 0) __result =3D (__s1[3] - ((__const unsigned char *) (__c=
 onst char *) ("405"))[3]); } } __result; }))) : strcmp (arg, "405")))); }=
 ) =3D=3D 0)
         ppc_cpu =3D (01) | (02000) | (010);
       else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_con=
 stant_p (arg) && __builtin_constant_p ("7400") && (__s1_len =3D strlen (a=
 rg), __s2_len =3D strlen ("7400"), (!((size_t)(const void *)((arg) + 1) -=
  (size_t)(const void *)(arg) =3D=3D 1) || __s1_len >=3D 4) && (!((size_t)=
 (const void *)(("7400") + 1) - (size_t)(const void *)("7400") =3D=3D 1) |=
 | __s2_len >=3D 4)) ? memcmp ((__const char *) (arg), (__const char *) ("=
 7400"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_con=
 stant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void=
  *)(arg) =3D=3D 1) && (__s1_len =3D strlen (arg), __s1_len < 4) ? (__buil=
 tin_constant_p ("7400") && ((size_t)(const void *)(("7400") + 1) - (size_=
 t)(const void *)("7400") =3D=3D 1) ? (__extension__ ({ register int __res=
 ult =3D (((__const unsigned char *) (__const char *) (arg))[0] - ((__cons=
 t unsigned char *) (__const char *)("7400"))[0]); if (__s1_len > 0 && __r=
 esult =3D=3D 0) { __result =3D (((__const unsigned char *) (__const char =
 *) (arg))[1] - ((__const unsigned char *) (__const char *) ("7400"))[1]);=
  if (__s1_len > 1 && __result =3D=3D 0) { __result =3D (((__const unsigne=
 d char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__cons=
 t char *) ("7400"))[2]); if (__s1_len > 2 && __result =3D=3D 0) __result =
 =3D (((__const unsigned char *) (__const char *) (arg))[3] - ((__const un=
 signed char *) (__const char *) ("7400"))[3]); } } __result; })) : (__ext=
 ension__ ({ __const unsigned char *__s2 =3D (__const unsigned char *) (__=
 const char *) ("7400"); register int __result =3D (((__const unsigned cha=
 r *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result =
 =3D=3D 0) { __result =3D (((__const unsigned char *) (__const char *) (ar=
 g))[1] - __s2[1]); if (__s1_len > 1 && __result =3D=3D 0) { __result =3D =
 (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (__=
 s1_len > 2 && __result =3D=3D 0) __result =3D (((__const unsigned char *)=
  (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_c=
 onstant_p ("7400") && ((size_t)(const void *)(("7400") + 1) - (size_t)(co=
 nst void *)("7400") =3D=3D 1) && (__s2_len =3D strlen ("7400"), __s2_len =
 < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) =
 - (size_t)(const void *)(arg) =3D=3D 1) ? (__extension__ ({ register int =
 __result =3D (((__const unsigned char *) (__const char *) (arg))[0] - ((_=
 _const unsigned char *) (__const char *)("7400"))[0]); if (__s2_len > 0 &=
 & __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__const =
 char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("7400"))=
 [1]); if (__s2_len > 1 && __result =3D=3D 0) { __result =3D (((__const un=
 signed char *) (__const char *) (arg))[2] - ((__const unsigned char *) (_=
 _const char *) ("7400"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __re=
 sult =3D (((__const unsigned char *) (__const char *) (arg))[3] - ((__con=
 st unsigned char *) (__const char *) ("7400"))[3]); } } __result; })) : (=
 __extension__ ({ __const unsigned char *__s1 =3D (__const unsigned char *=
 ) (__const char *) (arg); register int __result =3D __s1[0] - ((__const u=
 nsigned char *) (__const char *) ("7400"))[0]; if (__s2_len > 0 && __resu=
 lt =3D=3D 0) { __result =3D (__s1[1] - ((__const unsigned char *) (__cons=
 t char *) ("7400"))[1]); if (__s2_len > 1 && __result =3D=3D 0) { __resul=
 t =3D (__s1[2] - ((__const unsigned char *) (__const char *) ("7400"))[2]=
 ); if (__s2_len > 2 && __result =3D=3D 0) __result =3D (__s1[3] - ((__con=
 st unsigned char *) (__const char *) ("7400"))[3]); } } __result; }))) : =
 strcmp (arg, "7400")))); }) =3D=3D 0
                || __extension__ ({ size_t __s1_len, __s2_len; (__builtin_=
 constant_p (arg) && __builtin_constant_p ("7410") && (__s1_len =3D strlen=
  (arg), __s2_len =3D strlen ("7410"), (!((size_t)(const void *)((arg) + 1=
 ) - (size_t)(const void *)(arg) =3D=3D 1) || __s1_len >=3D 4) && (!((size=
 _t)(const void *)(("7410") + 1) - (size_t)(const void *)("7410") =3D=3D 1=
 ) || __s2_len >=3D 4)) ? memcmp ((__const char *) (arg), (__const char *)=
  ("7410"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_=
 constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const v=
 oid *)(arg) =3D=3D 1) && (__s1_len =3D strlen (arg), __s1_len < 4) ? (__b=
 uiltin_constant_p ("7410") && ((size_t)(const void *)(("7410") + 1) - (si=
 ze_t)(const void *)("7410") =3D=3D 1) ? (__extension__ ({ register int __=
 result =3D (((__const unsigned char *) (__const char *) (arg))[0] - ((__c=
 onst unsigned char *) (__const char *)("7410"))[0]); if (__s1_len > 0 && =
 __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__const ch=
 ar *) (arg))[1] - ((__const unsigned char *) (__const char *) ("7410"))[1=
 ]); if (__s1_len > 1 && __result =3D=3D 0) { __result =3D (((__const unsi=
 gned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__c=
 onst char *) ("7410"))[2]); if (__s1_len > 2 && __result =3D=3D 0) __resu=
 lt =3D (((__const unsigned char *) (__const char *) (arg))[3] - ((__const=
  unsigned char *) (__const char *) ("7410"))[3]); } } __result; })) : (__=
 extension__ ({ __const unsigned char *__s2 =3D (__const unsigned char *) =
 (__const char *) ("7410"); register int __result =3D (((__const unsigned =
 char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __resu=
 lt =3D=3D 0) { __result =3D (((__const unsigned char *) (__const char *) =
 (arg))[1] - __s2[1]); if (__s1_len > 1 && __result =3D=3D 0) { __result =3D=
  (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (_=
 _s1_len > 2 && __result =3D=3D 0) __result =3D (((__const unsigned char *=
 ) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_=
 constant_p ("7410") && ((size_t)(const void *)(("7410") + 1) - (size_t)(c=
 onst void *)("7410") =3D=3D 1) && (__s2_len =3D strlen ("7410"), __s2_len=
  < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1)=
  - (size_t)(const void *)(arg) =3D=3D 1) ? (__extension__ ({ register int=
  __result =3D (((__const unsigned char *) (__const char *) (arg))[0] - ((=
 __const unsigned char *) (__const char *)("7410"))[0]); if (__s2_len > 0 =
 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__const=
  char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("7410")=
 )[1]); if (__s2_len > 1 && __result =3D=3D 0) { __result =3D (((__const u=
 nsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (=
 __const char *) ("7410"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __r=
 esult =3D (((__const unsigned char *) (__const char *) (arg))[3] - ((__co=
 nst unsigned char *) (__const char *) ("7410"))[3]); } } __result; })) : =
 (__extension__ ({ __const unsigned char *__s1 =3D (__const unsigned char =
 *) (__const char *) (arg); register int __result =3D __s1[0] - ((__const =
 unsigned char *) (__const char *) ("7410"))[0]; if (__s2_len > 0 && __res=
 ult =3D=3D 0) { __result =3D (__s1[1] - ((__const unsigned char *) (__con=
 st char *) ("7410"))[1]); if (__s2_len > 1 && __result =3D=3D 0) { __resu=
 lt =3D (__s1[2] - ((__const unsigned char *) (__const char *) ("7410"))[2=
 ]); if (__s2_len > 2 && __result =3D=3D 0) __result =3D (__s1[3] - ((__co=
 nst unsigned char *) (__const char *) ("7410"))[3]); } } __result; }))) :=
  strcmp (arg, "7410")))); }) =3D=3D 0
                || __extension__ ({ size_t __s1_len, __s2_len; (__builtin_=
 constant_p (arg) && __builtin_constant_p ("7450") && (__s1_len =3D strlen=
  (arg), __s2_len =3D strlen ("7450"), (!((size_t)(const void *)((arg) + 1=
 ) - (size_t)(const void *)(arg) =3D=3D 1) || __s1_len >=3D 4) && (!((size=
 _t)(const void *)(("7450") + 1) - (size_t)(const void *)("7450") =3D=3D 1=
 ) || __s2_len >=3D 4)) ? memcmp ((__const char *) (arg), (__const char *)=
  ("7450"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_=
 constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const v=
 oid *)(arg) =3D=3D 1) && (__s1_len =3D strlen (arg), __s1_len < 4) ? (__b=
 uiltin_constant_p ("7450") && ((size_t)(const void *)(("7450") + 1) - (si=
 ze_t)(const void *)("7450") =3D=3D 1) ? (__extension__ ({ register int __=
 result =3D (((__const unsigned char *) (__const char *) (arg))[0] - ((__c=
 onst unsigned char *) (__const char *)("7450"))[0]); if (__s1_len > 0 && =
 __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__const ch=
 ar *) (arg))[1] - ((__const unsigned char *) (__const char *) ("7450"))[1=
 ]); if (__s1_len > 1 && __result =3D=3D 0) { __result =3D (((__const unsi=
 gned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__c=
 onst char *) ("7450"))[2]); if (__s1_len > 2 && __result =3D=3D 0) __resu=
 lt =3D (((__const unsigned char *) (__const char *) (arg))[3] - ((__const=
  unsigned char *) (__const char *) ("7450"))[3]); } } __result; })) : (__=
 extension__ ({ __const unsigned char *__s2 =3D (__const unsigned char *) =
 (__const char *) ("7450"); register int __result =3D (((__const unsigned =
 char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __resu=
 lt =3D=3D 0) { __result =3D (((__const unsigned char *) (__const char *) =
 (arg))[1] - __s2[1]); if (__s1_len > 1 && __result =3D=3D 0) { __result =3D=
  (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (_=
 _s1_len > 2 && __result =3D=3D 0) __result =3D (((__const unsigned char *=
 ) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_=
 constant_p ("7450") && ((size_t)(const void *)(("7450") + 1) - (size_t)(c=
 onst void *)("7450") =3D=3D 1) && (__s2_len =3D strlen ("7450"), __s2_len=
  < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1)=
  - (size_t)(const void *)(arg) =3D=3D 1) ? (__extension__ ({ register int=
  __result =3D (((__const unsigned char *) (__const char *) (arg))[0] - ((=
 __const unsigned char *) (__const char *)("7450"))[0]); if (__s2_len > 0 =
 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__const=
  char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("7450")=
 )[1]); if (__s2_len > 1 && __result =3D=3D 0) { __result =3D (((__const u=
 nsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (=
 __const char *) ("7450"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __r=
 esult =3D (((__const unsigned char *) (__const char *) (arg))[3] - ((__co=
 nst unsigned char *) (__const char *) ("7450"))[3]); } } __result; })) : =
 (__extension__ ({ __const unsigned char *__s1 =3D (__const unsigned char =
 *) (__const char *) (arg); register int __result =3D __s1[0] - ((__const =
 unsigned char *) (__const char *) ("7450"))[0]; if (__s2_len > 0 && __res=
 ult =3D=3D 0) { __result =3D (__s1[1] - ((__const unsigned char *) (__con=
 st char *) ("7450"))[1]); if (__s2_len > 1 && __result =3D=3D 0) { __resu=
 lt =3D (__s1[2] - ((__const unsigned char *) (__const char *) ("7450"))[2=
 ]); if (__s2_len > 2 && __result =3D=3D 0) __result =3D (__s1[3] - ((__co=
 nst unsigned char *) (__const char *) ("7450"))[3]); } } __result; }))) :=
  strcmp (arg, "7450")))); }) =3D=3D 0
                || __extension__ ({ size_t __s1_len, __s2_len; (__builtin_=
 constant_p (arg) && __builtin_constant_p ("7455") && (__s1_len =3D strlen=
  (arg), __s2_len =3D strlen ("7455"), (!((size_t)(const void *)((arg) + 1=
 ) - (size_t)(const void *)(arg) =3D=3D 1) || __s1_len >=3D 4) && (!((size=
 _t)(const void *)(("7455") + 1) - (size_t)(const void *)("7455") =3D=3D 1=
 ) || __s2_len >=3D 4)) ? memcmp ((__const char *) (arg), (__const char *)=
  ("7455"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_=
 constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const v=
 oid *)(arg) =3D=3D 1) && (__s1_len =3D strlen (arg), __s1_len < 4) ? (__b=
 uiltin_constant_p ("7455") && ((size_t)(const void *)(("7455") + 1) - (si=
 ze_t)(const void *)("7455") =3D=3D 1) ? (__extension__ ({ register int __=
 result =3D (((__const unsigned char *) (__const char *) (arg))[0] - ((__c=
 onst unsigned char *) (__const char *)("7455"))[0]); if (__s1_len > 0 && =
 __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__const ch=
 ar *) (arg))[1] - ((__const unsigned char *) (__const char *) ("7455"))[1=
 ]); if (__s1_len > 1 && __result =3D=3D 0) { __result =3D (((__const unsi=
 gned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__c=
 onst char *) ("7455"))[2]); if (__s1_len > 2 && __result =3D=3D 0) __resu=
 lt =3D (((__const unsigned char *) (__const char *) (arg))[3] - ((__const=
  unsigned char *) (__const char *) ("7455"))[3]); } } __result; })) : (__=
 extension__ ({ __const unsigned char *__s2 =3D (__const unsigned char *) =
 (__const char *) ("7455"); register int __result =3D (((__const unsigned =
 char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __resu=
 lt =3D=3D 0) { __result =3D (((__const unsigned char *) (__const char *) =
 (arg))[1] - __s2[1]); if (__s1_len > 1 && __result =3D=3D 0) { __result =3D=
  (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (_=
 _s1_len > 2 && __result =3D=3D 0) __result =3D (((__const unsigned char *=
 ) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_=
 constant_p ("7455") && ((size_t)(const void *)(("7455") + 1) - (size_t)(c=
 onst void *)("7455") =3D=3D 1) && (__s2_len =3D strlen ("7455"), __s2_len=
  < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1)=
  - (size_t)(const void *)(arg) =3D=3D 1) ? (__extension__ ({ register int=
  __result =3D (((__const unsigned char *) (__const char *) (arg))[0] - ((=
 __const unsigned char *) (__const char *)("7455"))[0]); if (__s2_len > 0 =
 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__const=
  char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("7455")=
 )[1]); if (__s2_len > 1 && __result =3D=3D 0) { __result =3D (((__const u=
 nsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (=
 __const char *) ("7455"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __r=
 esult =3D (((__const unsigned char *) (__const char *) (arg))[3] - ((__co=
 nst unsigned char *) (__const char *) ("7455"))[3]); } } __result; })) : =
 (__extension__ ({ __const unsigned char *__s1 =3D (__const unsigned char =
 *) (__const char *) (arg); register int __result =3D __s1[0] - ((__const =
 unsigned char *) (__const char *) ("7455"))[0]; if (__s2_len > 0 && __res=
 ult =3D=3D 0) { __result =3D (__s1[1] - ((__const unsigned char *) (__con=
 st char *) ("7455"))[1]); if (__s2_len > 1 && __result =3D=3D 0) { __resu=
 lt =3D (__s1[2] - ((__const unsigned char *) (__const char *) ("7455"))[2=
 ]); if (__s2_len > 2 && __result =3D=3D 0) __result =3D (__s1[3] - ((__co=
 nst unsigned char *) (__const char *) ("7455"))[3]); } } __result; }))) :=
  strcmp (arg, "7455")))); }) =3D=3D 0)
         ppc_cpu =3D (01) | (01000) | (010);
       else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_con=
 stant_p (arg) && __builtin_constant_p ("altivec") && (__s1_len =3D strlen=
  (arg), __s2_len =3D strlen ("altivec"), (!((size_t)(const void *)((arg) =
 + 1) - (size_t)(const void *)(arg) =3D=3D 1) || __s1_len >=3D 4) && (!((s=
 ize_t)(const void *)(("altivec") + 1) - (size_t)(const void *)("altivec")=
  =3D=3D 1) || __s2_len >=3D 4)) ? memcmp ((__const char *) (arg), (__cons=
 t char *) ("altivec"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) :=
  (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (siz=
 e_t)(const void *)(arg) =3D=3D 1) && (__s1_len =3D strlen (arg), __s1_len=
  < 4) ? (__builtin_constant_p ("altivec") && ((size_t)(const void *)(("al=
 tivec") + 1) - (size_t)(const void *)("altivec") =3D=3D 1) ? (__extension=
 __ ({ register int __result =3D (((__const unsigned char *) (__const char=
  *) (arg))[0] - ((__const unsigned char *) (__const char *)("altivec"))[0=
 ]); if (__s1_len > 0 && __result =3D=3D 0) { __result =3D (((__const unsi=
 gned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__c=
 onst char *) ("altivec"))[1]); if (__s1_len > 1 && __result =3D=3D 0) { _=
 _result =3D (((__const unsigned char *) (__const char *) (arg))[2] - ((__=
 const unsigned char *) (__const char *) ("altivec"))[2]); if (__s1_len > =
 2 && __result =3D=3D 0) __result =3D (((__const unsigned char *) (__const=
  char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("altive=
 c"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__=
 s2 =3D (__const unsigned char *) (__const char *) ("altivec"); register i=
 nt __result =3D (((__const unsigned char *) (__const char *) (arg))[0] - =
 __s2[0]); if (__s1_len > 0 && __result =3D=3D 0) { __result =3D (((__cons=
 t unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > =
 1 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__con=
 st char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result =3D=3D 0) _=
 _result =3D (((__const unsigned char *) (__const char *) (arg))[3] - __s2=
 [3]); } } __result; }))) : (__builtin_constant_p ("altivec") && ((size_t)=
 (const void *)(("altivec") + 1) - (size_t)(const void *)("altivec") =3D=3D=
  1) && (__s2_len =3D strlen ("altivec"), __s2_len < 4) ? (__builtin_const=
 ant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *=
 )(arg) =3D=3D 1) ? (__extension__ ({ register int __result =3D (((__const=
  unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *)=
  (__const char *)("altivec"))[0]); if (__s2_len > 0 && __result =3D=3D 0)=
  { __result =3D (((__const unsigned char *) (__const char *) (arg))[1] - =
 ((__const unsigned char *) (__const char *) ("altivec"))[1]); if (__s2_le=
 n > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (_=
 _const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("=
 altivec"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __result =3D (((__=
 const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned ch=
 ar *) (__const char *) ("altivec"))[3]); } } __result; })) : (__extension=
 __ ({ __const unsigned char *__s1 =3D (__const unsigned char *) (__const =
 char *) (arg); register int __result =3D __s1[0] - ((__const unsigned cha=
 r *) (__const char *) ("altivec"))[0]; if (__s2_len > 0 && __result =3D=3D=
  0) { __result =3D (__s1[1] - ((__const unsigned char *) (__const char *)=
  ("altivec"))[1]); if (__s2_len > 1 && __result =3D=3D 0) { __result =3D =
 (__s1[2] - ((__const unsigned char *) (__const char *) ("altivec"))[2]); =
 if (__s2_len > 2 && __result =3D=3D 0) __result =3D (__s1[3] - ((__const =
 unsigned char *) (__const char *) ("altivec"))[3]); } } __result; }))) : =
 strcmp (arg, "altivec")))); }) =3D=3D 0)
         {
           if (ppc_cpu =3D=3D 0)
             ppc_cpu =3D (01) | (01000);
           else
             ppc_cpu |=3D (01000);
         }
 
 
       else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_con=
 stant_p (arg) && __builtin_constant_p ("ppc64") && (__s1_len =3D strlen (=
 arg), __s2_len =3D strlen ("ppc64"), (!((size_t)(const void *)((arg) + 1)=
  - (size_t)(const void *)(arg) =3D=3D 1) || __s1_len >=3D 4) && (!((size_=
 t)(const void *)(("ppc64") + 1) - (size_t)(const void *)("ppc64") =3D=3D =
 1) || __s2_len >=3D 4)) ? memcmp ((__const char *) (arg), (__const char *=
 ) ("ppc64"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builti=
 n_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const=
  void *)(arg) =3D=3D 1) && (__s1_len =3D strlen (arg), __s1_len < 4) ? (_=
 _builtin_constant_p ("ppc64") && ((size_t)(const void *)(("ppc64") + 1) -=
  (size_t)(const void *)("ppc64") =3D=3D 1) ? (__extension__ ({ register i=
 nt __result =3D (((__const unsigned char *) (__const char *) (arg))[0] - =
 ((__const unsigned char *) (__const char *)("ppc64"))[0]); if (__s1_len >=
  0 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__co=
 nst char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("ppc=
 64"))[1]); if (__s1_len > 1 && __result =3D=3D 0) { __result =3D (((__con=
 st unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char =
 *) (__const char *) ("ppc64"))[2]); if (__s1_len > 2 && __result =3D=3D 0=
 ) __result =3D (((__const unsigned char *) (__const char *) (arg))[3] - (=
 (__const unsigned char *) (__const char *) ("ppc64"))[3]); } } __result; =
 })) : (__extension__ ({ __const unsigned char *__s2 =3D (__const unsigned=
  char *) (__const char *) ("ppc64"); register int __result =3D (((__const=
  unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0=
  && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__cons=
 t char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result =3D=3D 0) { =
 __result =3D (((__const unsigned char *) (__const char *) (arg))[2] - __s=
 2[2]); if (__s1_len > 2 && __result =3D=3D 0) __result =3D (((__const uns=
 igned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) :=
  (__builtin_constant_p ("ppc64") && ((size_t)(const void *)(("ppc64") + 1=
 ) - (size_t)(const void *)("ppc64") =3D=3D 1) && (__s2_len =3D strlen ("p=
 pc64"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const vo=
 id *)((arg) + 1) - (size_t)(const void *)(arg) =3D=3D 1) ? (__extension__=
  ({ register int __result =3D (((__const unsigned char *) (__const char *=
 ) (arg))[0] - ((__const unsigned char *) (__const char *)("ppc64"))[0]); =
 if (__s2_len > 0 && __result =3D=3D 0) { __result =3D (((__const unsigned=
  char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const=
  char *) ("ppc64"))[1]); if (__s2_len > 1 && __result =3D=3D 0) { __resul=
 t =3D (((__const unsigned char *) (__const char *) (arg))[2] - ((__const =
 unsigned char *) (__const char *) ("ppc64"))[2]); if (__s2_len > 2 && __r=
 esult =3D=3D 0) __result =3D (((__const unsigned char *) (__const char *)=
  (arg))[3] - ((__const unsigned char *) (__const char *) ("ppc64"))[3]); =
 } } __result; })) : (__extension__ ({ __const unsigned char *__s1 =3D (__=
 const unsigned char *) (__const char *) (arg); register int __result =3D =
 __s1[0] - ((__const unsigned char *) (__const char *) ("ppc64"))[0]; if (=
 __s2_len > 0 && __result =3D=3D 0) { __result =3D (__s1[1] - ((__const un=
 signed char *) (__const char *) ("ppc64"))[1]); if (__s2_len > 1 && __res=
 ult =3D=3D 0) { __result =3D (__s1[2] - ((__const unsigned char *) (__con=
 st char *) ("ppc64"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __resul=
 t =3D (__s1[3] - ((__const unsigned char *) (__const char *) ("ppc64"))[3=
 ]); } } __result; }))) : strcmp (arg, "ppc64")))); }) =3D=3D 0 || __exten=
 sion__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (arg) && __bui=
 ltin_constant_p ("620") && (__s1_len =3D strlen (arg), __s2_len =3D strle=
 n ("620"), (!((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(=
 arg) =3D=3D 1) || __s1_len >=3D 4) && (!((size_t)(const void *)(("620") +=
  1) - (size_t)(const void *)("620") =3D=3D 1) || __s2_len >=3D 4)) ? memc=
 mp ((__const char *) (arg), (__const char *) ("620"), (__s1_len < __s2_le=
 n ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(=
 const void *)((arg) + 1) - (size_t)(const void *)(arg) =3D=3D 1) && (__s1=
 _len =3D strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("620") && (=
 (size_t)(const void *)(("620") + 1) - (size_t)(const void *)("620") =3D=3D=
  1) ? (__extension__ ({ register int __result =3D (((__const unsigned cha=
 r *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const cha=
 r *)("620"))[0]); if (__s1_len > 0 && __result =3D=3D 0) { __result =3D (=
 ((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigne=
 d char *) (__const char *) ("620"))[1]); if (__s1_len > 1 && __result =3D=
 =3D 0) { __result =3D (((__const unsigned char *) (__const char *) (arg))=
 [2] - ((__const unsigned char *) (__const char *) ("620"))[2]); if (__s1_=
 len > 2 && __result =3D=3D 0) __result =3D (((__const unsigned char *) (_=
 _const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("=
 620"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *=
 __s2 =3D (__const unsigned char *) (__const char *) ("620"); register int=
  __result =3D (((__const unsigned char *) (__const char *) (arg))[0] - __=
 s2[0]); if (__s1_len > 0 && __result =3D=3D 0) { __result =3D (((__const =
 unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 =
 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__const=
  char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result =3D=3D 0) __r=
 esult =3D (((__const unsigned char *) (__const char *) (arg))[3] - __s2[3=
 ]); } } __result; }))) : (__builtin_constant_p ("620") && ((size_t)(const=
  void *)(("620") + 1) - (size_t)(const void *)("620") =3D=3D 1) && (__s2_=
 len =3D strlen ("620"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((=
 size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) =3D=3D 1) =
 ? (__extension__ ({ register int __result =3D (((__const unsigned char *)=
  (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)=
 ("620"))[0]); if (__s2_len > 0 && __result =3D=3D 0) { __result =3D (((__=
 const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned ch=
 ar *) (__const char *) ("620"))[1]); if (__s2_len > 1 && __result =3D=3D =
 0) { __result =3D (((__const unsigned char *) (__const char *) (arg))[2] =
 - ((__const unsigned char *) (__const char *) ("620"))[2]); if (__s2_len =
 > 2 && __result =3D=3D 0) __result =3D (((__const unsigned char *) (__con=
 st char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("620"=
 ))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1=
  =3D (__const unsigned char *) (__const char *) (arg); register int __res=
 ult =3D __s1[0] - ((__const unsigned char *) (__const char *) ("620"))[0]=
 ; if (__s2_len > 0 && __result =3D=3D 0) { __result =3D (__s1[1] - ((__co=
 nst unsigned char *) (__const char *) ("620"))[1]); if (__s2_len > 1 && _=
 _result =3D=3D 0) { __result =3D (__s1[2] - ((__const unsigned char *) (_=
 _const char *) ("620"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __res=
 ult =3D (__s1[3] - ((__const unsigned char *) (__const char *) ("620"))[3=
 ]); } } __result; }))) : strcmp (arg, "620")))); }) =3D=3D 0)
         {
           ppc_cpu =3D (01) | (020);
         }
       else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_con=
 stant_p (arg) && __builtin_constant_p ("ppc64bridge") && (__s1_len =3D st=
 rlen (arg), __s2_len =3D strlen ("ppc64bridge"), (!((size_t)(const void *=
 )((arg) + 1) - (size_t)(const void *)(arg) =3D=3D 1) || __s1_len >=3D 4) =
 && (!((size_t)(const void *)(("ppc64bridge") + 1) - (size_t)(const void *=
 )("ppc64bridge") =3D=3D 1) || __s2_len >=3D 4)) ? memcmp ((__const char *=
 ) (arg), (__const char *) ("ppc64bridge"), (__s1_len < __s2_len ? __s1_le=
 n : __s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(const void =
 *)((arg) + 1) - (size_t)(const void *)(arg) =3D=3D 1) && (__s1_len =3D st=
 rlen (arg), __s1_len < 4) ? (__builtin_constant_p ("ppc64bridge") && ((si=
 ze_t)(const void *)(("ppc64bridge") + 1) - (size_t)(const void *)("ppc64b=
 ridge") =3D=3D 1) ? (__extension__ ({ register int __result =3D (((__cons=
 t unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *=
 ) (__const char *)("ppc64bridge"))[0]); if (__s1_len > 0 && __result =3D=3D=
  0) { __result =3D (((__const unsigned char *) (__const char *) (arg))[1]=
  - ((__const unsigned char *) (__const char *) ("ppc64bridge"))[1]); if (=
 __s1_len > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned cha=
 r *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const cha=
 r *) ("ppc64bridge"))[2]); if (__s1_len > 2 && __result =3D=3D 0) __resul=
 t =3D (((__const unsigned char *) (__const char *) (arg))[3] - ((__const =
 unsigned char *) (__const char *) ("ppc64bridge"))[3]); } } __result; }))=
  : (__extension__ ({ __const unsigned char *__s2 =3D (__const unsigned ch=
 ar *) (__const char *) ("ppc64bridge"); register int __result =3D (((__co=
 nst unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len =
 > 0 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__c=
 onst char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result =3D=3D 0)=
  { __result =3D (((__const unsigned char *) (__const char *) (arg))[2] - =
 __s2[2]); if (__s1_len > 2 && __result =3D=3D 0) __result =3D (((__const =
 unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))=
 ) : (__builtin_constant_p ("ppc64bridge") && ((size_t)(const void *)(("pp=
 c64bridge") + 1) - (size_t)(const void *)("ppc64bridge") =3D=3D 1) && (__=
 s2_len =3D strlen ("ppc64bridge"), __s2_len < 4) ? (__builtin_constant_p =
 (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg)=
  =3D=3D 1) ? (__extension__ ({ register int __result =3D (((__const unsig=
 ned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__co=
 nst char *)("ppc64bridge"))[0]); if (__s2_len > 0 && __result =3D=3D 0) {=
  __result =3D (((__const unsigned char *) (__const char *) (arg))[1] - ((=
 __const unsigned char *) (__const char *) ("ppc64bridge"))[1]); if (__s2_=
 len > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) =
 (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) =
 ("ppc64bridge"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __result =3D=
  (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsig=
 ned char *) (__const char *) ("ppc64bridge"))[3]); } } __result; })) : (_=
 _extension__ ({ __const unsigned char *__s1 =3D (__const unsigned char *)=
  (__const char *) (arg); register int __result =3D __s1[0] - ((__const un=
 signed char *) (__const char *) ("ppc64bridge"))[0]; if (__s2_len > 0 && =
 __result =3D=3D 0) { __result =3D (__s1[1] - ((__const unsigned char *) (=
 __const char *) ("ppc64bridge"))[1]); if (__s2_len > 1 && __result =3D=3D=
  0) { __result =3D (__s1[2] - ((__const unsigned char *) (__const char *)=
  ("ppc64bridge"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __result =3D=
  (__s1[3] - ((__const unsigned char *) (__const char *) ("ppc64bridge"))[=
 3]); } } __result; }))) : strcmp (arg, "ppc64bridge")))); }) =3D=3D 0)
         {
           ppc_cpu =3D (01) | (0400) | (020);
         }
 
       else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_con=
 stant_p (arg) && __builtin_constant_p ("booke") && (__s1_len =3D strlen (=
 arg), __s2_len =3D strlen ("booke"), (!((size_t)(const void *)((arg) + 1)=
  - (size_t)(const void *)(arg) =3D=3D 1) || __s1_len >=3D 4) && (!((size_=
 t)(const void *)(("booke") + 1) - (size_t)(const void *)("booke") =3D=3D =
 1) || __s2_len >=3D 4)) ? memcmp ((__const char *) (arg), (__const char *=
 ) ("booke"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builti=
 n_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const=
  void *)(arg) =3D=3D 1) && (__s1_len =3D strlen (arg), __s1_len < 4) ? (_=
 _builtin_constant_p ("booke") && ((size_t)(const void *)(("booke") + 1) -=
  (size_t)(const void *)("booke") =3D=3D 1) ? (__extension__ ({ register i=
 nt __result =3D (((__const unsigned char *) (__const char *) (arg))[0] - =
 ((__const unsigned char *) (__const char *)("booke"))[0]); if (__s1_len >=
  0 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__co=
 nst char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("boo=
 ke"))[1]); if (__s1_len > 1 && __result =3D=3D 0) { __result =3D (((__con=
 st unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char =
 *) (__const char *) ("booke"))[2]); if (__s1_len > 2 && __result =3D=3D 0=
 ) __result =3D (((__const unsigned char *) (__const char *) (arg))[3] - (=
 (__const unsigned char *) (__const char *) ("booke"))[3]); } } __result; =
 })) : (__extension__ ({ __const unsigned char *__s2 =3D (__const unsigned=
  char *) (__const char *) ("booke"); register int __result =3D (((__const=
  unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0=
  && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__cons=
 t char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result =3D=3D 0) { =
 __result =3D (((__const unsigned char *) (__const char *) (arg))[2] - __s=
 2[2]); if (__s1_len > 2 && __result =3D=3D 0) __result =3D (((__const uns=
 igned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) :=
  (__builtin_constant_p ("booke") && ((size_t)(const void *)(("booke") + 1=
 ) - (size_t)(const void *)("booke") =3D=3D 1) && (__s2_len =3D strlen ("b=
 ooke"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const vo=
 id *)((arg) + 1) - (size_t)(const void *)(arg) =3D=3D 1) ? (__extension__=
  ({ register int __result =3D (((__const unsigned char *) (__const char *=
 ) (arg))[0] - ((__const unsigned char *) (__const char *)("booke"))[0]); =
 if (__s2_len > 0 && __result =3D=3D 0) { __result =3D (((__const unsigned=
  char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const=
  char *) ("booke"))[1]); if (__s2_len > 1 && __result =3D=3D 0) { __resul=
 t =3D (((__const unsigned char *) (__const char *) (arg))[2] - ((__const =
 unsigned char *) (__const char *) ("booke"))[2]); if (__s2_len > 2 && __r=
 esult =3D=3D 0) __result =3D (((__const unsigned char *) (__const char *)=
  (arg))[3] - ((__const unsigned char *) (__const char *) ("booke"))[3]); =
 } } __result; })) : (__extension__ ({ __const unsigned char *__s1 =3D (__=
 const unsigned char *) (__const char *) (arg); register int __result =3D =
 __s1[0] - ((__const unsigned char *) (__const char *) ("booke"))[0]; if (=
 __s2_len > 0 && __result =3D=3D 0) { __result =3D (__s1[1] - ((__const un=
 signed char *) (__const char *) ("booke"))[1]); if (__s2_len > 1 && __res=
 ult =3D=3D 0) { __result =3D (__s1[2] - ((__const unsigned char *) (__con=
 st char *) ("booke"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __resul=
 t =3D (__s1[3] - ((__const unsigned char *) (__const char *) ("booke"))[3=
 ]); } } __result; }))) : strcmp (arg, "booke")))); }) =3D=3D 0 || __exten=
 sion__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (arg) && __bui=
 ltin_constant_p ("booke32") && (__s1_len =3D strlen (arg), __s2_len =3D s=
 trlen ("booke32"), (!((size_t)(const void *)((arg) + 1) - (size_t)(const =
 void *)(arg) =3D=3D 1) || __s1_len >=3D 4) && (!((size_t)(const void *)((=
 "booke32") + 1) - (size_t)(const void *)("booke32") =3D=3D 1) || __s2_len=
  >=3D 4)) ? memcmp ((__const char *) (arg), (__const char *) ("booke32"),=
  (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p=
  (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg=
 ) =3D=3D 1) && (__s1_len =3D strlen (arg), __s1_len < 4) ? (__builtin_con=
 stant_p ("booke32") && ((size_t)(const void *)(("booke32") + 1) - (size_t=
 )(const void *)("booke32") =3D=3D 1) ? (__extension__ ({ register int __r=
 esult =3D (((__const unsigned char *) (__const char *) (arg))[0] - ((__co=
 nst unsigned char *) (__const char *)("booke32"))[0]); if (__s1_len > 0 &=
 & __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__const =
 char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("booke32=
 "))[1]); if (__s1_len > 1 && __result =3D=3D 0) { __result =3D (((__const=
  unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *)=
  (__const char *) ("booke32"))[2]); if (__s1_len > 2 && __result =3D=3D 0=
 ) __result =3D (((__const unsigned char *) (__const char *) (arg))[3] - (=
 (__const unsigned char *) (__const char *) ("booke32"))[3]); } } __result=
 ; })) : (__extension__ ({ __const unsigned char *__s2 =3D (__const unsign=
 ed char *) (__const char *) ("booke32"); register int __result =3D (((__c=
 onst unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len=
  > 0 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__=
 const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result =3D=3D 0=
 ) { __result =3D (((__const unsigned char *) (__const char *) (arg))[2] -=
  __s2[2]); if (__s1_len > 2 && __result =3D=3D 0) __result =3D (((__const=
  unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; })=
 )) : (__builtin_constant_p ("booke32") && ((size_t)(const void *)(("booke=
 32") + 1) - (size_t)(const void *)("booke32") =3D=3D 1) && (__s2_len =3D =
 strlen ("booke32"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size=
 _t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) =3D=3D 1) ? (_=
 _extension__ ({ register int __result =3D (((__const unsigned char *) (__=
 const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("bo=
 oke32"))[0]); if (__s2_len > 0 && __result =3D=3D 0) { __result =3D (((__=
 const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned ch=
 ar *) (__const char *) ("booke32"))[1]); if (__s2_len > 1 && __result =3D=
 =3D 0) { __result =3D (((__const unsigned char *) (__const char *) (arg))=
 [2] - ((__const unsigned char *) (__const char *) ("booke32"))[2]); if (_=
 _s2_len > 2 && __result =3D=3D 0) __result =3D (((__const unsigned char *=
 ) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *=
 ) ("booke32"))[3]); } } __result; })) : (__extension__ ({ __const unsigne=
 d char *__s1 =3D (__const unsigned char *) (__const char *) (arg); regist=
 er int __result =3D __s1[0] - ((__const unsigned char *) (__const char *)=
  ("booke32"))[0]; if (__s2_len > 0 && __result =3D=3D 0) { __result =3D (=
 __s1[1] - ((__const unsigned char *) (__const char *) ("booke32"))[1]); i=
 f (__s2_len > 1 && __result =3D=3D 0) { __result =3D (__s1[2] - ((__const=
  unsigned char *) (__const char *) ("booke32"))[2]); if (__s2_len > 2 && =
 __result =3D=3D 0) __result =3D (__s1[3] - ((__const unsigned char *) (__=
 const char *) ("booke32"))[3]); } } __result; }))) : strcmp (arg, "booke3=
 2")))); }) =3D=3D 0)
         ppc_cpu =3D (01) | (04000) | (010);
 
       else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_con=
 stant_p (arg) && __builtin_constant_p ("booke64") && (__s1_len =3D strlen=
  (arg), __s2_len =3D strlen ("booke64"), (!((size_t)(const void *)((arg) =
 + 1) - (size_t)(const void *)(arg) =3D=3D 1) || __s1_len >=3D 4) && (!((s=
 ize_t)(const void *)(("booke64") + 1) - (size_t)(const void *)("booke64")=
  =3D=3D 1) || __s2_len >=3D 4)) ? memcmp ((__const char *) (arg), (__cons=
 t char *) ("booke64"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) :=
  (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (siz=
 e_t)(const void *)(arg) =3D=3D 1) && (__s1_len =3D strlen (arg), __s1_len=
  < 4) ? (__builtin_constant_p ("booke64") && ((size_t)(const void *)(("bo=
 oke64") + 1) - (size_t)(const void *)("booke64") =3D=3D 1) ? (__extension=
 __ ({ register int __result =3D (((__const unsigned char *) (__const char=
  *) (arg))[0] - ((__const unsigned char *) (__const char *)("booke64"))[0=
 ]); if (__s1_len > 0 && __result =3D=3D 0) { __result =3D (((__const unsi=
 gned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__c=
 onst char *) ("booke64"))[1]); if (__s1_len > 1 && __result =3D=3D 0) { _=
 _result =3D (((__const unsigned char *) (__const char *) (arg))[2] - ((__=
 const unsigned char *) (__const char *) ("booke64"))[2]); if (__s1_len > =
 2 && __result =3D=3D 0) __result =3D (((__const unsigned char *) (__const=
  char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("booke6=
 4"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__=
 s2 =3D (__const unsigned char *) (__const char *) ("booke64"); register i=
 nt __result =3D (((__const unsigned char *) (__const char *) (arg))[0] - =
 __s2[0]); if (__s1_len > 0 && __result =3D=3D 0) { __result =3D (((__cons=
 t unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > =
 1 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__con=
 st char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result =3D=3D 0) _=
 _result =3D (((__const unsigned char *) (__const char *) (arg))[3] - __s2=
 [3]); } } __result; }))) : (__builtin_constant_p ("booke64") && ((size_t)=
 (const void *)(("booke64") + 1) - (size_t)(const void *)("booke64") =3D=3D=
  1) && (__s2_len =3D strlen ("booke64"), __s2_len < 4) ? (__builtin_const=
 ant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *=
 )(arg) =3D=3D 1) ? (__extension__ ({ register int __result =3D (((__const=
  unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *)=
  (__const char *)("booke64"))[0]); if (__s2_len > 0 && __result =3D=3D 0)=
  { __result =3D (((__const unsigned char *) (__const char *) (arg))[1] - =
 ((__const unsigned char *) (__const char *) ("booke64"))[1]); if (__s2_le=
 n > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (_=
 _const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("=
 booke64"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __result =3D (((__=
 const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned ch=
 ar *) (__const char *) ("booke64"))[3]); } } __result; })) : (__extension=
 __ ({ __const unsigned char *__s1 =3D (__const unsigned char *) (__const =
 char *) (arg); register int __result =3D __s1[0] - ((__const unsigned cha=
 r *) (__const char *) ("booke64"))[0]; if (__s2_len > 0 && __result =3D=3D=
  0) { __result =3D (__s1[1] - ((__const unsigned char *) (__const char *)=
  ("booke64"))[1]); if (__s2_len > 1 && __result =3D=3D 0) { __result =3D =
 (__s1[2] - ((__const unsigned char *) (__const char *) ("booke64"))[2]); =
 if (__s2_len > 2 && __result =3D=3D 0) __result =3D (__s1[3] - ((__const =
 unsigned char *) (__const char *) ("booke64"))[3]); } } __result; }))) : =
 strcmp (arg, "booke64")))); }) =3D=3D 0)
         {
           ppc_cpu =3D (01) | (04000) |
                     (010000) | (020);
         }
       else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_con=
 stant_p (arg) && __builtin_constant_p ("power4") && (__s1_len =3D strlen =
 (arg), __s2_len =3D strlen ("power4"), (!((size_t)(const void *)((arg) + =
 1) - (size_t)(const void *)(arg) =3D=3D 1) || __s1_len >=3D 4) && (!((siz=
 e_t)(const void *)(("power4") + 1) - (size_t)(const void *)("power4") =3D=
 =3D 1) || __s2_len >=3D 4)) ? memcmp ((__const char *) (arg), (__const ch=
 ar *) ("power4"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__b=
 uiltin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(=
 const void *)(arg) =3D=3D 1) && (__s1_len =3D strlen (arg), __s1_len < 4)=
  ? (__builtin_constant_p ("power4") && ((size_t)(const void *)(("power4")=
  + 1) - (size_t)(const void *)("power4") =3D=3D 1) ? (__extension__ ({ re=
 gister int __result =3D (((__const unsigned char *) (__const char *) (arg=
 ))[0] - ((__const unsigned char *) (__const char *)("power4"))[0]); if (_=
 _s1_len > 0 && __result =3D=3D 0) { __result =3D (((__const unsigned char=
  *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char=
  *) ("power4"))[1]); if (__s1_len > 1 && __result =3D=3D 0) { __result =3D=
  (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsig=
 ned char *) (__const char *) ("power4"))[2]); if (__s1_len > 2 && __resul=
 t =3D=3D 0) __result =3D (((__const unsigned char *) (__const char *) (ar=
 g))[3] - ((__const unsigned char *) (__const char *) ("power4"))[3]); } }=
  __result; })) : (__extension__ ({ __const unsigned char *__s2 =3D (__con=
 st unsigned char *) (__const char *) ("power4"); register int __result =3D=
  (((__const unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (_=
 _s1_len > 0 && __result =3D=3D 0) { __result =3D (((__const unsigned char=
  *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result =3D=
 =3D 0) { __result =3D (((__const unsigned char *) (__const char *) (arg))=
 [2] - __s2[2]); if (__s1_len > 2 && __result =3D=3D 0) __result =3D (((__=
 const unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __resul=
 t; }))) : (__builtin_constant_p ("power4") && ((size_t)(const void *)(("p=
 ower4") + 1) - (size_t)(const void *)("power4") =3D=3D 1) && (__s2_len =3D=
  strlen ("power4"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size=
 _t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) =3D=3D 1) ? (_=
 _extension__ ({ register int __result =3D (((__const unsigned char *) (__=
 const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("po=
 wer4"))[0]); if (__s2_len > 0 && __result =3D=3D 0) { __result =3D (((__c=
 onst unsigned char *) (__const char *) (arg))[1] - ((__const unsigned cha=
 r *) (__const char *) ("power4"))[1]); if (__s2_len > 1 && __result =3D=3D=
  0) { __result =3D (((__const unsigned char *) (__const char *) (arg))[2]=
  - ((__const unsigned char *) (__const char *) ("power4"))[2]); if (__s2_=
 len > 2 && __result =3D=3D 0) __result =3D (((__const unsigned char *) (_=
 _const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("=
 power4"))[3]); } } __result; })) : (__extension__ ({ __const unsigned cha=
 r *__s1 =3D (__const unsigned char *) (__const char *) (arg); register in=
 t __result =3D __s1[0] - ((__const unsigned char *) (__const char *) ("po=
 wer4"))[0]; if (__s2_len > 0 && __result =3D=3D 0) { __result =3D (__s1[1=
 ] - ((__const unsigned char *) (__const char *) ("power4"))[1]); if (__s2=
 _len > 1 && __result =3D=3D 0) { __result =3D (__s1[2] - ((__const unsign=
 ed char *) (__const char *) ("power4"))[2]); if (__s2_len > 2 && __result=
  =3D=3D 0) __result =3D (__s1[3] - ((__const unsigned char *) (__const ch=
 ar *) ("power4"))[3]); } } __result; }))) : strcmp (arg, "power4")))); })=
  =3D=3D 0)
         {
           ppc_cpu =3D (01) | (020) | (020000);
         }
 
 
 
       else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_con=
 stant_p (arg) && __builtin_constant_p ("com") && (__s1_len =3D strlen (ar=
 g), __s2_len =3D strlen ("com"), (!((size_t)(const void *)((arg) + 1) - (=
 size_t)(const void *)(arg) =3D=3D 1) || __s1_len >=3D 4) && (!((size_t)(c=
 onst void *)(("com") + 1) - (size_t)(const void *)("com") =3D=3D 1) || __=
 s2_len >=3D 4)) ? memcmp ((__const char *) (arg), (__const char *) ("com"=
 ), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant=
 _p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(a=
 rg) =3D=3D 1) && (__s1_len =3D strlen (arg), __s1_len < 4) ? (__builtin_c=
 onstant_p ("com") && ((size_t)(const void *)(("com") + 1) - (size_t)(cons=
 t void *)("com") =3D=3D 1) ? (__extension__ ({ register int __result =3D =
 (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsign=
 ed char *) (__const char *)("com"))[0]); if (__s1_len > 0 && __result =3D=
 =3D 0) { __result =3D (((__const unsigned char *) (__const char *) (arg))=
 [1] - ((__const unsigned char *) (__const char *) ("com"))[1]); if (__s1_=
 len > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) =
 (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) =
 ("com"))[2]); if (__s1_len > 2 && __result =3D=3D 0) __result =3D (((__co=
 nst unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char=
  *) (__const char *) ("com"))[3]); } } __result; })) : (__extension__ ({ =
 __const unsigned char *__s2 =3D (__const unsigned char *) (__const char *=
 ) ("com"); register int __result =3D (((__const unsigned char *) (__const=
  char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result =3D=3D 0) { _=
 _result =3D (((__const unsigned char *) (__const char *) (arg))[1] - __s2=
 [1]); if (__s1_len > 1 && __result =3D=3D 0) { __result =3D (((__const un=
 signed char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 &&=
  __result =3D=3D 0) __result =3D (((__const unsigned char *) (__const cha=
 r *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("c=
 om") && ((size_t)(const void *)(("com") + 1) - (size_t)(const void *)("co=
 m") =3D=3D 1) && (__s2_len =3D strlen ("com"), __s2_len < 4) ? (__builtin=
 _constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const =
 void *)(arg) =3D=3D 1) ? (__extension__ ({ register int __result =3D (((_=
 _const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned c=
 har *) (__const char *)("com"))[0]); if (__s2_len > 0 && __result =3D=3D =
 0) { __result =3D (((__const unsigned char *) (__const char *) (arg))[1] =
 - ((__const unsigned char *) (__const char *) ("com"))[1]); if (__s2_len =
 > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__c=
 onst char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("co=
 m"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __result =3D (((__const =
 unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) =
 (__const char *) ("com"))[3]); } } __result; })) : (__extension__ ({ __co=
 nst unsigned char *__s1 =3D (__const unsigned char *) (__const char *) (a=
 rg); register int __result =3D __s1[0] - ((__const unsigned char *) (__co=
 nst char *) ("com"))[0]; if (__s2_len > 0 && __result =3D=3D 0) { __resul=
 t =3D (__s1[1] - ((__const unsigned char *) (__const char *) ("com"))[1])=
 ; if (__s2_len > 1 && __result =3D=3D 0) { __result =3D (__s1[2] - ((__co=
 nst unsigned char *) (__const char *) ("com"))[2]); if (__s2_len > 2 && _=
 _result =3D=3D 0) __result =3D (__s1[3] - ((__const unsigned char *) (__c=
 onst char *) ("com"))[3]); } } __result; }))) : strcmp (arg, "com")))); }=
 ) =3D=3D 0)
         ppc_cpu =3D (0100) | (010);
 
       else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_con=
 stant_p (arg) && __builtin_constant_p ("any") && (__s1_len =3D strlen (ar=
 g), __s2_len =3D strlen ("any"), (!((size_t)(const void *)((arg) + 1) - (=
 size_t)(const void *)(arg) =3D=3D 1) || __s1_len >=3D 4) && (!((size_t)(c=
 onst void *)(("any") + 1) - (size_t)(const void *)("any") =3D=3D 1) || __=
 s2_len >=3D 4)) ? memcmp ((__const char *) (arg), (__const char *) ("any"=
 ), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant=
 _p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(a=
 rg) =3D=3D 1) && (__s1_len =3D strlen (arg), __s1_len < 4) ? (__builtin_c=
 onstant_p ("any") && ((size_t)(const void *)(("any") + 1) - (size_t)(cons=
 t void *)("any") =3D=3D 1) ? (__extension__ ({ register int __result =3D =
 (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsign=
 ed char *) (__const char *)("any"))[0]); if (__s1_len > 0 && __result =3D=
 =3D 0) { __result =3D (((__const unsigned char *) (__const char *) (arg))=
 [1] - ((__const unsigned char *) (__const char *) ("any"))[1]); if (__s1_=
 len > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) =
 (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) =
 ("any"))[2]); if (__s1_len > 2 && __result =3D=3D 0) __result =3D (((__co=
 nst unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char=
  *) (__const char *) ("any"))[3]); } } __result; })) : (__extension__ ({ =
 __const unsigned char *__s2 =3D (__const unsigned char *) (__const char *=
 ) ("any"); register int __result =3D (((__const unsigned char *) (__const=
  char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result =3D=3D 0) { _=
 _result =3D (((__const unsigned char *) (__const char *) (arg))[1] - __s2=
 [1]); if (__s1_len > 1 && __result =3D=3D 0) { __result =3D (((__const un=
 signed char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 &&=
  __result =3D=3D 0) __result =3D (((__const unsigned char *) (__const cha=
 r *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("a=
 ny") && ((size_t)(const void *)(("any") + 1) - (size_t)(const void *)("an=
 y") =3D=3D 1) && (__s2_len =3D strlen ("any"), __s2_len < 4) ? (__builtin=
 _constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const =
 void *)(arg) =3D=3D 1) ? (__extension__ ({ register int __result =3D (((_=
 _const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned c=
 har *) (__const char *)("any"))[0]); if (__s2_len > 0 && __result =3D=3D =
 0) { __result =3D (((__const unsigned char *) (__const char *) (arg))[1] =
 - ((__const unsigned char *) (__const char *) ("any"))[1]); if (__s2_len =
 > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__c=
 onst char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("an=
 y"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __result =3D (((__const =
 unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) =
 (__const char *) ("any"))[3]); } } __result; })) : (__extension__ ({ __co=
 nst unsigned char *__s1 =3D (__const unsigned char *) (__const char *) (a=
 rg); register int __result =3D __s1[0] - ((__const unsigned char *) (__co=
 nst char *) ("any"))[0]; if (__s2_len > 0 && __result =3D=3D 0) { __resul=
 t =3D (__s1[1] - ((__const unsigned char *) (__const char *) ("any"))[1])=
 ; if (__s2_len > 1 && __result =3D=3D 0) { __result =3D (__s1[2] - ((__co=
 nst unsigned char *) (__const char *) ("any"))[2]); if (__s2_len > 2 && _=
 _result =3D=3D 0) __result =3D (__s1[3] - ((__const unsigned char *) (__c=
 onst char *) ("any"))[3]); } } __result; }))) : strcmp (arg, "any")))); }=
 ) =3D=3D 0)
         ppc_cpu =3D (0200) | (010);
 
       else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_con=
 stant_p (arg) && __builtin_constant_p ("regnames") && (__s1_len =3D strle=
 n (arg), __s2_len =3D strlen ("regnames"), (!((size_t)(const void *)((arg=
 ) + 1) - (size_t)(const void *)(arg) =3D=3D 1) || __s1_len >=3D 4) && (!(=
 (size_t)(const void *)(("regnames") + 1) - (size_t)(const void *)("regnam=
 es") =3D=3D 1) || __s2_len >=3D 4)) ? memcmp ((__const char *) (arg), (__=
 const char *) ("regnames"), (__s1_len < __s2_len ? __s1_len : __s2_len) +=
  1) : (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) -=
  (size_t)(const void *)(arg) =3D=3D 1) && (__s1_len =3D strlen (arg), __s=
 1_len < 4) ? (__builtin_constant_p ("regnames") && ((size_t)(const void *=
 )(("regnames") + 1) - (size_t)(const void *)("regnames") =3D=3D 1) ? (__e=
 xtension__ ({ register int __result =3D (((__const unsigned char *) (__co=
 nst char *) (arg))[0] - ((__const unsigned char *) (__const char *)("regn=
 ames"))[0]); if (__s1_len > 0 && __result =3D=3D 0) { __result =3D (((__c=
 onst unsigned char *) (__const char *) (arg))[1] - ((__const unsigned cha=
 r *) (__const char *) ("regnames"))[1]); if (__s1_len > 1 && __result =3D=
 =3D 0) { __result =3D (((__const unsigned char *) (__const char *) (arg))=
 [2] - ((__const unsigned char *) (__const char *) ("regnames"))[2]); if (=
 __s1_len > 2 && __result =3D=3D 0) __result =3D (((__const unsigned char =
 *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char =
 *) ("regnames"))[3]); } } __result; })) : (__extension__ ({ __const unsig=
 ned char *__s2 =3D (__const unsigned char *) (__const char *) ("regnames"=
 ); register int __result =3D (((__const unsigned char *) (__const char *)=
  (arg))[0] - __s2[0]); if (__s1_len > 0 && __result =3D=3D 0) { __result =
 =3D (((__const unsigned char *) (__const char *) (arg))[1] - __s2[1]); if=
  (__s1_len > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned c=
 har *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __resul=
 t =3D=3D 0) __result =3D (((__const unsigned char *) (__const char *) (ar=
 g))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("regnames"=
 ) && ((size_t)(const void *)(("regnames") + 1) - (size_t)(const void *)("=
 regnames") =3D=3D 1) && (__s2_len =3D strlen ("regnames"), __s2_len < 4) =
 ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (si=
 ze_t)(const void *)(arg) =3D=3D 1) ? (__extension__ ({ register int __res=
 ult =3D (((__const unsigned char *) (__const char *) (arg))[0] - ((__cons=
 t unsigned char *) (__const char *)("regnames"))[0]); if (__s2_len > 0 &&=
  __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__const c=
 har *) (arg))[1] - ((__const unsigned char *) (__const char *) ("regnames=
 "))[1]); if (__s2_len > 1 && __result =3D=3D 0) { __result =3D (((__const=
  unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *)=
  (__const char *) ("regnames"))[2]); if (__s2_len > 2 && __result =3D=3D =
 0) __result =3D (((__const unsigned char *) (__const char *) (arg))[3] - =
 ((__const unsigned char *) (__const char *) ("regnames"))[3]); } } __resu=
 lt; })) : (__extension__ ({ __const unsigned char *__s1 =3D (__const unsi=
 gned char *) (__const char *) (arg); register int __result =3D __s1[0] - =
 ((__const unsigned char *) (__const char *) ("regnames"))[0]; if (__s2_le=
 n > 0 && __result =3D=3D 0) { __result =3D (__s1[1] - ((__const unsigned =
 char *) (__const char *) ("regnames"))[1]); if (__s2_len > 1 && __result =
 =3D=3D 0) { __result =3D (__s1[2] - ((__const unsigned char *) (__const c=
 har *) ("regnames"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __result=
  =3D (__s1[3] - ((__const unsigned char *) (__const char *) ("regnames"))=
 [3]); } } __result; }))) : strcmp (arg, "regnames")))); }) =3D=3D 0)
         reg_names_p =3D true;
 
       else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_con=
 stant_p (arg) && __builtin_constant_p ("no-regnames") && (__s1_len =3D st=
 rlen (arg), __s2_len =3D strlen ("no-regnames"), (!((size_t)(const void *=
 )((arg) + 1) - (size_t)(const void *)(arg) =3D=3D 1) || __s1_len >=3D 4) =
 && (!((size_t)(const void *)(("no-regnames") + 1) - (size_t)(const void *=
 )("no-regnames") =3D=3D 1) || __s2_len >=3D 4)) ? memcmp ((__const char *=
 ) (arg), (__const char *) ("no-regnames"), (__s1_len < __s2_len ? __s1_le=
 n : __s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(const void =
 *)((arg) + 1) - (size_t)(const void *)(arg) =3D=3D 1) && (__s1_len =3D st=
 rlen (arg), __s1_len < 4) ? (__builtin_constant_p ("no-regnames") && ((si=
 ze_t)(const void *)(("no-regnames") + 1) - (size_t)(const void *)("no-reg=
 names") =3D=3D 1) ? (__extension__ ({ register int __result =3D (((__cons=
 t unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *=
 ) (__const char *)("no-regnames"))[0]); if (__s1_len > 0 && __result =3D=3D=
  0) { __result =3D (((__const unsigned char *) (__const char *) (arg))[1]=
  - ((__const unsigned char *) (__const char *) ("no-regnames"))[1]); if (=
 __s1_len > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned cha=
 r *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const cha=
 r *) ("no-regnames"))[2]); if (__s1_len > 2 && __result =3D=3D 0) __resul=
 t =3D (((__const unsigned char *) (__const char *) (arg))[3] - ((__const =
 unsigned char *) (__const char *) ("no-regnames"))[3]); } } __result; }))=
  : (__extension__ ({ __const unsigned char *__s2 =3D (__const unsigned ch=
 ar *) (__const char *) ("no-regnames"); register int __result =3D (((__co=
 nst unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len =
 > 0 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__c=
 onst char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result =3D=3D 0)=
  { __result =3D (((__const unsigned char *) (__const char *) (arg))[2] - =
 __s2[2]); if (__s1_len > 2 && __result =3D=3D 0) __result =3D (((__const =
 unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))=
 ) : (__builtin_constant_p ("no-regnames") && ((size_t)(const void *)(("no=
 -regnames") + 1) - (size_t)(const void *)("no-regnames") =3D=3D 1) && (__=
 s2_len =3D strlen ("no-regnames"), __s2_len < 4) ? (__builtin_constant_p =
 (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg)=
  =3D=3D 1) ? (__extension__ ({ register int __result =3D (((__const unsig=
 ned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__co=
 nst char *)("no-regnames"))[0]); if (__s2_len > 0 && __result =3D=3D 0) {=
  __result =3D (((__const unsigned char *) (__const char *) (arg))[1] - ((=
 __const unsigned char *) (__const char *) ("no-regnames"))[1]); if (__s2_=
 len > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) =
 (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) =
 ("no-regnames"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __result =3D=
  (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsig=
 ned char *) (__const char *) ("no-regnames"))[3]); } } __result; })) : (_=
 _extension__ ({ __const unsigned char *__s1 =3D (__const unsigned char *)=
  (__const char *) (arg); register int __result =3D __s1[0] - ((__const un=
 signed char *) (__const char *) ("no-regnames"))[0]; if (__s2_len > 0 && =
 __result =3D=3D 0) { __result =3D (__s1[1] - ((__const unsigned char *) (=
 __const char *) ("no-regnames"))[1]); if (__s2_len > 1 && __result =3D=3D=
  0) { __result =3D (__s1[2] - ((__const unsigned char *) (__const char *)=
  ("no-regnames"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __result =3D=
  (__s1[3] - ((__const unsigned char *) (__const char *) ("no-regnames"))[=
 3]); } } __result; }))) : strcmp (arg, "no-regnames")))); }) =3D=3D 0)
         reg_names_p =3D false;
 
 
 
 
       else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_con=
 stant_p (arg) && __builtin_constant_p ("relocatable") && (__s1_len =3D st=
 rlen (arg), __s2_len =3D strlen ("relocatable"), (!((size_t)(const void *=
 )((arg) + 1) - (size_t)(const void *)(arg) =3D=3D 1) || __s1_len >=3D 4) =
 && (!((size_t)(const void *)(("relocatable") + 1) - (size_t)(const void *=
 )("relocatable") =3D=3D 1) || __s2_len >=3D 4)) ? memcmp ((__const char *=
 ) (arg), (__const char *) ("relocatable"), (__s1_len < __s2_len ? __s1_le=
 n : __s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(const void =
 *)((arg) + 1) - (size_t)(const void *)(arg) =3D=3D 1) && (__s1_len =3D st=
 rlen (arg), __s1_len < 4) ? (__builtin_constant_p ("relocatable") && ((si=
 ze_t)(const void *)(("relocatable") + 1) - (size_t)(const void *)("reloca=
 table") =3D=3D 1) ? (__extension__ ({ register int __result =3D (((__cons=
 t unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *=
 ) (__const char *)("relocatable"))[0]); if (__s1_len > 0 && __result =3D=3D=
  0) { __result =3D (((__const unsigned char *) (__const char *) (arg))[1]=
  - ((__const unsigned char *) (__const char *) ("relocatable"))[1]); if (=
 __s1_len > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned cha=
 r *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const cha=
 r *) ("relocatable"))[2]); if (__s1_len > 2 && __result =3D=3D 0) __resul=
 t =3D (((__const unsigned char *) (__const char *) (arg))[3] - ((__const =
 unsigned char *) (__const char *) ("relocatable"))[3]); } } __result; }))=
  : (__extension__ ({ __const unsigned char *__s2 =3D (__const unsigned ch=
 ar *) (__const char *) ("relocatable"); register int __result =3D (((__co=
 nst unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len =
 > 0 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__c=
 onst char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result =3D=3D 0)=
  { __result =3D (((__const unsigned char *) (__const char *) (arg))[2] - =
 __s2[2]); if (__s1_len > 2 && __result =3D=3D 0) __result =3D (((__const =
 unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))=
 ) : (__builtin_constant_p ("relocatable") && ((size_t)(const void *)(("re=
 locatable") + 1) - (size_t)(const void *)("relocatable") =3D=3D 1) && (__=
 s2_len =3D strlen ("relocatable"), __s2_len < 4) ? (__builtin_constant_p =
 (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg)=
  =3D=3D 1) ? (__extension__ ({ register int __result =3D (((__const unsig=
 ned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__co=
 nst char *)("relocatable"))[0]); if (__s2_len > 0 && __result =3D=3D 0) {=
  __result =3D (((__const unsigned char *) (__const char *) (arg))[1] - ((=
 __const unsigned char *) (__const char *) ("relocatable"))[1]); if (__s2_=
 len > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) =
 (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) =
 ("relocatable"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __result =3D=
  (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsig=
 ned char *) (__const char *) ("relocatable"))[3]); } } __result; })) : (_=
 _extension__ ({ __const unsigned char *__s1 =3D (__const unsigned char *)=
  (__const char *) (arg); register int __result =3D __s1[0] - ((__const un=
 signed char *) (__const char *) ("relocatable"))[0]; if (__s2_len > 0 && =
 __result =3D=3D 0) { __result =3D (__s1[1] - ((__const unsigned char *) (=
 __const char *) ("relocatable"))[1]); if (__s2_len > 1 && __result =3D=3D=
  0) { __result =3D (__s1[2] - ((__const unsigned char *) (__const char *)=
  ("relocatable"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __result =3D=
  (__s1[3] - ((__const unsigned char *) (__const char *) ("relocatable"))[=
 3]); } } __result; }))) : strcmp (arg, "relocatable")))); }) =3D=3D 0)
         {
           shlib =3D SHLIB_MRELOCATABLE;
           ppc_flags |=3D 0x00010000;
         }
 
       else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_con=
 stant_p (arg) && __builtin_constant_p ("relocatable-lib") && (__s1_len =3D=
  strlen (arg), __s2_len =3D strlen ("relocatable-lib"), (!((size_t)(const=
  void *)((arg) + 1) - (size_t)(const void *)(arg) =3D=3D 1) || __s1_len >=
 =3D 4) && (!((size_t)(const void *)(("relocatable-lib") + 1) - (size_t)(c=
 onst void *)("relocatable-lib") =3D=3D 1) || __s2_len >=3D 4)) ? memcmp (=
 (__const char *) (arg), (__const char *) ("relocatable-lib"), (__s1_len <=
  __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && ((=
 size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) =3D=3D 1) =
 && (__s1_len =3D strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("re=
 locatable-lib") && ((size_t)(const void *)(("relocatable-lib") + 1) - (si=
 ze_t)(const void *)("relocatable-lib") =3D=3D 1) ? (__extension__ ({ regi=
 ster int __result =3D (((__const unsigned char *) (__const char *) (arg))=
 [0] - ((__const unsigned char *) (__const char *)("relocatable-lib"))[0])=
 ; if (__s1_len > 0 && __result =3D=3D 0) { __result =3D (((__const unsign=
 ed char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__con=
 st char *) ("relocatable-lib"))[1]); if (__s1_len > 1 && __result =3D=3D =
 0) { __result =3D (((__const unsigned char *) (__const char *) (arg))[2] =
 - ((__const unsigned char *) (__const char *) ("relocatable-lib"))[2]); i=
 f (__s1_len > 2 && __result =3D=3D 0) __result =3D (((__const unsigned ch=
 ar *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const ch=
 ar *) ("relocatable-lib"))[3]); } } __result; })) : (__extension__ ({ __c=
 onst unsigned char *__s2 =3D (__const unsigned char *) (__const char *) (=
 "relocatable-lib"); register int __result =3D (((__const unsigned char *)=
  (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result =3D=3D=
  0) { __result =3D (((__const unsigned char *) (__const char *) (arg))[1]=
  - __s2[1]); if (__s1_len > 1 && __result =3D=3D 0) { __result =3D (((__c=
 onst unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len=
  > 2 && __result =3D=3D 0) __result =3D (((__const unsigned char *) (__co=
 nst char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constan=
 t_p ("relocatable-lib") && ((size_t)(const void *)(("relocatable-lib") + =
 1) - (size_t)(const void *)("relocatable-lib") =3D=3D 1) && (__s2_len =3D=
  strlen ("relocatable-lib"), __s2_len < 4) ? (__builtin_constant_p (arg) =
 && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) =3D=3D=
  1) ? (__extension__ ({ register int __result =3D (((__const unsigned cha=
 r *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const cha=
 r *)("relocatable-lib"))[0]); if (__s2_len > 0 && __result =3D=3D 0) { __=
 result =3D (((__const unsigned char *) (__const char *) (arg))[1] - ((__c=
 onst unsigned char *) (__const char *) ("relocatable-lib"))[1]); if (__s2=
 _len > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned char *)=
  (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *)=
  ("relocatable-lib"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __resul=
 t =3D (((__const unsigned char *) (__const char *) (arg))[3] - ((__const =
 unsigned char *) (__const char *) ("relocatable-lib"))[3]); } } __result;=
  })) : (__extension__ ({ __const unsigned char *__s1 =3D (__const unsigne=
 d char *) (__const char *) (arg); register int __result =3D __s1[0] - ((_=
 _const unsigned char *) (__const char *) ("relocatable-lib"))[0]; if (__s=
 2_len > 0 && __result =3D=3D 0) { __result =3D (__s1[1] - ((__const unsig=
 ned char *) (__const char *) ("relocatable-lib"))[1]); if (__s2_len > 1 &=
 & __result =3D=3D 0) { __result =3D (__s1[2] - ((__const unsigned char *)=
  (__const char *) ("relocatable-lib"))[2]); if (__s2_len > 2 && __result =
 =3D=3D 0) __result =3D (__s1[3] - ((__const unsigned char *) (__const cha=
 r *) ("relocatable-lib"))[3]); } } __result; }))) : strcmp (arg, "relocat=
 able-lib")))); }) =3D=3D 0)
         {
           shlib =3D SHLIB_MRELOCATABLE;
           ppc_flags |=3D 0x00008000;
         }
 
 
       else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_con=
 stant_p (arg) && __builtin_constant_p ("emb") && (__s1_len =3D strlen (ar=
 g), __s2_len =3D strlen ("emb"), (!((size_t)(const void *)((arg) + 1) - (=
 size_t)(const void *)(arg) =3D=3D 1) || __s1_len >=3D 4) && (!((size_t)(c=
 onst void *)(("emb") + 1) - (size_t)(const void *)("emb") =3D=3D 1) || __=
 s2_len >=3D 4)) ? memcmp ((__const char *) (arg), (__const char *) ("emb"=
 ), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant=
 _p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(a=
 rg) =3D=3D 1) && (__s1_len =3D strlen (arg), __s1_len < 4) ? (__builtin_c=
 onstant_p ("emb") && ((size_t)(const void *)(("emb") + 1) - (size_t)(cons=
 t void *)("emb") =3D=3D 1) ? (__extension__ ({ register int __result =3D =
 (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsign=
 ed char *) (__const char *)("emb"))[0]); if (__s1_len > 0 && __result =3D=
 =3D 0) { __result =3D (((__const unsigned char *) (__const char *) (arg))=
 [1] - ((__const unsigned char *) (__const char *) ("emb"))[1]); if (__s1_=
 len > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) =
 (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) =
 ("emb"))[2]); if (__s1_len > 2 && __result =3D=3D 0) __result =3D (((__co=
 nst unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char=
  *) (__const char *) ("emb"))[3]); } } __result; })) : (__extension__ ({ =
 __const unsigned char *__s2 =3D (__const unsigned char *) (__const char *=
 ) ("emb"); register int __result =3D (((__const unsigned char *) (__const=
  char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result =3D=3D 0) { _=
 _result =3D (((__const unsigned char *) (__const char *) (arg))[1] - __s2=
 [1]); if (__s1_len > 1 && __result =3D=3D 0) { __result =3D (((__const un=
 signed char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 &&=
  __result =3D=3D 0) __result =3D (((__const unsigned char *) (__const cha=
 r *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("e=
 mb") && ((size_t)(const void *)(("emb") + 1) - (size_t)(const void *)("em=
 b") =3D=3D 1) && (__s2_len =3D strlen ("emb"), __s2_len < 4) ? (__builtin=
 _constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const =
 void *)(arg) =3D=3D 1) ? (__extension__ ({ register int __result =3D (((_=
 _const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned c=
 har *) (__const char *)("emb"))[0]); if (__s2_len > 0 && __result =3D=3D =
 0) { __result =3D (((__const unsigned char *) (__const char *) (arg))[1] =
 - ((__const unsigned char *) (__const char *) ("emb"))[1]); if (__s2_len =
 > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__c=
 onst char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("em=
 b"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __result =3D (((__const =
 unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) =
 (__const char *) ("emb"))[3]); } } __result; })) : (__extension__ ({ __co=
 nst unsigned char *__s1 =3D (__const unsigned char *) (__const char *) (a=
 rg); register int __result =3D __s1[0] - ((__const unsigned char *) (__co=
 nst char *) ("emb"))[0]; if (__s2_len > 0 && __result =3D=3D 0) { __resul=
 t =3D (__s1[1] - ((__const unsigned char *) (__const char *) ("emb"))[1])=
 ; if (__s2_len > 1 && __result =3D=3D 0) { __result =3D (__s1[2] - ((__co=
 nst unsigned char *) (__const char *) ("emb"))[2]); if (__s2_len > 2 && _=
 _result =3D=3D 0) __result =3D (__s1[3] - ((__const unsigned char *) (__c=
 onst char *) ("emb"))[3]); } } __result; }))) : strcmp (arg, "emb")))); }=
 ) =3D=3D 0)
         ppc_flags |=3D 0x80000000;
 
 
       else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_con=
 stant_p (arg) && __builtin_constant_p ("little") && (__s1_len =3D strlen =
 (arg), __s2_len =3D strlen ("little"), (!((size_t)(const void *)((arg) + =
 1) - (size_t)(const void *)(arg) =3D=3D 1) || __s1_len >=3D 4) && (!((siz=
 e_t)(const void *)(("little") + 1) - (size_t)(const void *)("little") =3D=
 =3D 1) || __s2_len >=3D 4)) ? memcmp ((__const char *) (arg), (__const ch=
 ar *) ("little"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__b=
 uiltin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(=
 const void *)(arg) =3D=3D 1) && (__s1_len =3D strlen (arg), __s1_len < 4)=
  ? (__builtin_constant_p ("little") && ((size_t)(const void *)(("little")=
  + 1) - (size_t)(const void *)("little") =3D=3D 1) ? (__extension__ ({ re=
 gister int __result =3D (((__const unsigned char *) (__const char *) (arg=
 ))[0] - ((__const unsigned char *) (__const char *)("little"))[0]); if (_=
 _s1_len > 0 && __result =3D=3D 0) { __result =3D (((__const unsigned char=
  *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char=
  *) ("little"))[1]); if (__s1_len > 1 && __result =3D=3D 0) { __result =3D=
  (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsig=
 ned char *) (__const char *) ("little"))[2]); if (__s1_len > 2 && __resul=
 t =3D=3D 0) __result =3D (((__const unsigned char *) (__const char *) (ar=
 g))[3] - ((__const unsigned char *) (__const char *) ("little"))[3]); } }=
  __result; })) : (__extension__ ({ __const unsigned char *__s2 =3D (__con=
 st unsigned char *) (__const char *) ("little"); register int __result =3D=
  (((__const unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (_=
 _s1_len > 0 && __result =3D=3D 0) { __result =3D (((__const unsigned char=
  *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result =3D=
 =3D 0) { __result =3D (((__const unsigned char *) (__const char *) (arg))=
 [2] - __s2[2]); if (__s1_len > 2 && __result =3D=3D 0) __result =3D (((__=
 const unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __resul=
 t; }))) : (__builtin_constant_p ("little") && ((size_t)(const void *)(("l=
 ittle") + 1) - (size_t)(const void *)("little") =3D=3D 1) && (__s2_len =3D=
  strlen ("little"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size=
 _t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) =3D=3D 1) ? (_=
 _extension__ ({ register int __result =3D (((__const unsigned char *) (__=
 const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("li=
 ttle"))[0]); if (__s2_len > 0 && __result =3D=3D 0) { __result =3D (((__c=
 onst unsigned char *) (__const char *) (arg))[1] - ((__const unsigned cha=
 r *) (__const char *) ("little"))[1]); if (__s2_len > 1 && __result =3D=3D=
  0) { __result =3D (((__const unsigned char *) (__const char *) (arg))[2]=
  - ((__const unsigned char *) (__const char *) ("little"))[2]); if (__s2_=
 len > 2 && __result =3D=3D 0) __result =3D (((__const unsigned char *) (_=
 _const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("=
 little"))[3]); } } __result; })) : (__extension__ ({ __const unsigned cha=
 r *__s1 =3D (__const unsigned char *) (__const char *) (arg); register in=
 t __result =3D __s1[0] - ((__const unsigned char *) (__const char *) ("li=
 ttle"))[0]; if (__s2_len > 0 && __result =3D=3D 0) { __result =3D (__s1[1=
 ] - ((__const unsigned char *) (__const char *) ("little"))[1]); if (__s2=
 _len > 1 && __result =3D=3D 0) { __result =3D (__s1[2] - ((__const unsign=
 ed char *) (__const char *) ("little"))[2]); if (__s2_len > 2 && __result=
  =3D=3D 0) __result =3D (__s1[3] - ((__const unsigned char *) (__const ch=
 ar *) ("little"))[3]); } } __result; }))) : strcmp (arg, "little")))); })=
  =3D=3D 0
                || __extension__ ({ size_t __s1_len, __s2_len; (__builtin_=
 constant_p (arg) && __builtin_constant_p ("little-endian") && (__s1_len =3D=
  strlen (arg), __s2_len =3D strlen ("little-endian"), (!((size_t)(const v=
 oid *)((arg) + 1) - (size_t)(const void *)(arg) =3D=3D 1) || __s1_len >=3D=
  4) && (!((size_t)(const void *)(("little-endian") + 1) - (size_t)(const =
 void *)("little-endian") =3D=3D 1) || __s2_len >=3D 4)) ? memcmp ((__cons=
 t char *) (arg), (__const char *) ("little-endian"), (__s1_len < __s2_len=
  ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(c=
 onst void *)((arg) + 1) - (size_t)(const void *)(arg) =3D=3D 1) && (__s1_=
 len =3D strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("little-endi=
 an") && ((size_t)(const void *)(("little-endian") + 1) - (size_t)(const v=
 oid *)("little-endian") =3D=3D 1) ? (__extension__ ({ register int __resu=
 lt =3D (((__const unsigned char *) (__const char *) (arg))[0] - ((__const=
  unsigned char *) (__const char *)("little-endian"))[0]); if (__s1_len > =
 0 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__con=
 st char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("litt=
 le-endian"))[1]); if (__s1_len > 1 && __result =3D=3D 0) { __result =3D (=
 ((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigne=
 d char *) (__const char *) ("little-endian"))[2]); if (__s1_len > 2 && __=
 result =3D=3D 0) __result =3D (((__const unsigned char *) (__const char *=
 ) (arg))[3] - ((__const unsigned char *) (__const char *) ("little-endian=
 "))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s=
 2 =3D (__const unsigned char *) (__const char *) ("little-endian"); regis=
 ter int __result =3D (((__const unsigned char *) (__const char *) (arg))[=
 0] - __s2[0]); if (__s1_len > 0 && __result =3D=3D 0) { __result =3D (((_=
 _const unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_l=
 en > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (=
 __const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result =3D=3D=
  0) __result =3D (((__const unsigned char *) (__const char *) (arg))[3] -=
  __s2[3]); } } __result; }))) : (__builtin_constant_p ("little-endian") &=
 & ((size_t)(const void *)(("little-endian") + 1) - (size_t)(const void *)=
 ("little-endian") =3D=3D 1) && (__s2_len =3D strlen ("little-endian"), __=
 s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg=
 ) + 1) - (size_t)(const void *)(arg) =3D=3D 1) ? (__extension__ ({ regist=
 er int __result =3D (((__const unsigned char *) (__const char *) (arg))[0=
 ] - ((__const unsigned char *) (__const char *)("little-endian"))[0]); if=
  (__s2_len > 0 && __result =3D=3D 0) { __result =3D (((__const unsigned c=
 har *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const c=
 har *) ("little-endian"))[1]); if (__s2_len > 1 && __result =3D=3D 0) { _=
 _result =3D (((__const unsigned char *) (__const char *) (arg))[2] - ((__=
 const unsigned char *) (__const char *) ("little-endian"))[2]); if (__s2_=
 len > 2 && __result =3D=3D 0) __result =3D (((__const unsigned char *) (_=
 _const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("=
 little-endian"))[3]); } } __result; })) : (__extension__ ({ __const unsig=
 ned char *__s1 =3D (__const unsigned char *) (__const char *) (arg); regi=
 ster int __result =3D __s1[0] - ((__const unsigned char *) (__const char =
 *) ("little-endian"))[0]; if (__s2_len > 0 && __result =3D=3D 0) { __resu=
 lt =3D (__s1[1] - ((__const unsigned char *) (__const char *) ("little-en=
 dian"))[1]); if (__s2_len > 1 && __result =3D=3D 0) { __result =3D (__s1[=
 2] - ((__const unsigned char *) (__const char *) ("little-endian"))[2]); =
 if (__s2_len > 2 && __result =3D=3D 0) __result =3D (__s1[3] - ((__const =
 unsigned char *) (__const char *) ("little-endian"))[3]); } } __result; }=
 ))) : strcmp (arg, "little-endian")))); }) =3D=3D 0)
         {
           target_big_endian =3D 0;
           set_target_endian =3D 1;
         }
 
       else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_con=
 stant_p (arg) && __builtin_constant_p ("big") && (__s1_len =3D strlen (ar=
 g), __s2_len =3D strlen ("big"), (!((size_t)(const void *)((arg) + 1) - (=
 size_t)(const void *)(arg) =3D=3D 1) || __s1_len >=3D 4) && (!((size_t)(c=
 onst void *)(("big") + 1) - (size_t)(const void *)("big") =3D=3D 1) || __=
 s2_len >=3D 4)) ? memcmp ((__const char *) (arg), (__const char *) ("big"=
 ), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant=
 _p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(a=
 rg) =3D=3D 1) && (__s1_len =3D strlen (arg), __s1_len < 4) ? (__builtin_c=
 onstant_p ("big") && ((size_t)(const void *)(("big") + 1) - (size_t)(cons=
 t void *)("big") =3D=3D 1) ? (__extension__ ({ register int __result =3D =
 (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsign=
 ed char *) (__const char *)("big"))[0]); if (__s1_len > 0 && __result =3D=
 =3D 0) { __result =3D (((__const unsigned char *) (__const char *) (arg))=
 [1] - ((__const unsigned char *) (__const char *) ("big"))[1]); if (__s1_=
 len > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) =
 (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) =
 ("big"))[2]); if (__s1_len > 2 && __result =3D=3D 0) __result =3D (((__co=
 nst unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char=
  *) (__const char *) ("big"))[3]); } } __result; })) : (__extension__ ({ =
 __const unsigned char *__s2 =3D (__const unsigned char *) (__const char *=
 ) ("big"); register int __result =3D (((__const unsigned char *) (__const=
  char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result =3D=3D 0) { _=
 _result =3D (((__const unsigned char *) (__const char *) (arg))[1] - __s2=
 [1]); if (__s1_len > 1 && __result =3D=3D 0) { __result =3D (((__const un=
 signed char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 &&=
  __result =3D=3D 0) __result =3D (((__const unsigned char *) (__const cha=
 r *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("b=
 ig") && ((size_t)(const void *)(("big") + 1) - (size_t)(const void *)("bi=
 g") =3D=3D 1) && (__s2_len =3D strlen ("big"), __s2_len < 4) ? (__builtin=
 _constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const =
 void *)(arg) =3D=3D 1) ? (__extension__ ({ register int __result =3D (((_=
 _const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned c=
 har *) (__const char *)("big"))[0]); if (__s2_len > 0 && __result =3D=3D =
 0) { __result =3D (((__const unsigned char *) (__const char *) (arg))[1] =
 - ((__const unsigned char *) (__const char *) ("big"))[1]); if (__s2_len =
 > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__c=
 onst char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("bi=
 g"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __result =3D (((__const =
 unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) =
 (__const char *) ("big"))[3]); } } __result; })) : (__extension__ ({ __co=
 nst unsigned char *__s1 =3D (__const unsigned char *) (__const char *) (a=
 rg); register int __result =3D __s1[0] - ((__const unsigned char *) (__co=
 nst char *) ("big"))[0]; if (__s2_len > 0 && __result =3D=3D 0) { __resul=
 t =3D (__s1[1] - ((__const unsigned char *) (__const char *) ("big"))[1])=
 ; if (__s2_len > 1 && __result =3D=3D 0) { __result =3D (__s1[2] - ((__co=
 nst unsigned char *) (__const char *) ("big"))[2]); if (__s2_len > 2 && _=
 _result =3D=3D 0) __result =3D (__s1[3] - ((__const unsigned char *) (__c=
 onst char *) ("big"))[3]); } } __result; }))) : strcmp (arg, "big")))); }=
 ) =3D=3D 0 || __extension__ ({ size_t __s1_len, __s2_len; (__builtin_cons=
 tant_p (arg) && __builtin_constant_p ("big-endian") && (__s1_len =3D strl=
 en (arg), __s2_len =3D strlen ("big-endian"), (!((size_t)(const void *)((=
 arg) + 1) - (size_t)(const void *)(arg) =3D=3D 1) || __s1_len >=3D 4) && =
 (!((size_t)(const void *)(("big-endian") + 1) - (size_t)(const void *)("b=
 ig-endian") =3D=3D 1) || __s2_len >=3D 4)) ? memcmp ((__const char *) (ar=
 g), (__const char *) ("big-endian"), (__s1_len < __s2_len ? __s1_len : __=
 s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(const void *)((ar=
 g) + 1) - (size_t)(const void *)(arg) =3D=3D 1) && (__s1_len =3D strlen (=
 arg), __s1_len < 4) ? (__builtin_constant_p ("big-endian") && ((size_t)(c=
 onst void *)(("big-endian") + 1) - (size_t)(const void *)("big-endian") =3D=
 =3D 1) ? (__extension__ ({ register int __result =3D (((__const unsigned =
 char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const =
 char *)("big-endian"))[0]); if (__s1_len > 0 && __result =3D=3D 0) { __re=
 sult =3D (((__const unsigned char *) (__const char *) (arg))[1] - ((__con=
 st unsigned char *) (__const char *) ("big-endian"))[1]); if (__s1_len > =
 1 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__con=
 st char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("big-=
 endian"))[2]); if (__s1_len > 2 && __result =3D=3D 0) __result =3D (((__c=
 onst unsigned char *) (__const char *) (arg))[3] - ((__const unsigned cha=
 r *) (__const char *) ("big-endian"))[3]); } } __result; })) : (__extensi=
 on__ ({ __const unsigned char *__s2 =3D (__const unsigned char *) (__cons=
 t char *) ("big-endian"); register int __result =3D (((__const unsigned c=
 har *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __resul=
 t =3D=3D 0) { __result =3D (((__const unsigned char *) (__const char *) (=
 arg))[1] - __s2[1]); if (__s1_len > 1 && __result =3D=3D 0) { __result =3D=
  (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (_=
 _s1_len > 2 && __result =3D=3D 0) __result =3D (((__const unsigned char *=
 ) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_=
 constant_p ("big-endian") && ((size_t)(const void *)(("big-endian") + 1) =
 - (size_t)(const void *)("big-endian") =3D=3D 1) && (__s2_len =3D strlen =
 ("big-endian"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(=
 const void *)((arg) + 1) - (size_t)(const void *)(arg) =3D=3D 1) ? (__ext=
 ension__ ({ register int __result =3D (((__const unsigned char *) (__cons=
 t char *) (arg))[0] - ((__const unsigned char *) (__const char *)("big-en=
 dian"))[0]); if (__s2_len > 0 && __result =3D=3D 0) { __result =3D (((__c=
 onst unsigned char *) (__const char *) (arg))[1] - ((__const unsigned cha=
 r *) (__const char *) ("big-endian"))[1]); if (__s2_len > 1 && __result =3D=
 =3D 0) { __result =3D (((__const unsigned char *) (__const char *) (arg))=
 [2] - ((__const unsigned char *) (__const char *) ("big-endian"))[2]); if=
  (__s2_len > 2 && __result =3D=3D 0) __result =3D (((__const unsigned cha=
 r *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const cha=
 r *) ("big-endian"))[3]); } } __result; })) : (__extension__ ({ __const u=
 nsigned char *__s1 =3D (__const unsigned char *) (__const char *) (arg); =
 register int __result =3D __s1[0] - ((__const unsigned char *) (__const c=
 har *) ("big-endian"))[0]; if (__s2_len > 0 && __result =3D=3D 0) { __res=
 ult =3D (__s1[1] - ((__const unsigned char *) (__const char *) ("big-endi=
 an"))[1]); if (__s2_len > 1 && __result =3D=3D 0) { __result =3D (__s1[2]=
  - ((__const unsigned char *) (__const char *) ("big-endian"))[2]); if (_=
 _s2_len > 2 && __result =3D=3D 0) __result =3D (__s1[3] - ((__const unsig=
 ned char *) (__const char *) ("big-endian"))[3]); } } __result; }))) : st=
 rcmp (arg, "big-endian")))); }) =3D=3D 0)
         {
           target_big_endian =3D 1;
           set_target_endian =3D 1;
         }
 
       else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_con=
 stant_p (arg) && __builtin_constant_p ("solaris") && (__s1_len =3D strlen=
  (arg), __s2_len =3D strlen ("solaris"), (!((size_t)(const void *)((arg) =
 + 1) - (size_t)(const void *)(arg) =3D=3D 1) || __s1_len >=3D 4) && (!((s=
 ize_t)(const void *)(("solaris") + 1) - (size_t)(const void *)("solaris")=
  =3D=3D 1) || __s2_len >=3D 4)) ? memcmp ((__const char *) (arg), (__cons=
 t char *) ("solaris"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) :=
  (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (siz=
 e_t)(const void *)(arg) =3D=3D 1) && (__s1_len =3D strlen (arg), __s1_len=
  < 4) ? (__builtin_constant_p ("solaris") && ((size_t)(const void *)(("so=
 laris") + 1) - (size_t)(const void *)("solaris") =3D=3D 1) ? (__extension=
 __ ({ register int __result =3D (((__const unsigned char *) (__const char=
  *) (arg))[0] - ((__const unsigned char *) (__const char *)("solaris"))[0=
 ]); if (__s1_len > 0 && __result =3D=3D 0) { __result =3D (((__const unsi=
 gned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__c=
 onst char *) ("solaris"))[1]); if (__s1_len > 1 && __result =3D=3D 0) { _=
 _result =3D (((__const unsigned char *) (__const char *) (arg))[2] - ((__=
 const unsigned char *) (__const char *) ("solaris"))[2]); if (__s1_len > =
 2 && __result =3D=3D 0) __result =3D (((__const unsigned char *) (__const=
  char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("solari=
 s"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__=
 s2 =3D (__const unsigned char *) (__const char *) ("solaris"); register i=
 nt __result =3D (((__const unsigned char *) (__const char *) (arg))[0] - =
 __s2[0]); if (__s1_len > 0 && __result =3D=3D 0) { __result =3D (((__cons=
 t unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > =
 1 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__con=
 st char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result =3D=3D 0) _=
 _result =3D (((__const unsigned char *) (__const char *) (arg))[3] - __s2=
 [3]); } } __result; }))) : (__builtin_constant_p ("solaris") && ((size_t)=
 (const void *)(("solaris") + 1) - (size_t)(const void *)("solaris") =3D=3D=
  1) && (__s2_len =3D strlen ("solaris"), __s2_len < 4) ? (__builtin_const=
 ant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *=
 )(arg) =3D=3D 1) ? (__extension__ ({ register int __result =3D (((__const=
  unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *)=
  (__const char *)("solaris"))[0]); if (__s2_len > 0 && __result =3D=3D 0)=
  { __result =3D (((__const unsigned char *) (__const char *) (arg))[1] - =
 ((__const unsigned char *) (__const char *) ("solaris"))[1]); if (__s2_le=
 n > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (_=
 _const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("=
 solaris"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __result =3D (((__=
 const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned ch=
 ar *) (__const char *) ("solaris"))[3]); } } __result; })) : (__extension=
 __ ({ __const unsigned char *__s1 =3D (__const unsigned char *) (__const =
 char *) (arg); register int __result =3D __s1[0] - ((__const unsigned cha=
 r *) (__const char *) ("solaris"))[0]; if (__s2_len > 0 && __result =3D=3D=
  0) { __result =3D (__s1[1] - ((__const unsigned char *) (__const char *)=
  ("solaris"))[1]); if (__s2_len > 1 && __result =3D=3D 0) { __result =3D =
 (__s1[2] - ((__const unsigned char *) (__const char *) ("solaris"))[2]); =
 if (__s2_len > 2 && __result =3D=3D 0) __result =3D (__s1[3] - ((__const =
 unsigned char *) (__const char *) ("solaris"))[3]); } } __result; }))) : =
 strcmp (arg, "solaris")))); }) =3D=3D 0)
         {
           msolaris =3D true;
           ppc_comment_chars =3D ppc_solaris_comment_chars;
         }
 
       else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_con=
 stant_p (arg) && __builtin_constant_p ("no-solaris") && (__s1_len =3D str=
 len (arg), __s2_len =3D strlen ("no-solaris"), (!((size_t)(const void *)(=
 (arg) + 1) - (size_t)(const void *)(arg) =3D=3D 1) || __s1_len >=3D 4) &&=
  (!((size_t)(const void *)(("no-solaris") + 1) - (size_t)(const void *)("=
 no-solaris") =3D=3D 1) || __s2_len >=3D 4)) ? memcmp ((__const char *) (a=
 rg), (__const char *) ("no-solaris"), (__s1_len < __s2_len ? __s1_len : _=
 _s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(const void *)((a=
 rg) + 1) - (size_t)(const void *)(arg) =3D=3D 1) && (__s1_len =3D strlen =
 (arg), __s1_len < 4) ? (__builtin_constant_p ("no-solaris") && ((size_t)(=
 const void *)(("no-solaris") + 1) - (size_t)(const void *)("no-solaris") =
 =3D=3D 1) ? (__extension__ ({ register int __result =3D (((__const unsign=
 ed char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__con=
 st char *)("no-solaris"))[0]); if (__s1_len > 0 && __result =3D=3D 0) { _=
 _result =3D (((__const unsigned char *) (__const char *) (arg))[1] - ((__=
 const unsigned char *) (__const char *) ("no-solaris"))[1]); if (__s1_len=
  > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__=
 const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("n=
 o-solaris"))[2]); if (__s1_len > 2 && __result =3D=3D 0) __result =3D (((=
 __const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned =
 char *) (__const char *) ("no-solaris"))[3]); } } __result; })) : (__exte=
 nsion__ ({ __const unsigned char *__s2 =3D (__const unsigned char *) (__c=
 onst char *) ("no-solaris"); register int __result =3D (((__const unsigne=
 d char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __re=
 sult =3D=3D 0) { __result =3D (((__const unsigned char *) (__const char *=
 ) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result =3D=3D 0) { __result=
  =3D (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); i=
 f (__s1_len > 2 && __result =3D=3D 0) __result =3D (((__const unsigned ch=
 ar *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__buil=
 tin_constant_p ("no-solaris") && ((size_t)(const void *)(("no-solaris") +=
  1) - (size_t)(const void *)("no-solaris") =3D=3D 1) && (__s2_len =3D str=
 len ("no-solaris"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size=
 _t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) =3D=3D 1) ? (_=
 _extension__ ({ register int __result =3D (((__const unsigned char *) (__=
 const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("no=
 -solaris"))[0]); if (__s2_len > 0 && __result =3D=3D 0) { __result =3D ((=
 (__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned=
  char *) (__const char *) ("no-solaris"))[1]); if (__s2_len > 1 && __resu=
 lt =3D=3D 0) { __result =3D (((__const unsigned char *) (__const char *) =
 (arg))[2] - ((__const unsigned char *) (__const char *) ("no-solaris"))[2=
 ]); if (__s2_len > 2 && __result =3D=3D 0) __result =3D (((__const unsign=
 ed char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__con=
 st char *) ("no-solaris"))[3]); } } __result; })) : (__extension__ ({ __c=
 onst unsigned char *__s1 =3D (__const unsigned char *) (__const char *) (=
 arg); register int __result =3D __s1[0] - ((__const unsigned char *) (__c=
 onst char *) ("no-solaris"))[0]; if (__s2_len > 0 && __result =3D=3D 0) {=
  __result =3D (__s1[1] - ((__const unsigned char *) (__const char *) ("no=
 -solaris"))[1]); if (__s2_len > 1 && __result =3D=3D 0) { __result =3D (_=
 _s1[2] - ((__const unsigned char *) (__const char *) ("no-solaris"))[2]);=
  if (__s2_len > 2 && __result =3D=3D 0) __result =3D (__s1[3] - ((__const=
  unsigned char *) (__const char *) ("no-solaris"))[3]); } } __result; }))=
 ) : strcmp (arg, "no-solaris")))); }) =3D=3D 0)
         {
           msolaris =3D false;
           ppc_comment_chars =3D ppc_eabi_comment_chars;
         }
 
       else
         {
           as_bad (dcgettext (((void *)0), "invalid switch -m%s", __LC_MES=
 SAGES), arg);
           return 0;
         }
       break;
 
 
 
     case 'V':
       print_version_id ();
       break;
 
 
 
     case 'Q':
       break;
 
 
 
 
     case 's':
       if (arg)
         return 0;
 
       break;
 
 
     default:
       return 0;
     }
 
   return 1;
 }
 
 void
 md_show_usage (stream)
      FILE *stream;
 {
   fprintf (stream, dcgettext (((void *)0), "PowerPC options:\n-u=09=09=09=
 ignored\n-mpwrx, -mpwr2=09=09generate code for POWER/2 (RIOS2)\n-mpwr=09=09=
 =09generate code for POWER (RIOS1)\n-m601=09=09=09generate code for Power=
 PC 601\n-mppc, -mppc32, -m603, -m604\n=09=09=09generate code for PowerPC =
 603/604\n-m403, -m405            generate code for PowerPC 403/405\n-m740=
 0, -m7410, -m7450, -m7455\n=09=09=09generate code For PowerPC 7400/7410/7=
 450/7455\n-mppc64, -m620=09=09generate code for PowerPC 620/625/630\n-mpp=
 c64bridge=09=09generate code for PowerPC 64, including bridge insns\n-mbo=
 oke64=09=09generate code for 64-bit PowerPC BookE\n-mbooke, mbooke32=09ge=
 nerate code for 32-bit PowerPC BookE\n-mpower4=09=09generate code for Pow=
 er4 architecture\n-maltivec=09=09generate code for AltiVec\n-mcom=09=09=09=
 generate code Power/PowerPC common instructions\n-many=09=09=09generate c=
 ode for any architecture (PWR/PWRX/PPC)\n-mregnames=09=09Allow symbolic n=
 ames for registers\n-mno-regnames=09=09Do not allow symbolic names for re=
 gisters\n", __LC_MESSAGES));
 # 1041 "../../binutils-2.13.1/gas/config/tc-ppc.c"
   fprintf (stream, dcgettext (((void *)0), "-mrelocatable=09=09support fo=
 r GCC's -mrelocatble option\n-mrelocatable-lib=09support for GCC's -mrelo=
 catble-lib option\n-memb=09=09=09set PPC_EMB bit in ELF flags\n-mlittle, =
 -mlittle-endian\n=09=09=09generate code for a little endian machine\n-mbi=
 g, -mbig-endian=09generate code for a big endian machine\n-msolaris=09=09=
 generate code for Solaris\n-mno-solaris=09=09do not generate code for Sol=
 aris\n-V=09=09=09print assembler version number\n-Qy, -Qn=09=09ignored\n"=
 , __LC_MESSAGES));
 # 1053 "../../binutils-2.13.1/gas/config/tc-ppc.c"
 }
 
 
 
 static void
 ppc_set_cpu ()
 {
   const char *default_os =3D "linux-gnu";
   const char *default_cpu =3D "powerpc";
 
   if (ppc_cpu =3D=3D 0)
     {
       if ((__extension__ (__builtin_constant_p (3) && ((__builtin_constan=
 t_p (default_os) && strlen (default_os) < ((size_t) (3))) || (__builtin_c=
 onstant_p ("aix") && strlen ("aix") < ((size_t) (3)))) ? __extension__ ({=
  size_t __s1_len, __s2_len; (__builtin_constant_p (default_os) && __built=
 in_constant_p ("aix") && (__s1_len =3D strlen (default_os), __s2_len =3D =
 strlen ("aix"), (!((size_t)(const void *)((default_os) + 1) - (size_t)(co=
 nst void *)(default_os) =3D=3D 1) || __s1_len >=3D 4) && (!((size_t)(cons=
 t void *)(("aix") + 1) - (size_t)(const void *)("aix") =3D=3D 1) || __s2_=
 len >=3D 4)) ? memcmp ((__const char *) (default_os), (__const char *) ("=
 aix"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_cons=
 tant_p (default_os) && ((size_t)(const void *)((default_os) + 1) - (size_=
 t)(const void *)(default_os) =3D=3D 1) && (__s1_len =3D strlen (default_o=
 s), __s1_len < 4) ? (__builtin_constant_p ("aix") && ((size_t)(const void=
  *)(("aix") + 1) - (size_t)(const void *)("aix") =3D=3D 1) ? (__extension=
 __ ({ register int __result =3D (((__const unsigned char *) (__const char=
  *) (default_os))[0] - ((__const unsigned char *) (__const char *)("aix")=
 )[0]); if (__s1_len > 0 && __result =3D=3D 0) { __result =3D (((__const u=
 nsigned char *) (__const char *) (default_os))[1] - ((__const unsigned ch=
 ar *) (__const char *) ("aix"))[1]); if (__s1_len > 1 && __result =3D=3D =
 0) { __result =3D (((__const unsigned char *) (__const char *) (default_o=
 s))[2] - ((__const unsigned char *) (__const char *) ("aix"))[2]); if (__=
 s1_len > 2 && __result =3D=3D 0) __result =3D (((__const unsigned char *)=
  (__const char *) (default_os))[3] - ((__const unsigned char *) (__const =
 char *) ("aix"))[3]); } } __result; })) : (__extension__ ({ __const unsig=
 ned char *__s2 =3D (__const unsigned char *) (__const char *) ("aix"); re=
 gister int __result =3D (((__const unsigned char *) (__const char *) (def=
 ault_os))[0] - __s2[0]); if (__s1_len > 0 && __result =3D=3D 0) { __resul=
 t =3D (((__const unsigned char *) (__const char *) (default_os))[1] - __s=
 2[1]); if (__s1_len > 1 && __result =3D=3D 0) { __result =3D (((__const u=
 nsigned char *) (__const char *) (default_os))[2] - __s2[2]); if (__s1_le=
 n > 2 && __result =3D=3D 0) __result =3D (((__const unsigned char *) (__c=
 onst char *) (default_os))[3] - __s2[3]); } } __result; }))) : (__builtin=
 _constant_p ("aix") && ((size_t)(const void *)(("aix") + 1) - (size_t)(co=
 nst void *)("aix") =3D=3D 1) && (__s2_len =3D strlen ("aix"), __s2_len < =
 4) ? (__builtin_constant_p (default_os) && ((size_t)(const void *)((defau=
 lt_os) + 1) - (size_t)(const void *)(default_os) =3D=3D 1) ? (__extension=
 __ ({ register int __result =3D (((__const unsigned char *) (__const char=
  *) (default_os))[0] - ((__const unsigned char *) (__const char *)("aix")=
 )[0]); if (__s2_len > 0 && __result =3D=3D 0) { __result =3D (((__const u=
 nsigned char *) (__const char *) (default_os))[1] - ((__const unsigned ch=
 ar *) (__const char *) ("aix"))[1]); if (__s2_len > 1 && __result =3D=3D =
 0) { __result =3D (((__const unsigned char *) (__const char *) (default_o=
 s))[2] - ((__const unsigned char *) (__const char *) ("aix"))[2]); if (__=
 s2_len > 2 && __result =3D=3D 0) __result =3D (((__const unsigned char *)=
  (__const char *) (default_os))[3] - ((__const unsigned char *) (__const =
 char *) ("aix"))[3]); } } __result; })) : (__extension__ ({ __const unsig=
 ned char *__s1 =3D (__const unsigned char *) (__const char *) (default_os=
 ); register int __result =3D __s1[0] - ((__const unsigned char *) (__cons=
 t char *) ("aix"))[0]; if (__s2_len > 0 && __result =3D=3D 0) { __result =
 =3D (__s1[1] - ((__const unsigned char *) (__const char *) ("aix"))[1]); =
 if (__s2_len > 1 && __result =3D=3D 0) { __result =3D (__s1[2] - ((__cons=
 t unsigned char *) (__const char *) ("aix"))[2]); if (__s2_len > 2 && __r=
 esult =3D=3D 0) __result =3D (__s1[3] - ((__const unsigned char *) (__con=
 st char *) ("aix"))[3]); } } __result; }))) : strcmp (default_os, "aix"))=
 )); }) : strncmp (default_os, "aix", 3))) =3D=3D 0
           && default_os[3] >=3D '4' && default_os[3] <=3D '9')
         ppc_cpu =3D (0100) | (010);
       else if ((__extension__ (__builtin_constant_p (4) && ((__builtin_co=
 nstant_p (default_os) && strlen (default_os) < ((size_t) (4))) || (__buil=
 tin_constant_p ("aix3") && strlen ("aix3") < ((size_t) (4)))) ? __extensi=
 on__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (default_os) && =
 __builtin_constant_p ("aix3") && (__s1_len =3D strlen (default_os), __s2_=
 len =3D strlen ("aix3"), (!((size_t)(const void *)((default_os) + 1) - (s=
 ize_t)(const void *)(default_os) =3D=3D 1) || __s1_len >=3D 4) && (!((siz=
 e_t)(const void *)(("aix3") + 1) - (size_t)(const void *)("aix3") =3D=3D =
 1) || __s2_len >=3D 4)) ? memcmp ((__const char *) (default_os), (__const=
  char *) ("aix3"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__=
 builtin_constant_p (default_os) && ((size_t)(const void *)((default_os) +=
  1) - (size_t)(const void *)(default_os) =3D=3D 1) && (__s1_len =3D strle=
 n (default_os), __s1_len < 4) ? (__builtin_constant_p ("aix3") && ((size_=
 t)(const void *)(("aix3") + 1) - (size_t)(const void *)("aix3") =3D=3D 1)=
  ? (__extension__ ({ register int __result =3D (((__const unsigned char *=
 ) (__const char *) (default_os))[0] - ((__const unsigned char *) (__const=
  char *)("aix3"))[0]); if (__s1_len > 0 && __result =3D=3D 0) { __result =
 =3D (((__const unsigned char *) (__const char *) (default_os))[1] - ((__c=
 onst unsigned char *) (__const char *) ("aix3"))[1]); if (__s1_len > 1 &&=
  __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__const c=
 har *) (default_os))[2] - ((__const unsigned char *) (__const char *) ("a=
 ix3"))[2]); if (__s1_len > 2 && __result =3D=3D 0) __result =3D (((__cons=
 t unsigned char *) (__const char *) (default_os))[3] - ((__const unsigned=
  char *) (__const char *) ("aix3"))[3]); } } __result; })) : (__extension=
 __ ({ __const unsigned char *__s2 =3D (__const unsigned char *) (__const =
 char *) ("aix3"); register int __result =3D (((__const unsigned char *) (=
 __const char *) (default_os))[0] - __s2[0]); if (__s1_len > 0 && __result=
  =3D=3D 0) { __result =3D (((__const unsigned char *) (__const char *) (d=
 efault_os))[1] - __s2[1]); if (__s1_len > 1 && __result =3D=3D 0) { __res=
 ult =3D (((__const unsigned char *) (__const char *) (default_os))[2] - _=
 _s2[2]); if (__s1_len > 2 && __result =3D=3D 0) __result =3D (((__const u=
 nsigned char *) (__const char *) (default_os))[3] - __s2[3]); } } __resul=
 t; }))) : (__builtin_constant_p ("aix3") && ((size_t)(const void *)(("aix=
 3") + 1) - (size_t)(const void *)("aix3") =3D=3D 1) && (__s2_len =3D strl=
 en ("aix3"), __s2_len < 4) ? (__builtin_constant_p (default_os) && ((size=
 _t)(const void *)((default_os) + 1) - (size_t)(const void *)(default_os) =
 =3D=3D 1) ? (__extension__ ({ register int __result =3D (((__const unsign=
 ed char *) (__const char *) (default_os))[0] - ((__const unsigned char *)=
  (__const char *)("aix3"))[0]); if (__s2_len > 0 && __result =3D=3D 0) { =
 __result =3D (((__const unsigned char *) (__const char *) (default_os))[1=
 ] - ((__const unsigned char *) (__const char *) ("aix3"))[1]); if (__s2_l=
 en > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (=
 __const char *) (default_os))[2] - ((__const unsigned char *) (__const ch=
 ar *) ("aix3"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __result =3D =
 (((__const unsigned char *) (__const char *) (default_os))[3] - ((__const=
  unsigned char *) (__const char *) ("aix3"))[3]); } } __result; })) : (__=
 extension__ ({ __const unsigned char *__s1 =3D (__const unsigned char *) =
 (__const char *) (default_os); register int __result =3D __s1[0] - ((__co=
 nst unsigned char *) (__const char *) ("aix3"))[0]; if (__s2_len > 0 && _=
 _result =3D=3D 0) { __result =3D (__s1[1] - ((__const unsigned char *) (_=
 _const char *) ("aix3"))[1]); if (__s2_len > 1 && __result =3D=3D 0) { __=
 result =3D (__s1[2] - ((__const unsigned char *) (__const char *) ("aix3"=
 ))[2]); if (__s2_len > 2 && __result =3D=3D 0) __result =3D (__s1[3] - ((=
 __const unsigned char *) (__const char *) ("aix3"))[3]); } } __result; })=
 )) : strcmp (default_os, "aix3")))); }) : strncmp (default_os, "aix3", 4)=
 )) =3D=3D 0)
         ppc_cpu =3D (02) | (010);
       else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_con=
 stant_p (default_cpu) && __builtin_constant_p ("rs6000") && (__s1_len =3D=
  strlen (default_cpu), __s2_len =3D strlen ("rs6000"), (!((size_t)(const =
 void *)((default_cpu) + 1) - (size_t)(const void *)(default_cpu) =3D=3D 1=
 ) || __s1_len >=3D 4) && (!((size_t)(const void *)(("rs6000") + 1) - (siz=
 e_t)(const void *)("rs6000") =3D=3D 1) || __s2_len >=3D 4)) ? memcmp ((__=
 const char *) (default_cpu), (__const char *) ("rs6000"), (__s1_len < __s=
 2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (default_cpu) &=
 & ((size_t)(const void *)((default_cpu) + 1) - (size_t)(const void *)(def=
 ault_cpu) =3D=3D 1) && (__s1_len =3D strlen (default_cpu), __s1_len < 4) =
 ? (__builtin_constant_p ("rs6000") && ((size_t)(const void *)(("rs6000") =
 + 1) - (size_t)(const void *)("rs6000") =3D=3D 1) ? (__extension__ ({ reg=
 ister int __result =3D (((__const unsigned char *) (__const char *) (defa=
 ult_cpu))[0] - ((__const unsigned char *) (__const char *)("rs6000"))[0])=
 ; if (__s1_len > 0 && __result =3D=3D 0) { __result =3D (((__const unsign=
 ed char *) (__const char *) (default_cpu))[1] - ((__const unsigned char *=
 ) (__const char *) ("rs6000"))[1]); if (__s1_len > 1 && __result =3D=3D 0=
 ) { __result =3D (((__const unsigned char *) (__const char *) (default_cp=
 u))[2] - ((__const unsigned char *) (__const char *) ("rs6000"))[2]); if =
 (__s1_len > 2 && __result =3D=3D 0) __result =3D (((__const unsigned char=
  *) (__const char *) (default_cpu))[3] - ((__const unsigned char *) (__co=
 nst char *) ("rs6000"))[3]); } } __result; })) : (__extension__ ({ __cons=
 t unsigned char *__s2 =3D (__const unsigned char *) (__const char *) ("rs=
 6000"); register int __result =3D (((__const unsigned char *) (__const ch=
 ar *) (default_cpu))[0] - __s2[0]); if (__s1_len > 0 && __result =3D=3D 0=
 ) { __result =3D (((__const unsigned char *) (__const char *) (default_cp=
 u))[1] - __s2[1]); if (__s1_len > 1 && __result =3D=3D 0) { __result =3D =
 (((__const unsigned char *) (__const char *) (default_cpu))[2] - __s2[2])=
 ; if (__s1_len > 2 && __result =3D=3D 0) __result =3D (((__const unsigned=
  char *) (__const char *) (default_cpu))[3] - __s2[3]); } } __result; }))=
 ) : (__builtin_constant_p ("rs6000") && ((size_t)(const void *)(("rs6000"=
 ) + 1) - (size_t)(const void *)("rs6000") =3D=3D 1) && (__s2_len =3D strl=
 en ("rs6000"), __s2_len < 4) ? (__builtin_constant_p (default_cpu) && ((s=
 ize_t)(const void *)((default_cpu) + 1) - (size_t)(const void *)(default_=
 cpu) =3D=3D 1) ? (__extension__ ({ register int __result =3D (((__const u=
 nsigned char *) (__const char *) (default_cpu))[0] - ((__const unsigned c=
 har *) (__const char *)("rs6000"))[0]); if (__s2_len > 0 && __result =3D=3D=
  0) { __result =3D (((__const unsigned char *) (__const char *) (default_=
 cpu))[1] - ((__const unsigned char *) (__const char *) ("rs6000"))[1]); i=
 f (__s2_len > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned =
 char *) (__const char *) (default_cpu))[2] - ((__const unsigned char *) (=
 __const char *) ("rs6000"))[2]); if (__s2_len > 2 && __result =3D=3D 0) _=
 _result =3D (((__const unsigned char *) (__const char *) (default_cpu))[3=
 ] - ((__const unsigned char *) (__const char *) ("rs6000"))[3]); } } __re=
 sult; })) : (__extension__ ({ __const unsigned char *__s1 =3D (__const un=
 signed char *) (__const char *) (default_cpu); register int __result =3D =
 __s1[0] - ((__const unsigned char *) (__const char *) ("rs6000"))[0]; if =
 (__s2_len > 0 && __result =3D=3D 0) { __result =3D (__s1[1] - ((__const u=
 nsigned char *) (__const char *) ("rs6000"))[1]); if (__s2_len > 1 && __r=
 esult =3D=3D 0) { __result =3D (__s1[2] - ((__const unsigned char *) (__c=
 onst char *) ("rs6000"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __re=
 sult =3D (__s1[3] - ((__const unsigned char *) (__const char *) ("rs6000"=
 ))[3]); } } __result; }))) : strcmp (default_cpu, "rs6000")))); }) =3D=3D=
  0)
         ppc_cpu =3D (02) | (010);
       else if ((__extension__ (__builtin_constant_p (7) && ((__builtin_co=
 nstant_p (default_cpu) && strlen (default_cpu) < ((size_t) (7))) || (__bu=
 iltin_constant_p ("powerpc") && strlen ("powerpc") < ((size_t) (7)))) ? _=
 _extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (default=
 _cpu) && __builtin_constant_p ("powerpc") && (__s1_len =3D strlen (defaul=
 t_cpu), __s2_len =3D strlen ("powerpc"), (!((size_t)(const void *)((defau=
 lt_cpu) + 1) - (size_t)(const void *)(default_cpu) =3D=3D 1) || __s1_len =
 >=3D 4) && (!((size_t)(const void *)(("powerpc") + 1) - (size_t)(const vo=
 id *)("powerpc") =3D=3D 1) || __s2_len >=3D 4)) ? memcmp ((__const char *=
 ) (default_cpu), (__const char *) ("powerpc"), (__s1_len < __s2_len ? __s=
 1_len : __s2_len) + 1) : (__builtin_constant_p (default_cpu) && ((size_t)=
 (const void *)((default_cpu) + 1) - (size_t)(const void *)(default_cpu) =3D=
 =3D 1) && (__s1_len =3D strlen (default_cpu), __s1_len < 4) ? (__builtin_=
 constant_p ("powerpc") && ((size_t)(const void *)(("powerpc") + 1) - (siz=
 e_t)(const void *)("powerpc") =3D=3D 1) ? (__extension__ ({ register int =
 __result =3D (((__const unsigned char *) (__const char *) (default_cpu))[=
 0] - ((__const unsigned char *) (__const char *)("powerpc"))[0]); if (__s=
 1_len > 0 && __result =3D=3D 0) { __result =3D (((__const unsigned char *=
 ) (__const char *) (default_cpu))[1] - ((__const unsigned char *) (__cons=
 t char *) ("powerpc"))[1]); if (__s1_len > 1 && __result =3D=3D 0) { __re=
 sult =3D (((__const unsigned char *) (__const char *) (default_cpu))[2] -=
  ((__const unsigned char *) (__const char *) ("powerpc"))[2]); if (__s1_l=
 en > 2 && __result =3D=3D 0) __result =3D (((__const unsigned char *) (__=
 const char *) (default_cpu))[3] - ((__const unsigned char *) (__const cha=
 r *) ("powerpc"))[3]); } } __result; })) : (__extension__ ({ __const unsi=
 gned char *__s2 =3D (__const unsigned char *) (__const char *) ("powerpc"=
 ); register int __result =3D (((__const unsigned char *) (__const char *)=
  (default_cpu))[0] - __s2[0]); if (__s1_len > 0 && __result =3D=3D 0) { _=
 _result =3D (((__const unsigned char *) (__const char *) (default_cpu))[1=
 ] - __s2[1]); if (__s1_len > 1 && __result =3D=3D 0) { __result =3D (((__=
 const unsigned char *) (__const char *) (default_cpu))[2] - __s2[2]); if =
 (__s1_len > 2 && __result =3D=3D 0) __result =3D (((__const unsigned char=
  *) (__const char *) (default_cpu))[3] - __s2[3]); } } __result; }))) : (=
 __builtin_constant_p ("powerpc") && ((size_t)(const void *)(("powerpc") +=
  1) - (size_t)(const void *)("powerpc") =3D=3D 1) && (__s2_len =3D strlen=
  ("powerpc"), __s2_len < 4) ? (__builtin_constant_p (default_cpu) && ((si=
 ze_t)(const void *)((default_cpu) + 1) - (size_t)(const void *)(default_c=
 pu) =3D=3D 1) ? (__extension__ ({ register int __result =3D (((__const un=
 signed char *) (__const char *) (default_cpu))[0] - ((__const unsigned ch=
 ar *) (__const char *)("powerpc"))[0]); if (__s2_len > 0 && __result =3D=3D=
  0) { __result =3D (((__const unsigned char *) (__const char *) (default_=
 cpu))[1] - ((__const unsigned char *) (__const char *) ("powerpc"))[1]); =
 if (__s2_len > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned=
  char *) (__const char *) (default_cpu))[2] - ((__const unsigned char *) =
 (__const char *) ("powerpc"))[2]); if (__s2_len > 2 && __result =3D=3D 0)=
  __result =3D (((__const unsigned char *) (__const char *) (default_cpu))=
 [3] - ((__const unsigned char *) (__const char *) ("powerpc"))[3]); } } _=
 _result; })) : (__extension__ ({ __const unsigned char *__s1 =3D (__const=
  unsigned char *) (__const char *) (default_cpu); register int __result =3D=
  __s1[0] - ((__const unsigned char *) (__const char *) ("powerpc"))[0]; i=
 f (__s2_len > 0 && __result =3D=3D 0) { __result =3D (__s1[1] - ((__const=
  unsigned char *) (__const char *) ("powerpc"))[1]); if (__s2_len > 1 && =
 __result =3D=3D 0) { __result =3D (__s1[2] - ((__const unsigned char *) (=
 __const char *) ("powerpc"))[2]); if (__s2_len > 2 && __result =3D=3D 0) =
 __result =3D (__s1[3] - ((__const unsigned char *) (__const char *) ("pow=
 erpc"))[3]); } } __result; }))) : strcmp (default_cpu, "powerpc")))); }) =
 : strncmp (default_cpu, "powerpc", 7))) =3D=3D 0)
         {
           if (default_cpu[7] =3D=3D '6' && default_cpu[8] =3D=3D '4')
             ppc_cpu =3D (01) | (020);
           else
             ppc_cpu =3D (01) | (010);
         }
       else
         as_fatal (dcgettext (((void *)0), "Unknown default cpu =3D %s, os=
  =3D %s", __LC_MESSAGES),
                   default_cpu, default_os);
     }
 }
 
 
 
 enum bfd_architecture
 ppc_arch ()
 {
   const char *default_cpu =3D "powerpc";
   ppc_set_cpu ();
 
   if ((ppc_cpu & (01)) !=3D 0)
     return bfd_arch_powerpc;
   else if ((ppc_cpu & (02)) !=3D 0)
     return bfd_arch_rs6000;
   else if ((ppc_cpu & ((0100) | (0200))) !=3D 0)
     {
       if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant=
 _p (default_cpu) && __builtin_constant_p ("rs6000") && (__s1_len =3D strl=
 en (default_cpu), __s2_len =3D strlen ("rs6000"), (!((size_t)(const void =
 *)((default_cpu) + 1) - (size_t)(const void *)(default_cpu) =3D=3D 1) || =
 __s1_len >=3D 4) && (!((size_t)(const void *)(("rs6000") + 1) - (size_t)(=
 const void *)("rs6000") =3D=3D 1) || __s2_len >=3D 4)) ? memcmp ((__const=
  char *) (default_cpu), (__const char *) ("rs6000"), (__s1_len < __s2_len=
  ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (default_cpu) && ((s=
 ize_t)(const void *)((default_cpu) + 1) - (size_t)(const void *)(default_=
 cpu) =3D=3D 1) && (__s1_len =3D strlen (default_cpu), __s1_len < 4) ? (__=
 builtin_constant_p ("rs6000") && ((size_t)(const void *)(("rs6000") + 1) =
 - (size_t)(const void *)("rs6000") =3D=3D 1) ? (__extension__ ({ register=
  int __result =3D (((__const unsigned char *) (__const char *) (default_c=
 pu))[0] - ((__const unsigned char *) (__const char *)("rs6000"))[0]); if =
 (__s1_len > 0 && __result =3D=3D 0) { __result =3D (((__const unsigned ch=
 ar *) (__const char *) (default_cpu))[1] - ((__const unsigned char *) (__=
 const char *) ("rs6000"))[1]); if (__s1_len > 1 && __result =3D=3D 0) { _=
 _result =3D (((__const unsigned char *) (__const char *) (default_cpu))[2=
 ] - ((__const unsigned char *) (__const char *) ("rs6000"))[2]); if (__s1=
 _len > 2 && __result =3D=3D 0) __result =3D (((__const unsigned char *) (=
 __const char *) (default_cpu))[3] - ((__const unsigned char *) (__const c=
 har *) ("rs6000"))[3]); } } __result; })) : (__extension__ ({ __const uns=
 igned char *__s2 =3D (__const unsigned char *) (__const char *) ("rs6000"=
 ); register int __result =3D (((__const unsigned char *) (__const char *)=
  (default_cpu))[0] - __s2[0]); if (__s1_len > 0 && __result =3D=3D 0) { _=
 _result =3D (((__const unsigned char *) (__const char *) (default_cpu))[1=
 ] - __s2[1]); if (__s1_len > 1 && __result =3D=3D 0) { __result =3D (((__=
 const unsigned char *) (__const char *) (default_cpu))[2] - __s2[2]); if =
 (__s1_len > 2 && __result =3D=3D 0) __result =3D (((__const unsigned char=
  *) (__const char *) (default_cpu))[3] - __s2[3]); } } __result; }))) : (=
 __builtin_constant_p ("rs6000") && ((size_t)(const void *)(("rs6000") + 1=
 ) - (size_t)(const void *)("rs6000") =3D=3D 1) && (__s2_len =3D strlen ("=
 rs6000"), __s2_len < 4) ? (__builtin_constant_p (default_cpu) && ((size_t=
 )(const void *)((default_cpu) + 1) - (size_t)(const void *)(default_cpu) =
 =3D=3D 1) ? (__extension__ ({ register int __result =3D (((__const unsign=
 ed char *) (__const char *) (default_cpu))[0] - ((__const unsigned char *=
 ) (__const char *)("rs6000"))[0]); if (__s2_len > 0 && __result =3D=3D 0)=
  { __result =3D (((__const unsigned char *) (__const char *) (default_cpu=
 ))[1] - ((__const unsigned char *) (__const char *) ("rs6000"))[1]); if (=
 __s2_len > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned cha=
 r *) (__const char *) (default_cpu))[2] - ((__const unsigned char *) (__c=
 onst char *) ("rs6000"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __re=
 sult =3D (((__const unsigned char *) (__const char *) (default_cpu))[3] -=
  ((__const unsigned char *) (__const char *) ("rs6000"))[3]); } } __resul=
 t; })) : (__extension__ ({ __const unsigned char *__s1 =3D (__const unsig=
 ned char *) (__const char *) (default_cpu); register int __result =3D __s=
 1[0] - ((__const unsigned char *) (__const char *) ("rs6000"))[0]; if (__=
 s2_len > 0 && __result =3D=3D 0) { __result =3D (__s1[1] - ((__const unsi=
 gned char *) (__const char *) ("rs6000"))[1]); if (__s2_len > 1 && __resu=
 lt =3D=3D 0) { __result =3D (__s1[2] - ((__const unsigned char *) (__cons=
 t char *) ("rs6000"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __resul=
 t =3D (__s1[3] - ((__const unsigned char *) (__const char *) ("rs6000"))[=
 3]); } } __result; }))) : strcmp (default_cpu, "rs6000")))); }) =3D=3D 0)
         return bfd_arch_rs6000;
       else if ((__extension__ (__builtin_constant_p (7) && ((__builtin_co=
 nstant_p (default_cpu) && strlen (default_cpu) < ((size_t) (7))) || (__bu=
 iltin_constant_p ("powerpc") && strlen ("powerpc") < ((size_t) (7)))) ? _=
 _extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (default=
 _cpu) && __builtin_constant_p ("powerpc") && (__s1_len =3D strlen (defaul=
 t_cpu), __s2_len =3D strlen ("powerpc"), (!((size_t)(const void *)((defau=
 lt_cpu) + 1) - (size_t)(const void *)(default_cpu) =3D=3D 1) || __s1_len =
 >=3D 4) && (!((size_t)(const void *)(("powerpc") + 1) - (size_t)(const vo=
 id *)("powerpc") =3D=3D 1) || __s2_len >=3D 4)) ? memcmp ((__const char *=
 ) (default_cpu), (__const char *) ("powerpc"), (__s1_len < __s2_len ? __s=
 1_len : __s2_len) + 1) : (__builtin_constant_p (default_cpu) && ((size_t)=
 (const void *)((default_cpu) + 1) - (size_t)(const void *)(default_cpu) =3D=
 =3D 1) && (__s1_len =3D strlen (default_cpu), __s1_len < 4) ? (__builtin_=
 constant_p ("powerpc") && ((size_t)(const void *)(("powerpc") + 1) - (siz=
 e_t)(const void *)("powerpc") =3D=3D 1) ? (__extension__ ({ register int =
 __result =3D (((__const unsigned char *) (__const char *) (default_cpu))[=
 0] - ((__const unsigned char *) (__const char *)("powerpc"))[0]); if (__s=
 1_len > 0 && __result =3D=3D 0) { __result =3D (((__const unsigned char *=
 ) (__const char *) (default_cpu))[1] - ((__const unsigned char *) (__cons=
 t char *) ("powerpc"))[1]); if (__s1_len > 1 && __result =3D=3D 0) { __re=
 sult =3D (((__const unsigned char *) (__const char *) (default_cpu))[2] -=
  ((__const unsigned char *) (__const char *) ("powerpc"))[2]); if (__s1_l=
 en > 2 && __result =3D=3D 0) __result =3D (((__const unsigned char *) (__=
 const char *) (default_cpu))[3] - ((__const unsigned char *) (__const cha=
 r *) ("powerpc"))[3]); } } __result; })) : (__extension__ ({ __const unsi=
 gned char *__s2 =3D (__const unsigned char *) (__const char *) ("powerpc"=
 ); register int __result =3D (((__const unsigned char *) (__const char *)=
  (default_cpu))[0] - __s2[0]); if (__s1_len > 0 && __result =3D=3D 0) { _=
 _result =3D (((__const unsigned char *) (__const char *) (default_cpu))[1=
 ] - __s2[1]); if (__s1_len > 1 && __result =3D=3D 0) { __result =3D (((__=
 const unsigned char *) (__const char *) (default_cpu))[2] - __s2[2]); if =
 (__s1_len > 2 && __result =3D=3D 0) __result =3D (((__const unsigned char=
  *) (__const char *) (default_cpu))[3] - __s2[3]); } } __result; }))) : (=
 __builtin_constant_p ("powerpc") && ((size_t)(const void *)(("powerpc") +=
  1) - (size_t)(const void *)("powerpc") =3D=3D 1) && (__s2_len =3D strlen=
  ("powerpc"), __s2_len < 4) ? (__builtin_constant_p (default_cpu) && ((si=
 ze_t)(const void *)((default_cpu) + 1) - (size_t)(const void *)(default_c=
 pu) =3D=3D 1) ? (__extension__ ({ register int __result =3D (((__const un=
 signed char *) (__const char *) (default_cpu))[0] - ((__const unsigned ch=
 ar *) (__const char *)("powerpc"))[0]); if (__s2_len > 0 && __result =3D=3D=
  0) { __result =3D (((__const unsigned char *) (__const char *) (default_=
 cpu))[1] - ((__const unsigned char *) (__const char *) ("powerpc"))[1]); =
 if (__s2_len > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned=
  char *) (__const char *) (default_cpu))[2] - ((__const unsigned char *) =
 (__const char *) ("powerpc"))[2]); if (__s2_len > 2 && __result =3D=3D 0)=
  __result =3D (((__const unsigned char *) (__const char *) (default_cpu))=
 [3] - ((__const unsigned char *) (__const char *) ("powerpc"))[3]); } } _=
 _result; })) : (__extension__ ({ __const unsigned char *__s1 =3D (__const=
  unsigned char *) (__const char *) (default_cpu); register int __result =3D=
  __s1[0] - ((__const unsigned char *) (__const char *) ("powerpc"))[0]; i=
 f (__s2_len > 0 && __result =3D=3D 0) { __result =3D (__s1[1] - ((__const=
  unsigned char *) (__const char *) ("powerpc"))[1]); if (__s2_len > 1 && =
 __result =3D=3D 0) { __result =3D (__s1[2] - ((__const unsigned char *) (=
 __const char *) ("powerpc"))[2]); if (__s2_len > 2 && __result =3D=3D 0) =
 __result =3D (__s1[3] - ((__const unsigned char *) (__const char *) ("pow=
 erpc"))[3]); } } __result; }))) : strcmp (default_cpu, "powerpc")))); }) =
 : strncmp (default_cpu, "powerpc", 7))) =3D=3D 0)
         return bfd_arch_powerpc;
     }
 
   as_fatal (dcgettext (((void *)0), "Neither Power nor PowerPC opcodes we=
 re selected.", __LC_MESSAGES));
   return bfd_arch_unknown;
 }
 
 unsigned long
 ppc_mach ()
 {
   return ppc_obj64 ? 1 : 0;
 }
 
 extern char*
 ppc_target_format ()
 {
 # 1132 "../../binutils-2.13.1/gas/config/tc-ppc.c"
   return (target_big_endian
           ? (ppc_obj64 ? "elf64-powerpc" : "elf32-powerpc")
           : (ppc_obj64 ? "elf64-powerpcle" : "elf32-powerpcle"));
 
 }
 
 
 
 
 
 void
 md_begin ()
 {
   register const struct powerpc_opcode *op;
   const struct powerpc_opcode *op_end;
   const struct powerpc_macro *macro;
   const struct powerpc_macro *macro_end;
   boolean dup_insn =3D false;
 
   ppc_set_cpu ();
 
 
 
   if (ppc_flags && !msolaris)
     ((*((stdoutput)->xvec->_bfd_set_private_flags)) (stdoutput, ppc_flags=
 ));
 
 
 
   ppc_hash =3D hash_new ();
 
   op_end =3D powerpc_opcodes + powerpc_num_opcodes;
   for (op =3D powerpc_opcodes; op < op_end; op++)
     {
       ;
 
       if ((op->flags & ppc_cpu & ~((010) | (020))) !=3D 0
           && ((op->flags & ((010) | (020))) =3D=3D 0
               || ((op->flags & ((010) | (020)))
                   =3D=3D (ppc_cpu & ((010) | (020))))
               || (ppc_cpu & (0400)) !=3D 0)
 
 
 
 
 
           && ((op->flags & (010000)) =3D=3D 0
               || (ppc_cpu & (010000)) =3D=3D (010000)
               || (ppc_cpu & (04000)) =3D=3D 0)
           && ((op->flags & ((020000) | (040000))) =3D=3D 0
               || ((op->flags & (020000))
                   =3D=3D (ppc_cpu & (020000)))))
         {
           const char *retval;
 
           retval =3D hash_insert (ppc_hash, op->name, (void *) op);
           if (retval !=3D (const char *) ((void *)0))
             {
 
               if ((ppc_cpu & (040)) !=3D 0
                   && (op->flags & (02)) !=3D 0)
                 continue;
 
               as_bad (dcgettext (((void *)0), "Internal assembler error f=
 or instruction %s", __LC_MESSAGES),
                       op->name);
               dup_insn =3D true;
             }
         }
     }
 
 
   ppc_macro_hash =3D hash_new ();
 
   macro_end =3D powerpc_macros + powerpc_num_macros;
   for (macro =3D powerpc_macros; macro < macro_end; macro++)
     {
       if ((macro->flags & ppc_cpu) !=3D 0)
         {
           const char *retval;
 
           retval =3D hash_insert (ppc_macro_hash, macro->name, (void *) m=
 acro);
           if (retval !=3D (const char *) ((void *)0))
             {
               as_bad (dcgettext (((void *)0), "Internal assembler error f=
 or macro %s", __LC_MESSAGES), macro->name);
               dup_insn =3D true;
             }
         }
     }
 
   if (dup_insn)
     as_abort ("../../binutils-2.13.1/gas/config/tc-ppc.c", 1221, __PRETTY=
 _FUNCTION__);
 
 
 
   if (!set_target_endian)
     {
       set_target_endian =3D 1;
       target_big_endian =3D 1;
     }
 # 1249 "../../binutils-2.13.1/gas/config/tc-ppc.c"
 }
 
 
 
 static unsigned long
 ppc_insert_operand (insn, operand, val, file, line)
      unsigned long insn;
      const struct powerpc_operand *operand;
      offsetT val;
      char *file;
      unsigned int line;
 {
   if (operand->bits !=3D 32)
     {
       long min, max;
       offsetT test;
 
       if ((operand->flags & (01)) !=3D 0)
         {
           if ((operand->flags & (02)) !=3D 0)
             max =3D (1 << operand->bits) - 1;
           else
             max =3D (1 << (operand->bits - 1)) - 1;
           min =3D - (1 << (operand->bits - 1));
 
           if (!ppc_obj64)
             {
 
 
 
 
               if (val > 0
                   && (val & (offsetT) 0x80000000) !=3D 0
                   && (val & (offsetT) 0xffffffff) =3D=3D val)
                 {
                   val -=3D 0x80000000;
                   val -=3D 0x80000000;
                 }
             }
         }
       else
         {
           max =3D (1 << operand->bits) - 1;
           min =3D 0;
         }
 
       if ((operand->flags & (04000)) !=3D 0)
         test =3D - val;
       else
         test =3D val;
 
       if (test < (offsetT) min || test > (offsetT) max)
         {
           const char *err =3D
             dcgettext (((void *)0), "operand out of range (%s not between=
  %ld and %ld)", __LC_MESSAGES);
           char buf[100];
 
           sprint_value (buf, test);
           as_bad_where (file, line, err, buf, min, max);
         }
     }
 
   if (operand->insert)
     {
       const char *errmsg;
 
       errmsg =3D ((void *)0);
       insn =3D (*operand->insert) (insn, (long) val, ppc_cpu, &errmsg);
       if (errmsg !=3D (const char *) ((void *)0))
         as_bad_where (file, line, errmsg);
     }
   else
     insn |=3D (((long) val & ((1 << operand->bits) - 1))
              << operand->shift);
 
   return insn;
 }
 
 
 
 
 static bfd_reloc_code_real_type
 ppc_elf_suffix (str_p, exp_p)
      char **str_p;
      expressionS *exp_p;
 {
   struct map_bfd {
     char *string;
     int length;
     int reloc;
   };
 
   char ident[20];
   char *str =3D *str_p;
   char *str2;
   int ch;
   int len;
   const struct map_bfd *ptr;
 
 
 
   static const struct map_bfd mapping[] =3D {
     { "l", sizeof ("l")-1, (int) BFD_RELOC_LO16 },
     { "h", sizeof ("h")-1, (int) BFD_RELOC_HI16 },
     { "ha", sizeof ("ha")-1, (int) BFD_RELOC_HI16_S },
     { "brtaken", sizeof ("brtaken")-1, (int) BFD_RELOC_PPC_B16_BRTAKEN },
     { "brntaken", sizeof ("brntaken")-1, (int) BFD_RELOC_PPC_B16_BRNTAKEN=
  },
     { "got", sizeof ("got")-1, (int) BFD_RELOC_16_GOTOFF },
     { "got@l", sizeof ("got@l")-1, (int) BFD_RELOC_LO16_GOTOFF },
     { "got@h", sizeof ("got@h")-1, (int) BFD_RELOC_HI16_GOTOFF },
     { "got@ha", sizeof ("got@ha")-1, (int) BFD_RELOC_HI16_S_GOTOFF },
     { "fixup", sizeof ("fixup")-1, (int) BFD_RELOC_CTOR },
     { "plt", sizeof ("plt")-1, (int) BFD_RELOC_24_PLT_PCREL },
     { "pltrel24", sizeof ("pltrel24")-1, (int) BFD_RELOC_24_PLT_PCREL },
     { "copy", sizeof ("copy")-1, (int) BFD_RELOC_PPC_COPY },
     { "globdat", sizeof ("globdat")-1, (int) BFD_RELOC_PPC_GLOB_DAT },
     { "local24pc", sizeof ("local24pc")-1, (int) BFD_RELOC_PPC_LOCAL24PC =
 },
     { "local", sizeof ("local")-1, (int) BFD_RELOC_PPC_LOCAL24PC },
     { "pltrel", sizeof ("pltrel")-1, (int) BFD_RELOC_32_PLT_PCREL },
     { "plt@l", sizeof ("plt@l")-1, (int) BFD_RELOC_LO16_PLTOFF },
     { "plt@h", sizeof ("plt@h")-1, (int) BFD_RELOC_HI16_PLTOFF },
     { "plt@ha", sizeof ("plt@ha")-1, (int) BFD_RELOC_HI16_S_PLTOFF },
     { "sdarel", sizeof ("sdarel")-1, (int) BFD_RELOC_GPREL16 },
     { "sectoff", sizeof ("sectoff")-1, (int) BFD_RELOC_16_BASEREL },
     { "sectoff@l", sizeof ("sectoff@l")-1, (int) BFD_RELOC_LO16_BASEREL }=
 ,
     { "sectoff@h", sizeof ("sectoff@h")-1, (int) BFD_RELOC_HI16_BASEREL }=
 ,
     { "sectoff@ha", sizeof ("sectoff@ha")-1, (int) BFD_RELOC_HI16_S_BASER=
 EL },
     { "naddr", sizeof ("naddr")-1, (int) BFD_RELOC_PPC_EMB_NADDR32 },
     { "naddr16", sizeof ("naddr16")-1, (int) BFD_RELOC_PPC_EMB_NADDR16 },
     { "naddr@l", sizeof ("naddr@l")-1, (int) BFD_RELOC_PPC_EMB_NADDR16_LO=
  },
     { "naddr@h", sizeof ("naddr@h")-1, (int) BFD_RELOC_PPC_EMB_NADDR16_HI=
  },
     { "naddr@ha", sizeof ("naddr@ha")-1, (int) BFD_RELOC_PPC_EMB_NADDR16_=
 HA },
     { "sdai16", sizeof ("sdai16")-1, (int) BFD_RELOC_PPC_EMB_SDAI16 },
     { "sda2rel", sizeof ("sda2rel")-1, (int) BFD_RELOC_PPC_EMB_SDA2REL },
     { "sda2i16", sizeof ("sda2i16")-1, (int) BFD_RELOC_PPC_EMB_SDA2I16 },
     { "sda21", sizeof ("sda21")-1, (int) BFD_RELOC_PPC_EMB_SDA21 },
     { "mrkref", sizeof ("mrkref")-1, (int) BFD_RELOC_PPC_EMB_MRKREF },
     { "relsect", sizeof ("relsect")-1, (int) BFD_RELOC_PPC_EMB_RELSEC16 }=
 ,
     { "relsect@l", sizeof ("relsect@l")-1, (int) BFD_RELOC_PPC_EMB_RELST_=
 LO },
     { "relsect@h", sizeof ("relsect@h")-1, (int) BFD_RELOC_PPC_EMB_RELST_=
 HI },
     { "relsect@ha", sizeof ("relsect@ha")-1, (int) BFD_RELOC_PPC_EMB_RELS=
 T_HA },
     { "bitfld", sizeof ("bitfld")-1, (int) BFD_RELOC_PPC_EMB_BIT_FLD },
     { "relsda", sizeof ("relsda")-1, (int) BFD_RELOC_PPC_EMB_RELSDA },
     { "xgot", sizeof ("xgot")-1, (int) BFD_RELOC_PPC_TOC16 },
 
 
     { "higher", sizeof ("higher")-1, - (int) BFD_RELOC_PPC64_HIGHER },
     { "highera", sizeof ("highera")-1, - (int) BFD_RELOC_PPC64_HIGHER_S }=
 ,
     { "highest", sizeof ("highest")-1, - (int) BFD_RELOC_PPC64_HIGHEST },
     { "highesta", sizeof ("highesta")-1, - (int) BFD_RELOC_PPC64_HIGHEST_=
 S },
     { "tocbase", sizeof ("tocbase")-1, - (int) BFD_RELOC_PPC64_TOC },
     { "toc", sizeof ("toc")-1, - (int) BFD_RELOC_PPC_TOC16 },
     { "toc@l", sizeof ("toc@l")-1, - (int) BFD_RELOC_PPC64_TOC16_LO },
     { "toc@h", sizeof ("toc@h")-1, - (int) BFD_RELOC_PPC64_TOC16_HI },
     { "toc@ha", sizeof ("toc@ha")-1, - (int) BFD_RELOC_PPC64_TOC16_HA },
     { (char *) 0, 0, (int) BFD_RELOC_UNUSED }
   };
 
   if (*str++ !=3D '@')
     return BFD_RELOC_UNUSED;
 
   for (ch =3D *str, str2 =3D ident;
        (str2 < ident + sizeof (ident) - 1
         && ((_sch_istable[(ch) & 0xff] & (unsigned short)(_sch_isalnum)) =
 || ch =3D=3D '@'));
        ch =3D *++str)
     {
       *str2++ =3D _sch_tolower[(ch) & 0xff];
     }
 
   *str2 =3D '\0';
   len =3D str2 - ident;
 
   ch =3D ident[0];
   for (ptr =3D &mapping[0]; ptr->length > 0; ptr++)
     if (ch =3D=3D ptr->string[0]
         && len =3D=3D ptr->length
         && memcmp (ident, ptr->string, ptr->length) =3D=3D 0)
       {
         int reloc =3D ptr->reloc;
 
         if (reloc < 0)
           {
             if (!ppc_obj64)
               return BFD_RELOC_UNUSED;
             reloc =3D -reloc;
           }
 
         if (exp_p->X_add_number !=3D 0
             && (reloc =3D=3D (int) BFD_RELOC_16_GOTOFF
                 || reloc =3D=3D (int) BFD_RELOC_LO16_GOTOFF
                 || reloc =3D=3D (int) BFD_RELOC_HI16_GOTOFF
                 || reloc =3D=3D (int) BFD_RELOC_HI16_S_GOTOFF))
           as_warn (dcgettext (((void *)0), "identifier+constant@got means=
  identifier@got+constant", __LC_MESSAGES));
 
 
         if (*str =3D=3D '-' || *str =3D=3D '+')
           {
             char *orig_line =3D input_line_pointer;
             expressionS new_exp;
 
             input_line_pointer =3D str;
             expr (0, &new_exp);
             if (new_exp.X_op =3D=3D O_constant)
               {
                 exp_p->X_add_number +=3D new_exp.X_add_number;
                 str =3D input_line_pointer;
               }
 
             if (&input_line_pointer !=3D str_p)
               input_line_pointer =3D orig_line;
           }
         *str_p =3D str;
 
         if (reloc =3D=3D (int) BFD_RELOC_PPC64_TOC
             && exp_p->X_op =3D=3D O_symbol)
           {
 
 
 
             exp_p->X_add_symbol =3D &abs_symbol;
           }
 
         return (bfd_reloc_code_real_type) reloc;
       }
 
   return BFD_RELOC_UNUSED;
 }
 
 
 
 static void
 ppc_elf_cons (nbytes)
      register int nbytes;
 {
   expressionS exp;
   bfd_reloc_code_real_type reloc;
 
   if (is_it_end_of_statement ())
     {
       demand_empty_rest_of_line ();
       return;
     }
 
   do
     {
       expr (0, &exp);
       if (exp.X_op =3D=3D O_symbol
           && *input_line_pointer =3D=3D '@'
           && (reloc =3D ppc_elf_suffix (&input_line_pointer,
                                       &exp)) !=3D BFD_RELOC_UNUSED)
         {
           reloc_howto_type *reloc_howto;
           int size;
 
           reloc_howto =3D bfd_reloc_type_lookup (stdoutput, reloc);
           size =3D bfd_get_reloc_size (reloc_howto);
 
           if (size > nbytes)
             {
               as_bad (dcgettext (((void *)0), "%s relocations do not fit =
 in %d bytes\n", __LC_MESSAGES),
                       reloc_howto->name, nbytes);
             }
           else
             {
               char *p;
               int offset;
 
               p =3D frag_more (nbytes);
               offset =3D 0;
               if (target_big_endian)
                 offset =3D nbytes - size;
               fix_new_exp (frag_now, p - frag_now->fr_literal + offset, s=
 ize,
                            &exp, 0, reloc);
             }
         }
       else
         emit_expr (&exp, (unsigned int) nbytes);
     }
   while (*input_line_pointer++ =3D=3D ',');
 
 
   input_line_pointer--;
   demand_empty_rest_of_line ();
 }
 
 
 static void
 ppc_elf_rdata (xxx)
      int xxx;
 {
   char *save_line =3D input_line_pointer;
   static char section[] =3D ".rodata\n";
 
 
   input_line_pointer =3D section;
   obj_elf_section (xxx);
 
   input_line_pointer =3D save_line;
 }
 
 
 static void
 ppc_elf_lcomm (xxx)
      int xxx __attribute__ ((__unused__));
 {
   register char *name;
   register char c;
   register char *p;
   offsetT size;
   register symbolS *symbolP;
   offsetT align;
   segT old_sec;
   int old_subsec;
   char *pfrag;
   int align2;
 
   name =3D input_line_pointer;
   c =3D get_symbol_end ();
 
 
   p =3D input_line_pointer;
   *p =3D c;
   { if (* input_line_pointer =3D=3D ' ') ++ input_line_pointer; };
   if (*input_line_pointer !=3D ',')
     {
       as_bad (dcgettext (((void *)0), "Expected comma after symbol-name: =
 rest of line ignored.", __LC_MESSAGES));
       ignore_rest_of_line ();
       return;
     }
 
   input_line_pointer++;
   if ((size =3D get_absolute_expression ()) < 0)
     {
       as_warn (dcgettext (((void *)0), ".COMMon length (%ld.) <0! Ignored=
 =2E", __LC_MESSAGES), (long) size);
       ignore_rest_of_line ();
       return;
     }
 
 
   if (*input_line_pointer !=3D ',')
     align =3D 8;
   else
     {
       ++input_line_pointer;
       align =3D get_absolute_expression ();
       if (align <=3D 0)
         {
           as_warn (dcgettext (((void *)0), "ignoring bad alignment", __LC=
 _MESSAGES));
           align =3D 8;
         }
     }
 
   *p =3D 0;
   symbolP =3D symbol_find_or_make (name);
   *p =3D c;
 
   if (S_IS_DEFINED (symbolP) && ! S_IS_COMMON (symbolP))
     {
       as_bad (dcgettext (((void *)0), "Ignoring attempt to re-define symb=
 ol `%s'.", __LC_MESSAGES),
               S_GET_NAME (symbolP));
       ignore_rest_of_line ();
       return;
     }
 
   if (S_GET_VALUE (symbolP) && S_GET_VALUE (symbolP) !=3D (valueT) size)
     {
       as_bad (dcgettext (((void *)0), "Length of .lcomm \"%s\" is already=
  %ld. Not changed to %ld.", __LC_MESSAGES),
               S_GET_NAME (symbolP),
               (long) S_GET_VALUE (symbolP),
               (long) size);
 
       ignore_rest_of_line ();
       return;
     }
 
 
   old_sec =3D now_seg;
   old_subsec =3D now_subseg;
   if (align)
     {
 
       for (align2 =3D 0; (align & 1) =3D=3D 0; align >>=3D 1, ++align2);
       if (align !=3D 1)
         {
           as_bad (dcgettext (((void *)0), "Common alignment not a power o=
 f 2", __LC_MESSAGES));
           ignore_rest_of_line ();
           return;
         }
     }
   else
     align2 =3D 0;
 
   record_alignment (bss_section, align2);
   subseg_set (bss_section, 0);
   if (align2)
     frag_align (align2, 0, 0);
   if (S_GET_SEGMENT (symbolP) =3D=3D bss_section)
     symbol_get_frag (symbolP)->fr_symbol =3D 0;
   symbol_set_frag (symbolP, frag_now);
   pfrag =3D frag_var (rs_org, 1, 1, (relax_substateT) 0, symbolP, size,
                     (char *) 0);
   *pfrag =3D 0;
   (((elf_symbol_type *) (&(symbol_get_bfdsym (symbolP))->the_bfd))->inter=
 nal_elf_sym.st_size =3D (size));
   S_SET_SEGMENT (symbolP, bss_section);
   subseg_set (old_sec, old_subsec);
   demand_empty_rest_of_line ();
 }
 
 
 
 
 static void
 ppc_elf_validate_fix (fixp, seg)
      fixS *fixp;
      segT seg;
 {
   if (fixp->fx_done || fixp->fx_pcrel)
     return;
 
   switch (shlib)
     {
     case SHLIB_NONE:
     case SHLIB_PIC:
       return;
 
     case SHLIB_MRELOCATABLE:
       if (fixp->fx_r_type <=3D BFD_RELOC_UNUSED
           && fixp->fx_r_type !=3D BFD_RELOC_16_GOTOFF
           && fixp->fx_r_type !=3D BFD_RELOC_HI16_GOTOFF
           && fixp->fx_r_type !=3D BFD_RELOC_LO16_GOTOFF
           && fixp->fx_r_type !=3D BFD_RELOC_HI16_S_GOTOFF
           && fixp->fx_r_type !=3D BFD_RELOC_16_BASEREL
           && fixp->fx_r_type !=3D BFD_RELOC_LO16_BASEREL
           && fixp->fx_r_type !=3D BFD_RELOC_HI16_BASEREL
           && fixp->fx_r_type !=3D BFD_RELOC_HI16_S_BASEREL
           && (seg->flags & 0x002) !=3D 0
           && __extension__ ({ size_t __s1_len, __s2_len; (__builtin_const=
 ant_p (((seg)->name + 0)) && __builtin_constant_p (".got2") && (__s1_len =
 =3D strlen (((seg)->name + 0)), __s2_len =3D strlen (".got2"), (!((size_t=
 )(const void *)((((seg)->name + 0)) + 1) - (size_t)(const void *)(((seg)-=
 >name + 0)) =3D=3D 1) || __s1_len >=3D 4) && (!((size_t)(const void *)(("=
 =2Egot2") + 1) - (size_t)(const void *)(".got2") =3D=3D 1) || __s2_len >=3D=
  4)) ? memcmp ((__const char *) (((seg)->name + 0)), (__const char *) (".=
 got2"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_con=
 stant_p (((seg)->name + 0)) && ((size_t)(const void *)((((seg)->name + 0)=
 ) + 1) - (size_t)(const void *)(((seg)->name + 0)) =3D=3D 1) && (__s1_len=
  =3D strlen (((seg)->name + 0)), __s1_len < 4) ? (__builtin_constant_p ("=
 =2Egot2") && ((size_t)(const void *)((".got2") + 1) - (size_t)(const void=
  *)(".got2") =3D=3D 1) ? (__extension__ ({ register int __result =3D (((_=
 _const unsigned char *) (__const char *) (((seg)->name + 0)))[0] - ((__co=
 nst unsigned char *) (__const char *)(".got2"))[0]); if (__s1_len > 0 && =
 __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__const ch=
 ar *) (((seg)->name + 0)))[1] - ((__const unsigned char *) (__const char =
 *) (".got2"))[1]); if (__s1_len > 1 && __result =3D=3D 0) { __result =3D =
 (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[2] - ((=
 __const unsigned char *) (__const char *) (".got2"))[2]); if (__s1_len > =
 2 && __result =3D=3D 0) __result =3D (((__const unsigned char *) (__const=
  char *) (((seg)->name + 0)))[3] - ((__const unsigned char *) (__const ch=
 ar *) (".got2"))[3]); } } __result; })) : (__extension__ ({ __const unsig=
 ned char *__s2 =3D (__const unsigned char *) (__const char *) (".got2"); =
 register int __result =3D (((__const unsigned char *) (__const char *) ((=
 (seg)->name + 0)))[0] - __s2[0]); if (__s1_len > 0 && __result =3D=3D 0) =
 { __result =3D (((__const unsigned char *) (__const char *) (((seg)->name=
  + 0)))[1] - __s2[1]); if (__s1_len > 1 && __result =3D=3D 0) { __result =
 =3D (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[2] =
 - __s2[2]); if (__s1_len > 2 && __result =3D=3D 0) __result =3D (((__cons=
 t unsigned char *) (__const char *) (((seg)->name + 0)))[3] - __s2[3]); }=
  } __result; }))) : (__builtin_constant_p (".got2") && ((size_t)(const vo=
 id *)((".got2") + 1) - (size_t)(const void *)(".got2") =3D=3D 1) && (__s2=
 _len =3D strlen (".got2"), __s2_len < 4) ? (__builtin_constant_p (((seg)-=
 >name + 0)) && ((size_t)(const void *)((((seg)->name + 0)) + 1) - (size_t=
 )(const void *)(((seg)->name + 0)) =3D=3D 1) ? (__extension__ ({ register=
  int __result =3D (((__const unsigned char *) (__const char *) (((seg)->n=
 ame + 0)))[0] - ((__const unsigned char *) (__const char *)(".got2"))[0])=
 ; if (__s2_len > 0 && __result =3D=3D 0) { __result =3D (((__const unsign=
 ed char *) (__const char *) (((seg)->name + 0)))[1] - ((__const unsigned =
 char *) (__const char *) (".got2"))[1]); if (__s2_len > 1 && __result =3D=
 =3D 0) { __result =3D (((__const unsigned char *) (__const char *) (((seg=
 )->name + 0)))[2] - ((__const unsigned char *) (__const char *) (".got2")=
 )[2]); if (__s2_len > 2 && __result =3D=3D 0) __result =3D (((__const uns=
 igned char *) (__const char *) (((seg)->name + 0)))[3] - ((__const unsign=
 ed char *) (__const char *) (".got2"))[3]); } } __result; })) : (__extens=
 ion__ ({ __const unsigned char *__s1 =3D (__const unsigned char *) (__con=
 st char *) (((seg)->name + 0)); register int __result =3D __s1[0] - ((__c=
 onst unsigned char *) (__const char *) (".got2"))[0]; if (__s2_len > 0 &&=
  __result =3D=3D 0) { __result =3D (__s1[1] - ((__const unsigned char *) =
 (__const char *) (".got2"))[1]); if (__s2_len > 1 && __result =3D=3D 0) {=
  __result =3D (__s1[2] - ((__const unsigned char *) (__const char *) (".g=
 ot2"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __result =3D (__s1[3] =
 - ((__const unsigned char *) (__const char *) (".got2"))[3]); } } __resul=
 t; }))) : strcmp (((seg)->name + 0), ".got2")))); }) !=3D 0
           && __extension__ ({ size_t __s1_len, __s2_len; (__builtin_const=
 ant_p (((seg)->name + 0)) && __builtin_constant_p (".dtors") && (__s1_len=
  =3D strlen (((seg)->name + 0)), __s2_len =3D strlen (".dtors"), (!((size=
 _t)(const void *)((((seg)->name + 0)) + 1) - (size_t)(const void *)(((seg=
 )->name + 0)) =3D=3D 1) || __s1_len >=3D 4) && (!((size_t)(const void *)(=
 (".dtors") + 1) - (size_t)(const void *)(".dtors") =3D=3D 1) || __s2_len =
 >=3D 4)) ? memcmp ((__const char *) (((seg)->name + 0)), (__const char *)=
  (".dtors"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builti=
 n_constant_p (((seg)->name + 0)) && ((size_t)(const void *)((((seg)->name=
  + 0)) + 1) - (size_t)(const void *)(((seg)->name + 0)) =3D=3D 1) && (__s=
 1_len =3D strlen (((seg)->name + 0)), __s1_len < 4) ? (__builtin_constant=
 _p (".dtors") && ((size_t)(const void *)((".dtors") + 1) - (size_t)(const=
  void *)(".dtors") =3D=3D 1) ? (__extension__ ({ register int __result =3D=
  (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[0] - (=
 (__const unsigned char *) (__const char *)(".dtors"))[0]); if (__s1_len >=
  0 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__co=
 nst char *) (((seg)->name + 0)))[1] - ((__const unsigned char *) (__const=
  char *) (".dtors"))[1]); if (__s1_len > 1 && __result =3D=3D 0) { __resu=
 lt =3D (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[=
 2] - ((__const unsigned char *) (__const char *) (".dtors"))[2]); if (__s=
 1_len > 2 && __result =3D=3D 0) __result =3D (((__const unsigned char *) =
 (__const char *) (((seg)->name + 0)))[3] - ((__const unsigned char *) (__=
 const char *) (".dtors"))[3]); } } __result; })) : (__extension__ ({ __co=
 nst unsigned char *__s2 =3D (__const unsigned char *) (__const char *) ("=
 =2Edtors"); register int __result =3D (((__const unsigned char *) (__cons=
 t char *) (((seg)->name + 0)))[0] - __s2[0]); if (__s1_len > 0 && __resul=
 t =3D=3D 0) { __result =3D (((__const unsigned char *) (__const char *) (=
 ((seg)->name + 0)))[1] - __s2[1]); if (__s1_len > 1 && __result =3D=3D 0)=
  { __result =3D (((__const unsigned char *) (__const char *) (((seg)->nam=
 e + 0)))[2] - __s2[2]); if (__s1_len > 2 && __result =3D=3D 0) __result =3D=
  (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[3] - _=
 _s2[3]); } } __result; }))) : (__builtin_constant_p (".dtors") && ((size_=
 t)(const void *)((".dtors") + 1) - (size_t)(const void *)(".dtors") =3D=3D=
  1) && (__s2_len =3D strlen (".dtors"), __s2_len < 4) ? (__builtin_consta=
 nt_p (((seg)->name + 0)) && ((size_t)(const void *)((((seg)->name + 0)) +=
  1) - (size_t)(const void *)(((seg)->name + 0)) =3D=3D 1) ? (__extension_=
 _ ({ register int __result =3D (((__const unsigned char *) (__const char =
 *) (((seg)->name + 0)))[0] - ((__const unsigned char *) (__const char *)(=
 ".dtors"))[0]); if (__s2_len > 0 && __result =3D=3D 0) { __result =3D (((=
 __const unsigned char *) (__const char *) (((seg)->name + 0)))[1] - ((__c=
 onst unsigned char *) (__const char *) (".dtors"))[1]); if (__s2_len > 1 =
 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__const=
  char *) (((seg)->name + 0)))[2] - ((__const unsigned char *) (__const ch=
 ar *) (".dtors"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __result =3D=
  (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[3] - (=
 (__const unsigned char *) (__const char *) (".dtors"))[3]); } } __result;=
  })) : (__extension__ ({ __const unsigned char *__s1 =3D (__const unsigne=
 d char *) (__const char *) (((seg)->name + 0)); register int __result =3D=
  __s1[0] - ((__const unsigned char *) (__const char *) (".dtors"))[0]; if=
  (__s2_len > 0 && __result =3D=3D 0) { __result =3D (__s1[1] - ((__const =
 unsigned char *) (__const char *) (".dtors"))[1]); if (__s2_len > 1 && __=
 result =3D=3D 0) { __result =3D (__s1[2] - ((__const unsigned char *) (__=
 const char *) (".dtors"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __r=
 esult =3D (__s1[3] - ((__const unsigned char *) (__const char *) (".dtors=
 "))[3]); } } __result; }))) : strcmp (((seg)->name + 0), ".dtors")))); })=
  !=3D 0
           && __extension__ ({ size_t __s1_len, __s2_len; (__builtin_const=
 ant_p (((seg)->name + 0)) && __builtin_constant_p (".ctors") && (__s1_len=
  =3D strlen (((seg)->name + 0)), __s2_len =3D strlen (".ctors"), (!((size=
 _t)(const void *)((((seg)->name + 0)) + 1) - (size_t)(const void *)(((seg=
 )->name + 0)) =3D=3D 1) || __s1_len >=3D 4) && (!((size_t)(const void *)(=
 (".ctors") + 1) - (size_t)(const void *)(".ctors") =3D=3D 1) || __s2_len =
 >=3D 4)) ? memcmp ((__const char *) (((seg)->name + 0)), (__const char *)=
  (".ctors"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builti=
 n_constant_p (((seg)->name + 0)) && ((size_t)(const void *)((((seg)->name=
  + 0)) + 1) - (size_t)(const void *)(((seg)->name + 0)) =3D=3D 1) && (__s=
 1_len =3D strlen (((seg)->name + 0)), __s1_len < 4) ? (__builtin_constant=
 _p (".ctors") && ((size_t)(const void *)((".ctors") + 1) - (size_t)(const=
  void *)(".ctors") =3D=3D 1) ? (__extension__ ({ register int __result =3D=
  (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[0] - (=
 (__const unsigned char *) (__const char *)(".ctors"))[0]); if (__s1_len >=
  0 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__co=
 nst char *) (((seg)->name + 0)))[1] - ((__const unsigned char *) (__const=
  char *) (".ctors"))[1]); if (__s1_len > 1 && __result =3D=3D 0) { __resu=
 lt =3D (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[=
 2] - ((__const unsigned char *) (__const char *) (".ctors"))[2]); if (__s=
 1_len > 2 && __result =3D=3D 0) __result =3D (((__const unsigned char *) =
 (__const char *) (((seg)->name + 0)))[3] - ((__const unsigned char *) (__=
 const char *) (".ctors"))[3]); } } __result; })) : (__extension__ ({ __co=
 nst unsigned char *__s2 =3D (__const unsigned char *) (__const char *) ("=
 =2Ectors"); register int __result =3D (((__const unsigned char *) (__cons=
 t char *) (((seg)->name + 0)))[0] - __s2[0]); if (__s1_len > 0 && __resul=
 t =3D=3D 0) { __result =3D (((__const unsigned char *) (__const char *) (=
 ((seg)->name + 0)))[1] - __s2[1]); if (__s1_len > 1 && __result =3D=3D 0)=
  { __result =3D (((__const unsigned char *) (__const char *) (((seg)->nam=
 e + 0)))[2] - __s2[2]); if (__s1_len > 2 && __result =3D=3D 0) __result =3D=
  (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[3] - _=
 _s2[3]); } } __result; }))) : (__builtin_constant_p (".ctors") && ((size_=
 t)(const void *)((".ctors") + 1) - (size_t)(const void *)(".ctors") =3D=3D=
  1) && (__s2_len =3D strlen (".ctors"), __s2_len < 4) ? (__builtin_consta=
 nt_p (((seg)->name + 0)) && ((size_t)(const void *)((((seg)->name + 0)) +=
  1) - (size_t)(const void *)(((seg)->name + 0)) =3D=3D 1) ? (__extension_=
 _ ({ register int __result =3D (((__const unsigned char *) (__const char =
 *) (((seg)->name + 0)))[0] - ((__const unsigned char *) (__const char *)(=
 ".ctors"))[0]); if (__s2_len > 0 && __result =3D=3D 0) { __result =3D (((=
 __const unsigned char *) (__const char *) (((seg)->name + 0)))[1] - ((__c=
 onst unsigned char *) (__const char *) (".ctors"))[1]); if (__s2_len > 1 =
 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__const=
  char *) (((seg)->name + 0)))[2] - ((__const unsigned char *) (__const ch=
 ar *) (".ctors"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __result =3D=
  (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[3] - (=
 (__const unsigned char *) (__const char *) (".ctors"))[3]); } } __result;=
  })) : (__extension__ ({ __const unsigned char *__s1 =3D (__const unsigne=
 d char *) (__const char *) (((seg)->name + 0)); register int __result =3D=
  __s1[0] - ((__const unsigned char *) (__const char *) (".ctors"))[0]; if=
  (__s2_len > 0 && __result =3D=3D 0) { __result =3D (__s1[1] - ((__const =
 unsigned char *) (__const char *) (".ctors"))[1]); if (__s2_len > 1 && __=
 result =3D=3D 0) { __result =3D (__s1[2] - ((__const unsigned char *) (__=
 const char *) (".ctors"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __r=
 esult =3D (__s1[3] - ((__const unsigned char *) (__const char *) (".ctors=
 "))[3]); } } __result; }))) : strcmp (((seg)->name + 0), ".ctors")))); })=
  !=3D 0
           && __extension__ ({ size_t __s1_len, __s2_len; (__builtin_const=
 ant_p (((seg)->name + 0)) && __builtin_constant_p (".fixup") && (__s1_len=
  =3D strlen (((seg)->name + 0)), __s2_len =3D strlen (".fixup"), (!((size=
 _t)(const void *)((((seg)->name + 0)) + 1) - (size_t)(const void *)(((seg=
 )->name + 0)) =3D=3D 1) || __s1_len >=3D 4) && (!((size_t)(const void *)(=
 (".fixup") + 1) - (size_t)(const void *)(".fixup") =3D=3D 1) || __s2_len =
 >=3D 4)) ? memcmp ((__const char *) (((seg)->name + 0)), (__const char *)=
  (".fixup"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builti=
 n_constant_p (((seg)->name + 0)) && ((size_t)(const void *)((((seg)->name=
  + 0)) + 1) - (size_t)(const void *)(((seg)->name + 0)) =3D=3D 1) && (__s=
 1_len =3D strlen (((seg)->name + 0)), __s1_len < 4) ? (__builtin_constant=
 _p (".fixup") && ((size_t)(const void *)((".fixup") + 1) - (size_t)(const=
  void *)(".fixup") =3D=3D 1) ? (__extension__ ({ register int __result =3D=
  (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[0] - (=
 (__const unsigned char *) (__const char *)(".fixup"))[0]); if (__s1_len >=
  0 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__co=
 nst char *) (((seg)->name + 0)))[1] - ((__const unsigned char *) (__const=
  char *) (".fixup"))[1]); if (__s1_len > 1 && __result =3D=3D 0) { __resu=
 lt =3D (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[=
 2] - ((__const unsigned char *) (__const char *) (".fixup"))[2]); if (__s=
 1_len > 2 && __result =3D=3D 0) __result =3D (((__const unsigned char *) =
 (__const char *) (((seg)->name + 0)))[3] - ((__const unsigned char *) (__=
 const char *) (".fixup"))[3]); } } __result; })) : (__extension__ ({ __co=
 nst unsigned char *__s2 =3D (__const unsigned char *) (__const char *) ("=
 =2Efixup"); register int __result =3D (((__const unsigned char *) (__cons=
 t char *) (((seg)->name + 0)))[0] - __s2[0]); if (__s1_len > 0 && __resul=
 t =3D=3D 0) { __result =3D (((__const unsigned char *) (__const char *) (=
 ((seg)->name + 0)))[1] - __s2[1]); if (__s1_len > 1 && __result =3D=3D 0)=
  { __result =3D (((__const unsigned char *) (__const char *) (((seg)->nam=
 e + 0)))[2] - __s2[2]); if (__s1_len > 2 && __result =3D=3D 0) __result =3D=
  (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[3] - _=
 _s2[3]); } } __result; }))) : (__builtin_constant_p (".fixup") && ((size_=
 t)(const void *)((".fixup") + 1) - (size_t)(const void *)(".fixup") =3D=3D=
  1) && (__s2_len =3D strlen (".fixup"), __s2_len < 4) ? (__builtin_consta=
 nt_p (((seg)->name + 0)) && ((size_t)(const void *)((((seg)->name + 0)) +=
  1) - (size_t)(const void *)(((seg)->name + 0)) =3D=3D 1) ? (__extension_=
 _ ({ register int __result =3D (((__const unsigned char *) (__const char =
 *) (((seg)->name + 0)))[0] - ((__const unsigned char *) (__const char *)(=
 ".fixup"))[0]); if (__s2_len > 0 && __result =3D=3D 0) { __result =3D (((=
 __const unsigned char *) (__const char *) (((seg)->name + 0)))[1] - ((__c=
 onst unsigned char *) (__const char *) (".fixup"))[1]); if (__s2_len > 1 =
 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__const=
  char *) (((seg)->name + 0)))[2] - ((__const unsigned char *) (__const ch=
 ar *) (".fixup"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __result =3D=
  (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[3] - (=
 (__const unsigned char *) (__const char *) (".fixup"))[3]); } } __result;=
  })) : (__extension__ ({ __const unsigned char *__s1 =3D (__const unsigne=
 d char *) (__const char *) (((seg)->name + 0)); register int __result =3D=
  __s1[0] - ((__const unsigned char *) (__const char *) (".fixup"))[0]; if=
  (__s2_len > 0 && __result =3D=3D 0) { __result =3D (__s1[1] - ((__const =
 unsigned char *) (__const char *) (".fixup"))[1]); if (__s2_len > 1 && __=
 result =3D=3D 0) { __result =3D (__s1[2] - ((__const unsigned char *) (__=
 const char *) (".fixup"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __r=
 esult =3D (__s1[3] - ((__const unsigned char *) (__const char *) (".fixup=
 "))[3]); } } __result; }))) : strcmp (((seg)->name + 0), ".fixup")))); })=
  !=3D 0
           && __extension__ ({ size_t __s1_len, __s2_len; (__builtin_const=
 ant_p (((seg)->name + 0)) && __builtin_constant_p (".gcc_except_table") &=
 & (__s1_len =3D strlen (((seg)->name + 0)), __s2_len =3D strlen (".gcc_ex=
 cept_table"), (!((size_t)(const void *)((((seg)->name + 0)) + 1) - (size_=
 t)(const void *)(((seg)->name + 0)) =3D=3D 1) || __s1_len >=3D 4) && (!((=
 size_t)(const void *)((".gcc_except_table") + 1) - (size_t)(const void *)=
 (".gcc_except_table") =3D=3D 1) || __s2_len >=3D 4)) ? memcmp ((__const c=
 har *) (((seg)->name + 0)), (__const char *) (".gcc_except_table"), (__s1=
 _len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (((se=
 g)->name + 0)) && ((size_t)(const void *)((((seg)->name + 0)) + 1) - (siz=
 e_t)(const void *)(((seg)->name + 0)) =3D=3D 1) && (__s1_len =3D strlen (=
 ((seg)->name + 0)), __s1_len < 4) ? (__builtin_constant_p (".gcc_except_t=
 able") && ((size_t)(const void *)((".gcc_except_table") + 1) - (size_t)(c=
 onst void *)(".gcc_except_table") =3D=3D 1) ? (__extension__ ({ register =
 int __result =3D (((__const unsigned char *) (__const char *) (((seg)->na=
 me + 0)))[0] - ((__const unsigned char *) (__const char *)(".gcc_except_t=
 able"))[0]); if (__s1_len > 0 && __result =3D=3D 0) { __result =3D (((__c=
 onst unsigned char *) (__const char *) (((seg)->name + 0)))[1] - ((__cons=
 t unsigned char *) (__const char *) (".gcc_except_table"))[1]); if (__s1_=
 len > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) =
 (__const char *) (((seg)->name + 0)))[2] - ((__const unsigned char *) (__=
 const char *) (".gcc_except_table"))[2]); if (__s1_len > 2 && __result =3D=
 =3D 0) __result =3D (((__const unsigned char *) (__const char *) (((seg)-=
 >name + 0)))[3] - ((__const unsigned char *) (__const char *) (".gcc_exce=
 pt_table"))[3]); } } __result; })) : (__extension__ ({ __const unsigned c=
 har *__s2 =3D (__const unsigned char *) (__const char *) (".gcc_except_ta=
 ble"); register int __result =3D (((__const unsigned char *) (__const cha=
 r *) (((seg)->name + 0)))[0] - __s2[0]); if (__s1_len > 0 && __result =3D=
 =3D 0) { __result =3D (((__const unsigned char *) (__const char *) (((seg=
 )->name + 0)))[1] - __s2[1]); if (__s1_len > 1 && __result =3D=3D 0) { __=
 result =3D (((__const unsigned char *) (__const char *) (((seg)->name + 0=
 )))[2] - __s2[2]); if (__s1_len > 2 && __result =3D=3D 0) __result =3D ((=
 (__const unsigned char *) (__const char *) (((seg)->name + 0)))[3] - __s2=
 [3]); } } __result; }))) : (__builtin_constant_p (".gcc_except_table") &&=
  ((size_t)(const void *)((".gcc_except_table") + 1) - (size_t)(const void=
  *)(".gcc_except_table") =3D=3D 1) && (__s2_len =3D strlen (".gcc_except_=
 table"), __s2_len < 4) ? (__builtin_constant_p (((seg)->name + 0)) && ((s=
 ize_t)(const void *)((((seg)->name + 0)) + 1) - (size_t)(const void *)(((=
 seg)->name + 0)) =3D=3D 1) ? (__extension__ ({ register int __result =3D =
 (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[0] - ((=
 __const unsigned char *) (__const char *)(".gcc_except_table"))[0]); if (=
 __s2_len > 0 && __result =3D=3D 0) { __result =3D (((__const unsigned cha=
 r *) (__const char *) (((seg)->name + 0)))[1] - ((__const unsigned char *=
 ) (__const char *) (".gcc_except_table"))[1]); if (__s2_len > 1 && __resu=
 lt =3D=3D 0) { __result =3D (((__const unsigned char *) (__const char *) =
 (((seg)->name + 0)))[2] - ((__const unsigned char *) (__const char *) (".=
 gcc_except_table"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __result =
 =3D (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[3] =
 - ((__const unsigned char *) (__const char *) (".gcc_except_table"))[3]);=
  } } __result; })) : (__extension__ ({ __const unsigned char *__s1 =3D (_=
 _const unsigned char *) (__const char *) (((seg)->name + 0)); register in=
 t __result =3D __s1[0] - ((__const unsigned char *) (__const char *) (".g=
 cc_except_table"))[0]; if (__s2_len > 0 && __result =3D=3D 0) { __result =
 =3D (__s1[1] - ((__const unsigned char *) (__const char *) (".gcc_except_=
 table"))[1]); if (__s2_len > 1 && __result =3D=3D 0) { __result =3D (__s1=
 [2] - ((__const unsigned char *) (__const char *) (".gcc_except_table"))[=
 2]); if (__s2_len > 2 && __result =3D=3D 0) __result =3D (__s1[3] - ((__c=
 onst unsigned char *) (__const char *) (".gcc_except_table"))[3]); } } __=
 result; }))) : strcmp (((seg)->name + 0), ".gcc_except_table")))); }) !=3D=
  0
           && __extension__ ({ size_t __s1_len, __s2_len; (__builtin_const=
 ant_p (((seg)->name + 0)) && __builtin_constant_p (".eh_frame") && (__s1_=
 len =3D strlen (((seg)->name + 0)), __s2_len =3D strlen (".eh_frame"), (!=
 ((size_t)(const void *)((((seg)->name + 0)) + 1) - (size_t)(const void *)=
 (((seg)->name + 0)) =3D=3D 1) || __s1_len >=3D 4) && (!((size_t)(const vo=
 id *)((".eh_frame") + 1) - (size_t)(const void *)(".eh_frame") =3D=3D 1) =
 || __s2_len >=3D 4)) ? memcmp ((__const char *) (((seg)->name + 0)), (__c=
 onst char *) (".eh_frame"), (__s1_len < __s2_len ? __s1_len : __s2_len) +=
  1) : (__builtin_constant_p (((seg)->name + 0)) && ((size_t)(const void *=
 )((((seg)->name + 0)) + 1) - (size_t)(const void *)(((seg)->name + 0)) =3D=
 =3D 1) && (__s1_len =3D strlen (((seg)->name + 0)), __s1_len < 4) ? (__bu=
 iltin_constant_p (".eh_frame") && ((size_t)(const void *)((".eh_frame") +=
  1) - (size_t)(const void *)(".eh_frame") =3D=3D 1) ? (__extension__ ({ r=
 egister int __result =3D (((__const unsigned char *) (__const char *) (((=
 seg)->name + 0)))[0] - ((__const unsigned char *) (__const char *)(".eh_f=
 rame"))[0]); if (__s1_len > 0 && __result =3D=3D 0) { __result =3D (((__c=
 onst unsigned char *) (__const char *) (((seg)->name + 0)))[1] - ((__cons=
 t unsigned char *) (__const char *) (".eh_frame"))[1]); if (__s1_len > 1 =
 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__const=
  char *) (((seg)->name + 0)))[2] - ((__const unsigned char *) (__const ch=
 ar *) (".eh_frame"))[2]); if (__s1_len > 2 && __result =3D=3D 0) __result=
  =3D (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[3]=
  - ((__const unsigned char *) (__const char *) (".eh_frame"))[3]); } } __=
 result; })) : (__extension__ ({ __const unsigned char *__s2 =3D (__const =
 unsigned char *) (__const char *) (".eh_frame"); register int __result =3D=
  (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[0] - _=
 _s2[0]); if (__s1_len > 0 && __result =3D=3D 0) { __result =3D (((__const=
  unsigned char *) (__const char *) (((seg)->name + 0)))[1] - __s2[1]); if=
  (__s1_len > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned c=
 har *) (__const char *) (((seg)->name + 0)))[2] - __s2[2]); if (__s1_len =
 > 2 && __result =3D=3D 0) __result =3D (((__const unsigned char *) (__con=
 st char *) (((seg)->name + 0)))[3] - __s2[3]); } } __result; }))) : (__bu=
 iltin_constant_p (".eh_frame") && ((size_t)(const void *)((".eh_frame") +=
  1) - (size_t)(const void *)(".eh_frame") =3D=3D 1) && (__s2_len =3D strl=
 en (".eh_frame"), __s2_len < 4) ? (__builtin_constant_p (((seg)->name + 0=
 )) && ((size_t)(const void *)((((seg)->name + 0)) + 1) - (size_t)(const v=
 oid *)(((seg)->name + 0)) =3D=3D 1) ? (__extension__ ({ register int __re=
 sult =3D (((__const unsigned char *) (__const char *) (((seg)->name + 0))=
 )[0] - ((__const unsigned char *) (__const char *)(".eh_frame"))[0]); if =
 (__s2_len > 0 && __result =3D=3D 0) { __result =3D (((__const unsigned ch=
 ar *) (__const char *) (((seg)->name + 0)))[1] - ((__const unsigned char =
 *) (__const char *) (".eh_frame"))[1]); if (__s2_len > 1 && __result =3D=3D=
  0) { __result =3D (((__const unsigned char *) (__const char *) (((seg)->=
 name + 0)))[2] - ((__const unsigned char *) (__const char *) (".eh_frame"=
 ))[2]); if (__s2_len > 2 && __result =3D=3D 0) __result =3D (((__const un=
 signed char *) (__const char *) (((seg)->name + 0)))[3] - ((__const unsig=
 ned char *) (__const char *) (".eh_frame"))[3]); } } __result; })) : (__e=
 xtension__ ({ __const unsigned char *__s1 =3D (__const unsigned char *) (=
 __const char *) (((seg)->name + 0)); register int __result =3D __s1[0] - =
 ((__const unsigned char *) (__const char *) (".eh_frame"))[0]; if (__s2_l=
 en > 0 && __result =3D=3D 0) { __result =3D (__s1[1] - ((__const unsigned=
  char *) (__const char *) (".eh_frame"))[1]); if (__s2_len > 1 && __resul=
 t =3D=3D 0) { __result =3D (__s1[2] - ((__const unsigned char *) (__const=
  char *) (".eh_frame"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __res=
 ult =3D (__s1[3] - ((__const unsigned char *) (__const char *) (".eh_fram=
 e"))[3]); } } __result; }))) : strcmp (((seg)->name + 0), ".eh_frame"))))=
 ; }) !=3D 0
           && __extension__ ({ size_t __s1_len, __s2_len; (__builtin_const=
 ant_p (((seg)->name + 0)) && __builtin_constant_p (".ex_shared") && (__s1=
 _len =3D strlen (((seg)->name + 0)), __s2_len =3D strlen (".ex_shared"), =
 (!((size_t)(const void *)((((seg)->name + 0)) + 1) - (size_t)(const void =
 *)(((seg)->name + 0)) =3D=3D 1) || __s1_len >=3D 4) && (!((size_t)(const =
 void *)((".ex_shared") + 1) - (size_t)(const void *)(".ex_shared") =3D=3D=
  1) || __s2_len >=3D 4)) ? memcmp ((__const char *) (((seg)->name + 0)), =
 (__const char *) (".ex_shared"), (__s1_len < __s2_len ? __s1_len : __s2_l=
 en) + 1) : (__builtin_constant_p (((seg)->name + 0)) && ((size_t)(const v=
 oid *)((((seg)->name + 0)) + 1) - (size_t)(const void *)(((seg)->name + 0=
 )) =3D=3D 1) && (__s1_len =3D strlen (((seg)->name + 0)), __s1_len < 4) ?=
  (__builtin_constant_p (".ex_shared") && ((size_t)(const void *)((".ex_sh=
 ared") + 1) - (size_t)(const void *)(".ex_shared") =3D=3D 1) ? (__extensi=
 on__ ({ register int __result =3D (((__const unsigned char *) (__const ch=
 ar *) (((seg)->name + 0)))[0] - ((__const unsigned char *) (__const char =
 *)(".ex_shared"))[0]); if (__s1_len > 0 && __result =3D=3D 0) { __result =
 =3D (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[1] =
 - ((__const unsigned char *) (__const char *) (".ex_shared"))[1]); if (__=
 s1_len > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned char =
 *) (__const char *) (((seg)->name + 0)))[2] - ((__const unsigned char *) =
 (__const char *) (".ex_shared"))[2]); if (__s1_len > 2 && __result =3D=3D=
  0) __result =3D (((__const unsigned char *) (__const char *) (((seg)->na=
 me + 0)))[3] - ((__const unsigned char *) (__const char *) (".ex_shared")=
 )[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 =
 =3D (__const unsigned char *) (__const char *) (".ex_shared"); register i=
 nt __result =3D (((__const unsigned char *) (__const char *) (((seg)->nam=
 e + 0)))[0] - __s2[0]); if (__s1_len > 0 && __result =3D=3D 0) { __result=
  =3D (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[1]=
  - __s2[1]); if (__s1_len > 1 && __result =3D=3D 0) { __result =3D (((__c=
 onst unsigned char *) (__const char *) (((seg)->name + 0)))[2] - __s2[2])=
 ; if (__s1_len > 2 && __result =3D=3D 0) __result =3D (((__const unsigned=
  char *) (__const char *) (((seg)->name + 0)))[3] - __s2[3]); } } __resul=
 t; }))) : (__builtin_constant_p (".ex_shared") && ((size_t)(const void *)=
 ((".ex_shared") + 1) - (size_t)(const void *)(".ex_shared") =3D=3D 1) && =
 (__s2_len =3D strlen (".ex_shared"), __s2_len < 4) ? (__builtin_constant_=
 p (((seg)->name + 0)) && ((size_t)(const void *)((((seg)->name + 0)) + 1)=
  - (size_t)(const void *)(((seg)->name + 0)) =3D=3D 1) ? (__extension__ (=
 { register int __result =3D (((__const unsigned char *) (__const char *) =
 (((seg)->name + 0)))[0] - ((__const unsigned char *) (__const char *)(".e=
 x_shared"))[0]); if (__s2_len > 0 && __result =3D=3D 0) { __result =3D ((=
 (__const unsigned char *) (__const char *) (((seg)->name + 0)))[1] - ((__=
 const unsigned char *) (__const char *) (".ex_shared"))[1]); if (__s2_len=
  > 1 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__=
 const char *) (((seg)->name + 0)))[2] - ((__const unsigned char *) (__con=
 st char *) (".ex_shared"))[2]); if (__s2_len > 2 && __result =3D=3D 0) __=
 result =3D (((__const unsigned char *) (__const char *) (((seg)->name + 0=
 )))[3] - ((__const unsigned char *) (__const char *) (".ex_shared"))[3]);=
  } } __result; })) : (__extension__ ({ __const unsigned char *__s1 =3D (_=
 _const unsigned char *) (__const char *) (((seg)->name + 0)); register in=
 t __result =3D __s1[0] - ((__const unsigned char *) (__const char *) (".e=
 x_shared"))[0]; if (__s2_len > 0 && __result =3D=3D 0) { __result =3D (__=
 s1[1] - ((__const unsigned char *) (__const char *) (".ex_shared"))[1]); =
 if (__s2_len > 1 && __result =3D=3D 0) { __result =3D (__s1[2] - ((__cons=
 t unsigned char *) (__const char *) (".ex_shared"))[2]); if (__s2_len > 2=
  && __result =3D=3D 0) __result =3D (__s1[3] - ((__const unsigned char *)=
  (__const char *) (".ex_shared"))[3]); } } __result; }))) : strcmp (((seg=
 )->name + 0), ".ex_shared")))); }) !=3D 0)
         {
           if ((seg->flags & (0x010 | 0x020)) !=3D 0
               || fixp->fx_r_type !=3D BFD_RELOC_CTOR)
             {
               as_bad_where (fixp->fx_file, fixp->fx_line,
                             dcgettext (((void *)0), "Relocation cannot be=
  done when using -mrelocatable", __LC_MESSAGES));
             }
         }
       return;
     }
 }
 
 
 
 
 void
 ppc_frob_file_before_adjust ()
 {
   symbolS *symp;
 
   if (!ppc_obj64)
     return;
 
   for (symp =3D symbol_rootP; symp; symp =3D symbol_next (symp))
     {
       const char *name;
       char *dotname;
       symbolS *dotsym;
       size_t len;
 
       name =3D S_GET_NAME (symp);
       if (name[0] =3D=3D '.')
         continue;
 
       if (! S_IS_WEAK (symp)
           || S_IS_DEFINED (symp))
         continue;
 
       len =3D strlen (name) + 1;
       dotname =3D xmalloc (len + 1);
       dotname[0] =3D '.';
       memcpy (dotname + 1, name, len);
       dotsym =3D symbol_find (dotname);
       free (dotname);
       if (dotsym !=3D ((void *)0) && (symbol_used_p (dotsym)
                              || symbol_used_in_reloc_p (dotsym)))
         {
           symbol_mark_used (symp);
         }
     }
 
 
   symp =3D symbol_find (".TOC.");
   if (symp !=3D ((void *)0))
     symbol_remove (symp, &symbol_rootP, &symbol_lastP);
 }
 # 1852 "../../binutils-2.13.1/gas/config/tc-ppc.c"
 struct ppc_fixup
 {
   expressionS exp;
   int opindex;
   bfd_reloc_code_real_type reloc;
 };
 
 
 
 
 
 void
 md_assemble (str)
      char *str;
 {
   char *s;
   const struct powerpc_opcode *opcode;
   unsigned long insn;
   const unsigned char *opindex_ptr;
   int skip_optional;
   int need_paren;
   int next_opindex;
   struct ppc_fixup fixups[(5)];
   int fc;
   char *f;
   int i;
 
   bfd_reloc_code_real_type reloc;
 
 
 
   for (s =3D str; *s !=3D '\0' && ! (_sch_istable[(*s) & 0xff] & (unsigne=
 d short)(_sch_isspace)); s++)
     ;
   if (*s !=3D '\0')
     *s++ =3D '\0';
 
 
   opcode =3D (const struct powerpc_opcode *) hash_find (ppc_hash, str);
   if (opcode =3D=3D (const struct powerpc_opcode *) ((void *)0))
     {
       const struct powerpc_macro *macro;
 
       macro =3D (const struct powerpc_macro *) hash_find (ppc_macro_hash,=
  str);
       if (macro =3D=3D (const struct powerpc_macro *) ((void *)0))
         as_bad (dcgettext (((void *)0), "Unrecognized opcode: `%s'", __LC=
 _MESSAGES), str);
       else
         ppc_macro (s, macro);
 
       return;
     }
 
   insn =3D opcode->opcode;
 
   str =3D s;
   while ((_sch_istable[(*str) & 0xff] & (unsigned short)(_sch_isspace)))
     ++str;
 # 1918 "../../binutils-2.13.1/gas/config/tc-ppc.c"
   skip_optional =3D 0;
   for (opindex_ptr =3D opcode->operands; *opindex_ptr !=3D 0; opindex_ptr=
 ++)
     {
       const struct powerpc_operand *operand;
 
       operand =3D &powerpc_operands[*opindex_ptr];
       if ((operand->flags & (01000)) !=3D 0)
         {
           unsigned int opcount;
           unsigned int num_operands_expected;
           unsigned int i;
 
 
 
           if (*str =3D=3D '\0')
             opcount =3D 0;
           else
             {
               opcount =3D 1;
               s =3D str;
               while ((s =3D (__extension__ (__builtin_constant_p (',') &&=
  (',') =3D=3D '\0' ? (char *) __rawmemchr (s, ',') : strchr (s, ',')))) !=
 =3D (char *) ((void *)0))
                 {
                   ++opcount;
                   ++s;
                 }
             }
 
 
 
           for (num_operands_expected =3D 0, i =3D 0; opcode->operands[i];=
  i ++)
             if ((powerpc_operands [opcode->operands[i]].flags & (04)) =3D=
 =3D 0)
               ++ num_operands_expected;
 
 
 
 
           if (opcount < num_operands_expected)
             skip_optional =3D 1;
 
           break;
         }
     }
 
 
   need_paren =3D 0;
   next_opindex =3D 0;
   fc =3D 0;
   for (opindex_ptr =3D opcode->operands; *opindex_ptr !=3D 0; opindex_ptr=
 ++)
     {
       const struct powerpc_operand *operand;
       const char *errmsg;
       char *hold;
       expressionS ex;
       char endc;
 
       if (next_opindex =3D=3D 0)
         operand =3D &powerpc_operands[*opindex_ptr];
       else
         {
           operand =3D &powerpc_operands[next_opindex];
           next_opindex =3D 0;
         }
 
       errmsg =3D ((void *)0);
 
 
 
       if ((operand->flags & (04)) !=3D 0)
         {
           insn =3D (*operand->insert) (insn, 0L, ppc_cpu, &errmsg);
           if (errmsg !=3D (const char *) ((void *)0))
             as_bad (errmsg);
           continue;
         }
 
 
 
       if ((operand->flags & (01000)) !=3D 0
           && skip_optional)
         {
           if (operand->insert)
             {
               insn =3D (*operand->insert) (insn, 0L, ppc_cpu, &errmsg);
               if (errmsg !=3D (const char *) ((void *)0))
                 as_bad (errmsg);
             }
           if ((operand->flags & (02000)) !=3D 0)
             next_opindex =3D *opindex_ptr + 1;
           continue;
         }
 
 
       hold =3D input_line_pointer;
       input_line_pointer =3D str;
 # 2127 "../../binutils-2.13.1/gas/config/tc-ppc.c"
         {
           if (! register_name (&ex))
             {
               if ((operand->flags & (020)) !=3D 0)
                 cr_operand =3D true;
               expr (0, &ex);
               cr_operand =3D false;
             }
         }
 
       str =3D input_line_pointer;
       input_line_pointer =3D hold;
 
       if (ex.X_op =3D=3D O_illegal)
         as_bad (dcgettext (((void *)0), "illegal operand", __LC_MESSAGES)=
 );
       else if (ex.X_op =3D=3D O_absent)
         as_bad (dcgettext (((void *)0), "missing operand", __LC_MESSAGES)=
 );
       else if (ex.X_op =3D=3D O_register)
         {
           insn =3D ppc_insert_operand (insn, operand, ex.X_add_number,
                                      (char *) ((void *)0), 0);
         }
       else if (ex.X_op =3D=3D O_constant)
         {
 
 
           char *orig_str =3D str;
 
           if ((reloc =3D ppc_elf_suffix (&str, &ex)) !=3D BFD_RELOC_UNUSE=
 D)
             switch (reloc)
               {
               default:
                 str =3D orig_str;
                 break;
 
               case BFD_RELOC_LO16:
 
 
 
                 if (ex.X_unsigned && ! (operand->flags & (01)))
                   ex.X_add_number &=3D 0xffff;
                 else
                   ex.X_add_number =3D ((((ex.X_add_number) & 0xffff) ^ 0x=
 8000) - 0x8000);
                 break;
 
               case BFD_RELOC_HI16:
                 if (ex.X_unsigned && ! (operand->flags & (01)))
                   ex.X_add_number =3D (((ex.X_add_number) >> 16) & 0xffff=
 );
                 else
                   ex.X_add_number =3D (((((((ex.X_add_number) >> 16) & 0x=
 ffff)) & 0xffff) ^ 0x8000) - 0x8000);
                 break;
 
               case BFD_RELOC_HI16_S:
                 if (ex.X_unsigned && ! (operand->flags & (01)))
                   ex.X_add_number =3D ((((ex.X_add_number) + 0x8000) >> 1=
 6) & 0xffff);
                 else
                   ex.X_add_number =3D ((((((((ex.X_add_number) + 0x8000) =
 >> 16) & 0xffff)) & 0xffff) ^ 0x8000) - 0x8000);
                 break;
 
               case BFD_RELOC_PPC64_HIGHER:
                 if (ex.X_unsigned && ! (operand->flags & (01)))
                   ex.X_add_number =3D (((ex.X_add_number) >> 32) & 0xffff=
 );
                 else
                   ex.X_add_number =3D (((((((ex.X_add_number) >> 32) & 0x=
 ffff)) & 0xffff) ^ 0x8000) - 0x8000);
                 break;
 
               case BFD_RELOC_PPC64_HIGHER_S:
                 if (ex.X_unsigned && ! (operand->flags & (01)))
                   ex.X_add_number =3D ((((ex.X_add_number) + 0x8000) >> 3=
 2) & 0xffff);
                 else
                   ex.X_add_number =3D ((((((((ex.X_add_number) + 0x8000) =
 >> 32) & 0xffff)) & 0xffff) ^ 0x8000) - 0x8000);
                 break;
 
               case BFD_RELOC_PPC64_HIGHEST:
                 if (ex.X_unsigned && ! (operand->flags & (01)))
                   ex.X_add_number =3D (((ex.X_add_number) >> 48) & 0xffff=
 );
                 else
                   ex.X_add_number =3D (((((((ex.X_add_number) >> 48) & 0x=
 ffff)) & 0xffff) ^ 0x8000) - 0x8000);
                 break;
 
               case BFD_RELOC_PPC64_HIGHEST_S:
                 if (ex.X_unsigned && ! (operand->flags & (01)))
                   ex.X_add_number =3D ((((ex.X_add_number) + 0x8000) >> 4=
 8) & 0xffff);
                 else
                   ex.X_add_number =3D ((((((((ex.X_add_number) + 0x8000) =
 >> 48) & 0xffff)) & 0xffff) ^ 0x8000) - 0x8000);
                 break;
               }
 
           insn =3D ppc_insert_operand (insn, operand, ex.X_add_number,
                                      (char *) ((void *)0), 0);
         }
 
       else if ((reloc =3D ppc_elf_suffix (&str, &ex)) !=3D BFD_RELOC_UNUS=
 ED)
         {
 
 
           if ((operand->flags & (0400)) !=3D 0)
             {
               switch (reloc)
                 {
                 case BFD_RELOC_PPC_B26:
                   reloc =3D BFD_RELOC_PPC_BA26;
                   break;
                 case BFD_RELOC_PPC_B16:
                   reloc =3D BFD_RELOC_PPC_BA16;
                   break;
                 case BFD_RELOC_PPC_B16_BRTAKEN:
                   reloc =3D BFD_RELOC_PPC_BA16_BRTAKEN;
                   break;
                 case BFD_RELOC_PPC_B16_BRNTAKEN:
                   reloc =3D BFD_RELOC_PPC_BA16_BRNTAKEN;
                   break;
                 default:
                   break;
                 }
             }
 
           if (ppc_obj64
               && (operand->flags & (020000)) !=3D 0)
             {
               switch (reloc)
                 {
                 case BFD_RELOC_16:
                   reloc =3D BFD_RELOC_PPC64_ADDR16_DS;
                   break;
                 case BFD_RELOC_LO16:
                   reloc =3D BFD_RELOC_PPC64_ADDR16_LO_DS;
                   break;
                 case BFD_RELOC_16_GOTOFF:
                   reloc =3D BFD_RELOC_PPC64_GOT16_DS;
                   break;
                 case BFD_RELOC_LO16_GOTOFF:
                   reloc =3D BFD_RELOC_PPC64_GOT16_LO_DS;
                   break;
                 case BFD_RELOC_LO16_PLTOFF:
                   reloc =3D BFD_RELOC_PPC64_PLT16_LO_DS;
                   break;
                 case BFD_RELOC_16_BASEREL:
                   reloc =3D BFD_RELOC_PPC64_SECTOFF_DS;
                   break;
                 case BFD_RELOC_LO16_BASEREL:
                   reloc =3D BFD_RELOC_PPC64_SECTOFF_LO_DS;
                   break;
                 case BFD_RELOC_PPC_TOC16:
                   reloc =3D BFD_RELOC_PPC64_TOC16_DS;
                   break;
                 case BFD_RELOC_PPC64_TOC16_LO:
                   reloc =3D BFD_RELOC_PPC64_TOC16_LO_DS;
                   break;
                 case BFD_RELOC_PPC64_PLTGOT16:
                   reloc =3D BFD_RELOC_PPC64_PLTGOT16_DS;
                   break;
                 case BFD_RELOC_PPC64_PLTGOT16_LO:
                   reloc =3D BFD_RELOC_PPC64_PLTGOT16_LO_DS;
                   break;
                 default:
                   as_bad (dcgettext (((void *)0), "unsupported relocation=
  for DS offset field", __LC_MESSAGES));
                   break;
                 }
             }
 
 
           if (fc >=3D (5))
             as_fatal (dcgettext (((void *)0), "too many fixups", __LC_MES=
 SAGES));
           fixups[fc].exp =3D ex;
           fixups[fc].opindex =3D 0;
           fixups[fc].reloc =3D reloc;
           ++fc;
         }
 
 
       else
         {
 
           if (fc >=3D (5))
             as_fatal (dcgettext (((void *)0), "too many fixups", __LC_MES=
 SAGES));
           fixups[fc].exp =3D ex;
           fixups[fc].opindex =3D *opindex_ptr;
           fixups[fc].reloc =3D BFD_RELOC_UNUSED;
           ++fc;
         }
 
       if (need_paren)
         {
           endc =3D ')';
           need_paren =3D 0;
         }
       else if ((operand->flags & (010)) !=3D 0)
         {
           endc =3D '(';
           need_paren =3D 1;
         }
       else
         endc =3D ',';
 
 
 
       if (*str !=3D endc
           && (endc !=3D ',' || *str !=3D '\0'))
         {
           as_bad (dcgettext (((void *)0), "syntax error; found `%c' but e=
 xpected `%c'", __LC_MESSAGES), *str, endc);
           break;
         }
 
       if (*str !=3D '\0')
         ++str;
     }
 
   while ((_sch_istable[(*str) & 0xff] & (unsigned short)(_sch_isspace)))
     ++str;
 
   if (*str !=3D '\0')
     as_bad (dcgettext (((void *)0), "junk at end of line: `%s'", __LC_MES=
 SAGES), str);
 
 
   f =3D frag_more (4);
   md_number_to_chars (f, insn, 4);
 
 
   dwarf2_emit_insn (4);
 # 2355 "../../binutils-2.13.1/gas/config/tc-ppc.c"
   for (i =3D 0; i < fc; i++)
     {
       const struct powerpc_operand *operand;
 
       operand =3D &powerpc_operands[fixups[i].opindex];
       if (fixups[i].reloc !=3D BFD_RELOC_UNUSED)
         {
           reloc_howto_type *reloc_howto;
           int size;
           int offset;
           fixS *fixP;
 
           reloc_howto =3D bfd_reloc_type_lookup (stdoutput, fixups[i].rel=
 oc);
           if (!reloc_howto)
             as_abort ("../../binutils-2.13.1/gas/config/tc-ppc.c", 2369, =
 __PRETTY_FUNCTION__);
 
           size =3D bfd_get_reloc_size (reloc_howto);
           offset =3D target_big_endian ? (4 - size) : 0;
 
           if (size < 1 || size > 4)
             as_abort ("../../binutils-2.13.1/gas/config/tc-ppc.c", 2375, =
 __PRETTY_FUNCTION__);
 
           fixP =3D fix_new_exp (frag_now,
                               f - frag_now->fr_literal + offset,
                               size,
                               &fixups[i].exp,
                               reloc_howto->pc_relative,
                               fixups[i].reloc);
 
 
 
           switch (fixups[i].reloc)
             {
             case BFD_RELOC_16_GOTOFF:
             case BFD_RELOC_PPC_TOC16:
             case BFD_RELOC_LO16:
             case BFD_RELOC_HI16:
             case BFD_RELOC_HI16_S:
 
             case BFD_RELOC_PPC64_HIGHER:
             case BFD_RELOC_PPC64_HIGHER_S:
             case BFD_RELOC_PPC64_HIGHEST:
             case BFD_RELOC_PPC64_HIGHEST_S:
 
               fixP->fx_no_overflow =3D 1;
               break;
             default:
               break;
             }
         }
       else
         fix_new_exp (frag_now,
                      f - frag_now->fr_literal,
                      4,
                      &fixups[i].exp,
                      (operand->flags & (0200)) !=3D 0,
                      ((bfd_reloc_code_real_type)
                       (fixups[i].opindex + (int) BFD_RELOC_UNUSED)));
     }
 }
 
 
 
 
 
 
 static void
 ppc_macro (str, macro)
      char *str;
      const struct powerpc_macro *macro;
 {
   char *operands[10];
   unsigned int count;
   char *s;
   unsigned int len;
   const char *format;
   int arg;
   char *send;
   char *complete;
 
 
   count =3D 0;
   s =3D str;
   while (1)
     {
       if (count >=3D sizeof operands / sizeof operands[0])
         break;
       operands[count++] =3D s;
       s =3D (__extension__ (__builtin_constant_p (',') && (',') =3D=3D '\=
 0' ? (char *) __rawmemchr (s, ',') : strchr (s, ',')));
       if (s =3D=3D (char *) ((void *)0))
         break;
       *s++ =3D '\0';
     }
 
   if (count !=3D macro->operands)
     {
       as_bad (dcgettext (((void *)0), "wrong number of operands", __LC_ME=
 SSAGES));
       return;
     }
 
 
 
   len =3D 0;
   format =3D macro->format;
   while (*format !=3D '\0')
     {
       if (*format !=3D '%')
         {
           ++len;
           ++format;
         }
       else
         {
           arg =3D strtol (format + 1, &send, 10);
           ;
           len +=3D strlen (operands[arg]);
           format =3D send;
         }
     }
 
 
   complete =3D s =3D (char *) __builtin_alloca(len + 1);
   format =3D macro->format;
   while (*format !=3D '\0')
     {
       if (*format !=3D '%')
         *s++ =3D *format++;
       else
         {
           arg =3D strtol (format + 1, &send, 10);
           strcpy (s, operands[arg]);
           s +=3D strlen (s);
           format =3D send;
         }
     }
   *s =3D '\0';
 
 
   md_assemble (complete);
 }
 
 
 
 
 int
 ppc_section_letter (letter, ptr_msg)
      int letter;
      char **ptr_msg;
 {
   if (letter =3D=3D 'e')
     return 0x80000000;
 
   *ptr_msg =3D dcgettext (((void *)0), "Bad .section directive: want a,e,=
 w,x,M,S,G,T in string", __LC_MESSAGES);
   return 0;
 }
 
 int
 ppc_section_word (str, len)
      char *str;
      size_t len;
 {
   if (len =3D=3D 7 && (__extension__ (__builtin_constant_p (7) && ((__bui=
 ltin_constant_p (str) && strlen (str) < ((size_t) (7))) || (__builtin_con=
 stant_p ("exclude") && strlen ("exclude") < ((size_t) (7)))) ? __extensio=
 n__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (str) && __builti=
 n_constant_p ("exclude") && (__s1_len =3D strlen (str), __s2_len =3D strl=
 en ("exclude"), (!((size_t)(const void *)((str) + 1) - (size_t)(const voi=
 d *)(str) =3D=3D 1) || __s1_len >=3D 4) && (!((size_t)(const void *)(("ex=
 clude") + 1) - (size_t)(const void *)("exclude") =3D=3D 1) || __s2_len >=3D=
  4)) ? memcmp ((__const char *) (str), (__const char *) ("exclude"), (__s=
 1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (str=
 ) && ((size_t)(const void *)((str) + 1) - (size_t)(const void *)(str) =3D=
 =3D 1) && (__s1_len =3D strlen (str), __s1_len < 4) ? (__builtin_constant=
 _p ("exclude") && ((size_t)(const void *)(("exclude") + 1) - (size_t)(con=
 st void *)("exclude") =3D=3D 1) ? (__extension__ ({ register int __result=
  =3D (((__const unsigned char *) (__const char *) (str))[0] - ((__const u=
 nsigned char *) (__const char *)("exclude"))[0]); if (__s1_len > 0 && __r=
 esult =3D=3D 0) { __result =3D (((__const unsigned char *) (__const char =
 *) (str))[1] - ((__const unsigned char *) (__const char *) ("exclude"))[1=
 ]); if (__s1_len > 1 && __result =3D=3D 0) { __result =3D (((__const unsi=
 gned char *) (__const char *) (str))[2] - ((__const unsigned char *) (__c=
 onst char *) ("exclude"))[2]); if (__s1_len > 2 && __result =3D=3D 0) __r=
 esult =3D (((__const unsigned char *) (__const char *) (str))[3] - ((__co=
 nst unsigned char *) (__const char *) ("exclude"))[3]); } } __result; }))=
  : (__extension__ ({ __const unsigned char *__s2 =3D (__const unsigned ch=
 ar *) (__const char *) ("exclude"); register int __result =3D (((__const =
 unsigned char *) (__const char *) (str))[0] - __s2[0]); if (__s1_len > 0 =
 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__const=
  char *) (str))[1] - __s2[1]); if (__s1_len > 1 && __result =3D=3D 0) { _=
 _result =3D (((__const unsigned char *) (__const char *) (str))[2] - __s2=
 [2]); if (__s1_len > 2 && __result =3D=3D 0) __result =3D (((__const unsi=
 gned char *) (__const char *) (str))[3] - __s2[3]); } } __result; }))) : =
 (__builtin_constant_p ("exclude") && ((size_t)(const void *)(("exclude") =
 + 1) - (size_t)(const void *)("exclude") =3D=3D 1) && (__s2_len =3D strle=
 n ("exclude"), __s2_len < 4) ? (__builtin_constant_p (str) && ((size_t)(c=
 onst void *)((str) + 1) - (size_t)(const void *)(str) =3D=3D 1) ? (__exte=
 nsion__ ({ register int __result =3D (((__const unsigned char *) (__const=
  char *) (str))[0] - ((__const unsigned char *) (__const char *)("exclude=
 "))[0]); if (__s2_len > 0 && __result =3D=3D 0) { __result =3D (((__const=
  unsigned char *) (__const char *) (str))[1] - ((__const unsigned char *)=
  (__const char *) ("exclude"))[1]); if (__s2_len > 1 && __result =3D=3D 0=
 ) { __result =3D (((__const unsigned char *) (__const char *) (str))[2] -=
  ((__const unsigned char *) (__const char *) ("exclude"))[2]); if (__s2_l=
 en > 2 && __result =3D=3D 0) __result =3D (((__const unsigned char *) (__=
 const char *) (str))[3] - ((__const unsigned char *) (__const char *) ("e=
 xclude"))[3]); } } __result; })) : (__extension__ ({ __const unsigned cha=
 r *__s1 =3D (__const unsigned char *) (__const char *) (str); register in=
 t __result =3D __s1[0] - ((__const unsigned char *) (__const char *) ("ex=
 clude"))[0]; if (__s2_len > 0 && __result =3D=3D 0) { __result =3D (__s1[=
 1] - ((__const unsigned char *) (__const char *) ("exclude"))[1]); if (__=
 s2_len > 1 && __result =3D=3D 0) { __result =3D (__s1[2] - ((__const unsi=
 gned char *) (__const char *) ("exclude"))[2]); if (__s2_len > 2 && __res=
 ult =3D=3D 0) __result =3D (__s1[3] - ((__const unsigned char *) (__const=
  char *) ("exclude"))[3]); } } __result; }))) : strcmp (str, "exclude")))=
 ); }) : strncmp (str, "exclude", 7))) =3D=3D 0)
     return 0x80000000;
 
   return -1;
 }
 
 int
 ppc_section_type (str, len)
      char *str;
      size_t len;
 {
   if (len =3D=3D 7 && (__extension__ (__builtin_constant_p (7) && ((__bui=
 ltin_constant_p (str) && strlen (str) < ((size_t) (7))) || (__builtin_con=
 stant_p ("ordered") && strlen ("ordered") < ((size_t) (7)))) ? __extensio=
 n__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (str) && __builti=
 n_constant_p ("ordered") && (__s1_len =3D strlen (str), __s2_len =3D strl=
 en ("ordered"), (!((size_t)(const void *)((str) + 1) - (size_t)(const voi=
 d *)(str) =3D=3D 1) || __s1_len >=3D 4) && (!((size_t)(const void *)(("or=
 dered") + 1) - (size_t)(const void *)("ordered") =3D=3D 1) || __s2_len >=3D=
  4)) ? memcmp ((__const char *) (str), (__const char *) ("ordered"), (__s=
 1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (str=
 ) && ((size_t)(const void *)((str) + 1) - (size_t)(const void *)(str) =3D=
 =3D 1) && (__s1_len =3D strlen (str), __s1_len < 4) ? (__builtin_constant=
 _p ("ordered") && ((size_t)(const void *)(("ordered") + 1) - (size_t)(con=
 st void *)("ordered") =3D=3D 1) ? (__extension__ ({ register int __result=
  =3D (((__const unsigned char *) (__const char *) (str))[0] - ((__const u=
 nsigned char *) (__const char *)("ordered"))[0]); if (__s1_len > 0 && __r=
 esult =3D=3D 0) { __result =3D (((__const unsigned char *) (__const char =
 *) (str))[1] - ((__const unsigned char *) (__const char *) ("ordered"))[1=
 ]); if (__s1_len > 1 && __result =3D=3D 0) { __result =3D (((__const unsi=
 gned char *) (__const char *) (str))[2] - ((__const unsigned char *) (__c=
 onst char *) ("ordered"))[2]); if (__s1_len > 2 && __result =3D=3D 0) __r=
 esult =3D (((__const unsigned char *) (__const char *) (str))[3] - ((__co=
 nst unsigned char *) (__const char *) ("ordered"))[3]); } } __result; }))=
  : (__extension__ ({ __const unsigned char *__s2 =3D (__const unsigned ch=
 ar *) (__const char *) ("ordered"); register int __result =3D (((__const =
 unsigned char *) (__const char *) (str))[0] - __s2[0]); if (__s1_len > 0 =
 && __result =3D=3D 0) { __result =3D (((__const unsigned char *) (__const=
  char *) (str))[1] - __s2[1]); if (__s1_len > 1 && __result =3D=3D 0) { _=
 _result =3D (((__const unsigned char *) (__const char *) (str))[2] - __s2=
 [2]); if (__s1_len > 2 && __result =3D=3D 0) __result =3D (((__const unsi=
 gned char *) (__const char *) (str))[3] - __s2[3]); } } __result; }))) : =
 (__builtin_constant_p ("ordered") && ((size_t)(const void *)(("ordered") =
 + 1) - (size_t)(const void *)("ordered") =3D=3D 1) && (__s2_len =3D strle=
 n ("ordered"), __s2_len < 4) ? (__builtin_constant_p (str) && ((size_t)(c=
 onst void *)((str) + 1) - (size_t)(const void *)(str) =3D=3D 1) ? (__exte=
 nsion__ ({ register int __result =3D (((__const unsigned char *) (__const=
  char *) (str))[0] - ((__const unsigned char *) (__const char *)("ordered=
 "))[0]); if (__s2_len > 0 && __result =3D=3D 0) { __result =3D (((__const=
  unsigned char *) (__const char *) (str))[1] - ((__const unsigned char *)=
  (__const char *) ("ordered"))[1]); if (__s2_len > 1 && __result =3D=3D 0=
 ) { __result =3D (((__const unsigned char *) (__const char *) (str))[2] -=
  ((__const unsigned char *) (__const char *) ("ordered"))[2]); if (__s2_l=
 en > 2 && __result =3D=3D 0) __result =3D (((__const unsigned char *) (__=
 const char *) (str))[3] - ((__const unsigned char *) (__const char *) ("o=
 rdered"))[3]); } } __result; })) : (__extension__ ({ __const unsigned cha=
 r *__s1 =3D (__const unsigned char *) (__const char *) (str); register in=
 t __result =3D __s1[0] - ((__const unsigned char *) (__const char *) ("or=
 dered"))[0]; if (__s2_len > 0 && __result =3D=3D 0) { __result =3D (__s1[=
 1] - ((__const unsigned char *) (__const char *) ("ordered"))[1]); if (__=
 s2_len > 1 && __result =3D=3D 0) { __result =3D (__s1[2] - ((__const unsi=
 gned char *) (__const char *) ("ordered"))[2]); if (__s2_len > 2 && __res=
 ult =3D=3D 0) __result =3D (__s1[3] - ((__const unsigned char *) (__const=
  char *) ("ordered"))[3]); } } __result; }))) : strcmp (str, "ordered")))=
 ); }) : strncmp (str, "ordered", 7))) =3D=3D 0)
     return 0x7FFFFFFF;
 
   return -1;
 }
 
 int
 ppc_section_flags (flags, attr, type)
      int flags;
      int attr;
      int type;
 {
   if (type =3D=3D 0x7FFFFFFF)
     flags |=3D 0x001 | 0x002 | 0x80000;
 
   if (attr & 0x80000000)
     flags |=3D 0x40000;
 
   return flags;
 }
 # 2555 "../../binutils-2.13.1/gas/config/tc-ppc.c"
 static void
 ppc_byte (ignore)
      int ignore __attribute__ ((__unused__));
 {
   if (*input_line_pointer !=3D '\"')
     {
       cons (1);
       return;
     }
 
 
 
   ++input_line_pointer;
   while (1)
     {
       char c;
 
       c =3D *input_line_pointer++;
 
       if (c =3D=3D '\"')
         {
           if (*input_line_pointer !=3D '\"')
             break;
           ++input_line_pointer;
         }
 
       frag_append_1_char (c);
     }
 
   demand_empty_rest_of_line ();
 }
 # 3611 "../../binutils-2.13.1/gas/config/tc-ppc.c"
 static void
 ppc_tc (ignore)
      int ignore __attribute__ ((__unused__));
 {
 # 3671 "../../binutils-2.13.1/gas/config/tc-ppc.c"
   int align;
 
 
   while (( lex_type[(unsigned char) (*input_line_pointer)] & (1) )
          || *input_line_pointer =3D=3D '['
          || *input_line_pointer =3D=3D ']'
          || *input_line_pointer =3D=3D '{'
          || *input_line_pointer =3D=3D '}')
     ++input_line_pointer;
 
 
   align =3D ppc_obj64 ? 3 : 2;
   frag_align (align, 0, 0);
   record_alignment (now_seg, align);
 
 
   if (*input_line_pointer !=3D ',')
     demand_empty_rest_of_line ();
   else
     {
       ++input_line_pointer;
       cons (ppc_obj64 ? 8 : 4);
     }
 }
 # 3704 "../../binutils-2.13.1/gas/config/tc-ppc.c"
 static void
 ppc_machine (ignore)
      int ignore __attribute__ ((__unused__));
 {
   discard_rest_of_line ();
 }
 
 
 
 static int
 ppc_is_toc_sym (sym)
      symbolS *sym;
 {
 
 
 
 
   const char *sname =3D ((S_GET_SEGMENT (sym))->name + 0);
   if (ppc_obj64)
     return __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constan=
 t_p (sname) && __builtin_constant_p (".toc") && (__s1_len =3D strlen (sna=
 me), __s2_len =3D strlen (".toc"), (!((size_t)(const void *)((sname) + 1)=
  - (size_t)(const void *)(sname) =3D=3D 1) || __s1_len >=3D 4) && (!((siz=
 e_t)(const void *)((".toc") + 1) - (size_t)(const void *)(".toc") =3D=3D =
 1) || __s2_len >=3D 4)) ? memcmp ((__const char *) (sname), (__const char=
  *) (".toc"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__built=
 in_constant_p (sname) && ((size_t)(const void *)((sname) + 1) - (size_t)(=
 const void *)(sname) =3D=3D 1) && (__s1_len =3D strlen (sname), __s1_len =
 < 4) ? (__builtin_constant_p (".toc") && ((size_t)(const void *)((".toc")=
  + 1) - (size_t)(const void *)(".toc") =3D=3D 1) ? (__extension__ ({ regi=
 ster int __result =3D (((__const unsigned char *) (__const char *) (sname=
 ))[0] - ((__const unsigned char *) (__const char *)(".toc"))[0]); if (__s=
 1_len > 0 && __result =3D=3D 0) { __result =3D (((__const unsigned char *=
 ) (__const char *) (sname))[1] - ((__const unsigned char *) (__const char=
  *) (".toc"))[1]); if (__s1_len > 1 && __result =3D=3D 0) { __result =3D =
 (((__const unsigned char *) (__const char *) (sname))[2] - ((__const unsi=
 gned char *) (__const char *) (".toc"))[2]); if (__s1_len > 2 && __result=
  =3D=3D 0) __result =3D (((__const unsigned char *) (__const char *) (sna=
 me))[3] - ((__const unsigned char *) (__const char *) (".toc"))[3]); } } =
 __result; })) : (__extension__ ({ __const unsigned char *__s2 =3D (__cons=
 t unsigned char *) (__const char *) (".toc"); register int __result =3D (=
 ((__const unsigned char *) (__const char *) (sname))[0] - __s2[0]); if (_=
 _s1_len > 0 && __result =3D=3D 0) { __result =3D (((__const unsigned char=
  *) (__const char *) (sname))[1] - __s2[1]); if (__s1_len > 1 && __result=
  =3D=3D 0) { __result =3D (((__const unsigned char *) (__const char *) (s=
 name))[2] - __s2[2]); if (__s1_len > 2 && __result =3D=3D 0) __result =3D=
  (((__const unsigned char *) (__const char *) (sname))[3] - __s2[3]); } }=
  __result; }))) : (__builtin_constant_p (".toc") && ((size_t)(const void =
 *)((".toc") + 1) - (size_t)(const void *)(".toc") =3D=3D 1) && (__s2_len =
 =3D strlen (".toc"), __s2_len < 4) ? (__builtin_constant_p (sname) && ((s=
 ize_t)(const void *)((sname) + 1) - (size_t)(const void *)(sname) =3D=3D =
 1) ? (__extension__ ({ register int __result =3D (((__const unsigned char=
  *) (__const char *) (sname))[0] - ((__const unsigned char *) (__const ch=
 ar *)(".toc"))[0]); if (__s2_len > 0 && __result =3D=3D 0) { __result =3D=
  (((__const unsigned char *) (__const char *) (sname))[1] - ((__const uns=
 igned char *) (__const char *) (".toc"))[1]); if (__s2_len > 1 && __resul=
 t =3D=3D 0) { __result =3D (((__const unsigned char *) (__const char *) (=
 sname))[2] - ((__const unsigned char *) (__const char *) (".toc"))[2]); i=
 f (__s2_len > 2 && __result =3D=3D 0) __result =3D (((__const unsigned ch=
 ar *) (__const char *) (sname))[3] - ((__const unsigned char *) (__const =
 char *) (".toc"))[3]); } } __result; })) : (__extension__ ({ __const unsi=
 gned char *__s1 =3D (__const unsigned char *) (__const char *) (sname); r=
 egister int __result =3D __s1[0] - ((__const unsigned char *) (__const ch=
 ar *) (".toc"))[0]; if (__s2_len > 0 && __result =3D=3D 0) { __result =3D=
  (__s1[1] - ((__const unsigned char *) (__const char *) (".toc"))[1]); if=
  (__s2_len > 1 && __result =3D=3D 0) { __result =3D (__s1[2] - ((__const =
 unsigned char *) (__const char *) (".toc"))[2]); if (__s2_len > 2 && __re=
 sult =3D=3D 0) __result =3D (__s1[3] - ((__const unsigned char *) (__cons=
 t char *) (".toc"))[3]); } } __result; }))) : strcmp (sname, ".toc")))); =
 }) =3D=3D 0;
   else
     return __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constan=
 t_p (sname) && __builtin_constant_p (".got") && (__s1_len =3D strlen (sna=
 me), __s2_len =3D strlen (".got"), (!((size_t)(const void *)((sname) + 1)=
  - (size_t)(const void *)(sname) =3D=3D 1) || __s1_len >=3D 4) && (!((siz=
 e_t)(const void *)((".got") + 1) - (size_t)(const void *)(".got") =3D=3D =
 1) || __s2_len >=3D 4)) ? memcmp ((__const char *) (sname), (__const char=
  *) (".got"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__built=
 in_constant_p (sname) && ((size_t)(const void *)((sname) + 1) - (size_t)(=
 const void *)(sname) =3D=3D 1) && (__s1_len =3D strlen (sname), __s1_len =
 < 4) ? (__builtin_constant_p (".got") && ((size_t)(const void *)((".got")=
  + 1) - (size_t)(const void *)(".got") =3D=3D 1) ? (__extension__ ({ regi=
 ster int __result =3D (((__const unsigned char *) (__const char *) (sname=
 ))[0] - ((__const unsigned char *) (__const char *)(".got"))[0]); if (__s=
 1_len > 0 && __result =3D=3D 0) { __result =3D (((__const unsigned char *=
 ) (__const char *) (sname))[1] - ((__const unsigned char *) (__const char=
  *) (".got"))[1]); if (__s1_len > 1 && __result =3D=3D 0) { __result =3D =
 (((__const unsigned char *) (__const char *) (sname))[2] - ((__const unsi=
 gned char *) (__const char *) (".got"))[2]); if (__s1_len > 2 && __result=
  =3D=3D 0) __result =3D (((__const unsigned char *) (__const char *) (sna=
 me))[3] - ((__const unsigned char *) (__const char *) (".got"))[3]); } } =
 __result; })) : (__extension__ ({ __const unsigned char *__s2 =3D (__cons=
 t unsigned char *) (__const char *) (".got"); register int __result =3D (=
 ((__const unsigned char *) (__const char *) (sname))[0] - __s2[0]); if (_=
 _s1_len > 0 && __result =3D=3D 0) { __result =3D (((__const unsigned char=
  *) (__const char *) (sname))[1] - __s2[1]); if (__s1_len > 1 && __result=
  =3D=3D 0) { __result =3D (((__const unsigned char *) (__const char *) (s=
 name))[2] - __s2[2]); if (__s1_len > 2 && __result =3D=3D 0) __result =3D=
  (((__const unsigned char *) (__const char *) (sname))[3] - __s2[3]); } }=
  __result; }))) : (__builtin_constant_p (".got") && ((size_t)(const void =
 *)((".got") + 1) - (size_t)(const void *)(".got") =3D=3D 1) && (__s2_len =
 =3D strlen (".got"), __s2_len < 4) ? (__builtin_constant_p (sname) && ((s=
 ize_t)(const void *)((sname) + 1) - (size_t)(const void *)(sname) =3D=3D =
 1) ? (__extension__ ({ register int __result =3D (((__const unsigned char=
  *) (__const char *) (sname))[0] - ((__const unsigned char *) (__const ch=
 ar *)(".got"))[0]); if (__s2_len > 0 && __result =3D=3D 0) { __result =3D=
  (((__const unsigned char *) (__const char *) (sname))[1] - ((__const uns=
 igned char *) (__const char *) (".got"))[1]); if (__s2_len > 1 && __resul=
 t =3D=3D 0) { __result =3D (((__const unsigned char *) (__const char *) (=
 sname))[2] - ((__const unsigned char *) (__const char *) (".got"))[2]); i=
 f (__s2_len > 2 && __result =3D=3D 0) __result =3D (((__const unsigned ch=
 ar *) (__const char *) (sname))[3] - ((__const unsigned char *) (__const =
 char *) (".got"))[3]); } } __result; })) : (__extension__ ({ __const unsi=
 gned char *__s1 =3D (__const unsigned char *) (__const char *) (sname); r=
 egister int __result =3D __s1[0] - ((__const unsigned char *) (__const ch=
 ar *) (".got"))[0]; if (__s2_len > 0 && __result =3D=3D 0) { __result =3D=
  (__s1[1] - ((__const unsigned char *) (__const char *) (".got"))[1]); if=
  (__s2_len > 1 && __result =3D=3D 0) { __result =3D (__s1[2] - ((__const =
 unsigned char *) (__const char *) (".got"))[2]); if (__s2_len > 2 && __re=
 sult =3D=3D 0) __result =3D (__s1[3] - ((__const unsigned char *) (__cons=
 t char *) (".got"))[3]); } } __result; }))) : strcmp (sname, ".got")))); =
 }) =3D=3D 0;
 
 }
 # 4812 "../../binutils-2.13.1/gas/config/tc-ppc.c"
 char *
 md_atof (type, litp, sizep)
      int type;
      char *litp;
      int *sizep;
 {
   int prec;
   LITTLENUM_TYPE words[4];
   char *t;
   int i;
 
   switch (type)
     {
     case 'f':
       prec =3D 2;
       break;
 
     case 'd':
       prec =3D 4;
       break;
 
     default:
       *sizep =3D 0;
       return dcgettext (((void *)0), "bad call to md_atof", __LC_MESSAGES=
 );
     }
 
   t =3D atof_ieee (input_line_pointer, type, words);
   if (t)
     input_line_pointer =3D t;
 
   *sizep =3D prec * 2;
 
   if (target_big_endian)
     {
       for (i =3D 0; i < prec; i++)
         {
           md_number_to_chars (litp, (valueT) words[i], 2);
           litp +=3D 2;
         }
     }
   else
     {
       for (i =3D prec - 1; i >=3D 0; i--)
         {
           md_number_to_chars (litp, (valueT) words[i], 2);
           litp +=3D 2;
         }
     }
 
   return ((void *)0);
 }
 
 
 
 
 void
 md_number_to_chars (buf, val, n)
      char *buf;
      valueT val;
      int n;
 {
   if (target_big_endian)
     number_to_chars_bigendian (buf, val, n);
   else
     number_to_chars_littleendian (buf, val, n);
 }
 
 
 
 valueT
 md_section_align (seg, addr)
      asection *seg;
      valueT addr;
 {
   int align =3D ((seg)->alignment_power + 0);
 
   return ((addr + (1 << align) - 1) & (-1 << align));
 }
 
 
 
 int
 md_estimate_size_before_relax (fragp, seg)
      fragS *fragp __attribute__ ((__unused__));
      asection *seg __attribute__ ((__unused__));
 {
   as_abort ("../../binutils-2.13.1/gas/config/tc-ppc.c", 4898, __PRETTY_F=
 UNCTION__);
   return 0;
 }
 
 
 
 void
 md_convert_frag (abfd, sec, fragp)
      bfd *abfd __attribute__ ((__unused__));
      asection *sec __attribute__ ((__unused__));
      fragS *fragp __attribute__ ((__unused__));
 {
   as_abort ("../../binutils-2.13.1/gas/config/tc-ppc.c", 4910, __PRETTY_F=
 UNCTION__);
 }
 
 
 
 symbolS *
 md_undefined_symbol (name)
      char *name __attribute__ ((__unused__));
 {
   return 0;
 }
 
 
 
 
 
 
 long
 md_pcrel_from_section (fixp, sec)
      fixS *fixp;
      segT sec __attribute__ ((__unused__));
 {
   return fixp->fx_frag->fr_address + fixp->fx_where;
 }
 # 5090 "../../binutils-2.13.1/gas/config/tc-ppc.c"
 int
 ppc_fix_adjustable (fix)
      fixS *fix;
 {
   return (fix->fx_r_type !=3D BFD_RELOC_16_GOTOFF
           && fix->fx_r_type !=3D BFD_RELOC_LO16_GOTOFF
           && fix->fx_r_type !=3D BFD_RELOC_HI16_GOTOFF
           && fix->fx_r_type !=3D BFD_RELOC_HI16_S_GOTOFF
           && fix->fx_r_type !=3D BFD_RELOC_GPREL16
           && fix->fx_r_type !=3D BFD_RELOC_VTABLE_INHERIT
           && fix->fx_r_type !=3D BFD_RELOC_VTABLE_ENTRY
           && ! S_IS_EXTERNAL (fix->fx_addsy)
           && ! S_IS_WEAK (fix->fx_addsy)
           && (fix->fx_pcrel
               || (fix->fx_subsy !=3D ((void *)0)
                   && (S_GET_SEGMENT (fix->fx_subsy)
                       =3D=3D S_GET_SEGMENT (fix->fx_addsy)))
               || S_IS_LOCAL (fix->fx_addsy)));
 }
 # 5120 "../../binutils-2.13.1/gas/config/tc-ppc.c"
 void
 md_apply_fix3 (fixP, valP, seg)
      fixS *fixP;
      valueT * valP;
      segT seg __attribute__ ((__unused__));
 {
   valueT value =3D * valP;
 
 
   if (fixP->fx_addsy !=3D ((void *)0))
     {
 
 
       if (symbol_used_in_reloc_p (fixP->fx_addsy)
           && S_GET_SEGMENT (fixP->fx_addsy) !=3D ((asection *) &bfd_abs_s=
 ection)
           && S_GET_SEGMENT (fixP->fx_addsy) !=3D ((asection *) &bfd_und_s=
 ection)
           && ! (((S_GET_SEGMENT (fixP->fx_addsy))->flags & 0x8000) !=3D 0=
 ))
         value -=3D S_GET_VALUE (fixP->fx_addsy);
 
 
 
 
       if (fixP->fx_pcrel)
         value +=3D fixP->fx_frag->fr_address + fixP->fx_where;
     }
   else
     fixP->fx_done =3D 1;
 # 5181 "../../binutils-2.13.1/gas/config/tc-ppc.c"
   if ((int) fixP->fx_r_type >=3D (int) BFD_RELOC_UNUSED)
     {
       int opindex;
       const struct powerpc_operand *operand;
       char *where;
       unsigned long insn;
 
       opindex =3D (int) fixP->fx_r_type - (int) BFD_RELOC_UNUSED;
 
       operand =3D &powerpc_operands[opindex];
 # 5214 "../../binutils-2.13.1/gas/config/tc-ppc.c"
       where =3D fixP->fx_frag->fr_literal + fixP->fx_where;
       if (target_big_endian)
         insn =3D bfd_getb32 ((unsigned char *) where);
       else
         insn =3D bfd_getl32 ((unsigned char *) where);
       insn =3D ppc_insert_operand (insn, operand, (offsetT) value,
                                  fixP->fx_file, fixP->fx_line);
       if (target_big_endian)
         bfd_putb32 ((bfd_vma) insn, (unsigned char *) where);
       else
         bfd_putl32 ((bfd_vma) insn, (unsigned char *) where);
 
       if (fixP->fx_done)
 
         return;
 
       ((fixP->fx_addsy !=3D ((void *)0)) ? 0 : (as_assert ("../../binutil=
 s-2.13.1/gas/config/tc-ppc.c", 5230, __PRETTY_FUNCTION__), 0));
 
 
 
 
       if ((operand->flags & (0200)) !=3D 0
           && operand->bits =3D=3D 26
           && operand->shift =3D=3D 0)
         fixP->fx_r_type =3D BFD_RELOC_PPC_B26;
       else if ((operand->flags & (0200)) !=3D 0
           && operand->bits =3D=3D 16
           && operand->shift =3D=3D 0)
         {
           fixP->fx_r_type =3D BFD_RELOC_PPC_B16;
 
 
 
 
 
         }
       else if ((operand->flags & (0400)) !=3D 0
                && operand->bits =3D=3D 26
                && operand->shift =3D=3D 0)
         fixP->fx_r_type =3D BFD_RELOC_PPC_BA26;
       else if ((operand->flags & (0400)) !=3D 0
                && operand->bits =3D=3D 16
                && operand->shift =3D=3D 0)
         {
           fixP->fx_r_type =3D BFD_RELOC_PPC_BA16;
 
 
 
 
 
         }
 
       else if ((operand->flags & (010)) !=3D 0
                && operand->bits =3D=3D 16
                && operand->shift =3D=3D 0
                && ppc_is_toc_sym (fixP->fx_addsy))
         {
           fixP->fx_r_type =3D BFD_RELOC_PPC_TOC16;
 
           if (ppc_obj64
               && (operand->flags & (020000)) !=3D 0)
             fixP->fx_r_type =3D BFD_RELOC_PPC64_TOC16_DS;
 
           fixP->fx_size =3D 2;
           if (target_big_endian)
             fixP->fx_where +=3D 2;
         }
 
       else
         {
           char *sfile;
           unsigned int sline;
 
 
 
           if (expr_symbol_where (fixP->fx_addsy, &sfile, &sline))
             as_bad_where (fixP->fx_file, fixP->fx_line,
                           dcgettext (((void *)0), "unresolved expression =
 that must be resolved", __LC_MESSAGES));
           else
             as_bad_where (fixP->fx_file, fixP->fx_line,
                           dcgettext (((void *)0), "unsupported relocation=
  against %s", __LC_MESSAGES),
                           S_GET_NAME (fixP->fx_addsy));
           fixP->fx_done =3D 1;
           return;
         }
     }
   else
     {
 
       ppc_elf_validate_fix (fixP, seg);
 
       switch (fixP->fx_r_type)
         {
         case BFD_RELOC_CTOR:
           if (ppc_obj64)
             goto ctor64;
 
 
         case BFD_RELOC_32:
           if (fixP->fx_pcrel)
             fixP->fx_r_type =3D BFD_RELOC_32_PCREL;
 
 
         case BFD_RELOC_RVA:
         case BFD_RELOC_32_PCREL:
         case BFD_RELOC_PPC_EMB_NADDR32:
           md_number_to_chars (fixP->fx_frag->fr_literal + fixP->fx_where,
                               value, 4);
           break;
 
         case BFD_RELOC_64:
         ctor64:
           if (fixP->fx_pcrel)
             fixP->fx_r_type =3D BFD_RELOC_64_PCREL;
 
 
         case BFD_RELOC_64_PCREL:
           md_number_to_chars (fixP->fx_frag->fr_literal + fixP->fx_where,
                               value, 8);
           break;
 
         case BFD_RELOC_LO16:
         case BFD_RELOC_16:
         case BFD_RELOC_GPREL16:
         case BFD_RELOC_16_GOT_PCREL:
         case BFD_RELOC_16_GOTOFF:
         case BFD_RELOC_LO16_GOTOFF:
         case BFD_RELOC_HI16_GOTOFF:
         case BFD_RELOC_HI16_S_GOTOFF:
         case BFD_RELOC_16_BASEREL:
         case BFD_RELOC_LO16_BASEREL:
         case BFD_RELOC_HI16_BASEREL:
         case BFD_RELOC_HI16_S_BASEREL:
         case BFD_RELOC_PPC_EMB_NADDR16:
         case BFD_RELOC_PPC_EMB_NADDR16_LO:
         case BFD_RELOC_PPC_EMB_NADDR16_HI:
         case BFD_RELOC_PPC_EMB_NADDR16_HA:
         case BFD_RELOC_PPC_EMB_SDAI16:
         case BFD_RELOC_PPC_EMB_SDA2REL:
         case BFD_RELOC_PPC_EMB_SDA2I16:
         case BFD_RELOC_PPC_EMB_RELSEC16:
         case BFD_RELOC_PPC_EMB_RELST_LO:
         case BFD_RELOC_PPC_EMB_RELST_HI:
         case BFD_RELOC_PPC_EMB_RELST_HA:
         case BFD_RELOC_PPC_EMB_RELSDA:
         case BFD_RELOC_PPC_TOC16:
 
         case BFD_RELOC_PPC64_TOC16_LO:
         case BFD_RELOC_PPC64_TOC16_HI:
         case BFD_RELOC_PPC64_TOC16_HA:
 
           if (fixP->fx_pcrel)
             {
               if (fixP->fx_addsy !=3D ((void *)0))
                 as_bad_where (fixP->fx_file, fixP->fx_line,
                               dcgettext (((void *)0), "cannot emit PC rel=
 ative %s relocation against %s", __LC_MESSAGES),
                               bfd_get_reloc_code_name (fixP->fx_r_type),
                               S_GET_NAME (fixP->fx_addsy));
               else
                 as_bad_where (fixP->fx_file, fixP->fx_line,
                               dcgettext (((void *)0), "cannot emit PC rel=
 ative %s relocation", __LC_MESSAGES),
                               bfd_get_reloc_code_name (fixP->fx_r_type));
             }
 
           md_number_to_chars (fixP->fx_frag->fr_literal + fixP->fx_where,
                               value, 2);
           break;
 
 
 
 
         case BFD_RELOC_HI16:
           if (fixP->fx_pcrel)
             as_abort ("../../binutils-2.13.1/gas/config/tc-ppc.c", 5387, =
 __PRETTY_FUNCTION__);
           md_number_to_chars (fixP->fx_frag->fr_literal + fixP->fx_where,
                               (((value) >> 16) & 0xffff), 2);
           break;
 
         case BFD_RELOC_HI16_S:
           if (fixP->fx_pcrel)
             as_abort ("../../binutils-2.13.1/gas/config/tc-ppc.c", 5394, =
 __PRETTY_FUNCTION__);
           md_number_to_chars (fixP->fx_frag->fr_literal + fixP->fx_where,
                               ((((value) + 0x8000) >> 16) & 0xffff), 2);
           break;
 
 
         case BFD_RELOC_PPC64_HIGHER:
           if (fixP->fx_pcrel)
             as_abort ("../../binutils-2.13.1/gas/config/tc-ppc.c", 5402, =
 __PRETTY_FUNCTION__);
 # 5413 "../../binutils-2.13.1/gas/config/tc-ppc.c"
           as_abort("../../binutils-2.13.1/gas/config/tc-ppc.c" " OG patch=
 ed error!", 5413, __FUNCTION__);
           break;
 
         case BFD_RELOC_PPC64_HIGHER_S:
           if (fixP->fx_pcrel)
             as_abort ("../../binutils-2.13.1/gas/config/tc-ppc.c", 5418, =
 __PRETTY_FUNCTION__);
 
 
 
 
           as_abort("../../binutils-2.13.1/gas/config/tc-ppc.c" " OG patch=
 ed error!", 5423, __FUNCTION__);
           break;
 
         case BFD_RELOC_PPC64_HIGHEST:
           if (fixP->fx_pcrel)
             as_abort ("../../binutils-2.13.1/gas/config/tc-ppc.c", 5428, =
 __PRETTY_FUNCTION__);
 
 
 
 
           as_abort("../../binutils-2.13.1/gas/config/tc-ppc.c" " OG patch=
 ed error!", 5433, __FUNCTION__);
           break;
 
         case BFD_RELOC_PPC64_HIGHEST_S:
           if (fixP->fx_pcrel)
             as_abort ("../../binutils-2.13.1/gas/config/tc-ppc.c", 5438, =
 __PRETTY_FUNCTION__);
 
 
 
 
           as_abort("../../binutils-2.13.1/gas/config/tc-ppc.c" " OG patch=
 ed error!", 5443, __FUNCTION__);
           break;
 
         case BFD_RELOC_PPC64_ADDR16_DS:
         case BFD_RELOC_PPC64_ADDR16_LO_DS:
         case BFD_RELOC_PPC64_GOT16_DS:
         case BFD_RELOC_PPC64_GOT16_LO_DS:
         case BFD_RELOC_PPC64_PLT16_LO_DS:
         case BFD_RELOC_PPC64_SECTOFF_DS:
         case BFD_RELOC_PPC64_SECTOFF_LO_DS:
         case BFD_RELOC_PPC64_TOC16_DS:
         case BFD_RELOC_PPC64_TOC16_LO_DS:
         case BFD_RELOC_PPC64_PLTGOT16_DS:
         case BFD_RELOC_PPC64_PLTGOT16_LO_DS:
           if (fixP->fx_pcrel)
             as_abort ("../../binutils-2.13.1/gas/config/tc-ppc.c", 5458, =
 __PRETTY_FUNCTION__);
           {
             unsigned char *where =3D fixP->fx_frag->fr_literal + fixP->fx=
 _where;
             unsigned long val;
 
             if (target_big_endian)
               val =3D bfd_getb16 (where);
             else
               val =3D bfd_getl16 (where);
             val |=3D (value & 0xfffc);
             if (target_big_endian)
               bfd_putb16 ((bfd_vma) val, where);
             else
               bfd_putl16 ((bfd_vma) val, where);
           }
           break;
 
 
 
         case BFD_RELOC_PPC_EMB_SDA21:
           if (fixP->fx_pcrel)
             as_abort ("../../binutils-2.13.1/gas/config/tc-ppc.c", 5479, =
 __PRETTY_FUNCTION__);
 
           md_number_to_chars (fixP->fx_frag->fr_literal + fixP->fx_where
                               + ((target_big_endian) ? 2 : 0),
                               value, 2);
           break;
 
         case BFD_RELOC_8:
           if (fixP->fx_pcrel)
             as_abort ("../../binutils-2.13.1/gas/config/tc-ppc.c", 5488, =
 __PRETTY_FUNCTION__);
 
           md_number_to_chars (fixP->fx_frag->fr_literal + fixP->fx_where,
                               value, 1);
           break;
 
         case BFD_RELOC_24_PLT_PCREL:
         case BFD_RELOC_PPC_LOCAL24PC:
           if (!fixP->fx_pcrel && !fixP->fx_done)
             as_abort ("../../binutils-2.13.1/gas/config/tc-ppc.c", 5497, =
 __PRETTY_FUNCTION__);
 
           if (fixP->fx_done)
             {
               char *where;
               unsigned long insn;
 
 
 
               where =3D fixP->fx_frag->fr_literal + fixP->fx_where;
               if (target_big_endian)
                 insn =3D bfd_getb32 ((unsigned char *) where);
               else
                 insn =3D bfd_getl32 ((unsigned char *) where);
               if ((value & 3) !=3D 0)
                 as_bad_where (fixP->fx_file, fixP->fx_line,
                               dcgettext (((void *)0), "must branch to an =
 address a multiple of 4", __LC_MESSAGES));
               if ((offsetT) value < -0x40000000
                   || (offsetT) value >=3D 0x40000000)
                 as_bad_where (fixP->fx_file, fixP->fx_line,
                               dcgettext (((void *)0), "@local or @plt bra=
 nch destination is too far away, %ld bytes", __LC_MESSAGES),
                               (long) value);
               insn =3D insn | (value & 0x03fffffc);
               if (target_big_endian)
                 bfd_putb32 ((bfd_vma) insn, (unsigned char *) where);
               else
                 bfd_putl32 ((bfd_vma) insn, (unsigned char *) where);
             }
           break;
 
         case BFD_RELOC_VTABLE_INHERIT:
           fixP->fx_done =3D 0;
           if (fixP->fx_addsy
               && !S_IS_DEFINED (fixP->fx_addsy)
               && !S_IS_WEAK (fixP->fx_addsy))
             S_SET_WEAK (fixP->fx_addsy);
           break;
 
         case BFD_RELOC_VTABLE_ENTRY:
           fixP->fx_done =3D 0;
           break;
 
 
 
 
         case BFD_RELOC_PPC64_TOC:
           fixP->fx_done =3D 0;
           break;
 
         default:
           fprintf (stderr,
                    dcgettext (((void *)0), "Gas failure, reloc value %d\n=
 ", __LC_MESSAGES), fixP->fx_r_type);
           fflush (stderr);
           as_abort ("../../binutils-2.13.1/gas/config/tc-ppc.c", 5550, __=
 PRETTY_FUNCTION__);
         }
     }
 
 
   fixP->fx_addnumber =3D value;
 # 5571 "../../binutils-2.13.1/gas/config/tc-ppc.c"
 }
 
 
 
 arelent *
 tc_gen_reloc (seg, fixp)
      asection *seg __attribute__ ((__unused__));
      fixS *fixp;
 {
   arelent *reloc;
 
   reloc =3D (arelent *) xmalloc (sizeof (arelent));
 
   reloc->sym_ptr_ptr =3D (asymbol **) xmalloc (sizeof (asymbol *));
   *reloc->sym_ptr_ptr =3D symbol_get_bfdsym (fixp->fx_addsy);
   reloc->address =3D fixp->fx_frag->fr_address + fixp->fx_where;
   reloc->howto =3D bfd_reloc_type_lookup (stdoutput, fixp->fx_r_type);
   if (reloc->howto =3D=3D (reloc_howto_type *) ((void *)0))
     {
       as_bad_where (fixp->fx_file, fixp->fx_line,
                     dcgettext (((void *)0), "reloc %d not supported by ob=
 ject file format", __LC_MESSAGES),
                     (int) fixp->fx_r_type);
       return ((void *)0);
     }
   reloc->addend =3D fixp->fx_addnumber;
 
   return reloc;
 }
 
 --------------Boundary-00=_UTCH4TK8JIHUCD697UZS
 Content-Type: text/x-diff;
   charset="us-ascii";
   name="tc-ppc.c.patch"
 Content-Transfer-Encoding: 7bit
 Content-Disposition: attachment; filename="tc-ppc.c.patch"
 
 *** tc-ppc.c	Thu Apr 17 10:05:44 2003
 --- tc-ppc.c.patched	Thu Apr 17 10:04:17 2003
 *************** md_apply_fix3 (fixP, valP, seg)
 *** 5400,5428 ****
 --- 5400,5446 ----
   	case BFD_RELOC_PPC64_HIGHER:
   	  if (fixP->fx_pcrel)
   	    abort ();
 + 	  /* patch from OG, to avoid ICE-on-legal-code for gcc 3.2 */
 + 	  /* OG: I found no way around it. But as I am just interested
 + 	   *     in a compiler for the 603e core (32 bit) I think it
 + 	   *     is save to delete it. Nevertheless, crash the whole 
 + 	   *     stuff is somebody would like to use it!
 + 	   */
 + #if 0
   	  md_number_to_chars (fixP->fx_frag->fr_literal + fixP->fx_where,
   			      PPC_HIGHER (value), 2);
 + #endif
 + 	  as_abort(__FILE__ " OG patched error!", __LINE__, __FUNCTION__);
   	  break;
   
   	case BFD_RELOC_PPC64_HIGHER_S:
   	  if (fixP->fx_pcrel)
   	    abort ();
 + #if 0
   	  md_number_to_chars (fixP->fx_frag->fr_literal + fixP->fx_where,
   			      PPC_HIGHERA (value), 2);
 + #endif
 + 	  as_abort(__FILE__ " OG patched error!", __LINE__, __FUNCTION__);
   	  break;
   
   	case BFD_RELOC_PPC64_HIGHEST:
   	  if (fixP->fx_pcrel)
   	    abort ();
 + #if 0
   	  md_number_to_chars (fixP->fx_frag->fr_literal + fixP->fx_where,
   			      PPC_HIGHEST (value), 2);
 + #endif
 + 	  as_abort(__FILE__ " OG patched error!", __LINE__, __FUNCTION__);
   	  break;
   
   	case BFD_RELOC_PPC64_HIGHEST_S:
   	  if (fixP->fx_pcrel)
   	    abort ();
 + #if 0
   	  md_number_to_chars (fixP->fx_frag->fr_literal + fixP->fx_where,
   			      PPC_HIGHESTA (value), 2);
 + #endif
 + 	  as_abort(__FILE__ " OG patched error!", __LINE__, __FUNCTION__);
   	  break;
   
   	case BFD_RELOC_PPC64_ADDR16_DS:
 
 --------------Boundary-00=_UTCH4TK8JIHUCD697UZS--
 


^ permalink raw reply	[flat|nested] 3+ messages in thread

* c/10422: Internal compiler error in simplify_subreg, at simplify-rtx.c:2452
@ 2003-04-16 13:36 oliver.graebner
  0 siblings, 0 replies; 3+ messages in thread
From: oliver.graebner @ 2003-04-16 13:36 UTC (permalink / raw)
  To: gcc-gnats


>Number:         10422
>Category:       c
>Synopsis:       Internal compiler error in simplify_subreg, at simplify-rtx.c:2452
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          ice-on-legal-code
>Submitter-Id:   net
>Arrival-Date:   Wed Apr 16 13:36:00 UTC 2003
>Closed-Date:
>Last-Modified:
>Originator:     Oliver Graebner
>Release:        gcc version 3.2
>Organization:
>Environment:
Operating System: Linux (standard installation from SuSE 8.1) - 'uname -a' returns:
Linux linux 2.4.19-4GB #1 Fri Sep 13 13:14:56 UTC 2002 i686 unknown

gcc -v returns:
Reading specs from /usr/lib/gcc-lib/i486-suse-linux/3.2/specs
Configured with: ../configure --enable-threads=posix --prefix=/usr 
--with-local-prefix=/usr/local --infodir=/usr/share/info 
--mandir=/usr/share/man --libdir=/usr/lib 
--enable-languages=c,c++,f77,objc,java,ada --enable-libgcj 
--with-gxx-include-dir=/usr/include/g++ --with-slibdir=/lib 
--with-system-zlib --enable-shared --enable-__cxa_atexit i486-suse-linux
Thread model: posix
gcc version 3.2
>Description:
While compiling binutils-2.13.1 for a x86-powerpc cross compiler on Linux the following ICE occurs:

gcc -DHAVE_CONFIG_H -I. -I../../binutils-2.13.1/gas -I. -D_GNU_SOURCE -I. -I../../binutils-2.13.1/gas -I../bfd -I../../binutils-2.13.1/gas/config -I../../binutils-2.13.1/gas/../include -I../../binutils-2.13.1/gas/.. -I../../binutils-2.13.1/gas/../bfd -I../../binutils-2.13.1/gas/../intl -I../intl -DLOCALEDIR="\"/opt/cross/powerpc-linux/share/locale\""   -W -Wall -Wstrict-prototypes -Wmissing-prototypes -g -O2 -c 
../../binutils-2.13.1/gas/config/tc-ppc.c 
../../binutils-2.13.1/gas/config/tc-ppc.c: In function `md_assemble':
../../binutils-2.13.1/gas/config/tc-ppc.c:2188: warning: right shift count >= width of type
../../binutils-2.13.1/gas/config/tc-ppc.c:2190: warning: right shift count >= width of type
../../binutils-2.13.1/gas/config/tc-ppc.c:2195: warning: right shift count >= width of type
../../binutils-2.13.1/gas/config/tc-ppc.c:2197: warning: right shift count >= width of type
../../binutils-2.13.1/gas/config/tc-ppc.c:2202: warning: right shift count >= width of type
../../binutils-2.13.1/gas/config/tc-ppc.c:2204: warning: right shift count >= width of type
../../binutils-2.13.1/gas/config/tc-ppc.c:2209: warning: right shift count >= width of type
../../binutils-2.13.1/gas/config/tc-ppc.c:2211: warning: right shift count >= width of type
../../binutils-2.13.1/gas/config/tc-ppc.c: In function `md_apply_fix3':
../../binutils-2.13.1/gas/config/tc-ppc.c:5404: warning: right shift count >= width of type
../../binutils-2.13.1/gas/config/tc-ppc.c:5411: warning: right shift count >= width of type
../../binutils-2.13.1/gas/config/tc-ppc.c:5418: warning: right shift count >= width of type
../../binutils-2.13.1/gas/config/tc-ppc.c:5425: warning: right shift count >= width of type
../../binutils-2.13.1/gas/config/tc-ppc.c:5553: Internal compiler error in simplify_subreg, at simplify-rtx.c:2452
Please submit a full bug report, with preprocessed source if appropriate.
See <URL:http://www.gnu.org/software/gcc/bugs.html> for instructions.
make[3]: *** [tc-ppc.o] Error 1
make[3]: Leaving directory `/opt/cross/powerpc-linux/src/build-binutils/gas'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/opt/cross/powerpc-linux/src/build-binutils/gas'
make[1]: *** [all-recursive-am] Error 2
make[1]: Leaving directory `/opt/cross/powerpc-linux/src/build-binutils/gas'
make: *** [all-gas] Error 2
>How-To-Repeat:
Take the attached file tc-ppc.i and run
gcc -W -Wall -Wstrict-prototypes -Wmissing-prototypes -g -O2 -c tc-ppc.i
>Fix:

>Release-Note:
>Audit-Trail:
>Unformatted:
----gnatsweb-attachment----
Content-Type: text/plain; name="tc-ppc.i"
Content-Disposition: inline; filename="tc-ppc.i"

# 1 "../../binutils-2.13.1/gas/config/tc-ppc.c"
# 1 "<built-in>"
# 1 "<command line>"
# 1 "../../binutils-2.13.1/gas/config/tc-ppc.c"
# 23 "../../binutils-2.13.1/gas/config/tc-ppc.c"
# 1 "/usr/include/stdio.h" 1 3
# 28 "/usr/include/stdio.h" 3
# 1 "/usr/include/features.h" 1 3
# 283 "/usr/include/features.h" 3
# 1 "/usr/include/sys/cdefs.h" 1 3
# 284 "/usr/include/features.h" 2 3
# 312 "/usr/include/features.h" 3
# 1 "/usr/include/gnu/stubs.h" 1 3
# 313 "/usr/include/features.h" 2 3
# 29 "/usr/include/stdio.h" 2 3





# 1 "/usr/lib/gcc-lib/i486-suse-linux/3.2/include/stddef.h" 1 3
# 201 "/usr/lib/gcc-lib/i486-suse-linux/3.2/include/stddef.h" 3
typedef unsigned int size_t;
# 35 "/usr/include/stdio.h" 2 3

# 1 "/usr/include/bits/types.h" 1 3
# 29 "/usr/include/bits/types.h" 3
# 1 "/usr/lib/gcc-lib/i486-suse-linux/3.2/include/stddef.h" 1 3
# 30 "/usr/include/bits/types.h" 2 3


typedef unsigned char __u_char;
typedef unsigned short __u_short;
typedef unsigned int __u_int;
typedef unsigned long __u_long;

__extension__ typedef unsigned long long int __u_quad_t;
__extension__ typedef long long int __quad_t;
# 49 "/usr/include/bits/types.h" 3
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;

__extension__ typedef signed long long int __int64_t;
__extension__ typedef unsigned long long int __uint64_t;

typedef __quad_t *__qaddr_t;

typedef __u_quad_t __dev_t;
typedef __u_int __uid_t;
typedef __u_int __gid_t;
typedef __u_long __ino_t;
typedef __u_int __mode_t;
typedef __u_int __nlink_t;
typedef long int __off_t;
typedef __quad_t __loff_t;
typedef int __pid_t;
typedef int __ssize_t;
typedef __u_long __rlim_t;
typedef __u_quad_t __rlim64_t;
typedef __u_int __id_t;

typedef struct
  {
    int __val[2];
  } __fsid_t;


typedef int __daddr_t;
typedef char *__caddr_t;
typedef long int __time_t;
typedef unsigned int __useconds_t;
typedef long int __suseconds_t;
typedef long int __swblk_t;

typedef long int __clock_t;


typedef int __clockid_t;


typedef int __timer_t;






typedef int __key_t;


typedef unsigned short int __ipc_pid_t;



typedef long int __blksize_t;




typedef long int __blkcnt_t;
typedef __quad_t __blkcnt64_t;


typedef __u_long __fsblkcnt_t;
typedef __u_quad_t __fsblkcnt64_t;


typedef __u_long __fsfilcnt_t;
typedef __u_quad_t __fsfilcnt64_t;


typedef __u_quad_t __ino64_t;


typedef __loff_t __off64_t;


typedef long int __t_scalar_t;
typedef unsigned long int __t_uscalar_t;


typedef int __intptr_t;


typedef unsigned int __socklen_t;




# 1 "/usr/include/bits/pthreadtypes.h" 1 3
# 23 "/usr/include/bits/pthreadtypes.h" 3
# 1 "/usr/include/bits/sched.h" 1 3
# 68 "/usr/include/bits/sched.h" 3
struct __sched_param
  {
    int __sched_priority;
  };
# 24 "/usr/include/bits/pthreadtypes.h" 2 3


struct _pthread_fastlock
{
  long int __status;
  int __spinlock;

};



typedef struct _pthread_descr_struct *_pthread_descr;





typedef struct __pthread_attr_s
{
  int __detachstate;
  int __schedpolicy;
  struct __sched_param __schedparam;
  int __inheritsched;
  int __scope;
  size_t __guardsize;
  int __stackaddr_set;
  void *__stackaddr;
  size_t __stacksize;
} pthread_attr_t;



typedef struct
{
  struct _pthread_fastlock __c_lock;
  _pthread_descr __c_waiting;
} pthread_cond_t;



typedef struct
{
  int __dummy;
} pthread_condattr_t;


typedef unsigned int pthread_key_t;





typedef struct
{
  int __m_reserved;
  int __m_count;
  _pthread_descr __m_owner;
  int __m_kind;
  struct _pthread_fastlock __m_lock;
} pthread_mutex_t;



typedef struct
{
  int __mutexkind;
} pthread_mutexattr_t;



typedef int pthread_once_t;




typedef struct _pthread_rwlock_t
{
  struct _pthread_fastlock __rw_lock;
  int __rw_readers;
  _pthread_descr __rw_writer;
  _pthread_descr __rw_read_waiting;
  _pthread_descr __rw_write_waiting;
  int __rw_kind;
  int __rw_pshared;
} pthread_rwlock_t;



typedef struct
{
  int __lockkind;
  int __pshared;
} pthread_rwlockattr_t;




typedef volatile int pthread_spinlock_t;


typedef struct {
  struct _pthread_fastlock __ba_lock;
  int __ba_required;
  int __ba_present;
  _pthread_descr __ba_waiting;
} pthread_barrier_t;


typedef struct {
  int __pshared;
} pthread_barrierattr_t;





typedef unsigned long int pthread_t;
# 144 "/usr/include/bits/types.h" 2 3
# 37 "/usr/include/stdio.h" 2 3
# 45 "/usr/include/stdio.h" 3
typedef struct _IO_FILE FILE;
# 55 "/usr/include/stdio.h" 3
typedef struct _IO_FILE __FILE;
# 65 "/usr/include/stdio.h" 3
# 1 "/usr/include/libio.h" 1 3
# 32 "/usr/include/libio.h" 3
# 1 "/usr/include/_G_config.h" 1 3
# 14 "/usr/include/_G_config.h" 3
# 1 "/usr/lib/gcc-lib/i486-suse-linux/3.2/include/stddef.h" 1 3
# 294 "/usr/lib/gcc-lib/i486-suse-linux/3.2/include/stddef.h" 3
typedef long int wchar_t;
# 321 "/usr/lib/gcc-lib/i486-suse-linux/3.2/include/stddef.h" 3
typedef unsigned int wint_t;
# 15 "/usr/include/_G_config.h" 2 3
# 24 "/usr/include/_G_config.h" 3
# 1 "/usr/include/wchar.h" 1 3
# 48 "/usr/include/wchar.h" 3
# 1 "/usr/lib/gcc-lib/i486-suse-linux/3.2/include/stddef.h" 1 3
# 49 "/usr/include/wchar.h" 2 3

# 1 "/usr/include/bits/wchar.h" 1 3
# 51 "/usr/include/wchar.h" 2 3
# 67 "/usr/include/wchar.h" 3
typedef struct
{
  int __count;
  union
  {
    wint_t __wch;
    char __wchb[4];
  } __value;
} __mbstate_t;
# 25 "/usr/include/_G_config.h" 2 3

typedef struct
{
  __off_t __pos;
  __mbstate_t __state;
} _G_fpos_t;
typedef struct
{
  __off64_t __pos;
  __mbstate_t __state;
} _G_fpos64_t;
# 44 "/usr/include/_G_config.h" 3
# 1 "/usr/include/gconv.h" 1 3
# 28 "/usr/include/gconv.h" 3
# 1 "/usr/include/wchar.h" 1 3
# 48 "/usr/include/wchar.h" 3
# 1 "/usr/lib/gcc-lib/i486-suse-linux/3.2/include/stddef.h" 1 3
# 49 "/usr/include/wchar.h" 2 3
# 29 "/usr/include/gconv.h" 2 3


# 1 "/usr/lib/gcc-lib/i486-suse-linux/3.2/include/stddef.h" 1 3
# 32 "/usr/include/gconv.h" 2 3





enum
{
  __GCONV_OK = 0,
  __GCONV_NOCONV,
  __GCONV_NODB,
  __GCONV_NOMEM,

  __GCONV_EMPTY_INPUT,
  __GCONV_FULL_OUTPUT,
  __GCONV_ILLEGAL_INPUT,
  __GCONV_INCOMPLETE_INPUT,

  __GCONV_ILLEGAL_DESCRIPTOR,
  __GCONV_INTERNAL_ERROR
};



enum
{
  __GCONV_IS_LAST = 0x0001,
  __GCONV_IGNORE_ERRORS = 0x0002
};



struct __gconv_step;
struct __gconv_step_data;
struct __gconv_loaded_object;
struct __gconv_trans_data;



typedef int (*__gconv_fct) (struct __gconv_step *, struct __gconv_step_data *,
                            __const unsigned char **, __const unsigned char *,
                            unsigned char **, size_t *, int, int);


typedef int (*__gconv_init_fct) (struct __gconv_step *);
typedef void (*__gconv_end_fct) (struct __gconv_step *);



typedef int (*__gconv_trans_fct) (struct __gconv_step *,
                                  struct __gconv_step_data *, void *,
                                  __const unsigned char *,
                                  __const unsigned char **,
                                  __const unsigned char *, unsigned char **,
                                  size_t *);


typedef int (*__gconv_trans_context_fct) (void *, __const unsigned char *,
                                          __const unsigned char *,
                                          unsigned char *, unsigned char *);


typedef int (*__gconv_trans_query_fct) (__const char *, __const char ***,
                                        size_t *);


typedef int (*__gconv_trans_init_fct) (void **, const char *);
typedef void (*__gconv_trans_end_fct) (void *);

struct __gconv_trans_data
{

  __gconv_trans_fct __trans_fct;
  __gconv_trans_context_fct __trans_context_fct;
  __gconv_trans_end_fct __trans_end_fct;
  void *__data;
  struct __gconv_trans_data *__next;
};



struct __gconv_step
{
  struct __gconv_loaded_object *__shlib_handle;
  __const char *__modname;

  int __counter;

  char *__from_name;
  char *__to_name;

  __gconv_fct __fct;
  __gconv_init_fct __init_fct;
  __gconv_end_fct __end_fct;



  int __min_needed_from;
  int __max_needed_from;
  int __min_needed_to;
  int __max_needed_to;


  int __stateful;

  void *__data;
};



struct __gconv_step_data
{
  unsigned char *__outbuf;
  unsigned char *__outbufend;



  int __flags;



  int __invocation_counter;



  int __internal_use;

  __mbstate_t *__statep;
  __mbstate_t __state;



  struct __gconv_trans_data *__trans;
};



typedef struct __gconv_info
{
  size_t __nsteps;
  struct __gconv_step *__steps;
  __extension__ struct __gconv_step_data __data [];
} *__gconv_t;
# 45 "/usr/include/_G_config.h" 2 3
typedef union
{
  struct __gconv_info __cd;
  struct
  {
    struct __gconv_info __cd;
    struct __gconv_step_data __data;
  } __combined;
} _G_iconv_t;

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
# 53 "/usr/include/libio.h" 3
# 1 "/usr/lib/gcc-lib/i486-suse-linux/3.2/include/stdarg.h" 1 3
# 43 "/usr/lib/gcc-lib/i486-suse-linux/3.2/include/stdarg.h" 3
typedef __builtin_va_list __gnuc_va_list;
# 54 "/usr/include/libio.h" 2 3
# 160 "/usr/include/libio.h" 3
struct _IO_jump_t; struct _IO_FILE;
# 170 "/usr/include/libio.h" 3
typedef void _IO_lock_t;





struct _IO_marker {
  struct _IO_marker *_next;
  struct _IO_FILE *_sbuf;



  int _pos;
# 193 "/usr/include/libio.h" 3
};


enum __codecvt_result
{
  __codecvt_ok,
  __codecvt_partial,
  __codecvt_error,
  __codecvt_noconv
};
# 261 "/usr/include/libio.h" 3
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 _blksize;
  __off_t _old_offset;



  unsigned short _cur_column;
  signed char _vtable_offset;
  char _shortbuf[1];



  _IO_lock_t *_lock;
# 305 "/usr/include/libio.h" 3
  __off64_t _offset;





  void *__pad1;
  void *__pad2;

  int _mode;

  char _unused2[15 * sizeof (int) - 2 * sizeof (void *)];

};


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_;
# 344 "/usr/include/libio.h" 3
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);




typedef __io_read_fn cookie_read_function_t;
typedef __io_write_fn cookie_write_function_t;
typedef __io_seek_fn cookie_seek_function_t;
typedef __io_close_fn cookie_close_function_t;


typedef struct
{
  __io_read_fn *read;
  __io_write_fn *write;
  __io_seek_fn *seek;
  __io_close_fn *close;
} _IO_cookie_io_functions_t;
typedef _IO_cookie_io_functions_t cookie_io_functions_t;

struct _IO_cookie_file;


extern void _IO_cookie_init (struct _IO_cookie_file *__cfile, int __read_write,
                             void *__cookie, _IO_cookie_io_functions_t __fns);







extern int __underflow (_IO_FILE *) ;
extern int __uflow (_IO_FILE *) ;
extern int __overflow (_IO_FILE *, int) ;
extern wint_t __wunderflow (_IO_FILE *) ;
extern wint_t __wuflow (_IO_FILE *) ;
extern wint_t __woverflow (_IO_FILE *, wint_t) ;
# 426 "/usr/include/libio.h" 3
extern int _IO_getc (_IO_FILE *__fp) ;
extern int _IO_putc (int __c, _IO_FILE *__fp) ;
extern int _IO_feof (_IO_FILE *__fp) ;
extern int _IO_ferror (_IO_FILE *__fp) ;

extern int _IO_peekc_locked (_IO_FILE *__fp) ;





extern void _IO_flockfile (_IO_FILE *) ;
extern void _IO_funlockfile (_IO_FILE *) ;
extern int _IO_ftrylockfile (_IO_FILE *) ;
# 456 "/usr/include/libio.h" 3
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 *) ;
# 66 "/usr/include/stdio.h" 2 3




typedef __gnuc_va_list va_list;
# 80 "/usr/include/stdio.h" 3
typedef _G_fpos_t fpos_t;




typedef _G_fpos64_t fpos64_t;
# 129 "/usr/include/stdio.h" 3
# 1 "/usr/include/bits/stdio_lim.h" 1 3
# 130 "/usr/include/stdio.h" 2 3



extern FILE *stdin;
extern FILE *stdout;
extern FILE *stderr;






extern int remove (__const char *__filename) ;

extern int rename (__const char *__old, __const char *__new) ;




extern FILE *tmpfile (void) ;
# 158 "/usr/include/stdio.h" 3
extern FILE *tmpfile64 (void) ;


extern char *tmpnam (char *__s) ;




extern char *tmpnam_r (char *__s) ;
# 178 "/usr/include/stdio.h" 3
extern char *tempnam (__const char *__dir, __const char *__pfx)
     __attribute__ ((__malloc__));




extern int fclose (FILE *__stream) ;

extern int fflush (FILE *__stream) ;



extern int fflush_unlocked (FILE *__stream) ;




extern int fcloseall (void) ;





extern FILE *fopen (__const char *__restrict __filename,
                    __const char *__restrict __modes) ;

extern FILE *freopen (__const char *__restrict __filename,
                      __const char *__restrict __modes,
                      FILE *__restrict __stream) ;
# 222 "/usr/include/stdio.h" 3
extern FILE *fopen64 (__const char *__restrict __filename,
                      __const char *__restrict __modes) ;
extern FILE *freopen64 (__const char *__restrict __filename,
                        __const char *__restrict __modes,
                        FILE *__restrict __stream) ;




extern FILE *fdopen (int __fd, __const char *__modes) ;





extern FILE *fopencookie (void *__restrict __magic_cookie,
                          __const char *__restrict __modes,
                          _IO_cookie_io_functions_t __io_funcs) ;


extern FILE *fmemopen (void *__s, size_t __len, __const char *__modes) ;




extern FILE *open_memstream (char **__restrict __bufloc,
                             size_t *__restrict __sizeloc) ;





extern void setbuf (FILE *__restrict __stream, char *__restrict __buf) ;



extern int setvbuf (FILE *__restrict __stream, char *__restrict __buf,
                    int __modes, size_t __n) ;




extern void setbuffer (FILE *__restrict __stream, char *__restrict __buf,
                       size_t __size) ;


extern void setlinebuf (FILE *__stream) ;




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, ...) ;


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) ;



extern int snprintf (char *__restrict __s, size_t __maxlen,
                     __const char *__restrict __format, ...)
     __attribute__ ((__format__ (__printf__, 3, 4)));

extern int vsnprintf (char *__restrict __s, size_t __maxlen,
                      __const char *__restrict __format, __gnuc_va_list __arg)
     __attribute__ ((__format__ (__printf__, 3, 0)));





extern int vasprintf (char **__restrict __ptr, __const char *__restrict __f,
                      __gnuc_va_list __arg)
     __attribute__ ((__format__ (__printf__, 2, 0)));
extern int __asprintf (char **__restrict __ptr,
                       __const char *__restrict __fmt, ...)
     __attribute__ ((__format__ (__printf__, 2, 3)));
extern int asprintf (char **__restrict __ptr,
                     __const char *__restrict __fmt, ...)
     __attribute__ ((__format__ (__printf__, 2, 3)));


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, ...) ;

extern int scanf (__const char *__restrict __format, ...) ;

extern int sscanf (__const char *__restrict __s,
                   __const char *__restrict __format, ...) ;



extern int vfscanf (FILE *__restrict __s, __const char *__restrict __format,
                    __gnuc_va_list __arg)
     __attribute__ ((__format__ (__scanf__, 2, 0)));


extern int vscanf (__const char *__restrict __format, __gnuc_va_list __arg)
     __attribute__ ((__format__ (__scanf__, 1, 0)));


extern int vsscanf (__const char *__restrict __s,
                    __const char *__restrict __format, __gnuc_va_list __arg)
     __attribute__ ((__format__ (__scanf__, 2, 0)));




extern int fgetc (FILE *__stream) ;
extern int getc (FILE *__stream) ;


extern int getchar (void) ;







extern int getc_unlocked (FILE *__stream) ;
extern int getchar_unlocked (void) ;




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) ;







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)
     ;



extern char *fgets_unlocked (char *__restrict __s, int __n,
                             FILE *__restrict __stream) ;




extern char *gets (char *__s) ;
# 426 "/usr/include/stdio.h" 3
extern __ssize_t __getdelim (char **__restrict __lineptr,
                               size_t *__restrict __n, int __delimiter,
                               FILE *__restrict __stream) ;
extern __ssize_t getdelim (char **__restrict __lineptr,
                             size_t *__restrict __n, int __delimiter,
                             FILE *__restrict __stream) ;


extern __ssize_t getline (char **__restrict __lineptr,
                            size_t *__restrict __n,
                            FILE *__restrict __stream) ;




extern int fputs (__const char *__restrict __s, FILE *__restrict __stream)
     ;



extern int fputs_unlocked (__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) ;

extern size_t fwrite (__const void *__restrict __ptr, size_t __size,
                      size_t __n, FILE *__restrict __s) ;



extern size_t fread_unlocked (void *__restrict __ptr, size_t __size,
                              size_t __n, FILE *__restrict __stream) ;
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) ;

extern void rewind (FILE *__stream) ;
# 489 "/usr/include/stdio.h" 3
extern int fseeko (FILE *__stream, __off_t __off, int __whence) ;

extern __off_t ftello (FILE *__stream) ;



extern int fgetpos (FILE *__restrict __stream, fpos_t *__restrict __pos)
     ;

extern int fsetpos (FILE *__stream, __const fpos_t *__pos) ;
# 523 "/usr/include/stdio.h" 3
extern int fseeko64 (FILE *__stream, __off64_t __off, int __whence) ;
extern __off64_t ftello64 (FILE *__stream) ;
extern int fgetpos64 (FILE *__restrict __stream, fpos64_t *__restrict __pos)
     ;
extern int fsetpos64 (FILE *__stream, __const fpos64_t *__pos) ;



extern void clearerr (FILE *__stream) ;

extern int feof (FILE *__stream) ;

extern int ferror (FILE *__stream) ;



extern void clearerr_unlocked (FILE *__stream) ;
extern int feof_unlocked (FILE *__stream) ;
extern int ferror_unlocked (FILE *__stream) ;




extern void perror (__const char *__s) ;





# 1 "/usr/include/bits/sys_errlist.h" 1 3
# 27 "/usr/include/bits/sys_errlist.h" 3
extern int sys_nerr;
extern __const char *__const sys_errlist[];


extern int _sys_nerr;
extern __const char *__const _sys_errlist[];
# 553 "/usr/include/stdio.h" 2 3




extern int fileno (FILE *__stream) ;




extern int fileno_unlocked (FILE *__stream) ;






extern FILE *popen (__const char *__command, __const char *__modes) ;


extern int pclose (FILE *__stream) ;





extern char *ctermid (char *__s) ;





extern char *cuserid (char *__s) ;




struct obstack;


extern int obstack_printf (struct obstack *__restrict __obstack,
                           __const char *__restrict __format, ...) ;
extern int obstack_vprintf (struct obstack *__restrict __obstack,
                            __const char *__restrict __format,
                            __gnuc_va_list __args) ;







extern void flockfile (FILE *__stream) ;



extern int ftrylockfile (FILE *__stream) ;


extern void funlockfile (FILE *__stream) ;
# 625 "/usr/include/stdio.h" 3
# 1 "/usr/include/bits/stdio.h" 1 3
# 33 "/usr/include/bits/stdio.h" 3
extern __inline int
vprintf (__const char *__restrict __fmt, __gnuc_va_list __arg)
{
  return vfprintf (stdout, __fmt, __arg);
}


extern __inline int
getchar (void)
{
  return _IO_getc (stdin);
}




extern __inline int
getc_unlocked (FILE *__fp)
{
  return ((__fp)->_IO_read_ptr >= (__fp)->_IO_read_end ? __uflow (__fp) : *(unsigned char *) (__fp)->_IO_read_ptr++);
}


extern __inline int
getchar_unlocked (void)
{
  return ((stdin)->_IO_read_ptr >= (stdin)->_IO_read_end ? __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 (((__stream)->_IO_write_ptr >= (__stream)->_IO_write_end) ? __overflow (__stream, (unsigned char) (__c)) : (unsigned char) (*(__stream)->_IO_write_ptr++ = (__c)));
}





extern __inline int
putc_unlocked (int __c, FILE *__stream)
{
  return (((__stream)->_IO_write_ptr >= (__stream)->_IO_write_end) ? __overflow (__stream, (unsigned char) (__c)) : (unsigned char) (*(__stream)->_IO_write_ptr++ = (__c)));
}


extern __inline int
putchar_unlocked (int __c)
{
  return (((stdout)->_IO_write_ptr >= (stdout)->_IO_write_end) ? __overflow (stdout, (unsigned char) (__c)) : (unsigned char) (*(stdout)->_IO_write_ptr++ = (__c)));
}





extern __inline __ssize_t
getline (char **__lineptr, size_t *__n, FILE *__stream)
{
  return __getdelim (__lineptr, __n, '\n', __stream);
}





extern __inline int
feof_unlocked (FILE *__stream)
{
  return (((__stream)->_flags & 0x10) != 0);
}


extern __inline int
ferror_unlocked (FILE *__stream)
{
  return (((__stream)->_flags & 0x20) != 0);
}
# 626 "/usr/include/stdio.h" 2 3



# 24 "../../binutils-2.13.1/gas/config/tc-ppc.c" 2
# 1 "../../binutils-2.13.1/gas/as.h" 1
# 40 "../../binutils-2.13.1/gas/as.h"
# 1 "config.h" 1
# 41 "../../binutils-2.13.1/gas/as.h" 2
# 1 "../../binutils-2.13.1/include/bin-bugs.h" 1
# 42 "../../binutils-2.13.1/gas/as.h" 2
# 77 "../../binutils-2.13.1/gas/as.h"
# 1 "/usr/include/string.h" 1 3
# 28 "/usr/include/string.h" 3





# 1 "/usr/lib/gcc-lib/i486-suse-linux/3.2/include/stddef.h" 1 3
# 34 "/usr/include/string.h" 2 3



extern void *memcpy (void *__restrict __dest,
                     __const void *__restrict __src, size_t __n) ;


extern void *memmove (void *__dest, __const void *__src, size_t __n)
     ;





extern void *memccpy (void *__restrict __dest, __const void *__restrict __src,
                      int __c, size_t __n)
     ;




extern void *memset (void *__s, int __c, size_t __n) ;


extern int memcmp (__const void *__s1, __const void *__s2, size_t __n)
     __attribute__ ((__pure__));


extern void *memchr (__const void *__s, int __c, size_t __n)
      __attribute__ ((__pure__));




extern void *rawmemchr (__const void *__s, int __c) __attribute__ ((__pure__));


extern void *memrchr (__const void *__s, int __c, size_t __n)
      __attribute__ ((__pure__));




extern char *strcpy (char *__restrict __dest, __const char *__restrict __src)
     ;

extern char *strncpy (char *__restrict __dest,
                      __const char *__restrict __src, size_t __n) ;


extern char *strcat (char *__restrict __dest, __const char *__restrict __src)
     ;

extern char *strncat (char *__restrict __dest, __const char *__restrict __src,
                      size_t __n) ;


extern int strcmp (__const char *__s1, __const char *__s2)
     __attribute__ ((__pure__));

extern int strncmp (__const char *__s1, __const char *__s2, size_t __n)
     __attribute__ ((__pure__));


extern int strcoll (__const char *__s1, __const char *__s2)
     __attribute__ ((__pure__));

extern size_t strxfrm (char *__restrict __dest,
                       __const char *__restrict __src, size_t __n) ;





# 1 "/usr/include/xlocale.h" 1 3
# 28 "/usr/include/xlocale.h" 3
typedef struct __locale_struct
{

  struct locale_data *__locales[13];


  const unsigned short int *__ctype_b;
  const int *__ctype_tolower;
  const int *__ctype_toupper;
} *__locale_t;
# 109 "/usr/include/string.h" 2 3


extern int __strcoll_l (__const char *__s1, __const char *__s2, __locale_t __l)
     __attribute__ ((__pure__));

extern size_t __strxfrm_l (char *__dest, __const char *__src, size_t __n,
                           __locale_t __l) ;




extern char *strdup (__const char *__s) __attribute__ ((__malloc__));






extern char *strndup (__const char *__string, size_t __n)
     __attribute__ ((__malloc__));
# 155 "/usr/include/string.h" 3
extern char *strchr (__const char *__s, int __c) __attribute__ ((__pure__));

extern char *strrchr (__const char *__s, int __c) __attribute__ ((__pure__));




extern char *strchrnul (__const char *__s, int __c) __attribute__ ((__pure__));




extern size_t strcspn (__const char *__s, __const char *__reject)
     __attribute__ ((__pure__));


extern size_t strspn (__const char *__s, __const char *__accept)
     __attribute__ ((__pure__));

extern char *strpbrk (__const char *__s, __const char *__accept)
     __attribute__ ((__pure__));

extern char *strstr (__const char *__haystack, __const char *__needle)
     __attribute__ ((__pure__));



extern char *strcasestr (__const char *__haystack, __const char *__needle)
     __attribute__ ((__pure__));



extern char *strtok (char *__restrict __s, __const char *__restrict __delim)
     ;



extern char *__strtok_r (char *__restrict __s,
                         __const char *__restrict __delim,
                         char **__restrict __save_ptr) ;

extern char *strtok_r (char *__restrict __s, __const char *__restrict __delim,
                       char **__restrict __save_ptr) ;






extern void *memmem (__const void *__haystack, size_t __haystacklen,
                     __const void *__needle, size_t __needlelen)
     __attribute__ ((__pure__));



extern void *__mempcpy (void *__restrict __dest,
                        __const void *__restrict __src, size_t __n) ;
extern void *mempcpy (void *__restrict __dest,
                      __const void *__restrict __src, size_t __n) ;




extern size_t strlen (__const char *__s) __attribute__ ((__pure__));




extern size_t strnlen (__const char *__string, size_t __maxlen)
     __attribute__ ((__pure__));




extern char *strerror (int __errnum) ;



extern char *strerror_r (int __errnum, char *__buf, size_t __buflen) ;




extern void __bzero (void *__s, size_t __n) ;



extern void bcopy (__const void *__src, void *__dest, size_t __n) ;


extern void bzero (void *__s, size_t __n) ;


extern int bcmp (__const void *__s1, __const void *__s2, size_t __n)
     __attribute__ ((__pure__));


extern char *index (__const char *__s, int __c) __attribute__ ((__pure__));


extern char *rindex (__const char *__s, int __c) __attribute__ ((__pure__));



extern int ffs (int __i) __attribute__ ((__const__));




extern int ffsl (long int __l) __attribute__ ((__const__));

__extension__ extern int ffsll (long long int __ll)
     __attribute__ ((__const__));




extern int strcasecmp (__const char *__s1, __const char *__s2)
     __attribute__ ((__pure__));


extern int strncasecmp (__const char *__s1, __const char *__s2, size_t __n)
     __attribute__ ((__pure__));





extern int __strcasecmp_l (__const char *__s1, __const char *__s2,
                           __locale_t __loc) __attribute__ ((__pure__));

extern int __strncasecmp_l (__const char *__s1, __const char *__s2,
                            size_t __n, __locale_t __loc)
     __attribute__ ((__pure__));





extern char *strsep (char **__restrict __stringp,
                     __const char *__restrict __delim) ;




extern int strverscmp (__const char *__s1, __const char *__s2)
     __attribute__ ((__pure__));


extern char *strsignal (int __sig) ;


extern char *__stpcpy (char *__restrict __dest, __const char *__restrict __src)
     ;
extern char *stpcpy (char *__restrict __dest, __const char *__restrict __src)
     ;



extern char *__stpncpy (char *__restrict __dest,
                        __const char *__restrict __src, size_t __n) ;
extern char *stpncpy (char *__restrict __dest,
                      __const char *__restrict __src, size_t __n) ;


extern char *strfry (char *__string) ;


extern void *memfrob (void *__s, size_t __n) ;






extern char *basename (__const char *__filename) ;
# 357 "/usr/include/string.h" 3
# 1 "/usr/include/bits/string.h" 1 3
# 358 "/usr/include/string.h" 2 3


# 1 "/usr/include/bits/string2.h" 1 3
# 52 "/usr/include/bits/string2.h" 3
# 1 "/usr/include/endian.h" 1 3
# 37 "/usr/include/endian.h" 3
# 1 "/usr/include/bits/endian.h" 1 3
# 38 "/usr/include/endian.h" 2 3
# 53 "/usr/include/bits/string2.h" 2 3
# 387 "/usr/include/bits/string2.h" 3
extern void *__rawmemchr (const void *__s, int __c);
# 917 "/usr/include/bits/string2.h" 3
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;
}
# 974 "/usr/include/bits/string2.h" 3
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;
}
# 1031 "/usr/include/bits/string2.h" 3
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;
}
# 1083 "/usr/include/bits/string2.h" 3
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;
}
# 1115 "/usr/include/bits/string2.h" 3
extern char *__strsep_g (char **__stringp, __const char *__delim);
# 1133 "/usr/include/bits/string2.h" 3
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) && (__reject) == '\0' ? (char *) __rawmemchr (__retval, __reject) : 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;
}
# 1209 "/usr/include/bits/string2.h" 3
# 1 "/usr/include/stdlib.h" 1 3
# 33 "/usr/include/stdlib.h" 3
# 1 "/usr/lib/gcc-lib/i486-suse-linux/3.2/include/stddef.h" 1 3
# 34 "/usr/include/stdlib.h" 2 3


# 527 "/usr/include/stdlib.h" 3
extern void *malloc (size_t __size) __attribute__ ((__malloc__));

extern void *calloc (size_t __nmemb, size_t __size)
     __attribute__ ((__malloc__));
# 864 "/usr/include/stdlib.h" 3

# 1210 "/usr/include/bits/string2.h" 2 3




extern char *__strdup (__const char *__string) __attribute__ ((__malloc__));
# 1233 "/usr/include/bits/string2.h" 3
extern char *__strndup (__const char *__string, size_t __n)
     __attribute__ ((__malloc__));
# 361 "/usr/include/string.h" 2 3




# 78 "../../binutils-2.13.1/gas/as.h" 2






# 1 "/usr/include/stdlib.h" 1 3
# 33 "/usr/include/stdlib.h" 3
# 1 "/usr/lib/gcc-lib/i486-suse-linux/3.2/include/stddef.h" 1 3
# 34 "/usr/include/stdlib.h" 2 3








# 1 "/usr/include/bits/waitflags.h" 1 3
# 43 "/usr/include/stdlib.h" 2 3
# 1 "/usr/include/bits/waitstatus.h" 1 3
# 65 "/usr/include/bits/waitstatus.h" 3
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
# 68 "/usr/include/stdlib.h" 3
typedef union
  {
    union wait *__uptr;
    int *__iptr;
  } __WAIT_STATUS __attribute__ ((__transparent_union__));
# 94 "/usr/include/stdlib.h" 3
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;
# 133 "/usr/include/stdlib.h" 3
extern size_t __ctype_get_mb_cur_max (void) ;



extern double atof (__const char *__nptr) __attribute__ ((__pure__));

extern int atoi (__const char *__nptr) __attribute__ ((__pure__));

extern long int atol (__const char *__nptr) __attribute__ ((__pure__));



__extension__ extern long long int atoll (__const char *__nptr)
     __attribute__ ((__pure__));



extern double strtod (__const char *__restrict __nptr,
                      char **__restrict __endptr) ;



extern float strtof (__const char *__restrict __nptr,
                     char **__restrict __endptr) ;

extern long double strtold (__const char *__restrict __nptr,
                            char **__restrict __endptr) ;



extern long int strtol (__const char *__restrict __nptr,
                        char **__restrict __endptr, int __base) ;

extern unsigned long int strtoul (__const char *__restrict __nptr,
                                  char **__restrict __endptr, int __base)
     ;



__extension__
extern long long int strtoq (__const char *__restrict __nptr,
                             char **__restrict __endptr, int __base) ;

__extension__
extern unsigned long long int strtouq (__const char *__restrict __nptr,
                                       char **__restrict __endptr, int __base)
     ;






__extension__
extern long long int strtoll (__const char *__restrict __nptr,
                              char **__restrict __endptr, int __base) ;

__extension__
extern unsigned long long int strtoull (__const char *__restrict __nptr,
                                        char **__restrict __endptr, int __base)
     ;
# 215 "/usr/include/stdlib.h" 3
extern long int __strtol_l (__const char *__restrict __nptr,
                            char **__restrict __endptr, int __base,
                            __locale_t __loc) ;

extern unsigned long int __strtoul_l (__const char *__restrict __nptr,
                                      char **__restrict __endptr,
                                      int __base, __locale_t __loc) ;

__extension__
extern long long int __strtoll_l (__const char *__restrict __nptr,
                                  char **__restrict __endptr, int __base,
                                  __locale_t __loc) ;

__extension__
extern unsigned long long int __strtoull_l (__const char *__restrict __nptr,
                                            char **__restrict __endptr,
                                            int __base, __locale_t __loc)
     ;

extern double __strtod_l (__const char *__restrict __nptr,
                          char **__restrict __endptr, __locale_t __loc)
     ;

extern float __strtof_l (__const char *__restrict __nptr,
                         char **__restrict __endptr, __locale_t __loc) ;

extern long double __strtold_l (__const char *__restrict __nptr,
                                char **__restrict __endptr,
                                __locale_t __loc) ;






extern double __strtod_internal (__const char *__restrict __nptr,
                                 char **__restrict __endptr, int __group)
     ;
extern float __strtof_internal (__const char *__restrict __nptr,
                                char **__restrict __endptr, int __group)
     ;
extern long double __strtold_internal (__const char *__restrict __nptr,
                                       char **__restrict __endptr,
                                       int __group) ;

extern long int __strtol_internal (__const char *__restrict __nptr,
                                   char **__restrict __endptr,
                                   int __base, int __group) ;



extern unsigned long int __strtoul_internal (__const char *__restrict __nptr,
                                             char **__restrict __endptr,
                                             int __base, int __group) ;




__extension__
extern long long int __strtoll_internal (__const char *__restrict __nptr,
                                         char **__restrict __endptr,
                                         int __base, int __group) ;



__extension__
extern unsigned long long int __strtoull_internal (__const char *
                                                   __restrict __nptr,
                                                   char **__restrict __endptr,
                                                   int __base, int __group)
     ;







extern __inline double
strtod (__const char *__restrict __nptr, char **__restrict __endptr)
{
  return __strtod_internal (__nptr, __endptr, 0);
}
extern __inline long int
strtol (__const char *__restrict __nptr, char **__restrict __endptr,
        int __base)
{
  return __strtol_internal (__nptr, __endptr, __base, 0);
}
extern __inline unsigned long int
strtoul (__const char *__restrict __nptr, char **__restrict __endptr,
         int __base)
{
  return __strtoul_internal (__nptr, __endptr, __base, 0);
}


extern __inline float
strtof (__const char *__restrict __nptr, char **__restrict __endptr)
{
  return __strtof_internal (__nptr, __endptr, 0);
}
extern __inline long double
strtold (__const char *__restrict __nptr, char **__restrict __endptr)
{
  return __strtold_internal (__nptr, __endptr, 0);
}



__extension__ extern __inline long long int
strtoq (__const char *__restrict __nptr, char **__restrict __endptr,
        int __base)
{
  return __strtoll_internal (__nptr, __endptr, __base, 0);
}
__extension__ extern __inline unsigned long long int
strtouq (__const char *__restrict __nptr, char **__restrict __endptr,
         int __base)
{
  return __strtoull_internal (__nptr, __endptr, __base, 0);
}



__extension__ extern __inline long long int
strtoll (__const char *__restrict __nptr, char **__restrict __endptr,
         int __base)
{
  return __strtoll_internal (__nptr, __endptr, __base, 0);
}
__extension__ extern __inline unsigned long long int
strtoull (__const char * __restrict __nptr, char **__restrict __endptr,
          int __base)
{
  return __strtoull_internal (__nptr, __endptr, __base, 0);
}


extern __inline double
atof (__const char *__nptr)
{
  return strtod (__nptr, (char **) ((void *)0));
}
extern __inline int
atoi (__const char *__nptr)
{
  return (int) strtol (__nptr, (char **) ((void *)0), 10);
}
extern __inline long int
atol (__const char *__nptr)
{
  return strtol (__nptr, (char **) ((void *)0), 10);
}


__extension__ extern __inline long long int
atoll (__const char *__nptr)
{
  return strtoll (__nptr, (char **) ((void *)0), 10);
}
# 384 "/usr/include/stdlib.h" 3
extern char *l64a (long int __n) ;


extern long int a64l (__const char *__s) __attribute__ ((__pure__));


# 1 "/usr/include/sys/types.h" 1 3
# 28 "/usr/include/sys/types.h" 3






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;



typedef __ino_t ino_t;






typedef __ino64_t ino64_t;




typedef __dev_t dev_t;




typedef __gid_t gid_t;




typedef __mode_t mode_t;




typedef __nlink_t nlink_t;




typedef __uid_t uid_t;





typedef __off_t off_t;






typedef __off64_t off64_t;




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;
# 132 "/usr/include/sys/types.h" 3
# 1 "/usr/include/time.h" 1 3
# 59 "/usr/include/time.h" 3
typedef __clock_t clock_t;
# 70 "/usr/include/time.h" 3
typedef __time_t time_t;
# 82 "/usr/include/time.h" 3
typedef __clockid_t clockid_t;
# 94 "/usr/include/time.h" 3
typedef __timer_t timer_t;
# 133 "/usr/include/sys/types.h" 2 3



typedef __useconds_t useconds_t;



typedef __suseconds_t suseconds_t;





# 1 "/usr/lib/gcc-lib/i486-suse-linux/3.2/include/stddef.h" 1 3
# 147 "/usr/include/sys/types.h" 2 3



typedef unsigned long int ulong;
typedef unsigned short int ushort;
typedef unsigned int uint;
# 190 "/usr/include/sys/types.h" 3
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__)));
# 215 "/usr/include/sys/types.h" 3
# 1 "/usr/include/sys/select.h" 1 3
# 31 "/usr/include/sys/select.h" 3
# 1 "/usr/include/bits/select.h" 1 3
# 32 "/usr/include/sys/select.h" 2 3


# 1 "/usr/include/bits/sigset.h" 1 3
# 23 "/usr/include/bits/sigset.h" 3
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



typedef __sigset_t sigset_t;





# 1 "/usr/include/time.h" 1 3
# 106 "/usr/include/time.h" 3
struct timespec
  {
    __time_t tv_sec;
    long int tv_nsec;
  };
# 45 "/usr/include/sys/select.h" 2 3

# 1 "/usr/include/bits/time.h" 1 3
# 67 "/usr/include/bits/time.h" 3
struct timeval
  {
    __time_t tv_sec;
    __suseconds_t tv_usec;
  };
# 47 "/usr/include/sys/select.h" 2 3
# 55 "/usr/include/sys/select.h" 3
typedef long int __fd_mask;







typedef struct
  {



    __fd_mask fds_bits[1024 / (8 * sizeof (__fd_mask))];





  } fd_set;






typedef __fd_mask fd_mask;
# 95 "/usr/include/sys/select.h" 3







extern int select (int __nfds, fd_set *__restrict __readfds,
                   fd_set *__restrict __writefds,
                   fd_set *__restrict __exceptfds,
                   struct timeval *__restrict __timeout) ;





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) ;



# 216 "/usr/include/sys/types.h" 2 3


# 1 "/usr/include/sys/sysmacros.h" 1 3
# 219 "/usr/include/sys/types.h" 2 3




typedef __blksize_t blksize_t;






typedef __blkcnt_t blkcnt_t;



typedef __fsblkcnt_t fsblkcnt_t;



typedef __fsfilcnt_t fsfilcnt_t;
# 257 "/usr/include/sys/types.h" 3
typedef __blkcnt64_t blkcnt64_t;
typedef __fsblkcnt64_t fsblkcnt64_t;
typedef __fsfilcnt64_t fsfilcnt64_t;



# 391 "/usr/include/stdlib.h" 2 3






extern long int random (void) ;


extern void srandom (unsigned int __seed) ;





extern char *initstate (unsigned int __seed, char *__statebuf,
                        size_t __statelen) ;



extern char *setstate (char *__statebuf) ;







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) ;

extern int srandom_r (unsigned int __seed, struct random_data *__buf) ;

extern int initstate_r (unsigned int __seed, char *__restrict __statebuf,
                        size_t __statelen,
                        struct random_data *__restrict __buf) ;

extern int setstate_r (char *__restrict __statebuf,
                       struct random_data *__restrict __buf) ;





extern int rand (void) ;

extern void srand (unsigned int __seed) ;



extern int rand_r (unsigned int *__seed) ;







extern double drand48 (void) ;
extern double erand48 (unsigned short int __xsubi[3]) ;


extern long int lrand48 (void) ;
extern long int nrand48 (unsigned short int __xsubi[3]) ;


extern long int mrand48 (void) ;
extern long int jrand48 (unsigned short int __xsubi[3]) ;


extern void srand48 (long int __seedval) ;
extern unsigned short int *seed48 (unsigned short int __seed16v[3]) ;
extern void lcong48 (unsigned short int __param[7]) ;





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) ;
extern int erand48_r (unsigned short int __xsubi[3],
                      struct drand48_data *__restrict __buffer,
                      double *__restrict __result) ;


extern int lrand48_r (struct drand48_data *__restrict __buffer,
                      long int *__restrict __result) ;
extern int nrand48_r (unsigned short int __xsubi[3],
                      struct drand48_data *__restrict __buffer,
                      long int *__restrict __result) ;


extern int mrand48_r (struct drand48_data *__restrict __buffer,
                      long int *__restrict __result) ;
extern int jrand48_r (unsigned short int __xsubi[3],
                      struct drand48_data *__restrict __buffer,
                      long int *__restrict __result) ;


extern int srand48_r (long int __seedval, struct drand48_data *__buffer)
     ;

extern int seed48_r (unsigned short int __seed16v[3],
                     struct drand48_data *__buffer) ;

extern int lcong48_r (unsigned short int __param[7],
                      struct drand48_data *__buffer) ;
# 536 "/usr/include/stdlib.h" 3
extern void *realloc (void *__ptr, size_t __size) __attribute__ ((__malloc__));

extern void free (void *__ptr) ;



extern void cfree (void *__ptr) ;



# 1 "/usr/include/alloca.h" 1 3
# 25 "/usr/include/alloca.h" 3
# 1 "/usr/lib/gcc-lib/i486-suse-linux/3.2/include/stddef.h" 1 3
# 26 "/usr/include/alloca.h" 2 3







extern void *alloca (size_t __size) ;






# 547 "/usr/include/stdlib.h" 2 3




extern void *valloc (size_t __size) __attribute__ ((__malloc__));




extern int posix_memalign (void **__memptr, size_t __alignment, size_t __size)
     __attribute__ ((__malloc__));



extern void abort (void) __attribute__ ((__noreturn__));



extern int atexit (void (*__func) (void)) ;




extern int on_exit (void (*__func) (int __status, void *__arg), void *__arg)
     ;





extern void exit (int __status) __attribute__ ((__noreturn__));




extern void _Exit (int __status) __attribute__ ((__noreturn__));




extern char *getenv (__const char *__name) ;



extern char *__secure_getenv (__const char *__name) ;





extern int putenv (char *__string) ;





extern int setenv (__const char *__name, __const char *__value, int __replace)
     ;


extern int unsetenv (__const char *__name) ;






extern int clearenv (void) ;
# 623 "/usr/include/stdlib.h" 3
extern char *mktemp (char *__template) ;







extern int mkstemp (char *__template) ;
# 640 "/usr/include/stdlib.h" 3
extern int mkstemp64 (char *__template) ;
# 650 "/usr/include/stdlib.h" 3
extern char *mkdtemp (char *__template) ;




extern int system (__const char *__command) ;






extern char *canonicalize_file_name (__const char *__name) ;
# 672 "/usr/include/stdlib.h" 3
extern char *realpath (__const char *__restrict __name,
                       char *__restrict __resolved) ;






typedef int (*__compar_fn_t) (__const void *, __const void *);


typedef __compar_fn_t comparison_fn_t;





extern void *bsearch (__const void *__key, __const void *__base,
                      size_t __nmemb, size_t __size, __compar_fn_t __compar);



extern void qsort (void *__base, size_t __nmemb, size_t __size,
                   __compar_fn_t __compar);



extern int abs (int __x) __attribute__ ((__const__));
extern long int labs (long int __x) __attribute__ ((__const__));

__extension__ extern long long int llabs (long long int __x)
     __attribute__ ((__const__));






extern div_t div (int __numer, int __denom)
     __attribute__ ((__const__));
extern ldiv_t ldiv (long int __numer, long int __denom)
     __attribute__ ((__const__));

__extension__ extern lldiv_t lldiv (long long int __numer,
                                    long long int __denom)
     __attribute__ ((__const__));
# 728 "/usr/include/stdlib.h" 3
extern char *ecvt (double __value, int __ndigit, int *__restrict __decpt,
                   int *__restrict __sign) ;




extern char *fcvt (double __value, int __ndigit, int *__restrict __decpt,
                   int *__restrict __sign) ;




extern char *gcvt (double __value, int __ndigit, char *__buf) ;




extern char *qecvt (long double __value, int __ndigit,
                    int *__restrict __decpt, int *__restrict __sign) ;
extern char *qfcvt (long double __value, int __ndigit,
                    int *__restrict __decpt, int *__restrict __sign) ;
extern char *qgcvt (long double __value, int __ndigit, char *__buf) ;




extern int ecvt_r (double __value, int __ndigit, int *__restrict __decpt,
                   int *__restrict __sign, char *__restrict __buf,
                   size_t __len) ;
extern int fcvt_r (double __value, int __ndigit, int *__restrict __decpt,
                   int *__restrict __sign, char *__restrict __buf,
                   size_t __len) ;

extern int qecvt_r (long double __value, int __ndigit,
                    int *__restrict __decpt, int *__restrict __sign,
                    char *__restrict __buf, size_t __len) ;
extern int qfcvt_r (long double __value, int __ndigit,
                    int *__restrict __decpt, int *__restrict __sign,
                    char *__restrict __buf, size_t __len) ;






extern int mblen (__const char *__s, size_t __n) ;


extern int mbtowc (wchar_t *__restrict __pwc,
                   __const char *__restrict __s, size_t __n) ;


extern int wctomb (char *__s, wchar_t __wchar) ;



extern size_t mbstowcs (wchar_t *__restrict __pwcs,
                        __const char *__restrict __s, size_t __n) ;

extern size_t wcstombs (char *__restrict __s,
                        __const wchar_t *__restrict __pwcs, size_t __n)
     ;







extern int rpmatch (__const char *__response) ;
# 808 "/usr/include/stdlib.h" 3
extern int getsubopt (char **__restrict __optionp,
                      char *__const *__restrict __tokens,
                      char **__restrict __valuep) ;





extern void setkey (__const char *__key) ;







extern int posix_openpt (int __oflag) ;







extern int grantpt (int __fd) ;



extern int unlockpt (int __fd) ;




extern char *ptsname (int __fd) ;






extern int ptsname_r (int __fd, char *__buf, size_t __buflen) ;


extern int getpt (void) ;






extern int getloadavg (double __loadavg[], int __nelem) ;






# 85 "../../binutils-2.13.1/gas/as.h" 2


# 1 "/usr/include/unistd.h" 1 3
# 28 "/usr/include/unistd.h" 3

# 175 "/usr/include/unistd.h" 3
# 1 "/usr/include/bits/posix_opt.h" 1 3
# 176 "/usr/include/unistd.h" 2 3



# 1 "/usr/include/bits/environments.h" 1 3
# 23 "/usr/include/bits/environments.h" 3
# 1 "/usr/include/bits/wordsize.h" 1 3
# 24 "/usr/include/bits/environments.h" 2 3
# 180 "/usr/include/unistd.h" 2 3
# 199 "/usr/include/unistd.h" 3
# 1 "/usr/lib/gcc-lib/i486-suse-linux/3.2/include/stddef.h" 1 3
# 200 "/usr/include/unistd.h" 2 3
# 240 "/usr/include/unistd.h" 3
typedef __intptr_t intptr_t;






typedef __socklen_t socklen_t;
# 260 "/usr/include/unistd.h" 3
extern int access (__const char *__name, int __type) ;




extern int euidaccess (__const char *__name, int __type) ;
# 290 "/usr/include/unistd.h" 3
extern __off_t lseek (int __fd, __off_t __offset, int __whence) ;
# 302 "/usr/include/unistd.h" 3
extern __off64_t lseek64 (int __fd, __off64_t __offset, int __whence) ;



extern int close (int __fd) ;



extern ssize_t read (int __fd, void *__buf, size_t __nbytes) ;


extern ssize_t write (int __fd, __const void *__buf, size_t __n) ;



extern ssize_t pread (int __fd, void *__buf, size_t __nbytes, __off_t __offset)
     ;
extern ssize_t pwrite (int __fd, __const void *__buf, size_t __n,
                       __off_t __offset) ;
# 340 "/usr/include/unistd.h" 3
extern ssize_t pread64 (int __fd, void *__buf, size_t __nbytes,
                        __off64_t __offset) ;


extern ssize_t pwrite64 (int __fd, __const void *__buf, size_t __n,
                         __off64_t __offset) ;







extern int pipe (int __pipedes[2]) ;
# 362 "/usr/include/unistd.h" 3
extern unsigned int alarm (unsigned int __seconds) ;
# 371 "/usr/include/unistd.h" 3
extern unsigned int sleep (unsigned int __seconds) ;






extern __useconds_t ualarm (__useconds_t __value, __useconds_t __interval)
     ;



extern int usleep (__useconds_t __useconds) ;





extern int pause (void) ;



extern int chown (__const char *__file, __uid_t __owner, __gid_t __group)
     ;



extern int fchown (int __fd, __uid_t __owner, __gid_t __group) ;




extern int lchown (__const char *__file, __uid_t __owner, __gid_t __group)
     ;




extern int chdir (__const char *__path) ;



extern int fchdir (int __fd) ;
# 423 "/usr/include/unistd.h" 3
extern char *getcwd (char *__buf, size_t __size) ;





extern char *get_current_dir_name (void) ;






extern char *getwd (char *__buf) ;




extern int dup (int __fd) ;


extern int dup2 (int __fd, int __fd2) ;


extern char **__environ;

extern char **environ;





extern int execve (__const char *__path, char *__const __argv[],
                   char *__const __envp[]) ;




extern int fexecve (int __fd, char *__const __argv[], char *__const __envp[])
     ;




extern int execv (__const char *__path, char *__const __argv[]) ;



extern int execle (__const char *__path, __const char *__arg, ...) ;



extern int execl (__const char *__path, __const char *__arg, ...) ;



extern int execvp (__const char *__file, char *__const __argv[]) ;




extern int execlp (__const char *__file, __const char *__arg, ...) ;




extern int nice (int __inc) ;




extern void _exit (int __status) __attribute__ ((__noreturn__));





# 1 "/usr/include/bits/confname.h" 1 3
# 25 "/usr/include/bits/confname.h" 3
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

  };


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

  };





enum
  {
    _CS_PATH,




    _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_V6_WIDTH_RESTRICTED_ENVS

  };
# 501 "/usr/include/unistd.h" 2 3


extern long int pathconf (__const char *__path, int __name) ;


extern long int fpathconf (int __fd, int __name) ;


extern long int sysconf (int __name) __attribute__ ((__const__));



extern size_t confstr (int __name, char *__buf, size_t __len) ;




extern __pid_t getpid (void) ;


extern __pid_t getppid (void) ;




extern __pid_t getpgrp (void) ;
# 536 "/usr/include/unistd.h" 3
extern __pid_t __getpgid (__pid_t __pid) ;

extern __pid_t getpgid (__pid_t __pid) ;






extern int setpgid (__pid_t __pid, __pid_t __pgid) ;
# 562 "/usr/include/unistd.h" 3
extern int setpgrp (void) ;
# 580 "/usr/include/unistd.h" 3
extern __pid_t setsid (void) ;



extern __pid_t getsid (__pid_t __pid) ;



extern __uid_t getuid (void) ;


extern __uid_t geteuid (void) ;


extern __gid_t getgid (void) ;


extern __gid_t getegid (void) ;




extern int getgroups (int __size, __gid_t __list[]) ;



extern int group_member (__gid_t __gid) ;






extern int setuid (__uid_t __uid) ;




extern int setreuid (__uid_t __ruid, __uid_t __euid) ;




extern int seteuid (__uid_t __uid) ;






extern int setgid (__gid_t __gid) ;




extern int setregid (__gid_t __rgid, __gid_t __egid) ;




extern int setegid (__gid_t __gid) ;






extern __pid_t fork (void) ;






extern __pid_t vfork (void) ;





extern char *ttyname (int __fd) ;



extern int ttyname_r (int __fd, char *__buf, size_t __buflen) ;



extern int isatty (int __fd) ;





extern int ttyslot (void) ;




extern int link (__const char *__from, __const char *__to) ;



extern int symlink (__const char *__from, __const char *__to) ;




extern int readlink (__const char *__restrict __path, char *__restrict __buf,
                     size_t __len) ;



extern int unlink (__const char *__name) ;


extern int rmdir (__const char *__path) ;



extern __pid_t tcgetpgrp (int __fd) ;


extern int tcsetpgrp (int __fd, __pid_t __pgrp_id) ;



extern char *getlogin (void) ;




extern int getlogin_r (char *__name, size_t __name_len) ;




extern int setlogin (__const char *__name) ;
# 726 "/usr/include/unistd.h" 3
# 1 "../../binutils-2.13.1/include/getopt.h" 1 3
# 36 "../../binutils-2.13.1/include/getopt.h" 3
extern char *optarg;
# 50 "../../binutils-2.13.1/include/getopt.h" 3
extern int optind;




extern int opterr;



extern int optopt;
# 82 "../../binutils-2.13.1/include/getopt.h" 3
struct option
{

  const char *name;





  int has_arg;
  int *flag;
  int val;
};
# 113 "../../binutils-2.13.1/include/getopt.h" 3
extern int getopt (int argc, char *const *argv, const char *shortopts);





extern int getopt_long (int argc, char *const *argv, const char *shortopts,
                        const struct option *longopts, int *longind);
extern int getopt_long_only (int argc, char *const *argv,
                             const char *shortopts,
                             const struct option *longopts, int *longind);


extern int _getopt_internal (int argc, char *const *argv,
                             const char *shortopts,
                             const struct option *longopts, int *longind,
                             int long_only);
# 727 "/usr/include/unistd.h" 2 3







extern int gethostname (char *__name, size_t __len) ;






extern int sethostname (__const char *__name, size_t __len) ;



extern int sethostid (long int __id) ;





extern int getdomainname (char *__name, size_t __len) ;
extern int setdomainname (__const char *__name, size_t __len) ;





extern int vhangup (void) ;


extern int revoke (__const char *__file) ;







extern int profil (unsigned short int *__sample_buffer, size_t __size,
                   size_t __offset, unsigned int __scale) ;





extern int acct (__const char *__name) ;



extern char *getusershell (void) ;
extern void endusershell (void) ;
extern void setusershell (void) ;





extern int daemon (int __nochdir, int __noclose) ;






extern int chroot (__const char *__path) ;



extern char *getpass (__const char *__prompt) ;





extern int fsync (int __fd) ;






extern long int gethostid (void) ;


extern void sync (void) ;




extern int getpagesize (void) __attribute__ ((__const__));




extern int truncate (__const char *__file, __off_t __length) ;
# 836 "/usr/include/unistd.h" 3
extern int truncate64 (__const char *__file, __off64_t __length) ;




extern int ftruncate (int __fd, __off_t __length) ;
# 851 "/usr/include/unistd.h" 3
extern int ftruncate64 (int __fd, __off64_t __length) ;





extern int getdtablesize (void) ;
# 866 "/usr/include/unistd.h" 3
extern int brk (void *__addr) ;





extern void *sbrk (intptr_t __delta) ;
# 887 "/usr/include/unistd.h" 3
extern long int syscall (long int __sysno, ...) ;
# 907 "/usr/include/unistd.h" 3
extern int lockf (int __fd, int __cmd, __off_t __len) ;
# 917 "/usr/include/unistd.h" 3
extern int lockf64 (int __fd, int __cmd, __off64_t __len) ;
# 938 "/usr/include/unistd.h" 3
extern int fdatasync (int __fildes) ;







extern char *crypt (__const char *__key, __const char *__salt) ;



extern void encrypt (char *__block, int __edflag) ;






extern void swab (__const void *__restrict __from, void *__restrict __to,
                  ssize_t __n) ;







extern char *ctermid (char *__s) ;
# 983 "/usr/include/unistd.h" 3
extern int pthread_atfork (void (*__prepare) (void),
                           void (*__parent) (void),
                           void (*__child) (void)) ;



# 88 "../../binutils-2.13.1/gas/as.h" 2
# 130 "../../binutils-2.13.1/gas/as.h"
# 1 "../../binutils-2.13.1/include/ansidecl.h" 1
# 131 "../../binutils-2.13.1/gas/as.h" 2

# 1 "../bfd/bfd.h" 1
# 37 "../bfd/bfd.h"
# 1 "../../binutils-2.13.1/include/symcat.h" 1
# 38 "../bfd/bfd.h" 2
# 81 "../bfd/bfd.h"
typedef struct _bfd bfd;
# 114 "../bfd/bfd.h"
typedef enum bfd_boolean {false, true} boolean;
# 171 "../bfd/bfd.h"
typedef unsigned long bfd_vma;





typedef long bfd_signed_vma;

typedef unsigned long symvalue;
typedef unsigned long bfd_size_type;
# 196 "../bfd/bfd.h"
typedef bfd_signed_vma file_ptr;
typedef bfd_vma ufile_ptr;

extern void bfd_sprintf_vma (bfd *, char *, bfd_vma);
extern void bfd_fprintf_vma (bfd *, void *, bfd_vma);




typedef unsigned int flagword;
typedef unsigned char bfd_byte;



typedef enum bfd_format
{
  bfd_unknown = 0,
  bfd_object,
  bfd_archive,
  bfd_core,
  bfd_type_end
}
bfd_format;
# 280 "../bfd/bfd.h"
typedef unsigned long symindex;


typedef const struct reloc_howto_struct reloc_howto_type;
# 302 "../bfd/bfd.h"
typedef struct carsym
{
  char *name;
  file_ptr file_offset;
}
carsym;



struct orl
{
  char **name;
  union
  {
    file_ptr pos;
    bfd *abfd;
  } u;
  int namidx;
};


typedef struct lineno_cache_entry
{
  unsigned int line_number;
  union
  {
    struct symbol_cache_entry *sym;
    bfd_vma offset;
  } u;
}
alent;






typedef struct sec *sec_ptr;
# 359 "../bfd/bfd.h"
typedef struct stat stat_type;

typedef enum bfd_print_symbol
{
  bfd_print_symbol_name,
  bfd_print_symbol_more,
  bfd_print_symbol_all
} bfd_print_symbol_type;



typedef struct _symbol_info
{
  symvalue value;
  char type;
  const char *name;
  unsigned char stab_type;
  char stab_other;
  short stab_desc;
  const char *stab_name;
} symbol_info;



extern const char *bfd_get_stab_name (int);






struct bfd_hash_entry
{

  struct bfd_hash_entry *next;

  const char *string;


  unsigned long hash;
};



struct bfd_hash_table
{

  struct bfd_hash_entry **table;

  unsigned int size;







  struct bfd_hash_entry *(*newfunc) (struct bfd_hash_entry *, struct bfd_hash_table *, const char *);




  void * memory;
};


extern boolean bfd_hash_table_init
  (struct bfd_hash_table *, struct bfd_hash_entry *(*) (struct bfd_hash_entry *, struct bfd_hash_table *, const char *));





extern boolean bfd_hash_table_init_n
  (struct bfd_hash_table *, struct bfd_hash_entry *(*) (struct bfd_hash_entry *, struct bfd_hash_table *, const char *), unsigned int size);






extern void bfd_hash_table_free (struct bfd_hash_table *);





extern struct bfd_hash_entry *bfd_hash_lookup
  (struct bfd_hash_table *, const char *, boolean create, boolean copy);



extern void bfd_hash_replace
  (struct bfd_hash_table *, struct bfd_hash_entry *old, struct bfd_hash_entry *nw);



extern struct bfd_hash_entry *bfd_hash_newfunc
  (struct bfd_hash_entry *, struct bfd_hash_table *, const char *);



extern void * bfd_hash_allocate (struct bfd_hash_table *, unsigned int);





extern void bfd_hash_traverse (struct bfd_hash_table *, boolean (*) (struct bfd_hash_entry *, void *), void * info);
# 479 "../bfd/bfd.h"
extern bfd_size_type bfd_bread (void *, bfd_size_type, bfd *);
extern bfd_size_type bfd_bwrite (const void *, bfd_size_type, bfd *);
extern int bfd_seek (bfd *, file_ptr, int);
extern ufile_ptr bfd_tell (bfd *);
extern int bfd_flush (bfd *);
extern int bfd_stat (bfd *, struct stat *);
# 502 "../bfd/bfd.h"
extern void warn_deprecated
  (const char *, const char *, int, const char *);
# 541 "../bfd/bfd.h"
extern boolean bfd_cache_close (bfd *abfd);


extern boolean bfd_record_phdr
  (bfd *, unsigned long, boolean, flagword, boolean, bfd_vma, boolean, boolean, unsigned int, struct sec **);




bfd_vma bfd_getb64 (const unsigned char *);
bfd_vma bfd_getl64 (const unsigned char *);
bfd_signed_vma bfd_getb_signed_64 (const unsigned char *);
bfd_signed_vma bfd_getl_signed_64 (const unsigned char *);
bfd_vma bfd_getb32 (const unsigned char *);
bfd_vma bfd_getl32 (const unsigned char *);
bfd_signed_vma bfd_getb_signed_32 (const unsigned char *);
bfd_signed_vma bfd_getl_signed_32 (const unsigned char *);
bfd_vma bfd_getb16 (const unsigned char *);
bfd_vma bfd_getl16 (const unsigned char *);
bfd_signed_vma bfd_getb_signed_16 (const unsigned char *);
bfd_signed_vma bfd_getl_signed_16 (const unsigned char *);
void bfd_putb64 (bfd_vma, unsigned char *);
void bfd_putl64 (bfd_vma, unsigned char *);
void bfd_putb32 (bfd_vma, unsigned char *);
void bfd_putl32 (bfd_vma, unsigned char *);
void bfd_putb16 (bfd_vma, unsigned char *);
void bfd_putl16 (bfd_vma, unsigned char *);



bfd_vma bfd_get_bits (bfd_byte *, int, boolean);
void bfd_put_bits (bfd_vma, bfd_byte *, int, boolean);




struct ecoff_debug_info;
struct ecoff_debug_swap;
struct ecoff_extr;
struct symbol_cache_entry;
struct bfd_link_info;
struct bfd_link_hash_entry;
struct bfd_elf_version_tree;

extern bfd_vma bfd_ecoff_get_gp_value (bfd * abfd);
extern boolean bfd_ecoff_set_gp_value (bfd *abfd, bfd_vma gp_value);
extern boolean bfd_ecoff_set_regmasks
  (bfd *abfd, unsigned long gprmask, unsigned long fprmask, unsigned long *cprmask);

extern void * bfd_ecoff_debug_init
  (bfd *output_bfd, struct ecoff_debug_info *output_debug, const struct ecoff_debug_swap *output_swap, struct bfd_link_info *);


extern void bfd_ecoff_debug_free
  (void * handle, bfd *output_bfd, struct ecoff_debug_info *output_debug, const struct ecoff_debug_swap *output_swap, struct bfd_link_info *);


extern boolean bfd_ecoff_debug_accumulate
  (void * handle, bfd *output_bfd, struct ecoff_debug_info *output_debug, const struct ecoff_debug_swap *output_swap, bfd *input_bfd, struct ecoff_debug_info *input_debug, const struct ecoff_debug_swap *input_swap, struct bfd_link_info *);




extern boolean bfd_ecoff_debug_accumulate_other
  (void * handle, bfd *output_bfd, struct ecoff_debug_info *output_debug, const struct ecoff_debug_swap *output_swap, bfd *input_bfd, struct bfd_link_info *);


extern boolean bfd_ecoff_debug_externals
  (bfd *abfd, struct ecoff_debug_info *debug, const struct ecoff_debug_swap *swap, boolean relocateable, boolean (*get_extr) (struct symbol_cache_entry *, struct ecoff_extr *), void (*set_index) (struct symbol_cache_entry *, bfd_size_type));






extern boolean bfd_ecoff_debug_one_external
  (bfd *abfd, struct ecoff_debug_info *debug, const struct ecoff_debug_swap *swap, const char *name, struct ecoff_extr *esym);


extern bfd_size_type bfd_ecoff_debug_size
  (bfd *abfd, struct ecoff_debug_info *debug, const struct ecoff_debug_swap *swap);

extern boolean bfd_ecoff_write_debug
  (bfd *abfd, struct ecoff_debug_info *debug, const struct ecoff_debug_swap *swap, file_ptr where);

extern boolean bfd_ecoff_write_accumulated_debug
  (void * handle, bfd *abfd, struct ecoff_debug_info *debug, const struct ecoff_debug_swap *swap, struct bfd_link_info *info, file_ptr where);


extern boolean bfd_mips_ecoff_create_embedded_relocs
  (bfd *, struct bfd_link_info *, struct sec *, struct sec *, char **);




struct bfd_link_needed_list
{
  struct bfd_link_needed_list *next;
  bfd *by;
  const char *name;
};

extern boolean bfd_elf32_record_link_assignment
  (bfd *, struct bfd_link_info *, const char *, boolean);
extern boolean bfd_elf64_record_link_assignment
  (bfd *, struct bfd_link_info *, const char *, boolean);
extern struct bfd_link_needed_list *bfd_elf_get_needed_list
  (bfd *, struct bfd_link_info *);
extern boolean bfd_elf_get_bfd_needed_list
  (bfd *, struct bfd_link_needed_list **);
extern boolean bfd_elf32_size_dynamic_sections
  (bfd *, const char *, const char *, const char *, const char * const *, struct bfd_link_info *, struct sec **, struct bfd_elf_version_tree *);


extern boolean bfd_elf64_size_dynamic_sections
  (bfd *, const char *, const char *, const char *, const char * const *, struct bfd_link_info *, struct sec **, struct bfd_elf_version_tree *);


extern void bfd_elf_set_dt_needed_name (bfd *, const char *);
extern void bfd_elf_set_dt_needed_soname (bfd *, const char *);
extern const char *bfd_elf_get_dt_soname (bfd *);
extern struct bfd_link_needed_list *bfd_elf_get_runpath_list
  (bfd *, struct bfd_link_info *);
extern boolean bfd_elf32_discard_info
  (bfd *, struct bfd_link_info *);
extern boolean bfd_elf64_discard_info
  (bfd *, struct bfd_link_info *);




extern long bfd_get_elf_phdr_upper_bound (bfd *abfd);
# 681 "../bfd/bfd.h"
extern int bfd_get_elf_phdrs (bfd *abfd, void *phdrs);


extern int bfd_get_arch_size (bfd *);


extern int bfd_get_sign_extend_vma (bfd *);

extern boolean bfd_m68k_elf32_create_embedded_relocs
  (bfd *, struct bfd_link_info *, struct sec *, struct sec *, char **);

extern boolean bfd_mips_elf32_create_embedded_relocs
  (bfd *, struct bfd_link_info *, struct sec *, struct sec *, char **);




extern struct bfd_link_needed_list *bfd_sunos_get_needed_list
  (bfd *, struct bfd_link_info *);
extern boolean bfd_sunos_record_link_assignment
  (bfd *, struct bfd_link_info *, const char *);
extern boolean bfd_sunos_size_dynamic_sections
  (bfd *, struct bfd_link_info *, struct sec **, struct sec **, struct sec **);




extern boolean bfd_i386linux_size_dynamic_sections
  (bfd *, struct bfd_link_info *);
extern boolean bfd_m68klinux_size_dynamic_sections
  (bfd *, struct bfd_link_info *);
extern boolean bfd_sparclinux_size_dynamic_sections
  (bfd *, struct bfd_link_info *);



struct _bfd_window_internal;
typedef struct _bfd_window_internal bfd_window_internal;

typedef struct _bfd_window
{

  void * data;
  bfd_size_type size;






  struct _bfd_window_internal *i;
}
bfd_window;

extern void bfd_init_window (bfd_window *);
extern void bfd_free_window (bfd_window *);
extern boolean bfd_get_file_window
  (bfd *, file_ptr, bfd_size_type, bfd_window *, boolean);



extern boolean bfd_xcoff_link_record_set
  (bfd *, struct bfd_link_info *, struct bfd_link_hash_entry *, bfd_size_type);

extern boolean bfd_xcoff_import_symbol
  (bfd *, struct bfd_link_info *, struct bfd_link_hash_entry *, bfd_vma, const char *, const char *, const char *, unsigned int);

extern boolean bfd_xcoff_export_symbol
  (bfd *, struct bfd_link_info *, struct bfd_link_hash_entry *);
extern boolean bfd_xcoff_link_count_reloc
  (bfd *, struct bfd_link_info *, const char *);
extern boolean bfd_xcoff_record_link_assignment
  (bfd *, struct bfd_link_info *, const char *);
extern boolean bfd_xcoff_size_dynamic_sections
  (bfd *, struct bfd_link_info *, const char *, const char *, unsigned long, unsigned long, unsigned long, boolean, int, boolean, boolean, struct sec **, boolean);


extern boolean bfd_xcoff_link_generate_rtinit
  (bfd *, const char *, const char *, boolean);


extern boolean bfd_xcoff_ar_archive_set_magic (bfd *, char *);




struct internal_syment;
union internal_auxent;


extern boolean bfd_coff_get_syment
  (bfd *, struct symbol_cache_entry *, struct internal_syment *);

extern boolean bfd_coff_get_auxent
  (bfd *, struct symbol_cache_entry *, int, union internal_auxent *);

extern boolean bfd_coff_set_symbol_class
  (bfd *, struct symbol_cache_entry *, unsigned int);

extern boolean bfd_m68k_coff_create_embedded_relocs
  (bfd *, struct bfd_link_info *, struct sec *, struct sec *, char **);



extern boolean bfd_arm_allocate_interworking_sections
  (struct bfd_link_info *);

extern boolean bfd_arm_process_before_allocation
  (bfd *, struct bfd_link_info *, int);

extern boolean bfd_arm_get_bfd_for_interworking
  (bfd *, struct bfd_link_info *);


extern boolean bfd_arm_pe_allocate_interworking_sections
  (struct bfd_link_info *);

extern boolean bfd_arm_pe_process_before_allocation
  (bfd *, struct bfd_link_info *, int);

extern boolean bfd_arm_pe_get_bfd_for_interworking
  (bfd *, struct bfd_link_info *);


extern boolean bfd_elf32_arm_allocate_interworking_sections
  (struct bfd_link_info *);

extern boolean bfd_elf32_arm_process_before_allocation
  (bfd *, struct bfd_link_info *, int);

extern boolean bfd_elf32_arm_get_bfd_for_interworking
  (bfd *, struct bfd_link_info *);

extern boolean bfd_elf32_arm_add_glue_sections_to_bfd
  (bfd *, struct bfd_link_info *);


extern void bfd_ticoff_set_section_load_page
  (struct sec *, int);

extern int bfd_ticoff_get_section_load_page
  (struct sec *);


void
bfd_init (void);


bfd *
bfd_openr (const char *filename, const char *target);

bfd *
bfd_fdopenr (const char *filename, const char *target, int fd);

bfd *
bfd_openstreamr (const char *, const char *, void *);

bfd *
bfd_openw (const char *filename, const char *target);

boolean
bfd_close (bfd *abfd);

boolean
bfd_close_all_done (bfd *);

bfd *
bfd_create (const char *filename, bfd *templ);

boolean
bfd_make_writable (bfd *abfd);

boolean
bfd_make_readable (bfd *abfd);
# 1003 "../bfd/bfd.h"
struct bfd_comdat_info
{

  const char *name;





  long symbol;
};

typedef struct sec
{


  const char *name;


  int id;


  int index;


  struct sec *next;




  flagword flags;
# 1211 "../bfd/bfd.h"
  unsigned int user_set_vma : 1;


  unsigned int reloc_done : 1;


  unsigned int linker_mark : 1;



  unsigned int linker_has_input : 1;


  unsigned int gc_mark : 1;



  unsigned int segment_mark : 1;
# 1238 "../bfd/bfd.h"
  bfd_vma vma;




  bfd_vma lma;




  bfd_size_type _cooked_size;




  bfd_size_type _raw_size;
# 1262 "../bfd/bfd.h"
  bfd_vma output_offset;


  struct sec *output_section;



  unsigned int alignment_power;



  struct reloc_cache_entry *relocation;



  struct reloc_cache_entry **orelocation;


  unsigned reloc_count;





  file_ptr filepos;


  file_ptr rel_filepos;


  file_ptr line_filepos;


  void * userdata;



  unsigned char *contents;


  alent *lineno;


  unsigned int lineno_count;


  unsigned int entsize;


  struct bfd_comdat_info *comdat;



  file_ptr moving_line_filepos;


  int target_index;

  void * used_by_bfd;



  struct relent_chain *constructor_chain;


  bfd *owner;


  struct symbol_cache_entry *symbol;
  struct symbol_cache_entry **symbol_ptr_ptr;

  struct bfd_link_order *link_order_head;
  struct bfd_link_order *link_order_tail;
} asection;
# 1348 "../bfd/bfd.h"
extern const asection bfd_abs_section;



extern const asection bfd_und_section;



extern const asection bfd_com_section;


extern const asection bfd_ind_section;
# 1369 "../bfd/bfd.h"
extern const struct symbol_cache_entry * const bfd_abs_symbol;
extern const struct symbol_cache_entry * const bfd_com_symbol;
extern const struct symbol_cache_entry * const bfd_und_symbol;
extern const struct symbol_cache_entry * const bfd_ind_symbol;
# 1405 "../bfd/bfd.h"
void
bfd_section_list_clear (bfd *);

asection *
bfd_get_section_by_name (bfd *abfd, const char *name);

char *
bfd_get_unique_section_name (bfd *abfd, const char *templat, int *count);



asection *
bfd_make_section_old_way (bfd *abfd, const char *name);

asection *
bfd_make_section_anyway (bfd *abfd, const char *name);

asection *
bfd_make_section (bfd *, const char *name);

boolean
bfd_set_section_flags (bfd *abfd, asection *sec, flagword flags);

void
bfd_map_over_sections (bfd *abfd, void (*func) (bfd *abfd, asection *sect, void * obj), void * obj);





boolean
bfd_set_section_size (bfd *abfd, asection *sec, bfd_size_type val);

boolean
bfd_set_section_contents (bfd *abfd, asection *section, void * data, file_ptr offset, bfd_size_type count);



boolean
bfd_get_section_contents (bfd *abfd, asection *section, void * location, file_ptr offset, bfd_size_type count);



boolean
bfd_copy_private_section_data (bfd *ibfd, asection *isec, bfd *obfd, asection *osec);





void
_bfd_strip_section_from_output (struct bfd_link_info *info, asection *section);

boolean
bfd_generic_discard_group (bfd *abfd, asection *group);


enum bfd_architecture
{
  bfd_arch_unknown,
  bfd_arch_obscure,
  bfd_arch_m68k,
# 1479 "../bfd/bfd.h"
  bfd_arch_vax,
  bfd_arch_i960,
# 1498 "../bfd/bfd.h"
  bfd_arch_or32,

  bfd_arch_a29k,
  bfd_arch_sparc,
# 1517 "../bfd/bfd.h"
  bfd_arch_mips,
# 1538 "../bfd/bfd.h"
  bfd_arch_i386,





  bfd_arch_we32k,
  bfd_arch_tahoe,
  bfd_arch_i860,
  bfd_arch_i370,
  bfd_arch_romp,
  bfd_arch_alliant,
  bfd_arch_convex,
  bfd_arch_m88k,
  bfd_arch_pyramid,
  bfd_arch_h8300,



  bfd_arch_pdp11,
  bfd_arch_powerpc,
# 1577 "../bfd/bfd.h"
  bfd_arch_rs6000,




  bfd_arch_hppa,
  bfd_arch_d10v,



  bfd_arch_d30v,
  bfd_arch_dlx,
  bfd_arch_m68hc11,
  bfd_arch_m68hc12,
  bfd_arch_z8k,


  bfd_arch_h8500,
  bfd_arch_sh,
# 1604 "../bfd/bfd.h"
  bfd_arch_alpha,



  bfd_arch_arm,
# 1619 "../bfd/bfd.h"
  bfd_arch_ns32k,
  bfd_arch_w65,
  bfd_arch_tic30,
  bfd_arch_tic54x,
  bfd_arch_tic80,
  bfd_arch_v850,



  bfd_arch_arc,




  bfd_arch_m32r,


  bfd_arch_mn10200,
  bfd_arch_mn10300,


  bfd_arch_fr30,

  bfd_arch_frv,






  bfd_arch_mcore,
  bfd_arch_ia64,


  bfd_arch_pj,
  bfd_arch_avr,





  bfd_arch_cris,
  bfd_arch_s390,


  bfd_arch_openrisc,
  bfd_arch_mmix,
  bfd_arch_xstormy16,

  bfd_arch_last
  };

typedef struct bfd_arch_info
{
  int bits_per_word;
  int bits_per_address;
  int bits_per_byte;
  enum bfd_architecture arch;
  unsigned long mach;
  const char *arch_name;
  const char *printable_name;
  unsigned int section_align_power;



  boolean the_default;
  const struct bfd_arch_info * (*compatible)
       (const struct bfd_arch_info *a, const struct bfd_arch_info *b);


  boolean (*scan) (const struct bfd_arch_info *, const char *);

  const struct bfd_arch_info *next;
}
bfd_arch_info_type;

const char *
bfd_printable_name (bfd *abfd);

const bfd_arch_info_type *
bfd_scan_arch (const char *string);

const char **
bfd_arch_list (void);

const bfd_arch_info_type *
bfd_arch_get_compatible ( const bfd *abfd, const bfd *bbfd);



void
bfd_set_arch_info (bfd *abfd, const bfd_arch_info_type *arg);

enum bfd_architecture
bfd_get_arch (bfd *abfd);

unsigned long
bfd_get_mach (bfd *abfd);

unsigned int
bfd_arch_bits_per_byte (bfd *abfd);

unsigned int
bfd_arch_bits_per_address (bfd *abfd);

const bfd_arch_info_type *
bfd_get_arch_info (bfd *abfd);

const bfd_arch_info_type *
bfd_lookup_arch (enum bfd_architecture arch, unsigned long machine);



const char *
bfd_printable_arch_mach (enum bfd_architecture arch, unsigned long machine);

unsigned int
bfd_octets_per_byte (bfd *abfd);

unsigned int
bfd_arch_mach_octets_per_byte (enum bfd_architecture arch, unsigned long machine);



typedef enum bfd_reloc_status
{

  bfd_reloc_ok,


  bfd_reloc_overflow,


  bfd_reloc_outofrange,


  bfd_reloc_continue,


  bfd_reloc_notsupported,


  bfd_reloc_other,


  bfd_reloc_undefined,





  bfd_reloc_dangerous
 }
 bfd_reloc_status_type;


typedef struct reloc_cache_entry
{

  struct symbol_cache_entry **sym_ptr_ptr;


  bfd_size_type address;


  bfd_vma addend;


  reloc_howto_type *howto;

}
arelent;

enum complain_overflow
{

  complain_overflow_dont,



  complain_overflow_bitfield,



  complain_overflow_signed,



  complain_overflow_unsigned
};

struct reloc_howto_struct
{






  unsigned int type;



  unsigned int rightshift;




  int size;



  unsigned int bitsize;





  boolean pc_relative;



  unsigned int bitpos;



  enum complain_overflow complain_on_overflow;





  bfd_reloc_status_type (*special_function)
    (bfd *, arelent *, struct symbol_cache_entry *, void *, asection *, bfd *, char **);



  char *name;
# 1873 "../bfd/bfd.h"
  boolean partial_inplace;
# 1882 "../bfd/bfd.h"
  bfd_vma src_mask;





  bfd_vma dst_mask;







  boolean pcrel_offset;
};
# 1924 "../bfd/bfd.h"
unsigned int
bfd_get_reloc_size (reloc_howto_type *);

typedef struct relent_chain
{
  arelent relent;
  struct relent_chain *next;
}
arelent_chain;

bfd_reloc_status_type
bfd_check_overflow (enum complain_overflow how, unsigned int bitsize, unsigned int rightshift, unsigned int addrsize, bfd_vma relocation);





bfd_reloc_status_type
bfd_perform_relocation (bfd *abfd, arelent *reloc_entry, void * data, asection *input_section, bfd *output_bfd, char **error_message);






bfd_reloc_status_type
bfd_install_relocation (bfd *abfd, arelent *reloc_entry, void * data, bfd_vma data_start, asection *input_section, char **error_message);





enum bfd_reloc_code_real {
  _dummy_first_bfd_reloc_code_real,



  BFD_RELOC_64,
  BFD_RELOC_32,
  BFD_RELOC_26,
  BFD_RELOC_24,
  BFD_RELOC_16,
  BFD_RELOC_14,
  BFD_RELOC_8,






  BFD_RELOC_64_PCREL,
  BFD_RELOC_32_PCREL,
  BFD_RELOC_24_PCREL,
  BFD_RELOC_16_PCREL,
  BFD_RELOC_12_PCREL,
  BFD_RELOC_8_PCREL,


  BFD_RELOC_32_GOT_PCREL,
  BFD_RELOC_16_GOT_PCREL,
  BFD_RELOC_8_GOT_PCREL,
  BFD_RELOC_32_GOTOFF,
  BFD_RELOC_16_GOTOFF,
  BFD_RELOC_LO16_GOTOFF,
  BFD_RELOC_HI16_GOTOFF,
  BFD_RELOC_HI16_S_GOTOFF,
  BFD_RELOC_8_GOTOFF,
  BFD_RELOC_64_PLT_PCREL,
  BFD_RELOC_32_PLT_PCREL,
  BFD_RELOC_24_PLT_PCREL,
  BFD_RELOC_16_PLT_PCREL,
  BFD_RELOC_8_PLT_PCREL,
  BFD_RELOC_64_PLTOFF,
  BFD_RELOC_32_PLTOFF,
  BFD_RELOC_16_PLTOFF,
  BFD_RELOC_LO16_PLTOFF,
  BFD_RELOC_HI16_PLTOFF,
  BFD_RELOC_HI16_S_PLTOFF,
  BFD_RELOC_8_PLTOFF,


  BFD_RELOC_68K_GLOB_DAT,
  BFD_RELOC_68K_JMP_SLOT,
  BFD_RELOC_68K_RELATIVE,


  BFD_RELOC_32_BASEREL,
  BFD_RELOC_16_BASEREL,
  BFD_RELOC_LO16_BASEREL,
  BFD_RELOC_HI16_BASEREL,
  BFD_RELOC_HI16_S_BASEREL,
  BFD_RELOC_8_BASEREL,
  BFD_RELOC_RVA,


  BFD_RELOC_8_FFnn,







  BFD_RELOC_32_PCREL_S2,
  BFD_RELOC_16_PCREL_S2,
  BFD_RELOC_23_PCREL_S2,



  BFD_RELOC_HI22,
  BFD_RELOC_LO10,





  BFD_RELOC_GPREL16,
  BFD_RELOC_GPREL32,


  BFD_RELOC_I960_CALLJ,



  BFD_RELOC_NONE,
  BFD_RELOC_SPARC_WDISP22,
  BFD_RELOC_SPARC22,
  BFD_RELOC_SPARC13,
  BFD_RELOC_SPARC_GOT10,
  BFD_RELOC_SPARC_GOT13,
  BFD_RELOC_SPARC_GOT22,
  BFD_RELOC_SPARC_PC10,
  BFD_RELOC_SPARC_PC22,
  BFD_RELOC_SPARC_WPLT30,
  BFD_RELOC_SPARC_COPY,
  BFD_RELOC_SPARC_GLOB_DAT,
  BFD_RELOC_SPARC_JMP_SLOT,
  BFD_RELOC_SPARC_RELATIVE,
  BFD_RELOC_SPARC_UA16,
  BFD_RELOC_SPARC_UA32,
  BFD_RELOC_SPARC_UA64,


  BFD_RELOC_SPARC_BASE13,
  BFD_RELOC_SPARC_BASE22,



  BFD_RELOC_SPARC_10,
  BFD_RELOC_SPARC_11,
  BFD_RELOC_SPARC_OLO10,
  BFD_RELOC_SPARC_HH22,
  BFD_RELOC_SPARC_HM10,
  BFD_RELOC_SPARC_LM22,
  BFD_RELOC_SPARC_PC_HH22,
  BFD_RELOC_SPARC_PC_HM10,
  BFD_RELOC_SPARC_PC_LM22,
  BFD_RELOC_SPARC_WDISP16,
  BFD_RELOC_SPARC_WDISP19,
  BFD_RELOC_SPARC_7,
  BFD_RELOC_SPARC_6,
  BFD_RELOC_SPARC_5,

  BFD_RELOC_SPARC_PLT32,
  BFD_RELOC_SPARC_PLT64,
  BFD_RELOC_SPARC_HIX22,
  BFD_RELOC_SPARC_LOX10,
  BFD_RELOC_SPARC_H44,
  BFD_RELOC_SPARC_M44,
  BFD_RELOC_SPARC_L44,
  BFD_RELOC_SPARC_REGISTER,


  BFD_RELOC_SPARC_REV32,







  BFD_RELOC_ALPHA_GPDISP_HI16,





  BFD_RELOC_ALPHA_GPDISP_LO16,




  BFD_RELOC_ALPHA_GPDISP,
# 2141 "../bfd/bfd.h"
  BFD_RELOC_ALPHA_LITERAL,
  BFD_RELOC_ALPHA_ELF_LITERAL,
  BFD_RELOC_ALPHA_LITUSE,




  BFD_RELOC_ALPHA_HINT,



  BFD_RELOC_ALPHA_LINKAGE,



  BFD_RELOC_ALPHA_CODEADDR,



  BFD_RELOC_ALPHA_GPREL_HI16,
  BFD_RELOC_ALPHA_GPREL_LO16,




  BFD_RELOC_ALPHA_BRSGP,


  BFD_RELOC_ALPHA_TLSGD,
  BFD_RELOC_ALPHA_TLSLDM,
  BFD_RELOC_ALPHA_DTPMOD64,
  BFD_RELOC_ALPHA_GOTDTPREL16,
  BFD_RELOC_ALPHA_DTPREL64,
  BFD_RELOC_ALPHA_DTPREL_HI16,
  BFD_RELOC_ALPHA_DTPREL_LO16,
  BFD_RELOC_ALPHA_DTPREL16,
  BFD_RELOC_ALPHA_GOTTPREL16,
  BFD_RELOC_ALPHA_TPREL64,
  BFD_RELOC_ALPHA_TPREL_HI16,
  BFD_RELOC_ALPHA_TPREL_LO16,
  BFD_RELOC_ALPHA_TPREL16,



  BFD_RELOC_MIPS_JMP,


  BFD_RELOC_MIPS16_JMP,


  BFD_RELOC_MIPS16_GPREL,


  BFD_RELOC_HI16,





  BFD_RELOC_HI16_S,


  BFD_RELOC_LO16,


  BFD_RELOC_PCREL_HI16_S,


  BFD_RELOC_PCREL_LO16,


  BFD_RELOC_MIPS_LITERAL,


  BFD_RELOC_MIPS_GOT16,
  BFD_RELOC_MIPS_CALL16,
  BFD_RELOC_MIPS_GOT_HI16,
  BFD_RELOC_MIPS_GOT_LO16,
  BFD_RELOC_MIPS_CALL_HI16,
  BFD_RELOC_MIPS_CALL_LO16,
  BFD_RELOC_MIPS_SUB,
  BFD_RELOC_MIPS_GOT_PAGE,
  BFD_RELOC_MIPS_GOT_OFST,
  BFD_RELOC_MIPS_GOT_DISP,
  BFD_RELOC_MIPS_SHIFT5,
  BFD_RELOC_MIPS_SHIFT6,
  BFD_RELOC_MIPS_INSERT_A,
  BFD_RELOC_MIPS_INSERT_B,
  BFD_RELOC_MIPS_DELETE,
  BFD_RELOC_MIPS_HIGHEST,
  BFD_RELOC_MIPS_HIGHER,
  BFD_RELOC_MIPS_SCN_DISP,
  BFD_RELOC_MIPS_REL16,
  BFD_RELOC_MIPS_RELGOT,
  BFD_RELOC_MIPS_JALR,


  BFD_RELOC_FRV_LABEL16,
  BFD_RELOC_FRV_LABEL24,
  BFD_RELOC_FRV_LO16,
  BFD_RELOC_FRV_HI16,
  BFD_RELOC_FRV_GPREL12,
  BFD_RELOC_FRV_GPRELU12,
  BFD_RELOC_FRV_GPREL32,
  BFD_RELOC_FRV_GPRELHI,
  BFD_RELOC_FRV_GPRELLO,



  BFD_RELOC_386_GOT32,
  BFD_RELOC_386_PLT32,
  BFD_RELOC_386_COPY,
  BFD_RELOC_386_GLOB_DAT,
  BFD_RELOC_386_JUMP_SLOT,
  BFD_RELOC_386_RELATIVE,
  BFD_RELOC_386_GOTOFF,
  BFD_RELOC_386_GOTPC,
  BFD_RELOC_386_TLS_TPOFF,
  BFD_RELOC_386_TLS_IE,
  BFD_RELOC_386_TLS_GOTIE,
  BFD_RELOC_386_TLS_LE,
  BFD_RELOC_386_TLS_GD,
  BFD_RELOC_386_TLS_LDM,
  BFD_RELOC_386_TLS_LDO_32,
  BFD_RELOC_386_TLS_IE_32,
  BFD_RELOC_386_TLS_LE_32,
  BFD_RELOC_386_TLS_DTPMOD32,
  BFD_RELOC_386_TLS_DTPOFF32,
  BFD_RELOC_386_TLS_TPOFF32,


  BFD_RELOC_X86_64_GOT32,
  BFD_RELOC_X86_64_PLT32,
  BFD_RELOC_X86_64_COPY,
  BFD_RELOC_X86_64_GLOB_DAT,
  BFD_RELOC_X86_64_JUMP_SLOT,
  BFD_RELOC_X86_64_RELATIVE,
  BFD_RELOC_X86_64_GOTPCREL,
  BFD_RELOC_X86_64_32S,


  BFD_RELOC_NS32K_IMM_8,
  BFD_RELOC_NS32K_IMM_16,
  BFD_RELOC_NS32K_IMM_32,
  BFD_RELOC_NS32K_IMM_8_PCREL,
  BFD_RELOC_NS32K_IMM_16_PCREL,
  BFD_RELOC_NS32K_IMM_32_PCREL,
  BFD_RELOC_NS32K_DISP_8,
  BFD_RELOC_NS32K_DISP_16,
  BFD_RELOC_NS32K_DISP_32,
  BFD_RELOC_NS32K_DISP_8_PCREL,
  BFD_RELOC_NS32K_DISP_16_PCREL,
  BFD_RELOC_NS32K_DISP_32_PCREL,


  BFD_RELOC_PDP11_DISP_8_PCREL,
  BFD_RELOC_PDP11_DISP_6_PCREL,


  BFD_RELOC_PJ_CODE_HI16,
  BFD_RELOC_PJ_CODE_LO16,
  BFD_RELOC_PJ_CODE_DIR16,
  BFD_RELOC_PJ_CODE_DIR32,
  BFD_RELOC_PJ_CODE_REL16,
  BFD_RELOC_PJ_CODE_REL32,


  BFD_RELOC_PPC_B26,
  BFD_RELOC_PPC_BA26,
  BFD_RELOC_PPC_TOC16,
  BFD_RELOC_PPC_B16,
  BFD_RELOC_PPC_B16_BRTAKEN,
  BFD_RELOC_PPC_B16_BRNTAKEN,
  BFD_RELOC_PPC_BA16,
  BFD_RELOC_PPC_BA16_BRTAKEN,
  BFD_RELOC_PPC_BA16_BRNTAKEN,
  BFD_RELOC_PPC_COPY,
  BFD_RELOC_PPC_GLOB_DAT,
  BFD_RELOC_PPC_JMP_SLOT,
  BFD_RELOC_PPC_RELATIVE,
  BFD_RELOC_PPC_LOCAL24PC,
  BFD_RELOC_PPC_EMB_NADDR32,
  BFD_RELOC_PPC_EMB_NADDR16,
  BFD_RELOC_PPC_EMB_NADDR16_LO,
  BFD_RELOC_PPC_EMB_NADDR16_HI,
  BFD_RELOC_PPC_EMB_NADDR16_HA,
  BFD_RELOC_PPC_EMB_SDAI16,
  BFD_RELOC_PPC_EMB_SDA2I16,
  BFD_RELOC_PPC_EMB_SDA2REL,
  BFD_RELOC_PPC_EMB_SDA21,
  BFD_RELOC_PPC_EMB_MRKREF,
  BFD_RELOC_PPC_EMB_RELSEC16,
  BFD_RELOC_PPC_EMB_RELST_LO,
  BFD_RELOC_PPC_EMB_RELST_HI,
  BFD_RELOC_PPC_EMB_RELST_HA,
  BFD_RELOC_PPC_EMB_BIT_FLD,
  BFD_RELOC_PPC_EMB_RELSDA,
  BFD_RELOC_PPC64_HIGHER,
  BFD_RELOC_PPC64_HIGHER_S,
  BFD_RELOC_PPC64_HIGHEST,
  BFD_RELOC_PPC64_HIGHEST_S,
  BFD_RELOC_PPC64_TOC16_LO,
  BFD_RELOC_PPC64_TOC16_HI,
  BFD_RELOC_PPC64_TOC16_HA,
  BFD_RELOC_PPC64_TOC,
  BFD_RELOC_PPC64_PLTGOT16,
  BFD_RELOC_PPC64_PLTGOT16_LO,
  BFD_RELOC_PPC64_PLTGOT16_HI,
  BFD_RELOC_PPC64_PLTGOT16_HA,
  BFD_RELOC_PPC64_ADDR16_DS,
  BFD_RELOC_PPC64_ADDR16_LO_DS,
  BFD_RELOC_PPC64_GOT16_DS,
  BFD_RELOC_PPC64_GOT16_LO_DS,
  BFD_RELOC_PPC64_PLT16_LO_DS,
  BFD_RELOC_PPC64_SECTOFF_DS,
  BFD_RELOC_PPC64_SECTOFF_LO_DS,
  BFD_RELOC_PPC64_TOC16_DS,
  BFD_RELOC_PPC64_TOC16_LO_DS,
  BFD_RELOC_PPC64_PLTGOT16_DS,
  BFD_RELOC_PPC64_PLTGOT16_LO_DS,


  BFD_RELOC_I370_D12,




  BFD_RELOC_CTOR,



  BFD_RELOC_ARM_PCREL_BRANCH,




  BFD_RELOC_ARM_PCREL_BLX,




  BFD_RELOC_THUMB_PCREL_BLX,



  BFD_RELOC_ARM_IMMEDIATE,
  BFD_RELOC_ARM_ADRL_IMMEDIATE,
  BFD_RELOC_ARM_OFFSET_IMM,
  BFD_RELOC_ARM_SHIFT_IMM,
  BFD_RELOC_ARM_SWI,
  BFD_RELOC_ARM_MULTI,
  BFD_RELOC_ARM_CP_OFF_IMM,
  BFD_RELOC_ARM_ADR_IMM,
  BFD_RELOC_ARM_LDR_IMM,
  BFD_RELOC_ARM_LITERAL,
  BFD_RELOC_ARM_IN_POOL,
  BFD_RELOC_ARM_OFFSET_IMM8,
  BFD_RELOC_ARM_HWLITERAL,
  BFD_RELOC_ARM_THUMB_ADD,
  BFD_RELOC_ARM_THUMB_IMM,
  BFD_RELOC_ARM_THUMB_SHIFT,
  BFD_RELOC_ARM_THUMB_OFFSET,
  BFD_RELOC_ARM_GOT12,
  BFD_RELOC_ARM_GOT32,
  BFD_RELOC_ARM_JUMP_SLOT,
  BFD_RELOC_ARM_COPY,
  BFD_RELOC_ARM_GLOB_DAT,
  BFD_RELOC_ARM_PLT32,
  BFD_RELOC_ARM_RELATIVE,
  BFD_RELOC_ARM_GOTOFF,
  BFD_RELOC_ARM_GOTPC,


  BFD_RELOC_SH_PCDISP8BY2,
  BFD_RELOC_SH_PCDISP12BY2,
  BFD_RELOC_SH_IMM4,
  BFD_RELOC_SH_IMM4BY2,
  BFD_RELOC_SH_IMM4BY4,
  BFD_RELOC_SH_IMM8,
  BFD_RELOC_SH_IMM8BY2,
  BFD_RELOC_SH_IMM8BY4,
  BFD_RELOC_SH_PCRELIMM8BY2,
  BFD_RELOC_SH_PCRELIMM8BY4,
  BFD_RELOC_SH_SWITCH16,
  BFD_RELOC_SH_SWITCH32,
  BFD_RELOC_SH_USES,
  BFD_RELOC_SH_COUNT,
  BFD_RELOC_SH_ALIGN,
  BFD_RELOC_SH_CODE,
  BFD_RELOC_SH_DATA,
  BFD_RELOC_SH_LABEL,
  BFD_RELOC_SH_LOOP_START,
  BFD_RELOC_SH_LOOP_END,
  BFD_RELOC_SH_COPY,
  BFD_RELOC_SH_GLOB_DAT,
  BFD_RELOC_SH_JMP_SLOT,
  BFD_RELOC_SH_RELATIVE,
  BFD_RELOC_SH_GOTPC,
  BFD_RELOC_SH_GOT_LOW16,
  BFD_RELOC_SH_GOT_MEDLOW16,
  BFD_RELOC_SH_GOT_MEDHI16,
  BFD_RELOC_SH_GOT_HI16,
  BFD_RELOC_SH_GOTPLT_LOW16,
  BFD_RELOC_SH_GOTPLT_MEDLOW16,
  BFD_RELOC_SH_GOTPLT_MEDHI16,
  BFD_RELOC_SH_GOTPLT_HI16,
  BFD_RELOC_SH_PLT_LOW16,
  BFD_RELOC_SH_PLT_MEDLOW16,
  BFD_RELOC_SH_PLT_MEDHI16,
  BFD_RELOC_SH_PLT_HI16,
  BFD_RELOC_SH_GOTOFF_LOW16,
  BFD_RELOC_SH_GOTOFF_MEDLOW16,
  BFD_RELOC_SH_GOTOFF_MEDHI16,
  BFD_RELOC_SH_GOTOFF_HI16,
  BFD_RELOC_SH_GOTPC_LOW16,
  BFD_RELOC_SH_GOTPC_MEDLOW16,
  BFD_RELOC_SH_GOTPC_MEDHI16,
  BFD_RELOC_SH_GOTPC_HI16,
  BFD_RELOC_SH_COPY64,
  BFD_RELOC_SH_GLOB_DAT64,
  BFD_RELOC_SH_JMP_SLOT64,
  BFD_RELOC_SH_RELATIVE64,
  BFD_RELOC_SH_GOT10BY4,
  BFD_RELOC_SH_GOT10BY8,
  BFD_RELOC_SH_GOTPLT10BY4,
  BFD_RELOC_SH_GOTPLT10BY8,
  BFD_RELOC_SH_GOTPLT32,
  BFD_RELOC_SH_SHMEDIA_CODE,
  BFD_RELOC_SH_IMMU5,
  BFD_RELOC_SH_IMMS6,
  BFD_RELOC_SH_IMMS6BY32,
  BFD_RELOC_SH_IMMU6,
  BFD_RELOC_SH_IMMS10,
  BFD_RELOC_SH_IMMS10BY2,
  BFD_RELOC_SH_IMMS10BY4,
  BFD_RELOC_SH_IMMS10BY8,
  BFD_RELOC_SH_IMMS16,
  BFD_RELOC_SH_IMMU16,
  BFD_RELOC_SH_IMM_LOW16,
  BFD_RELOC_SH_IMM_LOW16_PCREL,
  BFD_RELOC_SH_IMM_MEDLOW16,
  BFD_RELOC_SH_IMM_MEDLOW16_PCREL,
  BFD_RELOC_SH_IMM_MEDHI16,
  BFD_RELOC_SH_IMM_MEDHI16_PCREL,
  BFD_RELOC_SH_IMM_HI16,
  BFD_RELOC_SH_IMM_HI16_PCREL,
  BFD_RELOC_SH_PT_16,



  BFD_RELOC_THUMB_PCREL_BRANCH9,
  BFD_RELOC_THUMB_PCREL_BRANCH12,
  BFD_RELOC_THUMB_PCREL_BRANCH23,





  BFD_RELOC_ARC_B22_PCREL,




  BFD_RELOC_ARC_B26,




  BFD_RELOC_D10V_10_PCREL_R,






  BFD_RELOC_D10V_10_PCREL_L,



  BFD_RELOC_D10V_18,



  BFD_RELOC_D10V_18_PCREL,



  BFD_RELOC_D30V_6,



  BFD_RELOC_D30V_9_PCREL,





  BFD_RELOC_D30V_9_PCREL_R,



  BFD_RELOC_D30V_15,



  BFD_RELOC_D30V_15_PCREL,





  BFD_RELOC_D30V_15_PCREL_R,



  BFD_RELOC_D30V_21,



  BFD_RELOC_D30V_21_PCREL,





  BFD_RELOC_D30V_21_PCREL_R,


  BFD_RELOC_D30V_32,


  BFD_RELOC_D30V_32_PCREL,


  BFD_RELOC_DLX_HI16_S,


  BFD_RELOC_DLX_LO16,


  BFD_RELOC_DLX_JMP26,



  BFD_RELOC_M32R_24,


  BFD_RELOC_M32R_10_PCREL,


  BFD_RELOC_M32R_18_PCREL,


  BFD_RELOC_M32R_26_PCREL,



  BFD_RELOC_M32R_HI16_ULO,



  BFD_RELOC_M32R_HI16_SLO,


  BFD_RELOC_M32R_LO16,



  BFD_RELOC_M32R_SDA16,


  BFD_RELOC_V850_9_PCREL,


  BFD_RELOC_V850_22_PCREL,


  BFD_RELOC_V850_SDA_16_16_OFFSET,



  BFD_RELOC_V850_SDA_15_16_OFFSET,


  BFD_RELOC_V850_ZDA_16_16_OFFSET,



  BFD_RELOC_V850_ZDA_15_16_OFFSET,



  BFD_RELOC_V850_TDA_6_8_OFFSET,



  BFD_RELOC_V850_TDA_7_8_OFFSET,


  BFD_RELOC_V850_TDA_7_7_OFFSET,


  BFD_RELOC_V850_TDA_16_16_OFFSET,



  BFD_RELOC_V850_TDA_4_5_OFFSET,


  BFD_RELOC_V850_TDA_4_4_OFFSET,



  BFD_RELOC_V850_SDA_16_16_SPLIT_OFFSET,



  BFD_RELOC_V850_ZDA_16_16_SPLIT_OFFSET,


  BFD_RELOC_V850_CALLT_6_7_OFFSET,


  BFD_RELOC_V850_CALLT_16_16_OFFSET,




  BFD_RELOC_MN10300_32_PCREL,



  BFD_RELOC_MN10300_16_PCREL,




  BFD_RELOC_TIC30_LDP,




  BFD_RELOC_TIC54X_PARTLS7,




  BFD_RELOC_TIC54X_PARTMS9,


  BFD_RELOC_TIC54X_23,




  BFD_RELOC_TIC54X_16_OF_23,




  BFD_RELOC_TIC54X_MS7_OF_23,


  BFD_RELOC_FR30_48,



  BFD_RELOC_FR30_20,



  BFD_RELOC_FR30_6_IN_4,



  BFD_RELOC_FR30_8_IN_8,



  BFD_RELOC_FR30_9_IN_8,



  BFD_RELOC_FR30_10_IN_8,



  BFD_RELOC_FR30_9_PCREL,



  BFD_RELOC_FR30_12_PCREL,


  BFD_RELOC_MCORE_PCREL_IMM8BY4,
  BFD_RELOC_MCORE_PCREL_IMM11BY2,
  BFD_RELOC_MCORE_PCREL_IMM4BY2,
  BFD_RELOC_MCORE_PCREL_32,
  BFD_RELOC_MCORE_PCREL_JSR_IMM11BY2,
  BFD_RELOC_MCORE_RVA,


  BFD_RELOC_MMIX_GETA,
  BFD_RELOC_MMIX_GETA_1,
  BFD_RELOC_MMIX_GETA_2,
  BFD_RELOC_MMIX_GETA_3,


  BFD_RELOC_MMIX_CBRANCH,
  BFD_RELOC_MMIX_CBRANCH_J,
  BFD_RELOC_MMIX_CBRANCH_1,
  BFD_RELOC_MMIX_CBRANCH_2,
  BFD_RELOC_MMIX_CBRANCH_3,


  BFD_RELOC_MMIX_PUSHJ,
  BFD_RELOC_MMIX_PUSHJ_1,
  BFD_RELOC_MMIX_PUSHJ_2,
  BFD_RELOC_MMIX_PUSHJ_3,


  BFD_RELOC_MMIX_JMP,
  BFD_RELOC_MMIX_JMP_1,
  BFD_RELOC_MMIX_JMP_2,
  BFD_RELOC_MMIX_JMP_3,



  BFD_RELOC_MMIX_ADDR19,


  BFD_RELOC_MMIX_ADDR27,



  BFD_RELOC_MMIX_REG_OR_BYTE,



  BFD_RELOC_MMIX_REG,



  BFD_RELOC_MMIX_BASE_PLUS_OFFSET,



  BFD_RELOC_MMIX_LOCAL,



  BFD_RELOC_AVR_7_PCREL,



  BFD_RELOC_AVR_13_PCREL,



  BFD_RELOC_AVR_16_PM,



  BFD_RELOC_AVR_LO8_LDI,



  BFD_RELOC_AVR_HI8_LDI,



  BFD_RELOC_AVR_HH8_LDI,



  BFD_RELOC_AVR_LO8_LDI_NEG,




  BFD_RELOC_AVR_HI8_LDI_NEG,




  BFD_RELOC_AVR_HH8_LDI_NEG,



  BFD_RELOC_AVR_LO8_LDI_PM,



  BFD_RELOC_AVR_HI8_LDI_PM,



  BFD_RELOC_AVR_HH8_LDI_PM,



  BFD_RELOC_AVR_LO8_LDI_PM_NEG,




  BFD_RELOC_AVR_HI8_LDI_PM_NEG,




  BFD_RELOC_AVR_HH8_LDI_PM_NEG,



  BFD_RELOC_AVR_CALL,


  BFD_RELOC_390_12,


  BFD_RELOC_390_GOT12,


  BFD_RELOC_390_PLT32,


  BFD_RELOC_390_COPY,


  BFD_RELOC_390_GLOB_DAT,


  BFD_RELOC_390_JMP_SLOT,


  BFD_RELOC_390_RELATIVE,


  BFD_RELOC_390_GOTPC,


  BFD_RELOC_390_GOT16,


  BFD_RELOC_390_PC16DBL,


  BFD_RELOC_390_PLT16DBL,


  BFD_RELOC_390_PC32DBL,


  BFD_RELOC_390_PLT32DBL,


  BFD_RELOC_390_GOTPCDBL,


  BFD_RELOC_390_GOT64,


  BFD_RELOC_390_PLT64,


  BFD_RELOC_390_GOTENT,
# 2926 "../bfd/bfd.h"
  BFD_RELOC_VTABLE_INHERIT,
  BFD_RELOC_VTABLE_ENTRY,


  BFD_RELOC_IA64_IMM14,
  BFD_RELOC_IA64_IMM22,
  BFD_RELOC_IA64_IMM64,
  BFD_RELOC_IA64_DIR32MSB,
  BFD_RELOC_IA64_DIR32LSB,
  BFD_RELOC_IA64_DIR64MSB,
  BFD_RELOC_IA64_DIR64LSB,
  BFD_RELOC_IA64_GPREL22,
  BFD_RELOC_IA64_GPREL64I,
  BFD_RELOC_IA64_GPREL32MSB,
  BFD_RELOC_IA64_GPREL32LSB,
  BFD_RELOC_IA64_GPREL64MSB,
  BFD_RELOC_IA64_GPREL64LSB,
  BFD_RELOC_IA64_LTOFF22,
  BFD_RELOC_IA64_LTOFF64I,
  BFD_RELOC_IA64_PLTOFF22,
  BFD_RELOC_IA64_PLTOFF64I,
  BFD_RELOC_IA64_PLTOFF64MSB,
  BFD_RELOC_IA64_PLTOFF64LSB,
  BFD_RELOC_IA64_FPTR64I,
  BFD_RELOC_IA64_FPTR32MSB,
  BFD_RELOC_IA64_FPTR32LSB,
  BFD_RELOC_IA64_FPTR64MSB,
  BFD_RELOC_IA64_FPTR64LSB,
  BFD_RELOC_IA64_PCREL21B,
  BFD_RELOC_IA64_PCREL21BI,
  BFD_RELOC_IA64_PCREL21M,
  BFD_RELOC_IA64_PCREL21F,
  BFD_RELOC_IA64_PCREL22,
  BFD_RELOC_IA64_PCREL60B,
  BFD_RELOC_IA64_PCREL64I,
  BFD_RELOC_IA64_PCREL32MSB,
  BFD_RELOC_IA64_PCREL32LSB,
  BFD_RELOC_IA64_PCREL64MSB,
  BFD_RELOC_IA64_PCREL64LSB,
  BFD_RELOC_IA64_LTOFF_FPTR22,
  BFD_RELOC_IA64_LTOFF_FPTR64I,
  BFD_RELOC_IA64_LTOFF_FPTR32MSB,
  BFD_RELOC_IA64_LTOFF_FPTR32LSB,
  BFD_RELOC_IA64_LTOFF_FPTR64MSB,
  BFD_RELOC_IA64_LTOFF_FPTR64LSB,
  BFD_RELOC_IA64_SEGREL32MSB,
  BFD_RELOC_IA64_SEGREL32LSB,
  BFD_RELOC_IA64_SEGREL64MSB,
  BFD_RELOC_IA64_SEGREL64LSB,
  BFD_RELOC_IA64_SECREL32MSB,
  BFD_RELOC_IA64_SECREL32LSB,
  BFD_RELOC_IA64_SECREL64MSB,
  BFD_RELOC_IA64_SECREL64LSB,
  BFD_RELOC_IA64_REL32MSB,
  BFD_RELOC_IA64_REL32LSB,
  BFD_RELOC_IA64_REL64MSB,
  BFD_RELOC_IA64_REL64LSB,
  BFD_RELOC_IA64_LTV32MSB,
  BFD_RELOC_IA64_LTV32LSB,
  BFD_RELOC_IA64_LTV64MSB,
  BFD_RELOC_IA64_LTV64LSB,
  BFD_RELOC_IA64_IPLTMSB,
  BFD_RELOC_IA64_IPLTLSB,
  BFD_RELOC_IA64_COPY,
  BFD_RELOC_IA64_LTOFF22X,
  BFD_RELOC_IA64_LDXMOV,
  BFD_RELOC_IA64_TPREL14,
  BFD_RELOC_IA64_TPREL22,
  BFD_RELOC_IA64_TPREL64I,
  BFD_RELOC_IA64_TPREL64MSB,
  BFD_RELOC_IA64_TPREL64LSB,
  BFD_RELOC_IA64_LTOFF_TPREL22,
  BFD_RELOC_IA64_DTPMOD64MSB,
  BFD_RELOC_IA64_DTPMOD64LSB,
  BFD_RELOC_IA64_LTOFF_DTPMOD22,
  BFD_RELOC_IA64_DTPREL14,
  BFD_RELOC_IA64_DTPREL22,
  BFD_RELOC_IA64_DTPREL64I,
  BFD_RELOC_IA64_DTPREL32MSB,
  BFD_RELOC_IA64_DTPREL32LSB,
  BFD_RELOC_IA64_DTPREL64MSB,
  BFD_RELOC_IA64_DTPREL64LSB,
  BFD_RELOC_IA64_LTOFF_DTPREL22,



  BFD_RELOC_M68HC11_HI8,



  BFD_RELOC_M68HC11_LO8,



  BFD_RELOC_M68HC11_3B,



  BFD_RELOC_CRIS_BDISP8,
  BFD_RELOC_CRIS_UNSIGNED_5,
  BFD_RELOC_CRIS_SIGNED_6,
  BFD_RELOC_CRIS_UNSIGNED_6,
  BFD_RELOC_CRIS_UNSIGNED_4,


  BFD_RELOC_CRIS_COPY,
  BFD_RELOC_CRIS_GLOB_DAT,
  BFD_RELOC_CRIS_JUMP_SLOT,
  BFD_RELOC_CRIS_RELATIVE,


  BFD_RELOC_CRIS_32_GOT,


  BFD_RELOC_CRIS_16_GOT,


  BFD_RELOC_CRIS_32_GOTPLT,


  BFD_RELOC_CRIS_16_GOTPLT,


  BFD_RELOC_CRIS_32_GOTREL,


  BFD_RELOC_CRIS_32_PLT_GOTREL,


  BFD_RELOC_CRIS_32_PLT_PCREL,


  BFD_RELOC_860_COPY,
  BFD_RELOC_860_GLOB_DAT,
  BFD_RELOC_860_JUMP_SLOT,
  BFD_RELOC_860_RELATIVE,
  BFD_RELOC_860_PC26,
  BFD_RELOC_860_PLT26,
  BFD_RELOC_860_PC16,
  BFD_RELOC_860_LOW0,
  BFD_RELOC_860_SPLIT0,
  BFD_RELOC_860_LOW1,
  BFD_RELOC_860_SPLIT1,
  BFD_RELOC_860_LOW2,
  BFD_RELOC_860_SPLIT2,
  BFD_RELOC_860_LOW3,
  BFD_RELOC_860_LOGOT0,
  BFD_RELOC_860_SPGOT0,
  BFD_RELOC_860_LOGOT1,
  BFD_RELOC_860_SPGOT1,
  BFD_RELOC_860_LOGOTOFF0,
  BFD_RELOC_860_SPGOTOFF0,
  BFD_RELOC_860_LOGOTOFF1,
  BFD_RELOC_860_SPGOTOFF1,
  BFD_RELOC_860_LOGOTOFF2,
  BFD_RELOC_860_LOGOTOFF3,
  BFD_RELOC_860_LOPC,
  BFD_RELOC_860_HIGHADJ,
  BFD_RELOC_860_HAGOT,
  BFD_RELOC_860_HAGOTOFF,
  BFD_RELOC_860_HAPC,
  BFD_RELOC_860_HIGH,
  BFD_RELOC_860_HIGOT,
  BFD_RELOC_860_HIGOTOFF,


  BFD_RELOC_OPENRISC_ABS_26,
  BFD_RELOC_OPENRISC_REL_26,


  BFD_RELOC_H8_DIR16A8,
  BFD_RELOC_H8_DIR16R8,
  BFD_RELOC_H8_DIR24A8,
  BFD_RELOC_H8_DIR24R8,
  BFD_RELOC_H8_DIR32A16,


  BFD_RELOC_XSTORMY16_REL_12,
  BFD_RELOC_XSTORMY16_24,
  BFD_RELOC_XSTORMY16_FPTR16,


  BFD_RELOC_VAX_GLOB_DAT,
  BFD_RELOC_VAX_JMP_SLOT,
  BFD_RELOC_VAX_RELATIVE,
  BFD_RELOC_UNUSED };
typedef enum bfd_reloc_code_real bfd_reloc_code_real_type;
reloc_howto_type *
bfd_reloc_type_lookup (bfd *abfd, bfd_reloc_code_real_type code);

const char *
bfd_get_reloc_code_name (bfd_reloc_code_real_type code);



typedef struct symbol_cache_entry
{
# 3132 "../bfd/bfd.h"
  struct _bfd *the_bfd;



  const char *name;




  symvalue value;
# 3228 "../bfd/bfd.h"
  flagword flags;




  struct sec *section;


  union
    {
      void * p;
      bfd_vma i;
    }
  udata;
}
asymbol;




boolean
bfd_is_local_label (bfd *abfd, asymbol *sym);

boolean
bfd_is_local_label_name (bfd *abfd, const char *name);
# 3261 "../bfd/bfd.h"
boolean
bfd_set_symtab (bfd *abfd, asymbol **location, unsigned int count);

void
bfd_print_symbol_vandf (bfd *abfd, void * file, asymbol *symbol);




asymbol *
_bfd_generic_make_empty_symbol (bfd *);




int
bfd_decode_symclass (asymbol *symbol);

boolean
bfd_is_undefined_symclass (int symclass);

void
bfd_symbol_info (asymbol *symbol, symbol_info *ret);

boolean
bfd_copy_private_symbol_data (bfd *ibfd, asymbol *isym, bfd *obfd, asymbol *osym);






struct _bfd
{

  const char *filename;


  const struct bfd_target *xvec;
# 3308 "../bfd/bfd.h"
  void * iostream;



  boolean cacheable;




  boolean target_defaulted;



  struct _bfd *lru_prev, *lru_next;



  ufile_ptr where;


  boolean opened_once;



  boolean mtime_set;


  long mtime;


  int ifd;


  bfd_format format;


  enum bfd_direction
    {
      no_direction = 0,
      read_direction = 1,
      write_direction = 2,
      both_direction = 3
    }
  direction;


  flagword flags;




  ufile_ptr origin;



  boolean output_has_begun;


  struct bfd_hash_table section_htab;


  struct sec *sections;


  struct sec **section_tail;


  unsigned int section_count;



  bfd_vma start_address;


  unsigned int symcount;


  struct symbol_cache_entry **outsymbols;


  unsigned int dynsymcount;


  const struct bfd_arch_info *arch_info;


  void * arelt_data;
  struct _bfd *my_archive;
  struct _bfd *next;
  struct _bfd *archive_head;
  boolean has_armap;


  struct _bfd *link_next;



  int archive_pass;


  union
    {
      struct aout_data_struct *aout_data;
      struct artdata *aout_ar_data;
      struct _oasys_data *oasys_obj_data;
      struct _oasys_ar_data *oasys_ar_data;
      struct coff_tdata *coff_obj_data;
      struct pe_tdata *pe_obj_data;
      struct xcoff_tdata *xcoff_obj_data;
      struct ecoff_tdata *ecoff_obj_data;
      struct ieee_data_struct *ieee_data;
      struct ieee_ar_data_struct *ieee_ar_data;
      struct srec_data_struct *srec_data;
      struct ihex_data_struct *ihex_data;
      struct tekhex_data_struct *tekhex_data;
      struct elf_obj_tdata *elf_obj_data;
      struct nlm_obj_tdata *nlm_obj_data;
      struct bout_data_struct *bout_data;
      struct mmo_data_struct *mmo_data;
      struct sun_core_struct *sun_core_data;
      struct sco5_core_struct *sco5_core_data;
      struct trad_core_struct *trad_core_data;
      struct som_data_struct *som_data;
      struct hpux_core_struct *hpux_core_data;
      struct hppabsd_core_struct *hppabsd_core_data;
      struct sgi_core_struct *sgi_core_data;
      struct lynx_core_struct *lynx_core_data;
      struct osf_core_struct *osf_core_data;
      struct cisco_core_struct *cisco_core_data;
      struct versados_data_struct *versados_data;
      struct netbsd_core_struct *netbsd_core_data;
      void * any;
    }
  tdata;


  void * usrdata;




  void * memory;
};

typedef enum bfd_error
{
  bfd_error_no_error = 0,
  bfd_error_system_call,
  bfd_error_invalid_target,
  bfd_error_wrong_format,
  bfd_error_wrong_object_format,
  bfd_error_invalid_operation,
  bfd_error_no_memory,
  bfd_error_no_symbols,
  bfd_error_no_armap,
  bfd_error_no_more_archived_files,
  bfd_error_malformed_archive,
  bfd_error_file_not_recognized,
  bfd_error_file_ambiguously_recognized,
  bfd_error_no_contents,
  bfd_error_nonrepresentable_section,
  bfd_error_no_debug_section,
  bfd_error_bad_value,
  bfd_error_file_truncated,
  bfd_error_file_too_big,
  bfd_error_invalid_error_code
}
bfd_error_type;

bfd_error_type
bfd_get_error (void);

void
bfd_set_error (bfd_error_type error_tag);

const char *
bfd_errmsg (bfd_error_type error_tag);

void
bfd_perror (const char *message);

typedef void (*bfd_error_handler_type) (const char *, ...);

bfd_error_handler_type
bfd_set_error_handler (bfd_error_handler_type);

void
bfd_set_error_program_name (const char *);

bfd_error_handler_type
bfd_get_error_handler (void);

const char *
bfd_archive_filename (bfd *);

long
bfd_get_reloc_upper_bound (bfd *abfd, asection *sect);

long
bfd_canonicalize_reloc (bfd *abfd, asection *sec, arelent **loc, asymbol **syms);




void
bfd_set_reloc (bfd *abfd, asection *sec, arelent **rel, unsigned int count);

boolean
bfd_set_file_flags (bfd *abfd, flagword flags);

int
bfd_get_arch_size (bfd *abfd);

int
bfd_get_sign_extend_vma (bfd *abfd);

boolean
bfd_set_start_address (bfd *abfd, bfd_vma vma);

long
bfd_get_mtime (bfd *abfd);

long
bfd_get_size (bfd *abfd);

unsigned int
bfd_get_gp_size (bfd *abfd);

void
bfd_set_gp_size (bfd *abfd, unsigned int i);

bfd_vma
bfd_scan_vma (const char *string, const char **end, int base);

boolean
bfd_copy_private_bfd_data (bfd *ibfd, bfd *obfd);




boolean
bfd_merge_private_bfd_data (bfd *ibfd, bfd *obfd);




boolean
bfd_set_private_flags (bfd *abfd, flagword flags);
# 3631 "../bfd/bfd.h"
extern bfd_byte *bfd_get_relocated_section_contents
       (bfd *, struct bfd_link_info *, struct bfd_link_order *, bfd_byte *, boolean, asymbol **);



boolean
bfd_alt_mach_code (bfd *abfd, int alternative);


symindex
bfd_get_next_mapent (bfd *abfd, symindex previous, carsym **sym);

boolean
bfd_set_archive_head (bfd *output, bfd *new_head);

bfd *
bfd_openr_next_archived_file (bfd *archive, bfd *previous);


const char *
bfd_core_file_failing_command (bfd *abfd);

int
bfd_core_file_failing_signal (bfd *abfd);

boolean
core_file_matches_executable_p (bfd *core_bfd, bfd *exec_bfd);
# 3681 "../bfd/bfd.h"
enum bfd_flavour
{
  bfd_target_unknown_flavour,
  bfd_target_aout_flavour,
  bfd_target_coff_flavour,
  bfd_target_ecoff_flavour,
  bfd_target_xcoff_flavour,
  bfd_target_elf_flavour,
  bfd_target_ieee_flavour,
  bfd_target_nlm_flavour,
  bfd_target_oasys_flavour,
  bfd_target_tekhex_flavour,
  bfd_target_srec_flavour,
  bfd_target_ihex_flavour,
  bfd_target_som_flavour,
  bfd_target_os9k_flavour,
  bfd_target_versados_flavour,
  bfd_target_msdos_flavour,
  bfd_target_ovax_flavour,
  bfd_target_evax_flavour,
  bfd_target_mmo_flavour
};

enum bfd_endian { BFD_ENDIAN_BIG, BFD_ENDIAN_LITTLE, BFD_ENDIAN_UNKNOWN };


typedef struct bfd_link_info _bfd_link_info;

typedef struct bfd_target
{

  char *name;



  enum bfd_flavour flavour;


  enum bfd_endian byteorder;


  enum bfd_endian header_byteorder;



  flagword object_flags;



  flagword section_flags;



  char symbol_leading_char;


  char ar_pad_char;


  unsigned short ar_max_namelen;




  bfd_vma (*bfd_getx64) (const bfd_byte *);
  bfd_signed_vma (*bfd_getx_signed_64) (const bfd_byte *);
  void (*bfd_putx64) (bfd_vma, bfd_byte *);
  bfd_vma (*bfd_getx32) (const bfd_byte *);
  bfd_signed_vma (*bfd_getx_signed_32) (const bfd_byte *);
  void (*bfd_putx32) (bfd_vma, bfd_byte *);
  bfd_vma (*bfd_getx16) (const bfd_byte *);
  bfd_signed_vma (*bfd_getx_signed_16) (const bfd_byte *);
  void (*bfd_putx16) (bfd_vma, bfd_byte *);


  bfd_vma (*bfd_h_getx64) (const bfd_byte *);
  bfd_signed_vma (*bfd_h_getx_signed_64) (const bfd_byte *);
  void (*bfd_h_putx64) (bfd_vma, bfd_byte *);
  bfd_vma (*bfd_h_getx32) (const bfd_byte *);
  bfd_signed_vma (*bfd_h_getx_signed_32) (const bfd_byte *);
  void (*bfd_h_putx32) (bfd_vma, bfd_byte *);
  bfd_vma (*bfd_h_getx16) (const bfd_byte *);
  bfd_signed_vma (*bfd_h_getx_signed_16) (const bfd_byte *);
  void (*bfd_h_putx16) (bfd_vma, bfd_byte *);





  const struct bfd_target *(*_bfd_check_format[bfd_type_end]) (bfd *);


  boolean (*_bfd_set_format[bfd_type_end]) (bfd *);


  boolean (*_bfd_write_contents[bfd_type_end]) (bfd *);
# 3788 "../bfd/bfd.h"
  boolean (*_close_and_cleanup) (bfd *);

  boolean (*_bfd_free_cached_info) (bfd *);

  boolean (*_new_section_hook) (bfd *, sec_ptr);

  boolean (*_bfd_get_section_contents) (bfd *, sec_ptr, void *, file_ptr, bfd_size_type);

  boolean (*_bfd_get_section_contents_in_window)
    (bfd *, sec_ptr, bfd_window *, file_ptr, bfd_size_type);
# 3809 "../bfd/bfd.h"
  boolean (*_bfd_copy_private_bfd_data) (bfd *, bfd *);


  boolean (*_bfd_merge_private_bfd_data) (bfd *, bfd *);


  boolean (*_bfd_copy_private_section_data) (bfd *, sec_ptr, bfd *, sec_ptr);



  boolean (*_bfd_copy_private_symbol_data) (bfd *, asymbol *, bfd *, asymbol *);


  boolean (*_bfd_set_private_flags) (bfd *, flagword);


  boolean (*_bfd_print_private_bfd_data) (bfd *, void *);






  char * (*_core_file_failing_command) (bfd *);
  int (*_core_file_failing_signal) (bfd *);
  boolean (*_core_file_matches_executable_p) (bfd *, bfd *);
# 3848 "../bfd/bfd.h"
  boolean (*_bfd_slurp_armap) (bfd *);
  boolean (*_bfd_slurp_extended_name_table) (bfd *);
  boolean (*_bfd_construct_extended_name_table)
    (bfd *, char **, bfd_size_type *, const char **);
  void (*_bfd_truncate_arname) (bfd *, const char *, char *);
  boolean (*write_armap)
    (bfd *, unsigned int, struct orl *, unsigned int, int);
  void * (*_bfd_read_ar_hdr_fn) (bfd *);
  bfd * (*openr_next_archived_file) (bfd *, bfd *);

  bfd * (*_bfd_get_elt_at_index) (bfd *, symindex);
  int (*_bfd_stat_arch_elt) (bfd *, struct stat *);
  boolean (*_bfd_update_armap_timestamp) (bfd *);
# 3875 "../bfd/bfd.h"
  long (*_bfd_get_symtab_upper_bound) (bfd *);
  long (*_bfd_canonicalize_symtab) (bfd *, struct symbol_cache_entry **);

  struct symbol_cache_entry *
           (*_bfd_make_empty_symbol) (bfd *);
  void (*_bfd_print_symbol) (bfd *, void *, struct symbol_cache_entry *, bfd_print_symbol_type);



  void (*_bfd_get_symbol_info) (bfd *, struct symbol_cache_entry *, symbol_info *);



  boolean (*_bfd_is_local_label_name) (bfd *, const char *);

  alent * (*_get_lineno) (bfd *, struct symbol_cache_entry *);
  boolean (*_bfd_find_nearest_line)
    (bfd *, struct sec *, struct symbol_cache_entry **, bfd_vma, const char **, const char **, unsigned int *);




  asymbol *(*_bfd_make_debug_symbol) (bfd *, void *, unsigned long size);



  long (*_read_minisymbols) (bfd *, boolean, void * *, unsigned int *);



  asymbol *(*_minisymbol_to_symbol) (bfd *, boolean, const void *, asymbol *);







  long (*_get_reloc_upper_bound) (bfd *, sec_ptr);
  long (*_bfd_canonicalize_reloc) (bfd *, sec_ptr, arelent **, struct symbol_cache_entry **);


  reloc_howto_type *
           (*reloc_type_lookup) (bfd *, bfd_reloc_code_real_type);





  boolean (*_bfd_set_arch_mach) (bfd *, enum bfd_architecture, unsigned long);

  boolean (*_bfd_set_section_contents) (bfd *, sec_ptr, void *, file_ptr, bfd_size_type);
# 3943 "../bfd/bfd.h"
  int (*_bfd_sizeof_headers) (bfd *, boolean);
  bfd_byte *(*_bfd_get_relocated_section_contents)
    (bfd *, struct bfd_link_info *, struct bfd_link_order *, bfd_byte *, boolean, struct symbol_cache_entry **);


  boolean (*_bfd_relax_section)
    (bfd *, struct sec *, struct bfd_link_info *, boolean *);



  struct bfd_link_hash_table *(*_bfd_link_hash_table_create) (bfd *);


  void (*_bfd_link_hash_table_free) (struct bfd_link_hash_table *);


  boolean (*_bfd_link_add_symbols) (bfd *, struct bfd_link_info *);


  void (*_bfd_link_just_syms) (asection *, struct bfd_link_info *);



  boolean (*_bfd_final_link) (bfd *, struct bfd_link_info *);


  boolean (*_bfd_link_split_section) (bfd *, struct sec *);


  boolean (*_bfd_gc_sections) (bfd *, struct bfd_link_info *);


  boolean (*_bfd_merge_sections) (bfd *, struct bfd_link_info *);


  boolean (*_bfd_discard_group) (bfd *, struct sec *);
# 3987 "../bfd/bfd.h"
  long (*_bfd_get_dynamic_symtab_upper_bound) (bfd *);

  long (*_bfd_canonicalize_dynamic_symtab)
    (bfd *, struct symbol_cache_entry **);

  long (*_bfd_get_dynamic_reloc_upper_bound) (bfd *);

  long (*_bfd_canonicalize_dynamic_reloc)
    (bfd *, arelent **, struct symbol_cache_entry **);


  const struct bfd_target * alternative_target;



  void * backend_data;

} bfd_target;

boolean
bfd_set_default_target (const char *name);

const bfd_target *
bfd_find_target (const char *target_name, bfd *abfd);

const char **
bfd_target_list (void);

const bfd_target *
bfd_search_for_target (int (* search_func) (const bfd_target *, void *), void *);


boolean
bfd_check_format (bfd *abfd, bfd_format format);

boolean
bfd_check_format_matches (bfd *abfd, bfd_format format, char ***matching);

boolean
bfd_set_format (bfd *abfd, bfd_format format);

const char *
bfd_format_string (bfd_format format);
# 133 "../../binutils-2.13.1/gas/as.h" 2

# 1 "../../binutils-2.13.1/include/libiberty.h" 1
# 46 "../../binutils-2.13.1/include/libiberty.h"
# 1 "/usr/lib/gcc-lib/i486-suse-linux/3.2/include/stddef.h" 1 3
# 147 "/usr/lib/gcc-lib/i486-suse-linux/3.2/include/stddef.h" 3
typedef int ptrdiff_t;
# 47 "../../binutils-2.13.1/include/libiberty.h" 2

# 1 "/usr/lib/gcc-lib/i486-suse-linux/3.2/include/stdarg.h" 1 3
# 49 "../../binutils-2.13.1/include/libiberty.h" 2





extern char **buildargv (const char *) __attribute__ ((__malloc__));



extern void freeargv (char **);




extern char **dupargv (char **) __attribute__ ((__malloc__));
# 78 "../../binutils-2.13.1/include/libiberty.h"
extern char *basename (const char *);







extern const char *lbasename (const char *);





extern char *concat (const char *, ...) __attribute__ ((__malloc__));
# 101 "../../binutils-2.13.1/include/libiberty.h"
extern char *reconcat (char *, const char *, ...) __attribute__ ((__malloc__));





extern unsigned long concat_length (const char *, ...);






extern char *concat_copy (char *, const char *, ...);






extern char *concat_copy2 (const char *, ...);



extern char *libiberty_concat_ptr;
# 137 "../../binutils-2.13.1/include/libiberty.h"
extern int fdmatch (int fd1, int fd2);




extern char * getpwd (void);



extern long get_run_time (void);



extern char *choose_temp_base (void) __attribute__ ((__malloc__));



extern char *make_temp_file (const char *) __attribute__ ((__malloc__));



extern const char *spaces (int count);




extern int errno_max (void);




extern const char *strerrno (int);



extern int strtoerrno (const char *);



extern char *xstrerror (int);




extern int signo_max (void);
# 193 "../../binutils-2.13.1/include/libiberty.h"
extern const char *strsigno (int);



extern int strtosigno (const char *);



extern int xatexit (void (*fn) (void));



extern void xexit (int status) __attribute__ ((__noreturn__));



extern void xmalloc_set_program_name (const char *);


extern void xmalloc_failed (size_t) __attribute__ ((__noreturn__));





extern void * xmalloc (size_t) __attribute__ ((__malloc__));





extern void * xrealloc (void *, size_t);




extern void * xcalloc (size_t, size_t) __attribute__ ((__malloc__));



extern char *xstrdup (const char *) __attribute__ ((__malloc__));



extern void * xmemdup (const void *, size_t, size_t) __attribute__ ((__malloc__));





extern const char _hex_value[256];
extern void hex_init (void);
# 260 "../../binutils-2.13.1/include/libiberty.h"
extern int pexecute (const char *, char * const *, const char *, const char *, char **, char **, int);




extern int pwait (int, int *, int);




extern int asprintf (char **, const char *, ...) __attribute__ ((__format__ (__printf__, 2, 3)));




extern int vasprintf (char **, const char *, va_list)
  __attribute__ ((__format__ (__printf__, 2, 0)));
# 286 "../../binutils-2.13.1/include/libiberty.h"
extern void * C_alloca (size_t) __attribute__ ((__malloc__));
# 135 "../../binutils-2.13.1/gas/as.h" 2


# 1 "../../binutils-2.13.1/include/progress.h" 1
# 138 "../../binutils-2.13.1/gas/as.h" 2
# 161 "../../binutils-2.13.1/gas/as.h"
extern char **environ;
# 194 "../../binutils-2.13.1/gas/as.h"
# 1 "../../binutils-2.13.1/include/fopen-same.h" 1
# 195 "../../binutils-2.13.1/gas/as.h" 2
# 212 "../../binutils-2.13.1/gas/as.h"
# 1 "../../binutils-2.13.1/gas/asintl.h" 1
# 24 "../../binutils-2.13.1/gas/asintl.h"
# 1 "/usr/include/locale.h" 1 3
# 29 "/usr/include/locale.h" 3
# 1 "/usr/lib/gcc-lib/i486-suse-linux/3.2/include/stddef.h" 1 3
# 30 "/usr/include/locale.h" 2 3
# 1 "/usr/include/bits/locale.h" 1 3
# 27 "/usr/include/bits/locale.h" 3
enum
{
  __LC_CTYPE = 0,
  __LC_NUMERIC = 1,
  __LC_TIME = 2,
  __LC_COLLATE = 3,
  __LC_MONETARY = 4,
  __LC_MESSAGES = 5,
  __LC_ALL = 6,
  __LC_PAPER = 7,
  __LC_NAME = 8,
  __LC_ADDRESS = 9,
  __LC_TELEPHONE = 10,
  __LC_MEASUREMENT = 11,
  __LC_IDENTIFICATION = 12
};
# 31 "/usr/include/locale.h" 2 3


# 52 "/usr/include/locale.h" 3
struct lconv
{


  char *decimal_point;
  char *thousands_sep;





  char *grouping;





  char *int_curr_symbol;
  char *currency_symbol;
  char *mon_decimal_point;
  char *mon_thousands_sep;
  char *mon_grouping;
  char *positive_sign;
  char *negative_sign;
  char int_frac_digits;
  char frac_digits;

  char p_cs_precedes;

  char p_sep_by_space;

  char n_cs_precedes;

  char n_sep_by_space;






  char p_sign_posn;
  char n_sign_posn;


  char int_p_cs_precedes;

  char int_p_sep_by_space;

  char int_n_cs_precedes;

  char int_n_sep_by_space;






  char int_p_sign_posn;
  char int_n_sign_posn;
# 119 "/usr/include/locale.h" 3
};



extern char *setlocale (int __category, __const char *__locale) ;


extern struct lconv *localeconv (void) ;
# 149 "/usr/include/locale.h" 3
extern __locale_t __newlocale (int __category_mask, __const char *__locale,
                               __locale_t __base) ;



extern __locale_t __duplocale (__locale_t __dataset) ;



extern void __freelocale (__locale_t __dataset) ;



# 25 "../../binutils-2.13.1/gas/asintl.h" 2



# 1 "/usr/include/libintl.h" 1 3
# 30 "/usr/include/libintl.h" 3





extern char *gettext (__const char *__msgid) ;



extern char *dgettext (__const char *__domainname, __const char *__msgid)
     ;
extern char *__dgettext (__const char *__domainname, __const char *__msgid)
     __attribute__ ((__format_arg__ (2)));



extern char *dcgettext (__const char *__domainname,
                        __const char *__msgid, int __category) ;
extern char *__dcgettext (__const char *__domainname,
                          __const char *__msgid, int __category)
     __attribute__ ((__format_arg__ (2)));




extern char *ngettext (__const char *__msgid1, __const char *__msgid2,
                       unsigned long int __n)
     __attribute__ ((__format_arg__ (1))) __attribute__ ((__format_arg__ (2)));



extern char *dngettext (__const char *__domainname, __const char *__msgid1,
                        __const char *__msgid2, unsigned long int __n)
     __attribute__ ((__format_arg__ (2))) __attribute__ ((__format_arg__ (3)));



extern char *dcngettext (__const char *__domainname, __const char *__msgid1,
                         __const char *__msgid2, unsigned long int __n,
                         int __category)
     __attribute__ ((__format_arg__ (2))) __attribute__ ((__format_arg__ (3)));





extern char *textdomain (__const char *__domainname) ;



extern char *bindtextdomain (__const char *__domainname,
                             __const char *__dirname) ;



extern char *bind_textdomain_codeset (__const char *__domainname,
                                      __const char *__codeset) ;







# 1 "/usr/lib/gcc-lib/i486-suse-linux/3.2/include/stddef.h" 1 3
# 95 "/usr/include/libintl.h" 2 3
# 115 "/usr/include/libintl.h" 3

# 29 "../../binutils-2.13.1/gas/asintl.h" 2
# 213 "../../binutils-2.13.1/gas/as.h" 2







# 1 "../../binutils-2.13.1/gas/flonum.h" 1
# 35 "../../binutils-2.13.1/gas/flonum.h"
# 1 "../../binutils-2.13.1/gas/bignum.h" 1
# 41 "../../binutils-2.13.1/gas/bignum.h"
typedef unsigned short LITTLENUM_TYPE;







int bignum_copy (LITTLENUM_TYPE * in, int in_length, LITTLENUM_TYPE * out, int out_length);
# 36 "../../binutils-2.13.1/gas/flonum.h" 2
# 52 "../../binutils-2.13.1/gas/flonum.h"
struct FLONUM_STRUCT {
  LITTLENUM_TYPE *low;
  LITTLENUM_TYPE *high;
  LITTLENUM_TYPE *leader;

  long exponent;
  char sign;
};

typedef struct FLONUM_STRUCT FLONUM_TYPE;
# 75 "../../binutils-2.13.1/gas/flonum.h"
extern const FLONUM_TYPE flonum_positive_powers_of_ten[];
extern const FLONUM_TYPE flonum_negative_powers_of_ten[];
extern const int table_size_of_flonum_powers_of_ten;
# 87 "../../binutils-2.13.1/gas/flonum.h"
int atof_generic (char **address_of_string_pointer, const char *string_of_decimal_marks, const char *string_of_decimal_exponent_marks, FLONUM_TYPE * address_of_generic_floating_point_number);




void flonum_copy (FLONUM_TYPE * in, FLONUM_TYPE * out);
void flonum_multip (const FLONUM_TYPE * a, const FLONUM_TYPE * b, FLONUM_TYPE * product);
# 221 "../../binutils-2.13.1/gas/as.h" 2




extern bfd *stdoutput;
typedef bfd_vma addressT;
typedef bfd_signed_vma offsetT;






typedef addressT valueT;
# 296 "../../binutils-2.13.1/gas/as.h"
typedef asection *segT;





typedef int subsegT;


extern subsegT now_subseg;


extern segT now_seg;
# 322 "../../binutils-2.13.1/gas/as.h"
extern segT reg_section, expr_section;

extern segT text_section, data_section, bss_section;
# 339 "../../binutils-2.13.1/gas/as.h"
enum _relax_state {



  rs_fill = 1,





  rs_align,






  rs_align_code,



  rs_align_test,



  rs_org,



  rs_broken_word,



  rs_machine_dependent,





  rs_space,



  rs_leb128,


  rs_cfa,


  rs_dwarf2dbg
};

typedef enum _relax_state relax_stateT;



typedef unsigned int relax_substateT;



typedef addressT relax_addressT;



extern unsigned char flag_no_comments;
extern unsigned char flag_debug;
extern unsigned char flag_signed_overflow_ok;

extern unsigned char flag_warn_displacement;



extern int flag_keep_locals;


extern int flag_mri;



extern unsigned char flag_readonly_data_in_text;


extern int flag_no_warnings;


extern int flag_fatal_warnings;



extern unsigned char flag_always_generate_output;


extern unsigned char flag_print_statistics;


extern int flag_strip_local_absolute;


extern int flag_traditional_format;


extern char *out_file_name;


extern char *insttbl_file_name;


extern int need_pass_2;



extern int linkrelax;


extern int listing;
# 463 "../../binutils-2.13.1/gas/as.h"
enum debug_info_type {
  DEBUG_UNSPECIFIED,
  DEBUG_NONE,
  DEBUG_STABS,
  DEBUG_ECOFF,
  DEBUG_DWARF,
  DEBUG_DWARF2
};

extern enum debug_info_type debug_type;


extern int max_macro_nest;



extern int chunksize;

struct _pseudo_type {

  const char *poc_name;

  void (*poc_handler) (int);

  int poc_val;
};

typedef struct _pseudo_type pseudo_typeS;
# 539 "../../binutils-2.13.1/gas/as.h"
void as_bad (const char *format, ...) __attribute__ ((__format__ (__printf__, 1, 2)));
void as_fatal (const char *format, ...) __attribute__ ((__format__ (__printf__, 1, 2))) __attribute__ ((__noreturn__));
void as_tsktsk (const char *format, ...) __attribute__ ((__format__ (__printf__, 1, 2)));
void as_warn (const char *format, ...) __attribute__ ((__format__ (__printf__, 1, 2)));
void as_bad_where (char *file, unsigned int line, const char *format, ...) __attribute__ ((__format__ (__printf__, 3, 4)));
void as_warn_where (char *file, unsigned int line, const char *format, ...) __attribute__ ((__format__ (__printf__, 3, 4)));

void as_assert (const char *, int, const char *);
void as_abort (const char *, int, const char *) __attribute__ ((__noreturn__));

void fprint_value (FILE *file, addressT value);
void sprint_value (char *buf, addressT value);

int had_errors (void);
int had_warnings (void);

void print_version_id (void);
char *app_push (void);
char *atof_ieee (char *str, int what_kind, LITTLENUM_TYPE * words);
char *input_scrub_include_file (char *filename, char *position);
extern void input_scrub_insert_line (const char *line);
extern void input_scrub_insert_file (char *path);
char *input_scrub_new_file (char *filename);
char *input_scrub_next_buffer (char **bufp);
int do_scrub_chars (int (*get) (char *, int), char *to, int tolen);
int gen_to_words (LITTLENUM_TYPE * words, int precision, long exponent_bits);

int had_err (void);
int ignore_input (void);
void cond_finish_check (int);
void cond_exit_macro (int);
int seen_at_least_1_file (void);
void app_pop (char *arg);
void as_howmuch (FILE * stream);
void as_perror (const char *gripe, const char *filename);
void as_where (char **namep, unsigned int *linep);
void bump_line_counters (void);
void do_scrub_begin (int);
void input_scrub_begin (void);
void input_scrub_close (void);
void input_scrub_end (void);
int new_logical_line (char *fname, int line_number);
void subsegs_begin (void);
void subseg_change (segT seg, int subseg);
segT subseg_new (const char *name, subsegT subseg);
segT subseg_force_new (const char *name, subsegT subseg);
void subseg_set (segT seg, subsegT subseg);

segT subseg_get (const char *, int);

int subseg_text_p (segT);

void start_dependencies (char *);
void register_dependency (char *);
void print_dependencies (void);

struct expressionS;
struct fix;
typedef struct symbol symbolS;
struct relax_type;
typedef struct frag fragS;



valueT add_to_literal_pool (symbolS *, valueT, segT, int);


int check_eh_frame (struct expressionS *, unsigned int *);
int eh_frame_estimate_size_before_relax (fragS *);
int eh_frame_relax_frag (fragS *);
void eh_frame_convert_frag (fragS *);

# 1 "../../binutils-2.13.1/gas/expr.h" 1
# 43 "../../binutils-2.13.1/gas/expr.h"
typedef enum {

  O_illegal,

  O_absent,

  O_constant,

  O_symbol,

  O_symbol_rva,

  O_register,




  O_big,

  O_uminus,

  O_bit_not,

  O_logical_not,

  O_multiply,

  O_divide,

  O_modulus,

  O_left_shift,

  O_right_shift,

  O_bit_inclusive_or,

  O_bit_or_not,

  O_bit_exclusive_or,

  O_bit_and,

  O_add,

  O_subtract,

  O_eq,

  O_ne,

  O_lt,

  O_le,

  O_ge,

  O_gt,

  O_logical_and,

  O_logical_or,

  O_index,

  O_md1, O_md2, O_md3, O_md4, O_md5, O_md6, O_md7, O_md8,
  O_md9, O_md10, O_md11, O_md12, O_md13, O_md14, O_md15, O_md16,
  O_md17, O_md18, O_md19, O_md20, O_md21, O_md22, O_md23, O_md24,
  O_md25, O_md26, O_md27, O_md28, O_md29, O_md30, O_md31, O_md32,

  O_max
} operatorT;

typedef struct expressionS {

  symbolS *X_add_symbol;

  symbolS *X_op_symbol;

  offsetT X_add_number;





  operatorT X_op : 8;
# 138 "../../binutils-2.13.1/gas/expr.h"
  unsigned int X_unsigned : 1;




  unsigned short X_md;
} expressionS;







extern FLONUM_TYPE generic_floating_point_number;

extern LITTLENUM_TYPE generic_bignum[];



typedef char operator_rankT;

extern char get_symbol_end (void);
extern void expr_begin (void);
extern void expr_set_precedence (void);
extern segT expr (int rank, expressionS * resultP);
extern unsigned int get_single_number (void);
extern symbolS *make_expr_symbol (expressionS * expressionP);
extern int expr_symbol_where
  (symbolS *, char **, unsigned int *);

extern symbolS *expr_build_uconstant (offsetT);
extern symbolS *expr_build_unary (operatorT, symbolS *);
extern symbolS *expr_build_binary (operatorT, symbolS *, symbolS *);
extern symbolS *expr_build_dot (void);
# 612 "../../binutils-2.13.1/gas/as.h" 2


# 1 "targ-env.h" 1
# 1 "../../binutils-2.13.1/gas/config/te-generic.h" 1
# 19 "../../binutils-2.13.1/gas/config/te-generic.h"
# 1 "obj-format.h" 1
# 1 "../../binutils-2.13.1/gas/config/obj-elf.h" 1
# 40 "../../binutils-2.13.1/gas/config/obj-elf.h"
# 1 "../../binutils-2.13.1/bfd/elf-bfd.h" 1
# 25 "../../binutils-2.13.1/bfd/elf-bfd.h"
# 1 "../../binutils-2.13.1/include/elf/common.h" 1
# 26 "../../binutils-2.13.1/bfd/elf-bfd.h" 2
# 1 "../../binutils-2.13.1/include/elf/internal.h" 1
# 44 "../../binutils-2.13.1/include/elf/internal.h"
typedef struct elf_internal_ehdr {
  unsigned char e_ident[16];
  bfd_vma e_entry;
  bfd_size_type e_phoff;
  bfd_size_type e_shoff;
  unsigned long e_version;
  unsigned long e_flags;
  unsigned short e_type;
  unsigned short e_machine;
  unsigned int e_ehsize;
  unsigned int e_phentsize;
  unsigned int e_phnum;
  unsigned int e_shentsize;
  unsigned int e_shnum;
  unsigned int e_shstrndx;
} Elf_Internal_Ehdr;
# 68 "../../binutils-2.13.1/include/elf/internal.h"
struct elf_internal_phdr {
  unsigned long p_type;
  unsigned long p_flags;
  bfd_vma p_offset;
  bfd_vma p_vaddr;
  bfd_vma p_paddr;
  bfd_vma p_filesz;
  bfd_vma p_memsz;
  bfd_vma p_align;
};

typedef struct elf_internal_phdr Elf_Internal_Phdr;







typedef struct elf_internal_shdr {
  unsigned int sh_name;
  unsigned int sh_type;
  bfd_vma sh_flags;
  bfd_vma sh_addr;
  bfd_size_type sh_size;
  bfd_size_type sh_entsize;
  unsigned long sh_link;
  unsigned long sh_info;
  file_ptr sh_offset;
  unsigned int sh_addralign;


  asection * bfd_section;
  unsigned char *contents;
} Elf_Internal_Shdr;
# 111 "../../binutils-2.13.1/include/elf/internal.h"
struct elf_internal_sym {
  bfd_vma st_value;
  bfd_vma st_size;
  unsigned long st_name;
  unsigned char st_info;
  unsigned char st_other;
  unsigned int st_shndx;
};

typedef struct elf_internal_sym Elf_Internal_Sym;
# 129 "../../binutils-2.13.1/include/elf/internal.h"
typedef struct elf_internal_note {
  unsigned long namesz;
  unsigned long descsz;
  unsigned long type;
  char * namedata;
  char * descdata;
  bfd_vma descpos;
} Elf_Internal_Note;





typedef struct elf_internal_rel {
  bfd_vma r_offset;

  bfd_vma r_info;
} Elf_Internal_Rel;






typedef struct elf_internal_rela {
  bfd_vma r_offset;
  bfd_vma r_info;
  bfd_vma r_addend;
} Elf_Internal_Rela;
# 166 "../../binutils-2.13.1/include/elf/internal.h"
typedef struct elf_internal_dyn {

  bfd_vma d_tag;
  union {

    bfd_vma d_val;
    bfd_vma d_ptr;
  } d_un;
} Elf_Internal_Dyn;
# 183 "../../binutils-2.13.1/include/elf/internal.h"
typedef struct elf_internal_verdef {
  unsigned short vd_version;
  unsigned short vd_flags;
  unsigned short vd_ndx;
  unsigned short vd_cnt;
  unsigned long vd_hash;
  unsigned long vd_aux;
  unsigned long vd_next;



  bfd *vd_bfd;
  const char *vd_nodename;
  struct elf_internal_verdef *vd_nextdef;
  struct elf_internal_verdaux *vd_auxptr;
  unsigned int vd_exp_refno;
} Elf_Internal_Verdef;



typedef struct elf_internal_verdaux {
  unsigned long vda_name;
  unsigned long vda_next;



  const char *vda_nodename;
  struct elf_internal_verdaux *vda_nextptr;
} Elf_Internal_Verdaux;



typedef struct elf_internal_verneed {
  unsigned short vn_version;
  unsigned short vn_cnt;
  unsigned long vn_file;
  unsigned long vn_aux;
  unsigned long vn_next;



  bfd *vn_bfd;
  const char *vn_filename;
  struct elf_internal_vernaux *vn_auxptr;
  struct elf_internal_verneed *vn_nextref;
} Elf_Internal_Verneed;



typedef struct elf_internal_vernaux {
  unsigned long vna_hash;
  unsigned short vna_flags;
  unsigned short vna_other;
  unsigned long vna_name;
  unsigned long vna_next;



  const char *vna_nodename;
  struct elf_internal_vernaux *vna_nextptr;
} Elf_Internal_Vernaux;




typedef struct elf_internal_versym {
  unsigned short vs_vers;
} Elf_Internal_Versym;


typedef struct
{
  unsigned short int si_boundto;
  unsigned short int si_flags;
} Elf_Internal_Syminfo;
# 287 "../../binutils-2.13.1/include/elf/internal.h"
struct elf_segment_map
{

  struct elf_segment_map *next;

  unsigned long p_type;

  unsigned long p_flags;

  bfd_vma p_paddr;


  unsigned int p_flags_valid : 1;


  unsigned int p_paddr_valid : 1;

  unsigned int includes_filehdr : 1;

  unsigned int includes_phdrs : 1;

  unsigned int count;

  asection *sections[1];
};
# 27 "../../binutils-2.13.1/bfd/elf-bfd.h" 2
# 1 "../../binutils-2.13.1/include/elf/external.h" 1
# 40 "../../binutils-2.13.1/include/elf/external.h"
typedef struct {
  unsigned char e_ident[16];
  unsigned char e_type[2];
  unsigned char e_machine[2];
  unsigned char e_version[4];
  unsigned char e_entry[4];
  unsigned char e_phoff[4];
  unsigned char e_shoff[4];
  unsigned char e_flags[4];
  unsigned char e_ehsize[2];
  unsigned char e_phentsize[2];
  unsigned char e_phnum[2];
  unsigned char e_shentsize[2];
  unsigned char e_shnum[2];
  unsigned char e_shstrndx[2];
} Elf32_External_Ehdr;

typedef struct {
  unsigned char e_ident[16];
  unsigned char e_type[2];
  unsigned char e_machine[2];
  unsigned char e_version[4];
  unsigned char e_entry[8];
  unsigned char e_phoff[8];
  unsigned char e_shoff[8];
  unsigned char e_flags[4];
  unsigned char e_ehsize[2];
  unsigned char e_phentsize[2];
  unsigned char e_phnum[2];
  unsigned char e_shentsize[2];
  unsigned char e_shnum[2];
  unsigned char e_shstrndx[2];
} Elf64_External_Ehdr;



typedef struct {
  unsigned char p_type[4];
  unsigned char p_offset[4];
  unsigned char p_vaddr[4];
  unsigned char p_paddr[4];
  unsigned char p_filesz[4];
  unsigned char p_memsz[4];
  unsigned char p_flags[4];
  unsigned char p_align[4];
} Elf32_External_Phdr;

typedef struct {
  unsigned char p_type[4];
  unsigned char p_flags[4];
  unsigned char p_offset[8];
  unsigned char p_vaddr[8];
  unsigned char p_paddr[8];
  unsigned char p_filesz[8];
  unsigned char p_memsz[8];
  unsigned char p_align[8];
} Elf64_External_Phdr;



typedef struct {
  unsigned char sh_name[4];
  unsigned char sh_type[4];
  unsigned char sh_flags[4];
  unsigned char sh_addr[4];
  unsigned char sh_offset[4];
  unsigned char sh_size[4];
  unsigned char sh_link[4];
  unsigned char sh_info[4];
  unsigned char sh_addralign[4];
  unsigned char sh_entsize[4];
} Elf32_External_Shdr;

typedef struct {
  unsigned char sh_name[4];
  unsigned char sh_type[4];
  unsigned char sh_flags[8];
  unsigned char sh_addr[8];
  unsigned char sh_offset[8];
  unsigned char sh_size[8];
  unsigned char sh_link[4];
  unsigned char sh_info[4];
  unsigned char sh_addralign[8];
  unsigned char sh_entsize[8];
} Elf64_External_Shdr;



typedef struct {
  unsigned char st_name[4];
  unsigned char st_value[4];
  unsigned char st_size[4];
  unsigned char st_info[1];
  unsigned char st_other[1];
  unsigned char st_shndx[2];
} Elf32_External_Sym;

typedef struct {
  unsigned char st_name[4];
  unsigned char st_info[1];
  unsigned char st_other[1];
  unsigned char st_shndx[2];
  unsigned char st_value[8];
  unsigned char st_size[8];
} Elf64_External_Sym;

typedef struct {
  unsigned char est_shndx[4];
} Elf_External_Sym_Shndx;



typedef struct {
  unsigned char namesz[4];
  unsigned char descsz[4];
  unsigned char type[4];
  char name[1];
} Elf_External_Note;


typedef struct {
  unsigned char r_offset[4];
  unsigned char r_info[4];
} Elf32_External_Rel;

typedef struct {
  unsigned char r_offset[4];
  unsigned char r_info[4];
  unsigned char r_addend[4];
} Elf32_External_Rela;

typedef struct {
  unsigned char r_offset[8];
  unsigned char r_info[8];
} Elf64_External_Rel;

typedef struct {
  unsigned char r_offset[8];
  unsigned char r_info[8];
  unsigned char r_addend[8];
} Elf64_External_Rela;



typedef struct {
  unsigned char d_tag[4];
  union {
    unsigned char d_val[4];
    unsigned char d_ptr[4];
  } d_un;
} Elf32_External_Dyn;

typedef struct {
  unsigned char d_tag[8];
  union {
    unsigned char d_val[8];
    unsigned char d_ptr[8];
  } d_un;
} Elf64_External_Dyn;







typedef struct {
  unsigned char vd_version[2];
  unsigned char vd_flags[2];
  unsigned char vd_ndx[2];
  unsigned char vd_cnt[2];
  unsigned char vd_hash[4];
  unsigned char vd_aux[4];
  unsigned char vd_next[4];
} Elf_External_Verdef;



typedef struct {
  unsigned char vda_name[4];
  unsigned char vda_next[4];
} Elf_External_Verdaux;



typedef struct {
  unsigned char vn_version[2];
  unsigned char vn_cnt[2];
  unsigned char vn_file[4];
  unsigned char vn_aux[4];
  unsigned char vn_next[4];
} Elf_External_Verneed;



typedef struct {
  unsigned char vna_hash[4];
  unsigned char vna_flags[2];
  unsigned char vna_other[2];
  unsigned char vna_name[4];
  unsigned char vna_next[4];
} Elf_External_Vernaux;




typedef struct {
  unsigned char vs_vers[2];
}

  __attribute__ ((packed))

  Elf_External_Versym;


typedef struct
{
  unsigned char si_boundto[2];
  unsigned char si_flags[2];
} Elf_External_Syminfo;
# 28 "../../binutils-2.13.1/bfd/elf-bfd.h" 2
# 1 "../../binutils-2.13.1/include/bfdlink.h" 1
# 26 "../../binutils-2.13.1/include/bfdlink.h"
enum bfd_link_strip
{
  strip_none,
  strip_debugger,
  strip_some,
  strip_all
};



enum bfd_link_discard
{
  discard_sec_merge,

  discard_none,
  discard_l,
  discard_all
};




enum bfd_link_hash_table_type
  {
    bfd_link_generic_hash_table,
    bfd_link_elf_hash_table
  };




enum bfd_link_hash_type
{
  bfd_link_hash_new,
  bfd_link_hash_undefined,
  bfd_link_hash_undefweak,
  bfd_link_hash_defined,
  bfd_link_hash_defweak,
  bfd_link_hash_common,
  bfd_link_hash_indirect,
  bfd_link_hash_warning
};




struct bfd_link_hash_entry
{

  struct bfd_hash_entry root;

  enum bfd_link_hash_type type;
# 97 "../../binutils-2.13.1/include/bfdlink.h"
  struct bfd_link_hash_entry *next;

  union
    {


      struct
        {
          bfd *abfd;
        } undef;

      struct
        {
          bfd_vma value;
          asection *section;
        } def;

      struct
        {
          struct bfd_link_hash_entry *link;
          const char *warning;
        } i;

      struct
        {
# 131 "../../binutils-2.13.1/include/bfdlink.h"
          bfd_size_type size;
          struct bfd_link_hash_common_entry
            {
              unsigned int alignment_power;
              asection *section;
            } *p;
        } c;
    } u;
};




struct bfd_link_hash_table
{

  struct bfd_hash_table table;




  const bfd_target *creator;


  struct bfd_link_hash_entry *undefs;

  struct bfd_link_hash_entry *undefs_tail;

  enum bfd_link_hash_table_type type;
};




extern struct bfd_link_hash_entry *bfd_link_hash_lookup
  (struct bfd_link_hash_table *, const char *, boolean create, boolean copy, boolean follow);






extern struct bfd_link_hash_entry *bfd_wrapped_link_hash_lookup
  (bfd *, struct bfd_link_info *, const char *, boolean, boolean, boolean);



extern void bfd_link_hash_traverse
  (struct bfd_link_hash_table *, boolean (*) (struct bfd_link_hash_entry *, void *), void *);




extern void bfd_link_add_undef
  (struct bfd_link_hash_table *, struct bfd_link_hash_entry *);

struct bfd_sym_chain
{
  struct bfd_sym_chain *next;
  const char *name;
};




struct bfd_link_info
{

  const struct bfd_link_callbacks *callbacks;


  boolean relocateable;



  boolean emitrelocations;




  boolean task_link;


  boolean shared;


  boolean symbolic;



  boolean export_dynamic;


  boolean static_link;





  boolean traditional_format;



  boolean optimize;



  boolean no_undefined;
# 252 "../../binutils-2.13.1/include/bfdlink.h"
  boolean allow_shlib_undefined;


  boolean allow_multiple_definition;


  boolean allow_undefined_version;


  enum bfd_link_strip strip;


  enum bfd_link_discard discard;



  boolean keep_memory;



  bfd *input_bfds;






  asection *create_object_symbols_section;



  struct bfd_sym_chain *gc_sym_list;


  struct bfd_link_hash_table *hash;



  struct bfd_hash_table *keep_hash;



  boolean notice_all;




  struct bfd_hash_table *notice_hash;



  struct bfd_hash_table *wrap_hash;


  void * base_file;




  int mpc860c0;



  const char *init_function;



  const char *fini_function;


  boolean new_dtags;


  bfd_vma flags;


  bfd_vma flags_1;




  int pei386_auto_import;



  boolean combreloc;



  boolean nocopyreloc;



  boolean eh_frame_hdr;


  unsigned int spare_dynamic_tags;
};
# 358 "../../binutils-2.13.1/include/bfdlink.h"
struct bfd_link_callbacks
{




  boolean (*add_archive_element) (struct bfd_link_info *, bfd *abfd, const char *name);
# 373 "../../binutils-2.13.1/include/bfdlink.h"
  boolean (*multiple_definition) (struct bfd_link_info *, const char *name, bfd *obfd, asection *osec, bfd_vma oval, bfd *nbfd, asection *nsec, bfd_vma nval);
# 392 "../../binutils-2.13.1/include/bfdlink.h"
  boolean (*multiple_common) (struct bfd_link_info *, const char *name, bfd *obfd, enum bfd_link_hash_type otype, bfd_vma osize, bfd *nbfd, enum bfd_link_hash_type ntype, bfd_vma nsize);
# 406 "../../binutils-2.13.1/include/bfdlink.h"
  boolean (*add_to_set) (struct bfd_link_info *, struct bfd_link_hash_entry *entry, bfd_reloc_code_real_type reloc, bfd *abfd, asection *sec, bfd_vma value);
# 416 "../../binutils-2.13.1/include/bfdlink.h"
  boolean (*constructor) (struct bfd_link_info *, boolean constructor, const char *name, bfd *abfd, asection *sec, bfd_vma value);
# 427 "../../binutils-2.13.1/include/bfdlink.h"
  boolean (*warning) (struct bfd_link_info *, const char *warning, const char *symbol, bfd *abfd, asection *section, bfd_vma address);
# 436 "../../binutils-2.13.1/include/bfdlink.h"
  boolean (*undefined_symbol) (struct bfd_link_info *, const char *name, bfd *abfd, asection *section, bfd_vma address, boolean fatal);
# 448 "../../binutils-2.13.1/include/bfdlink.h"
  boolean (*reloc_overflow) (struct bfd_link_info *, const char *name, const char *reloc_name, bfd_vma addend, bfd *abfd, asection *section, bfd_vma address);
# 460 "../../binutils-2.13.1/include/bfdlink.h"
  boolean (*reloc_dangerous) (struct bfd_link_info *, const char *message, bfd *abfd, asection *section, bfd_vma address);
# 470 "../../binutils-2.13.1/include/bfdlink.h"
  boolean (*unattached_reloc) (struct bfd_link_info *, const char *name, bfd *abfd, asection *section, bfd_vma address);







  boolean (*notice) (struct bfd_link_info *, const char *name, bfd *abfd, asection *section, bfd_vma address);

};






enum bfd_link_order_type
{
  bfd_undefined_link_order,
  bfd_indirect_link_order,
  bfd_data_link_order,
  bfd_section_reloc_link_order,
  bfd_symbol_reloc_link_order
};




struct bfd_link_order
{

  struct bfd_link_order *next;

  enum bfd_link_order_type type;

  bfd_vma offset;

  bfd_size_type size;

  union
    {
      struct
        {






          asection *section;
        } indirect;
      struct
        {




          unsigned int size;

          bfd_byte *contents;
        } data;
      struct
        {



          struct bfd_link_order_reloc *p;
        } reloc;
    } u;
};
# 554 "../../binutils-2.13.1/include/bfdlink.h"
struct bfd_link_order_reloc
{

  bfd_reloc_code_real_type reloc;

  union
    {



      asection *section;


      const char *name;
    } u;






  bfd_vma addend;
};


extern struct bfd_link_order *bfd_new_link_order (bfd *, asection *);
# 588 "../../binutils-2.13.1/include/bfdlink.h"
struct bfd_elf_version_expr
{

  struct bfd_elf_version_expr *next;

  const char *pattern;

  int (*match) (struct bfd_elf_version_expr *, const char *);

  unsigned int symver: 1;

  unsigned int script : 1;
};



struct bfd_elf_version_deps
{

  struct bfd_elf_version_deps *next;

  struct bfd_elf_version_tree *version_needed;
};



struct bfd_elf_version_tree
{

  struct bfd_elf_version_tree *next;

  const char *name;

  unsigned int vernum;

  struct bfd_elf_version_expr *globals;

  struct bfd_elf_version_expr *locals;

  struct bfd_elf_version_deps *deps;

  unsigned int name_indx;

  int used;
};
# 29 "../../binutils-2.13.1/bfd/elf-bfd.h" 2
# 60 "../../binutils-2.13.1/bfd/elf-bfd.h"
typedef struct
{

  asymbol symbol;

  Elf_Internal_Sym internal_elf_sym;

  union
    {
      unsigned int hppa_arg_reloc;
      void * mips_extr;
      void * any;
    }
  tc_data;




  unsigned short version;

} elf_symbol_type;

struct elf_strtab_hash;



struct elf_link_hash_entry
{
  struct bfd_link_hash_entry root;



  long indx;
# 106 "../../binutils-2.13.1/bfd/elf-bfd.h"
  long dynindx;


  unsigned long dynstr_index;


  unsigned long elf_hash_value;




  struct elf_link_hash_entry *weakdef;




  struct elf_linker_section_pointers *linker_section_pointer;


  union
  {



    Elf_Internal_Verdef *verdef;



    struct bfd_elf_version_tree *vertree;
  } verinfo;





  size_t vtable_entries_size;
  boolean *vtable_entries_used;


  struct elf_link_hash_entry *vtable_parent;
# 154 "../../binutils-2.13.1/bfd/elf-bfd.h"
  union
    {
      bfd_signed_vma refcount;
      bfd_vma offset;
    } got;


  union
    {
      bfd_signed_vma refcount;
      bfd_vma offset;
    } plt;


  bfd_size_type size;


  char type;


  unsigned char other;


  unsigned short elf_link_hash_flags;
# 205 "../../binutils-2.13.1/bfd/elf-bfd.h"
};



struct elf_link_local_dynamic_entry
{
  struct elf_link_local_dynamic_entry *next;


  bfd *input_bfd;


  long input_indx;


  long dynindx;


  Elf_Internal_Sym isym;
};

struct elf_link_loaded_list
{
  struct elf_link_loaded_list *next;
  bfd *abfd;
};

enum elf_link_info_type
{
  ELF_INFO_TYPE_NONE,
  ELF_INFO_TYPE_STABS,
  ELF_INFO_TYPE_MERGE,
  ELF_INFO_TYPE_EH_FRAME,
  ELF_INFO_TYPE_EH_FRAME_HDR,
  ELF_INFO_TYPE_JUST_SYMS,
  ELF_INFO_TYPE_LAST
};


struct elf_link_tls_segment
{
  bfd_vma start;
  bfd_size_type size;
  unsigned int align;
};



struct elf_link_hash_table
{
  struct bfd_link_hash_table root;



  boolean dynamic_sections_created;




  bfd *dynobj;





  bfd_signed_vma init_refcount;



  bfd_size_type dynsymcount;



  struct elf_strtab_hash *dynstr;



  bfd_size_type bucketcount;



  struct bfd_link_needed_list *needed;


  struct elf_link_hash_entry *hgot;


  void * stab_info;


  void * merge_info;


  struct elf_link_local_dynamic_entry *dynlocal;



  struct bfd_link_needed_list *runpath;


  struct elf_link_tls_segment *tls_segment;


  struct elf_link_loaded_list *loaded;
};
# 337 "../../binutils-2.13.1/bfd/elf-bfd.h"
struct sym_sec_cache
{
  bfd *abfd;
  unsigned long indx[32];
  asection *sec[32];
};



struct elf_size_info {
  unsigned char sizeof_ehdr, sizeof_phdr, sizeof_shdr;
  unsigned char sizeof_rel, sizeof_rela, sizeof_sym, sizeof_dyn, sizeof_note;


  unsigned char sizeof_hash_entry;



  unsigned char int_rels_per_ext_rel;

  unsigned char arch_size, file_align;
  unsigned char elfclass, ev_current;
  int (*write_out_phdrs)
    (bfd *, const Elf_Internal_Phdr *, unsigned int);
  boolean (*write_shdrs_and_ehdr)
    (bfd *);
  void (*write_relocs)
    (bfd *, asection *, void *);
  void (*swap_symbol_in)
    (bfd *, const void *, const void *, Elf_Internal_Sym *);
  void (*swap_symbol_out)
    (bfd *, const Elf_Internal_Sym *, void *, void *);
  boolean (*slurp_reloc_table)
    (bfd *, asection *, asymbol **, boolean);
  long (*slurp_symbol_table)
    (bfd *, asymbol **, boolean);
  void (*swap_dyn_in)
    (bfd *, const void *, Elf_Internal_Dyn *);
  void (*swap_dyn_out)
    (bfd *, const Elf_Internal_Dyn *, void *);





  void (*swap_reloc_in)
    (bfd *, const bfd_byte *, Elf_Internal_Rel *);



  void (*swap_reloc_out)
    (bfd *, const Elf_Internal_Rel *, bfd_byte *);





  void (*swap_reloca_in)
    (bfd *, const bfd_byte *, Elf_Internal_Rela *);



  void (*swap_reloca_out)
    (bfd *, const Elf_Internal_Rela *, bfd_byte *);

};







enum elf_reloc_type_class {
  reloc_class_normal,
  reloc_class_relative,
  reloc_class_plt,
  reloc_class_copy
};

struct elf_reloc_cookie
{
  Elf_Internal_Rela *rels, *rel, *relend;
  Elf_Internal_Sym *locsyms;
  bfd *abfd;
  size_t locsymcount;
  size_t extsymoff;
  struct elf_link_hash_entry **sym_hashes;
  boolean bad_symtab;
};



typedef enum {
  ict_none,
  ict_irix5,
  ict_irix6
} irix_compat_t;

struct elf_backend_data
{

  enum bfd_architecture arch;


  int elf_machine_code;


  bfd_vma maxpagesize;



  void (*elf_info_to_howto)
    (bfd *, arelent *, Elf_Internal_Rela *);



  void (*elf_info_to_howto_rel)
    (bfd *, arelent *, Elf_Internal_Rel *);






  boolean (*elf_backend_sym_is_global)
    (bfd *, asymbol *);
# 474 "../../binutils-2.13.1/bfd/elf-bfd.h"
  boolean (*elf_backend_object_p)
    (bfd *);




  void (*elf_backend_symbol_processing)
    (bfd *, asymbol *);



  boolean (*elf_backend_symbol_table_processing)
    (bfd *, elf_symbol_type *, unsigned int);



  int (*elf_backend_get_symbol_type)
    ( Elf_Internal_Sym *, int);





  boolean (*elf_backend_section_processing)
    (bfd *, Elf_Internal_Shdr *);



  boolean (*elf_backend_section_from_shdr)
    (bfd *, Elf_Internal_Shdr *, const char *);



  boolean (*elf_backend_section_flags)
    (flagword *, Elf_Internal_Shdr *);



  boolean (*elf_backend_section_from_phdr)
    (bfd *, Elf_Internal_Phdr *, int);




  boolean (*elf_backend_fake_sections)
    (bfd *, Elf_Internal_Shdr *, asection *);





  boolean (*elf_backend_section_from_bfd_section)
    (bfd *, asection *, int *retval);
# 536 "../../binutils-2.13.1/bfd/elf-bfd.h"
  boolean (*elf_add_symbol_hook)
    (bfd *abfd, struct bfd_link_info *info, const Elf_Internal_Sym *, const char **name, flagword *flags, asection **sec, bfd_vma *value);





  boolean (*elf_backend_link_output_symbol_hook)
    (bfd *, struct bfd_link_info *info, const char *, Elf_Internal_Sym *, asection *);
# 555 "../../binutils-2.13.1/bfd/elf-bfd.h"
  boolean (*elf_backend_create_dynamic_sections)
    (bfd *abfd, struct bfd_link_info *info);
# 568 "../../binutils-2.13.1/bfd/elf-bfd.h"
  boolean (*check_relocs)
    (bfd *abfd, struct bfd_link_info *info, asection *o, const Elf_Internal_Rela *relocs);
# 584 "../../binutils-2.13.1/bfd/elf-bfd.h"
  boolean (*elf_backend_adjust_dynamic_symbol)
    (struct bfd_link_info *info, struct elf_link_hash_entry *h);





  boolean (*elf_backend_always_size_sections)
    (bfd *output_bfd, struct bfd_link_info *info);
# 604 "../../binutils-2.13.1/bfd/elf-bfd.h"
  boolean (*elf_backend_size_dynamic_sections)
    (bfd *output_bfd, struct bfd_link_info *info);
# 635 "../../binutils-2.13.1/bfd/elf-bfd.h"
  boolean (*elf_backend_relocate_section)
    (bfd *output_bfd, struct bfd_link_info *info, bfd *input_bfd, asection *input_section, bfd_byte *contents, Elf_Internal_Rela *relocs, Elf_Internal_Sym *local_syms, asection **local_sections);
# 648 "../../binutils-2.13.1/bfd/elf-bfd.h"
  boolean (*elf_backend_finish_dynamic_symbol)
    (bfd *output_bfd, struct bfd_link_info *info, struct elf_link_hash_entry *h, Elf_Internal_Sym *sym);






  boolean (*elf_backend_finish_dynamic_sections)
    (bfd *output_bfd, struct bfd_link_info *info);



  void (*elf_backend_begin_write_processing)
    (bfd *, struct bfd_link_info *);




  void (*elf_backend_final_write_processing)
    (bfd *, boolean linker);




  int (*elf_backend_additional_program_headers)
    (bfd *);



  boolean (*elf_backend_modify_segment_map)
    (bfd *);



  asection * (*gc_mark_hook)
    (asection *sec, struct bfd_link_info *, Elf_Internal_Rela *, struct elf_link_hash_entry *h, Elf_Internal_Sym *);





  boolean (*gc_sweep_hook)
    (bfd *abfd, struct bfd_link_info *info, asection *o, const Elf_Internal_Rela *relocs);





  void (*elf_backend_post_process_headers)
    (bfd *, struct bfd_link_info *);




  const char *(*elf_backend_print_symbol_all)
    (bfd *, void *, asymbol *);





  boolean (*elf_backend_output_arch_syms)
    (bfd *, struct bfd_link_info *, void *, boolean (*) (void *, const char *, Elf_Internal_Sym *, asection *));







  void (*elf_backend_copy_indirect_symbol)
    (struct elf_backend_data *, struct elf_link_hash_entry *, struct elf_link_hash_entry *);




  void (*elf_backend_hide_symbol)
    (struct bfd_link_info *, struct elf_link_hash_entry *, boolean);



  boolean (*elf_backend_emit_relocs)
    (bfd *, asection *, Elf_Internal_Shdr *, Elf_Internal_Rela *);



  unsigned int (*elf_backend_count_relocs)
    (asection *, Elf_Internal_Rela *);



  boolean (*elf_backend_grok_prstatus)
    (bfd *, Elf_Internal_Note *);



  boolean (*elf_backend_grok_psinfo)
    (bfd *, Elf_Internal_Note *);


  void (* elf_backend_sprintf_vma)
    (bfd *, char *, bfd_vma);
  void (* elf_backend_fprintf_vma)
    (bfd *, void *, bfd_vma);


  enum elf_reloc_type_class (*elf_backend_reloc_type_class)
    (const Elf_Internal_Rela *);



  boolean (*elf_backend_discard_info)
    (bfd *, struct elf_reloc_cookie *, struct bfd_link_info *);



  boolean (*elf_backend_ignore_discarded_relocs)
    (asection *);



  boolean (*elf_backend_write_section)
    (bfd *, asection *, bfd_byte *);



  irix_compat_t (*elf_backend_mips_irix_compat)
    (bfd *);

  reloc_howto_type *(*elf_backend_mips_rtype_to_howto)
    (unsigned int, boolean);



  const struct ecoff_debug_swap *elf_backend_ecoff_debug_swap;


  int elf_machine_alt1;
  int elf_machine_alt2;

  const struct elf_size_info *s;



  bfd_vma got_symbol_offset;



  bfd_vma got_header_size;
  bfd_vma plt_header_size;





  unsigned collect : 1;





  unsigned type_change_ok : 1;




  unsigned may_use_rel_p : 1;




  unsigned may_use_rela_p : 1;






  unsigned default_use_rela_p : 1;




  unsigned rela_normal : 1;



  unsigned sign_extend_vma : 1;

  unsigned want_got_plt : 1;
  unsigned plt_readonly : 1;
  unsigned want_plt_sym : 1;
  unsigned plt_not_loaded : 1;
  unsigned plt_alignment : 4;
  unsigned can_gc_sections : 1;
  unsigned can_refcount : 1;
  unsigned want_got_sym : 1;
  unsigned want_dynbss : 1;



  unsigned want_p_paddr_set_to_zero : 1;
};




struct bfd_elf_section_data
{

  Elf_Internal_Shdr this_hdr;



  Elf_Internal_Shdr rel_hdr;



  Elf_Internal_Shdr *rel_hdr2;


  unsigned int rel_count;


  unsigned int rel_count2;



  void * local_dynrel;


  asection *sreloc;



  int this_idx;



  int rel_idx;



  int rel_idx2;



  struct elf_link_hash_entry **rel_hashes;




  Elf_Internal_Rela *relocs;





  long dynindx;


  void * sec_info;


  enum elf_link_info_type sec_info_type;

  union {

    const char *name;


    struct symbol_cache_entry *id;
  } group;



  asection *next_in_group;


  void * tdata;


  unsigned int use_rela_p:1;


  unsigned int linkonce_p:1;
};
# 954 "../../binutils-2.13.1/bfd/elf-bfd.h"
typedef enum elf_linker_section_enum
{
  LINKER_SECTION_UNKNOWN,
  LINKER_SECTION_GOT,
  LINKER_SECTION_PLT,
  LINKER_SECTION_SDATA,
  LINKER_SECTION_SDATA2,
  LINKER_SECTION_MAX
} elf_linker_section_enum_t;



typedef struct elf_linker_section
{
  char *name;
  char *rel_name;
  char *bss_name;
  char *sym_name;
  asection *section;
  asection *bss_section;
  asection *rel_section;
  struct elf_link_hash_entry *sym_hash;
  bfd_vma initial_size;
  bfd_vma sym_offset;
  bfd_vma hole_size;
  bfd_vma hole_offset;
  bfd_vma max_hole_offset;
  elf_linker_section_enum_t which;
  boolean hole_written_p;
  unsigned int alignment;
  flagword flags;
} elf_linker_section_t;




typedef struct elf_linker_section_pointers
{
  struct elf_linker_section_pointers *next;
  bfd_vma offset;
  bfd_vma addend;
  elf_linker_section_enum_t which;
  boolean written_address_p;
} elf_linker_section_pointers_t;




struct elf_obj_tdata
{
  Elf_Internal_Ehdr elf_header[1];
  Elf_Internal_Shdr **elf_sect_ptr;
  Elf_Internal_Phdr *phdr;
  struct elf_segment_map *segment_map;
  struct elf_strtab_hash *strtab_ptr;
  int num_locals;
  int num_globals;
  unsigned int num_elf_sections;
  int num_section_syms;
  asymbol **section_syms;
  Elf_Internal_Shdr symtab_hdr;
  Elf_Internal_Shdr shstrtab_hdr;
  Elf_Internal_Shdr strtab_hdr;
  Elf_Internal_Shdr dynsymtab_hdr;
  Elf_Internal_Shdr dynstrtab_hdr;
  Elf_Internal_Shdr dynversym_hdr;
  Elf_Internal_Shdr dynverref_hdr;
  Elf_Internal_Shdr dynverdef_hdr;
  Elf_Internal_Shdr symtab_shndx_hdr;
  unsigned int symtab_section, shstrtab_section;
  unsigned int strtab_section, dynsymtab_section;
  unsigned int symtab_shndx_section;
  unsigned int dynversym_section, dynverdef_section, dynverref_section;
  file_ptr next_file_pos;






  bfd_vma gp;
  unsigned int gp_size;

  Elf_Internal_Shdr **group_sect_ptr;
  int num_group;


  int core_signal;
  int core_pid;
  int core_lwpid;
  char* core_program;
  char* core_command;



  boolean linker;




  struct elf_link_hash_entry **sym_hashes;
# 1063 "../../binutils-2.13.1/bfd/elf-bfd.h"
  union
    {
      bfd_signed_vma *refcounts;
      bfd_vma *offsets;
    } local_got;



  elf_linker_section_pointers_t **linker_section_pointers;
# 1081 "../../binutils-2.13.1/bfd/elf-bfd.h"
  const char *dt_name;







  const char *dt_soname;






  boolean bad_symtab;


  bfd_size_type program_header_size;


  void * line_info;





  struct mips_elf_find_line *find_line_info;


  struct dwarf1_debug *dwarf1_find_line_info;


  void * dwarf2_find_line_info;




  asection **local_stubs;


  boolean flags_init;



  boolean eh_frame_hdr;


  unsigned int cverdefs;


  unsigned int cverrefs;


  Elf_Internal_Verdef *verdef;


  Elf_Internal_Verneed *verref;


  struct elf_linker_section *linker_section[ (int)LINKER_SECTION_MAX ];



  asymbol *elf_data_symbol;
  asymbol *elf_text_symbol;
  asection *elf_data_section;
  asection *elf_text_section;
};
# 1180 "../../binutils-2.13.1/bfd/elf-bfd.h"
extern void _bfd_elf_swap_verdef_in
  (bfd *, const Elf_External_Verdef *, Elf_Internal_Verdef *);
extern void _bfd_elf_swap_verdef_out
  (bfd *, const Elf_Internal_Verdef *, Elf_External_Verdef *);
extern void _bfd_elf_swap_verdaux_in
  (bfd *, const Elf_External_Verdaux *, Elf_Internal_Verdaux *);
extern void _bfd_elf_swap_verdaux_out
  (bfd *, const Elf_Internal_Verdaux *, Elf_External_Verdaux *);
extern void _bfd_elf_swap_verneed_in
  (bfd *, const Elf_External_Verneed *, Elf_Internal_Verneed *);
extern void _bfd_elf_swap_verneed_out
  (bfd *, const Elf_Internal_Verneed *, Elf_External_Verneed *);
extern void _bfd_elf_swap_vernaux_in
  (bfd *, const Elf_External_Vernaux *, Elf_Internal_Vernaux *);
extern void _bfd_elf_swap_vernaux_out
  (bfd *, const Elf_Internal_Vernaux *, Elf_External_Vernaux *);
extern void _bfd_elf_swap_versym_in
  (bfd *, const Elf_External_Versym *, Elf_Internal_Versym *);
extern void _bfd_elf_swap_versym_out
  (bfd *, const Elf_Internal_Versym *, Elf_External_Versym *);

extern int _bfd_elf_section_from_bfd_section
  (bfd *, asection *);
extern char *bfd_elf_string_from_elf_section
  (bfd *, unsigned, unsigned);
extern char *bfd_elf_get_str_section
  (bfd *, unsigned);
extern Elf_Internal_Sym *bfd_elf_get_elf_syms
  (bfd *, Elf_Internal_Shdr *, size_t, size_t, Elf_Internal_Sym *, void *, Elf_External_Sym_Shndx *);


extern boolean _bfd_elf_copy_private_bfd_data
  (bfd *, bfd *);
extern boolean _bfd_elf_print_private_bfd_data
  (bfd *, void *);
extern void bfd_elf_print_symbol
  (bfd *, void *, asymbol *, bfd_print_symbol_type);
# 1225 "../../binutils-2.13.1/bfd/elf-bfd.h"
extern void _bfd_elf_sprintf_vma
  (bfd *, char *, bfd_vma);
extern void _bfd_elf_fprintf_vma
  (bfd *, void *, bfd_vma);

extern enum elf_reloc_type_class _bfd_elf_reloc_type_class
  (const Elf_Internal_Rela *);
extern bfd_vma _bfd_elf_rela_local_sym
  (bfd *, Elf_Internal_Sym *, asection *, Elf_Internal_Rela *);
extern bfd_vma _bfd_elf_rel_local_sym
  (bfd *, Elf_Internal_Sym *, asection **, bfd_vma);
extern bfd_vma _bfd_elf_section_offset
  (bfd *, struct bfd_link_info *, asection *, bfd_vma);

extern unsigned long bfd_elf_hash
  (const char *);

extern bfd_reloc_status_type bfd_elf_generic_reloc
  (bfd *, arelent *, asymbol *, void *, asection *, bfd *, char **);
extern boolean bfd_elf_mkobject
  (bfd *);
extern boolean bfd_elf_mkcorefile
  (bfd *);
extern Elf_Internal_Shdr *bfd_elf_find_section
  (bfd *, char *);
extern boolean _bfd_elf_make_section_from_shdr
  (bfd *, Elf_Internal_Shdr *, const char *);
extern boolean _bfd_elf_make_section_from_phdr
  (bfd *, Elf_Internal_Phdr *, int, const char *);
extern struct bfd_hash_entry *_bfd_elf_link_hash_newfunc
  (struct bfd_hash_entry *, struct bfd_hash_table *, const char *);
extern struct bfd_link_hash_table *_bfd_elf_link_hash_table_create
  (bfd *);
extern void _bfd_elf_link_hash_copy_indirect
  (struct elf_backend_data *, struct elf_link_hash_entry *, struct elf_link_hash_entry *);

extern void _bfd_elf_link_hash_hide_symbol
  (struct bfd_link_info *, struct elf_link_hash_entry *, boolean);
extern boolean _bfd_elf_link_hash_table_init
  (struct elf_link_hash_table *, bfd *, struct bfd_hash_entry *(*) (struct bfd_hash_entry *, struct bfd_hash_table *, const char *));



extern boolean _bfd_elf_slurp_version_tables
  (bfd *);
extern boolean _bfd_elf_merge_sections
  (bfd *, struct bfd_link_info *);
extern boolean bfd_elf_discard_group
  (bfd *, struct sec *);
extern void bfd_elf_set_group_contents
  (bfd *, asection *, void *);
extern void _bfd_elf_link_just_syms
  (asection *, struct bfd_link_info *);
extern boolean _bfd_elf_copy_private_symbol_data
  (bfd *, asymbol *, bfd *, asymbol *);
extern boolean _bfd_elf_copy_private_section_data
  (bfd *, asection *, bfd *, asection *);
extern boolean _bfd_elf_write_object_contents
  (bfd *);
extern boolean _bfd_elf_write_corefile_contents
  (bfd *);
extern boolean _bfd_elf_set_section_contents
  (bfd *, sec_ptr, void *, file_ptr, bfd_size_type);
extern long _bfd_elf_get_symtab_upper_bound
  (bfd *);
extern long _bfd_elf_get_symtab
  (bfd *, asymbol **);
extern long _bfd_elf_get_dynamic_symtab_upper_bound
  (bfd *);
extern long _bfd_elf_canonicalize_dynamic_symtab
  (bfd *, asymbol **);
extern long _bfd_elf_get_reloc_upper_bound
  (bfd *, sec_ptr);
extern long _bfd_elf_canonicalize_reloc
  (bfd *, sec_ptr, arelent **, asymbol **);
extern long _bfd_elf_get_dynamic_reloc_upper_bound
  (bfd *);
extern long _bfd_elf_canonicalize_dynamic_reloc
  (bfd *, arelent **, asymbol **);
extern asymbol *_bfd_elf_make_empty_symbol
  (bfd *);
extern void _bfd_elf_get_symbol_info
  (bfd *, asymbol *, symbol_info *);
extern boolean _bfd_elf_is_local_label_name
  (bfd *, const char *);
extern alent *_bfd_elf_get_lineno
  (bfd *, asymbol *);
extern boolean _bfd_elf_set_arch_mach
  (bfd *, enum bfd_architecture, unsigned long);
extern boolean _bfd_elf_find_nearest_line
  (bfd *, asection *, asymbol **, bfd_vma, const char **, const char **, unsigned int *);



extern int _bfd_elf_sizeof_headers
  (bfd *, boolean);
extern boolean _bfd_elf_new_section_hook
  (bfd *, asection *);
extern boolean _bfd_elf_init_reloc_shdr
  (bfd *, Elf_Internal_Shdr *, asection *, boolean);


extern void _bfd_elf_no_info_to_howto
  (bfd *, arelent *, Elf_Internal_Rela *);

extern boolean bfd_section_from_shdr
  (bfd *, unsigned int shindex);
extern boolean bfd_section_from_phdr
  (bfd *, Elf_Internal_Phdr *, int);

extern int _bfd_elf_symbol_from_bfd_symbol
  (bfd *, asymbol **);

extern asection *bfd_section_from_r_symndx
  (bfd *, struct sym_sec_cache *, asection *, unsigned long);
extern asection *bfd_section_from_elf_index
  (bfd *, unsigned int);
extern boolean _bfd_elf_create_dynamic_sections
  (bfd *, struct bfd_link_info *);
extern struct bfd_strtab_hash *_bfd_elf_stringtab_init
  (void);

extern struct elf_strtab_hash * _bfd_elf_strtab_init
  (void);
extern void _bfd_elf_strtab_free
  (struct elf_strtab_hash *);
extern bfd_size_type _bfd_elf_strtab_add
  (struct elf_strtab_hash *, const char *, boolean);
extern void _bfd_elf_strtab_addref
  (struct elf_strtab_hash *, bfd_size_type);
extern void _bfd_elf_strtab_delref
  (struct elf_strtab_hash *, bfd_size_type);
extern void _bfd_elf_strtab_clear_all_refs
  (struct elf_strtab_hash *);
extern bfd_size_type _bfd_elf_strtab_size
  (struct elf_strtab_hash *);
extern bfd_size_type _bfd_elf_strtab_offset
  (struct elf_strtab_hash *, bfd_size_type);
extern boolean _bfd_elf_strtab_emit
  (bfd *, struct elf_strtab_hash *);
extern void _bfd_elf_strtab_finalize
  (struct elf_strtab_hash *);

extern boolean _bfd_elf_discard_section_eh_frame
  (bfd *, struct bfd_link_info *, asection *, asection *, boolean (*) (bfd_vma, void *), struct elf_reloc_cookie *);

extern boolean _bfd_elf_discard_section_eh_frame_hdr
  (bfd *, struct bfd_link_info *, asection *);
extern bfd_vma _bfd_elf_eh_frame_section_offset
  (bfd *, asection *, bfd_vma);
extern boolean _bfd_elf_write_section_eh_frame
  (bfd *, asection *, asection *, bfd_byte *);
extern boolean _bfd_elf_write_section_eh_frame_hdr
  (bfd *, asection *);
extern boolean _bfd_elf_maybe_strip_eh_frame_hdr
  (struct bfd_link_info *);

extern boolean _bfd_elf_link_record_dynamic_symbol
  (struct bfd_link_info *, struct elf_link_hash_entry *);
extern long _bfd_elf_link_lookup_local_dynindx
  (struct bfd_link_info *, bfd *, long);
extern boolean _bfd_elf_compute_section_file_positions
  (bfd *, struct bfd_link_info *);
extern void _bfd_elf_assign_file_positions_for_relocs
  (bfd *);
extern file_ptr _bfd_elf_assign_file_position_for_section
  (Elf_Internal_Shdr *, file_ptr, boolean);

extern boolean _bfd_elf_validate_reloc
  (bfd *, arelent *);

extern boolean _bfd_elf_create_dynamic_sections
  (bfd *, struct bfd_link_info *);
extern boolean _bfd_elf_create_got_section
  (bfd *, struct bfd_link_info *);
extern unsigned long _bfd_elf_link_renumber_dynsyms
  (bfd *, struct bfd_link_info *);

extern boolean _bfd_elfcore_make_pseudosection
  (bfd *, char *, size_t, ufile_ptr);
extern char *_bfd_elfcore_strndup
  (bfd *, char *, size_t);

extern elf_linker_section_t *_bfd_elf_create_linker_section
  (bfd *, struct bfd_link_info *, enum elf_linker_section_enum, elf_linker_section_t *);


extern elf_linker_section_pointers_t *_bfd_elf_find_pointer_linker_section
  (elf_linker_section_pointers_t *, bfd_vma, elf_linker_section_enum_t);


extern boolean bfd_elf32_create_pointer_linker_section
  (bfd *, struct bfd_link_info *, elf_linker_section_t *, struct elf_link_hash_entry *, const Elf_Internal_Rela *);


extern bfd_vma bfd_elf32_finish_pointer_linker_section
  (bfd *, bfd *, struct bfd_link_info *, elf_linker_section_t *, struct elf_link_hash_entry *, bfd_vma, const Elf_Internal_Rela *, int);



extern boolean bfd_elf64_create_pointer_linker_section
  (bfd *, struct bfd_link_info *, elf_linker_section_t *, struct elf_link_hash_entry *, const Elf_Internal_Rela *);


extern bfd_vma bfd_elf64_finish_pointer_linker_section
  (bfd *, bfd *, struct bfd_link_info *, elf_linker_section_t *, struct elf_link_hash_entry *, bfd_vma, const Elf_Internal_Rela *, int);



extern boolean _bfd_elf_make_linker_section_rela
  (bfd *, elf_linker_section_t *, int);

extern const bfd_target *bfd_elf32_object_p
  (bfd *);
extern const bfd_target *bfd_elf32_core_file_p
  (bfd *);
extern char *bfd_elf32_core_file_failing_command
  (bfd *);
extern int bfd_elf32_core_file_failing_signal
  (bfd *);
extern boolean bfd_elf32_core_file_matches_executable_p
  (bfd *, bfd *);

extern boolean bfd_elf32_bfd_link_add_symbols
  (bfd *, struct bfd_link_info *);
extern boolean bfd_elf32_bfd_final_link
  (bfd *, struct bfd_link_info *);

extern void bfd_elf32_swap_symbol_in
  (bfd *, const void *, const void *, Elf_Internal_Sym *);
extern void bfd_elf32_swap_symbol_out
  (bfd *, const Elf_Internal_Sym *, void *, void *);
extern void bfd_elf32_swap_reloc_in
  (bfd *, const Elf32_External_Rel *, Elf_Internal_Rel *);
extern void bfd_elf32_swap_reloc_out
  (bfd *, const Elf_Internal_Rel *, Elf32_External_Rel *);
extern void bfd_elf32_swap_reloca_in
  (bfd *, const Elf32_External_Rela *, Elf_Internal_Rela *);
extern void bfd_elf32_swap_reloca_out
  (bfd *, const Elf_Internal_Rela *, Elf32_External_Rela *);
extern void bfd_elf32_swap_phdr_in
  (bfd *, const Elf32_External_Phdr *, Elf_Internal_Phdr *);
extern void bfd_elf32_swap_phdr_out
  (bfd *, const Elf_Internal_Phdr *, Elf32_External_Phdr *);
extern void bfd_elf32_swap_dyn_in
  (bfd *, const void *, Elf_Internal_Dyn *);
extern void bfd_elf32_swap_dyn_out
  (bfd *, const Elf_Internal_Dyn *, void *);
extern long bfd_elf32_slurp_symbol_table
  (bfd *, asymbol **, boolean);
extern boolean bfd_elf32_write_shdrs_and_ehdr
  (bfd *);
extern int bfd_elf32_write_out_phdrs
  (bfd *, const Elf_Internal_Phdr *, unsigned int);
extern void bfd_elf32_write_relocs
  (bfd *, asection *, void *);
extern boolean bfd_elf32_slurp_reloc_table
  (bfd *, asection *, asymbol **, boolean);
extern boolean bfd_elf32_add_dynamic_entry
  (struct bfd_link_info *, bfd_vma, bfd_vma);
extern boolean bfd_elf32_link_create_dynamic_sections
  (bfd *, struct bfd_link_info *);
extern Elf_Internal_Rela *_bfd_elf32_link_read_relocs
  (bfd *, asection *, void *, Elf_Internal_Rela *, boolean);

extern const bfd_target *bfd_elf64_object_p
  (bfd *);
extern const bfd_target *bfd_elf64_core_file_p
  (bfd *);
extern char *bfd_elf64_core_file_failing_command
  (bfd *);
extern int bfd_elf64_core_file_failing_signal
  (bfd *);
extern boolean bfd_elf64_core_file_matches_executable_p
  (bfd *, bfd *);
extern boolean bfd_elf64_bfd_link_add_symbols
  (bfd *, struct bfd_link_info *);
extern boolean bfd_elf64_bfd_final_link
  (bfd *, struct bfd_link_info *);

extern void bfd_elf64_swap_symbol_in
  (bfd *, const void *, const void *, Elf_Internal_Sym *);
extern void bfd_elf64_swap_symbol_out
  (bfd *, const Elf_Internal_Sym *, void *, void *);
extern void bfd_elf64_swap_reloc_in
  (bfd *, const Elf64_External_Rel *, Elf_Internal_Rel *);
extern void bfd_elf64_swap_reloc_out
  (bfd *, const Elf_Internal_Rel *, Elf64_External_Rel *);
extern void bfd_elf64_swap_reloca_in
  (bfd *, const Elf64_External_Rela *, Elf_Internal_Rela *);
extern void bfd_elf64_swap_reloca_out
  (bfd *, const Elf_Internal_Rela *, Elf64_External_Rela *);
extern void bfd_elf64_swap_phdr_in
  (bfd *, const Elf64_External_Phdr *, Elf_Internal_Phdr *);
extern void bfd_elf64_swap_phdr_out
  (bfd *, const Elf_Internal_Phdr *, Elf64_External_Phdr *);
extern void bfd_elf64_swap_dyn_in
  (bfd *, const void *, Elf_Internal_Dyn *);
extern void bfd_elf64_swap_dyn_out
  (bfd *, const Elf_Internal_Dyn *, void *);
extern long bfd_elf64_slurp_symbol_table
  (bfd *, asymbol **, boolean);
extern boolean bfd_elf64_write_shdrs_and_ehdr
  (bfd *);
extern int bfd_elf64_write_out_phdrs
  (bfd *, const Elf_Internal_Phdr *, unsigned int);
extern void bfd_elf64_write_relocs
  (bfd *, asection *, void *);
extern boolean bfd_elf64_slurp_reloc_table
  (bfd *, asection *, asymbol **, boolean);
extern boolean bfd_elf64_add_dynamic_entry
  (struct bfd_link_info *, bfd_vma, bfd_vma);
extern boolean bfd_elf64_link_create_dynamic_sections
  (bfd *, struct bfd_link_info *);
extern Elf_Internal_Rela *_bfd_elf64_link_read_relocs
  (bfd *, asection *, void *, Elf_Internal_Rela *, boolean);






extern int elf_link_record_local_dynamic_symbol
  (struct bfd_link_info *, bfd *, long);





extern boolean _bfd_elf_close_and_cleanup
  (bfd *);
extern bfd_reloc_status_type _bfd_elf_rel_vtable_reloc_fn
  (bfd *, arelent *, struct symbol_cache_entry *, void *, asection *, bfd *, char **);


extern boolean _bfd_elf32_gc_sections
  (bfd *, struct bfd_link_info *);
extern boolean _bfd_elf32_gc_common_finalize_got_offsets
  (bfd *, struct bfd_link_info *);
extern boolean _bfd_elf32_gc_common_final_link
  (bfd *, struct bfd_link_info *);
extern boolean _bfd_elf32_gc_record_vtinherit
  (bfd *, asection *, struct elf_link_hash_entry *, bfd_vma);
extern boolean _bfd_elf32_gc_record_vtentry
  (bfd *, asection *, struct elf_link_hash_entry *, bfd_vma);

extern boolean _bfd_elf64_gc_sections
  (bfd *, struct bfd_link_info *);
extern boolean _bfd_elf64_gc_common_finalize_got_offsets
  (bfd *, struct bfd_link_info *);
extern boolean _bfd_elf64_gc_common_final_link
  (bfd *, struct bfd_link_info *);
extern boolean _bfd_elf64_gc_record_vtinherit
  (bfd *, asection *, struct elf_link_hash_entry *, bfd_vma);
extern boolean _bfd_elf64_gc_record_vtentry
  (bfd *, asection *, struct elf_link_hash_entry *, bfd_vma);

extern boolean _bfd_elf32_reloc_symbol_deleted_p
  (bfd_vma, void *);
extern boolean _bfd_elf64_reloc_symbol_deleted_p
  (bfd_vma, void *);


extern char *elfcore_write_note
  (bfd *, char *, int *, const char *, int, const void *, int);
extern char *elfcore_write_prpsinfo
  (bfd *, char *, int *, const char *, const char *);
extern char *elfcore_write_prstatus
  (bfd *, char *, int *, long, int, const void *);
extern char * elfcore_write_pstatus
  (bfd *, char *, int *, long, int, const void *);
extern char *elfcore_write_prfpreg
  (bfd *, char *, int *, const void *, int);
extern char *elfcore_write_prxfpreg
  (bfd *, char *, int *, const void *, int);
extern char *elfcore_write_lwpstatus
  (bfd *, char *, int *, long, int, const void *);



extern boolean _sh_elf_set_mach_from_flags
  (bfd *);
# 41 "../../binutils-2.13.1/gas/config/obj-elf.h" 2

# 1 "targ-cpu.h" 1
# 1 "../../binutils-2.13.1/gas/config/tc-ppc.h" 1
# 26 "../../binutils-2.13.1/gas/config/tc-ppc.h"
struct fix;
# 51 "../../binutils-2.13.1/gas/config/tc-ppc.h"
extern enum bfd_architecture ppc_arch (void);
extern unsigned long ppc_mach (void);


extern int target_big_endian;



extern char *ppc_target_format (void);
# 232 "../../binutils-2.13.1/gas/config/tc-ppc.h"
extern int ppc_section_letter (int, char **);
extern int ppc_section_type (char *, size_t);
extern int ppc_section_word (char *, size_t);
extern int ppc_section_flags (int, int, int);
# 258 "../../binutils-2.13.1/gas/config/tc-ppc.h"
extern const char *ppc_comment_chars;



extern int ppc_fix_adjustable (struct fix *);
# 275 "../../binutils-2.13.1/gas/config/tc-ppc.h"
extern void ppc_frob_file_before_adjust (void);






extern long md_pcrel_from_section (struct fix *, segT);


extern int ppc_parse_name (const char *, struct expressionS *);
# 2 "targ-cpu.h" 2
# 43 "../../binutils-2.13.1/gas/config/obj-elf.h" 2
# 62 "../../binutils-2.13.1/gas/config/obj-elf.h"
struct elf_obj_sy
{

  int local;



  expressionS *size;


  char *versioned_name;
# 81 "../../binutils-2.13.1/gas/config/obj-elf.h"
};
# 103 "../../binutils-2.13.1/gas/config/obj-elf.h"
extern void elf_begin (void);
# 126 "../../binutils-2.13.1/gas/config/obj-elf.h"
int elf_s_get_other (symbolS *);
# 135 "../../binutils-2.13.1/gas/config/obj-elf.h"
extern asection *gdb_section;




extern void elf_frob_file (void);




extern void elf_frob_file_before_adjust (void);




extern void elf_frob_file_after_relocs (void);




extern void elf_file_symbol (const char *);

extern void obj_elf_section_change_hook (void);

extern void obj_elf_section (int);
extern void obj_elf_previous (int);
extern void obj_elf_version (int);
extern void obj_elf_common (int);
extern void obj_elf_data (int);
extern void obj_elf_text (int);
extern struct fix *obj_elf_vtable_inherit (int);
extern struct fix *obj_elf_vtable_entry (int);







void elf_obj_read_begin_hook (void);




void elf_obj_symbol_new_hook (symbolS *);




void elf_copy_symbol_attributes (symbolS *, symbolS *);
# 201 "../../binutils-2.13.1/gas/config/obj-elf.h"
extern void obj_elf_init_stab_section (segT);
# 223 "../../binutils-2.13.1/gas/config/obj-elf.h"
extern void elf_frob_symbol (symbolS *, int *);




extern void elf_pop_insert (void);







struct ecoff_extr;

extern void elf_ecoff_set_ext (symbolS *, struct ecoff_extr *);
# 2 "obj-format.h" 2
# 20 "../../binutils-2.13.1/gas/config/te-generic.h" 2
# 2 "targ-env.h" 2
# 615 "../../binutils-2.13.1/gas/as.h" 2





# 1 "../../binutils-2.13.1/gas/write.h" 1
# 45 "../../binutils-2.13.1/gas/write.h"
# 1 "../../binutils-2.13.1/gas/bit_fix.h" 1
# 36 "../../binutils-2.13.1/gas/bit_fix.h"
struct bit_fix {
  int fx_bit_size;
  int fx_bit_offset;
  long fx_bit_base;

  long fx_bit_base_adj;
  long fx_bit_max;
  long fx_bit_min;
  long fx_bit_add;
};
typedef struct bit_fix bit_fixS;
# 46 "../../binutils-2.13.1/gas/write.h" 2





struct fix
{




  char fx_pcrel_adjust;


  unsigned char fx_size;


  unsigned fx_pcrel : 1;






  unsigned fx_plt : 1;



  unsigned fx_im_disp : 2;



  unsigned fx_tcbit : 1;


  unsigned fx_done : 1;






  unsigned fx_no_overflow : 1;


  unsigned fx_signed : 1;


  fragS *fx_frag;


  long fx_where;


  symbolS *fx_addsy;


  symbolS *fx_subsy;


  valueT fx_offset;


  struct fix *fx_next;






  bit_fixS *fx_bit_fixP;


  bfd_reloc_code_real_type fx_r_type;
# 135 "../../binutils-2.13.1/gas/write.h"
  valueT fx_addnumber;



  char *fx_file;
  unsigned fx_line;
# 156 "../../binutils-2.13.1/gas/write.h"
};

typedef struct fix fixS;

extern int finalize_syms;
# 175 "../../binutils-2.13.1/gas/write.h"
extern long string_byte_count;
extern int section_alignment[];

extern bit_fixS *bit_fix_new
  (int size, int offset, long base_type, long base_adj, long min, long max, long add);

extern void append (char **charPP, char *fromP, unsigned long length);
extern void record_alignment (segT seg, int align);
extern int get_recorded_alignment (segT seg);
extern void subsegs_finish (void);
extern void write_object_file (void);
extern long relax_frag (segT, fragS *, long);
extern int relax_segment
  (struct frag * seg_frag_root, segT seg_type);

extern void number_to_chars_littleendian (char *, valueT, int);
extern void number_to_chars_bigendian (char *, valueT, int);


extern fixS *fix_new
  (fragS * frag, int where, int size, symbolS * add_symbol, offsetT offset, int pcrel, bfd_reloc_code_real_type r_type);

extern fixS *fix_new_exp
  (fragS * frag, int where, int size, expressionS *exp, int pcrel, bfd_reloc_code_real_type r_type);
# 209 "../../binutils-2.13.1/gas/write.h"
extern void write_print_statistics (FILE *);
# 621 "../../binutils-2.13.1/gas/as.h" 2
# 1 "../../binutils-2.13.1/gas/frags.h" 1
# 26 "../../binutils-2.13.1/gas/frags.h"
struct obstack;
# 43 "../../binutils-2.13.1/gas/frags.h"
struct frag {

  addressT fr_address;


  addressT last_fr_address;


  offsetT fr_fix;


  offsetT fr_var;

  offsetT fr_offset;

  symbolS *fr_symbol;

  char *fr_opcode;


  struct frag *fr_next;


  char *fr_file;
  unsigned int fr_line;


  struct list_info_struct *line;




  unsigned int relax_marker:1;


  relax_stateT fr_type;
  relax_substateT fr_subtype;
# 98 "../../binutils-2.13.1/gas/frags.h"
  char fr_literal[1];
};
# 108 "../../binutils-2.13.1/gas/frags.h"
extern fragS *frag_now;
extern addressT frag_now_fix (void);
extern addressT frag_now_fix_octets (void);


extern fragS zero_address_frag;

extern fragS bss_address_frag;
# 130 "../../binutils-2.13.1/gas/frags.h"
extern void frag_append_1_char (int);



void frag_init (void);
fragS *frag_alloc (struct obstack *);
void frag_grow (unsigned int nchars);
char *frag_more (int nchars);
void frag_align (int alignment, int fill_character, int max);
void frag_align_pattern (int alignment, const char *fill_pattern, int n_fill, int max);



void frag_align_code (int alignment, int max);
void frag_new (int old_frags_var_max_size);
void frag_wane (fragS * fragP);

char *frag_variant (relax_stateT type, int max_chars, int var, relax_substateT subtype, symbolS * symbol, offsetT offset, char *opcode);







char *frag_var (relax_stateT type, int max_chars, int var, relax_substateT subtype, symbolS * symbol, offsetT offset, char *opcode);
# 622 "../../binutils-2.13.1/gas/as.h" 2
# 1 "../../binutils-2.13.1/gas/hash.h" 1
# 24 "../../binutils-2.13.1/gas/hash.h"
struct hash_control;



extern struct hash_control *hash_new (void);



extern void hash_die (struct hash_control *);






extern const char *hash_insert (struct hash_control *, const char *key, void * value);






extern const char *hash_jam (struct hash_control *, const char *key, void * value);






extern void * hash_replace (struct hash_control *, const char *key, void * value);





extern void * hash_find (struct hash_control *, const char *key);




extern void * hash_delete (struct hash_control *, const char *key);




extern void hash_traverse (struct hash_control *, void (*pfn) (const char *key, void * value));





extern void hash_print_statistics (FILE *, const char *name, struct hash_control *);
# 623 "../../binutils-2.13.1/gas/as.h" 2
# 1 "../../binutils-2.13.1/gas/read.h" 1
# 23 "../../binutils-2.13.1/gas/read.h"
extern char *input_line_pointer;
# 58 "../../binutils-2.13.1/gas/read.h"
extern char lex_type[];
extern char is_end_of_line[];

extern int is_it_end_of_statement (void);

extern int target_big_endian;


extern const char comment_chars[];
extern const char line_comment_chars[];
extern const char line_separator_chars[];


extern char **include_dirs;
extern int include_dir_count;
extern int include_dir_maxlen;


extern addressT abs_section_offset;


extern symbolS *line_label;


extern symbolS *mri_common_symbol;


extern int outputting_stabs_line_debug;


enum linkonce_type {
  LINKONCE_UNSET = 0,
  LINKONCE_DISCARD,
  LINKONCE_ONE_ONLY,
  LINKONCE_SAME_SIZE,
  LINKONCE_SAME_CONTENTS
};



extern char original_case_string[];


extern void pop_insert (const pseudo_typeS *);
extern unsigned int get_stab_string_offset
  (const char *string, const char *stabstr_secname);
extern void aout_process_stab (int, const char *, int, int, int);
extern char *demand_copy_C_string (int *len_pointer);
extern char get_absolute_expression_and_terminator
  (long *val_pointer);
extern offsetT get_absolute_expression (void);
extern unsigned int next_char_of_string (void);
extern void s_mri_sect (char *);
extern char *mri_comment_field (char *);
extern void mri_comment_end (char *, int);
extern void add_include_dir (char *path);
extern void cons (int nbytes);
extern void demand_empty_rest_of_line (void);
extern void emit_expr (expressionS *exp, unsigned int nbytes);
extern void emit_leb128_expr (expressionS *, int);
extern void equals (char *sym_name, int reassign);
extern void float_cons (int float_type);
extern void ignore_rest_of_line (void);
extern void discard_rest_of_line (void);
extern int output_leb128 (char *, valueT, int sign);
extern void pseudo_set (symbolS * symbolP);
extern void read_a_source_file (char *name);
extern void read_begin (void);
extern void read_print_statistics (FILE *);
extern int sizeof_leb128 (valueT, int sign);
extern void stabs_generate_asm_file (void);
extern void stabs_generate_asm_lineno (void);
extern void stabs_generate_asm_func (const char *, const char *);
extern void stabs_generate_asm_endfunc (const char *, const char *);
extern void do_repeat (int,const char *,const char *);
extern void end_repeat (int);

extern void generate_lineno_debug (void);

extern void s_abort (int) __attribute__ ((__noreturn__));
extern void s_align_bytes (int arg);
extern void s_align_ptwo (int);
extern void s_app_file_string (char *);
extern void s_app_file (int);
extern void s_app_line (int);
extern void s_bad_endr (int);
extern void s_comm (int);
extern void s_data (int);
extern void s_desc (int);
extern void s_else (int arg);
extern void s_elseif (int arg);
extern void s_end (int arg);
extern void s_endif (int arg);
extern void s_err (int);
extern void s_fail (int);
extern void s_fill (int);
extern void s_float_space (int mult);
extern void s_func (int);
extern void do_s_func (int, const char *);
extern void s_globl (int arg);
extern void s_if (int arg);
extern void s_ifc (int arg);
extern void s_ifdef (int arg);
extern void s_ifeqs (int arg);
extern void s_ignore (int arg);
extern void s_include (int arg);
extern void s_irp (int arg);
extern void s_lcomm (int needs_align);
extern void s_lcomm_bytes (int needs_align);
extern void s_leb128 (int sign);
extern void s_linkonce (int);
extern void s_lsym (int);
extern void s_macro (int);
extern void s_mexit (int);
extern void s_mri (int);
extern void s_mri_common (int);
extern void s_org (int);
extern void s_print (int);
extern void s_purgem (int);
extern void s_rept (int);
extern void s_set (int);
extern void s_space (int mult);
extern void s_stab (int what);
extern void s_struct (int);
extern void s_text (int);
extern void stringer (int append_zero);
extern void s_xstab (int what);
extern void s_rva (int);
extern void s_incbin (int);
# 624 "../../binutils-2.13.1/gas/as.h" 2
# 1 "../../binutils-2.13.1/gas/symbols.h" 1
# 34 "../../binutils-2.13.1/gas/symbols.h"
extern struct obstack notes;

extern struct obstack cond_obstack;


extern symbolS *symbol_rootP;
extern symbolS *symbol_lastP;

extern symbolS abs_symbol;

extern int symbol_table_frozen;



extern int symbols_case_sensitive;

char *decode_local_label_name (char *s);
symbolS *symbol_find (const char *name);
symbolS *symbol_find_exact (const char *name);
symbolS *symbol_find_base (const char *name, int strip_underscore);
symbolS *symbol_find_or_make (const char *name);
symbolS *symbol_make (const char *name);
symbolS *symbol_new (const char *name, segT segment, valueT value, fragS * frag);

symbolS *symbol_create (const char *name, segT segment, valueT value, fragS * frag);

symbolS *colon (const char *sym_name);
void local_colon (int n);
void symbol_begin (void);
void symbol_print_statistics (FILE *);
void symbol_table_insert (symbolS * symbolP);
valueT resolve_symbol_value (symbolS *);
void resolve_local_symbol_values (void);

void print_symbol_value (symbolS *);
void print_expr (expressionS *);
void print_expr_1 (FILE *, expressionS *);
void print_symbol_value_1 (FILE *, symbolS *);

int dollar_label_defined (long l);
void dollar_label_clear (void);
void define_dollar_label (long l);
char *dollar_label_name (long l, int augend);

void fb_label_instance_inc (long label);
char *fb_label_name (long n, long augend);

extern void copy_symbol_attributes (symbolS *, symbolS *);


extern valueT S_GET_VALUE (symbolS *);
extern void S_SET_VALUE (symbolS *, valueT);


extern int S_IS_FUNCTION (symbolS *);
extern int S_IS_EXTERNAL (symbolS *);
extern int S_IS_WEAK (symbolS *);
extern int S_IS_COMMON (symbolS *);
extern int S_IS_DEFINED (symbolS *);
extern int S_IS_DEBUG (symbolS *);
extern int S_IS_LOCAL (symbolS *);
extern int S_IS_EXTERN (symbolS *);
extern int S_IS_STABD (symbolS *);
extern const char *S_GET_NAME (symbolS *);
extern segT S_GET_SEGMENT (symbolS *);
extern void S_SET_SEGMENT (symbolS *, segT);
extern void S_SET_EXTERNAL (symbolS *);
extern void S_SET_NAME (symbolS *, char *);
extern void S_CLEAR_EXTERNAL (symbolS *);
extern void S_SET_WEAK (symbolS *);
# 140 "../../binutils-2.13.1/gas/symbols.h"
extern const segT N_TYPE_seg[];


extern const short seg_N_TYPE[];



void symbol_clear_list_pointers (symbolS * symbolP);



void symbol_insert (symbolS * addme, symbolS * target, symbolS ** rootP, symbolS ** lastP);

void symbol_remove (symbolS * symbolP, symbolS ** rootP, symbolS ** lastP);


extern symbolS *symbol_previous (symbolS *);



void verify_symbol_chain (symbolS * rootP, symbolS * lastP);
void verify_symbol_chain_2 (symbolS * symP);

void symbol_append (symbolS * addme, symbolS * target, symbolS ** rootP, symbolS ** lastP);


extern symbolS *symbol_next (symbolS *);

extern expressionS *symbol_get_value_expression (symbolS *);
extern void symbol_set_value_expression (symbolS *, const expressionS *);

extern void symbol_set_frag (symbolS *, fragS *);
extern fragS *symbol_get_frag (symbolS *);
extern void symbol_mark_used (symbolS *);
extern void symbol_clear_used (symbolS *);
extern int symbol_used_p (symbolS *);
extern void symbol_mark_used_in_reloc (symbolS *);
extern void symbol_clear_used_in_reloc (symbolS *);
extern int symbol_used_in_reloc_p (symbolS *);
extern void symbol_mark_mri_common (symbolS *);
extern void symbol_clear_mri_common (symbolS *);
extern int symbol_mri_common_p (symbolS *);
extern void symbol_mark_written (symbolS *);
extern void symbol_clear_written (symbolS *);
extern int symbol_written_p (symbolS *);
extern void symbol_mark_resolved (symbolS *);
extern int symbol_resolved_p (symbolS *);
extern int symbol_section_p (symbolS *);
extern int symbol_equated_p (symbolS *);
extern int symbol_equated_reloc_p (symbolS *);
extern int symbol_constant_p (symbolS *);


extern asymbol *symbol_get_bfdsym (symbolS *);
extern void symbol_set_bfdsym (symbolS *, asymbol *);



struct elf_obj_sy *symbol_get_obj (symbolS *);
void symbol_set_obj (symbolS *, struct elf_obj_sy *);
# 625 "../../binutils-2.13.1/gas/as.h" 2

# 1 "../../binutils-2.13.1/gas/tc.h" 1
# 25 "../../binutils-2.13.1/gas/tc.h"
extern const pseudo_typeS md_pseudo_table[];




struct relax_type
{

  long rlx_forward;

  long rlx_backward;


  unsigned char rlx_length;


  relax_substateT rlx_more;
};

typedef struct relax_type relax_typeS;

extern const int md_reloc_size;

char *md_atof (int what_statement_type, char *literalP, int *sizeP);

int md_estimate_size_before_relax (fragS * fragP, segT segment);

int md_parse_option (int c, char *arg);
void md_show_usage (FILE *);
long md_pcrel_from (fixS * fixP);
short tc_coff_fix2rtype (fixS * fixP);
void md_assemble (char *str);
void md_begin (void);

void md_create_long_jump (char *ptr, addressT from_addr, addressT to_addr, fragS * frag, symbolS * to_symbol);




void md_create_short_jump (char *ptr, addressT from_addr, addressT to_addr, fragS * frag, symbolS * to_symbol);



void md_number_to_chars (char *buf, valueT val, int n);





void md_apply_fix3 (fixS *, valueT *, segT);



void md_convert_frag (bfd * headers, segT sec, fragS * fragP);


void tc_headers_hook (segT *, fixS *);


extern arelent *tc_gen_reloc (asection *, fixS *);
# 103 "../../binutils-2.13.1/gas/tc.h"
valueT md_section_align (segT seg, valueT size);



symbolS *md_undefined_symbol (char *name);
# 627 "../../binutils-2.13.1/gas/as.h" 2
# 1 "../../binutils-2.13.1/gas/obj.h" 1
# 24 "../../binutils-2.13.1/gas/obj.h"
char *obj_default_output_file_name (void);
void obj_emit_relocations (char **where, fixS * fixP, relax_addressT segment_address_in_file);

void obj_emit_strings (char **where);
void obj_emit_symbols (char **where, symbolS * symbols);
# 44 "../../binutils-2.13.1/gas/obj.h"
void obj_symbol_to_chars (char **where, symbolS * symbolP);

extern const pseudo_typeS obj_pseudo_table[];


struct format_ops {
  int flavor;
  unsigned dfl_leading_underscore : 1;
  unsigned emit_section_symbols : 1;
  void (*begin) (void);
  void (*app_file) (const char *);
  void (*frob_symbol) (symbolS *, int *);
  void (*frob_file) (void);
  void (*frob_file_before_adjust) (void);
  void (*frob_file_after_relocs) (void);
  bfd_vma (*s_get_size) (symbolS *);
  void (*s_set_size) (symbolS *, bfd_vma);
  bfd_vma (*s_get_align) (symbolS *);
  void (*s_set_align) (symbolS *, bfd_vma);
  int (*s_get_other) (symbolS *);
  void (*s_set_other) (symbolS *, int);
  int (*s_get_desc) (symbolS *);
  void (*s_set_desc) (symbolS *, int);
  int (*s_get_type) (symbolS *);
  void (*s_set_type) (symbolS *, int);
  void (*copy_symbol_attributes) (symbolS *, symbolS *);
  void (*generate_asm_lineno) (void);
  void (*process_stab) (segT, int, const char *, int, int, int);
  int (*separate_stab_sections) (void);
  void (*init_stab_section) (segT);
  int (*sec_sym_ok_for_reloc) (asection *);
  void (*pop_insert) (void);

  void (*ecoff_set_ext) (symbolS *, struct ecoff_extr *);

  void (*read_begin_hook) (void);
  void (*symbol_new_hook) (symbolS *);
};

extern const struct format_ops elf_format_ops;
extern const struct format_ops ecoff_format_ops;
extern const struct format_ops coff_format_ops;
extern const struct format_ops aout_format_ops;


extern const struct format_ops *this_format;
# 628 "../../binutils-2.13.1/gas/as.h" 2




# 1 "../../binutils-2.13.1/gas/listing.h" 1
# 44 "../../binutils-2.13.1/gas/listing.h"
void listing_eject (int);
void listing_error (const char *message);
void listing_file (const char *name);
void listing_flags (int);
void listing_list (int on);
void listing_newline (char *ps);
void listing_prev_line (void);
void listing_print (char *name);
void listing_psize (int);
void listing_nopage (int);
void listing_source_file (const char *);
void listing_source_line (unsigned int);
void listing_title (int depth);
void listing_warning (const char *message);
void listing_width (unsigned int x);

extern int listing_lhs_width;
extern int listing_lhs_width_second;
extern int listing_lhs_cont_lines;
extern int listing_rhs_width;
# 633 "../../binutils-2.13.1/gas/as.h" 2
# 25 "../../binutils-2.13.1/gas/config/tc-ppc.c" 2
# 1 "../../binutils-2.13.1/include/safe-ctype.h" 1
# 44 "../../binutils-2.13.1/include/safe-ctype.h"
enum {

  _sch_isblank = 0x0001,
  _sch_iscntrl = 0x0002,
  _sch_isdigit = 0x0004,
  _sch_islower = 0x0008,
  _sch_isprint = 0x0010,
  _sch_ispunct = 0x0020,
  _sch_isspace = 0x0040,
  _sch_isupper = 0x0080,
  _sch_isxdigit = 0x0100,


  _sch_isidst = 0x0200,
  _sch_isvsp = 0x0400,
  _sch_isnvsp = 0x0800,


  _sch_isalpha = _sch_isupper|_sch_islower,
  _sch_isalnum = _sch_isalpha|_sch_isdigit,
  _sch_isidnum = _sch_isidst|_sch_isdigit,
  _sch_isgraph = _sch_isalnum|_sch_ispunct,
  _sch_iscppsp = _sch_isvsp|_sch_isnvsp,
  _sch_isbasic = _sch_isprint|_sch_iscppsp

};


extern const unsigned short _sch_istable[256];
# 97 "../../binutils-2.13.1/include/safe-ctype.h"
extern const unsigned char _sch_toupper[256];
extern const unsigned char _sch_tolower[256];
# 26 "../../binutils-2.13.1/gas/config/tc-ppc.c" 2
# 1 "../../binutils-2.13.1/gas/subsegs.h" 1
# 41 "../../binutils-2.13.1/gas/subsegs.h"
# 1 "../../binutils-2.13.1/include/obstack.h" 1
# 161 "../../binutils-2.13.1/include/obstack.h"
struct _obstack_chunk
{
  char *limit;
  struct _obstack_chunk *prev;
  char contents[4];
};

struct obstack
{
  long chunk_size;
  struct _obstack_chunk *chunk;
  char *object_base;
  char *next_free;
  char *chunk_limit;
  int temp;
  int alignment_mask;




  struct _obstack_chunk *(*chunkfun) (void *, long);
  void (*freefun) (void *, struct _obstack_chunk *);
  void *extra_arg;





  unsigned use_extra_arg:1;
  unsigned maybe_empty_object:1;



  unsigned alloc_failed:1;


};




extern void _obstack_newchunk (struct obstack *, int);
extern void _obstack_free (struct obstack *, void *);
extern int _obstack_begin (struct obstack *, int, int,
                            void *(*) (long), void (*) (void *));
extern int _obstack_begin_1 (struct obstack *, int, int,
                             void *(*) (void *, long),
                             void (*) (void *, void *), void *);
extern int _obstack_memory_used (struct obstack *);
# 223 "../../binutils-2.13.1/include/obstack.h"
void obstack_init (struct obstack *obstack);

void * obstack_alloc (struct obstack *obstack, int size);

void * obstack_copy (struct obstack *obstack, void *address, int size);
void * obstack_copy0 (struct obstack *obstack, void *address, int size);

void obstack_free (struct obstack *obstack, void *block);

void obstack_blank (struct obstack *obstack, int size);

void obstack_grow (struct obstack *obstack, void *data, int size);
void obstack_grow0 (struct obstack *obstack, void *data, int size);

void obstack_1grow (struct obstack *obstack, int data_char);
void obstack_ptr_grow (struct obstack *obstack, void *data);
void obstack_int_grow (struct obstack *obstack, int data);

void * obstack_finish (struct obstack *obstack);

int obstack_object_size (struct obstack *obstack);

int obstack_room (struct obstack *obstack);
void obstack_make_room (struct obstack *obstack, int size);
void obstack_1grow_fast (struct obstack *obstack, int data_char);
void obstack_ptr_grow_fast (struct obstack *obstack, void *data);
void obstack_int_grow_fast (struct obstack *obstack, int data);
void obstack_blank_fast (struct obstack *obstack, int size);

void * obstack_base (struct obstack *obstack);
void * obstack_next_free (struct obstack *obstack);
int obstack_alignment_mask (struct obstack *obstack);
int obstack_chunk_size (struct obstack *obstack);
int obstack_memory_used (struct obstack *obstack);
# 267 "../../binutils-2.13.1/include/obstack.h"
extern void (*obstack_alloc_failed_handler) (void);





extern int obstack_exit_failure;
# 42 "../../binutils-2.13.1/gas/subsegs.h" 2

struct frchain
{
  struct frag *frch_root;
  struct frag *frch_last;
  struct frchain *frch_next;
  segT frch_seg;
  subsegT frch_subseg;

  fixS *fix_root;
  fixS *fix_tail;

  struct obstack frch_obstack;
  fragS *frch_frag_now;
};

typedef struct frchain frchainS;


extern frchainS *frchain_root;



extern frchainS *frchain_now;

typedef struct segment_info_struct {
  frchainS *frchainP;
  unsigned int hadone : 1;






  unsigned int bss : 1;

  int user_stuff;



  fixS *fix_root;
  fixS *fix_tail;







  symbolS *dot;

  struct lineno_list *lineno_list_head;
  struct lineno_list *lineno_list_tail;



  asection *bfd_section;



  symbolS *sym;


  union {

    unsigned long stab_string_size;

    char *p;
  }
  stabu;
# 120 "../../binutils-2.13.1/gas/subsegs.h"
} segment_info_type;



extern segment_info_type *seg_info (segT);
extern symbolS *section_symbol (segT);
# 155 "../../binutils-2.13.1/gas/subsegs.h"
extern void subsegs_print_statistics (FILE *);
# 27 "../../binutils-2.13.1/gas/config/tc-ppc.c" 2

# 1 "../../binutils-2.13.1/include/opcode/ppc.h" 1
# 27 "../../binutils-2.13.1/include/opcode/ppc.h"
struct powerpc_opcode
{

  const char *name;



  unsigned long opcode;





  unsigned long mask;




  unsigned long flags;




  unsigned char operands[8];
};




extern const struct powerpc_opcode powerpc_opcodes[];
extern const int powerpc_num_opcodes;
# 115 "../../binutils-2.13.1/include/opcode/ppc.h"
struct powerpc_operand
{

  int bits;


  int shift;
# 139 "../../binutils-2.13.1/include/opcode/ppc.h"
  unsigned long (*insert) (unsigned long instruction, long op, int dialect, const char **errmsg);
# 160 "../../binutils-2.13.1/include/opcode/ppc.h"
  long (*extract) (unsigned long instruction, int dialect, int *invalid);



  unsigned long flags;
};




extern const struct powerpc_operand powerpc_operands[];
# 257 "../../binutils-2.13.1/include/opcode/ppc.h"
struct powerpc_macro
{

  const char *name;


  unsigned int operands;




  unsigned long flags;




  const char *format;
};

extern const struct powerpc_macro powerpc_macros[];
extern const int powerpc_num_macros;
# 29 "../../binutils-2.13.1/gas/config/tc-ppc.c" 2


# 1 "../../binutils-2.13.1/include/elf/ppc.h" 1
# 30 "../../binutils-2.13.1/include/elf/ppc.h"
# 1 "../../binutils-2.13.1/include/elf/reloc-macros.h" 1
# 31 "../../binutils-2.13.1/include/elf/ppc.h" 2


enum elf_ppc_reloc_type {
  R_PPC_NONE = 0,
  R_PPC_ADDR32 = 1,
  R_PPC_ADDR24 = 2,
  R_PPC_ADDR16 = 3,
  R_PPC_ADDR16_LO = 4,
  R_PPC_ADDR16_HI = 5,
  R_PPC_ADDR16_HA = 6,
  R_PPC_ADDR14 = 7,
  R_PPC_ADDR14_BRTAKEN = 8,
  R_PPC_ADDR14_BRNTAKEN = 9,
  R_PPC_REL24 = 10,
  R_PPC_REL14 = 11,
  R_PPC_REL14_BRTAKEN = 12,
  R_PPC_REL14_BRNTAKEN = 13,
  R_PPC_GOT16 = 14,
  R_PPC_GOT16_LO = 15,
  R_PPC_GOT16_HI = 16,
  R_PPC_GOT16_HA = 17,
  R_PPC_PLTREL24 = 18,
  R_PPC_COPY = 19,
  R_PPC_GLOB_DAT = 20,
  R_PPC_JMP_SLOT = 21,
  R_PPC_RELATIVE = 22,
  R_PPC_LOCAL24PC = 23,
  R_PPC_UADDR32 = 24,
  R_PPC_UADDR16 = 25,
  R_PPC_REL32 = 26,
  R_PPC_PLT32 = 27,
  R_PPC_PLTREL32 = 28,
  R_PPC_PLT16_LO = 29,
  R_PPC_PLT16_HI = 30,
  R_PPC_PLT16_HA = 31,
  R_PPC_SDAREL16 = 32,
  R_PPC_SECTOFF = 33,
  R_PPC_SECTOFF_LO = 34,
  R_PPC_SECTOFF_HI = 35,
  R_PPC_SECTOFF_HA = 36,
  R_PPC_ADDR30 = 37,


  R_PPC64_ADDR64 = 38,
  R_PPC64_ADDR16_HIGHER = 39,
  R_PPC64_ADDR16_HIGHERA = 40,
  R_PPC64_ADDR16_HIGHEST = 41,
  R_PPC64_ADDR16_HIGHESTA = 42,
  R_PPC64_UADDR64 = 43,
  R_PPC64_REL64 = 44,
  R_PPC64_PLT64 = 45,
  R_PPC64_PLTREL64 = 46,
  R_PPC64_TOC16 = 47,
  R_PPC64_TOC16_LO = 48,
  R_PPC64_TOC16_HI = 49,
  R_PPC64_TOC16_HA = 50,
  R_PPC64_TOC = 51,
  R_PPC64_PLTGOT16 = 52,
  R_PPC64_PLTGOT16_LO = 53,
  R_PPC64_PLTGOT16_HI = 54,
  R_PPC64_PLTGOT16_HA = 55,


  R_PPC64_ADDR16_DS = 56,
  R_PPC64_ADDR16_LO_DS = 57,
  R_PPC64_GOT16_DS = 58,
  R_PPC64_GOT16_LO_DS = 59,
  R_PPC64_PLT16_LO_DS = 60,
  R_PPC64_SECTOFF_DS = 61,
  R_PPC64_SECTOFF_LO_DS = 62,
  R_PPC64_TOC16_DS = 63,
  R_PPC64_TOC16_LO_DS = 64,
  R_PPC64_PLTGOT16_DS = 65,
  R_PPC64_PLTGOT16_LO_DS = 66,



  R_PPC_EMB_NADDR32 = 101,
  R_PPC_EMB_NADDR16 = 102,
  R_PPC_EMB_NADDR16_LO = 103,
  R_PPC_EMB_NADDR16_HI = 104,
  R_PPC_EMB_NADDR16_HA = 105,
  R_PPC_EMB_SDAI16 = 106,
  R_PPC_EMB_SDA2I16 = 107,
  R_PPC_EMB_SDA2REL = 108,
  R_PPC_EMB_SDA21 = 109,
  R_PPC_EMB_MRKREF = 110,
  R_PPC_EMB_RELSEC16 = 111,
  R_PPC_EMB_RELST_LO = 112,
  R_PPC_EMB_RELST_HI = 113,
  R_PPC_EMB_RELST_HA = 114,
  R_PPC_EMB_BIT_FLD = 115,
  R_PPC_EMB_RELSDA = 116,


  R_PPC_GNU_VTINHERIT = 253,
  R_PPC_GNU_VTENTRY = 254,



  R_PPC_TOC16 = 255,

R_PPC_max };
# 32 "../../binutils-2.13.1/gas/config/tc-ppc.c" 2
# 1 "../../binutils-2.13.1/gas/dwarf2dbg.h" 1
# 29 "../../binutils-2.13.1/gas/dwarf2dbg.h"
struct dwarf2_line_info {
  unsigned int filenum;
  unsigned int line;
  unsigned int column;
  unsigned int flags;
};




extern char *dwarf2_directive_file (int dummy);







extern void dwarf2_directive_loc (int dummy);





extern void dwarf2_where (struct dwarf2_line_info *l);






extern void dwarf2_gen_line_info (addressT addr, struct dwarf2_line_info *l);



extern void dwarf2_emit_insn (int);

extern void dwarf2_finish (void);

extern int dwarf2dbg_estimate_size_before_relax (fragS *);
extern int dwarf2dbg_relax_frag (fragS *);
extern void dwarf2dbg_convert_frag (fragS *);
# 33 "../../binutils-2.13.1/gas/config/tc-ppc.c" 2
# 42 "../../binutils-2.13.1/gas/config/tc-ppc.c"
extern int target_big_endian;


static int set_target_endian = 0;
# 86 "../../binutils-2.13.1/gas/config/tc-ppc.c"
static boolean reg_names_p = false;

static boolean register_name (expressionS *);
static void ppc_set_cpu (void);
static unsigned long ppc_insert_operand
  (unsigned long insn, const struct powerpc_operand *operand, offsetT val, char *file, unsigned int line);

static void ppc_macro (char *str, const struct powerpc_macro *macro);
static void ppc_byte (int);


static int ppc_is_toc_sym (symbolS *sym);
static void ppc_tc (int);
static void ppc_machine (int);
# 128 "../../binutils-2.13.1/gas/config/tc-ppc.c"
static bfd_reloc_code_real_type ppc_elf_suffix (char **, expressionS *);
static void ppc_elf_cons (int);
static void ppc_elf_rdata (int);
static void ppc_elf_lcomm (int);
static void ppc_elf_validate_fix (fixS *, segT);
# 158 "../../binutils-2.13.1/gas/config/tc-ppc.c"
static const char ppc_solaris_comment_chars[] = "#!";
static const char ppc_eabi_comment_chars[] = "#";




const char *ppc_comment_chars = ppc_eabi_comment_chars;






const char line_comment_chars[] = "#";



const char line_separator_chars[] = ";";



const char EXP_CHARS[] = "eE";



const char FLT_CHARS[] = "dD";



const pseudo_typeS md_pseudo_table[] =
{

  { "byte", ppc_byte, 0 },
# 227 "../../binutils-2.13.1/gas/config/tc-ppc.c"
  { "llong", ppc_elf_cons, 8 },
  { "quad", ppc_elf_cons, 8 },
  { "long", ppc_elf_cons, 4 },
  { "word", ppc_elf_cons, 2 },
  { "short", ppc_elf_cons, 2 },
  { "rdata", ppc_elf_rdata, 0 },
  { "rodata", ppc_elf_rdata, 0 },
  { "lcomm", ppc_elf_lcomm, 0 },
  { "file", (void (*) (int)) dwarf2_directive_file, 0 },
  { "loc", dwarf2_directive_loc, 0 },
# 256 "../../binutils-2.13.1/gas/config/tc-ppc.c"
  { "tc", ppc_tc, 0 },
  { "machine", ppc_machine, 0 },


  { ((void *)0), ((void *)0), 0 }
};







struct pd_reg
  {
    char *name;
    int value;
  };
# 310 "../../binutils-2.13.1/gas/config/tc-ppc.c"
static const struct pd_reg pre_defined_registers[] =
{
  { "cr.0", 0 },
  { "cr.1", 1 },
  { "cr.2", 2 },
  { "cr.3", 3 },
  { "cr.4", 4 },
  { "cr.5", 5 },
  { "cr.6", 6 },
  { "cr.7", 7 },

  { "cr0", 0 },
  { "cr1", 1 },
  { "cr2", 2 },
  { "cr3", 3 },
  { "cr4", 4 },
  { "cr5", 5 },
  { "cr6", 6 },
  { "cr7", 7 },

  { "ctr", 9 },

  { "dar", 19 },
  { "dec", 22 },
  { "dsisr", 18 },

  { "f.0", 0 },
  { "f.1", 1 },
  { "f.10", 10 },
  { "f.11", 11 },
  { "f.12", 12 },
  { "f.13", 13 },
  { "f.14", 14 },
  { "f.15", 15 },
  { "f.16", 16 },
  { "f.17", 17 },
  { "f.18", 18 },
  { "f.19", 19 },
  { "f.2", 2 },
  { "f.20", 20 },
  { "f.21", 21 },
  { "f.22", 22 },
  { "f.23", 23 },
  { "f.24", 24 },
  { "f.25", 25 },
  { "f.26", 26 },
  { "f.27", 27 },
  { "f.28", 28 },
  { "f.29", 29 },
  { "f.3", 3 },
  { "f.30", 30 },
  { "f.31", 31 },
  { "f.4", 4 },
  { "f.5", 5 },
  { "f.6", 6 },
  { "f.7", 7 },
  { "f.8", 8 },
  { "f.9", 9 },

  { "f0", 0 },
  { "f1", 1 },
  { "f10", 10 },
  { "f11", 11 },
  { "f12", 12 },
  { "f13", 13 },
  { "f14", 14 },
  { "f15", 15 },
  { "f16", 16 },
  { "f17", 17 },
  { "f18", 18 },
  { "f19", 19 },
  { "f2", 2 },
  { "f20", 20 },
  { "f21", 21 },
  { "f22", 22 },
  { "f23", 23 },
  { "f24", 24 },
  { "f25", 25 },
  { "f26", 26 },
  { "f27", 27 },
  { "f28", 28 },
  { "f29", 29 },
  { "f3", 3 },
  { "f30", 30 },
  { "f31", 31 },
  { "f4", 4 },
  { "f5", 5 },
  { "f6", 6 },
  { "f7", 7 },
  { "f8", 8 },
  { "f9", 9 },

  { "fpscr", 0 },

  { "lr", 8 },

  { "pmr", 0 },

  { "r.0", 0 },
  { "r.1", 1 },
  { "r.10", 10 },
  { "r.11", 11 },
  { "r.12", 12 },
  { "r.13", 13 },
  { "r.14", 14 },
  { "r.15", 15 },
  { "r.16", 16 },
  { "r.17", 17 },
  { "r.18", 18 },
  { "r.19", 19 },
  { "r.2", 2 },
  { "r.20", 20 },
  { "r.21", 21 },
  { "r.22", 22 },
  { "r.23", 23 },
  { "r.24", 24 },
  { "r.25", 25 },
  { "r.26", 26 },
  { "r.27", 27 },
  { "r.28", 28 },
  { "r.29", 29 },
  { "r.3", 3 },
  { "r.30", 30 },
  { "r.31", 31 },
  { "r.4", 4 },
  { "r.5", 5 },
  { "r.6", 6 },
  { "r.7", 7 },
  { "r.8", 8 },
  { "r.9", 9 },

  { "r.sp", 1 },

  { "r.toc", 2 },

  { "r0", 0 },
  { "r1", 1 },
  { "r10", 10 },
  { "r11", 11 },
  { "r12", 12 },
  { "r13", 13 },
  { "r14", 14 },
  { "r15", 15 },
  { "r16", 16 },
  { "r17", 17 },
  { "r18", 18 },
  { "r19", 19 },
  { "r2", 2 },
  { "r20", 20 },
  { "r21", 21 },
  { "r22", 22 },
  { "r23", 23 },
  { "r24", 24 },
  { "r25", 25 },
  { "r26", 26 },
  { "r27", 27 },
  { "r28", 28 },
  { "r29", 29 },
  { "r3", 3 },
  { "r30", 30 },
  { "r31", 31 },
  { "r4", 4 },
  { "r5", 5 },
  { "r6", 6 },
  { "r7", 7 },
  { "r8", 8 },
  { "r9", 9 },

  { "rtoc", 2 },

  { "sdr1", 25 },

  { "sp", 1 },

  { "srr0", 26 },
  { "srr1", 27 },

  { "v.0", 0 },
  { "v.1", 1 },
  { "v.10", 10 },
  { "v.11", 11 },
  { "v.12", 12 },
  { "v.13", 13 },
  { "v.14", 14 },
  { "v.15", 15 },
  { "v.16", 16 },
  { "v.17", 17 },
  { "v.18", 18 },
  { "v.19", 19 },
  { "v.2", 2 },
  { "v.20", 20 },
  { "v.21", 21 },
  { "v.22", 22 },
  { "v.23", 23 },
  { "v.24", 24 },
  { "v.25", 25 },
  { "v.26", 26 },
  { "v.27", 27 },
  { "v.28", 28 },
  { "v.29", 29 },
  { "v.3", 3 },
  { "v.30", 30 },
  { "v.31", 31 },
  { "v.4", 4 },
  { "v.5", 5 },
  { "v.6", 6 },
  { "v.7", 7 },
  { "v.8", 8 },
  { "v.9", 9 },

  { "v0", 0 },
  { "v1", 1 },
  { "v10", 10 },
  { "v11", 11 },
  { "v12", 12 },
  { "v13", 13 },
  { "v14", 14 },
  { "v15", 15 },
  { "v16", 16 },
  { "v17", 17 },
  { "v18", 18 },
  { "v19", 19 },
  { "v2", 2 },
  { "v20", 20 },
  { "v21", 21 },
  { "v22", 22 },
  { "v23", 23 },
  { "v24", 24 },
  { "v25", 25 },
  { "v26", 26 },
  { "v27", 27 },
  { "v28", 28 },
  { "v29", 29 },
  { "v3", 3 },
  { "v30", 30 },
  { "v31", 31 },
  { "v4", 4 },
  { "v5", 5 },
  { "v6", 6 },
  { "v7", 7 },
  { "v8", 8 },
  { "v9", 9 },

  { "xer", 1 },

};






static int reg_name_search
  (const struct pd_reg *, int, const char * name);

static int
reg_name_search (regs, regcount, name)
     const struct pd_reg *regs;
     int regcount;
     const char *name;
{
  int middle, low, high;
  int cmp;

  low = 0;
  high = regcount - 1;

  do
    {
      middle = (low + high) / 2;
      cmp = strcasecmp (name, regs[middle].name);
      if (cmp < 0)
        high = middle - 1;
      else if (cmp > 0)
        low = middle + 1;
      else
        return regs[middle].value;
    }
  while (low <= high);

  return -1;
}
# 605 "../../binutils-2.13.1/gas/config/tc-ppc.c"
static boolean
register_name (expressionP)
     expressionS *expressionP;
{
  int reg_number;
  char *name;
  char *start;
  char c;


  start = name = input_line_pointer;
  if (name[0] == '%' && (_sch_istable[(name[1]) & 0xff] & (unsigned short)(_sch_isalpha)))
    name = ++input_line_pointer;

  else if (!reg_names_p || !(_sch_istable[(name[0]) & 0xff] & (unsigned short)(_sch_isalpha)))
    return false;

  c = get_symbol_end ();
  reg_number = reg_name_search (pre_defined_registers, (sizeof (pre_defined_registers) / sizeof (struct pd_reg)), name);


  *input_line_pointer = c;


  if (reg_number >= 0)
    {
      expressionP->X_op = O_register;
      expressionP->X_add_number = reg_number;


      expressionP->X_add_symbol = ((void *)0);
      expressionP->X_op_symbol = ((void *)0);
      return true;
    }


  input_line_pointer = start;
  return false;
}






static boolean cr_operand;


static const struct pd_reg cr_names[] =
{
  { "cr0", 0 },
  { "cr1", 1 },
  { "cr2", 2 },
  { "cr3", 3 },
  { "cr4", 4 },
  { "cr5", 5 },
  { "cr6", 6 },
  { "cr7", 7 },
  { "eq", 2 },
  { "gt", 1 },
  { "lt", 0 },
  { "so", 3 },
  { "un", 3 }
};




int
ppc_parse_name (name, expr)
     const char *name;
     expressionS *expr;
{
  int val;

  if (! cr_operand)
    return 0;

  val = reg_name_search (cr_names, sizeof cr_names / sizeof cr_names[0],
                         name);
  if (val < 0)
    return 0;

  expr->X_op = O_constant;
  expr->X_add_number = val;

  return 1;
}





static unsigned long ppc_cpu = 0;


static unsigned int ppc_obj64 = 32 == 64;


static struct hash_control *ppc_hash;


static struct hash_control *ppc_macro_hash;



static enum { SHLIB_NONE, SHLIB_PIC, SHLIB_MRELOCATABLE } shlib = SHLIB_NONE;


static flagword ppc_flags = 0;
# 723 "../../binutils-2.13.1/gas/config/tc-ppc.c"
static boolean msolaris = false;
# 789 "../../binutils-2.13.1/gas/config/tc-ppc.c"
symbolS *GOT_symbol;



const char *const md_shortopts = "b:l:usm:K:VQ:";



const struct option md_longopts[] = {
  {((void *)0), 0, ((void *)0), 0}
};
const size_t md_longopts_size = sizeof (md_longopts);

int
md_parse_option (c, arg)
     int c;
     char *arg;
{
  switch (c)
    {
    case 'u':


      break;


    case 'l':


      if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (arg) && __builtin_constant_p ("e") && (__s1_len = strlen (arg), __s2_len = strlen ("e"), (!((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("e") + 1) - (size_t)(const void *)("e") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (arg), (__const char *) ("e"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) && (__s1_len = strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("e") && ((size_t)(const void *)(("e") + 1) - (size_t)(const void *)("e") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("e"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("e"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("e"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("e"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("e"); register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("e") && ((size_t)(const void *)(("e") + 1) - (size_t)(const void *)("e") == 1) && (__s2_len = strlen ("e"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("e"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("e"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("e"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("e"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (arg); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("e"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("e"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("e"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("e"))[3]); } } __result; }))) : strcmp (arg, "e")))); }) == 0)
        {
          target_big_endian = 0;
          set_target_endian = 1;
        }
      else
        return 0;

      break;

    case 'b':
      if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (arg) && __builtin_constant_p ("e") && (__s1_len = strlen (arg), __s2_len = strlen ("e"), (!((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("e") + 1) - (size_t)(const void *)("e") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (arg), (__const char *) ("e"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) && (__s1_len = strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("e") && ((size_t)(const void *)(("e") + 1) - (size_t)(const void *)("e") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("e"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("e"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("e"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("e"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("e"); register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("e") && ((size_t)(const void *)(("e") + 1) - (size_t)(const void *)("e") == 1) && (__s2_len = strlen ("e"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("e"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("e"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("e"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("e"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (arg); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("e"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("e"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("e"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("e"))[3]); } } __result; }))) : strcmp (arg, "e")))); }) == 0)
        {
          target_big_endian = 1;
          set_target_endian = 1;
        }
      else
        return 0;

      break;

    case 'K':

      if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (arg) && __builtin_constant_p ("PIC") && (__s1_len = strlen (arg), __s2_len = strlen ("PIC"), (!((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("PIC") + 1) - (size_t)(const void *)("PIC") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (arg), (__const char *) ("PIC"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) && (__s1_len = strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("PIC") && ((size_t)(const void *)(("PIC") + 1) - (size_t)(const void *)("PIC") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("PIC"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("PIC"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("PIC"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("PIC"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("PIC"); register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("PIC") && ((size_t)(const void *)(("PIC") + 1) - (size_t)(const void *)("PIC") == 1) && (__s2_len = strlen ("PIC"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("PIC"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("PIC"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("PIC"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("PIC"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (arg); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("PIC"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("PIC"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("PIC"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("PIC"))[3]); } } __result; }))) : strcmp (arg, "PIC")))); }) == 0 || __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (arg) && __builtin_constant_p ("pic") && (__s1_len = strlen (arg), __s2_len = strlen ("pic"), (!((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("pic") + 1) - (size_t)(const void *)("pic") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (arg), (__const char *) ("pic"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) && (__s1_len = strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("pic") && ((size_t)(const void *)(("pic") + 1) - (size_t)(const void *)("pic") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("pic"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("pic"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("pic"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("pic"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("pic"); register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("pic") && ((size_t)(const void *)(("pic") + 1) - (size_t)(const void *)("pic") == 1) && (__s2_len = strlen ("pic"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("pic"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("pic"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("pic"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("pic"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (arg); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("pic"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("pic"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("pic"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("pic"))[3]); } } __result; }))) : strcmp (arg, "pic")))); }) == 0)
        {
          shlib = SHLIB_PIC;
          ppc_flags |= 0x00008000;
        }
      else
        return 0;

      break;



    case 'a':
      if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (arg) && __builtin_constant_p ("64") && (__s1_len = strlen (arg), __s2_len = strlen ("64"), (!((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("64") + 1) - (size_t)(const void *)("64") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (arg), (__const char *) ("64"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) && (__s1_len = strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("64") && ((size_t)(const void *)(("64") + 1) - (size_t)(const void *)("64") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("64"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("64"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("64"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("64"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("64"); register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("64") && ((size_t)(const void *)(("64") + 1) - (size_t)(const void *)("64") == 1) && (__s2_len = strlen ("64"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("64"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("64"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("64"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("64"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (arg); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("64"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("64"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("64"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("64"))[3]); } } __result; }))) : strcmp (arg, "64")))); }) == 0)
        ppc_obj64 = 1;
      else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (arg) && __builtin_constant_p ("32") && (__s1_len = strlen (arg), __s2_len = strlen ("32"), (!((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("32") + 1) - (size_t)(const void *)("32") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (arg), (__const char *) ("32"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) && (__s1_len = strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("32") && ((size_t)(const void *)(("32") + 1) - (size_t)(const void *)("32") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("32"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("32"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("32"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("32"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("32"); register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("32") && ((size_t)(const void *)(("32") + 1) - (size_t)(const void *)("32") == 1) && (__s2_len = strlen ("32"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("32"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("32"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("32"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("32"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (arg); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("32"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("32"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("32"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("32"))[3]); } } __result; }))) : strcmp (arg, "32")))); }) == 0)
        ppc_obj64 = 0;
      else
        return 0;
      break;

    case 'm':


      if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (arg) && __builtin_constant_p ("pwrx") && (__s1_len = strlen (arg), __s2_len = strlen ("pwrx"), (!((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("pwrx") + 1) - (size_t)(const void *)("pwrx") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (arg), (__const char *) ("pwrx"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) && (__s1_len = strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("pwrx") && ((size_t)(const void *)(("pwrx") + 1) - (size_t)(const void *)("pwrx") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("pwrx"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("pwrx"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("pwrx"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("pwrx"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("pwrx"); register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("pwrx") && ((size_t)(const void *)(("pwrx") + 1) - (size_t)(const void *)("pwrx") == 1) && (__s2_len = strlen ("pwrx"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("pwrx"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("pwrx"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("pwrx"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("pwrx"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (arg); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("pwrx"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("pwrx"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("pwrx"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("pwrx"))[3]); } } __result; }))) : strcmp (arg, "pwrx")))); }) == 0 || __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (arg) && __builtin_constant_p ("pwr2") && (__s1_len = strlen (arg), __s2_len = strlen ("pwr2"), (!((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("pwr2") + 1) - (size_t)(const void *)("pwr2") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (arg), (__const char *) ("pwr2"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) && (__s1_len = strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("pwr2") && ((size_t)(const void *)(("pwr2") + 1) - (size_t)(const void *)("pwr2") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("pwr2"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("pwr2"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("pwr2"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("pwr2"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("pwr2"); register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("pwr2") && ((size_t)(const void *)(("pwr2") + 1) - (size_t)(const void *)("pwr2") == 1) && (__s2_len = strlen ("pwr2"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("pwr2"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("pwr2"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("pwr2"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("pwr2"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (arg); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("pwr2"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("pwr2"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("pwr2"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("pwr2"))[3]); } } __result; }))) : strcmp (arg, "pwr2")))); }) == 0)
        ppc_cpu = (02) | (04) | (010);

      else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (arg) && __builtin_constant_p ("pwr") && (__s1_len = strlen (arg), __s2_len = strlen ("pwr"), (!((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("pwr") + 1) - (size_t)(const void *)("pwr") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (arg), (__const char *) ("pwr"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) && (__s1_len = strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("pwr") && ((size_t)(const void *)(("pwr") + 1) - (size_t)(const void *)("pwr") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("pwr"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("pwr"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("pwr"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("pwr"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("pwr"); register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("pwr") && ((size_t)(const void *)(("pwr") + 1) - (size_t)(const void *)("pwr") == 1) && (__s2_len = strlen ("pwr"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("pwr"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("pwr"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("pwr"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("pwr"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (arg); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("pwr"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("pwr"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("pwr"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("pwr"))[3]); } } __result; }))) : strcmp (arg, "pwr")))); }) == 0)
        ppc_cpu = (02) | (010);


      else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (arg) && __builtin_constant_p ("601") && (__s1_len = strlen (arg), __s2_len = strlen ("601"), (!((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("601") + 1) - (size_t)(const void *)("601") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (arg), (__const char *) ("601"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) && (__s1_len = strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("601") && ((size_t)(const void *)(("601") + 1) - (size_t)(const void *)("601") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("601"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("601"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("601"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("601"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("601"); register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("601") && ((size_t)(const void *)(("601") + 1) - (size_t)(const void *)("601") == 1) && (__s2_len = strlen ("601"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("601"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("601"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("601"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("601"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (arg); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("601"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("601"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("601"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("601"))[3]); } } __result; }))) : strcmp (arg, "601")))); }) == 0)
        ppc_cpu = (01) | (040) | (010);


      else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (arg) && __builtin_constant_p ("ppc") && (__s1_len = strlen (arg), __s2_len = strlen ("ppc"), (!((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("ppc") + 1) - (size_t)(const void *)("ppc") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (arg), (__const char *) ("ppc"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) && (__s1_len = strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("ppc") && ((size_t)(const void *)(("ppc") + 1) - (size_t)(const void *)("ppc") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("ppc"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("ppc"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("ppc"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("ppc"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("ppc"); register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("ppc") && ((size_t)(const void *)(("ppc") + 1) - (size_t)(const void *)("ppc") == 1) && (__s2_len = strlen ("ppc"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("ppc"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("ppc"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("ppc"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("ppc"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (arg); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("ppc"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("ppc"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("ppc"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("ppc"))[3]); } } __result; }))) : strcmp (arg, "ppc")))); }) == 0
               || __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (arg) && __builtin_constant_p ("ppc32") && (__s1_len = strlen (arg), __s2_len = strlen ("ppc32"), (!((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("ppc32") + 1) - (size_t)(const void *)("ppc32") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (arg), (__const char *) ("ppc32"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) && (__s1_len = strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("ppc32") && ((size_t)(const void *)(("ppc32") + 1) - (size_t)(const void *)("ppc32") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("ppc32"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("ppc32"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("ppc32"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("ppc32"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("ppc32"); register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("ppc32") && ((size_t)(const void *)(("ppc32") + 1) - (size_t)(const void *)("ppc32") == 1) && (__s2_len = strlen ("ppc32"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("ppc32"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("ppc32"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("ppc32"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("ppc32"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (arg); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("ppc32"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("ppc32"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("ppc32"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("ppc32"))[3]); } } __result; }))) : strcmp (arg, "ppc32")))); }) == 0
               || __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (arg) && __builtin_constant_p ("603") && (__s1_len = strlen (arg), __s2_len = strlen ("603"), (!((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("603") + 1) - (size_t)(const void *)("603") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (arg), (__const char *) ("603"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) && (__s1_len = strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("603") && ((size_t)(const void *)(("603") + 1) - (size_t)(const void *)("603") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("603"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("603"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("603"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("603"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("603"); register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("603") && ((size_t)(const void *)(("603") + 1) - (size_t)(const void *)("603") == 1) && (__s2_len = strlen ("603"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("603"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("603"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("603"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("603"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (arg); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("603"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("603"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("603"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("603"))[3]); } } __result; }))) : strcmp (arg, "603")))); }) == 0
               || __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (arg) && __builtin_constant_p ("604") && (__s1_len = strlen (arg), __s2_len = strlen ("604"), (!((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("604") + 1) - (size_t)(const void *)("604") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (arg), (__const char *) ("604"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) && (__s1_len = strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("604") && ((size_t)(const void *)(("604") + 1) - (size_t)(const void *)("604") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("604"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("604"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("604"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("604"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("604"); register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("604") && ((size_t)(const void *)(("604") + 1) - (size_t)(const void *)("604") == 1) && (__s2_len = strlen ("604"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("604"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("604"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("604"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("604"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (arg); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("604"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("604"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("604"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("604"))[3]); } } __result; }))) : strcmp (arg, "604")))); }) == 0)
        ppc_cpu = (01) | (010);

      else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (arg) && __builtin_constant_p ("403") && (__s1_len = strlen (arg), __s2_len = strlen ("403"), (!((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("403") + 1) - (size_t)(const void *)("403") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (arg), (__const char *) ("403"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) && (__s1_len = strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("403") && ((size_t)(const void *)(("403") + 1) - (size_t)(const void *)("403") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("403"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("403"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("403"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("403"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("403"); register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("403") && ((size_t)(const void *)(("403") + 1) - (size_t)(const void *)("403") == 1) && (__s2_len = strlen ("403"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("403"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("403"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("403"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("403"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (arg); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("403"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("403"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("403"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("403"))[3]); } } __result; }))) : strcmp (arg, "403")))); }) == 0
               || __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (arg) && __builtin_constant_p ("405") && (__s1_len = strlen (arg), __s2_len = strlen ("405"), (!((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("405") + 1) - (size_t)(const void *)("405") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (arg), (__const char *) ("405"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) && (__s1_len = strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("405") && ((size_t)(const void *)(("405") + 1) - (size_t)(const void *)("405") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("405"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("405"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("405"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("405"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("405"); register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("405") && ((size_t)(const void *)(("405") + 1) - (size_t)(const void *)("405") == 1) && (__s2_len = strlen ("405"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("405"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("405"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("405"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("405"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (arg); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("405"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("405"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("405"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("405"))[3]); } } __result; }))) : strcmp (arg, "405")))); }) == 0)
        ppc_cpu = (01) | (02000) | (010);
      else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (arg) && __builtin_constant_p ("7400") && (__s1_len = strlen (arg), __s2_len = strlen ("7400"), (!((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("7400") + 1) - (size_t)(const void *)("7400") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (arg), (__const char *) ("7400"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) && (__s1_len = strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("7400") && ((size_t)(const void *)(("7400") + 1) - (size_t)(const void *)("7400") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("7400"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("7400"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("7400"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("7400"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("7400"); register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("7400") && ((size_t)(const void *)(("7400") + 1) - (size_t)(const void *)("7400") == 1) && (__s2_len = strlen ("7400"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("7400"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("7400"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("7400"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("7400"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (arg); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("7400"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("7400"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("7400"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("7400"))[3]); } } __result; }))) : strcmp (arg, "7400")))); }) == 0
               || __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (arg) && __builtin_constant_p ("7410") && (__s1_len = strlen (arg), __s2_len = strlen ("7410"), (!((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("7410") + 1) - (size_t)(const void *)("7410") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (arg), (__const char *) ("7410"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) && (__s1_len = strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("7410") && ((size_t)(const void *)(("7410") + 1) - (size_t)(const void *)("7410") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("7410"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("7410"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("7410"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("7410"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("7410"); register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("7410") && ((size_t)(const void *)(("7410") + 1) - (size_t)(const void *)("7410") == 1) && (__s2_len = strlen ("7410"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("7410"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("7410"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("7410"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("7410"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (arg); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("7410"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("7410"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("7410"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("7410"))[3]); } } __result; }))) : strcmp (arg, "7410")))); }) == 0
               || __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (arg) && __builtin_constant_p ("7450") && (__s1_len = strlen (arg), __s2_len = strlen ("7450"), (!((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("7450") + 1) - (size_t)(const void *)("7450") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (arg), (__const char *) ("7450"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) && (__s1_len = strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("7450") && ((size_t)(const void *)(("7450") + 1) - (size_t)(const void *)("7450") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("7450"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("7450"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("7450"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("7450"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("7450"); register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("7450") && ((size_t)(const void *)(("7450") + 1) - (size_t)(const void *)("7450") == 1) && (__s2_len = strlen ("7450"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("7450"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("7450"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("7450"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("7450"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (arg); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("7450"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("7450"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("7450"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("7450"))[3]); } } __result; }))) : strcmp (arg, "7450")))); }) == 0
               || __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (arg) && __builtin_constant_p ("7455") && (__s1_len = strlen (arg), __s2_len = strlen ("7455"), (!((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("7455") + 1) - (size_t)(const void *)("7455") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (arg), (__const char *) ("7455"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) && (__s1_len = strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("7455") && ((size_t)(const void *)(("7455") + 1) - (size_t)(const void *)("7455") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("7455"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("7455"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("7455"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("7455"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("7455"); register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("7455") && ((size_t)(const void *)(("7455") + 1) - (size_t)(const void *)("7455") == 1) && (__s2_len = strlen ("7455"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("7455"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("7455"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("7455"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("7455"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (arg); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("7455"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("7455"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("7455"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("7455"))[3]); } } __result; }))) : strcmp (arg, "7455")))); }) == 0)
        ppc_cpu = (01) | (01000) | (010);
      else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (arg) && __builtin_constant_p ("altivec") && (__s1_len = strlen (arg), __s2_len = strlen ("altivec"), (!((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("altivec") + 1) - (size_t)(const void *)("altivec") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (arg), (__const char *) ("altivec"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) && (__s1_len = strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("altivec") && ((size_t)(const void *)(("altivec") + 1) - (size_t)(const void *)("altivec") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("altivec"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("altivec"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("altivec"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("altivec"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("altivec"); register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("altivec") && ((size_t)(const void *)(("altivec") + 1) - (size_t)(const void *)("altivec") == 1) && (__s2_len = strlen ("altivec"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("altivec"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("altivec"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("altivec"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("altivec"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (arg); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("altivec"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("altivec"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("altivec"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("altivec"))[3]); } } __result; }))) : strcmp (arg, "altivec")))); }) == 0)
        {
          if (ppc_cpu == 0)
            ppc_cpu = (01) | (01000);
          else
            ppc_cpu |= (01000);
        }


      else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (arg) && __builtin_constant_p ("ppc64") && (__s1_len = strlen (arg), __s2_len = strlen ("ppc64"), (!((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("ppc64") + 1) - (size_t)(const void *)("ppc64") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (arg), (__const char *) ("ppc64"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) && (__s1_len = strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("ppc64") && ((size_t)(const void *)(("ppc64") + 1) - (size_t)(const void *)("ppc64") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("ppc64"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("ppc64"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("ppc64"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("ppc64"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("ppc64"); register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("ppc64") && ((size_t)(const void *)(("ppc64") + 1) - (size_t)(const void *)("ppc64") == 1) && (__s2_len = strlen ("ppc64"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("ppc64"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("ppc64"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("ppc64"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("ppc64"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (arg); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("ppc64"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("ppc64"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("ppc64"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("ppc64"))[3]); } } __result; }))) : strcmp (arg, "ppc64")))); }) == 0 || __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (arg) && __builtin_constant_p ("620") && (__s1_len = strlen (arg), __s2_len = strlen ("620"), (!((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("620") + 1) - (size_t)(const void *)("620") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (arg), (__const char *) ("620"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) && (__s1_len = strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("620") && ((size_t)(const void *)(("620") + 1) - (size_t)(const void *)("620") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("620"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("620"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("620"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("620"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("620"); register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("620") && ((size_t)(const void *)(("620") + 1) - (size_t)(const void *)("620") == 1) && (__s2_len = strlen ("620"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("620"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("620"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("620"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("620"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (arg); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("620"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("620"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("620"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("620"))[3]); } } __result; }))) : strcmp (arg, "620")))); }) == 0)
        {
          ppc_cpu = (01) | (020);
        }
      else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (arg) && __builtin_constant_p ("ppc64bridge") && (__s1_len = strlen (arg), __s2_len = strlen ("ppc64bridge"), (!((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("ppc64bridge") + 1) - (size_t)(const void *)("ppc64bridge") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (arg), (__const char *) ("ppc64bridge"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) && (__s1_len = strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("ppc64bridge") && ((size_t)(const void *)(("ppc64bridge") + 1) - (size_t)(const void *)("ppc64bridge") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("ppc64bridge"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("ppc64bridge"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("ppc64bridge"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("ppc64bridge"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("ppc64bridge"); register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("ppc64bridge") && ((size_t)(const void *)(("ppc64bridge") + 1) - (size_t)(const void *)("ppc64bridge") == 1) && (__s2_len = strlen ("ppc64bridge"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("ppc64bridge"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("ppc64bridge"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("ppc64bridge"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("ppc64bridge"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (arg); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("ppc64bridge"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("ppc64bridge"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("ppc64bridge"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("ppc64bridge"))[3]); } } __result; }))) : strcmp (arg, "ppc64bridge")))); }) == 0)
        {
          ppc_cpu = (01) | (0400) | (020);
        }

      else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (arg) && __builtin_constant_p ("booke") && (__s1_len = strlen (arg), __s2_len = strlen ("booke"), (!((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("booke") + 1) - (size_t)(const void *)("booke") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (arg), (__const char *) ("booke"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) && (__s1_len = strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("booke") && ((size_t)(const void *)(("booke") + 1) - (size_t)(const void *)("booke") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("booke"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("booke"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("booke"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("booke"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("booke"); register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("booke") && ((size_t)(const void *)(("booke") + 1) - (size_t)(const void *)("booke") == 1) && (__s2_len = strlen ("booke"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("booke"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("booke"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("booke"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("booke"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (arg); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("booke"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("booke"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("booke"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("booke"))[3]); } } __result; }))) : strcmp (arg, "booke")))); }) == 0 || __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (arg) && __builtin_constant_p ("booke32") && (__s1_len = strlen (arg), __s2_len = strlen ("booke32"), (!((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("booke32") + 1) - (size_t)(const void *)("booke32") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (arg), (__const char *) ("booke32"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) && (__s1_len = strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("booke32") && ((size_t)(const void *)(("booke32") + 1) - (size_t)(const void *)("booke32") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("booke32"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("booke32"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("booke32"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("booke32"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("booke32"); register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("booke32") && ((size_t)(const void *)(("booke32") + 1) - (size_t)(const void *)("booke32") == 1) && (__s2_len = strlen ("booke32"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("booke32"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("booke32"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("booke32"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("booke32"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (arg); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("booke32"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("booke32"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("booke32"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("booke32"))[3]); } } __result; }))) : strcmp (arg, "booke32")))); }) == 0)
        ppc_cpu = (01) | (04000) | (010);

      else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (arg) && __builtin_constant_p ("booke64") && (__s1_len = strlen (arg), __s2_len = strlen ("booke64"), (!((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("booke64") + 1) - (size_t)(const void *)("booke64") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (arg), (__const char *) ("booke64"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) && (__s1_len = strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("booke64") && ((size_t)(const void *)(("booke64") + 1) - (size_t)(const void *)("booke64") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("booke64"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("booke64"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("booke64"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("booke64"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("booke64"); register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("booke64") && ((size_t)(const void *)(("booke64") + 1) - (size_t)(const void *)("booke64") == 1) && (__s2_len = strlen ("booke64"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("booke64"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("booke64"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("booke64"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("booke64"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (arg); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("booke64"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("booke64"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("booke64"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("booke64"))[3]); } } __result; }))) : strcmp (arg, "booke64")))); }) == 0)
        {
          ppc_cpu = (01) | (04000) |
                    (010000) | (020);
        }
      else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (arg) && __builtin_constant_p ("power4") && (__s1_len = strlen (arg), __s2_len = strlen ("power4"), (!((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("power4") + 1) - (size_t)(const void *)("power4") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (arg), (__const char *) ("power4"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) && (__s1_len = strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("power4") && ((size_t)(const void *)(("power4") + 1) - (size_t)(const void *)("power4") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("power4"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("power4"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("power4"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("power4"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("power4"); register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("power4") && ((size_t)(const void *)(("power4") + 1) - (size_t)(const void *)("power4") == 1) && (__s2_len = strlen ("power4"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("power4"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("power4"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("power4"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("power4"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (arg); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("power4"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("power4"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("power4"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("power4"))[3]); } } __result; }))) : strcmp (arg, "power4")))); }) == 0)
        {
          ppc_cpu = (01) | (020) | (020000);
        }



      else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (arg) && __builtin_constant_p ("com") && (__s1_len = strlen (arg), __s2_len = strlen ("com"), (!((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("com") + 1) - (size_t)(const void *)("com") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (arg), (__const char *) ("com"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) && (__s1_len = strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("com") && ((size_t)(const void *)(("com") + 1) - (size_t)(const void *)("com") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("com"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("com"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("com"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("com"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("com"); register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("com") && ((size_t)(const void *)(("com") + 1) - (size_t)(const void *)("com") == 1) && (__s2_len = strlen ("com"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("com"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("com"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("com"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("com"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (arg); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("com"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("com"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("com"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("com"))[3]); } } __result; }))) : strcmp (arg, "com")))); }) == 0)
        ppc_cpu = (0100) | (010);

      else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (arg) && __builtin_constant_p ("any") && (__s1_len = strlen (arg), __s2_len = strlen ("any"), (!((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("any") + 1) - (size_t)(const void *)("any") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (arg), (__const char *) ("any"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) && (__s1_len = strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("any") && ((size_t)(const void *)(("any") + 1) - (size_t)(const void *)("any") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("any"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("any"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("any"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("any"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("any"); register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("any") && ((size_t)(const void *)(("any") + 1) - (size_t)(const void *)("any") == 1) && (__s2_len = strlen ("any"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("any"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("any"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("any"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("any"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (arg); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("any"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("any"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("any"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("any"))[3]); } } __result; }))) : strcmp (arg, "any")))); }) == 0)
        ppc_cpu = (0200) | (010);

      else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (arg) && __builtin_constant_p ("regnames") && (__s1_len = strlen (arg), __s2_len = strlen ("regnames"), (!((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("regnames") + 1) - (size_t)(const void *)("regnames") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (arg), (__const char *) ("regnames"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) && (__s1_len = strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("regnames") && ((size_t)(const void *)(("regnames") + 1) - (size_t)(const void *)("regnames") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("regnames"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("regnames"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("regnames"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("regnames"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("regnames"); register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("regnames") && ((size_t)(const void *)(("regnames") + 1) - (size_t)(const void *)("regnames") == 1) && (__s2_len = strlen ("regnames"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("regnames"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("regnames"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("regnames"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("regnames"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (arg); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("regnames"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("regnames"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("regnames"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("regnames"))[3]); } } __result; }))) : strcmp (arg, "regnames")))); }) == 0)
        reg_names_p = true;

      else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (arg) && __builtin_constant_p ("no-regnames") && (__s1_len = strlen (arg), __s2_len = strlen ("no-regnames"), (!((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("no-regnames") + 1) - (size_t)(const void *)("no-regnames") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (arg), (__const char *) ("no-regnames"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) && (__s1_len = strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("no-regnames") && ((size_t)(const void *)(("no-regnames") + 1) - (size_t)(const void *)("no-regnames") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("no-regnames"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("no-regnames"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("no-regnames"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("no-regnames"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("no-regnames"); register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("no-regnames") && ((size_t)(const void *)(("no-regnames") + 1) - (size_t)(const void *)("no-regnames") == 1) && (__s2_len = strlen ("no-regnames"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("no-regnames"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("no-regnames"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("no-regnames"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("no-regnames"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (arg); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("no-regnames"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("no-regnames"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("no-regnames"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("no-regnames"))[3]); } } __result; }))) : strcmp (arg, "no-regnames")))); }) == 0)
        reg_names_p = false;




      else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (arg) && __builtin_constant_p ("relocatable") && (__s1_len = strlen (arg), __s2_len = strlen ("relocatable"), (!((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("relocatable") + 1) - (size_t)(const void *)("relocatable") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (arg), (__const char *) ("relocatable"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) && (__s1_len = strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("relocatable") && ((size_t)(const void *)(("relocatable") + 1) - (size_t)(const void *)("relocatable") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("relocatable"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("relocatable"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("relocatable"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("relocatable"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("relocatable"); register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("relocatable") && ((size_t)(const void *)(("relocatable") + 1) - (size_t)(const void *)("relocatable") == 1) && (__s2_len = strlen ("relocatable"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("relocatable"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("relocatable"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("relocatable"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("relocatable"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (arg); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("relocatable"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("relocatable"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("relocatable"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("relocatable"))[3]); } } __result; }))) : strcmp (arg, "relocatable")))); }) == 0)
        {
          shlib = SHLIB_MRELOCATABLE;
          ppc_flags |= 0x00010000;
        }

      else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (arg) && __builtin_constant_p ("relocatable-lib") && (__s1_len = strlen (arg), __s2_len = strlen ("relocatable-lib"), (!((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("relocatable-lib") + 1) - (size_t)(const void *)("relocatable-lib") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (arg), (__const char *) ("relocatable-lib"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) && (__s1_len = strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("relocatable-lib") && ((size_t)(const void *)(("relocatable-lib") + 1) - (size_t)(const void *)("relocatable-lib") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("relocatable-lib"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("relocatable-lib"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("relocatable-lib"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("relocatable-lib"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("relocatable-lib"); register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("relocatable-lib") && ((size_t)(const void *)(("relocatable-lib") + 1) - (size_t)(const void *)("relocatable-lib") == 1) && (__s2_len = strlen ("relocatable-lib"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("relocatable-lib"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("relocatable-lib"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("relocatable-lib"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("relocatable-lib"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (arg); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("relocatable-lib"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("relocatable-lib"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("relocatable-lib"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("relocatable-lib"))[3]); } } __result; }))) : strcmp (arg, "relocatable-lib")))); }) == 0)
        {
          shlib = SHLIB_MRELOCATABLE;
          ppc_flags |= 0x00008000;
        }


      else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (arg) && __builtin_constant_p ("emb") && (__s1_len = strlen (arg), __s2_len = strlen ("emb"), (!((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("emb") + 1) - (size_t)(const void *)("emb") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (arg), (__const char *) ("emb"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) && (__s1_len = strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("emb") && ((size_t)(const void *)(("emb") + 1) - (size_t)(const void *)("emb") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("emb"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("emb"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("emb"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("emb"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("emb"); register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("emb") && ((size_t)(const void *)(("emb") + 1) - (size_t)(const void *)("emb") == 1) && (__s2_len = strlen ("emb"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("emb"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("emb"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("emb"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("emb"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (arg); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("emb"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("emb"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("emb"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("emb"))[3]); } } __result; }))) : strcmp (arg, "emb")))); }) == 0)
        ppc_flags |= 0x80000000;


      else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (arg) && __builtin_constant_p ("little") && (__s1_len = strlen (arg), __s2_len = strlen ("little"), (!((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("little") + 1) - (size_t)(const void *)("little") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (arg), (__const char *) ("little"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) && (__s1_len = strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("little") && ((size_t)(const void *)(("little") + 1) - (size_t)(const void *)("little") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("little"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("little"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("little"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("little"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("little"); register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("little") && ((size_t)(const void *)(("little") + 1) - (size_t)(const void *)("little") == 1) && (__s2_len = strlen ("little"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("little"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("little"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("little"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("little"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (arg); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("little"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("little"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("little"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("little"))[3]); } } __result; }))) : strcmp (arg, "little")))); }) == 0
               || __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (arg) && __builtin_constant_p ("little-endian") && (__s1_len = strlen (arg), __s2_len = strlen ("little-endian"), (!((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("little-endian") + 1) - (size_t)(const void *)("little-endian") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (arg), (__const char *) ("little-endian"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) && (__s1_len = strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("little-endian") && ((size_t)(const void *)(("little-endian") + 1) - (size_t)(const void *)("little-endian") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("little-endian"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("little-endian"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("little-endian"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("little-endian"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("little-endian"); register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("little-endian") && ((size_t)(const void *)(("little-endian") + 1) - (size_t)(const void *)("little-endian") == 1) && (__s2_len = strlen ("little-endian"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("little-endian"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("little-endian"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("little-endian"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("little-endian"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (arg); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("little-endian"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("little-endian"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("little-endian"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("little-endian"))[3]); } } __result; }))) : strcmp (arg, "little-endian")))); }) == 0)
        {
          target_big_endian = 0;
          set_target_endian = 1;
        }

      else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (arg) && __builtin_constant_p ("big") && (__s1_len = strlen (arg), __s2_len = strlen ("big"), (!((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("big") + 1) - (size_t)(const void *)("big") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (arg), (__const char *) ("big"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) && (__s1_len = strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("big") && ((size_t)(const void *)(("big") + 1) - (size_t)(const void *)("big") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("big"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("big"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("big"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("big"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("big"); register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("big") && ((size_t)(const void *)(("big") + 1) - (size_t)(const void *)("big") == 1) && (__s2_len = strlen ("big"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("big"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("big"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("big"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("big"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (arg); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("big"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("big"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("big"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("big"))[3]); } } __result; }))) : strcmp (arg, "big")))); }) == 0 || __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (arg) && __builtin_constant_p ("big-endian") && (__s1_len = strlen (arg), __s2_len = strlen ("big-endian"), (!((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("big-endian") + 1) - (size_t)(const void *)("big-endian") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (arg), (__const char *) ("big-endian"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) && (__s1_len = strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("big-endian") && ((size_t)(const void *)(("big-endian") + 1) - (size_t)(const void *)("big-endian") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("big-endian"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("big-endian"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("big-endian"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("big-endian"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("big-endian"); register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("big-endian") && ((size_t)(const void *)(("big-endian") + 1) - (size_t)(const void *)("big-endian") == 1) && (__s2_len = strlen ("big-endian"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("big-endian"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("big-endian"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("big-endian"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("big-endian"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (arg); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("big-endian"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("big-endian"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("big-endian"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("big-endian"))[3]); } } __result; }))) : strcmp (arg, "big-endian")))); }) == 0)
        {
          target_big_endian = 1;
          set_target_endian = 1;
        }

      else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (arg) && __builtin_constant_p ("solaris") && (__s1_len = strlen (arg), __s2_len = strlen ("solaris"), (!((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("solaris") + 1) - (size_t)(const void *)("solaris") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (arg), (__const char *) ("solaris"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) && (__s1_len = strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("solaris") && ((size_t)(const void *)(("solaris") + 1) - (size_t)(const void *)("solaris") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("solaris"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("solaris"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("solaris"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("solaris"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("solaris"); register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("solaris") && ((size_t)(const void *)(("solaris") + 1) - (size_t)(const void *)("solaris") == 1) && (__s2_len = strlen ("solaris"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("solaris"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("solaris"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("solaris"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("solaris"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (arg); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("solaris"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("solaris"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("solaris"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("solaris"))[3]); } } __result; }))) : strcmp (arg, "solaris")))); }) == 0)
        {
          msolaris = true;
          ppc_comment_chars = ppc_solaris_comment_chars;
        }

      else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (arg) && __builtin_constant_p ("no-solaris") && (__s1_len = strlen (arg), __s2_len = strlen ("no-solaris"), (!((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("no-solaris") + 1) - (size_t)(const void *)("no-solaris") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (arg), (__const char *) ("no-solaris"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) && (__s1_len = strlen (arg), __s1_len < 4) ? (__builtin_constant_p ("no-solaris") && ((size_t)(const void *)(("no-solaris") + 1) - (size_t)(const void *)("no-solaris") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("no-solaris"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("no-solaris"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("no-solaris"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("no-solaris"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("no-solaris"); register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("no-solaris") && ((size_t)(const void *)(("no-solaris") + 1) - (size_t)(const void *)("no-solaris") == 1) && (__s2_len = strlen ("no-solaris"), __s2_len < 4) ? (__builtin_constant_p (arg) && ((size_t)(const void *)((arg) + 1) - (size_t)(const void *)(arg) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (arg))[0] - ((__const unsigned char *) (__const char *)("no-solaris"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[1] - ((__const unsigned char *) (__const char *) ("no-solaris"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (arg))[2] - ((__const unsigned char *) (__const char *) ("no-solaris"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (arg))[3] - ((__const unsigned char *) (__const char *) ("no-solaris"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (arg); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("no-solaris"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("no-solaris"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("no-solaris"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("no-solaris"))[3]); } } __result; }))) : strcmp (arg, "no-solaris")))); }) == 0)
        {
          msolaris = false;
          ppc_comment_chars = ppc_eabi_comment_chars;
        }

      else
        {
          as_bad (dcgettext (((void *)0), "invalid switch -m%s", __LC_MESSAGES), arg);
          return 0;
        }
      break;



    case 'V':
      print_version_id ();
      break;



    case 'Q':
      break;




    case 's':
      if (arg)
        return 0;

      break;


    default:
      return 0;
    }

  return 1;
}

void
md_show_usage (stream)
     FILE *stream;
{
  fprintf (stream, dcgettext (((void *)0), "PowerPC options:\n-u			ignored\n-mpwrx, -mpwr2		generate code for POWER/2 (RIOS2)\n-mpwr			generate code for POWER (RIOS1)\n-m601			generate code for PowerPC 601\n-mppc, -mppc32, -m603, -m604\n			generate code for PowerPC 603/604\n-m403, -m405            generate code for PowerPC 403/405\n-m7400, -m7410, -m7450, -m7455\n			generate code For PowerPC 7400/7410/7450/7455\n-mppc64, -m620		generate code for PowerPC 620/625/630\n-mppc64bridge		generate code for PowerPC 64, including bridge insns\n-mbooke64		generate code for 64-bit PowerPC BookE\n-mbooke, mbooke32	generate code for 32-bit PowerPC BookE\n-mpower4		generate code for Power4 architecture\n-maltivec		generate code for AltiVec\n-mcom			generate code Power/PowerPC common instructions\n-many			generate code for any architecture (PWR/PWRX/PPC)\n-mregnames		Allow symbolic names for registers\n-mno-regnames		Do not allow symbolic names for registers\n", __LC_MESSAGES));
# 1041 "../../binutils-2.13.1/gas/config/tc-ppc.c"
  fprintf (stream, dcgettext (((void *)0), "-mrelocatable		support for GCC's -mrelocatble option\n-mrelocatable-lib	support for GCC's -mrelocatble-lib option\n-memb			set PPC_EMB bit in ELF flags\n-mlittle, -mlittle-endian\n			generate code for a little endian machine\n-mbig, -mbig-endian	generate code for a big endian machine\n-msolaris		generate code for Solaris\n-mno-solaris		do not generate code for Solaris\n-V			print assembler version number\n-Qy, -Qn		ignored\n", __LC_MESSAGES));
# 1053 "../../binutils-2.13.1/gas/config/tc-ppc.c"
}



static void
ppc_set_cpu ()
{
  const char *default_os = "linux-gnu";
  const char *default_cpu = "powerpc";

  if (ppc_cpu == 0)
    {
      if ((__extension__ (__builtin_constant_p (3) && ((__builtin_constant_p (default_os) && strlen (default_os) < ((size_t) (3))) || (__builtin_constant_p ("aix") && strlen ("aix") < ((size_t) (3)))) ? __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (default_os) && __builtin_constant_p ("aix") && (__s1_len = strlen (default_os), __s2_len = strlen ("aix"), (!((size_t)(const void *)((default_os) + 1) - (size_t)(const void *)(default_os) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("aix") + 1) - (size_t)(const void *)("aix") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (default_os), (__const char *) ("aix"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (default_os) && ((size_t)(const void *)((default_os) + 1) - (size_t)(const void *)(default_os) == 1) && (__s1_len = strlen (default_os), __s1_len < 4) ? (__builtin_constant_p ("aix") && ((size_t)(const void *)(("aix") + 1) - (size_t)(const void *)("aix") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (default_os))[0] - ((__const unsigned char *) (__const char *)("aix"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (default_os))[1] - ((__const unsigned char *) (__const char *) ("aix"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (default_os))[2] - ((__const unsigned char *) (__const char *) ("aix"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (default_os))[3] - ((__const unsigned char *) (__const char *) ("aix"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("aix"); register int __result = (((__const unsigned char *) (__const char *) (default_os))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (default_os))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (default_os))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (default_os))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("aix") && ((size_t)(const void *)(("aix") + 1) - (size_t)(const void *)("aix") == 1) && (__s2_len = strlen ("aix"), __s2_len < 4) ? (__builtin_constant_p (default_os) && ((size_t)(const void *)((default_os) + 1) - (size_t)(const void *)(default_os) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (default_os))[0] - ((__const unsigned char *) (__const char *)("aix"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (default_os))[1] - ((__const unsigned char *) (__const char *) ("aix"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (default_os))[2] - ((__const unsigned char *) (__const char *) ("aix"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (default_os))[3] - ((__const unsigned char *) (__const char *) ("aix"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (default_os); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("aix"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("aix"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("aix"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("aix"))[3]); } } __result; }))) : strcmp (default_os, "aix")))); }) : strncmp (default_os, "aix", 3))) == 0
          && default_os[3] >= '4' && default_os[3] <= '9')
        ppc_cpu = (0100) | (010);
      else if ((__extension__ (__builtin_constant_p (4) && ((__builtin_constant_p (default_os) && strlen (default_os) < ((size_t) (4))) || (__builtin_constant_p ("aix3") && strlen ("aix3") < ((size_t) (4)))) ? __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (default_os) && __builtin_constant_p ("aix3") && (__s1_len = strlen (default_os), __s2_len = strlen ("aix3"), (!((size_t)(const void *)((default_os) + 1) - (size_t)(const void *)(default_os) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("aix3") + 1) - (size_t)(const void *)("aix3") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (default_os), (__const char *) ("aix3"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (default_os) && ((size_t)(const void *)((default_os) + 1) - (size_t)(const void *)(default_os) == 1) && (__s1_len = strlen (default_os), __s1_len < 4) ? (__builtin_constant_p ("aix3") && ((size_t)(const void *)(("aix3") + 1) - (size_t)(const void *)("aix3") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (default_os))[0] - ((__const unsigned char *) (__const char *)("aix3"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (default_os))[1] - ((__const unsigned char *) (__const char *) ("aix3"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (default_os))[2] - ((__const unsigned char *) (__const char *) ("aix3"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (default_os))[3] - ((__const unsigned char *) (__const char *) ("aix3"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("aix3"); register int __result = (((__const unsigned char *) (__const char *) (default_os))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (default_os))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (default_os))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (default_os))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("aix3") && ((size_t)(const void *)(("aix3") + 1) - (size_t)(const void *)("aix3") == 1) && (__s2_len = strlen ("aix3"), __s2_len < 4) ? (__builtin_constant_p (default_os) && ((size_t)(const void *)((default_os) + 1) - (size_t)(const void *)(default_os) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (default_os))[0] - ((__const unsigned char *) (__const char *)("aix3"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (default_os))[1] - ((__const unsigned char *) (__const char *) ("aix3"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (default_os))[2] - ((__const unsigned char *) (__const char *) ("aix3"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (default_os))[3] - ((__const unsigned char *) (__const char *) ("aix3"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (default_os); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("aix3"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("aix3"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("aix3"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("aix3"))[3]); } } __result; }))) : strcmp (default_os, "aix3")))); }) : strncmp (default_os, "aix3", 4))) == 0)
        ppc_cpu = (02) | (010);
      else if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (default_cpu) && __builtin_constant_p ("rs6000") && (__s1_len = strlen (default_cpu), __s2_len = strlen ("rs6000"), (!((size_t)(const void *)((default_cpu) + 1) - (size_t)(const void *)(default_cpu) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("rs6000") + 1) - (size_t)(const void *)("rs6000") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (default_cpu), (__const char *) ("rs6000"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (default_cpu) && ((size_t)(const void *)((default_cpu) + 1) - (size_t)(const void *)(default_cpu) == 1) && (__s1_len = strlen (default_cpu), __s1_len < 4) ? (__builtin_constant_p ("rs6000") && ((size_t)(const void *)(("rs6000") + 1) - (size_t)(const void *)("rs6000") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (default_cpu))[0] - ((__const unsigned char *) (__const char *)("rs6000"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (default_cpu))[1] - ((__const unsigned char *) (__const char *) ("rs6000"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (default_cpu))[2] - ((__const unsigned char *) (__const char *) ("rs6000"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (default_cpu))[3] - ((__const unsigned char *) (__const char *) ("rs6000"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("rs6000"); register int __result = (((__const unsigned char *) (__const char *) (default_cpu))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (default_cpu))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (default_cpu))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (default_cpu))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("rs6000") && ((size_t)(const void *)(("rs6000") + 1) - (size_t)(const void *)("rs6000") == 1) && (__s2_len = strlen ("rs6000"), __s2_len < 4) ? (__builtin_constant_p (default_cpu) && ((size_t)(const void *)((default_cpu) + 1) - (size_t)(const void *)(default_cpu) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (default_cpu))[0] - ((__const unsigned char *) (__const char *)("rs6000"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (default_cpu))[1] - ((__const unsigned char *) (__const char *) ("rs6000"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (default_cpu))[2] - ((__const unsigned char *) (__const char *) ("rs6000"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (default_cpu))[3] - ((__const unsigned char *) (__const char *) ("rs6000"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (default_cpu); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("rs6000"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("rs6000"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("rs6000"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("rs6000"))[3]); } } __result; }))) : strcmp (default_cpu, "rs6000")))); }) == 0)
        ppc_cpu = (02) | (010);
      else if ((__extension__ (__builtin_constant_p (7) && ((__builtin_constant_p (default_cpu) && strlen (default_cpu) < ((size_t) (7))) || (__builtin_constant_p ("powerpc") && strlen ("powerpc") < ((size_t) (7)))) ? __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (default_cpu) && __builtin_constant_p ("powerpc") && (__s1_len = strlen (default_cpu), __s2_len = strlen ("powerpc"), (!((size_t)(const void *)((default_cpu) + 1) - (size_t)(const void *)(default_cpu) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("powerpc") + 1) - (size_t)(const void *)("powerpc") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (default_cpu), (__const char *) ("powerpc"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (default_cpu) && ((size_t)(const void *)((default_cpu) + 1) - (size_t)(const void *)(default_cpu) == 1) && (__s1_len = strlen (default_cpu), __s1_len < 4) ? (__builtin_constant_p ("powerpc") && ((size_t)(const void *)(("powerpc") + 1) - (size_t)(const void *)("powerpc") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (default_cpu))[0] - ((__const unsigned char *) (__const char *)("powerpc"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (default_cpu))[1] - ((__const unsigned char *) (__const char *) ("powerpc"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (default_cpu))[2] - ((__const unsigned char *) (__const char *) ("powerpc"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (default_cpu))[3] - ((__const unsigned char *) (__const char *) ("powerpc"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("powerpc"); register int __result = (((__const unsigned char *) (__const char *) (default_cpu))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (default_cpu))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (default_cpu))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (default_cpu))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("powerpc") && ((size_t)(const void *)(("powerpc") + 1) - (size_t)(const void *)("powerpc") == 1) && (__s2_len = strlen ("powerpc"), __s2_len < 4) ? (__builtin_constant_p (default_cpu) && ((size_t)(const void *)((default_cpu) + 1) - (size_t)(const void *)(default_cpu) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (default_cpu))[0] - ((__const unsigned char *) (__const char *)("powerpc"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (default_cpu))[1] - ((__const unsigned char *) (__const char *) ("powerpc"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (default_cpu))[2] - ((__const unsigned char *) (__const char *) ("powerpc"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (default_cpu))[3] - ((__const unsigned char *) (__const char *) ("powerpc"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (default_cpu); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("powerpc"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("powerpc"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("powerpc"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("powerpc"))[3]); } } __result; }))) : strcmp (default_cpu, "powerpc")))); }) : strncmp (default_cpu, "powerpc", 7))) == 0)
        {
          if (default_cpu[7] == '6' && default_cpu[8] == '4')
            ppc_cpu = (01) | (020);
          else
            ppc_cpu = (01) | (010);
        }
      else
        as_fatal (dcgettext (((void *)0), "Unknown default cpu = %s, os = %s", __LC_MESSAGES),
                  default_cpu, default_os);
    }
}



enum bfd_architecture
ppc_arch ()
{
  const char *default_cpu = "powerpc";
  ppc_set_cpu ();

  if ((ppc_cpu & (01)) != 0)
    return bfd_arch_powerpc;
  else if ((ppc_cpu & (02)) != 0)
    return bfd_arch_rs6000;
  else if ((ppc_cpu & ((0100) | (0200))) != 0)
    {
      if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (default_cpu) && __builtin_constant_p ("rs6000") && (__s1_len = strlen (default_cpu), __s2_len = strlen ("rs6000"), (!((size_t)(const void *)((default_cpu) + 1) - (size_t)(const void *)(default_cpu) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("rs6000") + 1) - (size_t)(const void *)("rs6000") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (default_cpu), (__const char *) ("rs6000"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (default_cpu) && ((size_t)(const void *)((default_cpu) + 1) - (size_t)(const void *)(default_cpu) == 1) && (__s1_len = strlen (default_cpu), __s1_len < 4) ? (__builtin_constant_p ("rs6000") && ((size_t)(const void *)(("rs6000") + 1) - (size_t)(const void *)("rs6000") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (default_cpu))[0] - ((__const unsigned char *) (__const char *)("rs6000"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (default_cpu))[1] - ((__const unsigned char *) (__const char *) ("rs6000"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (default_cpu))[2] - ((__const unsigned char *) (__const char *) ("rs6000"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (default_cpu))[3] - ((__const unsigned char *) (__const char *) ("rs6000"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("rs6000"); register int __result = (((__const unsigned char *) (__const char *) (default_cpu))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (default_cpu))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (default_cpu))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (default_cpu))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("rs6000") && ((size_t)(const void *)(("rs6000") + 1) - (size_t)(const void *)("rs6000") == 1) && (__s2_len = strlen ("rs6000"), __s2_len < 4) ? (__builtin_constant_p (default_cpu) && ((size_t)(const void *)((default_cpu) + 1) - (size_t)(const void *)(default_cpu) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (default_cpu))[0] - ((__const unsigned char *) (__const char *)("rs6000"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (default_cpu))[1] - ((__const unsigned char *) (__const char *) ("rs6000"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (default_cpu))[2] - ((__const unsigned char *) (__const char *) ("rs6000"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (default_cpu))[3] - ((__const unsigned char *) (__const char *) ("rs6000"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (default_cpu); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("rs6000"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("rs6000"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("rs6000"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("rs6000"))[3]); } } __result; }))) : strcmp (default_cpu, "rs6000")))); }) == 0)
        return bfd_arch_rs6000;
      else if ((__extension__ (__builtin_constant_p (7) && ((__builtin_constant_p (default_cpu) && strlen (default_cpu) < ((size_t) (7))) || (__builtin_constant_p ("powerpc") && strlen ("powerpc") < ((size_t) (7)))) ? __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (default_cpu) && __builtin_constant_p ("powerpc") && (__s1_len = strlen (default_cpu), __s2_len = strlen ("powerpc"), (!((size_t)(const void *)((default_cpu) + 1) - (size_t)(const void *)(default_cpu) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("powerpc") + 1) - (size_t)(const void *)("powerpc") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (default_cpu), (__const char *) ("powerpc"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (default_cpu) && ((size_t)(const void *)((default_cpu) + 1) - (size_t)(const void *)(default_cpu) == 1) && (__s1_len = strlen (default_cpu), __s1_len < 4) ? (__builtin_constant_p ("powerpc") && ((size_t)(const void *)(("powerpc") + 1) - (size_t)(const void *)("powerpc") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (default_cpu))[0] - ((__const unsigned char *) (__const char *)("powerpc"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (default_cpu))[1] - ((__const unsigned char *) (__const char *) ("powerpc"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (default_cpu))[2] - ((__const unsigned char *) (__const char *) ("powerpc"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (default_cpu))[3] - ((__const unsigned char *) (__const char *) ("powerpc"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("powerpc"); register int __result = (((__const unsigned char *) (__const char *) (default_cpu))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (default_cpu))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (default_cpu))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (default_cpu))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("powerpc") && ((size_t)(const void *)(("powerpc") + 1) - (size_t)(const void *)("powerpc") == 1) && (__s2_len = strlen ("powerpc"), __s2_len < 4) ? (__builtin_constant_p (default_cpu) && ((size_t)(const void *)((default_cpu) + 1) - (size_t)(const void *)(default_cpu) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (default_cpu))[0] - ((__const unsigned char *) (__const char *)("powerpc"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (default_cpu))[1] - ((__const unsigned char *) (__const char *) ("powerpc"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (default_cpu))[2] - ((__const unsigned char *) (__const char *) ("powerpc"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (default_cpu))[3] - ((__const unsigned char *) (__const char *) ("powerpc"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (default_cpu); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("powerpc"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("powerpc"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("powerpc"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("powerpc"))[3]); } } __result; }))) : strcmp (default_cpu, "powerpc")))); }) : strncmp (default_cpu, "powerpc", 7))) == 0)
        return bfd_arch_powerpc;
    }

  as_fatal (dcgettext (((void *)0), "Neither Power nor PowerPC opcodes were selected.", __LC_MESSAGES));
  return bfd_arch_unknown;
}

unsigned long
ppc_mach ()
{
  return ppc_obj64 ? 1 : 0;
}

extern char*
ppc_target_format ()
{
# 1132 "../../binutils-2.13.1/gas/config/tc-ppc.c"
  return (target_big_endian
          ? (ppc_obj64 ? "elf64-powerpc" : "elf32-powerpc")
          : (ppc_obj64 ? "elf64-powerpcle" : "elf32-powerpcle"));

}





void
md_begin ()
{
  register const struct powerpc_opcode *op;
  const struct powerpc_opcode *op_end;
  const struct powerpc_macro *macro;
  const struct powerpc_macro *macro_end;
  boolean dup_insn = false;

  ppc_set_cpu ();



  if (ppc_flags && !msolaris)
    ((*((stdoutput)->xvec->_bfd_set_private_flags)) (stdoutput, ppc_flags));



  ppc_hash = hash_new ();

  op_end = powerpc_opcodes + powerpc_num_opcodes;
  for (op = powerpc_opcodes; op < op_end; op++)
    {
      ;

      if ((op->flags & ppc_cpu & ~((010) | (020))) != 0
          && ((op->flags & ((010) | (020))) == 0
              || ((op->flags & ((010) | (020)))
                  == (ppc_cpu & ((010) | (020))))
              || (ppc_cpu & (0400)) != 0)





          && ((op->flags & (010000)) == 0
              || (ppc_cpu & (010000)) == (010000)
              || (ppc_cpu & (04000)) == 0)
          && ((op->flags & ((020000) | (040000))) == 0
              || ((op->flags & (020000))
                  == (ppc_cpu & (020000)))))
        {
          const char *retval;

          retval = hash_insert (ppc_hash, op->name, (void *) op);
          if (retval != (const char *) ((void *)0))
            {

              if ((ppc_cpu & (040)) != 0
                  && (op->flags & (02)) != 0)
                continue;

              as_bad (dcgettext (((void *)0), "Internal assembler error for instruction %s", __LC_MESSAGES),
                      op->name);
              dup_insn = true;
            }
        }
    }


  ppc_macro_hash = hash_new ();

  macro_end = powerpc_macros + powerpc_num_macros;
  for (macro = powerpc_macros; macro < macro_end; macro++)
    {
      if ((macro->flags & ppc_cpu) != 0)
        {
          const char *retval;

          retval = hash_insert (ppc_macro_hash, macro->name, (void *) macro);
          if (retval != (const char *) ((void *)0))
            {
              as_bad (dcgettext (((void *)0), "Internal assembler error for macro %s", __LC_MESSAGES), macro->name);
              dup_insn = true;
            }
        }
    }

  if (dup_insn)
    as_abort ("../../binutils-2.13.1/gas/config/tc-ppc.c", 1221, __PRETTY_FUNCTION__);



  if (!set_target_endian)
    {
      set_target_endian = 1;
      target_big_endian = 1;
    }
# 1249 "../../binutils-2.13.1/gas/config/tc-ppc.c"
}



static unsigned long
ppc_insert_operand (insn, operand, val, file, line)
     unsigned long insn;
     const struct powerpc_operand *operand;
     offsetT val;
     char *file;
     unsigned int line;
{
  if (operand->bits != 32)
    {
      long min, max;
      offsetT test;

      if ((operand->flags & (01)) != 0)
        {
          if ((operand->flags & (02)) != 0)
            max = (1 << operand->bits) - 1;
          else
            max = (1 << (operand->bits - 1)) - 1;
          min = - (1 << (operand->bits - 1));

          if (!ppc_obj64)
            {




              if (val > 0
                  && (val & (offsetT) 0x80000000) != 0
                  && (val & (offsetT) 0xffffffff) == val)
                {
                  val -= 0x80000000;
                  val -= 0x80000000;
                }
            }
        }
      else
        {
          max = (1 << operand->bits) - 1;
          min = 0;
        }

      if ((operand->flags & (04000)) != 0)
        test = - val;
      else
        test = val;

      if (test < (offsetT) min || test > (offsetT) max)
        {
          const char *err =
            dcgettext (((void *)0), "operand out of range (%s not between %ld and %ld)", __LC_MESSAGES);
          char buf[100];

          sprint_value (buf, test);
          as_bad_where (file, line, err, buf, min, max);
        }
    }

  if (operand->insert)
    {
      const char *errmsg;

      errmsg = ((void *)0);
      insn = (*operand->insert) (insn, (long) val, ppc_cpu, &errmsg);
      if (errmsg != (const char *) ((void *)0))
        as_bad_where (file, line, errmsg);
    }
  else
    insn |= (((long) val & ((1 << operand->bits) - 1))
             << operand->shift);

  return insn;
}




static bfd_reloc_code_real_type
ppc_elf_suffix (str_p, exp_p)
     char **str_p;
     expressionS *exp_p;
{
  struct map_bfd {
    char *string;
    int length;
    int reloc;
  };

  char ident[20];
  char *str = *str_p;
  char *str2;
  int ch;
  int len;
  const struct map_bfd *ptr;



  static const struct map_bfd mapping[] = {
    { "l", sizeof ("l")-1, (int) BFD_RELOC_LO16 },
    { "h", sizeof ("h")-1, (int) BFD_RELOC_HI16 },
    { "ha", sizeof ("ha")-1, (int) BFD_RELOC_HI16_S },
    { "brtaken", sizeof ("brtaken")-1, (int) BFD_RELOC_PPC_B16_BRTAKEN },
    { "brntaken", sizeof ("brntaken")-1, (int) BFD_RELOC_PPC_B16_BRNTAKEN },
    { "got", sizeof ("got")-1, (int) BFD_RELOC_16_GOTOFF },
    { "got@l", sizeof ("got@l")-1, (int) BFD_RELOC_LO16_GOTOFF },
    { "got@h", sizeof ("got@h")-1, (int) BFD_RELOC_HI16_GOTOFF },
    { "got@ha", sizeof ("got@ha")-1, (int) BFD_RELOC_HI16_S_GOTOFF },
    { "fixup", sizeof ("fixup")-1, (int) BFD_RELOC_CTOR },
    { "plt", sizeof ("plt")-1, (int) BFD_RELOC_24_PLT_PCREL },
    { "pltrel24", sizeof ("pltrel24")-1, (int) BFD_RELOC_24_PLT_PCREL },
    { "copy", sizeof ("copy")-1, (int) BFD_RELOC_PPC_COPY },
    { "globdat", sizeof ("globdat")-1, (int) BFD_RELOC_PPC_GLOB_DAT },
    { "local24pc", sizeof ("local24pc")-1, (int) BFD_RELOC_PPC_LOCAL24PC },
    { "local", sizeof ("local")-1, (int) BFD_RELOC_PPC_LOCAL24PC },
    { "pltrel", sizeof ("pltrel")-1, (int) BFD_RELOC_32_PLT_PCREL },
    { "plt@l", sizeof ("plt@l")-1, (int) BFD_RELOC_LO16_PLTOFF },
    { "plt@h", sizeof ("plt@h")-1, (int) BFD_RELOC_HI16_PLTOFF },
    { "plt@ha", sizeof ("plt@ha")-1, (int) BFD_RELOC_HI16_S_PLTOFF },
    { "sdarel", sizeof ("sdarel")-1, (int) BFD_RELOC_GPREL16 },
    { "sectoff", sizeof ("sectoff")-1, (int) BFD_RELOC_16_BASEREL },
    { "sectoff@l", sizeof ("sectoff@l")-1, (int) BFD_RELOC_LO16_BASEREL },
    { "sectoff@h", sizeof ("sectoff@h")-1, (int) BFD_RELOC_HI16_BASEREL },
    { "sectoff@ha", sizeof ("sectoff@ha")-1, (int) BFD_RELOC_HI16_S_BASEREL },
    { "naddr", sizeof ("naddr")-1, (int) BFD_RELOC_PPC_EMB_NADDR32 },
    { "naddr16", sizeof ("naddr16")-1, (int) BFD_RELOC_PPC_EMB_NADDR16 },
    { "naddr@l", sizeof ("naddr@l")-1, (int) BFD_RELOC_PPC_EMB_NADDR16_LO },
    { "naddr@h", sizeof ("naddr@h")-1, (int) BFD_RELOC_PPC_EMB_NADDR16_HI },
    { "naddr@ha", sizeof ("naddr@ha")-1, (int) BFD_RELOC_PPC_EMB_NADDR16_HA },
    { "sdai16", sizeof ("sdai16")-1, (int) BFD_RELOC_PPC_EMB_SDAI16 },
    { "sda2rel", sizeof ("sda2rel")-1, (int) BFD_RELOC_PPC_EMB_SDA2REL },
    { "sda2i16", sizeof ("sda2i16")-1, (int) BFD_RELOC_PPC_EMB_SDA2I16 },
    { "sda21", sizeof ("sda21")-1, (int) BFD_RELOC_PPC_EMB_SDA21 },
    { "mrkref", sizeof ("mrkref")-1, (int) BFD_RELOC_PPC_EMB_MRKREF },
    { "relsect", sizeof ("relsect")-1, (int) BFD_RELOC_PPC_EMB_RELSEC16 },
    { "relsect@l", sizeof ("relsect@l")-1, (int) BFD_RELOC_PPC_EMB_RELST_LO },
    { "relsect@h", sizeof ("relsect@h")-1, (int) BFD_RELOC_PPC_EMB_RELST_HI },
    { "relsect@ha", sizeof ("relsect@ha")-1, (int) BFD_RELOC_PPC_EMB_RELST_HA },
    { "bitfld", sizeof ("bitfld")-1, (int) BFD_RELOC_PPC_EMB_BIT_FLD },
    { "relsda", sizeof ("relsda")-1, (int) BFD_RELOC_PPC_EMB_RELSDA },
    { "xgot", sizeof ("xgot")-1, (int) BFD_RELOC_PPC_TOC16 },


    { "higher", sizeof ("higher")-1, - (int) BFD_RELOC_PPC64_HIGHER },
    { "highera", sizeof ("highera")-1, - (int) BFD_RELOC_PPC64_HIGHER_S },
    { "highest", sizeof ("highest")-1, - (int) BFD_RELOC_PPC64_HIGHEST },
    { "highesta", sizeof ("highesta")-1, - (int) BFD_RELOC_PPC64_HIGHEST_S },
    { "tocbase", sizeof ("tocbase")-1, - (int) BFD_RELOC_PPC64_TOC },
    { "toc", sizeof ("toc")-1, - (int) BFD_RELOC_PPC_TOC16 },
    { "toc@l", sizeof ("toc@l")-1, - (int) BFD_RELOC_PPC64_TOC16_LO },
    { "toc@h", sizeof ("toc@h")-1, - (int) BFD_RELOC_PPC64_TOC16_HI },
    { "toc@ha", sizeof ("toc@ha")-1, - (int) BFD_RELOC_PPC64_TOC16_HA },
    { (char *) 0, 0, (int) BFD_RELOC_UNUSED }
  };

  if (*str++ != '@')
    return BFD_RELOC_UNUSED;

  for (ch = *str, str2 = ident;
       (str2 < ident + sizeof (ident) - 1
        && ((_sch_istable[(ch) & 0xff] & (unsigned short)(_sch_isalnum)) || ch == '@'));
       ch = *++str)
    {
      *str2++ = _sch_tolower[(ch) & 0xff];
    }

  *str2 = '\0';
  len = str2 - ident;

  ch = ident[0];
  for (ptr = &mapping[0]; ptr->length > 0; ptr++)
    if (ch == ptr->string[0]
        && len == ptr->length
        && memcmp (ident, ptr->string, ptr->length) == 0)
      {
        int reloc = ptr->reloc;

        if (reloc < 0)
          {
            if (!ppc_obj64)
              return BFD_RELOC_UNUSED;
            reloc = -reloc;
          }

        if (exp_p->X_add_number != 0
            && (reloc == (int) BFD_RELOC_16_GOTOFF
                || reloc == (int) BFD_RELOC_LO16_GOTOFF
                || reloc == (int) BFD_RELOC_HI16_GOTOFF
                || reloc == (int) BFD_RELOC_HI16_S_GOTOFF))
          as_warn (dcgettext (((void *)0), "identifier+constant@got means identifier@got+constant", __LC_MESSAGES));


        if (*str == '-' || *str == '+')
          {
            char *orig_line = input_line_pointer;
            expressionS new_exp;

            input_line_pointer = str;
            expr (0, &new_exp);
            if (new_exp.X_op == O_constant)
              {
                exp_p->X_add_number += new_exp.X_add_number;
                str = input_line_pointer;
              }

            if (&input_line_pointer != str_p)
              input_line_pointer = orig_line;
          }
        *str_p = str;

        if (reloc == (int) BFD_RELOC_PPC64_TOC
            && exp_p->X_op == O_symbol)
          {



            exp_p->X_add_symbol = &abs_symbol;
          }

        return (bfd_reloc_code_real_type) reloc;
      }

  return BFD_RELOC_UNUSED;
}



static void
ppc_elf_cons (nbytes)
     register int nbytes;
{
  expressionS exp;
  bfd_reloc_code_real_type reloc;

  if (is_it_end_of_statement ())
    {
      demand_empty_rest_of_line ();
      return;
    }

  do
    {
      expr (0, &exp);
      if (exp.X_op == O_symbol
          && *input_line_pointer == '@'
          && (reloc = ppc_elf_suffix (&input_line_pointer,
                                      &exp)) != BFD_RELOC_UNUSED)
        {
          reloc_howto_type *reloc_howto;
          int size;

          reloc_howto = bfd_reloc_type_lookup (stdoutput, reloc);
          size = bfd_get_reloc_size (reloc_howto);

          if (size > nbytes)
            {
              as_bad (dcgettext (((void *)0), "%s relocations do not fit in %d bytes\n", __LC_MESSAGES),
                      reloc_howto->name, nbytes);
            }
          else
            {
              char *p;
              int offset;

              p = frag_more (nbytes);
              offset = 0;
              if (target_big_endian)
                offset = nbytes - size;
              fix_new_exp (frag_now, p - frag_now->fr_literal + offset, size,
                           &exp, 0, reloc);
            }
        }
      else
        emit_expr (&exp, (unsigned int) nbytes);
    }
  while (*input_line_pointer++ == ',');


  input_line_pointer--;
  demand_empty_rest_of_line ();
}


static void
ppc_elf_rdata (xxx)
     int xxx;
{
  char *save_line = input_line_pointer;
  static char section[] = ".rodata\n";


  input_line_pointer = section;
  obj_elf_section (xxx);

  input_line_pointer = save_line;
}


static void
ppc_elf_lcomm (xxx)
     int xxx __attribute__ ((__unused__));
{
  register char *name;
  register char c;
  register char *p;
  offsetT size;
  register symbolS *symbolP;
  offsetT align;
  segT old_sec;
  int old_subsec;
  char *pfrag;
  int align2;

  name = input_line_pointer;
  c = get_symbol_end ();


  p = input_line_pointer;
  *p = c;
  { if (* input_line_pointer == ' ') ++ input_line_pointer; };
  if (*input_line_pointer != ',')
    {
      as_bad (dcgettext (((void *)0), "Expected comma after symbol-name: rest of line ignored.", __LC_MESSAGES));
      ignore_rest_of_line ();
      return;
    }

  input_line_pointer++;
  if ((size = get_absolute_expression ()) < 0)
    {
      as_warn (dcgettext (((void *)0), ".COMMon length (%ld.) <0! Ignored.", __LC_MESSAGES), (long) size);
      ignore_rest_of_line ();
      return;
    }


  if (*input_line_pointer != ',')
    align = 8;
  else
    {
      ++input_line_pointer;
      align = get_absolute_expression ();
      if (align <= 0)
        {
          as_warn (dcgettext (((void *)0), "ignoring bad alignment", __LC_MESSAGES));
          align = 8;
        }
    }

  *p = 0;
  symbolP = symbol_find_or_make (name);
  *p = c;

  if (S_IS_DEFINED (symbolP) && ! S_IS_COMMON (symbolP))
    {
      as_bad (dcgettext (((void *)0), "Ignoring attempt to re-define symbol `%s'.", __LC_MESSAGES),
              S_GET_NAME (symbolP));
      ignore_rest_of_line ();
      return;
    }

  if (S_GET_VALUE (symbolP) && S_GET_VALUE (symbolP) != (valueT) size)
    {
      as_bad (dcgettext (((void *)0), "Length of .lcomm \"%s\" is already %ld. Not changed to %ld.", __LC_MESSAGES),
              S_GET_NAME (symbolP),
              (long) S_GET_VALUE (symbolP),
              (long) size);

      ignore_rest_of_line ();
      return;
    }


  old_sec = now_seg;
  old_subsec = now_subseg;
  if (align)
    {

      for (align2 = 0; (align & 1) == 0; align >>= 1, ++align2);
      if (align != 1)
        {
          as_bad (dcgettext (((void *)0), "Common alignment not a power of 2", __LC_MESSAGES));
          ignore_rest_of_line ();
          return;
        }
    }
  else
    align2 = 0;

  record_alignment (bss_section, align2);
  subseg_set (bss_section, 0);
  if (align2)
    frag_align (align2, 0, 0);
  if (S_GET_SEGMENT (symbolP) == bss_section)
    symbol_get_frag (symbolP)->fr_symbol = 0;
  symbol_set_frag (symbolP, frag_now);
  pfrag = frag_var (rs_org, 1, 1, (relax_substateT) 0, symbolP, size,
                    (char *) 0);
  *pfrag = 0;
  (((elf_symbol_type *) (&(symbol_get_bfdsym (symbolP))->the_bfd))->internal_elf_sym.st_size = (size));
  S_SET_SEGMENT (symbolP, bss_section);
  subseg_set (old_sec, old_subsec);
  demand_empty_rest_of_line ();
}




static void
ppc_elf_validate_fix (fixp, seg)
     fixS *fixp;
     segT seg;
{
  if (fixp->fx_done || fixp->fx_pcrel)
    return;

  switch (shlib)
    {
    case SHLIB_NONE:
    case SHLIB_PIC:
      return;

    case SHLIB_MRELOCATABLE:
      if (fixp->fx_r_type <= BFD_RELOC_UNUSED
          && fixp->fx_r_type != BFD_RELOC_16_GOTOFF
          && fixp->fx_r_type != BFD_RELOC_HI16_GOTOFF
          && fixp->fx_r_type != BFD_RELOC_LO16_GOTOFF
          && fixp->fx_r_type != BFD_RELOC_HI16_S_GOTOFF
          && fixp->fx_r_type != BFD_RELOC_16_BASEREL
          && fixp->fx_r_type != BFD_RELOC_LO16_BASEREL
          && fixp->fx_r_type != BFD_RELOC_HI16_BASEREL
          && fixp->fx_r_type != BFD_RELOC_HI16_S_BASEREL
          && (seg->flags & 0x002) != 0
          && __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (((seg)->name + 0)) && __builtin_constant_p (".got2") && (__s1_len = strlen (((seg)->name + 0)), __s2_len = strlen (".got2"), (!((size_t)(const void *)((((seg)->name + 0)) + 1) - (size_t)(const void *)(((seg)->name + 0)) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((".got2") + 1) - (size_t)(const void *)(".got2") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (((seg)->name + 0)), (__const char *) (".got2"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (((seg)->name + 0)) && ((size_t)(const void *)((((seg)->name + 0)) + 1) - (size_t)(const void *)(((seg)->name + 0)) == 1) && (__s1_len = strlen (((seg)->name + 0)), __s1_len < 4) ? (__builtin_constant_p (".got2") && ((size_t)(const void *)((".got2") + 1) - (size_t)(const void *)(".got2") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[0] - ((__const unsigned char *) (__const char *)(".got2"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[1] - ((__const unsigned char *) (__const char *) (".got2"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[2] - ((__const unsigned char *) (__const char *) (".got2"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[3] - ((__const unsigned char *) (__const char *) (".got2"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) (".got2"); register int __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (".got2") && ((size_t)(const void *)((".got2") + 1) - (size_t)(const void *)(".got2") == 1) && (__s2_len = strlen (".got2"), __s2_len < 4) ? (__builtin_constant_p (((seg)->name + 0)) && ((size_t)(const void *)((((seg)->name + 0)) + 1) - (size_t)(const void *)(((seg)->name + 0)) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[0] - ((__const unsigned char *) (__const char *)(".got2"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[1] - ((__const unsigned char *) (__const char *) (".got2"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[2] - ((__const unsigned char *) (__const char *) (".got2"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[3] - ((__const unsigned char *) (__const char *) (".got2"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (((seg)->name + 0)); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) (".got2"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) (".got2"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) (".got2"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) (".got2"))[3]); } } __result; }))) : strcmp (((seg)->name + 0), ".got2")))); }) != 0
          && __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (((seg)->name + 0)) && __builtin_constant_p (".dtors") && (__s1_len = strlen (((seg)->name + 0)), __s2_len = strlen (".dtors"), (!((size_t)(const void *)((((seg)->name + 0)) + 1) - (size_t)(const void *)(((seg)->name + 0)) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((".dtors") + 1) - (size_t)(const void *)(".dtors") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (((seg)->name + 0)), (__const char *) (".dtors"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (((seg)->name + 0)) && ((size_t)(const void *)((((seg)->name + 0)) + 1) - (size_t)(const void *)(((seg)->name + 0)) == 1) && (__s1_len = strlen (((seg)->name + 0)), __s1_len < 4) ? (__builtin_constant_p (".dtors") && ((size_t)(const void *)((".dtors") + 1) - (size_t)(const void *)(".dtors") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[0] - ((__const unsigned char *) (__const char *)(".dtors"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[1] - ((__const unsigned char *) (__const char *) (".dtors"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[2] - ((__const unsigned char *) (__const char *) (".dtors"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[3] - ((__const unsigned char *) (__const char *) (".dtors"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) (".dtors"); register int __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (".dtors") && ((size_t)(const void *)((".dtors") + 1) - (size_t)(const void *)(".dtors") == 1) && (__s2_len = strlen (".dtors"), __s2_len < 4) ? (__builtin_constant_p (((seg)->name + 0)) && ((size_t)(const void *)((((seg)->name + 0)) + 1) - (size_t)(const void *)(((seg)->name + 0)) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[0] - ((__const unsigned char *) (__const char *)(".dtors"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[1] - ((__const unsigned char *) (__const char *) (".dtors"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[2] - ((__const unsigned char *) (__const char *) (".dtors"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[3] - ((__const unsigned char *) (__const char *) (".dtors"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (((seg)->name + 0)); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) (".dtors"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) (".dtors"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) (".dtors"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) (".dtors"))[3]); } } __result; }))) : strcmp (((seg)->name + 0), ".dtors")))); }) != 0
          && __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (((seg)->name + 0)) && __builtin_constant_p (".ctors") && (__s1_len = strlen (((seg)->name + 0)), __s2_len = strlen (".ctors"), (!((size_t)(const void *)((((seg)->name + 0)) + 1) - (size_t)(const void *)(((seg)->name + 0)) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((".ctors") + 1) - (size_t)(const void *)(".ctors") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (((seg)->name + 0)), (__const char *) (".ctors"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (((seg)->name + 0)) && ((size_t)(const void *)((((seg)->name + 0)) + 1) - (size_t)(const void *)(((seg)->name + 0)) == 1) && (__s1_len = strlen (((seg)->name + 0)), __s1_len < 4) ? (__builtin_constant_p (".ctors") && ((size_t)(const void *)((".ctors") + 1) - (size_t)(const void *)(".ctors") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[0] - ((__const unsigned char *) (__const char *)(".ctors"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[1] - ((__const unsigned char *) (__const char *) (".ctors"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[2] - ((__const unsigned char *) (__const char *) (".ctors"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[3] - ((__const unsigned char *) (__const char *) (".ctors"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) (".ctors"); register int __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (".ctors") && ((size_t)(const void *)((".ctors") + 1) - (size_t)(const void *)(".ctors") == 1) && (__s2_len = strlen (".ctors"), __s2_len < 4) ? (__builtin_constant_p (((seg)->name + 0)) && ((size_t)(const void *)((((seg)->name + 0)) + 1) - (size_t)(const void *)(((seg)->name + 0)) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[0] - ((__const unsigned char *) (__const char *)(".ctors"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[1] - ((__const unsigned char *) (__const char *) (".ctors"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[2] - ((__const unsigned char *) (__const char *) (".ctors"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[3] - ((__const unsigned char *) (__const char *) (".ctors"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (((seg)->name + 0)); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) (".ctors"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) (".ctors"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) (".ctors"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) (".ctors"))[3]); } } __result; }))) : strcmp (((seg)->name + 0), ".ctors")))); }) != 0
          && __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (((seg)->name + 0)) && __builtin_constant_p (".fixup") && (__s1_len = strlen (((seg)->name + 0)), __s2_len = strlen (".fixup"), (!((size_t)(const void *)((((seg)->name + 0)) + 1) - (size_t)(const void *)(((seg)->name + 0)) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((".fixup") + 1) - (size_t)(const void *)(".fixup") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (((seg)->name + 0)), (__const char *) (".fixup"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (((seg)->name + 0)) && ((size_t)(const void *)((((seg)->name + 0)) + 1) - (size_t)(const void *)(((seg)->name + 0)) == 1) && (__s1_len = strlen (((seg)->name + 0)), __s1_len < 4) ? (__builtin_constant_p (".fixup") && ((size_t)(const void *)((".fixup") + 1) - (size_t)(const void *)(".fixup") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[0] - ((__const unsigned char *) (__const char *)(".fixup"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[1] - ((__const unsigned char *) (__const char *) (".fixup"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[2] - ((__const unsigned char *) (__const char *) (".fixup"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[3] - ((__const unsigned char *) (__const char *) (".fixup"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) (".fixup"); register int __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (".fixup") && ((size_t)(const void *)((".fixup") + 1) - (size_t)(const void *)(".fixup") == 1) && (__s2_len = strlen (".fixup"), __s2_len < 4) ? (__builtin_constant_p (((seg)->name + 0)) && ((size_t)(const void *)((((seg)->name + 0)) + 1) - (size_t)(const void *)(((seg)->name + 0)) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[0] - ((__const unsigned char *) (__const char *)(".fixup"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[1] - ((__const unsigned char *) (__const char *) (".fixup"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[2] - ((__const unsigned char *) (__const char *) (".fixup"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[3] - ((__const unsigned char *) (__const char *) (".fixup"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (((seg)->name + 0)); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) (".fixup"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) (".fixup"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) (".fixup"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) (".fixup"))[3]); } } __result; }))) : strcmp (((seg)->name + 0), ".fixup")))); }) != 0
          && __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (((seg)->name + 0)) && __builtin_constant_p (".gcc_except_table") && (__s1_len = strlen (((seg)->name + 0)), __s2_len = strlen (".gcc_except_table"), (!((size_t)(const void *)((((seg)->name + 0)) + 1) - (size_t)(const void *)(((seg)->name + 0)) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((".gcc_except_table") + 1) - (size_t)(const void *)(".gcc_except_table") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (((seg)->name + 0)), (__const char *) (".gcc_except_table"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (((seg)->name + 0)) && ((size_t)(const void *)((((seg)->name + 0)) + 1) - (size_t)(const void *)(((seg)->name + 0)) == 1) && (__s1_len = strlen (((seg)->name + 0)), __s1_len < 4) ? (__builtin_constant_p (".gcc_except_table") && ((size_t)(const void *)((".gcc_except_table") + 1) - (size_t)(const void *)(".gcc_except_table") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[0] - ((__const unsigned char *) (__const char *)(".gcc_except_table"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[1] - ((__const unsigned char *) (__const char *) (".gcc_except_table"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[2] - ((__const unsigned char *) (__const char *) (".gcc_except_table"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[3] - ((__const unsigned char *) (__const char *) (".gcc_except_table"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) (".gcc_except_table"); register int __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (".gcc_except_table") && ((size_t)(const void *)((".gcc_except_table") + 1) - (size_t)(const void *)(".gcc_except_table") == 1) && (__s2_len = strlen (".gcc_except_table"), __s2_len < 4) ? (__builtin_constant_p (((seg)->name + 0)) && ((size_t)(const void *)((((seg)->name + 0)) + 1) - (size_t)(const void *)(((seg)->name + 0)) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[0] - ((__const unsigned char *) (__const char *)(".gcc_except_table"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[1] - ((__const unsigned char *) (__const char *) (".gcc_except_table"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[2] - ((__const unsigned char *) (__const char *) (".gcc_except_table"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[3] - ((__const unsigned char *) (__const char *) (".gcc_except_table"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (((seg)->name + 0)); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) (".gcc_except_table"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) (".gcc_except_table"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) (".gcc_except_table"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) (".gcc_except_table"))[3]); } } __result; }))) : strcmp (((seg)->name + 0), ".gcc_except_table")))); }) != 0
          && __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (((seg)->name + 0)) && __builtin_constant_p (".eh_frame") && (__s1_len = strlen (((seg)->name + 0)), __s2_len = strlen (".eh_frame"), (!((size_t)(const void *)((((seg)->name + 0)) + 1) - (size_t)(const void *)(((seg)->name + 0)) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((".eh_frame") + 1) - (size_t)(const void *)(".eh_frame") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (((seg)->name + 0)), (__const char *) (".eh_frame"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (((seg)->name + 0)) && ((size_t)(const void *)((((seg)->name + 0)) + 1) - (size_t)(const void *)(((seg)->name + 0)) == 1) && (__s1_len = strlen (((seg)->name + 0)), __s1_len < 4) ? (__builtin_constant_p (".eh_frame") && ((size_t)(const void *)((".eh_frame") + 1) - (size_t)(const void *)(".eh_frame") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[0] - ((__const unsigned char *) (__const char *)(".eh_frame"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[1] - ((__const unsigned char *) (__const char *) (".eh_frame"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[2] - ((__const unsigned char *) (__const char *) (".eh_frame"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[3] - ((__const unsigned char *) (__const char *) (".eh_frame"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) (".eh_frame"); register int __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (".eh_frame") && ((size_t)(const void *)((".eh_frame") + 1) - (size_t)(const void *)(".eh_frame") == 1) && (__s2_len = strlen (".eh_frame"), __s2_len < 4) ? (__builtin_constant_p (((seg)->name + 0)) && ((size_t)(const void *)((((seg)->name + 0)) + 1) - (size_t)(const void *)(((seg)->name + 0)) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[0] - ((__const unsigned char *) (__const char *)(".eh_frame"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[1] - ((__const unsigned char *) (__const char *) (".eh_frame"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[2] - ((__const unsigned char *) (__const char *) (".eh_frame"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[3] - ((__const unsigned char *) (__const char *) (".eh_frame"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (((seg)->name + 0)); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) (".eh_frame"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) (".eh_frame"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) (".eh_frame"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) (".eh_frame"))[3]); } } __result; }))) : strcmp (((seg)->name + 0), ".eh_frame")))); }) != 0
          && __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (((seg)->name + 0)) && __builtin_constant_p (".ex_shared") && (__s1_len = strlen (((seg)->name + 0)), __s2_len = strlen (".ex_shared"), (!((size_t)(const void *)((((seg)->name + 0)) + 1) - (size_t)(const void *)(((seg)->name + 0)) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((".ex_shared") + 1) - (size_t)(const void *)(".ex_shared") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (((seg)->name + 0)), (__const char *) (".ex_shared"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (((seg)->name + 0)) && ((size_t)(const void *)((((seg)->name + 0)) + 1) - (size_t)(const void *)(((seg)->name + 0)) == 1) && (__s1_len = strlen (((seg)->name + 0)), __s1_len < 4) ? (__builtin_constant_p (".ex_shared") && ((size_t)(const void *)((".ex_shared") + 1) - (size_t)(const void *)(".ex_shared") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[0] - ((__const unsigned char *) (__const char *)(".ex_shared"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[1] - ((__const unsigned char *) (__const char *) (".ex_shared"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[2] - ((__const unsigned char *) (__const char *) (".ex_shared"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[3] - ((__const unsigned char *) (__const char *) (".ex_shared"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) (".ex_shared"); register int __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (".ex_shared") && ((size_t)(const void *)((".ex_shared") + 1) - (size_t)(const void *)(".ex_shared") == 1) && (__s2_len = strlen (".ex_shared"), __s2_len < 4) ? (__builtin_constant_p (((seg)->name + 0)) && ((size_t)(const void *)((((seg)->name + 0)) + 1) - (size_t)(const void *)(((seg)->name + 0)) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[0] - ((__const unsigned char *) (__const char *)(".ex_shared"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[1] - ((__const unsigned char *) (__const char *) (".ex_shared"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[2] - ((__const unsigned char *) (__const char *) (".ex_shared"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (((seg)->name + 0)))[3] - ((__const unsigned char *) (__const char *) (".ex_shared"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (((seg)->name + 0)); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) (".ex_shared"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) (".ex_shared"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) (".ex_shared"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) (".ex_shared"))[3]); } } __result; }))) : strcmp (((seg)->name + 0), ".ex_shared")))); }) != 0)
        {
          if ((seg->flags & (0x010 | 0x020)) != 0
              || fixp->fx_r_type != BFD_RELOC_CTOR)
            {
              as_bad_where (fixp->fx_file, fixp->fx_line,
                            dcgettext (((void *)0), "Relocation cannot be done when using -mrelocatable", __LC_MESSAGES));
            }
        }
      return;
    }
}




void
ppc_frob_file_before_adjust ()
{
  symbolS *symp;

  if (!ppc_obj64)
    return;

  for (symp = symbol_rootP; symp; symp = symbol_next (symp))
    {
      const char *name;
      char *dotname;
      symbolS *dotsym;
      size_t len;

      name = S_GET_NAME (symp);
      if (name[0] == '.')
        continue;

      if (! S_IS_WEAK (symp)
          || S_IS_DEFINED (symp))
        continue;

      len = strlen (name) + 1;
      dotname = xmalloc (len + 1);
      dotname[0] = '.';
      memcpy (dotname + 1, name, len);
      dotsym = symbol_find (dotname);
      free (dotname);
      if (dotsym != ((void *)0) && (symbol_used_p (dotsym)
                             || symbol_used_in_reloc_p (dotsym)))
        {
          symbol_mark_used (symp);
        }
    }


  symp = symbol_find (".TOC.");
  if (symp != ((void *)0))
    symbol_remove (symp, &symbol_rootP, &symbol_lastP);
}
# 1852 "../../binutils-2.13.1/gas/config/tc-ppc.c"
struct ppc_fixup
{
  expressionS exp;
  int opindex;
  bfd_reloc_code_real_type reloc;
};





void
md_assemble (str)
     char *str;
{
  char *s;
  const struct powerpc_opcode *opcode;
  unsigned long insn;
  const unsigned char *opindex_ptr;
  int skip_optional;
  int need_paren;
  int next_opindex;
  struct ppc_fixup fixups[(5)];
  int fc;
  char *f;
  int i;

  bfd_reloc_code_real_type reloc;



  for (s = str; *s != '\0' && ! (_sch_istable[(*s) & 0xff] & (unsigned short)(_sch_isspace)); s++)
    ;
  if (*s != '\0')
    *s++ = '\0';


  opcode = (const struct powerpc_opcode *) hash_find (ppc_hash, str);
  if (opcode == (const struct powerpc_opcode *) ((void *)0))
    {
      const struct powerpc_macro *macro;

      macro = (const struct powerpc_macro *) hash_find (ppc_macro_hash, str);
      if (macro == (const struct powerpc_macro *) ((void *)0))
        as_bad (dcgettext (((void *)0), "Unrecognized opcode: `%s'", __LC_MESSAGES), str);
      else
        ppc_macro (s, macro);

      return;
    }

  insn = opcode->opcode;

  str = s;
  while ((_sch_istable[(*str) & 0xff] & (unsigned short)(_sch_isspace)))
    ++str;
# 1918 "../../binutils-2.13.1/gas/config/tc-ppc.c"
  skip_optional = 0;
  for (opindex_ptr = opcode->operands; *opindex_ptr != 0; opindex_ptr++)
    {
      const struct powerpc_operand *operand;

      operand = &powerpc_operands[*opindex_ptr];
      if ((operand->flags & (01000)) != 0)
        {
          unsigned int opcount;
          unsigned int num_operands_expected;
          unsigned int i;



          if (*str == '\0')
            opcount = 0;
          else
            {
              opcount = 1;
              s = str;
              while ((s = (__extension__ (__builtin_constant_p (',') && (',') == '\0' ? (char *) __rawmemchr (s, ',') : strchr (s, ',')))) != (char *) ((void *)0))
                {
                  ++opcount;
                  ++s;
                }
            }



          for (num_operands_expected = 0, i = 0; opcode->operands[i]; i ++)
            if ((powerpc_operands [opcode->operands[i]].flags & (04)) == 0)
              ++ num_operands_expected;




          if (opcount < num_operands_expected)
            skip_optional = 1;

          break;
        }
    }


  need_paren = 0;
  next_opindex = 0;
  fc = 0;
  for (opindex_ptr = opcode->operands; *opindex_ptr != 0; opindex_ptr++)
    {
      const struct powerpc_operand *operand;
      const char *errmsg;
      char *hold;
      expressionS ex;
      char endc;

      if (next_opindex == 0)
        operand = &powerpc_operands[*opindex_ptr];
      else
        {
          operand = &powerpc_operands[next_opindex];
          next_opindex = 0;
        }

      errmsg = ((void *)0);



      if ((operand->flags & (04)) != 0)
        {
          insn = (*operand->insert) (insn, 0L, ppc_cpu, &errmsg);
          if (errmsg != (const char *) ((void *)0))
            as_bad (errmsg);
          continue;
        }



      if ((operand->flags & (01000)) != 0
          && skip_optional)
        {
          if (operand->insert)
            {
              insn = (*operand->insert) (insn, 0L, ppc_cpu, &errmsg);
              if (errmsg != (const char *) ((void *)0))
                as_bad (errmsg);
            }
          if ((operand->flags & (02000)) != 0)
            next_opindex = *opindex_ptr + 1;
          continue;
        }


      hold = input_line_pointer;
      input_line_pointer = str;
# 2127 "../../binutils-2.13.1/gas/config/tc-ppc.c"
        {
          if (! register_name (&ex))
            {
              if ((operand->flags & (020)) != 0)
                cr_operand = true;
              expr (0, &ex);
              cr_operand = false;
            }
        }

      str = input_line_pointer;
      input_line_pointer = hold;

      if (ex.X_op == O_illegal)
        as_bad (dcgettext (((void *)0), "illegal operand", __LC_MESSAGES));
      else if (ex.X_op == O_absent)
        as_bad (dcgettext (((void *)0), "missing operand", __LC_MESSAGES));
      else if (ex.X_op == O_register)
        {
          insn = ppc_insert_operand (insn, operand, ex.X_add_number,
                                     (char *) ((void *)0), 0);
        }
      else if (ex.X_op == O_constant)
        {


          char *orig_str = str;

          if ((reloc = ppc_elf_suffix (&str, &ex)) != BFD_RELOC_UNUSED)
            switch (reloc)
              {
              default:
                str = orig_str;
                break;

              case BFD_RELOC_LO16:



                if (ex.X_unsigned && ! (operand->flags & (01)))
                  ex.X_add_number &= 0xffff;
                else
                  ex.X_add_number = ((((ex.X_add_number) & 0xffff) ^ 0x8000) - 0x8000);
                break;

              case BFD_RELOC_HI16:
                if (ex.X_unsigned && ! (operand->flags & (01)))
                  ex.X_add_number = (((ex.X_add_number) >> 16) & 0xffff);
                else
                  ex.X_add_number = (((((((ex.X_add_number) >> 16) & 0xffff)) & 0xffff) ^ 0x8000) - 0x8000);
                break;

              case BFD_RELOC_HI16_S:
                if (ex.X_unsigned && ! (operand->flags & (01)))
                  ex.X_add_number = ((((ex.X_add_number) + 0x8000) >> 16) & 0xffff);
                else
                  ex.X_add_number = ((((((((ex.X_add_number) + 0x8000) >> 16) & 0xffff)) & 0xffff) ^ 0x8000) - 0x8000);
                break;

              case BFD_RELOC_PPC64_HIGHER:
                if (ex.X_unsigned && ! (operand->flags & (01)))
                  ex.X_add_number = (((ex.X_add_number) >> 32) & 0xffff);
                else
                  ex.X_add_number = (((((((ex.X_add_number) >> 32) & 0xffff)) & 0xffff) ^ 0x8000) - 0x8000);
                break;

              case BFD_RELOC_PPC64_HIGHER_S:
                if (ex.X_unsigned && ! (operand->flags & (01)))
                  ex.X_add_number = ((((ex.X_add_number) + 0x8000) >> 32) & 0xffff);
                else
                  ex.X_add_number = ((((((((ex.X_add_number) + 0x8000) >> 32) & 0xffff)) & 0xffff) ^ 0x8000) - 0x8000);
                break;

              case BFD_RELOC_PPC64_HIGHEST:
                if (ex.X_unsigned && ! (operand->flags & (01)))
                  ex.X_add_number = (((ex.X_add_number) >> 48) & 0xffff);
                else
                  ex.X_add_number = (((((((ex.X_add_number) >> 48) & 0xffff)) & 0xffff) ^ 0x8000) - 0x8000);
                break;

              case BFD_RELOC_PPC64_HIGHEST_S:
                if (ex.X_unsigned && ! (operand->flags & (01)))
                  ex.X_add_number = ((((ex.X_add_number) + 0x8000) >> 48) & 0xffff);
                else
                  ex.X_add_number = ((((((((ex.X_add_number) + 0x8000) >> 48) & 0xffff)) & 0xffff) ^ 0x8000) - 0x8000);
                break;
              }

          insn = ppc_insert_operand (insn, operand, ex.X_add_number,
                                     (char *) ((void *)0), 0);
        }

      else if ((reloc = ppc_elf_suffix (&str, &ex)) != BFD_RELOC_UNUSED)
        {


          if ((operand->flags & (0400)) != 0)
            {
              switch (reloc)
                {
                case BFD_RELOC_PPC_B26:
                  reloc = BFD_RELOC_PPC_BA26;
                  break;
                case BFD_RELOC_PPC_B16:
                  reloc = BFD_RELOC_PPC_BA16;
                  break;
                case BFD_RELOC_PPC_B16_BRTAKEN:
                  reloc = BFD_RELOC_PPC_BA16_BRTAKEN;
                  break;
                case BFD_RELOC_PPC_B16_BRNTAKEN:
                  reloc = BFD_RELOC_PPC_BA16_BRNTAKEN;
                  break;
                default:
                  break;
                }
            }

          if (ppc_obj64
              && (operand->flags & (020000)) != 0)
            {
              switch (reloc)
                {
                case BFD_RELOC_16:
                  reloc = BFD_RELOC_PPC64_ADDR16_DS;
                  break;
                case BFD_RELOC_LO16:
                  reloc = BFD_RELOC_PPC64_ADDR16_LO_DS;
                  break;
                case BFD_RELOC_16_GOTOFF:
                  reloc = BFD_RELOC_PPC64_GOT16_DS;
                  break;
                case BFD_RELOC_LO16_GOTOFF:
                  reloc = BFD_RELOC_PPC64_GOT16_LO_DS;
                  break;
                case BFD_RELOC_LO16_PLTOFF:
                  reloc = BFD_RELOC_PPC64_PLT16_LO_DS;
                  break;
                case BFD_RELOC_16_BASEREL:
                  reloc = BFD_RELOC_PPC64_SECTOFF_DS;
                  break;
                case BFD_RELOC_LO16_BASEREL:
                  reloc = BFD_RELOC_PPC64_SECTOFF_LO_DS;
                  break;
                case BFD_RELOC_PPC_TOC16:
                  reloc = BFD_RELOC_PPC64_TOC16_DS;
                  break;
                case BFD_RELOC_PPC64_TOC16_LO:
                  reloc = BFD_RELOC_PPC64_TOC16_LO_DS;
                  break;
                case BFD_RELOC_PPC64_PLTGOT16:
                  reloc = BFD_RELOC_PPC64_PLTGOT16_DS;
                  break;
                case BFD_RELOC_PPC64_PLTGOT16_LO:
                  reloc = BFD_RELOC_PPC64_PLTGOT16_LO_DS;
                  break;
                default:
                  as_bad (dcgettext (((void *)0), "unsupported relocation for DS offset field", __LC_MESSAGES));
                  break;
                }
            }


          if (fc >= (5))
            as_fatal (dcgettext (((void *)0), "too many fixups", __LC_MESSAGES));
          fixups[fc].exp = ex;
          fixups[fc].opindex = 0;
          fixups[fc].reloc = reloc;
          ++fc;
        }


      else
        {

          if (fc >= (5))
            as_fatal (dcgettext (((void *)0), "too many fixups", __LC_MESSAGES));
          fixups[fc].exp = ex;
          fixups[fc].opindex = *opindex_ptr;
          fixups[fc].reloc = BFD_RELOC_UNUSED;
          ++fc;
        }

      if (need_paren)
        {
          endc = ')';
          need_paren = 0;
        }
      else if ((operand->flags & (010)) != 0)
        {
          endc = '(';
          need_paren = 1;
        }
      else
        endc = ',';



      if (*str != endc
          && (endc != ',' || *str != '\0'))
        {
          as_bad (dcgettext (((void *)0), "syntax error; found `%c' but expected `%c'", __LC_MESSAGES), *str, endc);
          break;
        }

      if (*str != '\0')
        ++str;
    }

  while ((_sch_istable[(*str) & 0xff] & (unsigned short)(_sch_isspace)))
    ++str;

  if (*str != '\0')
    as_bad (dcgettext (((void *)0), "junk at end of line: `%s'", __LC_MESSAGES), str);


  f = frag_more (4);
  md_number_to_chars (f, insn, 4);


  dwarf2_emit_insn (4);
# 2355 "../../binutils-2.13.1/gas/config/tc-ppc.c"
  for (i = 0; i < fc; i++)
    {
      const struct powerpc_operand *operand;

      operand = &powerpc_operands[fixups[i].opindex];
      if (fixups[i].reloc != BFD_RELOC_UNUSED)
        {
          reloc_howto_type *reloc_howto;
          int size;
          int offset;
          fixS *fixP;

          reloc_howto = bfd_reloc_type_lookup (stdoutput, fixups[i].reloc);
          if (!reloc_howto)
            as_abort ("../../binutils-2.13.1/gas/config/tc-ppc.c", 2369, __PRETTY_FUNCTION__);

          size = bfd_get_reloc_size (reloc_howto);
          offset = target_big_endian ? (4 - size) : 0;

          if (size < 1 || size > 4)
            as_abort ("../../binutils-2.13.1/gas/config/tc-ppc.c", 2375, __PRETTY_FUNCTION__);

          fixP = fix_new_exp (frag_now,
                              f - frag_now->fr_literal + offset,
                              size,
                              &fixups[i].exp,
                              reloc_howto->pc_relative,
                              fixups[i].reloc);



          switch (fixups[i].reloc)
            {
            case BFD_RELOC_16_GOTOFF:
            case BFD_RELOC_PPC_TOC16:
            case BFD_RELOC_LO16:
            case BFD_RELOC_HI16:
            case BFD_RELOC_HI16_S:

            case BFD_RELOC_PPC64_HIGHER:
            case BFD_RELOC_PPC64_HIGHER_S:
            case BFD_RELOC_PPC64_HIGHEST:
            case BFD_RELOC_PPC64_HIGHEST_S:

              fixP->fx_no_overflow = 1;
              break;
            default:
              break;
            }
        }
      else
        fix_new_exp (frag_now,
                     f - frag_now->fr_literal,
                     4,
                     &fixups[i].exp,
                     (operand->flags & (0200)) != 0,
                     ((bfd_reloc_code_real_type)
                      (fixups[i].opindex + (int) BFD_RELOC_UNUSED)));
    }
}






static void
ppc_macro (str, macro)
     char *str;
     const struct powerpc_macro *macro;
{
  char *operands[10];
  unsigned int count;
  char *s;
  unsigned int len;
  const char *format;
  int arg;
  char *send;
  char *complete;


  count = 0;
  s = str;
  while (1)
    {
      if (count >= sizeof operands / sizeof operands[0])
        break;
      operands[count++] = s;
      s = (__extension__ (__builtin_constant_p (',') && (',') == '\0' ? (char *) __rawmemchr (s, ',') : strchr (s, ',')));
      if (s == (char *) ((void *)0))
        break;
      *s++ = '\0';
    }

  if (count != macro->operands)
    {
      as_bad (dcgettext (((void *)0), "wrong number of operands", __LC_MESSAGES));
      return;
    }



  len = 0;
  format = macro->format;
  while (*format != '\0')
    {
      if (*format != '%')
        {
          ++len;
          ++format;
        }
      else
        {
          arg = strtol (format + 1, &send, 10);
          ;
          len += strlen (operands[arg]);
          format = send;
        }
    }


  complete = s = (char *) __builtin_alloca(len + 1);
  format = macro->format;
  while (*format != '\0')
    {
      if (*format != '%')
        *s++ = *format++;
      else
        {
          arg = strtol (format + 1, &send, 10);
          strcpy (s, operands[arg]);
          s += strlen (s);
          format = send;
        }
    }
  *s = '\0';


  md_assemble (complete);
}




int
ppc_section_letter (letter, ptr_msg)
     int letter;
     char **ptr_msg;
{
  if (letter == 'e')
    return 0x80000000;

  *ptr_msg = dcgettext (((void *)0), "Bad .section directive: want a,e,w,x,M,S,G,T in string", __LC_MESSAGES);
  return 0;
}

int
ppc_section_word (str, len)
     char *str;
     size_t len;
{
  if (len == 7 && (__extension__ (__builtin_constant_p (7) && ((__builtin_constant_p (str) && strlen (str) < ((size_t) (7))) || (__builtin_constant_p ("exclude") && strlen ("exclude") < ((size_t) (7)))) ? __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (str) && __builtin_constant_p ("exclude") && (__s1_len = strlen (str), __s2_len = strlen ("exclude"), (!((size_t)(const void *)((str) + 1) - (size_t)(const void *)(str) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("exclude") + 1) - (size_t)(const void *)("exclude") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (str), (__const char *) ("exclude"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (str) && ((size_t)(const void *)((str) + 1) - (size_t)(const void *)(str) == 1) && (__s1_len = strlen (str), __s1_len < 4) ? (__builtin_constant_p ("exclude") && ((size_t)(const void *)(("exclude") + 1) - (size_t)(const void *)("exclude") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (str))[0] - ((__const unsigned char *) (__const char *)("exclude"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (str))[1] - ((__const unsigned char *) (__const char *) ("exclude"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (str))[2] - ((__const unsigned char *) (__const char *) ("exclude"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (str))[3] - ((__const unsigned char *) (__const char *) ("exclude"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("exclude"); register int __result = (((__const unsigned char *) (__const char *) (str))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (str))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (str))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (str))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("exclude") && ((size_t)(const void *)(("exclude") + 1) - (size_t)(const void *)("exclude") == 1) && (__s2_len = strlen ("exclude"), __s2_len < 4) ? (__builtin_constant_p (str) && ((size_t)(const void *)((str) + 1) - (size_t)(const void *)(str) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (str))[0] - ((__const unsigned char *) (__const char *)("exclude"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (str))[1] - ((__const unsigned char *) (__const char *) ("exclude"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (str))[2] - ((__const unsigned char *) (__const char *) ("exclude"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (str))[3] - ((__const unsigned char *) (__const char *) ("exclude"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (str); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("exclude"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("exclude"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("exclude"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("exclude"))[3]); } } __result; }))) : strcmp (str, "exclude")))); }) : strncmp (str, "exclude", 7))) == 0)
    return 0x80000000;

  return -1;
}

int
ppc_section_type (str, len)
     char *str;
     size_t len;
{
  if (len == 7 && (__extension__ (__builtin_constant_p (7) && ((__builtin_constant_p (str) && strlen (str) < ((size_t) (7))) || (__builtin_constant_p ("ordered") && strlen ("ordered") < ((size_t) (7)))) ? __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (str) && __builtin_constant_p ("ordered") && (__s1_len = strlen (str), __s2_len = strlen ("ordered"), (!((size_t)(const void *)((str) + 1) - (size_t)(const void *)(str) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("ordered") + 1) - (size_t)(const void *)("ordered") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (str), (__const char *) ("ordered"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (str) && ((size_t)(const void *)((str) + 1) - (size_t)(const void *)(str) == 1) && (__s1_len = strlen (str), __s1_len < 4) ? (__builtin_constant_p ("ordered") && ((size_t)(const void *)(("ordered") + 1) - (size_t)(const void *)("ordered") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (str))[0] - ((__const unsigned char *) (__const char *)("ordered"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (str))[1] - ((__const unsigned char *) (__const char *) ("ordered"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (str))[2] - ((__const unsigned char *) (__const char *) ("ordered"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (str))[3] - ((__const unsigned char *) (__const char *) ("ordered"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ("ordered"); register int __result = (((__const unsigned char *) (__const char *) (str))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (str))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (str))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (str))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("ordered") && ((size_t)(const void *)(("ordered") + 1) - (size_t)(const void *)("ordered") == 1) && (__s2_len = strlen ("ordered"), __s2_len < 4) ? (__builtin_constant_p (str) && ((size_t)(const void *)((str) + 1) - (size_t)(const void *)(str) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (str))[0] - ((__const unsigned char *) (__const char *)("ordered"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (str))[1] - ((__const unsigned char *) (__const char *) ("ordered"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (str))[2] - ((__const unsigned char *) (__const char *) ("ordered"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (str))[3] - ((__const unsigned char *) (__const char *) ("ordered"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (str); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ("ordered"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ("ordered"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ("ordered"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ("ordered"))[3]); } } __result; }))) : strcmp (str, "ordered")))); }) : strncmp (str, "ordered", 7))) == 0)
    return 0x7FFFFFFF;

  return -1;
}

int
ppc_section_flags (flags, attr, type)
     int flags;
     int attr;
     int type;
{
  if (type == 0x7FFFFFFF)
    flags |= 0x001 | 0x002 | 0x80000;

  if (attr & 0x80000000)
    flags |= 0x40000;

  return flags;
}
# 2555 "../../binutils-2.13.1/gas/config/tc-ppc.c"
static void
ppc_byte (ignore)
     int ignore __attribute__ ((__unused__));
{
  if (*input_line_pointer != '\"')
    {
      cons (1);
      return;
    }



  ++input_line_pointer;
  while (1)
    {
      char c;

      c = *input_line_pointer++;

      if (c == '\"')
        {
          if (*input_line_pointer != '\"')
            break;
          ++input_line_pointer;
        }

      frag_append_1_char (c);
    }

  demand_empty_rest_of_line ();
}
# 3611 "../../binutils-2.13.1/gas/config/tc-ppc.c"
static void
ppc_tc (ignore)
     int ignore __attribute__ ((__unused__));
{
# 3671 "../../binutils-2.13.1/gas/config/tc-ppc.c"
  int align;


  while (( lex_type[(unsigned char) (*input_line_pointer)] & (1) )
         || *input_line_pointer == '['
         || *input_line_pointer == ']'
         || *input_line_pointer == '{'
         || *input_line_pointer == '}')
    ++input_line_pointer;


  align = ppc_obj64 ? 3 : 2;
  frag_align (align, 0, 0);
  record_alignment (now_seg, align);


  if (*input_line_pointer != ',')
    demand_empty_rest_of_line ();
  else
    {
      ++input_line_pointer;
      cons (ppc_obj64 ? 8 : 4);
    }
}
# 3704 "../../binutils-2.13.1/gas/config/tc-ppc.c"
static void
ppc_machine (ignore)
     int ignore __attribute__ ((__unused__));
{
  discard_rest_of_line ();
}



static int
ppc_is_toc_sym (sym)
     symbolS *sym;
{




  const char *sname = ((S_GET_SEGMENT (sym))->name + 0);
  if (ppc_obj64)
    return __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (sname) && __builtin_constant_p (".toc") && (__s1_len = strlen (sname), __s2_len = strlen (".toc"), (!((size_t)(const void *)((sname) + 1) - (size_t)(const void *)(sname) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((".toc") + 1) - (size_t)(const void *)(".toc") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (sname), (__const char *) (".toc"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (sname) && ((size_t)(const void *)((sname) + 1) - (size_t)(const void *)(sname) == 1) && (__s1_len = strlen (sname), __s1_len < 4) ? (__builtin_constant_p (".toc") && ((size_t)(const void *)((".toc") + 1) - (size_t)(const void *)(".toc") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (sname))[0] - ((__const unsigned char *) (__const char *)(".toc"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (sname))[1] - ((__const unsigned char *) (__const char *) (".toc"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (sname))[2] - ((__const unsigned char *) (__const char *) (".toc"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (sname))[3] - ((__const unsigned char *) (__const char *) (".toc"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) (".toc"); register int __result = (((__const unsigned char *) (__const char *) (sname))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (sname))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (sname))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (sname))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (".toc") && ((size_t)(const void *)((".toc") + 1) - (size_t)(const void *)(".toc") == 1) && (__s2_len = strlen (".toc"), __s2_len < 4) ? (__builtin_constant_p (sname) && ((size_t)(const void *)((sname) + 1) - (size_t)(const void *)(sname) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (sname))[0] - ((__const unsigned char *) (__const char *)(".toc"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (sname))[1] - ((__const unsigned char *) (__const char *) (".toc"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (sname))[2] - ((__const unsigned char *) (__const char *) (".toc"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (sname))[3] - ((__const unsigned char *) (__const char *) (".toc"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (sname); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) (".toc"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) (".toc"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) (".toc"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) (".toc"))[3]); } } __result; }))) : strcmp (sname, ".toc")))); }) == 0;
  else
    return __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (sname) && __builtin_constant_p (".got") && (__s1_len = strlen (sname), __s2_len = strlen (".got"), (!((size_t)(const void *)((sname) + 1) - (size_t)(const void *)(sname) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((".got") + 1) - (size_t)(const void *)(".got") == 1) || __s2_len >= 4)) ? memcmp ((__const char *) (sname), (__const char *) (".got"), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p (sname) && ((size_t)(const void *)((sname) + 1) - (size_t)(const void *)(sname) == 1) && (__s1_len = strlen (sname), __s1_len < 4) ? (__builtin_constant_p (".got") && ((size_t)(const void *)((".got") + 1) - (size_t)(const void *)(".got") == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (sname))[0] - ((__const unsigned char *) (__const char *)(".got"))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (sname))[1] - ((__const unsigned char *) (__const char *) (".got"))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (sname))[2] - ((__const unsigned char *) (__const char *) (".got"))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (sname))[3] - ((__const unsigned char *) (__const char *) (".got"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) (".got"); register int __result = (((__const unsigned char *) (__const char *) (sname))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (sname))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (sname))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (sname))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (".got") && ((size_t)(const void *)((".got") + 1) - (size_t)(const void *)(".got") == 1) && (__s2_len = strlen (".got"), __s2_len < 4) ? (__builtin_constant_p (sname) && ((size_t)(const void *)((sname) + 1) - (size_t)(const void *)(sname) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) (sname))[0] - ((__const unsigned char *) (__const char *)(".got"))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (sname))[1] - ((__const unsigned char *) (__const char *) (".got"))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) (sname))[2] - ((__const unsigned char *) (__const char *) (".got"))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) (sname))[3] - ((__const unsigned char *) (__const char *) (".got"))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) (sname); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) (".got"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) (".got"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) (".got"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) (".got"))[3]); } } __result; }))) : strcmp (sname, ".got")))); }) == 0;

}
# 4812 "../../binutils-2.13.1/gas/config/tc-ppc.c"
char *
md_atof (type, litp, sizep)
     int type;
     char *litp;
     int *sizep;
{
  int prec;
  LITTLENUM_TYPE words[4];
  char *t;
  int i;

  switch (type)
    {
    case 'f':
      prec = 2;
      break;

    case 'd':
      prec = 4;
      break;

    default:
      *sizep = 0;
      return dcgettext (((void *)0), "bad call to md_atof", __LC_MESSAGES);
    }

  t = atof_ieee (input_line_pointer, type, words);
  if (t)
    input_line_pointer = t;

  *sizep = prec * 2;

  if (target_big_endian)
    {
      for (i = 0; i < prec; i++)
        {
          md_number_to_chars (litp, (valueT) words[i], 2);
          litp += 2;
        }
    }
  else
    {
      for (i = prec - 1; i >= 0; i--)
        {
          md_number_to_chars (litp, (valueT) words[i], 2);
          litp += 2;
        }
    }

  return ((void *)0);
}




void
md_number_to_chars (buf, val, n)
     char *buf;
     valueT val;
     int n;
{
  if (target_big_endian)
    number_to_chars_bigendian (buf, val, n);
  else
    number_to_chars_littleendian (buf, val, n);
}



valueT
md_section_align (seg, addr)
     asection *seg;
     valueT addr;
{
  int align = ((seg)->alignment_power + 0);

  return ((addr + (1 << align) - 1) & (-1 << align));
}



int
md_estimate_size_before_relax (fragp, seg)
     fragS *fragp __attribute__ ((__unused__));
     asection *seg __attribute__ ((__unused__));
{
  as_abort ("../../binutils-2.13.1/gas/config/tc-ppc.c", 4898, __PRETTY_FUNCTION__);
  return 0;
}



void
md_convert_frag (abfd, sec, fragp)
     bfd *abfd __attribute__ ((__unused__));
     asection *sec __attribute__ ((__unused__));
     fragS *fragp __attribute__ ((__unused__));
{
  as_abort ("../../binutils-2.13.1/gas/config/tc-ppc.c", 4910, __PRETTY_FUNCTION__);
}



symbolS *
md_undefined_symbol (name)
     char *name __attribute__ ((__unused__));
{
  return 0;
}






long
md_pcrel_from_section (fixp, sec)
     fixS *fixp;
     segT sec __attribute__ ((__unused__));
{
  return fixp->fx_frag->fr_address + fixp->fx_where;
}
# 5090 "../../binutils-2.13.1/gas/config/tc-ppc.c"
int
ppc_fix_adjustable (fix)
     fixS *fix;
{
  return (fix->fx_r_type != BFD_RELOC_16_GOTOFF
          && fix->fx_r_type != BFD_RELOC_LO16_GOTOFF
          && fix->fx_r_type != BFD_RELOC_HI16_GOTOFF
          && fix->fx_r_type != BFD_RELOC_HI16_S_GOTOFF
          && fix->fx_r_type != BFD_RELOC_GPREL16
          && fix->fx_r_type != BFD_RELOC_VTABLE_INHERIT
          && fix->fx_r_type != BFD_RELOC_VTABLE_ENTRY
          && ! S_IS_EXTERNAL (fix->fx_addsy)
          && ! S_IS_WEAK (fix->fx_addsy)
          && (fix->fx_pcrel
              || (fix->fx_subsy != ((void *)0)
                  && (S_GET_SEGMENT (fix->fx_subsy)
                      == S_GET_SEGMENT (fix->fx_addsy)))
              || S_IS_LOCAL (fix->fx_addsy)));
}
# 5120 "../../binutils-2.13.1/gas/config/tc-ppc.c"
void
md_apply_fix3 (fixP, valP, seg)
     fixS *fixP;
     valueT * valP;
     segT seg __attribute__ ((__unused__));
{
  valueT value = * valP;


  if (fixP->fx_addsy != ((void *)0))
    {


      if (symbol_used_in_reloc_p (fixP->fx_addsy)
          && S_GET_SEGMENT (fixP->fx_addsy) != ((asection *) &bfd_abs_section)
          && S_GET_SEGMENT (fixP->fx_addsy) != ((asection *) &bfd_und_section)
          && ! (((S_GET_SEGMENT (fixP->fx_addsy))->flags & 0x8000) != 0))
        value -= S_GET_VALUE (fixP->fx_addsy);




      if (fixP->fx_pcrel)
        value += fixP->fx_frag->fr_address + fixP->fx_where;
    }
  else
    fixP->fx_done = 1;
# 5181 "../../binutils-2.13.1/gas/config/tc-ppc.c"
  if ((int) fixP->fx_r_type >= (int) BFD_RELOC_UNUSED)
    {
      int opindex;
      const struct powerpc_operand *operand;
      char *where;
      unsigned long insn;

      opindex = (int) fixP->fx_r_type - (int) BFD_RELOC_UNUSED;

      operand = &powerpc_operands[opindex];
# 5214 "../../binutils-2.13.1/gas/config/tc-ppc.c"
      where = fixP->fx_frag->fr_literal + fixP->fx_where;
      if (target_big_endian)
        insn = bfd_getb32 ((unsigned char *) where);
      else
        insn = bfd_getl32 ((unsigned char *) where);
      insn = ppc_insert_operand (insn, operand, (offsetT) value,
                                 fixP->fx_file, fixP->fx_line);
      if (target_big_endian)
        bfd_putb32 ((bfd_vma) insn, (unsigned char *) where);
      else
        bfd_putl32 ((bfd_vma) insn, (unsigned char *) where);

      if (fixP->fx_done)

        return;

      ((fixP->fx_addsy != ((void *)0)) ? 0 : (as_assert ("../../binutils-2.13.1/gas/config/tc-ppc.c", 5230, __PRETTY_FUNCTION__), 0));




      if ((operand->flags & (0200)) != 0
          && operand->bits == 26
          && operand->shift == 0)
        fixP->fx_r_type = BFD_RELOC_PPC_B26;
      else if ((operand->flags & (0200)) != 0
          && operand->bits == 16
          && operand->shift == 0)
        {
          fixP->fx_r_type = BFD_RELOC_PPC_B16;





        }
      else if ((operand->flags & (0400)) != 0
               && operand->bits == 26
               && operand->shift == 0)
        fixP->fx_r_type = BFD_RELOC_PPC_BA26;
      else if ((operand->flags & (0400)) != 0
               && operand->bits == 16
               && operand->shift == 0)
        {
          fixP->fx_r_type = BFD_RELOC_PPC_BA16;





        }

      else if ((operand->flags & (010)) != 0
               && operand->bits == 16
               && operand->shift == 0
               && ppc_is_toc_sym (fixP->fx_addsy))
        {
          fixP->fx_r_type = BFD_RELOC_PPC_TOC16;

          if (ppc_obj64
              && (operand->flags & (020000)) != 0)
            fixP->fx_r_type = BFD_RELOC_PPC64_TOC16_DS;

          fixP->fx_size = 2;
          if (target_big_endian)
            fixP->fx_where += 2;
        }

      else
        {
          char *sfile;
          unsigned int sline;



          if (expr_symbol_where (fixP->fx_addsy, &sfile, &sline))
            as_bad_where (fixP->fx_file, fixP->fx_line,
                          dcgettext (((void *)0), "unresolved expression that must be resolved", __LC_MESSAGES));
          else
            as_bad_where (fixP->fx_file, fixP->fx_line,
                          dcgettext (((void *)0), "unsupported relocation against %s", __LC_MESSAGES),
                          S_GET_NAME (fixP->fx_addsy));
          fixP->fx_done = 1;
          return;
        }
    }
  else
    {

      ppc_elf_validate_fix (fixP, seg);

      switch (fixP->fx_r_type)
        {
        case BFD_RELOC_CTOR:
          if (ppc_obj64)
            goto ctor64;


        case BFD_RELOC_32:
          if (fixP->fx_pcrel)
            fixP->fx_r_type = BFD_RELOC_32_PCREL;


        case BFD_RELOC_RVA:
        case BFD_RELOC_32_PCREL:
        case BFD_RELOC_PPC_EMB_NADDR32:
          md_number_to_chars (fixP->fx_frag->fr_literal + fixP->fx_where,
                              value, 4);
          break;

        case BFD_RELOC_64:
        ctor64:
          if (fixP->fx_pcrel)
            fixP->fx_r_type = BFD_RELOC_64_PCREL;


        case BFD_RELOC_64_PCREL:
          md_number_to_chars (fixP->fx_frag->fr_literal + fixP->fx_where,
                              value, 8);
          break;

        case BFD_RELOC_LO16:
        case BFD_RELOC_16:
        case BFD_RELOC_GPREL16:
        case BFD_RELOC_16_GOT_PCREL:
        case BFD_RELOC_16_GOTOFF:
        case BFD_RELOC_LO16_GOTOFF:
        case BFD_RELOC_HI16_GOTOFF:
        case BFD_RELOC_HI16_S_GOTOFF:
        case BFD_RELOC_16_BASEREL:
        case BFD_RELOC_LO16_BASEREL:
        case BFD_RELOC_HI16_BASEREL:
        case BFD_RELOC_HI16_S_BASEREL:
        case BFD_RELOC_PPC_EMB_NADDR16:
        case BFD_RELOC_PPC_EMB_NADDR16_LO:
        case BFD_RELOC_PPC_EMB_NADDR16_HI:
        case BFD_RELOC_PPC_EMB_NADDR16_HA:
        case BFD_RELOC_PPC_EMB_SDAI16:
        case BFD_RELOC_PPC_EMB_SDA2REL:
        case BFD_RELOC_PPC_EMB_SDA2I16:
        case BFD_RELOC_PPC_EMB_RELSEC16:
        case BFD_RELOC_PPC_EMB_RELST_LO:
        case BFD_RELOC_PPC_EMB_RELST_HI:
        case BFD_RELOC_PPC_EMB_RELST_HA:
        case BFD_RELOC_PPC_EMB_RELSDA:
        case BFD_RELOC_PPC_TOC16:

        case BFD_RELOC_PPC64_TOC16_LO:
        case BFD_RELOC_PPC64_TOC16_HI:
        case BFD_RELOC_PPC64_TOC16_HA:

          if (fixP->fx_pcrel)
            {
              if (fixP->fx_addsy != ((void *)0))
                as_bad_where (fixP->fx_file, fixP->fx_line,
                              dcgettext (((void *)0), "cannot emit PC relative %s relocation against %s", __LC_MESSAGES),
                              bfd_get_reloc_code_name (fixP->fx_r_type),
                              S_GET_NAME (fixP->fx_addsy));
              else
                as_bad_where (fixP->fx_file, fixP->fx_line,
                              dcgettext (((void *)0), "cannot emit PC relative %s relocation", __LC_MESSAGES),
                              bfd_get_reloc_code_name (fixP->fx_r_type));
            }

          md_number_to_chars (fixP->fx_frag->fr_literal + fixP->fx_where,
                              value, 2);
          break;




        case BFD_RELOC_HI16:
          if (fixP->fx_pcrel)
            as_abort ("../../binutils-2.13.1/gas/config/tc-ppc.c", 5387, __PRETTY_FUNCTION__);
          md_number_to_chars (fixP->fx_frag->fr_literal + fixP->fx_where,
                              (((value) >> 16) & 0xffff), 2);
          break;

        case BFD_RELOC_HI16_S:
          if (fixP->fx_pcrel)
            as_abort ("../../binutils-2.13.1/gas/config/tc-ppc.c", 5394, __PRETTY_FUNCTION__);
          md_number_to_chars (fixP->fx_frag->fr_literal + fixP->fx_where,
                              ((((value) + 0x8000) >> 16) & 0xffff), 2);
          break;


        case BFD_RELOC_PPC64_HIGHER:
          if (fixP->fx_pcrel)
            as_abort ("../../binutils-2.13.1/gas/config/tc-ppc.c", 5402, __PRETTY_FUNCTION__);
          md_number_to_chars (fixP->fx_frag->fr_literal + fixP->fx_where,
                              (((value) >> 32) & 0xffff), 2);
          break;

        case BFD_RELOC_PPC64_HIGHER_S:
          if (fixP->fx_pcrel)
            as_abort ("../../binutils-2.13.1/gas/config/tc-ppc.c", 5409, __PRETTY_FUNCTION__);
          md_number_to_chars (fixP->fx_frag->fr_literal + fixP->fx_where,
                              ((((value) + 0x8000) >> 32) & 0xffff), 2);
          break;

        case BFD_RELOC_PPC64_HIGHEST:
          if (fixP->fx_pcrel)
            as_abort ("../../binutils-2.13.1/gas/config/tc-ppc.c", 5416, __PRETTY_FUNCTION__);
          md_number_to_chars (fixP->fx_frag->fr_literal + fixP->fx_where,
                              (((value) >> 48) & 0xffff), 2);
          break;

        case BFD_RELOC_PPC64_HIGHEST_S:
          if (fixP->fx_pcrel)
            as_abort ("../../binutils-2.13.1/gas/config/tc-ppc.c", 5423, __PRETTY_FUNCTION__);
          md_number_to_chars (fixP->fx_frag->fr_literal + fixP->fx_where,
                              ((((value) + 0x8000) >> 48) & 0xffff), 2);
          break;

        case BFD_RELOC_PPC64_ADDR16_DS:
        case BFD_RELOC_PPC64_ADDR16_LO_DS:
        case BFD_RELOC_PPC64_GOT16_DS:
        case BFD_RELOC_PPC64_GOT16_LO_DS:
        case BFD_RELOC_PPC64_PLT16_LO_DS:
        case BFD_RELOC_PPC64_SECTOFF_DS:
        case BFD_RELOC_PPC64_SECTOFF_LO_DS:
        case BFD_RELOC_PPC64_TOC16_DS:
        case BFD_RELOC_PPC64_TOC16_LO_DS:
        case BFD_RELOC_PPC64_PLTGOT16_DS:
        case BFD_RELOC_PPC64_PLTGOT16_LO_DS:
          if (fixP->fx_pcrel)
            as_abort ("../../binutils-2.13.1/gas/config/tc-ppc.c", 5440, __PRETTY_FUNCTION__);
          {
            unsigned char *where = fixP->fx_frag->fr_literal + fixP->fx_where;
            unsigned long val;

            if (target_big_endian)
              val = bfd_getb16 (where);
            else
              val = bfd_getl16 (where);
            val |= (value & 0xfffc);
            if (target_big_endian)
              bfd_putb16 ((bfd_vma) val, where);
            else
              bfd_putl16 ((bfd_vma) val, where);
          }
          break;



        case BFD_RELOC_PPC_EMB_SDA21:
          if (fixP->fx_pcrel)
            as_abort ("../../binutils-2.13.1/gas/config/tc-ppc.c", 5461, __PRETTY_FUNCTION__);

          md_number_to_chars (fixP->fx_frag->fr_literal + fixP->fx_where
                              + ((target_big_endian) ? 2 : 0),
                              value, 2);
          break;

        case BFD_RELOC_8:
          if (fixP->fx_pcrel)
            as_abort ("../../binutils-2.13.1/gas/config/tc-ppc.c", 5470, __PRETTY_FUNCTION__);

          md_number_to_chars (fixP->fx_frag->fr_literal + fixP->fx_where,
                              value, 1);
          break;

        case BFD_RELOC_24_PLT_PCREL:
        case BFD_RELOC_PPC_LOCAL24PC:
          if (!fixP->fx_pcrel && !fixP->fx_done)
            as_abort ("../../binutils-2.13.1/gas/config/tc-ppc.c", 5479, __PRETTY_FUNCTION__);

          if (fixP->fx_done)
            {
              char *where;
              unsigned long insn;



              where = fixP->fx_frag->fr_literal + fixP->fx_where;
              if (target_big_endian)
                insn = bfd_getb32 ((unsigned char *) where);
              else
                insn = bfd_getl32 ((unsigned char *) where);
              if ((value & 3) != 0)
                as_bad_where (fixP->fx_file, fixP->fx_line,
                              dcgettext (((void *)0), "must branch to an address a multiple of 4", __LC_MESSAGES));
              if ((offsetT) value < -0x40000000
                  || (offsetT) value >= 0x40000000)
                as_bad_where (fixP->fx_file, fixP->fx_line,
                              dcgettext (((void *)0), "@local or @plt branch destination is too far away, %ld bytes", __LC_MESSAGES),
                              (long) value);
              insn = insn | (value & 0x03fffffc);
              if (target_big_endian)
                bfd_putb32 ((bfd_vma) insn, (unsigned char *) where);
              else
                bfd_putl32 ((bfd_vma) insn, (unsigned char *) where);
            }
          break;

        case BFD_RELOC_VTABLE_INHERIT:
          fixP->fx_done = 0;
          if (fixP->fx_addsy
              && !S_IS_DEFINED (fixP->fx_addsy)
              && !S_IS_WEAK (fixP->fx_addsy))
            S_SET_WEAK (fixP->fx_addsy);
          break;

        case BFD_RELOC_VTABLE_ENTRY:
          fixP->fx_done = 0;
          break;




        case BFD_RELOC_PPC64_TOC:
          fixP->fx_done = 0;
          break;

        default:
          fprintf (stderr,
                   dcgettext (((void *)0), "Gas failure, reloc value %d\n", __LC_MESSAGES), fixP->fx_r_type);
          fflush (stderr);
          as_abort ("../../binutils-2.13.1/gas/config/tc-ppc.c", 5532, __PRETTY_FUNCTION__);
        }
    }


  fixP->fx_addnumber = value;
# 5553 "../../binutils-2.13.1/gas/config/tc-ppc.c"
}



arelent *
tc_gen_reloc (seg, fixp)
     asection *seg __attribute__ ((__unused__));
     fixS *fixp;
{
  arelent *reloc;

  reloc = (arelent *) xmalloc (sizeof (arelent));

  reloc->sym_ptr_ptr = (asymbol **) xmalloc (sizeof (asymbol *));
  *reloc->sym_ptr_ptr = symbol_get_bfdsym (fixp->fx_addsy);
  reloc->address = fixp->fx_frag->fr_address + fixp->fx_where;
  reloc->howto = bfd_reloc_type_lookup (stdoutput, fixp->fx_r_type);
  if (reloc->howto == (reloc_howto_type *) ((void *)0))
    {
      as_bad_where (fixp->fx_file, fixp->fx_line,
                    dcgettext (((void *)0), "reloc %d not supported by object file format", __LC_MESSAGES),
                    (int) fixp->fx_r_type);
      return ((void *)0);
    }
  reloc->addend = fixp->fx_addnumber;

  return reloc;
}


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2003-05-05 14:50 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-05-05 14:50 c/10422: Internal compiler error in simplify_subreg, at simplify-rtx.c:2452 bangerth
  -- strict thread matches above, loose matches on Subject: below --
2003-04-17  9:56 Oliver Gräbner
2003-04-16 13:36 oliver.graebner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).