This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: alpha.md version 1.130 breaks bootstrap on alphaev6-dec-osf5.0


I updated from CVS 11/21/200.

$ ./xgcc -v --save-temps -B./ -B/usr/local/alphaev6-dec-osf5.0/bin/ -isystem /usr/local/alphaev6-dec-osf5.0/include -O2   -DIN_GCC    -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -isystem ./include  -fPIC -g1  -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED  -I. -I. -I../../gcc -I../../gcc/. -I../../gcc/config -I../../gcc/../include -DUSE_COLLECT2 -DL_fixtfdi -c ../../gcc/libgcc2.c -o libgcc/./_fixtfdi.o 
Reading specs from ./specs
Configured with: ../configure --enable-languages=c,c++
gcc version 2.97 20001121 (experimental)
 ./cpp0 -lang-c -v -I. -I. -I../../gcc -I../../gcc/. -I../../gcc/config -I../../gcc/../include -iprefix ./../lib/gcc-lib/alphaev6-dec-osf5.0/2.97/ -isystem ./include -isystem /usr/local/alphaev6-dec-osf5.0/bin/include -D__GNUC__=2 -D__GNUC_MINOR__=97 -D__GNUC_PATCHLEVEL__=0 -Dunix -D__osf__ -D_LONGLONG -DSYSTYPE_BSD -D_SYSTYPE_BSD -D__unix__ -D__osf__ -D_LONGLONG -D__SYSTYPE_BSD__ -D_SYSTYPE_BSD -D__unix -D__SYSTYPE_BSD -Asystem=unix -Asystem=xpg4 -D__OPTIMIZE__ -D__STDC_HOSTED__=1 -g1 -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -D__LANGUAGE_C__ -D__LANGUAGE_C -DLANGUAGE_C -Acpu=alpha -Amachine=alpha -D__alpha -D__alpha__ -D__alpha_ev6__ -Acpu=ev6 -D__alpha_bwx__ -Acpu=bwx -D__alpha_max__ -Acpu=max -D__alpha_fix__ -Acpu=fix -DIN_GCC -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED -DUSE_COLLECT2 -DL_fixtfdi -isystem /usr/local/alphaev6-dec-osf5.0/include -isystem ./include ../../gcc/libgcc2.c libgcc2.i
GNU CPP version 2.97 20001121 (experimental) (cpplib)
ignoring nonexistent directory "/usr/local/alphaev6-dec-osf5.0/bin/include"
ignoring nonexistent directory "../lib/gcc-lib/alphaev6-dec-osf5.0/2.97/include"
ignoring nonexistent directory "../alphaev6-dec-osf5.0/include"
ignoring nonexistent directory "/usr/local/lib/gcc-lib/alphaev6-dec-osf5.0/2.97/include"
ignoring duplicate directory "."
ignoring duplicate directory "../../gcc/"
ignoring duplicate directory "include"
ignoring duplicate directory "/usr/local/alphaev6-dec-osf5.0/include"
#include "..." search starts here:
#include <...> search starts here:
 .
 ../../gcc
 ../../gcc/config
 ../../include
 include
 /usr/local/alphaev6-dec-osf5.0/include
 /usr/local/include
 /usr/include
End of search list.
 ./cc1 -fpreprocessed libgcc2.i -quiet -dumpbase libgcc2.c -g1 -O2 -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -version -fPIC -o libgcc2.s
GNU C version 2.97 20001121 (experimental) (alphaev6-dec-osf5.0) compiled by GNU C version 2.96 20000731 (experimental).
/usr/include/getopt.h:114: warning: function declaration isn't a prototype
../../gcc/libgcc2.c: In function `__fixtfti':
../../gcc/libgcc2.c:875: Internal error: Segmentation fault.
Please submit a full bug report.
See <URL:http://www.gnu.org/software/gcc/bugs.html> for instructions.

# 1 "../../gcc/libgcc2.c"
# 36 "../../gcc/libgcc2.c"
# 1 "tconfig.h" 1


# 1 "../../gcc/gansidecl.h" 1
# 28 "../../gcc/gansidecl.h"
# 1 "../../include/ansidecl.h" 1
# 29 "../../gcc/gansidecl.h" 2
# 4 "tconfig.h" 2


# 1 "../../gcc/config/alpha/xm-alpha.h" 1
# 39 "../../gcc/config/alpha/xm-alpha.h"
# 1 "tm.h" 1






# 1 "../../gcc/config/alpha/alpha.h" 1
# 57 "../../gcc/config/alpha/alpha.h"
enum processor_type
 {PROCESSOR_EV4,
  PROCESSOR_EV5,
  PROCESSOR_EV6};

extern enum processor_type alpha_cpu;

enum alpha_trap_precision
{
  ALPHA_TP_PROG,
  ALPHA_TP_FUNC,
  ALPHA_TP_INSN
};

enum alpha_fp_rounding_mode
{
  ALPHA_FPRM_NORM,
  ALPHA_FPRM_MINF,
  ALPHA_FPRM_CHOP,
  ALPHA_FPRM_DYN
};

enum alpha_fp_trap_mode
{
  ALPHA_FPTM_N,
  ALPHA_FPTM_U,
  ALPHA_FPTM_SU,
  ALPHA_FPTM_SUI
};

extern int target_flags;

extern enum alpha_trap_precision alpha_tp;
extern enum alpha_fp_rounding_mode alpha_fprm;
extern enum alpha_fp_trap_mode alpha_fptm;
# 249 "../../gcc/config/alpha/alpha.h"
extern const char *alpha_cpu_string;
extern const char *alpha_tune_string;
extern const char *alpha_fprm_string;
extern const char *alpha_fptm_string;
extern const char *alpha_tp_string;
extern const char *alpha_mlat_string;
# 722 "../../gcc/config/alpha/alpha.h"
enum reg_class { NO_REGS, PV_REG, GENERAL_REGS, FLOAT_REGS, ALL_REGS,
                 LIM_REG_CLASSES };
# 895 "../../gcc/config/alpha/alpha.h"
extern int alpha_memory_latency;
# 1204 "../../gcc/config/alpha/alpha.h"
struct alpha_compare
{
  struct rtx_def *op0, *op1;
  int fp_p;
};

extern struct alpha_compare alpha_compare;



struct machine_function
{

  struct rtx_def *eh_epilogue_sp_ofs;


  struct rtx_def *ra_rtx;
};
# 2415 "../../gcc/config/alpha/alpha.h"
extern long alpha_arg_offset;
extern long alpha_auto_offset;
# 2478 "../../gcc/config/alpha/alpha.h"
extern int sdb_label_count;
# 8 "tm.h" 2


# 1 "../../gcc/config/dbx.h" 1
# 11 "tm.h" 2


# 1 "../../gcc/config/alpha/osf.h" 1
# 14 "tm.h" 2


# 1 "../../gcc/config/alpha/osf5.h" 1
# 17 "tm.h" 2
# 40 "../../gcc/config/alpha/xm-alpha.h" 2
# 7 "tconfig.h" 2
# 37 "../../gcc/libgcc2.c" 2
# 1 "../../gcc/tsystem.h" 1
# 26 "../../gcc/tsystem.h"
# 1 "include/stddef.h" 1 3
# 147 "include/stddef.h" 3
typedef long int ptrdiff_t;
# 199 "include/stddef.h" 3
typedef long unsigned int size_t;
# 287 "include/stddef.h" 3
typedef unsigned int wchar_t;
# 27 "../../gcc/tsystem.h" 2
# 49 "../../gcc/tsystem.h"
# 1 "include/stdarg.h" 1 3
# 43 "include/stdarg.h" 3
typedef __builtin_va_list __gnuc_va_list;
# 110 "include/stdarg.h" 3
typedef __gnuc_va_list va_list;
# 50 "../../gcc/tsystem.h" 2


# 1 "include/stdio.h" 1 3
# 65 "include/stdio.h" 3
# 1 "/usr/include/standards.h" 1 3
# 66 "include/stdio.h" 2 3
# 109 "include/stdio.h" 3
typedef long fpos_t;
# 149 "include/stdio.h" 3
# 1 "/usr/include/sys/seek.h" 1 3
# 150 "include/stdio.h" 2 3

typedef struct {
        int _cnt;
        unsigned int _flag2;
 unsigned char *_ptr;
        unsigned char *_base;
        int _bufsiz;
        short _flag;
        short _file;




        char *__newbase;
        void *_lock;
        unsigned char *_bufendp;
} FILE;

extern FILE _iob[];
# 181 "include/stdio.h" 3
extern size_t fread (void *, size_t, size_t, FILE *);
extern size_t fwrite (const void *, size_t, size_t, FILE *);


extern int _flsbuf (int, FILE *);
extern int _filbuf (FILE *);
extern int ferror (FILE *);
extern int feof (FILE *);
extern void clearerr (FILE *);
extern int putchar (int);
extern int getchar (void);
extern int putc (int, FILE *);
extern int getc (FILE *);
extern int remove (const char *);
extern int rename (const char *, const char *);
extern FILE *tmpfile (void);
extern char *tmpnam (char *);
extern int fclose (FILE *);
extern int fflush (FILE *);
extern FILE *fopen (const char *, const char *);
extern FILE *freopen (const char *, const char *, FILE *);
extern void setbuf (FILE *, char *);
extern int setvbuf (FILE *, char *, int, size_t);
extern int fprintf (FILE *, const char *, ...);
extern int fscanf (FILE *, const char *, ...);
extern int printf (const char *, ...);
extern int scanf (const char *, ...);
extern int sprintf (char *, const char *, ...);
extern int sscanf (const char *, const char *, ...);

extern int snprintf (char *, size_t, const char *, ...);
# 224 "include/stdio.h" 3
# 1 "include/va_list.h" 1 3
# 225 "include/stdio.h" 2 3
extern int vfprintf (FILE *, const char *, __gnuc_va_list);
extern int vprintf (const char *, __gnuc_va_list);
extern int vsprintf (char *, const char *, __gnuc_va_list);

extern int vsnprintf (char *, size_t, const char*, __gnuc_va_list);
# 245 "include/stdio.h" 3
extern int fgetc (FILE *);
extern char *fgets (char *, int, FILE *);
extern int fputc (int, FILE *);
extern int fputs (const char *, FILE *);
extern char *gets (char *);
extern int puts (const char *);
extern int ungetc (int, FILE *);
extern int fseek (FILE *, long, int);
# 281 "include/stdio.h" 3
extern int fsetpos (FILE *, const fpos_t *);
extern int fgetpos (FILE *, fpos_t *);

extern long ftell (FILE *);
extern void rewind (FILE *);
extern void perror (const char *);
# 439 "include/stdio.h" 3
# 1 "include/sys/types.h" 1 3
# 129 "include/sys/types.h" 3
typedef unsigned int wctype_t;
# 138 "include/sys/types.h" 3
# 1 "/usr/include/time_t.h" 1 3
# 37 "/usr/include/time_t.h" 3
typedef int time_t;
# 139 "include/sys/types.h" 2 3



typedef int clock_t;
# 160 "include/sys/types.h" 3
typedef long ssize_t;





typedef unsigned char uchar_t;
typedef unsigned short ushort_t;
typedef unsigned int uint_t;
typedef unsigned long ulong_t;
typedef volatile unsigned char vuchar_t;
typedef volatile unsigned short vushort_t;
typedef volatile unsigned int vuint_t;
typedef volatile unsigned long vulong_t;




typedef struct { long r[1]; } *physadr_t;




typedef struct label_t {
        long val[10];
} label_t;
# 241 "include/sys/types.h" 3
typedef int level_t;
typedef int daddr_t;
typedef char * caddr_t;
typedef long * qaddr_t;
typedef char * addr_t;
typedef uint_t ino_t;
typedef short cnt_t;
typedef int dev_t;
typedef int chan_t;





typedef long off_t;


typedef long t_scalar_t;
typedef unsigned long t_uscalar_t;
# 273 "include/sys/types.h" 3
typedef unsigned long rlim_t;
typedef int paddr_t;
typedef ushort_t nlink_t;



typedef int key_t;




typedef uint_t mode_t;







typedef uint_t uid_t;





typedef uint_t gid_t;




typedef void * mid_t;




typedef int pid_t;

typedef union cpid {
        struct {
                unsigned int pid:19;
                unsigned int nodeid:8;
                unsigned int seqnum:4;
                unsigned int signbit:1;
        } cluster_fields;
        pid_t ipid;
} cpid_t;






typedef char slab_t[12];

typedef ulong_t shmatt_t;
typedef ulong_t msgqnum_t;
typedef ulong_t msglen_t;



        typedef unsigned int wint_t;
# 342 "include/sys/types.h" 3
typedef unsigned long sigset_t;
# 359 "include/sys/types.h" 3
typedef struct __pthread_attr_t {
    long __valid;
    char* __name;
    unsigned long __arg;
    unsigned long __reserved[19];
    } pthread_attr_t;

typedef struct __pthread_mutexattr_t {
    long __valid;
    unsigned long __reserved[15];
    } pthread_mutexattr_t;

typedef struct __pthread_condattr_t {
    long __valid;
    unsigned long __reserved[13];
    } pthread_condattr_t;

typedef struct __pthread_rwlockattr_t {
    long __valid;
    unsigned long __reserved[15];
    } pthread_rwlockattr_t;
# 409 "include/sys/types.h" 3
typedef struct __pthread_t {
    void* __reserved1;
    void* __reserved2;
    unsigned short __size;
    unsigned char __version;
    unsigned char __reserved3;
    unsigned char __external;
    unsigned char __reserved4[2];
    unsigned char __creator;
    unsigned long __sequence;
    unsigned long __reserved5[2];
    void* __per_kt_area;
    void* __stack_base;
    void* __stack_reserve;
    void* __stack_yellow;
    void* __stack_guard;
    unsigned long __stack_size;
    void** __tsd_values;
    unsigned long __tsd_count;
    unsigned int __reserved6;
    unsigned int __reserved7;
    unsigned int __thread_flags;
    int __thd_errno;
    void* __stack_hiwater;
    } *pthread_t, pthreadTeb_t;

typedef struct __pthread_mutex_t {
    unsigned int __lock;
    unsigned int __valid;
    char* __name;
    unsigned int __arg;
    unsigned int __depth;
    unsigned long __sequence;
    unsigned long __owner;
    void* __block;
    } pthread_mutex_t;

typedef struct __pthread_cond_t {
    unsigned int __state;
    unsigned int __valid;
    char* __name;
    unsigned int __arg;
    unsigned int __reserved1;
    unsigned long __sequence;
    void* __block;
    } pthread_cond_t;

typedef struct __pthread_rwlock_t {
    unsigned int __valid;
    unsigned int __flags;
    char* __name;
    unsigned int __arg;
    unsigned int __readers;
    unsigned int __rwaits;
    unsigned int __wwaits;
    unsigned long __sequence;
    unsigned long __wrid;
    void* __block;
    unsigned long __reserved1;
    } pthread_rwlock_t;

typedef unsigned int pthread_key_t;

typedef struct __pthread_once_t {
    long __state;
    long __reserved[10];
    } pthread_once_t;
# 485 "include/sys/types.h" 3
typedef long timer_t;
# 509 "include/sys/types.h" 3
typedef void (*sig_t) (int,void (*)(int));
# 522 "include/sys/types.h" 3
typedef pid_t id_t;




typedef unsigned int useconds_t;
# 536 "include/sys/types.h" 3
typedef uint_t major_t;
typedef uint_t minor_t;
typedef uint_t devs_t;
typedef uint_t unit_t;
# 559 "include/sys/types.h" 3
# 1 "/usr/include/mach/machine/vm_types.h" 1 3
# 73 "/usr/include/mach/machine/vm_types.h" 3
typedef unsigned long vm_offset_t;
typedef unsigned long vm_size_t;
# 560 "include/sys/types.h" 2 3




typedef uchar_t uchar;
typedef ushort_t ushort;
typedef uint_t uint;
typedef ulong_t ulong;


typedef physadr_t physadr;


typedef uchar_t u_char;
typedef ushort_t u_short;
typedef uint_t u_int;
typedef ulong_t u_long;
typedef vuchar_t vu_char;
typedef vushort_t vu_short;
typedef vuint_t vu_int;
typedef vulong_t vu_long;





typedef struct _quad { int val[2]; } quad;


typedef long swblk_t;
typedef u_long fixpt_t;

# 1 "/usr/include/sys/select.h" 1 3
# 53 "/usr/include/sys/select.h" 3
# 1 "include/sys/types.h" 1 3
# 54 "/usr/include/sys/select.h" 2 3
# 169 "/usr/include/sys/select.h" 3
typedef int fd_mask;
# 193 "/usr/include/sys/select.h" 3
typedef struct fd_set {
        fd_mask fds_bits[((((unsigned)4096)+(((sizeof(fd_mask) * 8))-1))/((sizeof(fd_mask) * 8)))];
} fd_set;
# 246 "/usr/include/sys/select.h" 3
extern void bzero (void *, size_t);






struct timeval;
int select (int, fd_set *, fd_set *, fd_set *, struct timeval *);
# 593 "include/sys/types.h" 2 3





typedef unsigned char sa_family_t;


typedef unsigned int in_addr_t;

typedef unsigned short in_port_t;



# 1 "/usr/include/sys/common_protos.h" 1 3
# 608 "include/sys/types.h" 2 3
# 440 "include/stdio.h" 2 3
# 457 "include/stdio.h" 3
extern int fileno (FILE *);
extern FILE *fdopen (int, const char *);
# 477 "include/stdio.h" 3
extern char *cuserid (char *);
# 496 "include/stdio.h" 3
# 1 "../../include/getopt.h" 1
# 35 "../../include/getopt.h"
extern char *optarg;
# 49 "../../include/getopt.h"
extern int optind;




extern int opterr;



extern int optopt;
# 81 "../../include/getopt.h"
struct option
{

  const char *name;





  int has_arg;
  int *flag;
  int val;
};
# 114 "../../include/getopt.h"
extern int getopt ();


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);
# 497 "include/stdio.h" 2 3




extern char *ctermid (char *);
extern int getw (FILE *);
extern int pclose (FILE *);
extern int putw (int, FILE*);
extern FILE *popen (const char *, const char *);
extern char *tempnam (const char*, const char*);






# 1 "include/sys/limits.h" 1 3
# 89 "include/sys/limits.h" 3
# 1 "/usr/include/machine/machlimits.h" 1 3
# 90 "include/sys/limits.h" 2 3
# 155 "include/sys/limits.h" 3
# 1 "/usr/include/sys/syslimits.h" 1 3
# 156 "include/sys/limits.h" 2 3
# 252 "include/sys/limits.h" 3
# 1 "/usr/include/machine/machtime.h" 1 3
# 253 "include/sys/limits.h" 2 3
# 270 "include/sys/limits.h" 3
# 1 "/usr/include/sys/rt_limits.h" 1 3
# 271 "include/sys/limits.h" 2 3
# 514 "include/stdio.h" 2 3
# 544 "include/stdio.h" 3
extern void setbuffer (FILE *, char*, int);
extern void setlinebuf (FILE *);
# 53 "../../gcc/tsystem.h" 2





# 1 "/usr/include/errno.h" 1 3
# 80 "/usr/include/errno.h" 3
extern int *_errno (void);
extern int _Geterrno (void);
extern int _Seterrno (int);


extern int __geterrno (void);



extern int __seterrno (int);






extern int errno;
# 296 "/usr/include/errno.h" 3
extern void perror (const char *);
extern char *sys_errlist[];
extern int sys_nerr;
# 59 "../../gcc/tsystem.h" 2


extern int errno;



# 1 "include/string.h" 1 3
# 101 "include/string.h" 3
extern void *memchr (const void *, int , size_t );
extern void *memcpy (void *, const void *, size_t );
extern void *memset (void *, int , size_t );
extern size_t strcspn (const char *, const char *);
extern size_t strlen (const char *);
extern size_t strspn (const char *, const char *);



extern void *memmove (void *, const void *, size_t );
extern char *strcpy (char *, const char *);
extern char *strncpy (char *, const char *, size_t );
extern char *strcat (char *, const char *);
extern char *strncat (char *, const char *, size_t );
extern int memcmp (const void *, const void *,size_t );
extern int strcmp (const char *, const char *);
extern int strcoll (const char *, const char *);
extern int strncmp (const char *,const char *,size_t );
extern size_t strxfrm (char *, const char *, size_t );
extern char *strchr (const char *, int );
extern char *strpbrk (const char *, const char *);
extern char *strrchr (const char *, int );
extern char *strstr (const char *, const char *);
extern char *strtok (char *, const char *);
extern char *strerror (int);




extern char *strtok_r (char *, const char *, char **);
# 142 "include/string.h" 3
extern void *memccpy (void *, const void *, int , size_t );
# 151 "include/string.h" 3
extern void swab (const void *, void *, ssize_t);





extern char *strdup (const char *);






# 1 "/usr/include/strings.h" 1 3
# 82 "/usr/include/strings.h" 3
extern int bcmp (const void *, const void *, size_t );
extern void bcopy (const void *, void *, size_t);
extern void bzero (void *, size_t);






extern int ffs (int);
extern char *index (const char*, int);
extern char *rindex (const char*, int);
extern int strcasecmp (const char *, const char *);
extern int strncasecmp (const char *, const char *, size_t );




# 1 "include/string.h" 1 3
# 101 "/usr/include/strings.h" 2 3
# 165 "include/string.h" 2 3
# 175 "include/string.h" 3
extern char * basename (char *);
extern char * dirname (char *);
# 66 "../../gcc/tsystem.h" 2



# 1 "include/stdlib.h" 1 3
# 132 "include/stdlib.h" 3
typedef struct

         div_t

                {
        int quot;
        int rem; } div_t;

typedef struct

        ldiv_t

                        {
        long int quot;
        long int rem; } ldiv_t;
# 163 "include/stdlib.h" 3
extern int __getmbcurmax (void);




extern int mblen (const char *, size_t);
extern size_t mbstowcs (wchar_t *, const char *, size_t);
extern int mbtowc (wchar_t *, const char *, size_t);
extern size_t wcstombs (char *, const wchar_t *, size_t);
extern int wctomb (char *, wchar_t);


extern int rpmatch (const char *);

extern void *valloc (size_t );


extern double atof (const char *);
extern int atoi (const char *);
extern long int atol (const char *);
extern double strtod (const char *, char **);
extern float strtof (const char *, char **);
extern long int strtol (const char *, char **, int );
extern long double strtold (const char *, char **);
extern unsigned long int strtoul (const char *, char **, int );
extern int rand (void);
extern void srand (unsigned int );
extern void *calloc (size_t , size_t );
extern void free (void *);
extern void *malloc (size_t );
extern void *realloc (void *, size_t );
# 210 "include/stdlib.h" 3
extern long a64l (const char *);
extern char * l64a (long);
extern int ttyslot (void);






extern char *ptsname (int);
# 237 "include/stdlib.h" 3
extern void abort (void);
extern int atexit (void (*)(void));
extern void exit (int );
extern char *getenv (const char *);
extern int system (const char *);
extern void *bsearch (const void *, const void *, size_t , size_t , int(*)(const void *, const void *));
extern void qsort (void *, size_t , size_t ,int(*)(const void *, const void *));
extern int abs (int );
extern div_t div (int , int );
extern long int labs (long int );
extern ldiv_t ldiv (long int , long int );
# 259 "include/stdlib.h" 3
extern int _Prand_r (unsigned int *);
# 293 "include/stdlib.h" 3
extern double drand48 (void);
extern double erand48 (unsigned short []);
extern long jrand48 (unsigned short []);
extern void lcong48 (unsigned short []);
extern long lrand48 (void);
extern long mrand48 (void);
extern long nrand48 (unsigned short []);
extern unsigned short *seed48 (unsigned short []);
extern void srand48 (long);
extern int putenv (const char *);
extern void setkey (const char *);
# 330 "include/stdlib.h" 3
extern char *initstate (unsigned int, char *, size_t);
extern char *setstate (const char *);
extern int grantpt (int);
extern int getsubopt (char **, char *const *, char **);




extern int random (void);
extern int srandom (unsigned int);

extern char *realpath (const char *, char *);
extern int unlockpt (int);
# 356 "include/stdlib.h" 3
extern int clearenv (void);
extern char *getpass (const char *);




extern char *mktemp (char *);
extern int mkstemp (char *);
# 376 "include/stdlib.h" 3
char *ecvt (double, int, int *, int *);
char *fcvt (double, int, int *, int *);
char *gcvt (double, int, char *);
# 70 "../../gcc/tsystem.h" 2
# 1 "include/unistd.h" 1 3
# 77 "include/unistd.h" 3
# 1 "/usr/include/sys/access.h" 1 3
# 78 "include/unistd.h" 2 3
# 94 "include/unistd.h" 3
extern char **environ;

struct sockaddr_in;
# 105 "include/unistd.h" 3
extern ssize_t pread (int, void *, size_t, off_t);
extern ssize_t pwrite (int , const void *, size_t, off_t);


extern ssize_t read (int, void *, size_t);
extern ssize_t write (int , const void *, size_t);


extern int access (const char *, int );
extern unsigned int alarm (unsigned int );
extern int chdir (const char *);
extern int chown (const char *, uid_t , gid_t );
extern int chroot (const char *);
extern int close (int );
extern size_t confstr (int, char *, size_t);
# 137 "include/unistd.h" 3
extern int dup (int );
extern int dup2 (int , int );


extern int execl (const char *, const char *, ...);
extern int execv (const char *, char *const[]);
extern int execle (const char *, const char *, ...);
extern int execve (const char *, char *const[], char *const[]);
extern int execlp (const char *, const char *, ...);
extern int execvp (const char *, char *const[]);


extern void _exit (int );
extern pid_t fork (void);
extern long fpathconf (int , int );
extern int fsync (int);

extern int fdatasync (int);

extern char *getcwd (char *, size_t );
extern gid_t getegid (void);
extern uid_t geteuid (void);
extern gid_t getgid (void);



extern int getgroups (int , gid_t []);

extern char *getlogin (void);
extern pid_t getpgrp (void);
extern pid_t getpid (void);
extern pid_t getppid (void);
extern uid_t getuid (void);
extern int isatty (int );
extern int link (const char *, const char *);
extern off_t lseek (int , off_t , int );
extern long pathconf (const char *, int );
extern int pause (void);
# 187 "include/unistd.h" 3
extern int pipe (int []);







extern int rmdir (const char *);
extern int setgid (gid_t );
extern int setpgid (pid_t , pid_t );
extern pid_t setsid (void);
extern int setuid (uid_t );
extern unsigned int sleep (unsigned int );


extern int usleep (useconds_t );
# 212 "include/unistd.h" 3
extern long sysconf (int );
extern pid_t tcgetpgrp (int );
extern int tcsetpgrp (int , pid_t );
extern char *ttyname (int );
extern int unlink (const char *);

extern void swab (const void *, void *, ssize_t);
# 232 "include/unistd.h" 3
extern int _Pgetlogin_r (char *, size_t);
extern int _Pttyname_r (int, char *, size_t);






extern ssize_t pread (int, void *, size_t, off_t);
extern ssize_t pwrite (int, const void *, size_t, off_t);
extern int pthread_atfork (void (*)(void), void (*)(void), void (*)(void));
# 571 "include/unistd.h" 3
extern int fchown (int, uid_t, gid_t);
extern int ftruncate (int, off_t);





extern int readlink (const char *, char *, int);

extern int symlink (const char *, const char *);

extern int setgroups (int, gid_t []);

extern int truncate (const char *, off_t);





extern char *crypt (const char *, const char *);
extern char *cuserid (char *);
extern char *ctermid (char *);
extern void encrypt (char [], int);
extern char *getpass (const char *);
extern int nice (int);
# 611 "include/unistd.h" 3
extern int brk (char *);
extern int gethostname (char *, int);

extern int getpagesize (void);
extern pid_t getpgid (pid_t);
extern pid_t getsid (pid_t);
extern char *getwd (char *);
extern int lchown (const char *, uid_t, gid_t);
extern int lockf (int, int, off_t);
# 632 "include/unistd.h" 3
extern void *sbrk (ssize_t);
extern unsigned int ualarm (unsigned int, unsigned int);

extern void sync (void);
# 655 "include/unistd.h" 3
extern int setpgrp (pid_t, pid_t);


extern int setregid (gid_t, gid_t);
extern int setreuid (uid_t, uid_t);
extern pid_t vfork (void);
extern int getdtablesize (void);


extern char *gettxt (const char *, const char *);
extern char *getenv (const char *);
extern int bindresvport (int, struct sockaddr_in *);
extern char *crypt16 (const char *, const char *);
extern int rcmd (char **, u_short, char *, char *, char *, int *);
extern int rcmd2 (char **, u_short, char *, char *, char *, int *, int);
extern int rename (const char *, const char *);
extern int rexec (char **, int, char *, char *, char *, int *);
extern int rresvport (int *);
extern int rresvport2 (int *, int);
extern int ruserok (char *, int, char *, char *);
extern int seteuid (uid_t);
extern int setegid (gid_t);
extern int setlogin (char *);
extern int setrgid (gid_t);
extern int setruid (uid_t);
extern int syscall (int, ...);
# 71 "../../gcc/tsystem.h" 2


# 1 "include/limits.h" 1 3
# 11 "include/limits.h" 3
# 1 "include/syslimits.h" 1 3
# 12 "include/limits.h" 2 3
# 74 "../../gcc/tsystem.h" 2


# 1 "include/time.h" 1 3
# 103 "include/time.h" 3
struct tm {
        int tm_sec;
        int tm_min;
        int tm_hour;
        int tm_mday;
        int tm_mon;
        int tm_year;
        int tm_wday;
        int tm_yday;
        int tm_isdst;

        long tm_gmtoff;
        char *tm_zone;




};






extern time_t time (time_t *);
extern char *ctime (const time_t *);
extern struct tm *gmtime (const time_t *);
extern struct tm *localtime (const time_t *);
extern time_t mktime (struct tm *);
extern double difftime (time_t , time_t );
# 142 "include/time.h" 3
extern char *asctime (const struct tm *);
extern clock_t clock (void);
extern size_t strftime (char *, size_t , const char *,const struct tm *);
# 160 "include/time.h" 3
extern char * _Pasctime_r (const struct tm *, char *);
extern char * _Pctime_r (const time_t *, char *);
extern struct tm * _Pgmtime_r (const time_t *, struct tm *);
extern struct tm * _Plocaltime_r (const time_t *, struct tm *);
# 215 "include/time.h" 3
# 1 "/usr/include/sys/timers.h" 1 3
# 46 "/usr/include/sys/timers.h" 3
# 1 "/usr/include/sys/sysmisc.h" 1 3
# 48 "/usr/include/sys/sysmisc.h" 3
typedef struct sigaltstack {
        caddr_t ss_sp;




        int ss_flags;
        size_t ss_size;
} stack_t;
# 66 "/usr/include/sys/sysmisc.h" 3
typedef union sigval {
        int sival_int;
        void *sival_ptr;
} sigval_t;
# 82 "/usr/include/sys/sysmisc.h" 3
typedef struct sigevent_event {
        union sigval _sigev_value;
        int _sigev_signo;
        int _sigev_notify;
} sigevent_event_t;

typedef struct sigevent {
        sigevent_event_t _sigev_sigevent;
        union {
                int _sigev[(((64)/sizeof(int)) - 4)];


                struct {





                        void (*_sigev_notify_function) (sigval_t);
                        pthread_attr_t *_sigev_notify_attributes;
                } _sigev_un_s;

        } _sigev_un;
} sigevent_t;
# 126 "/usr/include/sys/sysmisc.h" 3
typedef struct timespec {
        time_t tv_sec;
        long tv_nsec;
} timespec_t;







struct uuprof {
        short *pr_base;
        unsigned long pr_size;
        unsigned long pr_off;
        unsigned long pr_scale;
};
# 47 "/usr/include/sys/timers.h" 2 3
# 100 "/usr/include/sys/timers.h" 3
typedef int clockid_t;
# 112 "/usr/include/sys/timers.h" 3
struct itimerspec {
        struct timespec it_interval;
        struct timespec it_value;
};
# 138 "/usr/include/sys/timers.h" 3
int clock_gettime (clockid_t, struct timespec *);
int clock_settime (clockid_t, const struct timespec *);
int clock_getdrift (int, int *);
int clock_setdrift (int, const int, int *);
int timer_create (clockid_t, struct sigevent *, timer_t *);
int timer_delete (timer_t);
int timer_gettime (timer_t, struct itimerspec *);
int timer_settime (timer_t, int, const struct itimerspec *, struct itimerspec *)
                                           ;
int timer_getoverrun (timer_t);
int nanosleep (const struct timespec *, struct timespec *);
int clock_getres (clockid_t, struct timespec *);
# 216 "include/time.h" 2 3
# 225 "include/time.h" 3
extern char *tzname[];

extern void tzset (void);






extern long timezone;


extern int daylight;

extern char *strptime (const char *, const char *, struct tm *);
# 261 "include/time.h" 3
extern struct tm *getdate (char *);
extern int getdate_err;
# 77 "../../gcc/tsystem.h" 2
# 38 "../../gcc/libgcc2.c" 2

# 1 "../../gcc/machmode.h" 1
# 29 "../../gcc/machmode.h"
enum machine_mode {
# 1 "../../gcc/machmode.def" 1
# 67 "../../gcc/machmode.def"
VOIDmode,

BImode,
QImode,
HImode,
SImode,
DImode,
TImode,
OImode,




PQImode,
PHImode,
PSImode,
PDImode,

QFmode,
HFmode,
TQFmode,
SFmode,
DFmode,
XFmode,
TFmode,


QCmode,
HCmode,
SCmode,
DCmode,
XCmode,
TCmode,

CQImode,
CHImode,
CSImode,
CDImode,
CTImode,
COImode,




V2QImode,
V2HImode,
V2SImode,
V2DImode,

V4QImode,
V4HImode,
V4SImode,
V4DImode,

V8QImode,
V8HImode,
V8SImode,
V8DImode,

V16QImode,

V2SFmode,
V2DFmode,

V4SFmode,
V4DFmode,

V8SFmode,
V8DFmode,



BLKmode,
# 148 "../../gcc/machmode.def"
CCmode,
# 31 "../../gcc/machmode.h" 2
MAX_MACHINE_MODE };
# 41 "../../gcc/machmode.h"
extern const char * const mode_name[];


enum mode_class { MODE_RANDOM, MODE_INT, MODE_FLOAT, MODE_PARTIAL_INT, MODE_CC,
                  MODE_COMPLEX_INT, MODE_COMPLEX_FLOAT,
                  MODE_VECTOR_INT, MODE_VECTOR_FLOAT,
                  MAX_MODE_CLASS};




extern const enum mode_class mode_class[];
# 80 "../../gcc/machmode.h"
extern const unsigned int mode_size[];




extern const unsigned int mode_unit_size[];
# 96 "../../gcc/machmode.h"
extern const unsigned int mode_bitsize[];
# 112 "../../gcc/machmode.h"
extern const unsigned char mode_wider_mode[];






extern enum machine_mode mode_for_size (unsigned int, enum mode_class, int)
                                                                      ;



extern enum machine_mode smallest_mode_for_size
                                (unsigned int, enum mode_class);





extern enum machine_mode int_mode_for_mode (enum machine_mode);



extern enum machine_mode get_best_mode (int, int, unsigned int, enum machine_mode, int)
                                                                        ;



extern unsigned get_mode_alignment (enum machine_mode);





extern const enum machine_mode class_narrowest_mode[];





extern enum machine_mode byte_mode;
extern enum machine_mode word_mode;
extern enum machine_mode ptr_mode;
# 40 "../../gcc/libgcc2.c" 2
# 1 "../../gcc/defaults.h" 1
# 41 "../../gcc/libgcc2.c" 2






# 1 "../../gcc/libgcc2.h" 1
# 25 "../../gcc/libgcc2.h"
extern int __gcc_bcmp (const unsigned char *, const unsigned char *, size_t);
extern void *__builtin_saveregs (void);
extern void __dummy (void);
extern void __clear_cache (char *, char *);
extern void __pure_virtual (void) __attribute__ ((__noreturn__));
extern void __terminate (void) __attribute__ ((__noreturn__));
extern void __default_terminate (void) __attribute__ ((__noreturn__));
extern void *__throw_type_match (void *, void *, void *);
extern void __empty (void);
extern void *__get_eh_context (void);
extern void **__get_eh_info (void);
extern void ***__get_dynamic_handler_chain (void);
extern int __eh_rtime_match (void *);
extern void __unwinding_cleanup (void);
extern void __rethrow (void *);
extern void __throw (void);
extern void __sjthrow (void) __attribute__ ((__noreturn__));
extern void __sjpopnthrow (void) __attribute__ ((__noreturn__));
extern void __eprintf (const char *, const char *, unsigned int, const char *)
  __attribute__ ((__noreturn__));
extern void *__eh_alloc (size_t);
extern void __eh_free (void *);

struct bb;
extern void __bb_exit_func (void);
extern void __bb_init_func (struct bb *);
extern void __bb_fork_func (void);
extern void __bb_trace_func (void);
extern void __bb_trace_ret (void);
extern void __bb_init_trace_func (struct bb *, unsigned long);

struct exception_descriptor;
extern short int __get_eh_table_language (struct exception_descriptor *);
extern short int __get_eh_table_version (struct exception_descriptor *);
# 85 "../../gcc/libgcc2.h"
typedef int QItype __attribute__ ((mode (QI)));
typedef unsigned int UQItype __attribute__ ((mode (QI)));
typedef int HItype __attribute__ ((mode (HI)));
typedef unsigned int UHItype __attribute__ ((mode (HI)));


typedef int SItype __attribute__ ((mode (SI)));
typedef unsigned int USItype __attribute__ ((mode (SI)));


typedef int DItype __attribute__ ((mode (DI)));
typedef unsigned int UDItype __attribute__ ((mode (DI)));


typedef int TItype __attribute__ ((mode (TI)));
typedef unsigned int UTItype __attribute__ ((mode (TI)));






typedef float SFtype __attribute__ ((mode (SF)));
typedef float DFtype __attribute__ ((mode (DF)));





typedef float TFtype __attribute__ ((mode (TF)));
# 140 "../../gcc/libgcc2.h"
typedef int word_type __attribute__ ((mode (__word__)));
# 228 "../../gcc/libgcc2.h"
extern TItype __multi3 (TItype, TItype);
extern TItype __divti3 (TItype, TItype);
extern UTItype __udivti3 (UTItype, UTItype);
extern UTItype __umodti3 (UTItype, UTItype);
extern TItype __modti3 (TItype, TItype);




extern UTItype __udivmodti4 (UTItype, UTItype, UTItype *);




extern TItype __negti2 (TItype);


extern TItype __lshrti3 (TItype, word_type);
extern TItype __ashlti3 (TItype, word_type);
extern TItype __ashrti3 (TItype, word_type);
extern TItype __ffsti2 (TItype);




extern UDItype __udiv_w_sdiv (UDItype *, UDItype, UDItype, UDItype);


extern word_type __cmpti2 (TItype, TItype);
extern word_type __ucmpti2 (TItype, TItype);

extern SItype __absvsi2 (SItype);
extern DItype __absvdi2 (DItype);
extern SItype __addvsi3 (SItype, SItype);
extern DItype __addvdi3 (DItype, DItype);
extern SItype __subvsi3 (SItype, SItype);
extern DItype __subvdi3 (DItype, DItype);
extern SItype __mulvsi3 (SItype, SItype);
extern DItype __mulvdi3 (DItype, DItype);
extern SItype __negvsi2 (SItype);
extern DItype __negvdi2 (DItype);


extern TItype __fixdfti (DFtype);
extern TItype __fixsfti (SFtype);
extern DFtype __floattidf (TItype);
extern SFtype __floattisf (TItype);
extern UDItype __fixunsdfdi (DFtype);
extern UDItype __fixunssfdi (SFtype);
extern TItype __fixunsdfti (DFtype);
extern TItype __fixunssfti (SFtype);
# 288 "../../gcc/libgcc2.h"
extern TItype __fixunstfti (TFtype);
extern TItype __fixtfti (TFtype);
extern TFtype __floattitf (TItype);
# 300 "../../gcc/libgcc2.h"
  struct DWstruct {DItype low, high;};






typedef union
{
  struct DWstruct s;
  TItype ll;
} DWunion;

# 1 "../../gcc/longlong.h" 1
# 169 "../../gcc/longlong.h"
extern UDItype __udiv_qrnnd (UDItype *, UDItype, UDItype, UDItype);
# 179 "../../gcc/longlong.h"
extern const UQItype __clz_tab[];
# 314 "../../gcc/libgcc2.h" 2
# 48 "../../gcc/libgcc2.c" 2
# 869 "../../gcc/libgcc2.c"
TItype
__fixtfti (TFtype a)
{
  if (a < 0)
    return - __fixunstfti (-a);
  return __fixunstfti (a);
}

Here's what gdb says:

$ gdb ./cc1
GNU gdb 4.18
Copyright 1998 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "alphaev56-dec-osf4.0f"...
Breakpoint 1 at 0x3ff800d7b20
Breakpoint 2 at 0x1200dac98: file ../../gcc/diagnostic.c, line 1676.
Breakpoint 3 at 0x3ff80189080
(gdb) D
Delete all breakpoints? (y or n) y
(gdb) r -fpreprocessed libgcc2.i -quiet -dumpbase libgcc2.c -g1 -O2 -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -version -fPIC -o libgcc2.s
Starting program: /var/home/ahobson/src/gcc/build/gcc/./cc1 -fpreprocessed libgcc2.i -quiet -dumpbase libgcc2.c -g1 -O2 -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -version -fPIC -o libgcc2.s
GNU C version 2.97 20001121 (experimental) (alphaev6-dec-osf5.0) compiled by GNU C version 2.96 20000731 (experimental).
/usr/include/getopt.h:114: warning: function declaration isn't a prototype

Program received signal SIGSEGV, Segmentation fault.
0x120211e58 in or_operand (op=0x0, mode=DImode)
    at ../../gcc/config/alpha/alpha.c:483
483       if (GET_CODE (op) == CONST_INT)
(gdb) bt full
#0  0x120211e58 in or_operand (op=0x0, mode=DImode)
    at ../../gcc/config/alpha/alpha.c:483
No locals.
#1  0x1203a1584 in recog_1 (x0=0x1ac9e0, insn=0x19b500, pnum_clobbers=0x0)
    at insn-recog.c:1244
        operands = (rtx *) 0x140077890
        x1 = 0x1ac9c0
        x2 = 0x0
        x3 = 0x19b580
        x4 = 0x0
        x5 = 0x0
        tem = 1684864
#2  0x1203a4904 in recog_3 (x0=0x1ac9e0, insn=0x19b500, pnum_clobbers=0x0)
    at insn-recog.c:3209
        operands = (rtx *) 0x140077890
        x1 = 0x1ac9c0
        x2 = 0x120375bc0
        x3 = 0x11fffb270
        x4 = 0x140130890
        tem = 1700208
#3  0x1203ade2c in recog (x0=0x1ac9e0, insn=0x19b500, pnum_clobbers=0x0)
    at insn-recog.c:8512
        operands = (rtx *) 0x140077890
---Type <return> to continue, or q <return> to quit---
        x1 = 0x2d
        x2 = 0x5
        tem = 1755488
#4  0x120355cc0 in recog_memoized_1 (insn=0x19b500) at ../../gcc/recog.c:120
No locals.
#5  0x12035c2a8 in extract_insn (insn=0x19b500) at ../../gcc/recog.c:2176
        i = 536851328
        icode = 1
        noperands = 1684864
        body = 0x1ac9e0
        p = 0x12035e030 "P\037:' \001=#\001\004"
#6  0x12035bf0c in extract_insn_cached (insn=0x19b500)
    at ../../gcc/recog.c:2081
No locals.
#7  0x120296f78 in cleanup_subreg_operands (insn=0x19b500)
    at ../../gcc/final.c:3117
        i = 1684864
#8  0x12035e130 in split_all_insns (upd_life=0) at ../../gcc/recog.c:2779
        blocks = 0x1401461e0
        changed = 1
        i = 1
        bb = 0x140144068
        insn = 0x19a240
---Type <return> to continue, or q <return> to quit---
        next = 0x19a2c0
        _va = 0x19a2c0
        _n = 1679936
        set = 0x119c00
        first = 0x19b500
        last = 0x19b580

[ lots deleted ]


If I apply the following patch which reverts part of version 1.130 of
alpha.md, I am able to successfully bootstrap.

Drew

Index: alpha.md
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/alpha/alpha.md,v
retrieving revision 1.131
retrieving revision 1.129
diff -u -r1.131 -r1.129
--- alpha.md	2000/10/27 21:30:52	1.131
+++ alpha.md	2000/10/06 05:19:40	1.129
@@ -1873,13 +1811,18 @@
 #endif
 }")
 
-(define_insn_and_split "*abstf_internal"
+(define_insn ""
   [(set (match_operand:TF 0 "register_operand" "=r")
 	(abs:TF (match_operand:TF 1 "reg_or_fp0_operand" "rG")))
    (use (match_operand:DI 2 "register_operand" "=r"))]
   "TARGET_HAS_XFLOATING_LIBS"
-  "#"
-  "&& reload_completed"
+  "#")
+
+(define_split
+  [(set (match_operand:TF 0 "register_operand" "")
+	(abs:TF (match_operand:TF 1 "reg_or_fp0_operand" "")))
+   (use (match_operand:DI 4 "register_operand" ""))]
+  "reload_completed"
   [(const_int 0)]
   "
 {
@@ -1934,13 +1877,18 @@
 #endif
 }")
 
-(define_insn_and_split "*negtf_internal"
+(define_insn ""
   [(set (match_operand:TF 0 "register_operand" "=r")
 	(neg:TF (match_operand:TF 1 "reg_or_fp0_operand" "rG")))
    (use (match_operand:DI 2 "register_operand" "=r"))]
   "TARGET_HAS_XFLOATING_LIBS"
-  "#"
-  "&& reload_completed"
+  "#")
+
+(define_split
+  [(set (match_operand:TF 0 "register_operand" "")
+	(neg:TF (match_operand:TF 1 "reg_or_fp0_operand" "")))
+   (use (match_operand:DI 4 "register_operand" ""))]
+  "reload_completed"
   [(const_int 0)]
   "
 {

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]