* config/obj-ecoff.c (ecoff_frob_file_before_fix): Fix invocations of bfd_section_list... macros.

* config/tc-mmix.c (mmix_frob_file): Likewise.
* config/tc-xtensa.c (xtensa_remove_section): Likewise.
	(xtensa_insert_section): Likewise.

* macro.c (macro_hash): Remove static.
* macro.h (macro_hash): Provide an external declaration.
This commit is contained in:
Nick Clifton 2005-05-03 12:02:47 +00:00
parent e02b83d7f4
commit c1d05a606c
6 changed files with 35 additions and 19 deletions

View file

@ -1,3 +1,14 @@
2005-05-03 Nick Clifton <nickc@redhat.com>
* config/obj-ecoff.c (ecoff_frob_file_before_fix): Fix invocations
of bfd_section_list... macros.
* config/tc-mmix.c (mmix_frob_file): Likewise.
* config/tc-xtensa.c (xtensa_remove_section): Likewise.
(xtensa_insert_section): Likewise.
* macro.c (macro_hash): Remove static.
* macro.h (macro_hash): Provide an external declaration.
2005-05-02 H.J. Lu <hongjiu.lu@intel.com>
* write.c (write_object_file): Use bfd_section_double_list_remove

View file

@ -78,7 +78,7 @@ ecoff_frob_file_before_fix (void)
addr = 0;
for (i = 0; i < n_names; i++)
secs[i] = 0;
secs[i] = NULL;
for (sec = &stdoutput->sections; *sec != NULL;)
{
@ -86,7 +86,7 @@ ecoff_frob_file_before_fix (void)
if (!strcmp ((*sec)->name, names[i]))
{
secs[i] = *sec;
bfd_section_list_remove (stdoutput, sec);
bfd_section_list_remove (stdoutput, *sec);
break;
}
if (i == n_names)
@ -104,7 +104,7 @@ ecoff_frob_file_before_fix (void)
}
for (i = n_names - 1; i >= 0; i--)
if (secs[i])
bfd_section_list_insert (stdoutput, &stdoutput->sections, secs[i]);
bfd_section_list_insert_after (stdoutput, stdoutput->sections, secs[i]);
/* Fill in the register masks. */
{

View file

@ -3747,18 +3747,18 @@ mmix_frob_file (void)
if (real_reg_section != NULL)
{
asection **secpp;
asection *secp;
/* FIXME: Pass error state gracefully. */
if (bfd_get_section_flags (stdoutput, real_reg_section) & SEC_HAS_CONTENTS)
as_fatal (_("register section has contents\n"));
/* Really remove the section. */
for (secpp = &stdoutput->sections;
*secpp != real_reg_section;
secpp = &(*secpp)->next)
for (secp = stdoutput->sections;
secp != real_reg_section;
secp = secp->next)
;
bfd_section_list_remove (stdoutput, secpp);
bfd_section_list_remove (stdoutput, secp);
--stdoutput->section_count;
}

View file

@ -9690,12 +9690,12 @@ xtensa_remove_section (segT sec)
/* Handle brain-dead bfd_section_list_remove macro, which
expect the address of the prior section's "next" field, not
just the address of the section to remove. */
segT ps_next_ptr = stdoutput->sections;
segT *ps_next_ptr = &stdoutput->sections;
while (*ps_next_ptr != sec && *ps_next_ptr != NULL)
ps_next_ptr = &(*ps_next_ptr)->next;
while (ps_next_ptr != sec && ps_next_ptr != NULL)
ps_next_ptr = ps_next_ptr->next;
assert (*ps_next_ptr != NULL);
assert (ps_next_ptr != NULL);
bfd_section_list_remove (stdoutput, ps_next_ptr);
}
@ -9704,13 +9704,14 @@ xtensa_remove_section (segT sec)
static void
xtensa_insert_section (segT after_sec, segT sec)
{
segT *after_sec_next;
if (after_sec == NULL)
after_sec_next = &stdoutput->sections;
else
after_sec_next = &after_sec->next;
segT after_sec_next;
bfd_section_list_insert (stdoutput, after_sec_next, sec);
if (after_sec == NULL)
after_sec_next = stdoutput->sections;
else
after_sec_next = after_sec->next;
bfd_section_list_insert_after (stdoutput, after_sec_next, sec);
}

View file

@ -94,7 +94,7 @@ static void free_macro(macro_entry *);
/* The macro hash table. */
static struct hash_control *macro_hash;
struct hash_control *macro_hash;
/* Whether any macros have been defined. */

View file

@ -73,6 +73,10 @@ extern int macro_defined;
extern int macro_nest;
/* The macro hash table. */
extern struct hash_control *macro_hash;
extern int buffer_and_nest (const char *, const char *, sb *, int (*) (sb *));
extern void macro_init
(int, int, int, int (*) (const char *, int, sb *, int *));