* dwarfread.c (struct dieinfo): Remove obsolete at_visibility,
authorFred Fish <fnf@specifix.com>
Sat, 1 Aug 1992 20:40:59 +0000 (20:40 +0000)
committerFred Fish <fnf@specifix.com>
Sat, 1 Aug 1992 20:40:59 +0000 (20:40 +0000)
at_import, at_frame_base.
* dwarfread.c (completedieinfo):  Remove cases for obsolete
AT_visibility, AT_import, and AT_frame_base attributes.
* breakpoint.h (BREAKPOINT_MAX):  Increase from 10 to 16 for
i860, which can keep up to 4 shadow breakpoints.
* tm-stratus.h (USG):  Define.
* tm-stratus.h (TARGET_BYTE_ORDER):  Define to BIG_ENDIAN.
* xm-stratus.h (HOST_BYTE_ORDER):  Define to BIG_ENDIAN.
* xm-stratus.h (xm-sysv4.h):  Include, name changed from xm-svr4.h.
* xm-stratus.h (NO_JOB_CONTROL):  Remove define.
* config/stratus.mt (TDEPFILES):  Include files available from
stratus that are not yet in release pending receipt of paperwork
at FSF.
* buildsym.c (finish_block):  Minor code format change.
* gdbtypes.h (struct field):  Add to comments.
* gdbtypes.h (virtual_field_bits):  Add to comments.
* objfiles.c (allocate_objfile):  Change obstack interface to
match FSF merging efforts.

gdb/ChangeLog
gdb/buildsym.c
gdb/config/stratus.mt
gdb/dwarfread.c
gdb/gdbtypes.h
gdb/objfiles.c
gdb/tm-stratus.h
gdb/xm-stratus.h

index 56aac82d7355cf62087f56610ef249ea31645489..9edb02d70440ecf86b6139615c38bb860880a0a4 100644 (file)
@@ -1,16 +1,50 @@
-<<<<<<< ChangeLog
-Wed Jul 22 04:23:03 1992  D. V. Henkel-Wallace  (gumby@cygnus.com)
-
-       * es1800.c: use FREAD|FWRITE rather than _FREAD|_FWRITE.
-       include <sgtty.h> on USG.  (from sef).
-
-       * depend: es1800 dependency needed here.
+Sat Aug  1 13:32:58 1992  Fred Fish  (fnf@cygnus.com)
+
+       * dwarfread.c (struct dieinfo):  Remove obsolete at_visibility, 
+       at_import, at_frame_base.
+       * dwarfread.c (completedieinfo):  Remove cases for obsolete
+       AT_visibility, AT_import, and AT_frame_base attributes.
+       * breakpoint.h (BREAKPOINT_MAX):  Increase from 10 to 16 for
+       i860, which can keep up to 4 shadow breakpoints.
+       * tm-stratus.h (USG):  Define.
+       * tm-stratus.h (TARGET_BYTE_ORDER):  Define to BIG_ENDIAN.
+       * xm-stratus.h (HOST_BYTE_ORDER):  Define to BIG_ENDIAN.
+       * xm-stratus.h (xm-sysv4.h):  Include, name changed from xm-svr4.h.
+       * xm-stratus.h (NO_JOB_CONTROL):  Remove define.
+       * config/stratus.mt (TDEPFILES):  Include files available from
+       stratus that are not yet in release pending receipt of paperwork
+       at FSF.
+       * buildsym.c (finish_block):  Minor code format change.
+       * gdbtypes.h (struct field):  Add to comments.
+       * gdbtypes.h (virtual_field_bits):  Add to comments.
+       * objfiles.c (allocate_objfile):  Change obstack interface to
+       match FSF merging efforts.
+
+Mon Jul 27 21:14:44 1992  Fred Fish  (fnf@cygnus.com)
+
+       * Makefile.in (VERSION):  Bump to 4.6.2.
+       * Makefile.in (SFILES_MAINDIR):  Add stabsread.c
+       * Makefile.in (OBS):  Add stabsread.o
+       * Makefile.in (stabsread.o):  Add build rule.
+       * stabsread.c, stabsread.h:  New files.
+       * buildsym.c:  Split out stabs specific support to stabsread.c.
+       * buildsym.h:  Split out stabs specific support to stabsread.h.
+       * dbxread.c (stabsread.h):  Include
+       * dbxread.c (dbx_new_init):  Call stabsread_new_init.
+       * dbxread.c (dbx_psymtab_to_symtab_1):  Call stabsread_init.
+       * dbxread.c (read_ofile_symtab):  Call end_stabs.
+       * dbxread.c (process_one_symbol):  Call end_stabs and start_stabs.
+       * dbxread.c (elfstab_build_psymtabs):  Call stabsread_new_init.
+       * dwarfread.c (psymtab_to_symtab_1):  Call buildsym_init, add
+       really_free_pendings to cleanups.
+       * elfread.c (elf_new_init):  Call stabsread_new_init.
+       * gdbtypes.c:  Small changes to maintenance commands.
+       * mipsread.c (stabsread.h):  Include.
+       * mipsread.c (psymtab_to_symtab_1):  Call end_stabs.
+       * xcoffread.c (stabsread.h):  Include.
+       * xcoffread.c (global_stabs):  Remove redundant def.
+       * xcoffread.c (read_xcoff_symtab):  Call start_stabs and end_stabs.
 
