diff options
Diffstat (limited to 'bfd/section.c')
-rw-r--r-- | bfd/section.c | 37 |
1 files changed, 34 insertions, 3 deletions
diff --git a/bfd/section.c b/bfd/section.c index 35a0e5a..89f8126 100644 --- a/bfd/section.c +++ b/bfd/section.c @@ -1,6 +1,6 @@ /* Object file "section" support for the BFD library. Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, - 2000, 2001, 2002 + 2000, 2001, 2002, 2003 Free Software Foundation, Inc. Written by Cygnus Support. @@ -377,10 +377,35 @@ CODE_FRAGMENT . {* A mark flag used by some linker backends for garbage collection. *} . unsigned int gc_mark : 1; . -. {* Used by the ELF code to mark sections which have been allocated -. to segments. *} +. {* The following flags are used by the ELF linker. *} +. +. {* Mark sections which have been allocated to segments. *} . unsigned int segment_mark : 1; . +. {* Type of sec_info information. *} +. unsigned int sec_info_type:3; +.#define ELF_INFO_TYPE_NONE 0 +.#define ELF_INFO_TYPE_STABS 1 +.#define ELF_INFO_TYPE_MERGE 2 +.#define ELF_INFO_TYPE_EH_FRAME 3 +.#define ELF_INFO_TYPE_JUST_SYMS 4 +. +. {* Nonzero if this section uses RELA relocations, rather than REL. *} +. unsigned int use_rela_p:1; +. +. {* Bits used by various backends. *} +. unsigned int has_tls_reloc:1; +. +. {* Usused bits. *} +. unsigned int flag11:1; +. unsigned int flag12:1; +. unsigned int flag13:1; +. unsigned int flag14:1; +. unsigned int flag15:1; +. unsigned int flag16:4; +. unsigned int flag20:4; +. unsigned int flag24:8; +. . {* End of internal packed boolean fields. *} . . {* The virtual memory address of the section - where it will be @@ -590,6 +615,12 @@ static const asymbol global_syms[] = /* linker_mark, linker_has_input, gc_mark, segment_mark, */ \ 0, 0, 1, 0, \ \ + /* sec_info_type, use_rela_p, has_tls_reloc, flag11, flag12, */ \ + 0, 0, 0, 0, 0, \ + \ + /* flag13, flag14, flag15, flag16, flag20, flag24, */ \ + 0, 0, 0, 0, 0, 0, \ + \ /* vma, lma, _cooked_size, _raw_size, */ \ 0, 0, 0, 0, \ \ |