* blockframe.c (inside_main_func): No longer use symbol_lookup()
[deliverable/binutils-gdb.git] / gdb / TODO
CommitLineData
c906108c 1If you find inaccuracies in this list, please send mail to
b76898ab 2gdb-patches@sources.redhat.com. If you would like to work on any
2a00c9ce
AC
3of these, you should consider sending mail to the same address, to
4find out whether anyone else is working on it.
c906108c 5
138f88c0 6
552054a8
AC
7 GDB 5.1 - Fixes
8 ===============
138f88c0 9
bc9e5bbf 10Below is a list of problems identified during the GDB 5.0 release
552054a8 11cycle. People hope to have these problems fixed in 5.1.
4fd99b5a
AC
12
13--
14
a50c34dc
AC
15Wow, three bug reports for the same problem in one day! We should
16probably make fixing this a real priority :-).
138f88c0 17
a50c34dc
AC
18Anyway, thanks for reporting.
19
20The following patch will fix the problems with setting breakpoints in
21dynamically loaded objects:
22
b76898ab 23 http://sources.redhat.com/ml/gdb-patches/2000-05/msg00230.html
a50c34dc
AC
24
25This patch isn't checked in yet (ping Michael/JimB), but I hope this
26will be in the next GDB release.
27
28There should really be a test in the testsuite for this problem, since
29it keeps coming up :-(. Any volunteers?
30
31Mark
bc9e5bbf 32
552054a8
AC
33--
34
35 GDB 5.1 - New features
36 ======================
37
38The following new features should be included in 5.1.
39
552054a8
AC
40--
41
42 GDB 5.1 - Cleanups
43 ==================
44
45The following code cleanups will hopefully be applied to GDB 5.1.
46
1ba607ad
AC
47--
48
a50c34dc
AC
49 GDB 5.1 - Known Problems
50 ========================
eccbb20d
AC
51
52--
53
54z8k
55
56The z8k has suffered bit rot and is known to not build. The problem
57was occuring in the opcodes directory.
58
cfc046cf
AC
59--
60
56ddd993
AC
61The BFD directory requires bug-fixed AUTOMAKE et.al.
62
63AUTOMAKE 1.4 incorrectly set the TEXINPUTS environment variable. It
64contained the full path to texinfo.tex when it should have only
65contained the directory. The bug has been fixed in the current
66AUTOMAKE sources. Automake snapshots can be found in:
b76898ab
AC
67 ftp://sources.redhat.com/pub/gdb/infrastructure
68and ftp://sources.redhat.com/pub/binutils
56ddd993
AC
69
70--
71
cfc046cf
AC
72Solaris 8 x86 CURSES_H problem
73http://sources.redhat.com/ml/gdb/2000-07/msg00038.html
74
75The original problem was worked around with:
76
77 2000-06-06 Michael Snyder <msnyder@cygnus.com>
78
79 * configure.in: Enable autoconf to find curses.h on Solaris 2.8.
80 * configure: Regenerate.
81
82When building both GDB and SID using the same source tree the problem
83will still occure. sid/component/configure.in mis-configures
84<curses.h> and leaves wrong information in the config cache.
85
552054a8
AC
86--
87
88 GDB 5.2 - Fixes
89 ===============
90
552054a8
AC
91--
92
93 GDB 5.2 - New features
94 ======================
95
96--
97
0db23c95
AC
98GCC 3.0 ABI support (but hopefully sooner...).
99
100--
101
102Objective C/C++ support (but hopefully sooner...).
552054a8 103
77467810
EZ
104--
105
106Import of readline 4.2
107
552054a8
AC
108--
109
110 GDB 5.2 - Cleanups
111 ==================
112
113The following cleanups have been identified as part of GDB 5.2.
114
115--
116
a50c34dc
AC
117Compiler warnings.
118
ee055267
AC
119Eliminate warnings for all targets on at least one host for one of the
120-W flags. Flags up for debate include: -Wswitch -Wcomment -trigraphs
121-Wtrigraphs -Wunused-function -Wunused-label -Wunused-variable
122-Wunused-value -Wchar-subscripts -Wtraditional -Wshadow -Wcast-qual
123-Wcast-align -Wwrite-strings -Wconversion -Wstrict-prototypes
124-Wmissing-prototypes -Wmissing-declarations -Wredundant-decls
125-Woverloaded-virtual -Winline
552054a8
AC
126
127--
128
61a0eb5b
AC
129Deprecate, if not delete, the following:
130
131 register[]
132 register_valid[]
61a0eb5b
AC
133 REGISTER_BYTE()
134 Replaced by, on the target side
135 supply_register()
136 and on core-gdb side:
137 {read,write}_register_gen()
138 Remote.c will need to use something
139 other than REGISTER_BYTE() and
140 REGISTER_RAW_SIZE() when unpacking
141 [gG] packets.
142
143 STORE_PSEUDO_REGISTER
144 FETCH_PSEUDO_REGISTER
145 Now handed by the methods
146 gdbarch_{read,write}_register()
147 which sits between core GDB and
148 the register cache.
149
150 REGISTER_CONVERTIBLE
151 REGISTER_CONVERT_TO_RAW
152 REGISTER_CONVERT_TO_VIRTUAL
153 I think these three are redundant.
154 gdbarch_register_{read,write} can
155 do any conversion it likes.
156
157 REGISTER_VIRTUAL_SIZE
158 MAX_REGISTER_VIRTUAL_SIZE
159 REGISTER_VIRTUAL_TYPE
160 I think these can be replaced by
161 the pair:
162 FRAME_REGISTER_TYPE(frame, regnum)
163 REGISTER_TYPE(regnum)
164
165 DO_REGISTERS_INFO
166 Replace with
167 FRAME_REGISTER_INFO (frame, ...)
168
169 REGISTER_SIM_REGNO()
170 If nothing else rename this so that
171 how it relates to rawreg and the
172 regnum is clear.
173
ee055267
AC
174--
175
56ddd993 176Obsolete the targets:
ee055267
AC
177
178arm*-wince-pe
179mips*-*-pe
180sh*-*-pe
181
56ddd993
AC
182--
183
ee055267
AC
184Obsolete the protocols:
185
56ddd993 186RDB?
ee055267
AC
187
188``As of version 5.3, WindRiver has removed the RDB server (RDB
189protocol support is built into gdb).'' -- Till.
190
61a0eb5b
AC
191--
192
552054a8
AC
193Restructure gdb directory tree so that it avoids any 8.3 and 14
194filename problems.
195
196--
197
198Convert GDB build process to AUTOMAKE.
199
200See also sub-directory configure below.
201
202The current convention is (kind of) to use $(<header>_h) in all
203dependency lists. It isn't done in a consistent way.
204
a50c34dc
AC
205--
206
207 GDB 5.2 - Known Problems
208 ========================
209
4afc966c
AC
210--
211
212 Code Cleanups: General
213 ======================
214
215The following are more general cleanups and fixes. They are not tied
216to any specific release.
bc9e5bbf 217
78566ebe 218
4afc966c
AC
219 New Features and Fixes
220 ======================
bc9e5bbf 221
4afc966c
AC
222These are harder than cleanups but easier than work involving
223fundamental architectural change.
bc9e5bbf
AC
224
225--
226
56ddd993
AC
227 Language Support
228 ================
0a9c3cb6 229
56ddd993 230New languages come onto the scene all the time.
0a9c3cb6
AC
231
232--
233
56ddd993 234Re: Various C++ things
bc9e5bbf 235
56ddd993
AC
236RTTI for g++ should be using the typeinfo functions rather than the
237vtables. The typeinfo functions are always at offset 4 from the
238beginning of the vtable, and are always right. The vtables will have
239weird names like E::VB sometimes. The typeinfo function will always
240be "E type_info function", or somesuch.
bc9e5bbf 241
56ddd993
AC
242value_virtual_fn_field needs to be fixed so there are no failures for
243virtual functions for C++ using g++.
5683e87a 244
56ddd993
AC
245Testsuite cases are the major priority right now for C++ support,
246since i have to make a lot of changes that could potentially break
247each other.
5683e87a
AC
248
249--
250
bc9e5bbf 251
56ddd993
AC
252 Symbol Support
253 ==============
bc9e5bbf 254
4afc966c 255--
bc9e5bbf 256
56ddd993 257Investiagate ways of reducing memory.
2e4e9e68
AC
258
259--
260
56ddd993 261Investigate ways of improving load time.
7ae38352
AC
262
263--
264
56ddd993
AC
265 Testsuite Support
266 =================
4afc966c 267
56ddd993 268There are never to many testcases.
67edb2c6
AC
269
270--
271
56ddd993 272Better thread testsuite.
bc9e5bbf 273
4afc966c 274--
bc9e5bbf 275
56ddd993 276Better C++ testsuite.
bc9e5bbf 277
4afc966c
AC
278--
279
56ddd993
AC
280 Architectural Changes: General
281 ==============================
78566ebe 282
56ddd993
AC
283These are harder than simple cleanups / fixes and, consequently
284involve more work. Typically an Architectural Change will be broken
285down into a more digestible set of cleanups and fixes.
78566ebe
AC
286
287--
288
56ddd993
AC
289 Architectural Change: Multi-arch et al.
290 =======================================
78566ebe 291
56ddd993
AC
292The long term objective is to remove all assumptions that there is a
293single target with a single address space with a single instruction
294set architecture and single application binary interface.
78566ebe 295
56ddd993
AC
296This is an ongoing effort. The first milestone is to enable
297``multi-arch'' where by all architectural decisions are made at
298runtime.
78566ebe 299
56ddd993
AC
300It should be noted that ``gdbarch'' is really ``gdbabi'' and
301``gdbisa''. Once things are multi-arched breaking that down correctly
302will become much easier.
78566ebe
AC
303
304--
305
56ddd993
AC
306 Architectural Change: MI, LIBGDB and scripting languages
307 ========================================================
7ae38352 308
56ddd993
AC
309See also architectural changes related to the event loop. LIBGDB
310can't be finished until there is a generic event loop being used by
311all targets.
7ae38352 312
56ddd993
AC
313The long term objective is it to be possible to integrate GDB into
314scripting languages.
7ae38352
AC
315
316--
317
56ddd993
AC
318 Architectural Change: Async
319 ===========================
1c5b31ef 320
56ddd993
AC
321While GDB uses an event loop when prompting the user for input. That
322event loop is not exploited by targets when they allow the target
323program to continue. Typically targets still block in (target_wait())
324until the program again halts.
1c5b31ef 325
56ddd993
AC
326The closest a target comes to supporting full asynchronous mode are
327the remote targets ``async'' and ``extended-async''.
c906108c 328
7ae38352 329--
c906108c 330
c906108c
SS
331# Local Variables:
332# mode: text
333# End:
This page took 0.31649 seconds and 4 git commands to generate.