1 ToDo list for elfutils -*-outline-*-
4 Time-stamp: <2009-01-26 13:07:11 drepper>
8 Remove everywhere. Use mkdir -p.
14 Currently the elf_update function trusts the user blindly if the
15 ELF_F_LAYOUT flag is set. This is OK if the data is prepared by a
16 ELF_C_NULL call but not if the user prepared the data herself
18 ** break out archive handling from elf_begin
20 The handling of archives (especially of the symbol tables) must be
21 broken out of elf_begin. There are several different forms of
22 archives and only when having the archive handling separately this
25 ** shdrs in read-only files
27 When reading (ELF_C_READ*) then there is no need to malloc Shdr
28 structure in elfXX_getshdr if file is mmaped and unaligned access
29 is allowed or the structure is aligned. Use ELF_F_MALLOCED flag
35 ** More memory access checks needed
37 All accesses to the debug sections should make sure the offsets are
38 valid. This is currently especially a problem with leb128 accesses.
40 ** Low level macro information operations
42 in 5.11.3 are not implemented. gcc currently does not emit this
43 information so I cannot test it.
45 ** Rename dwarf_getabbrev
64 ** add demangler support
66 Use demangler from libiberty.
68 ** add support to read debugging symbols
70 Implement -l option for BSD and POSIX format
75 ** support SHT_SYMTAB_SHNDX
77 should be removed if not needed anymore
81 ** sanity check .rel sh_info content
83 the sh_info of all .rel sections with the same name must point to
84 sections which also have the same name
88 to locate shared libraries also use /etc/ld.so.conf
90 ** handle object files for different architectures
92 ld.so is expected to ignore object files for different architectures and
93 continue looking for a matching file (e.g., ignore 32-bit binaries on
94 64-bit platforms and vice versa). We probably need the same in ld.
96 ** reuse after elf_end
98 Some files are closed using elf_end. They are removed from memory only
99 if no reference is left (especially for archives this is a problem).
100 The old mapping should be reused in that case. The problem is worse
101 for files which are not mapped read-only (archives again).
103 ** size for STT_SECTION entries
105 The STT_SECTION entries have zero for the size but can easily get
106 the size of the section.
110 Not implemented at all in the moment except for recognition of the option
117 1st GOT entry == _DYNAMIC
119 check versioning info:
121 always BASE in verdef
122 sh_size/sh_entsize matches last offset != 0
124 check whether any relocation is for a merge-able section
126 check TLS relocation depencies
128 Check content of .eh_frame_hdr, .eh_frame, .gcc_except_table
132 check that R_386_TLS_GD is followed by R_386_PLT32 for __tls_get_addr
136 prelink generated files
140 ** treat relocation sections special
142 Differences in the relocation sections can be ignored if all
143 the same symbols with the same targets are present and the order
144 of overlapping relocations doesn't change. There really never
145 should be overlapping relocations but who knows.
149 Sun has it. Can modify sections which are not in segments.
152 Append string to the comment section of the ELF object
153 files. If string contains embedded blanks, it must be
154 enclosed in quotation marks.
156 -c Compress the contents of the comment section of the
157 ELF object files. All duplicate entries are removed.
158 The ordering of the remaining entries is not dis-
161 -d Delete the contents of the comment section from the
162 ELF object files. The section header for the comment
163 section is also removed.
166 Specify the name of the comment section to access if
167 other than .comment. By default, mcs deals with the
168 section named .comment. This option can be used to
169 specify another section. mcs can take multiple -n
170 options to allow for specification of multiple sec-
173 -p Print the contents of the comment section on the stan-
174 dard output. Each section printed is tagged by the
175 name of the file from which it was extracted, using
176 the format file[member_name]: for archive files and
177 file: for other files.
179 -V Print on standard error the version number of mcs.
182 eval:(hide-sublevels 3)