| If you find inaccuracies in this list, please send mail to |
| gdb-patches@sources.redhat.com. If you would like to work on any |
| of these, you should consider sending mail to the same address, to |
| find out whether anyone else is working on it. |
| |
| |
| GDB 5.1 - Fixes |
| =============== |
| |
| Below is a list of problems identified during the GDB 5.0 release |
| cycle. People hope to have these problems fixed in 5.1. |
| |
| -- |
| |
| Wow, three bug reports for the same problem in one day! We should |
| probably make fixing this a real priority :-). |
| |
| Anyway, thanks for reporting. |
| |
| The following patch will fix the problems with setting breakpoints in |
| dynamically loaded objects: |
| |
| http://sources.redhat.com/ml/gdb-patches/2000-05/msg00230.html |
| |
| This patch isn't checked in yet (ping Michael/JimB), but I hope this |
| will be in the next GDB release. |
| |
| There should really be a test in the testsuite for this problem, since |
| it keeps coming up :-(. Any volunteers? |
| |
| Mark |
| |
| -- |
| |
| GDB 5.1 - New features |
| ====================== |
| |
| The following new features should be included in 5.1. |
| |
| -- |
| |
| GDB 5.1 - Cleanups |
| ================== |
| |
| The following code cleanups will hopefully be applied to GDB 5.1. |
| |
| -- |
| |
| GDB 5.1 - Known Problems |
| ======================== |
| |
| -- |
| |
| z8k |
| |
| The z8k has suffered bit rot and is known to not build. The problem |
| was occuring in the opcodes directory. |
| |
| -- |
| |
| The BFD directory requires bug-fixed AUTOMAKE et.al. |
| |
| AUTOMAKE 1.4 incorrectly set the TEXINPUTS environment variable. It |
| contained the full path to texinfo.tex when it should have only |
| contained the directory. The bug has been fixed in the current |
| AUTOMAKE sources. Automake snapshots can be found in: |
| ftp://sources.redhat.com/pub/gdb/infrastructure |
| and ftp://sources.redhat.com/pub/binutils |
| |
| -- |
| |
| Solaris 8 x86 CURSES_H problem |
| http://sources.redhat.com/ml/gdb/2000-07/msg00038.html |
| |
| The original problem was worked around with: |
| |
| 2000-06-06 Michael Snyder <msnyder@cygnus.com> |
| |
| * configure.in: Enable autoconf to find curses.h on Solaris 2.8. |
| * configure: Regenerate. |
| |
| When building both GDB and SID using the same source tree the problem |
| will still occure. sid/component/configure.in mis-configures |
| <curses.h> and leaves wrong information in the config cache. |
| |
| -- |
| |
| GDB 5.2 - Fixes |
| =============== |
| |
| -- |
| |
| GDB 5.2 - New features |
| ====================== |
| |
| -- |
| |
| GCC 3.0 ABI support (but hopefully sooner...). |
| |
| -- |
| |
| Objective C/C++ support (but hopefully sooner...). |
| |
| -- |
| |
| Import of readline 4.2 |
| |
| -- |
| |
| GDB 5.2 - Cleanups |
| ================== |
| |
| The following cleanups have been identified as part of GDB 5.2. |
| |
| -- |
| |
| Compiler warnings. |
| |
| Eliminate warnings for all targets on at least one host for one of the |
| -W flags. Flags up for debate include: -Wswitch -Wcomment -trigraphs |
| -Wtrigraphs -Wunused-function -Wunused-label -Wunused-variable |
| -Wunused-value -Wchar-subscripts -Wtraditional -Wshadow -Wcast-qual |
| -Wcast-align -Wwrite-strings -Wconversion -Wstrict-prototypes |
| -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls |
| -Woverloaded-virtual -Winline |
| |
| -- |
| |
| Deprecate, if not delete, the following: |
| |
| register[] |
| register_valid[] |
| REGISTER_BYTE() |
| Replaced by, on the target side |
| supply_register() |
| and on core-gdb side: |
| {read,write}_register_gen() |
| Remote.c will need to use something |
| other than REGISTER_BYTE() and |
| REGISTER_RAW_SIZE() when unpacking |
| [gG] packets. |
| |
| STORE_PSEUDO_REGISTER |
| FETCH_PSEUDO_REGISTER |
| Now handed by the methods |
| gdbarch_{read,write}_register() |
| which sits between core GDB and |
| the register cache. |
| |
| REGISTER_CONVERTIBLE |
| REGISTER_CONVERT_TO_RAW |
| REGISTER_CONVERT_TO_VIRTUAL |
| I think these three are redundant. |
| gdbarch_register_{read,write} can |
| do any conversion it likes. |
| |
| REGISTER_VIRTUAL_SIZE |
| MAX_REGISTER_VIRTUAL_SIZE |
| REGISTER_VIRTUAL_TYPE |
| I think these can be replaced by |
| the pair: |
| FRAME_REGISTER_TYPE(frame, regnum) |
| REGISTER_TYPE(regnum) |
| |
| DO_REGISTERS_INFO |
| Replace with |
| FRAME_REGISTER_INFO (frame, ...) |
| |
| REGISTER_SIM_REGNO() |
| If nothing else rename this so that |
| how it relates to rawreg and the |
| regnum is clear. |
| |
| REGISTER_BYTES |
| The size of the cache can be computed |
| on the fly. |
| |
| -- |
| |
| Obsolete the targets: |
| |
| arm*-wince-pe |
| mips*-*-pe |
| sh*-*-pe |
| |
| -- |
| |
| Obsolete the protocols: |
| |
| RDB? |
| |
| ``As of version 5.3, WindRiver has removed the RDB server (RDB |
| protocol support is built into gdb).'' -- Till. |
| |
| -- |
| |
| Restructure gdb directory tree so that it avoids any 8.3 and 14 |
| filename problems. |
| |
| -- |
| |
| Convert GDB build process to AUTOMAKE. |
| |
| See also sub-directory configure below. |
| |
| The current convention is (kind of) to use $(<header>_h) in all |
| dependency lists. It isn't done in a consistent way. |
| |
| -- |
| |
| GDB 5.2 - Known Problems |
| ======================== |
| |
| -- |
| |
| Code Cleanups: General |
| ====================== |
| |
| The following are more general cleanups and fixes. They are not tied |
| to any specific release. |
| |
| |
| New Features and Fixes |
| ====================== |
| |
| These are harder than cleanups but easier than work involving |
| fundamental architectural change. |
| |
| -- |
| |
| Language Support |
| ================ |
| |
| New languages come onto the scene all the time. |
| |
| -- |
| |
| Re: Various C++ things |
| |
| RTTI for g++ should be using the typeinfo functions rather than the |
| vtables. The typeinfo functions are always at offset 4 from the |
| beginning of the vtable, and are always right. The vtables will have |
| weird names like E::VB sometimes. The typeinfo function will always |
| be "E type_info function", or somesuch. |
| |
| value_virtual_fn_field needs to be fixed so there are no failures for |
| virtual functions for C++ using g++. |
| |
| Testsuite cases are the major priority right now for C++ support, |
| since i have to make a lot of changes that could potentially break |
| each other. |
| |
| -- |
| |
| |
| Symbol Support |
| ============== |
| |
| -- |
| |
| Investiagate ways of reducing memory. |
| |
| -- |
| |
| Investigate ways of improving load time. |
| |
| -- |
| |
| Testsuite Support |
| ================= |
| |
| There are never to many testcases. |
| |
| -- |
| |
| Better thread testsuite. |
| |
| -- |
| |
| Better C++ testsuite. |
| |
| -- |
| |
| Architectural Changes: General |
| ============================== |
| |
| These are harder than simple cleanups / fixes and, consequently |
| involve more work. Typically an Architectural Change will be broken |
| down into a more digestible set of cleanups and fixes. |
| |
| -- |
| |
| Architectural Change: Multi-arch et al. |
| ======================================= |
| |
| The long term objective is to remove all assumptions that there is a |
| single target with a single address space with a single instruction |
| set architecture and single application binary interface. |
| |
| This is an ongoing effort. The first milestone is to enable |
| ``multi-arch'' where by all architectural decisions are made at |
| runtime. |
| |
| It should be noted that ``gdbarch'' is really ``gdbabi'' and |
| ``gdbisa''. Once things are multi-arched breaking that down correctly |
| will become much easier. |
| |
| -- |
| |
| Architectural Change: MI, LIBGDB and scripting languages |
| ======================================================== |
| |
| See also architectural changes related to the event loop. LIBGDB |
| can't be finished until there is a generic event loop being used by |
| all targets. |
| |
| The long term objective is it to be possible to integrate GDB into |
| scripting languages. |
| |
| -- |
| |
| Architectural Change: Async |
| =========================== |
| |
| While GDB uses an event loop when prompting the user for input. That |
| event loop is not exploited by targets when they allow the target |
| program to continue. Typically targets still block in (target_wait()) |
| until the program again halts. |
| |
| The closest a target comes to supporting full asynchronous mode are |
| the remote targets ``async'' and ``extended-async''. |
| |
| -- |
| |
| # Local Variables: |
| # mode: text |
| # End: |