-Mon Jul 20 11:25:18 1992  D. V. Henkel-Wallace  (gumby@cygnus.com)
-
-       * configure.in: es1800 ok for 68000 too.
-
-=======
 Wed Jul 22 21:39:33 1992  Fred Fish  (fnf@cygnus.com)
 
        * lmode_inferior_valid, lmode_ours_valid:  New static vars.
@@ -18,6 +52,13 @@ Wed Jul 22 21:39:33 1992  Fred Fish  (fnf@cygnus.com)
        terminal_ours_1, initialize_inflow):  Record and use state
        of lmode_inferior_valid and lmode_ours_valid.
 
+Wed Jul 22 04:23:03 1992  D. V. Henkel-Wallace  (gumby@cygnus.com)
+
+       * es1800.c: use FREAD|FWRITE rather than _FREAD|_FWRITE.
+       include <sgtty.h> on USG.  (from sef).
+
+       * depend: es1800 dependency needed here.
+
 Mon Jul 20 21:09:53 1992  Fred Fish  (fnf@cygnus.com)
 
        * buildsym.c (read_struct_type):  Initialize structs allocated
@@ -38,7 +79,10 @@ Mon Jul 20 21:09:53 1992  Fred Fish  (fnf@cygnus.com)
        messages for C++ classes with no data members.  Also use new
        fprintfi_filtered function.
 
->>>>>>> 1.651
+Mon Jul 20 11:25:18 1992  D. V. Henkel-Wallace  (gumby@cygnus.com)
+
+       * configure.in: es1800 ok for 68000 too.
+
 Sat Jul 18 15:48:58 1992  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
 
        * configure.in: echo error messages to stderr, not stdout
index 6e5c52bcbbb97eb648974776c51a574e35386682..90cbbe42f9de8b3eba5dd7f4c10da4826790f2e6 100644 (file)
@@ -189,7 +189,9 @@ finish_block (symbol, listhead, old_blocks, start, end, objfile)
 
   /* Count the length of the list of symbols.  */
 
-  for (next = *listhead, i = 0; next; i += next->nsyms, next = next->next)
+  for (next = *listhead, i = 0;
+       next;
+       i += next->nsyms, next = next->next)
     {
       /*EMPTY*/;
     }
index e218e1c0b67e497e59e76ccd62977acce6b2aa69..e8d288cdf28ef280ca897e62c57d52e6808d5ef0 100644 (file)
@@ -1,5 +1,5 @@
 # Target: Stratus machine running SVR4.
 # The i860 files are not yet released to FSF.
-#TDEPFILES= i860-pinsn.o exec.o i860-tdep.o solib.o
-TDEPFILES=               exec.o             solib.o
+TDEPFILES= i860-pinsn.o exec.o i860-tdep.o solib.o
+#TDEPFILES=               exec.o             solib.o
 TM_FILE= tm-stratus.h
index 9e39f4ff95cfc4fa2099f2ce68b1b4922e9b8c61..fde32e64527e47e2798d9470605e0b012f77f0be 100644 (file)
@@ -195,12 +195,9 @@ struct dieinfo {
   unsigned long                at_member;
   unsigned long                at_discr;
   BLOCK *              at_discr_value;
-  unsigned short       at_visibility;
-  unsigned long                at_import;
   BLOCK *              at_string_length;
   char *               at_comp_dir;
   char *               at_producer;
-  unsigned long                at_frame_base;
   unsigned long                at_start_scope;
   unsigned long                at_stride_size;
   unsigned long                at_src_info;
@@ -3196,10 +3193,6 @@ completedieinfo (dip, objfile)
          dip -> at_bit_offset = target_to_host (diep, nbytes, GET_UNSIGNED,
                                                 objfile);
          break;
-       case AT_visibility:
-         dip -> at_visibility = target_to_host (diep, nbytes, GET_UNSIGNED,
-                                                objfile);
-         break;
        case AT_sibling:
          dip -> at_sibling = target_to_host (diep, nbytes, GET_UNSIGNED,
                                              objfile);
@@ -3244,10 +3237,6 @@ completedieinfo (dip, objfile)
          dip -> at_discr = target_to_host (diep, nbytes, GET_UNSIGNED,
                                            objfile);
          break;
-       case AT_import:
-         dip -> at_import = target_to_host (diep, nbytes, GET_UNSIGNED,
-                                            objfile);
-         break;
        case AT_location:
          dip -> at_location = diep;
          break;
@@ -3293,10 +3282,6 @@ completedieinfo (dip, objfile)
        case AT_producer:
          dip -> at_producer = diep;
          break;
-       case AT_frame_base:
-         dip -> at_frame_base = target_to_host (diep, nbytes, GET_UNSIGNED,
-                                                objfile);
-         break;
        case AT_start_scope:
          dip -> at_start_scope = target_to_host (diep, nbytes, GET_UNSIGNED,
                                                  objfile);
index fa1eb73bd9ff8d11d51ab5e39f4cdbbc54f88b69..60a8225bb6a02b149d857ec587b25fc9f90e86c0 100644 (file)
@@ -171,6 +171,9 @@ struct type
      For range types, there are two "fields",
      the minimum and maximum values (both inclusive).
      For enum types, each possible value is described by one "field".
+     For C++ classes, there is one field for each base class (if it is
+     a derived class) plus one field for each class data member.  Member
+     functions are recorded elsewhere.
 
      Using a pointer to a separate array of fields
      allows all types to have the same size, which is useful
@@ -260,10 +263,17 @@ struct cplus_struct_type
 
   int nfn_fields_total;
 
-  /* For derived classes, the number of base classes is given by
-     n_baseclasses and virtual_field_bits is a bit vector containing one bit
-     per base class.
-     If the base class is virtual, the corresponding bit will be set. */
+  /* For derived classes, the number of base classes is given by n_baseclasses
+     and virtual_field_bits is a bit vector containing one bit per base class.
+     If the base class is virtual, the corresponding bit will be set.
+     I.E, given:
+
+       class A{};
+       class B{};
+       class C : public B, public virtual A {};
+
+     B is a baseclass of C; A is a virtual baseclass for C.
+     This is a C++ 2.0 language feature. */
 
   B_TYPE *virtual_field_bits;
 
index 5e22be95c97a04ccdfd3a31a56eab486e46e5a33..4dae610bd5b43607a871276b93e3c228783cd911 100644 (file)
@@ -126,15 +126,15 @@ allocate_objfile (abfd, mapped)
          objfile -> mmfd = fd;
          objfile -> flags |= OBJF_MAPPED;
          mmalloc_setkey (objfile -> md, 0, objfile);
-         obstack_alloc_arg (&objfile -> psymbol_obstack, objfile -> md);
-         obstack_full_begin (&objfile -> psymbol_obstack, 0, 0, xmmalloc,
-                             mfree);
-         obstack_alloc_arg (&objfile -> symbol_obstack, objfile -> md);
-         obstack_full_begin (&objfile -> symbol_obstack, 0, 0, xmmalloc,
-                             mfree);
-         obstack_alloc_arg (&objfile -> type_obstack, objfile -> md);
-         obstack_full_begin (&objfile -> type_obstack, 0, 0, xmmalloc,
-                             mfree);
+         obstack_specify_allocation_with_arg (&objfile -> psymbol_obstack,
+                                              0, 0, xmmalloc, mfree,
+                                              objfile -> md);
+         obstack_specify_allocation_with_arg (&objfile -> symbol_obstack,
+                                              0, 0, xmmalloc, mfree,
+                                              objfile -> md);
+         obstack_specify_allocation_with_arg (&objfile -> type_obstack,
+                                              0, 0, xmmalloc, mfree,
+                                              objfile -> md);
        }
     }
 
@@ -168,9 +168,12 @@ allocate_objfile (abfd, mapped)
       objfile = (struct objfile *) xmalloc (sizeof (struct objfile));
       memset (objfile, 0, sizeof (struct objfile));
       objfile -> md = NULL;
-      obstack_full_begin (&objfile -> psymbol_obstack, 0, 0, xmalloc, free);
-      obstack_full_begin (&objfile -> symbol_obstack, 0, 0, xmalloc, free);
-      obstack_full_begin (&objfile -> type_obstack, 0, 0, xmalloc, free);
+      obstack_specify_allocation (&objfile -> psymbol_obstack, 0, 0, xmalloc,
+                                 free);
+      obstack_specify_allocation (&objfile -> symbol_obstack, 0, 0, xmalloc,
+                                 free);
+      obstack_specify_allocation (&objfile -> type_obstack, 0, 0, xmalloc,
+                                 free);
     }
 
   /* Update the per-objfile information that comes from the bfd, ensuring
@@ -565,4 +568,3 @@ map_to_address ()
 }
 
 #endif /* !defined(NO_MMALLOC) && defined(HAVE_MMAP) */
-
index 688d1a4cbb19b458e384ea5740254a8dc80ab219..a2c5ef8a874d0949f773a18d45f07dac5f4e4857 100644 (file)
@@ -17,5 +17,11 @@ You should have received a copy of the GNU General Public License
 along with this program; if not, write to the Free Software
 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */
 
+/* Normally, i860 is little endian.  However, stratus uses the i860 in
+   big endian mode. */
+#define TARGET_BYTE_ORDER BIG_ENDIAN
+
+#define USG
+
 #include "tm-sysv4.h"
 #include "tm-i860.h"
index 11313b684b02bae4dada043d2eec80bda790d1dc..8898a6d50b80f5891fb848e8a94fd62c55012483 100644 (file)
@@ -18,13 +18,18 @@ You should have received a copy of the GNU General Public License
 along with this program; if not, write to the Free Software
 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */
 
+/* Normally, i860 is little endian.  However, stratus uses the i860 in
+   big endian mode. */
+
+#define HOST_BYTE_ORDER BIG_ENDIAN
+
 /* Pick up most of what we need from the generic i860 host include file. */
 
 #include "xm-i860.h"
 
 /* Pick up more stuff from the generic SVR4 host include file. */
 
-#include "xm-svr4.h"
+#include "xm-sysv4.h"
 
 /* The native compiler complains about using volatile to indicate functions
    that never return.  So shut it up by simply defining away "NORETURN", which
@@ -33,5 +38,3 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */
 #ifndef __GNUC__
 # define NORETURN /**/
 #endif
-
-#define NO_JOB_CONTROL