aboutsummaryrefslogtreecommitdiff
path: root/ld/ldlang.h
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2005-11-03 02:54:10 +0000
committerAlan Modra <amodra@gmail.com>2005-11-03 02:54:10 +0000
commit7fabd0295e49acb53d88c31a73719ec78d7f03a4 (patch)
treef00a131d990d1ac9ade781cc78a68a0bd05979bf /ld/ldlang.h
parent3a800eb947748a8cad1b13ed485b5dce1b4cfc4b (diff)
downloadbinutils-7fabd0295e49acb53d88c31a73719ec78d7f03a4.zip
binutils-7fabd0295e49acb53d88c31a73719ec78d7f03a4.tar.gz
binutils-7fabd0295e49acb53d88c31a73719ec78d7f03a4.tar.bz2
* ldlang.h (lang_output_section_statement_type): Rearrange. Remove
memspec. Make "processed" a bitfield. (lang_data_statement_type, lang_reloc_statement_type): Rename output_vma to output_offset. * ldlang.c (lang_output_section_statement_lookup_1): Init all_input_readonly. Don't init memspec. (init_os): Remove incorrect comment. (print_data_statement, print_reloc_statement): Adjust for lang_data_statement_type and lang_reloc_statement_type change. (lang_size_sections_1, lang_add_reloc): Likewise. * ldwrite.c (build_link_order): Likewise.
Diffstat (limited to 'ld/ldlang.h')
-rw-r--r--ld/ldlang.h32
1 files changed, 14 insertions, 18 deletions
diff --git a/ld/ldlang.h b/ld/ldlang.h
index 168caec..12523a4 100644
--- a/ld/ldlang.h
+++ b/ld/ldlang.h
@@ -128,28 +128,14 @@ typedef struct lang_output_section_phdr_list
typedef struct lang_output_section_statement_struct
{
lang_statement_header_type header;
- union etree_union *addr_tree;
lang_statement_list_type children;
- const char *memspec;
struct lang_output_section_statement_struct *next;
const char *name;
-
- bfd_boolean processed;
-
asection *bfd_section;
- flagword flags; /* Or together of all input sections. */
- enum section_type sectype;
lang_memory_region_type *region;
lang_memory_region_type *lma_region;
- size_t block_value;
fill_type *fill;
-
- int subsection_alignment; /* Alignment of components. */
- int section_alignment; /* Alignment of start of section. */
- int constraint;
- unsigned int all_input_readonly : 1;
- unsigned int ignored : 1;
-
+ union etree_union *addr_tree;
union etree_union *load_base;
/* If non-null, an expression to evaluate after setting the section's
@@ -159,6 +145,16 @@ typedef struct lang_output_section_statement_struct
union etree_union *update_dot_tree;
lang_output_section_phdr_list *phdrs;
+
+ unsigned int block_value;
+ int subsection_alignment; /* Alignment of components. */
+ int section_alignment; /* Alignment of start of section. */
+ int constraint;
+ flagword flags;
+ enum section_type sectype;
+ unsigned int processed : 1;
+ unsigned int all_input_readonly : 1;
+ unsigned int ignored : 1;
} lang_output_section_statement_type;
typedef struct
@@ -186,7 +182,7 @@ typedef struct
union etree_union *exp;
bfd_vma value;
asection *output_section;
- bfd_vma output_vma;
+ bfd_vma output_offset;
} lang_data_statement_type;
/* Generate a reloc in the output file. */
@@ -218,8 +214,8 @@ typedef struct
/* Output section where reloc should be performed. */
asection *output_section;
- /* VMA within output section. */
- bfd_vma output_vma;
+ /* Offset within output section. */
+ bfd_vma output_offset;
} lang_reloc_statement_type;
typedef struct lang_input_statement_struct