From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 18574 invoked by alias); 3 May 2003 00:56:00 -0000 Mailing-List: contact gcc-prs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-prs-owner@gcc.gnu.org Received: (qmail 18553 invoked by uid 71); 3 May 2003 00:56:00 -0000 Resent-Date: 3 May 2003 00:56:00 -0000 Resent-Message-ID: <20030503005600.18552.qmail@sources.redhat.com> Resent-From: gcc-gnats@gcc.gnu.org (GNATS Filer) Resent-Cc: gcc-prs@gcc.gnu.org, gcc-bugs@gcc.gnu.org Resent-Reply-To: gcc-gnats@gcc.gnu.org, fvdl@wasabisystems.com Received: (qmail 22756 invoked from network); 3 May 2003 00:50:20 -0000 Received: from unknown (HELO k2.vaasje.org) (24.132.6.39) by sources.redhat.com with SMTP; 3 May 2003 00:50:20 -0000 Received: (from fvdl@localhost) by k2.vaasje.org (8.11.6/8.11.0) id h433S6I01457; Sat, 3 May 2003 05:28:06 +0200 (CEST) Message-Id: <200305030328.h433S6I01457@k2.vaasje.org> Date: Sat, 03 May 2003 00:56:00 -0000 From: fvdl@wasabisystems.com Reply-To: fvdl@wasabisystems.com To: gcc-gnats@gcc.gnu.org X-Send-Pr-Version: 3.113 Subject: middle-end/10607: 3.3 branch: assertion failure in varasm.c on x86_64 X-SW-Source: 2003-05/txt/msg00177.txt.bz2 List-Id: >Number: 10607 >Category: middle-end >Synopsis: 3.3 branch: assertion failure in varasm.c on x86_64 >Confidential: no >Severity: critical >Priority: medium >Responsible: unassigned >State: open >Class: sw-bug >Submitter-Id: net >Arrival-Date: Sat May 03 00:56:00 UTC 2003 >Closed-Date: >Last-Modified: >Originator: Frank van der Linden >Release: 3.3 20030502 (prerelease) >Organization: NetBSD >Environment: System: NetBSD thingy 1.6R NetBSD 1.6R (GENERIC) #2: Mon Apr 28 16:14:16 CEST 2003 fvdl@thingy:/work/trees/current/sys/arch/amd64/compile/GENERIC amd64 host: x86_64-unknown-netbsd1.6R build: x86_64-unknown-netbsd1.6R target: x86_64-unknown-netbsd1.6R configured with: /work/trees/toolchain/gcc/configure --disable-shared --enable-languages=c c++ >Description: When compiling NetBSD's crtbegin.c natively on NetBSD/amd64 (x86_64), gcc, as compiled from the 3.3 branch on may 2nd, fails as follows: ============================================================================== thingy# gcc -v -fPIC -Wall -Wstrict-prototypes -Wmissing-prototypes -Wpointer-ar ith -Wno-sign-compare -Wno-uninitialized -Wreturn-type -Wswitch -Wshadow -I- -I/ work/trees/current/lib/csu/x86_64 -DLIBC_SCCS -DPIC -DDYNAMIC -DELFSIZE=64 -I/wo rk/trees/current/libexec/ld.elf_so -I/work/trees/current/lib/csu/x86_64/../commo n_elf -I/work/trees/current/lib/libc/dlfcn -DDWARF2_EH -DJCR -DDSO_HANDLE -nostd inc -isystem /scratch/build/usr/include -c /work/trees/current/lib/csu/common_el f/crtbegin.c Reading specs from /usr/local/lib/gcc-lib/x86_64-unknown-netbsd1.6R/3.3/specs Configured with: /work/trees/toolchain/gcc/configure --disable-shared --enable-l anguages=c c++ Thread model: single gcc version 3.3 20030502 (prerelease) /usr/local/lib/gcc-lib/x86_64-unknown-netbsd1.6R/3.3/cc1 -quiet -nostdinc -v -I - -I/work/trees/current/lib/csu/x86_64 -I/work/trees/current/libexec/ld.elf_so - I/work/trees/current/lib/csu/x86_64/../common_elf -I/work/trees/current/lib/libc /dlfcn -D__GNUC__=3 -D__GNUC_MINOR__=3 -D__GNUC_PATCHLEVEL__=0 -DLIBC_SCCS -DPIC -DDYNAMIC -DELFSIZE=64 -DDWARF2_EH -DJCR -DDSO_HANDLE -isystem /scratch/build/u sr/include /work/trees/current/lib/csu/common_elf/crtbegin.c -quiet -dumpbase cr tbegin.c -auxbase crtbegin -Wall -Wstrict-prototypes -Wmissing-prototypes -Wpoin ter-arith -Wno-sign-compare -Wno-uninitialized -Wreturn-type -Wswitch -Wshadow - version -fPIC -o /var/tmp//cc8rfWRD.s GNU C version 3.3 20030502 (prerelease) (x86_64-unknown-netbsd1.6R) compiled by GNU C version 3.3 20030426 (prerelease). GGC heuristics: --param ggc-min-expand=38 --param ggc-min-heapsize=16384 #include "..." search starts here: #include <...> search starts here: /work/trees/current/lib/csu/x86_64 /work/trees/current/libexec/ld.elf_so /work/trees/current/lib/csu/common_elf /work/trees/current/lib/libc/dlfcn /scratch/build/usr/include End of search list. /work/trees/current/lib/csu/common_elf/crtbegin.c:201: internal compiler error: in named_section_flags, at varasm.c:412 ============================================================================== The .i file reproduces the problem immediately, without flags. The problem also occurs with a 20030426 i386->x86_64 crosscompiler. The .i file: ============================================================================== # 1 "/work/trees/current/lib/csu/common_elf/crtbegin.c" # 1 "" # 1 "" # 1 "/work/trees/current/lib/csu/common_elf/crtbegin.c" # 50 "/work/trees/current/lib/csu/common_elf/crtbegin.c" # 1 "/scratch/build/usr/include/sys/param.h" 1 3 4 # 86 "/scratch/build/usr/include/sys/param.h" 3 4 # 1 "/scratch/build/usr/include/sys/null.h" 1 3 4 # 87 "/scratch/build/usr/include/sys/param.h" 2 3 4 # 1 "/scratch/build/usr/include/sys/inttypes.h" 1 3 4 # 46 "/scratch/build/usr/include/sys/inttypes.h" 3 4 # 1 "/scratch/build/usr/include/sys/stdint.h" 1 3 4 # 42 "/scratch/build/usr/include/sys/stdint.h" 3 4 # 1 "/scratch/build/usr/include/machine/int_types.h" 1 3 4 # 47 "/scratch/build/usr/include/machine/int_types.h" 3 4 typedef __signed char __int8_t; typedef unsigned char __uint8_t; typedef short int __int16_t; typedef unsigned short int __uint16_t; typedef int __int32_t; typedef unsigned int __uint32_t; typedef long int __int64_t; typedef unsigned long int __uint64_t; typedef long __intptr_t; typedef unsigned long __uintptr_t; # 43 "/scratch/build/usr/include/sys/stdint.h" 2 3 4 typedef __int8_t int8_t; typedef __uint8_t uint8_t; typedef __int16_t int16_t; typedef __uint16_t uint16_t; typedef __int32_t int32_t; typedef __uint32_t uint32_t; typedef __int64_t int64_t; typedef __uint64_t uint64_t; typedef __intptr_t intptr_t; typedef __uintptr_t uintptr_t; # 1 "/scratch/build/usr/include/machine/int_mwgwtypes.h" 1 3 4 # 48 "/scratch/build/usr/include/machine/int_mwgwtypes.h" 3 4 typedef __signed char int_least8_t; typedef unsigned char uint_least8_t; typedef short int int_least16_t; typedef unsigned short int uint_least16_t; typedef int int_least32_t; typedef unsigned int uint_least32_t; typedef long int int_least64_t; typedef unsigned long int uint_least64_t; typedef int int_fast8_t; typedef unsigned int uint_fast8_t; typedef int int_fast16_t; typedef unsigned int uint_fast16_t; typedef int int_fast32_t; typedef unsigned int uint_fast32_t; typedef long int int_fast64_t; typedef unsigned long int uint_fast64_t; typedef long int intmax_t; typedef unsigned long int uintmax_t; # 95 "/scratch/build/usr/include/sys/stdint.h" 2 3 4 # 1 "/scratch/build/usr/include/machine/int_limits.h" 1 3 4 # 98 "/scratch/build/usr/include/sys/stdint.h" 2 3 4 # 1 "/scratch/build/usr/include/machine/int_const.h" 1 3 4 # 102 "/scratch/build/usr/include/sys/stdint.h" 2 3 4 # 47 "/scratch/build/usr/include/sys/inttypes.h" 2 3 4 # 1 "/scratch/build/usr/include/machine/int_fmtio.h" 1 3 4 # 50 "/scratch/build/usr/include/sys/inttypes.h" 2 3 4 # 90 "/scratch/build/usr/include/sys/param.h" 2 3 4 # 1 "/scratch/build/usr/include/sys/types.h" 1 3 4 # 46 "/scratch/build/usr/include/sys/types.h" 3 4 # 1 "/scratch/build/usr/include/sys/featuretest.h" 1 3 4 # 47 "/scratch/build/usr/include/sys/types.h" 2 3 4 # 1 "/scratch/build/usr/include/machine/types.h" 1 3 4 # 41 "/scratch/build/usr/include/machine/types.h" 3 4 # 1 "/scratch/build/usr/include/sys/cdefs.h" 1 3 4 # 63 "/scratch/build/usr/include/sys/cdefs.h" 3 4 # 1 "/scratch/build/usr/include/machine/cdefs.h" 1 3 4 # 64 "/scratch/build/usr/include/sys/cdefs.h" 2 3 4 # 1 "/scratch/build/usr/include/sys/cdefs_elf.h" 1 3 4 # 66 "/scratch/build/usr/include/sys/cdefs.h" 2 3 4 # 42 "/scratch/build/usr/include/machine/types.h" 2 3 4 # 1 "/scratch/build/usr/include/sys/featuretest.h" 1 3 4 # 43 "/scratch/build/usr/include/machine/types.h" 2 3 4 # 53 "/scratch/build/usr/include/machine/types.h" 3 4 typedef unsigned long paddr_t; typedef unsigned long psize_t; typedef unsigned long vaddr_t; typedef unsigned long vsize_t; typedef long int register_t; typedef int register32_t; # 50 "/scratch/build/usr/include/sys/types.h" 2 3 4 # 1 "/scratch/build/usr/include/machine/ansi.h" 1 3 4 # 96 "/scratch/build/usr/include/machine/ansi.h" 3 4 typedef union { char __mbstate8[128]; __int64_t __mbstateL; } __mbstate_t; # 52 "/scratch/build/usr/include/sys/types.h" 2 3 4 # 1 "/scratch/build/usr/include/sys/ansi.h" 1 3 4 # 44 "/scratch/build/usr/include/sys/ansi.h" 3 4 typedef char * __caddr_t; typedef __uint32_t __gid_t; typedef __uint32_t __in_addr_t; typedef __uint16_t __in_port_t; typedef __uint32_t __mode_t; typedef __int64_t __off_t; typedef __int32_t __pid_t; typedef __uint8_t __sa_family_t; typedef unsigned int __socklen_t; typedef __uint32_t __uid_t; # 56 "/scratch/build/usr/include/sys/types.h" 2 3 4 # 97 "/scratch/build/usr/include/sys/types.h" 3 4 typedef __uint8_t u_int8_t; typedef __uint16_t u_int16_t; typedef __uint32_t u_int32_t; typedef __uint64_t u_int64_t; # 1 "/scratch/build/usr/include/machine/endian.h" 1 3 4 # 1 "/scratch/build/usr/include/sys/endian.h" 1 3 4 # 41 "/scratch/build/usr/include/sys/endian.h" 3 4 # 1 "/scratch/build/usr/include/sys/featuretest.h" 1 3 4 # 42 "/scratch/build/usr/include/sys/endian.h" 2 3 4 # 51 "/scratch/build/usr/include/sys/endian.h" 3 4 # 1 "/scratch/build/usr/include/machine/endian_machdep.h" 1 3 4 # 1 "/scratch/build/usr/include/machine/byte_swap.h" 1 3 4 # 46 "/scratch/build/usr/include/machine/byte_swap.h" 3 4 # 1 "/scratch/build/usr/include/sys/types.h" 1 3 4 # 47 "/scratch/build/usr/include/machine/byte_swap.h" 2 3 4 static __inline u_int32_t __byte_swap_long_variable(u_int32_t); static __inline u_int16_t __byte_swap_word_variable(u_int16_t); static __inline u_int32_t __byte_swap_long_variable(u_int32_t x) { __asm volatile ( "bswap %1" : "=r" (x) : "0" (x)); return (x); } static __inline u_int16_t __byte_swap_word_variable(u_int16_t x) { __asm volatile ("rorw $8, %w1" : "=r" (x) : "0" (x)); return (x); } # 8 "/scratch/build/usr/include/machine/endian_machdep.h" 2 3 4 # 52 "/scratch/build/usr/include/sys/endian.h" 2 3 4 # 86 "/scratch/build/usr/include/sys/endian.h" 3 4 typedef __in_addr_t in_addr_t; typedef __in_port_t in_port_t; __uint32_t htonl (__uint32_t) __attribute__((__const__)); __uint16_t htons (__uint16_t) __attribute__((__const__)); __uint32_t ntohl (__uint32_t) __attribute__((__const__)); __uint16_t ntohs (__uint16_t) __attribute__((__const__)); # 128 "/scratch/build/usr/include/sys/endian.h" 3 4 # 1 "/scratch/build/usr/include/machine/bswap.h" 1 3 4 # 9 "/scratch/build/usr/include/machine/bswap.h" 3 4 # 1 "/scratch/build/usr/include/sys/bswap.h" 1 3 4 # 16 "/scratch/build/usr/include/sys/bswap.h" 3 4 u_int16_t bswap16 (u_int16_t) __asm__("__bswap16"); u_int32_t bswap32 (u_int32_t) __asm__("__bswap32"); u_int64_t bswap64 (u_int64_t); # 10 "/scratch/build/usr/include/machine/bswap.h" 2 3 4 # 129 "/scratch/build/usr/include/sys/endian.h" 2 3 4 # 4 "/scratch/build/usr/include/machine/endian.h" 2 3 4 # 103 "/scratch/build/usr/include/sys/types.h" 2 3 4 typedef unsigned char u_char; typedef unsigned short u_short; typedef unsigned int u_int; typedef unsigned long u_long; typedef unsigned char unchar; typedef unsigned short ushort; typedef unsigned int uint; typedef unsigned long ulong; typedef u_long cpuid_t; typedef __uint64_t u_quad_t; typedef __int64_t quad_t; typedef quad_t * qaddr_t; # 132 "/scratch/build/usr/include/sys/types.h" 3 4 typedef __int64_t longlong_t; typedef __uint64_t u_longlong_t; typedef __int64_t blkcnt_t; typedef __uint32_t blksize_t; typedef __caddr_t caddr_t; typedef __int64_t daddr_t; typedef __uint32_t dev_t; typedef __uint32_t fixpt_t; typedef __gid_t gid_t; typedef __uint32_t id_t; typedef __uint32_t ino_t; typedef long key_t; typedef __mode_t mode_t; typedef __uint32_t nlink_t; typedef __off_t off_t; typedef __pid_t pid_t; typedef __int32_t lwpid_t; typedef quad_t rlim_t; typedef __int32_t segsz_t; typedef __int32_t swblk_t; typedef __uid_t uid_t; typedef __int32_t dtime_t; # 226 "/scratch/build/usr/include/sys/types.h" 3 4 __off_t lseek (int, __off_t, int); int ftruncate (int, __off_t); int truncate (const char *, __off_t); # 246 "/scratch/build/usr/include/sys/types.h" 3 4 typedef unsigned int clock_t; typedef unsigned long size_t; typedef long ssize_t; typedef int time_t; typedef int clockid_t; typedef int timer_t; typedef int suseconds_t; typedef unsigned int useconds_t; # 294 "/scratch/build/usr/include/sys/types.h" 3 4 typedef __int32_t __fd_mask; # 313 "/scratch/build/usr/include/sys/types.h" 3 4 typedef struct fd_set { __fd_mask fds_bits[(((256) + (((sizeof(__fd_mask) * 8)) - 1)) / ((sizeof(__fd_mask) * 8)))]; } fd_set; # 91 "/scratch/build/usr/include/sys/param.h" 2 3 4 # 100 "/scratch/build/usr/include/sys/param.h" 3 4 # 1 "/scratch/build/usr/include/sys/syslimits.h" 1 3 4 # 41 "/scratch/build/usr/include/sys/syslimits.h" 3 4 # 1 "/scratch/build/usr/include/sys/featuretest.h" 1 3 4 # 42 "/scratch/build/usr/include/sys/syslimits.h" 2 3 4 # 101 "/scratch/build/usr/include/sys/param.h" 2 3 4 # 143 "/scratch/build/usr/include/sys/param.h" 3 4 # 1 "/scratch/build/usr/include/sys/signal.h" 1 3 4 # 46 "/scratch/build/usr/include/sys/signal.h" 3 4 # 1 "/scratch/build/usr/include/sys/featuretest.h" 1 3 4 # 47 "/scratch/build/usr/include/sys/signal.h" 2 3 4 # 1 "/scratch/build/usr/include/sys/sigtypes.h" 1 3 4 # 52 "/scratch/build/usr/include/sys/sigtypes.h" 3 4 # 1 "/scratch/build/usr/include/sys/featuretest.h" 1 3 4 # 53 "/scratch/build/usr/include/sys/sigtypes.h" 2 3 4 # 77 "/scratch/build/usr/include/sys/sigtypes.h" 3 4 typedef struct { __uint32_t __bits[4]; } sigset_t; # 134 "/scratch/build/usr/include/sys/sigtypes.h" 3 4 typedef struct sigaltstack { void *ss_sp; size_t ss_size; int ss_flags; } stack_t; # 48 "/scratch/build/usr/include/sys/signal.h" 2 3 4 # 146 "/scratch/build/usr/include/sys/signal.h" 3 4 # 1 "/scratch/build/usr/include/sys/siginfo.h" 1 3 4 # 42 "/scratch/build/usr/include/sys/siginfo.h" 3 4 typedef union sigval { int sival_int; void *sival_ptr; } sigval_t; typedef union siginfo { char si_pad[128]; struct { int _signo; int _code; int _errno; int _pad; union { struct { __pid_t _pid; __uid_t _uid; sigval_t _sigval; } _rt; struct { __pid_t _pid; __uid_t _uid; int _status; clock_t _utime; clock_t _stime; } _child; struct { void *_addr; int _trap; } _fault; struct { long _band; int _fd; } _poll; } _reason; } _info; } siginfo_t; # 147 "/scratch/build/usr/include/sys/signal.h" 2 3 4 struct sigaction { union { void (*_sa_handler) (int); void (*_sa_sigaction) (int, siginfo_t *, void *); } _sa_u; sigset_t sa_mask; int sa_flags; }; # 188 "/scratch/build/usr/include/sys/signal.h" 3 4 typedef void (*sig_t) (int); # 210 "/scratch/build/usr/include/sys/signal.h" 3 4 struct sigvec { void (*sv_handler) (int); int sv_mask; int sv_flags; }; # 227 "/scratch/build/usr/include/sys/signal.h" 3 4 struct sigstack { void *ss_sp; int ss_onstack; }; # 1 "/scratch/build/usr/include/machine/signal.h" 1 3 4 # 41 "/scratch/build/usr/include/machine/signal.h" 3 4 # 1 "/scratch/build/usr/include/sys/featuretest.h" 1 3 4 # 42 "/scratch/build/usr/include/machine/signal.h" 2 3 4 typedef int sig_atomic_t; # 1 "/scratch/build/usr/include/machine/trap.h" 1 3 4 # 1 "/scratch/build/usr/include/x86/trap.h" 1 3 4 # 4 "/scratch/build/usr/include/machine/trap.h" 2 3 4 # 50 "/scratch/build/usr/include/machine/signal.h" 2 3 4 # 1 "/scratch/build/usr/include/machine/fpu.h" 1 3 4 # 13 "/scratch/build/usr/include/machine/fpu.h" 3 4 struct fxsave64 { u_int16_t fx_fcw; u_int16_t fx_fsw; u_int8_t fx_ftw; u_int8_t fx_unused1; u_int16_t fx_fop; u_int64_t fx_rip; u_int64_t fx_rdp; u_int32_t fx_mxcsr; u_int32_t fx_mxcsr_mask; u_int64_t fx_st[8][2]; u_int64_t fx_xmm[16][2]; u_int8_t fx_unused3[96]; } __attribute__((packed)); struct savefpu { struct fxsave64 fp_fxsave; u_int16_t fp_ex_sw; u_int16_t fp_ex_tw; }; # 51 "/scratch/build/usr/include/machine/signal.h" 2 3 4 # 1 "/scratch/build/usr/include/machine/mcontext.h" 1 3 4 # 51 "/scratch/build/usr/include/machine/mcontext.h" 3 4 typedef long __greg_t; typedef __greg_t __gregset_t[26]; # 88 "/scratch/build/usr/include/machine/mcontext.h" 3 4 typedef char __fpregset_t[512]; typedef struct { __gregset_t __gregs; long __pad; __fpregset_t __fpregs; } mcontext_t; # 52 "/scratch/build/usr/include/machine/signal.h" 2 3 4 # 60 "/scratch/build/usr/include/machine/signal.h" 3 4 struct sigcontext { struct fxsave64 *sc_fpstate; u_int64_t sc_onstack; sigset_t sc_mask; mcontext_t sc_mcontext; }; # 234 "/scratch/build/usr/include/sys/signal.h" 2 3 4 # 245 "/scratch/build/usr/include/sys/signal.h" 3 4 struct sigevent { int sigev_notify; int sigev_signo; union sigval sigev_value; void (*sigev_notify_function)(union sigval *); void *sigev_notify_attributes; }; # 264 "/scratch/build/usr/include/sys/signal.h" 3 4 void (*signal (int, void (*) (int))) (int); # 144 "/scratch/build/usr/include/sys/param.h" 2 3 4 # 1 "/scratch/build/usr/include/machine/param.h" 1 3 4 # 147 "/scratch/build/usr/include/sys/param.h" 2 3 4 # 1 "/scratch/build/usr/include/machine/limits.h" 1 3 4 # 41 "/scratch/build/usr/include/machine/limits.h" 3 4 # 1 "/scratch/build/usr/include/sys/featuretest.h" 1 3 4 # 42 "/scratch/build/usr/include/machine/limits.h" 2 3 4 # 148 "/scratch/build/usr/include/sys/param.h" 2 3 4 # 51 "/work/trees/current/lib/csu/common_elf/crtbegin.c" 2 # 1 "/scratch/build/usr/include/sys/exec.h" 1 3 4 # 56 "/scratch/build/usr/include/sys/exec.h" 3 4 struct ps_strings { char **ps_argvstr; int ps_nargvstr; char **ps_envstr; int ps_nenvstr; }; # 82 "/scratch/build/usr/include/sys/exec.h" 3 4 struct lwp; struct proc; struct exec_package; struct vnode; struct ucred; typedef int (*exec_makecmds_fcn) (struct proc *, struct exec_package *); struct execsw { u_int es_hdrsz; exec_makecmds_fcn es_check; union { int (*elf_probe_func) (struct proc *, struct exec_package *, void *, char *, vaddr_t *); int (*ecoff_probe_func) (struct proc *, struct exec_package *); int (*mach_probe_func) (char **); } u; const struct emul *es_emul; int es_prio; int es_arglen; int (*es_copyargs) (struct proc *, struct exec_package *, struct ps_strings *, char **, void *); void (*es_setregs) (struct lwp *, struct exec_package *, u_long); int (*es_coredump) (struct lwp *, struct vnode *, struct ucred *); }; struct exec_vmcmd_set { u_int evs_cnt; u_int evs_used; struct exec_vmcmd *evs_cmds; }; struct exec_package { const char *ep_name; void *ep_hdr; u_int ep_hdrlen; u_int ep_hdrvalid; struct nameidata *ep_ndp; struct exec_vmcmd_set ep_vmcmds; struct vnode *ep_vp; struct vattr *ep_vap; u_long ep_taddr; u_long ep_tsize; u_long ep_daddr; u_long ep_dsize; u_long ep_maxsaddr; u_long ep_minsaddr; u_long ep_ssize; u_long ep_entry; vaddr_t ep_vm_minaddr; vaddr_t ep_vm_maxaddr; u_int ep_flags; char **ep_fa; int ep_fd; void *ep_emul_arg; const struct execsw *ep_es; const struct execsw *ep_esch; }; # 161 "/scratch/build/usr/include/sys/exec.h" 3 4 struct exec_vmcmd { int (*ev_proc) (struct proc *p, struct exec_vmcmd *cmd); u_long ev_len; u_long ev_addr; struct vnode *ev_vp; u_long ev_offset; u_int ev_prot; int ev_flags; }; # 248 "/scratch/build/usr/include/sys/exec.h" 3 4 # 1 "/scratch/build/usr/include/sys/exec_aout.h" 1 3 4 # 45 "/scratch/build/usr/include/sys/exec_aout.h" 3 4 struct exec { u_long a_midmag; u_long a_text; u_long a_data; u_long a_bss; u_long a_syms; u_long a_entry; u_long a_trsize; u_long a_drsize; }; # 183 "/scratch/build/usr/include/sys/exec_aout.h" 3 4 # 1 "/scratch/build/usr/include/machine/aout_machdep.h" 1 3 4 # 1 "/scratch/build/usr/include/x86/aout_machdep.h" 1 3 4 # 36 "/scratch/build/usr/include/x86/aout_machdep.h" 3 4 struct relocation_info_i386 { int r_address; unsigned int r_symbolnum : 24, r_pcrel : 1, r_length : 2, r_extern : 1, r_baserel : 1, r_jmptable : 1, r_relative : 1, r_copy : 1; }; # 4 "/scratch/build/usr/include/machine/aout_machdep.h" 2 3 4 # 184 "/scratch/build/usr/include/sys/exec_aout.h" 2 3 4 # 249 "/scratch/build/usr/include/sys/exec.h" 2 3 4 # 52 "/work/trees/current/lib/csu/common_elf/crtbegin.c" 2 # 1 "/scratch/build/usr/include/sys/exec_elf.h" 1 3 4 # 53 "/scratch/build/usr/include/sys/exec_elf.h" 3 4 # 1 "/scratch/build/usr/include/inttypes.h" 1 3 4 # 44 "/scratch/build/usr/include/inttypes.h" 3 4 # 1 "/scratch/build/usr/include/wchar.h" 1 3 4 # 69 "/scratch/build/usr/include/wchar.h" 3 4 # 1 "/scratch/build/usr/include/sys/featuretest.h" 1 3 4 # 70 "/scratch/build/usr/include/wchar.h" 2 3 4 # 1 "/scratch/build/usr/include/stdio.h" 1 3 4 # 47 "/scratch/build/usr/include/stdio.h" 3 4 # 1 "/scratch/build/usr/include/sys/featuretest.h" 1 3 4 # 48 "/scratch/build/usr/include/stdio.h" 2 3 4 # 63 "/scratch/build/usr/include/stdio.h" 3 4 typedef __off_t fpos_t; # 79 "/scratch/build/usr/include/stdio.h" 3 4 struct __sbuf { unsigned char *_base; int _size; }; # 110 "/scratch/build/usr/include/stdio.h" 3 4 typedef struct __sFILE { unsigned char *_p; int _r; int _w; short _flags; short _file; struct __sbuf _bf; int _lbfsize; void *_cookie; int (*_close) (void *); int (*_read) (void *, char *, int); fpos_t (*_seek) (void *, fpos_t, int); int (*_write) (void *, const char *, int); struct __sbuf _ext; unsigned char *_up; int _ur; unsigned char _ubuf[3]; unsigned char _nbuf[1]; struct __sbuf _lb; int _blksize; fpos_t _offset; } FILE; extern FILE __sF[]; # 220 "/scratch/build/usr/include/stdio.h" 3 4 void clearerr (FILE *); int fclose (FILE *); int feof (FILE *); int ferror (FILE *); int fflush (FILE *); int fgetc (FILE *); int fgetpos (FILE * __restrict, fpos_t * __restrict); char *fgets (char * __restrict, int, FILE * __restrict); FILE *fopen (const char *, const char *); int fprintf (FILE * __restrict , const char * __restrict, ...); int fputc (int, FILE *); int fputs (const char * __restrict, FILE * __restrict); size_t fread (void * __restrict, size_t, size_t, FILE * __restrict); FILE *freopen (const char *, const char *, FILE * __restrict); int fscanf (FILE * __restrict, const char * __restrict, ...); int fseek (FILE *, long, int); int fsetpos (FILE *, const fpos_t *); long ftell (FILE *); size_t fwrite (const void * __restrict, size_t, size_t, FILE * __restrict); int getc (FILE *); int getchar (void); void perror (const char *); int printf (const char * __restrict, ...); int putc (int, FILE *); int putchar (int); int puts (const char *); int remove (const char *); void rewind (FILE *); int scanf (const char * __restrict, ...); void setbuf (FILE * __restrict, char * __restrict); int setvbuf (FILE * __restrict, char * __restrict, int, size_t); int sscanf (const char * __restrict, const char * __restrict, ...); FILE *tmpfile (void); int ungetc (int, FILE *); int vfprintf (FILE * __restrict, const char * __restrict, __builtin_va_list); int vfprintf_unlocked (FILE * __restrict, const char * __restrict, __builtin_va_list); int vprintf (const char * __restrict, __builtin_va_list); char *gets (char *); int sprintf (char * __restrict, const char * __restrict, ...); char *tmpnam (char *); int vsprintf (char * __restrict, const char * __restrict, __builtin_va_list); int rename (const char *, const char *); # 285 "/scratch/build/usr/include/stdio.h" 3 4 char *ctermid (char *); char *cuserid (char *); FILE *fdopen (int, const char *); int fileno (FILE *); void flockfile (FILE *); int ftrylockfile (FILE *); void funlockfile (FILE *); int getc_unlocked (FILE *); int getchar_unlocked (void); int putc_unlocked (int, FILE *); int putchar_unlocked (int); int pclose (FILE *); FILE *popen (const char *, const char *); int getw (FILE *); int putw (int, FILE *); int snprintf (char * __restrict, size_t, const char * __restrict, ...) __attribute__((__format__(__printf__, 3, 4))); int vsnprintf (char * __restrict, size_t, const char * __restrict, __builtin_va_list) __attribute__((__format__(__printf__, 3, 0))); char *tempnam (const char *, const char *); # 353 "/scratch/build/usr/include/stdio.h" 3 4 int fseeko (FILE *, __off_t, int); __off_t ftello (FILE *); # 370 "/scratch/build/usr/include/stdio.h" 3 4 int asprintf (char ** __restrict, const char * __restrict, ...) __attribute__((__format__(__printf__, 2, 3))); char *fgetln (FILE * __restrict, size_t * __restrict); char *fparseln(FILE *, size_t *, size_t *, const char[3], int); int fpurge (FILE *); void setbuffer (FILE *, char *, int); int setlinebuf (FILE *); int vasprintf (char ** __restrict, const char * __restrict, __builtin_va_list) __attribute__((__format__(__printf__, 2, 0))); int vscanf (const char * __restrict, __builtin_va_list) __attribute__((__format__(__scanf__, 1, 0))); int vfscanf (FILE * __restrict, const char * __restrict, __builtin_va_list) __attribute__((__format__(__scanf__, 2, 0))); int vsscanf (const char * __restrict, const char * __restrict, __builtin_va_list) __attribute__((__format__(__scanf__, 2, 0))); const char *fmtcheck (const char *, const char *) __attribute__((__format_arg__(2))); FILE *funopen (const void *, int (*)(void *, char *, int), int (*)(void *, const char *, int), fpos_t (*)(void *, fpos_t, int), int (*)(void *)); int __srget (FILE *); int __swbuf (int, FILE *); static __inline int __sputc(int _c, FILE *_p) { if (--_p->_w >= 0 || (_p->_w >= _p->_lbfsize && (char)_c != '\n')) return (*_p->_p++ = _c); else return (__swbuf(_c, _p)); } # 74 "/scratch/build/usr/include/wchar.h" 2 3 4 typedef int wchar_t; typedef __mbstate_t mbstate_t; typedef int wint_t; # 104 "/scratch/build/usr/include/wchar.h" 3 4 wint_t btowc (int); size_t mbrlen (const char * __restrict, size_t, mbstate_t * __restrict); size_t mbrtowc (wchar_t * __restrict, const char * __restrict, size_t, mbstate_t * __restrict); int mbsinit (const mbstate_t *); size_t mbsrtowcs (wchar_t * __restrict, const char ** __restrict, size_t, mbstate_t * __restrict); size_t wcrtomb (char * __restrict, wchar_t, mbstate_t * __restrict); wchar_t *wcscat (wchar_t * __restrict, const wchar_t * __restrict); wchar_t *wcschr (const wchar_t *, wchar_t); int wcscmp (const wchar_t *, const wchar_t *); int wcscoll (const wchar_t *, const wchar_t *); wchar_t *wcscpy (wchar_t * __restrict, const wchar_t * __restrict); size_t wcscspn (const wchar_t *, const wchar_t *); size_t wcslen (const wchar_t *); wchar_t *wcsncat (wchar_t * __restrict, const wchar_t * __restrict, size_t); int wcsncmp (const wchar_t *, const wchar_t *, size_t); wchar_t *wcsncpy (wchar_t * __restrict , const wchar_t * __restrict, size_t); wchar_t *wcspbrk (const wchar_t *, const wchar_t *); wchar_t *wcsrchr (const wchar_t *, wchar_t); size_t wcsrtombs (char * __restrict, const wchar_t ** __restrict, size_t, mbstate_t * __restrict); size_t wcsspn (const wchar_t *, const wchar_t *); wchar_t *wcsstr (const wchar_t *, const wchar_t *); wchar_t *wcstok (wchar_t * __restrict, const wchar_t * __restrict, wchar_t ** __restrict); size_t wcsxfrm (wchar_t *, const wchar_t *, size_t); wchar_t *wcswcs (const wchar_t *, const wchar_t *); wchar_t *wmemchr (const wchar_t *, wchar_t, size_t); int wmemcmp (const wchar_t *, const wchar_t *, size_t); wchar_t *wmemcpy (wchar_t * __restrict, const wchar_t * __restrict, size_t); wchar_t *wmemmove (wchar_t *, const wchar_t *, size_t); wchar_t *wmemset (wchar_t *, wchar_t, size_t); size_t wcslcat (wchar_t *, const wchar_t *, size_t); size_t wcslcpy (wchar_t *, const wchar_t *, size_t); int wcswidth (const wchar_t *, size_t); int wctob (wint_t); int wcwidth (wchar_t); unsigned long int wcstoul (const wchar_t * __restrict, wchar_t ** __restrict, int base); long int wcstol (const wchar_t * __restrict, wchar_t ** __restrict, int base); double wcstod (const wchar_t * __restrict, wchar_t ** __restrict); long long int wcstoll (const wchar_t * __restrict, wchar_t ** __restrict, int base); unsigned long long int wcstoull (const wchar_t * __restrict, wchar_t ** __restrict, int base); wint_t ungetwc (wint_t, FILE *); wint_t fgetwc (FILE *); wchar_t *fgetws (wchar_t * __restrict, int, FILE * __restrict); wint_t getwc (FILE *); wint_t getwchar (void); wint_t fputwc (wchar_t, FILE *); int fputws (const wchar_t * __restrict, FILE * __restrict); wint_t putwc (wchar_t, FILE *); wint_t putwchar (wchar_t); int fwide (FILE *, int); # 45 "/scratch/build/usr/include/inttypes.h" 2 3 4 intmax_t strtoimax (const char * __restrict, char ** __restrict, int); uintmax_t strtoumax (const char * __restrict, char ** __restrict, int); intmax_t wcstoimax (const wchar_t * __restrict, wchar_t ** __restrict, int); uintmax_t wcstoumax (const wchar_t * __restrict, wchar_t ** __restrict, int); # 54 "/scratch/build/usr/include/sys/exec_elf.h" 2 3 4 # 1 "/scratch/build/usr/include/machine/elf_machdep.h" 1 3 4 # 57 "/scratch/build/usr/include/sys/exec_elf.h" 2 3 4 typedef __uint8_t Elf_Byte; typedef __uint32_t Elf32_Addr; typedef __uint32_t Elf32_Off; typedef __int32_t Elf32_Sword; typedef __uint32_t Elf32_Word; typedef __uint16_t Elf32_Half; typedef __uint64_t Elf64_Addr; typedef __uint64_t Elf64_Off; typedef __int32_t Elf64_Shalf; typedef __int32_t Elf64_Sword; typedef __uint32_t Elf64_Word; typedef __int64_t Elf64_Sxword; typedef __uint64_t Elf64_Xword; typedef __uint32_t Elf64_Half; typedef __uint16_t Elf64_Quarter; typedef struct { unsigned char e_ident[16]; Elf32_Half e_type; Elf32_Half e_machine; Elf32_Word e_version; Elf32_Addr e_entry; Elf32_Off e_phoff; Elf32_Off e_shoff; Elf32_Word e_flags; Elf32_Half e_ehsize; Elf32_Half e_phentsize; Elf32_Half e_phnum; Elf32_Half e_shentsize; Elf32_Half e_shnum; Elf32_Half e_shstrndx; } Elf32_Ehdr; typedef struct { unsigned char e_ident[16]; Elf64_Quarter e_type; Elf64_Quarter e_machine; Elf64_Half e_version; Elf64_Addr e_entry; Elf64_Off e_phoff; Elf64_Off e_shoff; Elf64_Half e_flags; Elf64_Quarter e_ehsize; Elf64_Quarter e_phentsize; Elf64_Quarter e_phnum; Elf64_Quarter e_shentsize; Elf64_Quarter e_shnum; Elf64_Quarter e_shstrndx; } Elf64_Ehdr; # 292 "/scratch/build/usr/include/sys/exec_elf.h" 3 4 typedef struct { Elf32_Word p_type; Elf32_Off p_offset; Elf32_Addr p_vaddr; Elf32_Addr p_paddr; Elf32_Word p_filesz; Elf32_Word p_memsz; Elf32_Word p_flags; Elf32_Word p_align; } Elf32_Phdr; typedef struct { Elf64_Half p_type; Elf64_Half p_flags; Elf64_Off p_offset; Elf64_Addr p_vaddr; Elf64_Addr p_paddr; Elf64_Xword p_filesz; Elf64_Xword p_memsz; Elf64_Xword p_align; } Elf64_Phdr; # 342 "/scratch/build/usr/include/sys/exec_elf.h" 3 4 typedef struct { Elf32_Word sh_name; Elf32_Word sh_type; Elf32_Word sh_flags; Elf32_Addr sh_addr; Elf32_Off sh_offset; Elf32_Word sh_size; Elf32_Word sh_link; Elf32_Word sh_info; Elf32_Word sh_addralign; Elf32_Word sh_entsize; } Elf32_Shdr; typedef struct { Elf64_Half sh_name; Elf64_Half sh_type; Elf64_Xword sh_flags; Elf64_Addr sh_addr; Elf64_Off sh_offset; Elf64_Xword sh_size; Elf64_Half sh_link; Elf64_Half sh_info; Elf64_Xword sh_addralign; Elf64_Xword sh_entsize; } Elf64_Shdr; # 401 "/scratch/build/usr/include/sys/exec_elf.h" 3 4 typedef struct { Elf32_Word st_name; Elf32_Word st_value; Elf32_Word st_size; Elf_Byte st_info; Elf_Byte st_other; Elf32_Half st_shndx; } Elf32_Sym; typedef struct { Elf64_Half st_name; Elf_Byte st_info; Elf_Byte st_other; Elf64_Quarter st_shndx; Elf64_Addr st_value; Elf64_Xword st_size; } Elf64_Sym; # 478 "/scratch/build/usr/include/sys/exec_elf.h" 3 4 typedef struct { Elf32_Word r_offset; Elf32_Word r_info; } Elf32_Rel; typedef struct { Elf32_Word r_offset; Elf32_Word r_info; Elf32_Sword r_addend; } Elf32_Rela; typedef struct { Elf64_Addr r_offset; Elf64_Xword r_info; } Elf64_Rel; typedef struct { Elf64_Addr r_offset; Elf64_Xword r_info; Elf64_Sxword r_addend; } Elf64_Rela; # 513 "/scratch/build/usr/include/sys/exec_elf.h" 3 4 typedef struct { Elf32_Word d_tag; union { Elf32_Addr d_ptr; Elf32_Word d_val; } d_un; } Elf32_Dyn; typedef struct { Elf64_Xword d_tag; union { Elf64_Addr d_ptr; Elf64_Xword d_val; } d_un; } Elf64_Dyn; # 569 "/scratch/build/usr/include/sys/exec_elf.h" 3 4 typedef struct { Elf32_Word a_type; Elf32_Word a_v; } Aux32Info; typedef struct { Elf64_Half a_type; Elf64_Xword a_v; } Aux64Info; # 622 "/scratch/build/usr/include/sys/exec_elf.h" 3 4 typedef struct { Elf32_Word n_namesz; Elf32_Word n_descsz; Elf32_Word n_type; } Elf32_Nhdr; typedef struct { Elf64_Half n_namesz; Elf64_Half n_descsz; Elf64_Half n_type; } Elf64_Nhdr; # 685 "/scratch/build/usr/include/sys/exec_elf.h" 3 4 struct netbsd_elfcore_procinfo { __uint32_t cpi_version; __uint32_t cpi_cpisize; __uint32_t cpi_signo; __uint32_t cpi_sigcode; __uint32_t cpi_sigpend[4]; __uint32_t cpi_sigmask[4]; __uint32_t cpi_sigignore[4]; __uint32_t cpi_sigcatch[4]; __int32_t cpi_pid; __int32_t cpi_ppid; __int32_t cpi_pgrp; __int32_t cpi_sid; __uint32_t cpi_ruid; __uint32_t cpi_euid; __uint32_t cpi_svuid; __uint32_t cpi_rgid; __uint32_t cpi_egid; __uint32_t cpi_svgid; __uint32_t cpi_nlwps; __int8_t cpi_name[32]; }; # 53 "/work/trees/current/lib/csu/common_elf/crtbegin.c" 2 # 1 "/scratch/build/usr/include/stdlib.h" 1 3 4 # 42 "/scratch/build/usr/include/stdlib.h" 3 4 # 1 "/scratch/build/usr/include/sys/featuretest.h" 1 3 4 # 43 "/scratch/build/usr/include/stdlib.h" 2 3 4 # 60 "/scratch/build/usr/include/stdlib.h" 3 4 typedef struct { int quot; int rem; } div_t; typedef struct { long quot; long rem; } ldiv_t; typedef struct { long long int quot; long long int rem; } lldiv_t; typedef struct { quad_t quot; quad_t rem; } qdiv_t; # 96 "/scratch/build/usr/include/stdlib.h" 3 4 extern size_t __mb_cur_max; void _Exit (int) __attribute__((__noreturn__)); void abort (void) __attribute__((__noreturn__)); int abs (int); int atexit (void (*)(void)); double atof (const char *); int atoi (const char *); long atol (const char *); void *bsearch (const void *, const void *, size_t, size_t, int (*)(const void *, const void *)); void *calloc (size_t, size_t); div_t div (int, int); void exit (int) __attribute__((__noreturn__)); void free (void *); char *getenv (const char *); long labs (long); ldiv_t ldiv (long, long); void *malloc (size_t); void qsort (void *, size_t, size_t, int (*)(const void *, const void *)); int rand (void); void *realloc (void *, size_t); void srand (unsigned); double strtod (const char * __restrict, char ** __restrict); long strtol (const char * __restrict, char ** __restrict, int); unsigned long strtoul (const char * __restrict, char ** __restrict, int); int system (const char *); int mblen (const char *, size_t); size_t mbstowcs (wchar_t * __restrict, const char * __restrict, size_t); int wctomb (char *, wchar_t); int mbtowc (wchar_t * __restrict, const char * __restrict, size_t); size_t wcstombs (char * __restrict, const wchar_t * __restrict, size_t); # 149 "/scratch/build/usr/include/stdlib.h" 3 4 int rand_r (unsigned int *); double drand48 (void); double erand48 (unsigned short[3]); long jrand48 (unsigned short[3]); void lcong48 (unsigned short[7]); long lrand48 (void); long mrand48 (void); long nrand48 (unsigned short[3]); unsigned short * seed48 (unsigned short[3]); void srand48 (long); int putenv (const char *); # 177 "/scratch/build/usr/include/stdlib.h" 3 4 long a64l (const char *); char *l64a (long); char *initstate (unsigned long, char *, size_t); long random (void); char *setstate (char *); void srandom (unsigned long); char *mkdtemp (char *); int mkstemp (char *); char *mktemp (char *); int setkey (const char *); char *realpath (const char *, char *); int ttyslot (void); void *valloc (size_t); # 206 "/scratch/build/usr/include/stdlib.h" 3 4 long long int atoll (const char *); long long int llabs (long long int); lldiv_t lldiv (long long int, long long int); long long int strtoll (const char * __restrict, char ** __restrict, int); unsigned long long int strtoull (const char * __restrict, char ** __restrict, int); # 224 "/scratch/build/usr/include/stdlib.h" 3 4 int setenv (const char *, const char *, int); int unsetenv (const char *) __asm__("__unsetenv13"); # 240 "/scratch/build/usr/include/stdlib.h" 3 4 void *alloca (size_t); u_int32_t arc4random (void); void arc4random_stir (void); void arc4random_addrandom (u_char *, int); char *getbsize (int *, long *); char *cgetcap (char *, const char *, int); int cgetclose (void); int cgetent (char **, char **, const char *); int cgetfirst (char **, char **); int cgetmatch (const char *, const char *); int cgetnext (char **, char **); int cgetnum (char *, const char *, long *); int cgetset (const char *); int cgetstr (char *, const char *, char **); int cgetustr (char *, const char *, char **); int daemon (int, int); char *devname (dev_t, __mode_t); int getloadavg (double [], int); void cfree (void *); int heapsort (void *, size_t, size_t, int (*)(const void *, const void *)); int mergesort (void *, size_t, size_t, int (*)(const void *, const void *)); int radixsort (const unsigned char **, int, const unsigned char *, unsigned); int sradixsort (const unsigned char **, int, const unsigned char *, unsigned); void setproctitle (const char *, ...) __attribute__((__format__(__printf__, 1, 2))); const char *getprogname (void) __attribute__((__const__)); void setprogname (const char *); quad_t qabs (quad_t); quad_t strtoq (const char * __restrict, char ** __restrict, int); u_quad_t strtouq (const char * __restrict, char ** __restrict, int); long long strsuftoll(const char *, const char *, long long, long long); long long strsuftollx(const char *, const char *, long long, long long, char *, size_t); int l64a_r (long, char *, int); size_t shquote (const char *arg, char *buf, size_t bufsize); size_t shquotev (int argc, char * const * argv, char *buf, size_t bufsize); qdiv_t qdiv (quad_t, quad_t); # 54 "/work/trees/current/lib/csu/common_elf/crtbegin.c" 2 # 1 "/work/trees/current/lib/csu/common_elf/dwarf2_eh.h" 1 # 51 "/work/trees/current/lib/csu/common_elf/dwarf2_eh.h" struct dwarf2_eh_object { void *space[8]; }; # 62 "/work/trees/current/lib/csu/common_elf/dwarf2_eh.h" extern void __register_frame_info(void *, struct dwarf2_eh_object *) __attribute__((weak)); extern void __deregister_frame_info(void *) __attribute__((weak)); # 57 "/work/trees/current/lib/csu/common_elf/crtbegin.c" 2 # 1 "/work/trees/current/libexec/ld.elf_so/sysident.h" 1 # 65 "/work/trees/current/libexec/ld.elf_so/sysident.h" __asm( ".section\t\".note.netbsd.ident\", \"a\"\n" "\t.p2align\t2\n\n" "\t.long\t" "7" "\n" "\t.long\t" "4" "\n" "\t.long\t" "1" "\n" "\t.ascii\t" "\"NetBSD\\0\\0\"" "\n" "\t.long\t" "106180000" "\n\n" "\t.p2align\t2\n" ); # 59 "/work/trees/current/lib/csu/common_elf/crtbegin.c" 2 # 1 "/work/trees/current/lib/csu/x86_64/dot_init.h" 1 # 60 "/work/trees/current/lib/csu/common_elf/crtbegin.c" 2 static void (*__CTOR_LIST__[1])(void) __attribute__((section(".ctors"))) = { (void *)-1 }; static void (*__DTOR_LIST__[1])(void) __attribute__((section(".dtors"))) = { (void *)-1 }; static char __EH_FRAME_BEGIN__[] __attribute__((section(".eh_frame"), aligned(4))) = { }; extern void _Jv_RegisterClasses(void *) __attribute__((weak)); static void *__JCR_LIST__[] __attribute__((section(".jcr"))) = { }; # 88 "/work/trees/current/lib/csu/common_elf/crtbegin.c" void *__dso_handle = 0; __asm(".hidden __dso_handle"); # 112 "/work/trees/current/lib/csu/common_elf/crtbegin.c" static void __ctors(void) { unsigned long i = (unsigned long) __CTOR_LIST__[0]; void (**p)(void); if (i == (unsigned long) -1) { for (i = 1; __CTOR_LIST__[i] != 0; i++) ; i--; } p = __CTOR_LIST__ + i; while (i--) (**p--)(); } static void __dtors(void) { void (**p)(void) = __DTOR_LIST__ + 1; while (*p) (**p++)(); } static void __attribute__((__unused__)) __do_global_ctors_aux(void) { static int initialized; static struct dwarf2_eh_object object; if (!initialized) { initialized = 1; if (__register_frame_info != 0) __register_frame_info(__EH_FRAME_BEGIN__, &object); if (__JCR_LIST__[0] != 0 && _Jv_RegisterClasses != 0) _Jv_RegisterClasses(__JCR_LIST__); __ctors(); } } asm(".section " ".init" "; call " "__do_global_ctors_aux" "; .previous"); static void __attribute__((__unused__)) __do_global_dtors_aux(void) { static int finished; if (finished) return; # 189 "/work/trees/current/lib/csu/common_elf/crtbegin.c" __dtors(); if (__deregister_frame_info != 0) __deregister_frame_info(__EH_FRAME_BEGIN__); finished = 1; } asm(".section " ".fini" "; call " "__do_global_dtors_aux" "; .previous"); ============================================================================= >How-To-Repeat: Run gcc version 3.3 20030502 on the code above. >Fix: Unknown. >Release-Note: >Audit-Trail: >Unformatted: