From mboxrd@z Thu Jan 1 00:00:00 1970 From: Zack Weinberg To: Jeffrey A Law Cc: gcc-patches@gcc.gnu.org, gdb-patches@sourceware.cygnus.com, binutils@sourceware.cygnus.com Subject: Re: Implicit declaration fixes, libiberty Date: Mon, 29 May 2000 13:46:00 -0000 Message-id: <20000529134634.F12456@wolery.cumb.org> References: <20000529123354.A12456@wolery.cumb.org> <5495.959630246@upchuck> X-SW-Source: 2000-05/msg00455.html On Mon, May 29, 2000 at 01:57:26PM -0600, Jeffrey A Law wrote: > > In message < 20000529123354.A12456@wolery.cumb.org >you write: > > On Mon, May 29, 2000 at 11:37:20AM -0600, Jeffrey A Law wrote: > > > This is fine. Please install it into the combined binutils/gdb > > > repository too. > > > > I don't have write privileges. > You do now :-) Thanks. The patch has been applied. sort.c didn't exist in that tree; I copied it over from gcc. I shall have to adjust the Makefile - patch forthcoming. zw >From ac131313@cygnus.com Mon May 29 16:20:00 2000 From: Andrew Cagney To: msnyder@cygnus.com Cc: Andrew Gaylard , Eli Zaretskii , andrew.gaylard@bsw.co.za, gdb-patches@sourceware.cygnus.com, "Mark E." Subject: Re: Patch to build gdb-5.0 with readline-4.1 Date: Mon, 29 May 2000 16:20:00 -0000 Message-id: <3932FA80.C24DB9F6@cygnus.com> References: <39316D76.EAB1DAD8@bsw.co.za> <200005290738.DAA06104@indy.delorie.com> <3932236B.60A9BF69@za.didata.com> <395B86CE.3499@cygnus.com> X-SW-Source: 2000-05/msg00456.html Content-length: 869 Michael Snyder wrote: > Well, we went thru the same struggle the last time we merged > with readline. Maybe it would save trouble if we just renamed > our version of savestring (which I believe is unrelated to the > readline version) to gdb_savestring. Then we could forget > about it, and future readline merges might be less troublesome. Well, part of my todo list is to get savestring() replaced by something in libiberty. (like liberty:xstrdup() is slowly replaceing strsave()). There is (a slightly irksum) xmemdup() available, perhaphs there could be xstrldup() (and so I start a flame war about string duplicate function interfaces :-). However, if the new readline really doesn't use savestring() a more direct solution would be to just remove #define savestring() from the readline header - assuming it can get be pushed back into readline 4.1. Andrew >From ac131313@cygnus.com Mon May 29 16:54:00 2000 From: Andrew Cagney To: Mark Kettenis Cc: gdb-patches@sourceware.cygnus.com Subject: Re: [rfc] Don't convert to/from an illegal FP type Date: Mon, 29 May 2000 16:54:00 -0000 Message-id: <393302C0.6EB3E641@cygnus.com> References: <39326D23.16D132D6@cygnus.com> <200005291524.RAA19143@landau.wins.uva.nl> X-SW-Source: 2000-05/msg00457.html Content-length: 2286 Mark Kettenis wrote: > the double negative ended up with a positive - d10v's floating point > appeared to work perfectly :-) To expand a little on this. Prior to FBSD's fixes the test (extract_floating()): HOST_LONG_DOUBLE_FORMAT == TARGET_LONG_DOUBLE_FORMAT was being made where both were ``&floatformat_unknown''. I'm still trying to figure out how this worked as the d10v is BE while i386 is LE. Fixing FreeBSD made things worse - the test failed so the code instead started calling: floatformat_to_doublest (TARGET_LONG_DOUBLE_FORMAT, addr, &dretval); i.e. floatformat_to_doublest (&floatformat_unknown, addr, &dretval); not sure what happened next but ``22. .LT. 44.'' started failing! (The d10v, which is into extreme data types, has sizeof(float) == sizeof(double) == 4 and sizeof(long double)==8) > Andrew, have you seen the following comment in defs.h: > > /* This is used to indicate that we don't know the format of the floating point > number. Typically, this is useful for native ports, where the actual format > is irrelevant, since no conversions will be taking place. */ > > extern const struct floatformat floatformat_unknown; Yes, that was in part causing the problem :-( > Most i386 targets set TARGET_LONG_DOUBLE_FORMAT to the real format now > regardless whether they're used as part of a native port, which means > that this convention isn't very useful anymore. But your change kills > the convention for the whole of GDB. That may actually be a good > thing (since right now cross-debuggers might think host and target > `long double' formats are identical when they're not), but it might > also cause some regressions (i.e. on native ports that support `long > double' but don't explicitly specify the format). Hmm, yes, the convention is definitely dangerous for cross-debuggers (per the above). I'm going to have to find a way of not ``breaking'' existing native ports (or at least move them forward). :-/ At a guess something horrendous like: {HOST,TARGET}_LONG_DOUBLE_FORMAT if TARGET_LONG_DOUBLE_BIT == TARGET_DOUBLE_BIT TARGET_DOUBLE_FORMAT else if TARGET_LONG_DOUBLE_BIT == floatformat_i387_ext.totalsize &floatformat_i387_ext else &floatformat_unknown sigh. Thanks for the comments, Andrew >From ac131313@cygnus.com Mon May 29 23:40:00 2000 From: Andrew Cagney To: GDB Patches Subject: [rfc] multiarch TARGET_SINGLE_FORMAT et al Date: Mon, 29 May 2000 23:40:00 -0000 Message-id: <39336234.665BFCD@cygnus.com> X-SW-Source: 2000-05/msg00458.html Content-length: 12830 Hello, The attached patch replaces the defs.h definitions of TARGET_SINGLE_FORMAT, TARGET_DOUBLE_FORMAT and TARGET_LONG_DOUBLE_FORMAT with multi-arched versions. I belive I've got bug-for-bug compatible with the existing code. As a pre cursor to this change, I checked in: Tue May 30 11:22:28 2000 Andrew Cagney * gdbarch.sh: Add field ``postdefault''. Rename fields ``startup'' and ``default'' to ``staticdefault'' and ``predefault''. Fix initialization of valid_p. Create/compare gdbarch.log. which makes it possible for gdbarch to initialize a gdbarch member after, rather than before, the target initialization has occured. Andrew (I deleted the patches from gdbarch.sh.) Tue May 30 13:31:57 2000 Andrew Cagney * defs.h (TARGET_FLOAT_FORMAT, TARGET_DOUBLE_FORMAT, TARGET_LONG_DOUBLE_FORMAT): Delete. * gdbarch.sh: Add support for parameterized expressions. (TARGET_FLOAT_FORMAT, TARGET_DOUBLE_FORMAT, TARGET_LONG_DOUBLE_FORMAT): Add. Include "floatformat.h". * gdbarch.h, gdbarch.c: Regenerate. * arch-utils.c (default_single_format, default_double_format, default_long_double_format): New functions. Include "floatformat.h" * arch-utils.h: Declare. * d10v-tdep.c (d10v_gdbarch_init): Set floating point format. Note that long double is 64 bit, the rest are 32 bit. Include "floatformat.h". Index: arch-utils.c =================================================================== RCS file: /cvs/src/src/gdb/arch-utils.c,v retrieving revision 1.4 diff -p -r1.4 arch-utils.c *** arch-utils.c 2000/05/15 03:56:30 1.4 --- arch-utils.c 2000/05/30 06:27:41 *************** *** 41,46 **** --- 41,48 ---- #include "symfile.h" /* for overlay functions */ #endif + #include "floatformat.h" + /* Convenience macro for allocting typesafe memory. */ #ifndef XMALLOC *************** core_addr_greaterthan (lhs, rhs) *** 162,167 **** --- 164,210 ---- return (lhs > rhs); } + + /* Helper functions for TARGET_{FLOAT,DOUBLE}_FORMAT */ + + const struct floatformat * + default_float_format (struct gdbarch *gdbarch) + { + #if GDB_MULTI_ARCH + int byte_order = gdbarch_byte_order (gdbarch); + #else + int byte_order = TARGET_BYTE_ORDER; + #endif + switch (byte_order) + { + case BIG_ENDIAN: + return &floatformat_ieee_single_big; + case LITTLE_ENDIAN: + return &floatformat_ieee_single_little; + default: + internal_error ("default_float_format: bad byte order"); + } + } + + + const struct floatformat * + default_double_format (struct gdbarch *gdbarch) + { + #if GDB_MULTI_ARCH + int byte_order = gdbarch_byte_order (gdbarch); + #else + int byte_order = TARGET_BYTE_ORDER; + #endif + switch (byte_order) + { + case BIG_ENDIAN: + return &floatformat_ieee_double_big; + case LITTLE_ENDIAN: + return &floatformat_ieee_double_little; + default: + internal_error ("default_double_format: bad byte order"); + } + } /* */ Index: arch-utils.h =================================================================== RCS file: /cvs/src/src/gdb/arch-utils.h,v retrieving revision 1.4 diff -p -r1.4 arch-utils.h *** arch-utils.h 2000/05/15 03:56:30 1.4 --- arch-utils.h 2000/05/30 06:27:41 *************** extern gdbarch_prologue_frameless_p_ftyp *** 63,66 **** --- 63,70 ---- extern int core_addr_lessthan (CORE_ADDR lhs, CORE_ADDR rhs); extern int core_addr_greaterthan (CORE_ADDR lhs, CORE_ADDR rhs); + /* Floating point values. */ + extern const struct floatformat *default_float_format (struct gdbarch *gdbarch); + extern const struct floatformat *default_double_format (struct gdbarch *gdbarch); + #endif Index: d10v-tdep.c =================================================================== RCS file: /cvs/src/src/gdb/d10v-tdep.c,v retrieving revision 1.5 diff -p -r1.5 d10v-tdep.c *** d10v-tdep.c 2000/05/28 01:12:26 1.5 --- d10v-tdep.c 2000/05/30 06:27:43 *************** *** 36,41 **** --- 36,42 ---- #include "language.h" #include "arch-utils.h" + #include "floatformat.h" #include "sim-d10v.h" #undef XMALLOC *************** d10v_gdbarch_init (info, arches) *** 1596,1604 **** --- 1597,1622 ---- set_gdbarch_int_bit (gdbarch, 2 * TARGET_CHAR_BIT); set_gdbarch_long_bit (gdbarch, 4 * TARGET_CHAR_BIT); set_gdbarch_long_long_bit (gdbarch, 4 * TARGET_CHAR_BIT); + /* NOTE: The d10v as a 32 bit ``float'' and ``double''. ``long + double'' is 64 bits. */ set_gdbarch_float_bit (gdbarch, 4 * TARGET_CHAR_BIT); set_gdbarch_double_bit (gdbarch, 4 * TARGET_CHAR_BIT); set_gdbarch_long_double_bit (gdbarch, 8 * TARGET_CHAR_BIT); + switch (info.byte_order) + { + case BIG_ENDIAN: + set_gdbarch_float_format (gdbarch, &floatformat_ieee_single_big); + set_gdbarch_double_format (gdbarch, &floatformat_ieee_single_big); + set_gdbarch_long_double_format (gdbarch, &floatformat_ieee_double_big); + break; + case LITTLE_ENDIAN: + set_gdbarch_float_format (gdbarch, &floatformat_ieee_single_little); + set_gdbarch_double_format (gdbarch, &floatformat_ieee_single_little); + set_gdbarch_long_double_format (gdbarch, &floatformat_ieee_double_little); + break; + default: + internal_error ("d10v_gdbarch_init: bad byte order for float format"); + } set_gdbarch_use_generic_dummy_frames (gdbarch, 1); set_gdbarch_call_dummy_length (gdbarch, 0); Index: defs.h =================================================================== RCS file: /cvs/src/src/gdb/defs.h,v retrieving revision 1.21 diff -p -r1.21 defs.h *** defs.h 2000/05/23 14:48:13 1.21 --- defs.h 2000/05/30 06:27:47 *************** extern const struct floatformat floatfor *** 1114,1134 **** #define HOST_LONG_DOUBLE_FORMAT &floatformat_unknown #endif - #ifndef TARGET_FLOAT_FORMAT - #define TARGET_FLOAT_FORMAT (TARGET_BYTE_ORDER == BIG_ENDIAN \ - ? &floatformat_ieee_single_big \ - : &floatformat_ieee_single_little) - #endif - #ifndef TARGET_DOUBLE_FORMAT - #define TARGET_DOUBLE_FORMAT (TARGET_BYTE_ORDER == BIG_ENDIAN \ - ? &floatformat_ieee_double_big \ - : &floatformat_ieee_double_little) - #endif - - #ifndef TARGET_LONG_DOUBLE_FORMAT - #define TARGET_LONG_DOUBLE_FORMAT &floatformat_unknown - #endif - /* Use `long double' if the host compiler supports it. (Note that this is not necessarily any longer than `double'. On SunOS/gcc, it's the same as double.) This is necessary because GDB internally converts all floating --- 1114,1119 ---- Index: gdbarch.c =================================================================== RCS file: /cvs/src/src/gdb/gdbarch.c,v retrieving revision 1.23 diff -p -r1.23 gdbarch.c *** gdbarch.c 2000/05/15 06:27:16 1.23 --- gdbarch.c 2000/05/30 06:27:52 *************** *** 58,63 **** --- 58,64 ---- #endif #include "symcat.h" + #include "floatformat.h" /* Static function declarations */ *************** struct gdbarch *** 220,225 **** --- 221,229 ---- gdbarch_stack_align_ftype *stack_align; gdbarch_reg_struct_has_addr_ftype *reg_struct_has_addr; gdbarch_save_dummy_frame_tos_ftype *save_dummy_frame_tos; + const struct floatformat * float_format; + const struct floatformat * double_format; + const struct floatformat * long_double_format; }; *************** struct gdbarch startup_gdbarch = { *** 331,336 **** --- 335,343 ---- 0, 0, 0, + 0, + 0, + 0, /* startup_gdbarch() */ }; struct gdbarch *current_gdbarch = &startup_gdbarch; *************** verify_gdbarch (struct gdbarch *gdbarch) *** 637,642 **** --- 644,655 ---- /* Skip verify of stack_align, has predicate */ /* Skip verify of reg_struct_has_addr, has predicate */ /* Skip verify of save_dummy_frame_tos, has predicate */ + if (gdbarch->float_format == 0) + gdbarch->float_format = default_float_format (gdbarch); + if (gdbarch->double_format == 0) + gdbarch->double_format = default_double_format (gdbarch); + if (gdbarch->long_double_format == 0) + gdbarch->long_double_format = &floatformat_unknown; } *************** gdbarch_dump (void) *** 1185,1190 **** --- 1198,1218 ---- (long) current_gdbarch->save_dummy_frame_tos /*SAVE_DUMMY_FRAME_TOS ()*/); #endif + #ifdef TARGET_FLOAT_FORMAT + fprintf_unfiltered (gdb_stdlog, + "gdbarch_update: TARGET_FLOAT_FORMAT = %ld\n", + (long) TARGET_FLOAT_FORMAT); + #endif + #ifdef TARGET_DOUBLE_FORMAT + fprintf_unfiltered (gdb_stdlog, + "gdbarch_update: TARGET_DOUBLE_FORMAT = %ld\n", + (long) TARGET_DOUBLE_FORMAT); + #endif + #ifdef TARGET_LONG_DOUBLE_FORMAT + fprintf_unfiltered (gdb_stdlog, + "gdbarch_update: TARGET_LONG_DOUBLE_FORMAT = %ld\n", + (long) TARGET_LONG_DOUBLE_FORMAT); + #endif fprintf_unfiltered (gdb_stdlog, "gdbarch_update: GDB_MULTI_ARCH = %d\n", GDB_MULTI_ARCH); *************** set_gdbarch_save_dummy_frame_tos (struct *** 2818,2823 **** --- 2846,2896 ---- gdbarch_save_dummy_frame_tos_ftype save_dummy_frame_tos) { gdbarch->save_dummy_frame_tos = save_dummy_frame_tos; + } + + const struct floatformat * + gdbarch_float_format (struct gdbarch *gdbarch) + { + if (gdbarch_debug >= 2) + fprintf_unfiltered (gdb_stdlog, "gdbarch_float_format called\n"); + return gdbarch->float_format; + } + + void + set_gdbarch_float_format (struct gdbarch *gdbarch, + const struct floatformat * float_format) + { + gdbarch->float_format = float_format; + } + + const struct floatformat * + gdbarch_double_format (struct gdbarch *gdbarch) + { + if (gdbarch_debug >= 2) + fprintf_unfiltered (gdb_stdlog, "gdbarch_double_format called\n"); + return gdbarch->double_format; + } + + void + set_gdbarch_double_format (struct gdbarch *gdbarch, + const struct floatformat * double_format) + { + gdbarch->double_format = double_format; + } + + const struct floatformat * + gdbarch_long_double_format (struct gdbarch *gdbarch) + { + if (gdbarch_debug >= 2) + fprintf_unfiltered (gdb_stdlog, "gdbarch_long_double_format called\n"); + return gdbarch->long_double_format; + } + + void + set_gdbarch_long_double_format (struct gdbarch *gdbarch, + const struct floatformat * long_double_format) + { + gdbarch->long_double_format = long_double_format; } Index: gdbarch.h =================================================================== RCS file: /cvs/src/src/gdb/gdbarch.h,v retrieving revision 1.18 diff -p -r1.18 gdbarch.h *** gdbarch.h 2000/05/15 06:27:16 1.18 --- gdbarch.h 2000/05/30 06:27:54 *************** extern void set_gdbarch_save_dummy_frame *** 1091,1096 **** --- 1091,1135 ---- #endif #endif + /* Default (value) for non- multi-arch platforms. */ + #if (GDB_MULTI_ARCH == 0) && !defined (TARGET_FLOAT_FORMAT) + #define TARGET_FLOAT_FORMAT (default_float_format (current_gdbarch)) + #endif + + extern const struct floatformat * gdbarch_float_format (struct gdbarch *gdbarch); + extern void set_gdbarch_float_format (struct gdbarch *gdbarch, const struct floatformat * float_format); + #if GDB_MULTI_ARCH + #if (GDB_MULTI_ARCH > 1) || !defined (TARGET_FLOAT_FORMAT) + #define TARGET_FLOAT_FORMAT (gdbarch_float_format (current_gdbarch)) + #endif + #endif + + /* Default (value) for non- multi-arch platforms. */ + #if (GDB_MULTI_ARCH == 0) && !defined (TARGET_DOUBLE_FORMAT) + #define TARGET_DOUBLE_FORMAT (default_double_format (current_gdbarch)) + #endif + + extern const struct floatformat * gdbarch_double_format (struct gdbarch *gdbarch); + extern void set_gdbarch_double_format (struct gdbarch *gdbarch, const struct floatformat * double_format); + #if GDB_MULTI_ARCH + #if (GDB_MULTI_ARCH > 1) || !defined (TARGET_DOUBLE_FORMAT) + #define TARGET_DOUBLE_FORMAT (gdbarch_double_format (current_gdbarch)) + #endif + #endif + + /* Default (value) for non- multi-arch platforms. */ + #if (GDB_MULTI_ARCH == 0) && !defined (TARGET_LONG_DOUBLE_FORMAT) + #define TARGET_LONG_DOUBLE_FORMAT (&floatformat_unknown) + #endif + + extern const struct floatformat * gdbarch_long_double_format (struct gdbarch *gdbarch); + extern void set_gdbarch_long_double_format (struct gdbarch *gdbarch, const struct floatformat * long_double_format); + #if GDB_MULTI_ARCH + #if (GDB_MULTI_ARCH > 1) || !defined (TARGET_LONG_DOUBLE_FORMAT) + #define TARGET_LONG_DOUBLE_FORMAT (gdbarch_long_double_format (current_gdbarch)) + #endif + #endif + extern struct gdbarch_tdep *gdbarch_tdep (struct gdbarch *gdbarch); >From ac131313@cygnus.com Tue May 30 00:03:00 2000 From: Andrew Cagney To: GCC Patches Cc: GDB Patches , BINUTILS Patches Subject: [rfa] Add a name field to ``struct floatformat'' Date: Tue, 30 May 2000 00:03:00 -0000 Message-id: <3933676F.676D861C@cygnus.com> X-SW-Source: 2000-05/msg00459.html Content-length: 337 Hello, The attached adds a name field to ``struct floatformat''. It would be going into both the binutils+gdb and gcc repositories. Since GDB likes to change its floatingpoint format on the fly, being about to print the format's name out (for debugging) is very helpful. Any problems? (This code was once GDB's anyway :-). Andrew >From ac131313@cygnus.com Tue May 30 00:11:00 2000 From: Andrew Cagney To: GCC Patches Cc: GDB Patches , BINUTILS Patches Subject: Re: [rfa] Add a name field to ``struct floatformat'' Date: Tue, 30 May 2000 00:11:00 -0000 Message-id: <3933695B.6CE1380D@cygnus.com> References: <3933676F.676D861C@cygnus.com> X-SW-Source: 2000-05/msg00460.html Content-length: 7177 Andrew Cagney wrote: > > Hello, > > The attached adds a name field to ``struct floatformat''. It would be > going into both the binutils+gdb and gcc repositories. Since GDB likes > to change its floatingpoint format on the fly, being about to print the > format's name out (for debugging) is very helpful. > > Any problems? (This code was once GDB's anyway :-). > > Andrew I'll try again.... libiberty/ChangeLog: Tue May 30 16:45:25 2000 Andrew Cagney * floatformat.c: Add name to each floatformat field. include/ChangeLog: Tue May 30 16:53:34 2000 Andrew Cagney * floatformat.h (struct floatformat): Add field name. Index: libiberty/floatformat.c =================================================================== RCS file: /cvs/src/src/libiberty/floatformat.c,v retrieving revision 1.2 diff -p -r1.2 floatformat.c *** floatformat.c 1999/08/03 16:00:39 1.2 --- floatformat.c 2000/05/30 06:50:09 *************** *** 1,5 **** /* IEEE floating point support routines, for GDB, the GNU Debugger. ! Copyright (C) 1991, 1994, 1999 Free Software Foundation, Inc. This file is part of GDB. --- 1,5 ---- /* IEEE floating point support routines, for GDB, the GNU Debugger. ! Copyright (C) 1991, 1994, 1999-2000 Free Software Foundation, Inc. This file is part of GDB. *************** extern char *memset (); *** 36,54 **** /* floatformats for IEEE single and double, big and little endian. */ const struct floatformat floatformat_ieee_single_big = { ! floatformat_big, 32, 0, 1, 8, 127, 255, 9, 23, floatformat_intbit_no }; const struct floatformat floatformat_ieee_single_little = { ! floatformat_little, 32, 0, 1, 8, 127, 255, 9, 23, floatformat_intbit_no }; const struct floatformat floatformat_ieee_double_big = { ! floatformat_big, 64, 0, 1, 11, 1023, 2047, 12, 52, floatformat_intbit_no }; const struct floatformat floatformat_ieee_double_little = { ! floatformat_little, 64, 0, 1, 11, 1023, 2047, 12, 52, floatformat_intbit_no }; /* floatformat for IEEE double, little endian byte order, with big endian word --- 36,62 ---- /* floatformats for IEEE single and double, big and little endian. */ const struct floatformat floatformat_ieee_single_big = { ! floatformat_big, 32, 0, 1, 8, 127, 255, 9, 23, ! floatformat_intbit_no, ! "floatformat_ieee_single_big" }; const struct floatformat floatformat_ieee_single_little = { ! floatformat_little, 32, 0, 1, 8, 127, 255, 9, 23, ! floatformat_intbit_no, ! "floatformat_ieee_single_little" }; const struct floatformat floatformat_ieee_double_big = { ! floatformat_big, 64, 0, 1, 11, 1023, 2047, 12, 52, ! floatformat_intbit_no, ! "floatformat_ieee_double_big" }; const struct floatformat floatformat_ieee_double_little = { ! floatformat_little, 64, 0, 1, 11, 1023, 2047, 12, 52, ! floatformat_intbit_no, ! "floatformat_ieee_double_little" }; /* floatformat for IEEE double, little endian byte order, with big endian word *************** const struct floatformat floatformat_iee *** 56,79 **** const struct floatformat floatformat_ieee_double_littlebyte_bigword = { ! floatformat_littlebyte_bigword, 64, 0, 1, 11, 1023, 2047, 12, 52, floatformat_intbit_no }; const struct floatformat floatformat_i387_ext = { floatformat_little, 80, 0, 1, 15, 0x3fff, 0x7fff, 16, 64, ! floatformat_intbit_yes }; const struct floatformat floatformat_m68881_ext = { /* Note that the bits from 16 to 31 are unused. */ ! floatformat_big, 96, 0, 1, 15, 0x3fff, 0x7fff, 32, 64, floatformat_intbit_yes }; const struct floatformat floatformat_i960_ext = { /* Note that the bits from 0 to 15 are unused. */ floatformat_little, 96, 16, 17, 15, 0x3fff, 0x7fff, 32, 64, ! floatformat_intbit_yes }; const struct floatformat floatformat_m88110_ext = { --- 64,93 ---- const struct floatformat floatformat_ieee_double_littlebyte_bigword = { ! floatformat_littlebyte_bigword, 64, 0, 1, 11, 1023, 2047, 12, 52, ! floatformat_intbit_no, ! "floatformat_ieee_double_little" }; const struct floatformat floatformat_i387_ext = { floatformat_little, 80, 0, 1, 15, 0x3fff, 0x7fff, 16, 64, ! floatformat_intbit_yes, ! "floatformat_i387_ext" }; const struct floatformat floatformat_m68881_ext = { /* Note that the bits from 16 to 31 are unused. */ ! floatformat_big, 96, 0, 1, 15, 0x3fff, 0x7fff, 32, 64, ! floatformat_intbit_yes, ! "floatformat_m68881_ext" }; const struct floatformat floatformat_i960_ext = { /* Note that the bits from 0 to 15 are unused. */ floatformat_little, 96, 16, 17, 15, 0x3fff, 0x7fff, 32, 64, ! floatformat_intbit_yes, ! "floatformat_i960_ext" }; const struct floatformat floatformat_m88110_ext = { *************** const struct floatformat floatformat_m88 *** 81,97 **** /* Harris uses raw format 128 bytes long, but the number is just an ieee double, and the last 64 bits are wasted. */ floatformat_big,128, 0, 1, 11, 0x3ff, 0x7ff, 12, 52, ! floatformat_intbit_no #else floatformat_big, 80, 0, 1, 15, 0x3fff, 0x7fff, 16, 64, ! floatformat_intbit_yes #endif /* HARRIS_FLOAT_FORMAT */ }; const struct floatformat floatformat_arm_ext = { /* Bits 1 to 16 are unused. */ floatformat_big, 96, 0, 17, 15, 0x3fff, 0x7fff, 32, 64, ! floatformat_intbit_yes }; static unsigned long get_field PARAMS ((unsigned char *, --- 95,114 ---- /* Harris uses raw format 128 bytes long, but the number is just an ieee double, and the last 64 bits are wasted. */ floatformat_big,128, 0, 1, 11, 0x3ff, 0x7ff, 12, 52, ! floatformat_intbit_no, ! "floatformat_m88110_ext(harris)" #else floatformat_big, 80, 0, 1, 15, 0x3fff, 0x7fff, 16, 64, ! floatformat_intbit_yes, ! "floatformat_m88110_ext" #endif /* HARRIS_FLOAT_FORMAT */ }; const struct floatformat floatformat_arm_ext = { /* Bits 1 to 16 are unused. */ floatformat_big, 96, 0, 17, 15, 0x3fff, 0x7fff, 32, 64, ! floatformat_intbit_yes, ! "floatformat_arm_ext" }; static unsigned long get_field PARAMS ((unsigned char *, Index: include/floatformat.h =================================================================== RCS file: /cvs/src/src/include/floatformat.h,v retrieving revision 1.1.1.1 diff -p -r1.1.1.1 floatformat.h *** floatformat.h 1999/05/03 07:29:01 1.1.1.1 --- floatformat.h 2000/05/30 06:50:09 *************** *** 1,5 **** /* IEEE floating point support declarations, for GDB, the GNU Debugger. ! Copyright (C) 1991 Free Software Foundation, Inc. This file is part of GDB. --- 1,5 ---- /* IEEE floating point support declarations, for GDB, the GNU Debugger. ! Copyright (C) 1991, 2000 Free Software Foundation, Inc. This file is part of GDB. *************** struct floatformat *** 73,78 **** --- 73,81 ---- /* Is the integer bit explicit or implicit? */ enum floatformat_intbit intbit; + + /* Internal name for debugging. */ + const char *name; }; /* floatformats for IEEE single and double, big and little endian. */ >From ac131313@cygnus.com Tue May 30 01:08:00 2000 From: Andrew Cagney To: GDB Patches Subject: [maint] Two new maintainers Date: Tue, 30 May 2000 01:08:00 -0000 Message-id: <393376DA.6AB8EABA@cygnus.com> X-SW-Source: 2000-05/msg00461.html Content-length: 300 FYI, Both Pierre Muller and Klee Dienes are being added to the ``Write After Approval'' list. I hope that they are both able to move on to more significant roles. ya! Andrew PS: GCC gets maintainers to add themselves self to the MAINTAINERS file (as a sanity check) that checkin works. So .... >From ac131313@cygnus.com Tue May 30 01:24:00 2000 From: Andrew Cagney To: Eli Zaretskii Cc: gdb-patches@sourceware.cygnus.com Subject: Re: [rfa/5] add PDF target to doc directory Date: Tue, 30 May 2000 01:24:00 -0000 Message-id: <39337A95.4E9DA83A@cygnus.com> References: <392F87DB.5E05556B@cygnus.com> <39306263.C6C5480D@cygnus.com> <3931EE33.D2EFAD6E@cygnus.com> <200005290719.DAA06087@indy.delorie.com> X-SW-Source: 2000-05/msg00462.html Content-length: 983 Eli Zaretskii wrote: > > > Date: Mon, 29 May 2000 14:12:35 +1000 > > From: Andrew Cagney > > > > Ok? I left out the diff to texinfo.tex - it is huge. I guess the > > question is, is this (specifically the texinfo.tex update) ok with the > > doco maintainers as a change to the 5.0 branch? > > >From mere inspection, I don't see any problems with adding this to the > branch. The only issue that worries me is whether the new texinfo.tex > will not break older Texinfo installations. However, since the > Makefile uses neither texi2dvi nor makeinfo in the DVI and PDF > targets, I guess that's okay, too. > > Perhaps just make sure that the Info files still build with makeinfo > 3.9 and stock 3.12 (I'm thinking about the @if... directives you > added), just to be on the safe side ;-) Yes, I avoided ``@ifnottex'' which caused me grief last time. I've also tried it with makeinfo 3.12, 3.12f and 4.0 and they all went through without errors. Andrew >From ac131313@cygnus.com Tue May 30 01:29:00 2000 From: Andrew Cagney To: Kevin Buettner Cc: gdb-patches@sourceware.cygnus.com Subject: Re: [PATCH] PARAMS removal Date: Tue, 30 May 2000 01:29:00 -0000 Message-id: <39337BC8.E1AC1561@cygnus.com> References: <1000528014401.ZM9667@ocotillo.lan> X-SW-Source: 2000-05/msg00463.html Content-length: 17 Thanks! Andrew >From ac131313@cygnus.com Tue May 30 02:09:00 2000 From: Andrew Cagney To: BINUTILS Patches , GDB Patches Subject: Re: Update config.guess, config.sub, texinfo.tex Date: Tue, 30 May 2000 02:09:00 -0000 Message-id: <39338517.856AB04C@cygnus.com> References: <3931F0DF.868A3085@cygnus.com> X-SW-Source: 2000-05/msg00464.html Content-length: 18245 Andrew Cagney wrote: > > FYI, > > I intend updating these with more recent copies from the official > releases. For texinfo.tex that would be makeinfo-4.0. Attached are the config.* changes. Andrew Tue May 30 19:01:12 2000 Andrew Cagney * config.sub: Import CVS version 1.167 Tue May 30 09:00:07 2000. * config.guess: Import CVS version 1.148 Tue May 30 09:00:06 2000 Index: config.guess =================================================================== RCS file: /cvs/src/src/config.guess,v retrieving revision 1.4 diff -p -r1.4 config.guess *** config.guess 2000/02/24 05:38:51 1.4 --- config.guess 2000/05/30 09:04:40 *************** *** 2,8 **** # Attempt to guess a canonical system name. # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000 # Free Software Foundation, Inc. ! # # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or --- 2,10 ---- # Attempt to guess a canonical system name. # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000 # Free Software Foundation, Inc. ! ! version='2000-05-30' ! # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or *************** *** 36,41 **** --- 38,83 ---- # (but try to keep the structure clean). # + me=`echo "$0" | sed -e 's,.*/,,'` + + usage="\ + Usage: $0 [OPTION] + + Output the configuration name of this system. + + Operation modes: + -h, --help print this help, then exit + -V, --version print version number, then exit" + + help=" + Try \`$me --help' for more information." + + # Parse command line + while test $# -gt 0 ; do + case "$1" in + --version | --vers* | -V ) + echo "$version" ; exit 0 ;; + --help | --h* | -h ) + echo "$usage"; exit 0 ;; + -- ) # Stop option processing + shift; break ;; + - ) # Use stdin as input. + break ;; + -* ) + exec >&2 + echo "$me: invalid option $1" + echo "$help" + exit 1 ;; + * ) + break ;; + esac + done + + if test $# != 0; then + echo "$me: too many arguments$help" >&2 + exit 1 + fi + # Use $HOST_CC if defined. $CC may point to a cross-compiler if test x"$CC_FOR_BUILD" = x; then if test x"$HOST_CC" != x; then *************** EOF *** 266,272 **** exit 0 ;; # The situation for MiNT is a little confusing. The machine name # can be virtually everything (everything which is not ! # "atarist" or "atariste" at least should have a processor # > m68000). The system name ranges from "MiNT" over "FreeMiNT" # to the lowercase version "mint" (or "freemint"). Finally # the system name "TOS" denotes a system which is actually not --- 308,314 ---- exit 0 ;; # The situation for MiNT is a little confusing. The machine name # can be virtually everything (everything which is not ! # "atarist" or "atariste" at least should have a processor # > m68000). The system name ranges from "MiNT" over "FreeMiNT" # to the lowercase version "mint" (or "freemint"). Finally # the system name "TOS" denotes a system which is actually not *************** EOF *** 360,366 **** AViiON:dgux:*:*) # DG/UX returns AViiON for all architectures UNAME_PROCESSOR=`/usr/bin/uname -p` ! if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110] then if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ [ ${TARGET_BINARY_INTERFACE}x = x ] --- 402,408 ---- AViiON:dgux:*:*) # DG/UX returns AViiON for all architectures UNAME_PROCESSOR=`/usr/bin/uname -p` ! if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] then if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ [ ${TARGET_BINARY_INTERFACE}x = x ] *************** EOF *** 458,463 **** --- 500,507 ---- 9000/[34]?? ) HP_ARCH=m68k ;; 9000/[678][0-9][0-9]) sed 's/^ //' << EOF >$dummy.c + + #define _HPUX_SOURCE #include #include *************** EOF *** 588,594 **** echo alpha-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' exit 0 ;; CRAY*SV1:*:*:*) ! echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' exit 0 ;; CRAY-2:*:*:*) echo cray2-cray-unicos --- 632,638 ---- echo alpha-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' exit 0 ;; CRAY*SV1:*:*:*) ! echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' exit 0 ;; CRAY-2:*:*:*) echo cray2-cray-unicos *************** EOF *** 604,610 **** hp300:OpenBSD:*:*) echo m68k-unknown-openbsd${UNAME_RELEASE} exit 0 ;; ! i?86:BSD/386:*:* | i?86:BSD/OS:*:*) echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} exit 0 ;; sparc*:BSD/OS:*:*) --- 648,654 ---- hp300:OpenBSD:*:*) echo m68k-unknown-openbsd${UNAME_RELEASE} exit 0 ;; ! i?86:BSD/386:*:* | i?86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} exit 0 ;; sparc*:BSD/OS:*:*) *************** EOF *** 614,625 **** echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} exit 0 ;; *:FreeBSD:*:*) - if test -x /usr/bin/objformat; then - if test "elf" = "`/usr/bin/objformat`"; then - echo ${UNAME_MACHINE}-unknown-freebsdelf`echo ${UNAME_RELEASE}|sed -e 's/[-_].*//'` - exit 0 - fi - fi echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` exit 0 ;; *:OpenBSD:*:*) --- 658,663 ---- *************** EOF *** 670,675 **** --- 708,717 ---- echo "${UNAME_MACHINE}-pc-linux-gnuaout" exit 0 ;; + elf_i?86) + echo "${UNAME_MACHINE}-pc-linux" + exit 0 + ;; i?86coff) echo "${UNAME_MACHINE}-pc-linux-gnucoff" exit 0 *************** EOF *** 721,731 **** if test "$?" = 0 ; then LIBC="libc1" fi ! fi rm -f $dummy.c $dummy echo powerpc-unknown-linux-gnu${LIBC} exit 0 ;; esac if test "${UNAME_MACHINE}" = "alpha" ; then --- 763,777 ---- if test "$?" = 0 ; then LIBC="libc1" fi ! fi rm -f $dummy.c $dummy echo powerpc-unknown-linux-gnu${LIBC} exit 0 ;; + shelf_linux) + echo "${UNAME_MACHINE}-unknown-linux-gnu" + exit 0 + ;; esac if test "${UNAME_MACHINE}" = "alpha" ; then *************** EOF *** 1018,1032 **** *:Rhapsody:*:*) echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} exit 0 ;; ! Power*:Mac*OS:*:*) ! echo powerpc-apple-macos${UNAME_RELEASE} exit 0 ;; ! *:Mac*OS:*:*) ! echo ${UNAME_MACHINE}-apple-macos${UNAME_RELEASE} exit 0 ;; *:QNX:*:4*) ! echo i386-qnx-qnx${UNAME_VERSION} exit 0 ;; esac #echo '(No uname command or uname output not recognized.)' 1>&2 --- 1064,1090 ---- *:Rhapsody:*:*) echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} exit 0 ;; ! *:Darwin:*:*) ! echo `uname -p`-apple-darwin${UNAME_RELEASE} exit 0 ;; ! *:procnto*:*:* | *:QNX:[0123456789]*:*) ! if test "${UNAME_MACHINE}" = "x86pc"; then ! UNAME_MACHINE=pc ! fi ! echo `uname -p`-${UNAME_MACHINE}-nto-qnx exit 0 ;; *:QNX:*:4*) ! echo i386-pc-qnx ! exit 0 ;; ! NSR-W:NONSTOP_KERNEL:*:*) ! echo nsr-tandem-nsk${UNAME_RELEASE} ! exit 0 ;; ! BS2000:POSIX*:*:*) ! echo bs2000-siemens-sysv exit 0 ;; + DS/*:UNIX_System_V:*:*) + echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} + exit 0 ;; esac #echo '(No uname command or uname output not recognized.)' 1>&2 *************** then *** 1165,1171 **** exit 0 ;; esac fi ! #echo '(Unable to guess system type)' 1>&2 exit 1 --- 1223,1270 ---- exit 0 ;; esac fi + + cat >&2 < in order to provide the needed + information to handle your system. + + config.guess version = $version + + uname -m = `(uname -m) 2>/dev/null || echo unknown` + uname -r = `(uname -r) 2>/dev/null || echo unknown` + uname -s = `(uname -s) 2>/dev/null || echo unknown` + uname -v = `(uname -v) 2>/dev/null || echo unknown` + + /usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` + /bin/uname -X = `(/bin/uname -X) 2>/dev/null` + + hostinfo = `(hostinfo) 2>/dev/null` + /bin/universe = `(/bin/universe) 2>/dev/null` + /usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` + /bin/arch = `(/bin/arch) 2>/dev/null` + /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` + /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` + + UNAME_MACHINE = ${UNAME_MACHINE} + UNAME_RELEASE = ${UNAME_RELEASE} + UNAME_SYSTEM = ${UNAME_SYSTEM} + UNAME_VERSION = ${UNAME_VERSION} + EOF + exit 1 + + # Local variables: + # eval: (add-hook 'write-file-hooks 'time-stamp) + # time-stamp-start: "version='" + # time-stamp-format: "%:y-%02m-%02d" + # time-stamp-end: "'" + # End: Index: config.sub =================================================================== RCS file: /cvs/src/src/config.sub,v retrieving revision 1.9 diff -p -r1.9 config.sub *** config.sub 2000/05/12 17:23:42 1.9 --- config.sub 2000/05/30 09:04:46 *************** *** 2,8 **** # Configuration validation subroutine script, version 1.1. # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000 # Free Software Foundation, Inc. ! # # This file is (in principle) common to ALL GNU software. # The presence of a machine in this file suggests that SOME GNU software # can handle that machine. It does not imply ALL GNU software can. --- 2,10 ---- # Configuration validation subroutine script, version 1.1. # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000 # Free Software Foundation, Inc. ! ! version='2000-05-30' ! # This file is (in principle) common to ALL GNU software. # The presence of a machine in this file suggests that SOME GNU software # can handle that machine. It does not imply ALL GNU software can. *************** *** 50,79 **** # CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM # It is wrong to echo any other type of specification. ! if [ x$1 = x ] ! then ! echo Configuration name missing. 1>&2 ! echo "Usage: $0 CPU-MFR-OPSYS" 1>&2 ! echo "or $0 ALIAS" 1>&2 ! echo where ALIAS is a recognized configuration type. 1>&2 ! exit 1 ! fi ! # First pass through any local machine types. ! case $1 in ! *local*) ! echo $1 ! exit 0 ! ;; ! *) ! ;; esac # Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). # Here we must recognize all the valid KERNEL-OS combinations. maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` case $maybe_os in ! linux-gnu*) os=-$maybe_os basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` ;; --- 52,112 ---- # CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM # It is wrong to echo any other type of specification. ! me=`echo "$0" | sed -e 's,.*/,,'` ! usage="\ ! Usage: $0 [OPTION] CPU-MFR-OPSYS ! $0 [OPTION] ALIAS ! ! Canonicalize a configuration name. ! ! Operation modes: ! -h, --help print this help, then exit ! -V, --version print version number, then exit" ! ! help=" ! Try \`$me --help' for more information." ! ! # Parse command line ! while test $# -gt 0 ; do ! case "$1" in ! --version | --vers* | -V ) ! echo "$version" ; exit 0 ;; ! --help | --h* | -h ) ! echo "$usage"; exit 0 ;; ! -- ) # Stop option processing ! shift; break ;; ! - ) # Use stdin as input. ! break ;; ! -* ) ! exec >&2 ! echo "$me: invalid option $1" ! echo "$help" ! exit 1 ;; ! ! *local*) ! # First pass through any local machine types. ! echo $1 ! exit 0;; ! ! * ) ! break ;; ! esac ! done ! ! case $# in ! 0) echo "$me: missing argument$help" >&2 ! exit 1;; ! 1) ;; ! *) echo "$me: too many arguments$help" >&2 ! exit 1;; esac # Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). # Here we must recognize all the valid KERNEL-OS combinations. maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` case $maybe_os in ! nto-qnx* | linux-gnu*) os=-$maybe_os basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` ;; *************** case $basic_machine in *** 174,179 **** --- 207,213 ---- tahoe | i860 | ia64 | m32r | m68k | m68000 | m88k | ns32k | arc | arm \ | arme[lb] | pyramid | mn10200 | mn10300 | tron | a29k \ | 580 | i960 | h8300 \ + | x86 | ppcbe | mipsbe | mipsle | shbe | shle | armbe | armle \ | hppa | hppa1.0 | hppa1.1 | hppa2.0 | hppa2.0w | hppa2.0n \ | hppa64 \ | alpha | alphaev[4-8] | alphaev56 | alphapca5[67] \ *************** case $basic_machine in *** 184,190 **** | mips64vr4300 | mips64vr4300el | mips64vr4100 | mips64vr4100el \ | mips64vr5000 | miprs64vr5000el | mcore \ | sparc | sparclet | sparclite | sparc64 | sparcv9 | v850 | c4x \ ! | thumb | d10v | d30v | fr30 | avr) basic_machine=$basic_machine-unknown ;; m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | z8k | v70 | h8500 | w65 | pj | pjl) --- 218,224 ---- | mips64vr4300 | mips64vr4300el | mips64vr4100 | mips64vr4100el \ | mips64vr5000 | miprs64vr5000el | mcore \ | sparc | sparclet | sparclite | sparc64 | sparcv9 | v850 | c4x \ ! | thumb | d10v | fr30 | avr) basic_machine=$basic_machine-unknown ;; m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | z8k | v70 | h8500 | w65 | pj | pjl) *************** case $basic_machine in *** 208,213 **** --- 242,248 ---- | mips-* | pyramid-* | tron-* | a29k-* | romp-* | rs6000-* \ | power-* | none-* | 580-* | cray2-* | h8300-* | h8500-* | i960-* \ | xmp-* | ymp-* \ + | x86-* | ppcbe-* | mipsbe-* | mipsle-* | shbe-* | shle-* | armbe-* | armle-* \ | hppa-* | hppa1.0-* | hppa1.1-* | hppa2.0-* | hppa2.0w-* \ | hppa2.0n-* | hppa64-* \ | alpha-* | alphaev[4-8]-* | alphaev56-* | alphapca5[67]-* \ *************** case $basic_machine in *** 221,227 **** | mipstx39-* | mipstx39el-* | mcore-* \ | f301-* | armv*-* | s390-* | sv1-* | t3e-* \ | m88110-* | m680[01234]0-* | m683?2-* | m68360-* | z8k-* | d10v-* \ ! | thumb-* | v850-* | d30v-* | tic30-* | c30-* | fr30-* ) ;; # Recognize the various machine names and aliases which stand # for a CPU type and a company and sometimes even an OS. --- 256,263 ---- | mipstx39-* | mipstx39el-* | mcore-* \ | f301-* | armv*-* | s390-* | sv1-* | t3e-* \ | m88110-* | m680[01234]0-* | m683?2-* | m68360-* | z8k-* | d10v-* \ ! | thumb-* | v850-* | d30v-* | tic30-* | c30-* | fr30-* \ ! | bs2000-*) ;; # Recognize the various machine names and aliases which stand # for a CPU type and a company and sometimes even an OS. *************** case $basic_machine in *** 473,481 **** basic_machine=i386-unknown os=-mingw32 ;; - i386-qnx | qnx) - basic_machine=i386-qnx - ;; iris | iris4d) basic_machine=mips-sgi case $os in --- 509,514 ---- *************** case $basic_machine in *** 598,603 **** --- 631,639 ---- np1) basic_machine=np1-gould ;; + nsr-tandem) + basic_machine=nsr-tandem + ;; op50n-* | op60c-*) basic_machine=hppa1.1-oki os=-proelf *************** case $os in *** 935,943 **** | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \ ! | -interix* | -uwin* | -rhapsody* | -opened* | -openstep* | -oskit*) # Remember, each alternative MUST END IN *, to match a version number. ;; -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ | -windows* | -osx | -abug | -netware* | -os9* | -beos* \ | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) --- 971,992 ---- | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \ ! | -interix* | -uwin* | -rhapsody* | -darwin* | -opened* \ ! | -openstep* | -oskit*) # Remember, each alternative MUST END IN *, to match a version number. ;; + -qnx*) + case $basic_machine in + x86-* | i[34567]86-*) + ;; + *) + os=-nto$os + ;; + esac + ;; + -nto*) + os=-nto-qnx + ;; -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ | -windows* | -osx | -abug | -netware* | -os9* | -beos* \ | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) *************** case $os in *** 984,989 **** --- 1033,1041 ---- -ns2 ) os=-nextstep2 ;; + -nsk) + os=-nsk + ;; # Preserve the version number of sinix5. -sinix5.*) os=`echo $os | sed -e 's|sinix|sysv|'` *************** case $os in *** 997,1005 **** -oss*) os=-sysv3 ;; - -qnx) - os=-qnx4 - ;; -svr4) os=-sysv4 ;; --- 1049,1054 ---- *************** case $basic_machine in *** 1250,1252 **** --- 1299,1309 ---- esac echo $basic_machine$os + exit 0 + + # Local variables: + # eval: (add-hook 'write-file-hooks 'time-stamp) + # time-stamp-start: "version='" + # time-stamp-format: "%:y-%02m-%02d" + # time-stamp-end: "'" + # End: >From fnasser@cygnus.com Tue May 30 07:13:00 2000 From: Fernando Nasser To: gdb-patches@sourceware.cygnus.com Subject: RFA: Fix to value.c (value_primitive_field) Date: Tue, 30 May 2000 07:13:00 -0000 Message-id: <3933CC6A.3D5B94E0@cygnus.com> X-SW-Source: 2000-05/msg00465.html Content-length: 1125 The ChangeLog entry says all. ChangeLog: * values.c (value_primitive_field): Copy VALUE_REGNO as well. With typed registers we may have the location information in this field, in addition to VALUE_ADDRESS (which was already being copied). -- Fernando Nasser Red Hat - Toronto E-Mail: fnasser@cygnus.com 2323 Yonge Street, Suite #300 Tel: 416-482-2661 ext. 311 Toronto, Ontario M4P 2C9 Fax: 416-482-6299 Index: values.c =================================================================== RCS file: /cvs/src/src/gdb/values.c,v retrieving revision 1.6 diff -c -p -r1.6 values.c *** values.c 2000/05/28 01:12:33 1.6 --- values.c 2000/05/30 14:07:26 *************** value_primitive_field (arg1, offset, fie *** 841,846 **** --- 841,847 ---- if (VALUE_LVAL (arg1) == lval_internalvar) VALUE_LVAL (v) = lval_internalvar_component; VALUE_ADDRESS (v) = VALUE_ADDRESS (arg1); + VALUE_REGNO (v) = VALUE_REGNO (arg1); /* VALUE_OFFSET (v) = VALUE_OFFSET (arg1) + offset + TYPE_FIELD_BITPOS (arg_type, fieldno) / 8; */ return v; >From kevinb@cygnus.com Tue May 30 08:37:00 2000 From: Kevin Buettner To: Andrew Cagney , GCC Patches Cc: GDB Patches , BINUTILS Patches Subject: Re: [rfa] Add a name field to ``struct floatformat'' Date: Tue, 30 May 2000 08:37:00 -0000 Message-id: <1000530153706.ZM32196@ocotillo.lan> References: <3933676F.676D861C@cygnus.com> X-SW-Source: 2000-05/msg00466.html Content-length: 606 On May 30, 5:02pm, Andrew Cagney wrote: > The attached adds a name field to ``struct floatformat''. It would be > going into both the binutils+gdb and gcc repositories. Since GDB likes > to change its floatingpoint format on the fly, being about to print the > format's name out (for debugging) is very helpful. > > Any problems? (This code was once GDB's anyway :-). In doing the IA-64 gdb port, I added floatformat_ia64_ext to ia64-tdep.c (in the gdb sources). We'll need to add a name to this struct and it probably should be moved from ia64-tdep.c to the appropriate files in libiberty. Kevin >From nickc@cygnus.com Tue May 30 11:44:00 2000 From: Nick Clifton To: ac131313@cygnus.com Cc: gcc-patches@gcc.gnu.org, gdb-patches@sourceware.cygnus.com, binutils@sourceware.cygnus.com Subject: Re: [rfa] Add a name field to ``struct floatformat'' Date: Tue, 30 May 2000 11:44:00 -0000 Message-id: <200005301844.LAA06548@elmo.cygnus.com> X-SW-Source: 2000-05/msg00467.html Content-length: 763 Hi Andrew, : libiberty/ChangeLog: : Tue May 30 16:45:25 2000 Andrew Cagney : : * floatformat.c: Add name to each floatformat field. : : include/ChangeLog: : Tue May 30 16:53:34 2000 Andrew Cagney : : * floatformat.h (struct floatformat): Add field name. This is fine by me. One tiny point though: : --- 1,5 ---- : /* IEEE floating point support routines, for GDB, the GNU Debugger. : ! Copyright (C) 1991, 1994, 1999-2000 Free Software Foundation, Inc. I believe that the FSF lawyer has said that we should avoid date ranges in copyright statements, since it may not be clear if the range is inclusive, exclusive or somehting else. Instead, each year should be specified explicitly. Cheers Nick >From dj@delorie.com Tue May 30 11:57:00 2000 From: DJ Delorie To: nickc@cygnus.com Cc: ac131313@cygnus.com, gcc-patches@gcc.gnu.org, gdb-patches@sourceware.cygnus.com, binutils@sourceware.cygnus.com Subject: Re: [rfa] Add a name field to ``struct floatformat'' Date: Tue, 30 May 2000 11:57:00 -0000 Message-id: <200005301856.OAA10673@envy.delorie.com> References: <200005301844.LAA06548@elmo.cygnus.com> X-SW-Source: 2000-05/msg00468.html Content-length: 575 > : ! Copyright (C) 1991, 1994, 1999-2000 Free Software Foundation, Inc. > > I believe that the FSF lawyer has said that we should avoid date > ranges in copyright statements, since it may not be clear if the range > is inclusive, exclusive or somehting else. Instead, each year should > be specified explicitly. I've heard this also; apparently a year range isn't legal. Only a list of years are legal. More info in the GNU maintainer's manual (although this point isn't mentioned) or at this url in particular: http://www.delorie.com/gnu/docs/GNU/maintain_4.html >From law@cygnus.com Tue May 30 13:02:00 2000 From: Jeffrey A Law To: DJ Delorie Cc: nickc@cygnus.com, ac131313@cygnus.com, gcc-patches@gcc.gnu.org, gdb-patches@sourceware.cygnus.com, binutils@sourceware.cygnus.com Subject: Re: [rfa] Add a name field to ``struct floatformat'' Date: Tue, 30 May 2000 13:02:00 -0000 Message-id: <9703.959716280@upchuck> References: <200005301856.OAA10673@envy.delorie.com> X-SW-Source: 2000-05/msg00469.html Content-length: 818 In message < 200005301856.OAA10673@envy.delorie.com >you write: > > > : ! Copyright (C) 1991, 1994, 1999-2000 Free Software Foundation, Inc. > > > > I believe that the FSF lawyer has said that we should avoid date > > ranges in copyright statements, since it may not be clear if the range > > is inclusive, exclusive or somehting else. Instead, each year should > > be specified explicitly. > > I've heard this also; apparently a year range isn't legal. Only a > list of years are legal. More info in the GNU maintainer's manual > (although this point isn't mentioned) or at this url in particular: More correctly, there's questions about its legality. Thus using ranges is considered inappropriate for FSF code. I had to go through all of the gcc sources and fix them. Ugh. jeff