Skip to content

Commit

Permalink
* config/obj-ecoff.c (ecoff_frob_file_before_fix): Fix invocations of…
Browse files Browse the repository at this point in the history
… 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.
  • Loading branch information
nickclifton committed May 3, 2005
1 parent e02b83d commit c1d05a6
Show file tree
Hide file tree
Showing 6 changed files with 33 additions and 17 deletions.
11 changes: 11 additions & 0 deletions gas/ChangeLog
Original file line number Diff line number Diff line change
@@ -1,3 +1,14 @@
2005-05-03 Nick Clifton <[email protected]>

* 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 <[email protected]>

* write.c (write_object_file): Use bfd_section_double_list_remove
Expand Down
6 changes: 3 additions & 3 deletions gas/config/obj-ecoff.c
Original file line number Diff line number Diff line change
Expand Up @@ -78,15 +78,15 @@ 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;)
{
for (i = 0; i < n_names; i++)
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)
Expand All @@ -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. */
{
Expand Down
10 changes: 5 additions & 5 deletions gas/config/tc-mmix.c
Original file line number Diff line number Diff line change
Expand Up @@ -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;
}

Expand Down
17 changes: 9 additions & 8 deletions gas/config/tc-xtensa.c
Original file line number Diff line number Diff line change
Expand Up @@ -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);
}
Expand All @@ -9704,13 +9704,14 @@ xtensa_remove_section (segT sec)
static void
xtensa_insert_section (segT after_sec, segT sec)
{
segT *after_sec_next;
segT after_sec_next;

if (after_sec == NULL)
after_sec_next = &stdoutput->sections;
after_sec_next = stdoutput->sections;
else
after_sec_next = &after_sec->next;
after_sec_next = after_sec->next;

bfd_section_list_insert (stdoutput, after_sec_next, sec);
bfd_section_list_insert_after (stdoutput, after_sec_next, sec);
}


Expand Down
2 changes: 1 addition & 1 deletion gas/macro.c
Original file line number Diff line number Diff line change
Expand Up @@ -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. */

Expand Down
4 changes: 4 additions & 0 deletions gas/macro.h
Original file line number Diff line number Diff line change
Expand Up @@ -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 *));
Expand Down

0 comments on commit c1d05a6

Please sign in to comment.