From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 9242 invoked by alias); 14 Jun 2011 18:53:45 -0000 Received: (qmail 9233 invoked by uid 22791); 14 Jun 2011 18:53:44 -0000 X-SWARE-Spam-Status: No, hits=-4.0 required=5.0 tests=AWL,BAYES_00,KAM_STOCKTIP,RCVD_IN_DNSWL_HI,SPF_HELO_PASS,TW_BJ,TW_SD,TW_YM,T_RP_MATCHES_RCVD X-Spam-Check-By: sourceware.org Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Tue, 14 Jun 2011 18:53:25 +0000 Received: from int-mx02.intmail.prod.int.phx2.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id p5EIr2eR028484 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Tue, 14 Jun 2011 14:53:02 -0400 Received: from ns3.rdu.redhat.com (ns3.rdu.redhat.com [10.11.255.199]) by int-mx02.intmail.prod.int.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id p5EIr2rE010056; Tue, 14 Jun 2011 14:53:02 -0400 Received: from opsy.redhat.com (ovpn01.gateway.prod.ext.phx2.redhat.com [10.5.9.1]) by ns3.rdu.redhat.com (8.13.8/8.13.8) with ESMTP id p5EIr1pd031451; Tue, 14 Jun 2011 14:53:01 -0400 Received: by opsy.redhat.com (Postfix, from userid 500) id 08BEE378233; Tue, 14 Jun 2011 12:53:00 -0600 (MDT) From: Tom Tromey To: Joel Brobecker Cc: Mark Kettenis , gdb-patches@sourceware.org Subject: Re: FYI: make current_objfile local to symbol readers References: <201106141752.p5EHqZix005374@glazunov.sibelius.xs4all.nl> <20110614180056.GA5930@adacore.com> Date: Tue, 14 Jun 2011 18:53:00 -0000 In-Reply-To: (Tom Tromey's message of "Tue, 14 Jun 2011 12:45:40 -0600") Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.2 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org X-SW-Source: 2011-06/txt/msg00196.txt.bz2 Tom> No problem, I will rename them. Here you go. Tom 2011-06-14 Tom Tromey * coffread.c (coffread_objfile): Rename from current_objfile. * dbxread.c (dbxread_objfile): Rename from current_objfile. * mdebugread.c (mdebugread_objfile): Rename from current_objfile. Index: coffread.c =================================================================== RCS file: /cvs/src/src/gdb/coffread.c,v retrieving revision 1.123 diff -u -r1.123 coffread.c --- coffread.c 14 Jun 2011 16:49:40 -0000 1.123 +++ coffread.c 14 Jun 2011 18:51:28 -0000 @@ -51,7 +51,7 @@ /* The objfile we are currently reading. */ -static struct objfile *current_objfile; +static struct objfile *coffread_objfile; struct coff_symfile_info { @@ -359,7 +359,7 @@ We will fill it in later if we find out how. */ if (type == NULL) { - type = alloc_type (current_objfile); + type = alloc_type (coffread_objfile); *type_addr = type; } return type; @@ -749,7 +749,7 @@ if (val < 0) perror_with_name (objfile->name); - current_objfile = objfile; + coffread_objfile = objfile; nlist_bfd_global = objfile->obfd; nlist_nsyms_global = nsyms; last_source_file = NULL; @@ -1136,7 +1136,7 @@ ALL_OBJFILE_SYMTABS (objfile, s) patch_opaque_types (s); - current_objfile = NULL; + coffread_objfile = NULL; } /* Routines for reading headers and symbols from executable. */ @@ -1157,14 +1157,14 @@ cs->c_symnum = symnum; bytes = bfd_bread (temp_sym, local_symesz, nlist_bfd_global); if (bytes != local_symesz) - error (_("%s: error reading symbols"), current_objfile->name); + error (_("%s: error reading symbols"), coffread_objfile->name); bfd_coff_swap_sym_in (symfile_bfd, temp_sym, (char *) sym); cs->c_naux = sym->n_numaux & 0xff; if (cs->c_naux >= 1) { bytes = bfd_bread (temp_aux, local_auxesz, nlist_bfd_global); if (bytes != local_auxesz) - error (_("%s: error reading symbols"), current_objfile->name); + error (_("%s: error reading symbols"), coffread_objfile->name); bfd_coff_swap_aux_in (symfile_bfd, temp_aux, sym->n_type, sym->n_sclass, 0, cs->c_naux, (char *) aux); @@ -1174,7 +1174,7 @@ { bytes = bfd_bread (temp_aux, local_auxesz, nlist_bfd_global); if (bytes != local_auxesz) - error (_("%s: error reading symbols"), current_objfile->name); + error (_("%s: error reading symbols"), coffread_objfile->name); } } cs->c_name = getsymname (sym); Index: dbxread.c =================================================================== RCS file: /cvs/src/src/gdb/dbxread.c,v retrieving revision 1.128 diff -u -r1.128 dbxread.c --- dbxread.c 14 Jun 2011 16:49:41 -0000 1.128 +++ dbxread.c 14 Jun 2011 18:51:28 -0000 @@ -107,7 +107,7 @@ /* The objfile we are currently reading. */ -static struct objfile *current_objfile; +static struct objfile *dbxread_objfile; /* Remember what we deduced to be the source language of this psymtab. */ @@ -347,10 +347,10 @@ static void add_old_header_file (char *name, int instance) { - struct header_file *p = HEADER_FILES (current_objfile); + struct header_file *p = HEADER_FILES (dbxread_objfile); int i; - for (i = 0; i < N_HEADER_FILES (current_objfile); i++) + for (i = 0; i < N_HEADER_FILES (dbxread_objfile); i++) if (filename_cmp (p[i].name, name) == 0 && instance == p[i].instance) { add_this_object_header_file (i); @@ -378,30 +378,30 @@ /* Make sure there is room for one more header file. */ - i = N_ALLOCATED_HEADER_FILES (current_objfile); + i = N_ALLOCATED_HEADER_FILES (dbxread_objfile); - if (N_HEADER_FILES (current_objfile) == i) + if (N_HEADER_FILES (dbxread_objfile) == i) { if (i == 0) { - N_ALLOCATED_HEADER_FILES (current_objfile) = 10; - HEADER_FILES (current_objfile) = (struct header_file *) + N_ALLOCATED_HEADER_FILES (dbxread_objfile) = 10; + HEADER_FILES (dbxread_objfile) = (struct header_file *) xmalloc (10 * sizeof (struct header_file)); } else { i *= 2; - N_ALLOCATED_HEADER_FILES (current_objfile) = i; - HEADER_FILES (current_objfile) = (struct header_file *) - xrealloc ((char *) HEADER_FILES (current_objfile), + N_ALLOCATED_HEADER_FILES (dbxread_objfile) = i; + HEADER_FILES (dbxread_objfile) = (struct header_file *) + xrealloc ((char *) HEADER_FILES (dbxread_objfile), (i * sizeof (struct header_file))); } } /* Create an entry for this header file. */ - i = N_HEADER_FILES (current_objfile)++; - hfile = HEADER_FILES (current_objfile) + i; + i = N_HEADER_FILES (dbxread_objfile)++; + hfile = HEADER_FILES (dbxread_objfile) + i; hfile->name = xstrdup (name); hfile->instance = instance; hfile->length = 10; @@ -416,7 +416,7 @@ static struct type ** explicit_lookup_type (int real_filenum, int index) { - struct header_file *f = &HEADER_FILES (current_objfile)[real_filenum]; + struct header_file *f = &HEADER_FILES (dbxread_objfile)[real_filenum]; if (index >= f->length) { @@ -2537,7 +2537,7 @@ objfile->section_offsets. */ section_offsets = pst->section_offsets; - current_objfile = objfile; + dbxread_objfile = objfile; subfile_stack = NULL; stringtab_global = DBX_STRINGTAB (objfile); @@ -2702,7 +2702,7 @@ end_stabs (); - current_objfile = NULL; + dbxread_objfile = NULL; } Index: mdebugread.c =================================================================== RCS file: /cvs/src/src/gdb/mdebugread.c,v retrieving revision 1.124 diff -u -r1.124 mdebugread.c --- mdebugread.c 14 Jun 2011 16:49:41 -0000 1.124 +++ mdebugread.c 14 Jun 2011 18:51:35 -0000 @@ -81,7 +81,7 @@ /* The objfile we are currently reading. */ -static struct objfile *current_objfile; +static struct objfile *mdebugread_objfile; @@ -515,7 +515,7 @@ if (!p) { p = ((struct mdebug_pending *) - obstack_alloc (¤t_objfile->objfile_obstack, + obstack_alloc (&mdebugread_objfile->objfile_obstack, sizeof (struct mdebug_pending))); p->s = sh; p->t = t; @@ -1008,7 +1008,7 @@ if (sh->iss == 0 || name[0] == '.' || name[0] == '\0') TYPE_TAG_NAME (t) = NULL; else - TYPE_TAG_NAME (t) = obconcat (¤t_objfile->objfile_obstack, + TYPE_TAG_NAME (t) = obconcat (&mdebugread_objfile->objfile_obstack, name, (char *) NULL); TYPE_CODE (t) = type_code; @@ -1053,12 +1053,12 @@ FIELD_BITSIZE (*f) = 0; enum_sym = ((struct symbol *) - obstack_alloc (¤t_objfile->objfile_obstack, + obstack_alloc (&mdebugread_objfile->objfile_obstack, sizeof (struct symbol))); memset (enum_sym, 0, sizeof (struct symbol)); SYMBOL_SET_LINKAGE_NAME (enum_sym, obsavestring (f->name, strlen (f->name), - ¤t_objfile->objfile_obstack)); + &mdebugread_objfile->objfile_obstack)); SYMBOL_CLASS (enum_sym) = LOC_CONST; SYMBOL_TYPE (enum_sym) = t; SYMBOL_DOMAIN (enum_sym) = VAR_DOMAIN; @@ -1149,9 +1149,9 @@ s = new_symbol (MDEBUG_EFI_SYMBOL_NAME); SYMBOL_DOMAIN (s) = LABEL_DOMAIN; SYMBOL_CLASS (s) = LOC_CONST; - SYMBOL_TYPE (s) = objfile_type (current_objfile)->builtin_void; + SYMBOL_TYPE (s) = objfile_type (mdebugread_objfile)->builtin_void; e = ((struct mdebug_extra_func_info *) - obstack_alloc (¤t_objfile->objfile_obstack, + obstack_alloc (&mdebugread_objfile->objfile_obstack, sizeof (struct mdebug_extra_func_info))); memset (e, 0, sizeof (struct mdebug_extra_func_info)); SYMBOL_VALUE_BYTES (s) = (gdb_byte *) e; @@ -1534,19 +1534,19 @@ /* Handle undefined types, they have indexNil. */ if (aux_index == indexNil) - return basic_type (btInt, current_objfile); + return basic_type (btInt, mdebugread_objfile); /* Handle corrupt aux indices. */ if (aux_index >= (debug_info->fdr + fd)->caux) { index_complaint (sym_name); - return basic_type (btInt, current_objfile); + return basic_type (btInt, mdebugread_objfile); } ax += aux_index; /* Use aux as a type information record, map its basic type. */ (*debug_swap->swap_tir_in) (bigend, &ax->a_ti, t); - tp = basic_type (t->bt, current_objfile); + tp = basic_type (t->bt, mdebugread_objfile); if (tp == NULL) { /* Cannot use builtin types -- build our own. */ @@ -1579,7 +1579,7 @@ break; default: basic_type_complaint (t->bt, sym_name); - return basic_type (btInt, current_objfile); + return basic_type (btInt, mdebugread_objfile); } } @@ -1597,9 +1597,9 @@ as short and unsigned short types with a field width of 8. Enum types also have a field width which we ignore for now. */ if (t->bt == btShort && width == 8) - tp = basic_type (btChar, current_objfile); + tp = basic_type (btChar, mdebugread_objfile); else if (t->bt == btUShort && width == 8) - tp = basic_type (btUChar, current_objfile); + tp = basic_type (btUChar, mdebugread_objfile); else if (t->bt == btEnum) ; else @@ -1635,7 +1635,7 @@ { complaint (&symfile_complaints, _("unable to cross ref btIndirect for %s"), sym_name); - return basic_type (btInt, current_objfile); + return basic_type (btInt, mdebugread_objfile); } xref_fh = get_rfd (fd, rf); xref_fd = xref_fh - debug_info->fdr; @@ -1659,7 +1659,7 @@ /* Try to cross reference this type, build new type on failure. */ ax += cross_ref (fd, ax, &tp, type_code, &name, bigend, sym_name); if (tp == (struct type *) NULL) - tp = init_type (type_code, 0, 0, (char *) NULL, current_objfile); + tp = init_type (type_code, 0, 0, (char *) NULL, mdebugread_objfile); /* DEC c89 produces cross references to qualified aggregate types, dereference them. */ @@ -1703,7 +1703,7 @@ || strcmp (TYPE_TAG_NAME (tp), name) != 0) TYPE_TAG_NAME (tp) = obsavestring (name, strlen (name), - ¤t_objfile->objfile_obstack); + &mdebugread_objfile->objfile_obstack); } } @@ -1718,7 +1718,7 @@ /* Try to cross reference this type, build new type on failure. */ ax += cross_ref (fd, ax, &tp, type_code, &name, bigend, sym_name); if (tp == (struct type *) NULL) - tp = init_type (type_code, 0, 0, (char *) NULL, current_objfile); + tp = init_type (type_code, 0, 0, (char *) NULL, mdebugread_objfile); /* Make sure that TYPE_CODE(tp) has an expected type code. Any type may be returned from cross_ref if file indirect entries @@ -1739,7 +1739,7 @@ if (TYPE_NAME (tp) == NULL || strcmp (TYPE_NAME (tp), name) != 0) TYPE_NAME (tp) = obsavestring (name, strlen (name), - ¤t_objfile->objfile_obstack); + &mdebugread_objfile->objfile_obstack); } } if (t->bt == btTypedef) @@ -1752,7 +1752,7 @@ { complaint (&symfile_complaints, _("unable to cross ref btTypedef for %s"), sym_name); - tp = basic_type (btInt, current_objfile); + tp = basic_type (btInt, mdebugread_objfile); } } @@ -1863,7 +1863,7 @@ complaint (&symfile_complaints, _("illegal array index type for %s, assuming int"), sym_name); - indx = objfile_type (current_objfile)->builtin_int; + indx = objfile_type (mdebugread_objfile)->builtin_int; } /* Get the bounds, and create the array type. */ @@ -4016,7 +4016,7 @@ external_pdr_size = debug_swap->external_pdr_size; swap_sym_in = debug_swap->swap_sym_in; swap_pdr_in = debug_swap->swap_pdr_in; - current_objfile = pst->objfile; + mdebugread_objfile = pst->objfile; cur_fd = FDR_IDX (pst); fh = ((cur_fd == -1) ? (FDR *) NULL @@ -4052,7 +4052,7 @@ if (fh->csym <= 2) /* FIXME, this blows psymtab->symtab ptr. */ { - current_objfile = NULL; + mdebugread_objfile = NULL; return; } for (cur_sdx = 2; cur_sdx < fh->csym; cur_sdx++) @@ -4114,7 +4114,7 @@ procedure specific info. */ struct mdebug_extra_func_info *e = ((struct mdebug_extra_func_info *) - obstack_alloc (¤t_objfile->objfile_obstack, + obstack_alloc (&mdebugread_objfile->objfile_obstack, sizeof (struct mdebug_extra_func_info))); struct symbol *s = new_symbol (MDEBUG_EFI_SYMBOL_NAME); @@ -4319,7 +4319,7 @@ size = lines->nitems; if (size > 1) --size; - LINETABLE (st) = obstack_copy (¤t_objfile->objfile_obstack, + LINETABLE (st) = obstack_copy (&mdebugread_objfile->objfile_obstack, lines, (sizeof (struct linetable) + size * sizeof (lines->item))); @@ -4362,7 +4362,7 @@ /* Now link the psymtab and the symtab. */ pst->symtab = st; - current_objfile = NULL; + mdebugread_objfile = NULL; } /* Ancillary parsing procedures. */ @@ -4439,7 +4439,7 @@ { *pname = ""; *tpp = init_type (type_code, 0, TYPE_FLAG_STUB, - (char *) NULL, current_objfile); + (char *) NULL, mdebugread_objfile); return result; } @@ -4526,7 +4526,7 @@ { case btVoid: *tpp = init_type (type_code, 0, 0, (char *) NULL, - current_objfile); + mdebugread_objfile); *pname = ""; break; @@ -4562,7 +4562,7 @@ _("illegal bt %d in forward typedef for %s"), tir.bt, sym_name); *tpp = init_type (type_code, 0, 0, (char *) NULL, - current_objfile); + mdebugread_objfile); break; } return result; @@ -4590,7 +4590,7 @@ has not been parsed yet. Initialize the type only, it will be filled in when it's definition is parsed. */ - *tpp = init_type (type_code, 0, 0, (char *) NULL, current_objfile); + *tpp = init_type (type_code, 0, 0, (char *) NULL, mdebugread_objfile); } add_pending (fh, esh, *tpp); } @@ -4880,12 +4880,12 @@ new_symbol (char *name) { struct symbol *s = ((struct symbol *) - obstack_alloc (¤t_objfile->objfile_obstack, + obstack_alloc (&mdebugread_objfile->objfile_obstack, sizeof (struct symbol))); memset (s, 0, sizeof (*s)); SYMBOL_SET_LANGUAGE (s, psymtab_language); - SYMBOL_SET_NAMES (s, name, strlen (name), 1, current_objfile); + SYMBOL_SET_NAMES (s, name, strlen (name), 1, mdebugread_objfile); return s; } @@ -4896,7 +4896,7 @@ { struct type *t; - t = alloc_type (current_objfile); + t = alloc_type (mdebugread_objfile); TYPE_NAME (t) = name; INIT_CPLUS_SPECIFIC (t); return t;