diff options
Diffstat (limited to 'ld/ldlang.h')
-rw-r--r-- | ld/ldlang.h | 23 |
1 files changed, 13 insertions, 10 deletions
diff --git a/ld/ldlang.h b/ld/ldlang.h index 2089591..4e3353a 100644 --- a/ld/ldlang.h +++ b/ld/ldlang.h @@ -32,7 +32,10 @@ typedef enum { lang_input_file_is_file_enum } lang_input_file_enum_type; -typedef unsigned int fill_type; +struct _fill_type { + size_t size; + unsigned char data[1]; +}; typedef struct statement_list { union lang_statement_union *head; @@ -125,7 +128,7 @@ typedef struct lang_output_section_statement_struct { struct memory_region_struct *region; struct memory_region_struct *lma_region; size_t block_value; - fill_type fill; + fill_type *fill; int subsection_alignment; /* alignment of components */ int section_alignment; /* alignment of start of section */ @@ -145,7 +148,7 @@ typedef struct { typedef struct { lang_statement_header_type header; - fill_type fill; + fill_type *fill; int size; asection *output_section; } lang_fill_statement_type; @@ -275,7 +278,7 @@ typedef struct { bfd_vma output_offset; size_t size; asection *output_section; - fill_type fill; + fill_type *fill; } lang_padding_statement_type; /* A group statement collects a set of libraries together. The @@ -385,13 +388,13 @@ extern void lang_add_target PARAMS ((const char *)); extern void lang_add_wild PARAMS ((struct wildcard_spec *, struct wildcard_list *, boolean)); extern void lang_add_map PARAMS ((const char *)); -extern void lang_add_fill PARAMS ((int)); +extern void lang_add_fill PARAMS ((fill_type *)); extern lang_assignment_statement_type * lang_add_assignment PARAMS ((union etree_union *)); extern void lang_add_attribute PARAMS ((enum statement_enum)); extern void lang_startup PARAMS ((const char *)); extern void lang_float PARAMS ((enum bfd_boolean)); extern void lang_leave_output_section_statement - PARAMS ((bfd_vma, const char *, struct lang_output_section_phdr_list *, + PARAMS ((fill_type *, const char *, struct lang_output_section_phdr_list *, const char *)); extern void lang_abs_symbol_at_end_of PARAMS ((const char *, const char *)); extern void lang_abs_symbol_at_beginning_of PARAMS ((const char *, @@ -407,7 +410,7 @@ extern void lang_reset_memory_regions PARAMS ((void)); extern bfd_vma lang_do_assignments PARAMS ((lang_statement_union_type * s, lang_output_section_statement_type *output_section_statement, - fill_type fill, + fill_type *fill, bfd_vma dot)); #define LANG_FOR_EACH_INPUT_STATEMENT(statement) \ @@ -441,7 +444,7 @@ extern void dprint_statement PARAMS ((lang_statement_union_type *, int)); extern bfd_vma lang_size_sections PARAMS ((lang_statement_union_type *s, lang_output_section_statement_type *output_section_statement, - lang_statement_union_type **prev, fill_type fill, + lang_statement_union_type **prev, fill_type *fill, bfd_vma dot, boolean *relax)); extern void lang_enter_group PARAMS ((void)); extern void lang_leave_group PARAMS ((void)); @@ -456,9 +459,9 @@ extern void lang_add_nocrossref PARAMS ((struct lang_nocrossref *)); extern void lang_enter_overlay PARAMS ((etree_type *, etree_type *, int)); extern void lang_enter_overlay_section PARAMS ((const char *)); extern void lang_leave_overlay_section - PARAMS ((bfd_vma, struct lang_output_section_phdr_list *)); + PARAMS ((fill_type *, struct lang_output_section_phdr_list *)); extern void lang_leave_overlay - PARAMS ((bfd_vma, const char *, struct lang_output_section_phdr_list *, + PARAMS ((fill_type *, const char *, struct lang_output_section_phdr_list *, const char *)); extern struct bfd_elf_version_tree *lang_elf_version_info; |