* coffread.c (coffread_objfile): Rename from current_objfile.

* dbxread.c (dbxread_objfile): Rename from current_objfile.
	* mdebugread.c (mdebugread_objfile): Rename from current_objfile.
This commit is contained in:
Tom Tromey 2011-06-14 18:53:14 +00:00
parent 86cc002925
commit dd707e8e61
4 changed files with 60 additions and 54 deletions

View File

@ -1,3 +1,9 @@
2011-06-14 Tom Tromey <tromey@redhat.com>
* coffread.c (coffread_objfile): Rename from current_objfile.
* dbxread.c (dbxread_objfile): Rename from current_objfile.
* mdebugread.c (mdebugread_objfile): Rename from current_objfile.
2011-06-14 Tom Tromey <tromey@redhat.com>
* jv-lang.c (jv_type_objfile_data_key, dynamics_objfile)

View File

@ -51,7 +51,7 @@ extern void _initialize_coffread (void);
/* The objfile we are currently reading. */
static struct objfile *current_objfile;
static struct objfile *coffread_objfile;
struct coff_symfile_info
{
@ -359,7 +359,7 @@ coff_alloc_type (int index)
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 @@ coff_symtab_read (long symtab_offset, unsigned int nsyms,
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 @@ coff_symtab_read (long symtab_offset, unsigned int nsyms,
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 @@ read_one_sym (struct coff_symbol *cs,
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 @@ read_one_sym (struct coff_symbol *cs,
{
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);

View File

@ -107,7 +107,7 @@ struct symloc
/* 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 @@ add_this_object_header_file (int i)
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 @@ add_new_header_file (char *name, int instance)
/* 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 @@ add_new_header_file (char *name, int instance)
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 @@ read_ofile_symtab (struct partial_symtab *pst)
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 @@ read_ofile_symtab (struct partial_symtab *pst)
end_stabs ();
current_objfile = NULL;
dbxread_objfile = NULL;
}

View File

@ -81,7 +81,7 @@ extern void _initialize_mdebugread (void);
/* The objfile we are currently reading. */
static struct objfile *current_objfile;
static struct objfile *mdebugread_objfile;
@ -515,7 +515,7 @@ add_pending (FDR *fh, char *sh, struct type *t)
if (!p)
{
p = ((struct mdebug_pending *)
obstack_alloc (&current_objfile->objfile_obstack,
obstack_alloc (&mdebugread_objfile->objfile_obstack,
sizeof (struct mdebug_pending)));
p->s = sh;
p->t = t;
@ -1008,7 +1008,7 @@ parse_symbol (SYMR *sh, union aux_ext *ax, char *ext_sh, int bigend,
if (sh->iss == 0 || name[0] == '.' || name[0] == '\0')
TYPE_TAG_NAME (t) = NULL;
else
TYPE_TAG_NAME (t) = obconcat (&current_objfile->objfile_obstack,
TYPE_TAG_NAME (t) = obconcat (&mdebugread_objfile->objfile_obstack,
name, (char *) NULL);
TYPE_CODE (t) = type_code;
@ -1053,12 +1053,12 @@ parse_symbol (SYMR *sh, union aux_ext *ax, char *ext_sh, int bigend,
FIELD_BITSIZE (*f) = 0;
enum_sym = ((struct symbol *)
obstack_alloc (&current_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),
&current_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 @@ parse_symbol (SYMR *sh, union aux_ext *ax, char *ext_sh, int bigend,
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 (&current_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 @@ parse_type (int fd, union aux_ext *ax, unsigned int aux_index, int *bs,
/* 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 @@ parse_type (int fd, union aux_ext *ax, unsigned int aux_index, int *bs,
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 @@ parse_type (int fd, union aux_ext *ax, unsigned int aux_index, int *bs,
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 @@ parse_type (int fd, union aux_ext *ax, unsigned int aux_index, int *bs,
{
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 @@ parse_type (int fd, union aux_ext *ax, unsigned int aux_index, int *bs,
/* 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 @@ parse_type (int fd, union aux_ext *ax, unsigned int aux_index, int *bs,
|| strcmp (TYPE_TAG_NAME (tp), name) != 0)
TYPE_TAG_NAME (tp)
= obsavestring (name, strlen (name),
&current_objfile->objfile_obstack);
&mdebugread_objfile->objfile_obstack);
}
}
@ -1718,7 +1718,7 @@ parse_type (int fd, union aux_ext *ax, unsigned int aux_index, int *bs,
/* 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 @@ parse_type (int fd, union aux_ext *ax, unsigned int aux_index, int *bs,
if (TYPE_NAME (tp) == NULL
|| strcmp (TYPE_NAME (tp), name) != 0)
TYPE_NAME (tp) = obsavestring (name, strlen (name),
&current_objfile->objfile_obstack);
&mdebugread_objfile->objfile_obstack);
}
}
if (t->bt == btTypedef)
@ -1752,7 +1752,7 @@ parse_type (int fd, union aux_ext *ax, unsigned int aux_index, int *bs,
{
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 @@ upgrade_type (int fd, struct type **tpp, int tq, union aux_ext *ax, int bigend,
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 @@ psymtab_to_symtab_1 (struct partial_symtab *pst, const char *filename)
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 @@ psymtab_to_symtab_1 (struct partial_symtab *pst, const char *filename)
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 @@ psymtab_to_symtab_1 (struct partial_symtab *pst, const char *filename)
procedure specific info. */
struct mdebug_extra_func_info *e =
((struct mdebug_extra_func_info *)
obstack_alloc (&current_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 @@ psymtab_to_symtab_1 (struct partial_symtab *pst, const char *filename)
size = lines->nitems;
if (size > 1)
--size;
LINETABLE (st) = obstack_copy (&current_objfile->objfile_obstack,
LINETABLE (st) = obstack_copy (&mdebugread_objfile->objfile_obstack,
lines,
(sizeof (struct linetable)
+ size * sizeof (lines->item)));
@ -4362,7 +4362,7 @@ psymtab_to_symtab_1 (struct partial_symtab *pst, const char *filename)
/* Now link the psymtab and the symtab. */
pst->symtab = st;
current_objfile = NULL;
mdebugread_objfile = NULL;
}
/* Ancillary parsing procedures. */
@ -4439,7 +4439,7 @@ cross_ref (int fd, union aux_ext *ax, struct type **tpp,
{
*pname = "<undefined>";
*tpp = init_type (type_code, 0, TYPE_FLAG_STUB,
(char *) NULL, current_objfile);
(char *) NULL, mdebugread_objfile);
return result;
}
@ -4526,7 +4526,7 @@ cross_ref (int fd, union aux_ext *ax, struct type **tpp,
{
case btVoid:
*tpp = init_type (type_code, 0, 0, (char *) NULL,
current_objfile);
mdebugread_objfile);
*pname = "<undefined>";
break;
@ -4562,7 +4562,7 @@ cross_ref (int fd, union aux_ext *ax, struct type **tpp,
_("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 @@ cross_ref (int fd, union aux_ext *ax, struct type **tpp,
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 @@ static struct symbol *
new_symbol (char *name)
{
struct symbol *s = ((struct symbol *)
obstack_alloc (&current_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 @@ new_type (char *name)
{
struct type *t;
t = alloc_type (current_objfile);
t = alloc_type (mdebugread_objfile);
TYPE_NAME (t) = name;
INIT_CPLUS_SPECIFIC (t);
return t;