* ldlang.h (lang_output_section_statement_struct): Change type of

"processed" to bfd_boolean.
	* ldexp.c (fold_name): Update references to os->processed.
	* ldlang.c (lang_output_section_statement_lookup_1): Likewise.
	(lang_size_sections_1): Likewise.
	(lang_reset_memory_regions): Likewise.
This commit is contained in:
Alan Modra 2005-09-20 03:00:53 +00:00
parent 3592b9717c
commit f68d3f78b1
4 changed files with 15 additions and 9 deletions

View file

@ -1,5 +1,12 @@
2005-09-20 Alan Modra <amodra@bigpond.net.au> 2005-09-20 Alan Modra <amodra@bigpond.net.au>
* ldlang.h (lang_output_section_statement_struct): Change type of
"processed" to bfd_boolean.
* ldexp.c (fold_name): Update references to os->processed.
* ldlang.c (lang_output_section_statement_lookup_1): Likewise.
(lang_size_sections_1): Likewise.
(lang_reset_memory_regions): Likewise.
PR ld/1353 PR ld/1353
* ldlang.c (lang_size_sections_1): Process addr_tree earlier, * ldlang.c (lang_size_sections_1): Process addr_tree earlier,
so that unused output section statements affect dot. so that unused output section statements affect dot.

View file

@ -562,7 +562,7 @@ fold_name (etree_type *tree)
lang_output_section_statement_type *os; lang_output_section_statement_type *os;
os = lang_output_section_find (tree->name.name); os = lang_output_section_find (tree->name.name);
if (os != NULL && os->processed > 0) if (os != NULL && os->processed)
new_rel (0, NULL, os->bfd_section); new_rel (0, NULL, os->bfd_section);
} }
break; break;
@ -573,7 +573,7 @@ fold_name (etree_type *tree)
lang_output_section_statement_type *os; lang_output_section_statement_type *os;
os = lang_output_section_find (tree->name.name); os = lang_output_section_find (tree->name.name);
if (os != NULL && os->processed > 0) if (os != NULL && os->processed)
{ {
if (os->load_base == NULL) if (os->load_base == NULL)
new_rel (0, NULL, os->bfd_section); new_rel (0, NULL, os->bfd_section);
@ -592,7 +592,7 @@ fold_name (etree_type *tree)
os = lang_output_section_find (tree->name.name); os = lang_output_section_find (tree->name.name);
if (os == NULL) if (os == NULL)
new_abs (0); new_abs (0);
else if (os->processed > 0) else if (os->processed)
new_abs (os->bfd_section->size / opb); new_abs (os->bfd_section->size / opb);
} }
break; break;

View file

@ -1024,7 +1024,7 @@ lang_output_section_statement_lookup_1 (const char *const name, int constraint)
lookup->next = NULL; lookup->next = NULL;
lookup->bfd_section = NULL; lookup->bfd_section = NULL;
lookup->processed = 0; lookup->processed = FALSE;
lookup->constraint = constraint; lookup->constraint = constraint;
lookup->ignored = FALSE; lookup->ignored = FALSE;
lookup->sectype = normal_section; lookup->sectype = normal_section;
@ -3976,9 +3976,8 @@ lang_size_sections_1
os = &s->output_section_statement; os = &s->output_section_statement;
if (os->addr_tree != NULL) if (os->addr_tree != NULL)
{ {
os->processed = -1; os->processed = FALSE;
exp_fold_tree (os->addr_tree, bfd_abs_section_ptr, &dot); exp_fold_tree (os->addr_tree, bfd_abs_section_ptr, &dot);
os->processed = 0;
if (!expld.result.valid_p if (!expld.result.valid_p
&& expld.phase != lang_mark_phase_enum) && expld.phase != lang_mark_phase_enum)
@ -4105,7 +4104,7 @@ lang_size_sections_1
lang_size_sections_1 (os->children.head, os, &os->children.head, lang_size_sections_1 (os->children.head, os, &os->children.head,
os->fill, newdot, relax, check_regions); os->fill, newdot, relax, check_regions);
os->processed = 1; os->processed = TRUE;
if (bfd_is_abs_section (os->bfd_section) || os->ignored) if (bfd_is_abs_section (os->bfd_section) || os->ignored)
{ {
@ -5163,7 +5162,7 @@ lang_reset_memory_regions (void)
for (os = &lang_output_section_statement.head->output_section_statement; for (os = &lang_output_section_statement.head->output_section_statement;
os != NULL; os != NULL;
os = os->next) os = os->next)
os->processed = 0; os->processed = FALSE;
for (o = output_bfd->sections; o != NULL; o = o->next) for (o = output_bfd->sections; o != NULL; o = o->next)
{ {

View file

@ -134,7 +134,7 @@ typedef struct lang_output_section_statement_struct
struct lang_output_section_statement_struct *next; struct lang_output_section_statement_struct *next;
const char *name; const char *name;
int processed; bfd_boolean processed;
asection *bfd_section; asection *bfd_section;
flagword flags; /* Or together of all input sections. */ flagword flags; /* Or together of all input sections. */