summaryrefslogtreecommitdiffstats
path: root/TODO
diff options
context:
space:
mode:
authorUlrich Drepper <[email protected]>2005-07-26 05:00:05 +0000
committerUlrich Drepper <[email protected]>2005-07-26 05:00:05 +0000
commitb08d5a8fb42f4586d756068065186b5af7e48dad (patch)
tree9f05f86be7877ed461b4dc05f53b29ea4fc0d2a1 /TODO
Adjust for monotone.
Diffstat (limited to 'TODO')
-rw-r--r--TODO168
1 files changed, 168 insertions, 0 deletions
diff --git a/TODO b/TODO
new file mode 100644
index 00000000..bf4a0333
--- /dev/null
+++ b/TODO
@@ -0,0 +1,168 @@
+ ToDo list for elfutils -*-outline-*-
+ ----------------------
+
+Time-stamp: <2003-08-07 12:52:49 drepper>
+
+* mkinstalldirs
+
+ Remove everywhere. Use mkdir -p.
+
+* libelf:
+
+** verify section
+
+ Currently the elf_update function trusts the user blindly if the
+ ELF_F_LAYOUT flag is set. This is OK if the data is prepared by a
+ ELF_C_NULL call but not if the user prepared the data herself
+
+** break out archive handling from elf_begin
+
+ The handling of archives (especially of the symbol tables) must be
+ broken out of elf_begin. There are several different forms of
+ archives and only when having the archive handling separately this
+ remains maintainable.
+
+
+* libdwarf
+
+** Should we do more error checking?
+
+ Most functions don't check whether they get a NULL value passed for
+ a pointer argument. It could be argued that this is OK since it's
+ a bug inthe program. But perhaps one could catch the case and return
+ an error which would allow the program using libdwarf to have fewer
+ places with error checking.
+
+** More memory access checks needed
+
+ All accesses to the debug sections should make sure the offsets are
+ valid. This is currently especially a problem with leb128 accesses.
+
+** Low level macro information operations
+
+ in 5.11.3 are not implemented. gcc currently does not emit this
+ information so I cannot test it.
+
+** Rename dwarf_getabbrev
+
+** dwarf_loclist()
+
+ This function and its interface seem to be misdesigned. The specification
+ is unclear and its changed between v2 and v2.1. Other implementation
+ implement even different behavior.
+
+
+* nm:
+
+** add demangler support
+
+ Use demangler from libiberty.
+
+** add support to read debugging symbols
+
+ Implement -l option for BSD and POSIX format
+
+
+* strip:
+
+** support SHT_SYMTAB_SHNDX
+
+ should be removed if not needed anymore
+
+* ld:
+
+** sanity check .rel sh_info content
+
+ the sh_info of all .rel sections with the same name must point to
+ sections which also have the same name
+
+** use ld.so.conf
+
+ to locate shared libraries also use /etc/ld.so.conf
+
+** handle object files for different architectures
+
+ ld.so is expected to ignore object files for different architectures and
+ continue looking for a matching file (e.g., ignore 32-bit binaries on
+ 64-bit platforms and vice versa). We probably need the same in ld.
+
+** reuse after elf_end
+
+ Some files are closed using elf_end. They are removed from memory only
+ if no reference is left (especially for archives this is a problem).
+ The old mapping should be reused in that case. The problem is worse
+ for files which are not mapped read-only (archives again).
+
+
+** size for STT_SECTION entries
+
+ The STT_SECTION entries have zero for the size but can easily get
+ the size of the section.
+
+* elflint
+
+** additional checks
+
+ 1st GOT entry == _DYNAMIC
+
+ if TEXTREL check whether any relocation touches RO segment
+
+ if TEXTREL not set check that no relocation touches RO segment
+
+ check versioning info:
+
+ always BASE in verdef
+ sh_size/sh_entsize matches last offset != 0
+
+ check whether any relocation is for a merge-able section
+
+** possibly missing tests
+
+ at most one extended section index table for a symtab
+
+ no extended section index table != ET_REL
+
+ no extended section index table for SHT_DYNSYM
+
+** relax
+
+ prelink generated files
+
+
+* mcs
+
+ Sun has it. Can modify sections which are not in segments.
+
+ -a string
+ Append string to the comment section of the ELF object
+ files. If string contains embedded blanks, it must be
+ enclosed in quotation marks.
+
+ -c Compress the contents of the comment section of the
+ ELF object files. All duplicate entries are removed.
+ The ordering of the remaining entries is not dis-
+ turbed.
+
+ -d Delete the contents of the comment section from the
+ ELF object files. The section header for the comment
+ section is also removed.
+
+ -n name
+ Specify the name of the comment section to access if
+ other than .comment. By default, mcs deals with the
+ section named .comment. This option can be used to
+ specify another section. mcs can take multiple -n
+ options to allow for specification of multiple sec-
+ tion comments.
+
+ -p Print the contents of the comment section on the stan-
+ dard output. Each section printed is tagged by the
+ name of the file from which it was extracted, using
+ the format file[member_name]: for archive files and
+ file: for other files.
+
+ -V Print on standard error the version number of mcs.
+
+Local Variables:
+eval:(hide-body)
+End: