Modify test to check line separator works.
[deliverable/binutils-gdb.git] / gdb / TODO
CommitLineData
c906108c 1If you find inaccuracies in this list, please send mail to
2a00c9ce
AC
2gdb-patches@sourceware.cygnus.com. If you would like to work on any
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
4afc966c
AC
7 Known problems in GDB 5.0
8 =========================
138f88c0 9
bc9e5bbf
AC
10Below is a list of problems identified during the GDB 5.0 release
11cycle. People hope to have these problems fixed in a follow-on
12release.
138f88c0 13
bc9e5bbf 14(The names in paren indicate people that posted the original problem.)
138f88c0
AC
15
16--
17
4fd99b5a
AC
18The BFD directory requires bug-fixed AUTOMAKE et.al.
19
20AUTOMAKE 1.4 incorrectly set the TEXINPUTS environment variable. It
21contained the full path to texinfo.tex when it should have only
22contained the directory. The bug has been fixed in the current
23AUTOMAKE sources. Automake snapshots can be found in:
24 ftp://sourceware.cygnus.com/pub/gdb/snapshots
25and ftp://sourceware.cygnus.com/pub/binutils
26
27--
28
bc9e5bbf 29Possible regressions with some devel GCCs.
138f88c0
AC
30http://sourceware.cygnus.com/ml/gdb/2000-q1/msg00475.html
31
bc9e5bbf
AC
32gcc-2.95.2 outputs a line note *before* the prologue (and one for the
33closing brace after the epilogue, instead of before it, as it used to
34be). By disabling the RTL-style prologue generating mechanism
35(undocumented GCC option -mno-schedule-prologue), you get back the
36traditional behaviour.
37http://sourceware.cygnus.com/ml/gdb/2000-q1/msg00510.html
138f88c0 38
bc9e5bbf 39This should now be fixed.
138f88c0
AC
40
41--
42
bc9e5bbf
AC
43RFD: infrun.c: No bpstat_stop_status call after proceed over break?
44(Peter Schauer)
138f88c0
AC
45http://sourceware.cygnus.com/ml/gdb-patches/2000-q1/msg00665.html
46
bc9e5bbf
AC
47GDB misses watchpoint triggers after proceeding over a breakpoint on
48x86 targets.
49
138f88c0
AC
50--
51
67edb2c6
AC
52x86 linux GDB and SIGALRM (???)
53http://sourceware.cygnus.com/ml/gdb/2000-q1/msg00803.html
54
bc9e5bbf
AC
55I know there are problems with single stepping through signal
56handlers. These problems were present in 4.18. They were just masked
57because 4.18 failed to recognize signal handlers. Fixing it is not
58easy, and will require changes to handle_inferior_event(), that I
59prefer not to make before the 5.0 release.
67edb2c6 60
bc9e5bbf 61Mark
67edb2c6
AC
62
63--
64
9d6d78f2
AC
65Revised UDP support (was: Re: [Fwd: [patch] UDP transport support])
66http://sourceware.cygnus.com/ml/gdb-patches/2000-04/msg00000.html
67
bc9e5bbf
AC
68(Broken) support for GDB's remote protocol across UDP is to be
69included in the follow-on release.
138f88c0 70
b2f4b24d
AC
71--
72
73Can't build IRIX -> arm GDB.
74http://sourceware.cygnus.com/ml/gdb-patches/2000-04/msg00356.html
75
76David Whedon writes:
77> Now I'm building for an embedded arm target. If there is a way of turning
78> remote-rdi off, I couldn't find it. It looks like it gets built by default
79> in gdb/configure.tgt(line 58) Anyway, the build dies in
80> gdb/rdi-share/unixcomm.c. SERPORT1 et. al. never get defined because we
81> aren't one of the architectures supported.
82
6bc37a96
AC
83--
84
85Problem with weak functions
86http://sourceware.cygnus.com/ml/gdb/2000-05/msg00060.html
87
88Dan Nicolaescu writes:
89> It seems that gdb-4.95.1 does not display correctly the function when
90> stoping in weak functions.
91>
92> It stops in a function that is defined as weak, not in the function
93> that is actualy run...
b2f4b24d 94
3fffcb5e
AC
95--
96
4afc966c
AC
97 Code Cleanups: Next Release
98 ===========================
3fffcb5e 99
4afc966c
AC
100The following are small cleanups that will hopefully be completed by
101the follow on to 5.0.
3fffcb5e 102
138f88c0
AC
103--
104
4afc966c 105Delete macro TARGET_BYTE_ORDER_SELECTABLE.
bc9e5bbf 106
4afc966c
AC
107Patches in the database.
108
109--
110
111Purge PARAMS
112
113Eliminate all uses of PARAMS in GDB's source code.
114
115--
116
117Elimination of make_cleanup_func. (Andrew Cagney)
118
119make_cleanup_func elimination
120http://sourceware.cygnus.com/ml/gdb-patches/2000-q1/msg00791.html
121http://sourceware.cygnus.com/ml/gdb-patches/2000-q1/msg00814.html
122
78566ebe
AC
123--
124
125Fix copyright notices.
126
127Turns out that ``1998-2000'' isn't considered valid :-(
128
129http://sourceware.cygnus.com/ml/gdb-patches/2000-05/msg00467.html
130
4afc966c
AC
131--
132
133 Code Cleanups: General
134 ======================
135
136The following are more general cleanups and fixes. They are not tied
137to any specific release.
bc9e5bbf
AC
138
139--
140
141ATTRIBUTE_UNUSED
142
143The need for this as almost been eliminated. The next version of GCC
144(assuming cagney gets the relevant patch committed) will be able to
145supress unused parameter warnings.
146
147--
148
d8038014
AC
149Eliminate more compiler warnings.
150
151Of course there also needs to be the usual debate over which warnings
152are valid and how to best go about this.
153
154One method: choose a single option; get agreement that it is
155reasonable; try it out to see if there isn't anything silly about it
156(-Wunused-parameters is an example of that) then incrementally hack
157away.
158
159The other method is to enable all warnings and eliminate them from one
160file at a time.
161
162--
163
4afc966c 164Elimination of ``(catch_errors_ftype *) func''.
bc9e5bbf 165
4afc966c
AC
166Like make_cleanup_func it isn't portable.
167
168--
169
170Nuke USG define.
171
172--
173
174[PATCH/5] src/intl/Makefile.in:distclean additions
175http://sourceware.cygnus.com/ml/gdb-patches/2000-04/msg00363.html
176
177Do not forget to merge the patch back into the trunk.
178
179--
180
181Rationalize the host-endian code (grep for HOST_BYTE_ORDER).
182
183At present defs.h includes <endian.h> (which is linux specific) yet
184almost nothing depends on it. Suggest "gdb_endian.h" which can also
185handle <machine/endian.h> and only include that where it is really
186needed.
187
188--
189
190Replace asprintf() calls with xasprintf() calls.
191
192As with things like strdup() most calls to asprintf() don't check the
193return value.
194
195--
196
197Replace strsave() + mstrsave() with libiberty:xstrdup().
198
199--
200
201Replace savestring() with something from libiberty.
202
203An xstrldup()? but that would have different semantics.
204
205--
206
207Rationalize use of floatformat_unknown in GDB sources.
208
209Instead of defaulting to floatformat_unknown, should hosts/targets
210specify the value explicitly?
211
212http://sourceware.cygnus.com/ml/gdb-patches/2000-05/msg00447.html
213
214--
215
216Add a ``name'' member to include/floatformat.h:struct floatformat.
217Print that name in gdbarch.c.
218
219--
220
221Sort out the harris mess in include/floatformat.h (it hardwires two
222different floating point formats).
223
224--
225
226See of the GDB local floatformat_do_doublest() and libiberty's
227floatformat_to_double (which was once GDB's ...) can be merged some
228how.
229
230--
231
232Eliminate mmalloc() from GDB.
233
234Also eliminate it from defs.h.
235
236--
237
238Eliminate PTR. ISO-C allows ``void *''.
239
240--
241
242Eliminate abort ().
243
244GDB should never abort. GDB should either throw ``error ()'' or
245``internal_error ()''. Better still GDB should naturally unwind with
246an error status.
247
248--
249
250GDB probably doesn't build on FreeBSD pre 2.2.x
251http://sourceware.cygnus.com/ml/gdb-patches/2000-05/msg00378.html
252
253Fixes to get FreeBSD working on 2.2.x, 3.x and 4.x caused the code to
254suffer bit rot.
bc9e5bbf
AC
255
256--
257
258Updated readline
259
78566ebe
AC
260Readline 4.? is out. A merge wouldn't hurt. Patches are in:
261
262http://sourceware.cygnus.com/ml/gdb-patches/2000-05/msg00436.html
263
264--
265
266Deprecate "fg". Apparently ``fg'' is actually continue.
267
268http://sourceware.cygnus.com/ml/gdb-patches/2000-05/msg00417.html
269
270--
271
272Deprecate current use of ``floatformat_unknown''.
273
274Require all targets to explicitly provide their float format instead
275of defaulting to floatformat unknown. Doing the latter leads to nasty
276bugs.
277
278http://sourceware.cygnus.com/ml/gdb-patches/2000-05/msg00447.html
bc9e5bbf
AC
279
280--
281
78566ebe
AC
282Rationalize floatformat_to_double() vs floatformat_to_doublest().
283
284Looks like GDB migrated floatformat_to_double() to libiberty but then
285turned around and created a ..._to_doublest() the latter containing
286several bug fixes.
287
288http://sourceware.cygnus.com/ml/gdb-patches/2000-05/msg00472.html
289
290--
291
292Move floatformat_ia64_ext to libiberty/include floatformat.[ch].
293
294http://sourceware.cygnus.com/ml/gdb-patches/2000-05/msg00466.html
295
296--
297
298Always build ser-tcp.c.
299
300The patch as submitted was just going to add ser-tcp.c to the Alpha's
301makefile. A better patch is to instead add ser-tcp.c to SER_HARDWARE
302and make it a standard part of all debuggers.
303
304If problems occure then configure.in can sort them out.
305
306http://sourceware.cygnus.com/ml/gdb-patches/2000-04/msg00544.html
307
308--
309
310Follow through `make check' with --enable-shared.
311
312When the srcware tree is configured with --enable-shared, the `expect'
313program won't run properly. Jim Wilson found out gdb has a local hack
314to set LD_LIBRARY_PATH, but, AFAIK, no other project has been hacked
315similarly.
316
317http://sourceware.cygnus.com/ml/gdb/2000-q1/msg00845.html
318
319--
320
321
4afc966c
AC
322 New Features and Fixes
323 ======================
bc9e5bbf 324
4afc966c
AC
325These are harder than cleanups but easier than work involving
326fundamental architectural change.
bc9e5bbf
AC
327
328--
329
4afc966c
AC
330Add built-by, build-date, tm, xm, nm and anything else into gdb binary
331so that you can see how the GDB was created.
bc9e5bbf 332
4afc966c
AC
333Some of these (*m.h) would be added to the generated config.h. That
334in turn would fix a long standing bug where by the build process many
335not notice a changed tm.h file. Since everything depends on config.h,
336a change to *m.h forces a change to config.h and, consequently forces
337a rebuild.
bc9e5bbf
AC
338
339--
340
4afc966c
AC
341Add an "info bfd" command that displays supported object formats,
342similarly to objdump -i.
5683e87a 343
4afc966c 344Is there a command already?
5683e87a
AC
345
346--
347
4afc966c 348Fix ``I'm sorry, Dave, I can't do that.'' from symfile.c.
bc9e5bbf 349
4afc966c 350This requires internationalization.
bc9e5bbf 351
4afc966c 352--
bc9e5bbf 353
4afc966c 354Convert GDB build process to AUTOMAKE.
bc9e5bbf 355
4afc966c 356See also sub-directory configure below.
138f88c0 357
67edb2c6
AC
358--
359
4afc966c 360Cleanup configury support for optional sub-directories.
7ae38352 361
4afc966c
AC
362Check how GCC handles multiple front ends for an example of how things
363could work. A tentative first step is to rationalize things so that
364all sub directories are handled in a fashion similar to gdb/mi.
365
366See also automake above.
7ae38352
AC
367
368--
369
4afc966c
AC
370Restructure gdb directory tree so that it avoids any 8.3 and 14
371filename problems.
67edb2c6 372
4afc966c 373--
67edb2c6 374
4afc966c
AC
375Add a transcript mechanism to GDB.
376
377Such a mechanism might log all gdb input and output to a file in a
378form that would allow it to be replayed. It could involve ``gdb
379--transcript=FILE'' or it could involve ``(gdb) transcript file''.
67edb2c6
AC
380
381--
382
4afc966c 383Can the xdep files be replaced by autoconf?
bc9e5bbf 384
4afc966c 385--
bc9e5bbf 386
4afc966c 387Document trace machinery
bc9e5bbf 388
4afc966c
AC
389--
390
78566ebe
AC
391Document ui-out and ui-file.
392
393http://sourceware.cygnus.com/ml/gdb/2000-04/msg00121.html
394
395--
396
397Update texinfo.tex to latest?
398
399
400
401--
402
403Incorporate agentexpr.texi into gdb.texinfo
404
405agentexpr.texi mostly describes the details of the byte code used for
406tracepoints, not the internals of the support for this in GDB. So it
407looks like gdb.texinfo is a better place for this information.
408
409http://sourceware.cygnus.com/ml/gdb-patches/2000-04/msg00566.html
410
411--
412
4afc966c 413Document overlay machinery.
bc9e5bbf 414
7ae38352
AC
415--
416
4afc966c 417``(gdb) catch signal SIGNAL''
7ae38352 418
4afc966c
AC
419Overlaps with ``handle SIGNAL'' but the implied behavour is different.
420You can attach commands to a catch but not a handle. A handle has a
421limited number of hardwired actions.
7ae38352
AC
422
423--
424
4afc966c 425Get the TUI working on all platforms.
7ae38352 426
bc9e5bbf
AC
427--
428
4afc966c
AC
429Add support for ``gdb --- PROGRAM ARGS ...''.
430Add support for ``gdb -cmd=...''
9debab2f 431
4afc966c
AC
432Along with many variations. Check:
433
434????? for a full discussion.
435
436for a discussion.
9debab2f
AC
437
438--
439
4afc966c 440Implement ``(gdb) !ls''.
e55e8cee 441
4afc966c
AC
442Which is very different from ``(gdb) ! ls''. Implementing the latter
443is trivial.
444
445http://sourceware.cygnus.com/ml/gdb/2000-q1/msg00034.html
e55e8cee
AC
446
447--
448
4afc966c
AC
449Replace the code that uses the host FPU with an emulator of the target
450FPU.
7ae38352 451
4afc966c
AC
452--
453
454 Thread Support
455 ==============
7ae38352
AC
456
457--
458
4afc966c
AC
459Generic: lin-thread cannot handle thread exit (Mark Kettenis, Michael
460Snyder) http://sourceware.cygnus.com/ml/gdb/2000-q1/msg00525.html
7ae38352 461
4afc966c
AC
462The thread_db assisted debugging code doesn't handle exiting threads
463properly, at least in combination with glibc 2.1.3 (the framework is
464there, just not the actual code). There are at least two problems
465that prevent this from working.
466
467As an additional reference point, the pre thread_db code did not work
468either.
7ae38352
AC
469
470--
471
4afc966c
AC
472GNU/Linux/x86 and random thread signals (and Solaris/SPARC but not
473Solaris/x86).
474http://sourceware.cygnus.com/ml/gdb/2000-q1/msg00336.html
7ae38352 475
4afc966c
AC
476Christopher Blizzard writes:
477
478So, I've done some more digging into this and it looks like Jim
479Kingdon has reported this problem in the past:
480
481http://sourceware.cygnus.com/ml/bug-gdb/1999-10/msg00058.html
482
483I can reproduce this problem both with and without Tom's patch. Has
484anyone seen this before? Maybe have a solution for it hanging around?
485:)
486
487There's a test case for this documented at:
488
489when debugging threaded applications you get extra SIGTRAPs
490http://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=9565
491
492[There should be a GDB testcase - cagney]
7ae38352
AC
493
494--
495
4afc966c
AC
496GDB5 TOT on unixware 7
497http://sourceware.cygnus.com/ml/gdb/2000-04/msg00119.html
7ae38352 498
4afc966c
AC
499Robert Lipe writes:
500> I just spun the top of tree of the GDB5 branch on UnixWare 7. As a
501> practical matter, the current thread support is somewhat more annoying
502> than when GDB was thread-unaware.
7ae38352
AC
503
504--
505
4afc966c 506Migrate qfThreadInfo packet -> qThreadInfo. (Andrew Cagney)
7ae38352 507
4afc966c
AC
508Add support for packet enable/disable commands with these thread
509packets. General cleanup.
510
511[PATCH] Document the ThreadInfo remote protocol queries
512http://sourceware.cygnus.com/ml/gdb-patches/2000-q1/msg00832.html
513
514[PATCH] "info threads" queries for remote.c
515http://sourceware.cygnus.com/ml/gdb-patches/2000-q1/msg00831.html
7ae38352
AC
516
517--
518
4afc966c
AC
519 Language Support
520 ================
7ae38352 521
4afc966c 522New languages come onto the scene all the time.
7ae38352
AC
523
524--
525
4afc966c 526Pascal (Pierre Muller, David Taylor)
7ae38352 527
4afc966c
AC
528Pierre Muller has contributed patches for adding Pascal Language
529support to GDB.
530
5312 pascal language patches inserted in database
532http://sourceware.cygnus.com/ml/gdb/2000-q1/msg00521.html
533
534Indent -gnu ?
535http://sourceware.cygnus.com/ml/gdb/2000-q1/msg00496.html
536
537--
538
539Java (Anthony Green, David Taylor)
540
541Anthony Green has a number of Java patches that did not make it into
542the 5.0 release.
543
544Patch: java tests
545http://sourceware.cygnus.com/ml/gdb-patches/2000-q1/msg00512.html
546
547Patch: java booleans
548http://sourceware.cygnus.com/ml/gdb-patches/2000-q1/msg00515.html
549
550Patch: handle N_MAIN stab
551http://sourceware.cygnus.com/ml/gdb-patches/2000-q1/msg00527.html
552
553--
554
555[Comming...]
556
557Modify gdb to work correctly with Pascal.
558
559--
560
561Re: Various C++ things
562
563value_headof/value_from_vtable_info are worthless, and should be removed.
564The one place in printcmd.c that uses it should use the RTTI functions.
565
566RTTI for g++ should be using the typeinfo functions rather than the vtables.
567The typeinfo functions are always at offset 4 from the beginning of the vtable,
568and are always right. The vtables will have weird names like E::VB sometimes.
569The typeinfo function will always be "E type_info function", or somesuch.
570
571value_virtual_fn_field needs to be fixed so there are no failures for virtual
572functions for C++ using g++.
573
574Testsuite cases are the major priority right now for C++ support, since i have
575to make a lot of changes that could potentially break each other.
7ae38352
AC
576
577--
578
4afc966c 579Add support for Modula3
7ae38352 580
4afc966c 581Get DEC/Compaq to contribute their Modula-3 support.
7ae38352
AC
582
583--
584
4afc966c
AC
585 Remote Protocol Support
586 =======================
7ae38352
AC
587
588--
589
4afc966c 590set/show remote X-packet ...
7ae38352 591
4afc966c
AC
592``(gdb) help set remote X-packet'' doesn't list the applicable
593responses. The help message needs to be expanded.
7ae38352
AC
594
595--
596
597Remote protocol doco feedback.
598
599Too much feedback to mention needs to be merged in (901660). Search
600for the word ``remote''.
601
4afc966c
AC
602
603http://sourceware.cygnus.com/ml/gdb/2000-q1/msg00023.html
604http://sourceware.cygnus.com/ml/gdb/2000-q1/msg00056.html
605http://sourceware.cygnus.com/ml/gdb/2000-q1/msg00382.html
606
7ae38352
AC
607--
608
4afc966c 609GDB doesn't recover gracefully from remote protocol errors.
7ae38352 610
4afc966c
AC
611GDB wasn't checking for NAKs from the remote target. Instead a NAK is
612ignored and a timeout is required before GDB retries. A pre-cursor to
613fixing this this is making GDB's remote protocol packet more robust.
614
615While downloading to a remote protocol target, gdb ignores packet
616errors in so far as it will continue to edownload with chunk N+1 even
617if chunk N was not correctly sent. This causes gdb.base/remote.exp to
618take a painfully long time to run. As a PS that test needs to be
619fixed so that it builds on 16 bit machines.
7ae38352
AC
620
621--
622
4afc966c 623Add the cycle step command.
7ae38352 624
4afc966c 625http://sourceware.cygnus.com/ml/gdb/2000-q1/msg00237.html
7ae38352
AC
626
627--
628
4afc966c
AC
629 Symbol Support
630 ==============
7ae38352 631
4afc966c
AC
632If / when GDB starts to support the debugging of multi-processor
633(rather than multi-thread) applications the symtab code will need to
634be updated a little so that several independant symbol tables are
635active at a given time.
636
637The other interesting change is a clarification of the exact meaning
638of CORE_ADDR and that has had consequences for a few targets (that
639were abusing that data type).
7ae38352 640
d8038014
AC
641--
642
4afc966c 643Investiagate ways of reducing memory.
d8038014
AC
644
645--
646
4afc966c 647Investigate ways of improving load time.
d8038014 648
4afc966c
AC
649--
650
651Get the d10v to use POINTER_TO_ADDRESS and ADDRESS_TO_POINTER.
652
653Consequence of recent symtab clarification. No marks for figuring out
654who maintains the d10v.
d8038014 655
0aaf65d7
AC
656--
657
4afc966c
AC
658Get the MIPS to correctly sign extend all address <-> pointer
659conversions.
0aaf65d7 660
4afc966c
AC
661Consequence of recent symtab clarification. No marks for figuring out
662who maintains the MIPS.
0aaf65d7 663
7ae38352
AC
664--
665
4afc966c
AC
666 Architectural Changes: General
667 ==============================
7ae38352
AC
668
669These are harder than simple cleanups / fixes and, consequently
670involve more work. Typically an Architectural Change will be broken
671down into a more digestible set of cleanups and fixes.
672
673--
674
4afc966c
AC
675Cleanup software single step.
676
677At present many targets implement software single step by directly
678blatting memory (see rs6000-tdep.c). Those targets should register
679the applicable breakpoints using the breakpoint framework. Perhaphs a
680new internal breakpoint class ``step'' is needed.
681
682--
683
7ae38352
AC
684Replace READ_FP() with FRAME_HANDLE().
685
686READ_FP() is a hangover from the days of the vax when the ABI really
687did have a frame pointer register. Modern architectures typically
688construct a virtual frame-handle from the stack pointer and various
689other bits of string.
690
691Unfortunatly GDB still treats this synthetic FP register as though it
692is real. That in turn really confuses users (arm and ``print $fp'' VS
693``info registers fp''). The synthetic FP should be separated out of
694the true register set presented to the user.
695
696--
697
2a00c9ce
AC
698Register Cache Cleanup (below from Andrew Cagney)
699
700I would depict the current register architecture as something like:
701
702 High GDB --> Low GDB
703 | |
704 \|/ \|/
705 --- REG NR -----
706 |
707 register + REGISTER_BYTE(reg_nr)
708 |
709 \|/
710 -------------------------
711 | extern register[] |
712 -------------------------
713
714where neither the high (valops.c et.al.) or low gdb (*-tdep.c) are
715really clear on what mechanisms they should be using to manipulate that
716buffer. Further, much code assumes, dangerously, that registers are
717contigious. Having got mips-tdep.c to support multiple ABIs, believe
718me, that is a bad assumption. Finally, that register cache layout is
719determined by the current remote/local target and _not_ the less
720specific target ISA. In fact, in many cases it is determined by the
721somewhat arbitrary layout of the [gG] packets!
722
723
724How I would like the register file to work is more like:
725
726
727 High GDB
728 |
729 \|/
730 pseudo reg-nr
731 |
732 map pseudo <->
733 random cache
734 bytes
735 |
736 \|/
737 ------------
738 | register |
739 | cache |
740 ------------
741 /|\
742 |
743 map random cache
744 bytes to target
745 dependant i-face
746 /|\
747 |
748 target dependant
749 such as [gG] packet
750 or ptrace buffer
751
752The main objectives being:
753
754 o a clear separation between the low
755 level target and the high level GDB
756
757 o a mechanism that solves the general
758 problem of register aliases, overlaps
759 etc instead of treating them as optional
760 extras that can be wedged in as an after
761 thought (that is a reasonable description
762 of the current code).
763
764 Identify then solve the hard case and the
765 rest just falls out. GDB solved the easy
766 case and then tried to ignore the real
767 world :-)
768
769 o a removal of the assumption that the
770 mapping between the register cache
771 and virtual registers is largely static.
772 If you flip the USR/SSR stack register
773 select bit in the status-register then
774 the corresponding stack registers should
775 reflect the change.
776
777 o a mechanism that clearly separates the
778 gdb internal register cache from any
779 target (not architecture) dependant
780 specifics such as [gG] packets.
781
782Of course, like anything, it sounds good in theory. In reality, it
783would have to contend with many<->many relationships at both the
784virt<->cache and cache<->target level. For instance:
785
786 virt<->cache
787 Modifying an mmx register may involve
788 scattering values across both FP and
789 mmpx specific parts of a buffer
790
791 cache<->target
792 When writing back a SP it may need to
793 both be written to both SP and USP.
794
795
796Hmm,
797
798Rather than let this like the last time it was discussed, just slip, I'm
799first going to add this e-mail (+ references) to TODO. I'd then like to
800sketch out a broad strategy I think could get us there.
801
802
803First thing I'd suggest is separating out the ``extern registers[]''
804code so that we can at least identify what is using it. At present
805things are scattered across many files. That way we can at least
806pretend that there is a cache instead of a global array :-)
807
808I'd then suggest someone putting up a proposal for the pseudo-reg /
809high-level side interface so that code can be adopted to it. For old
810code, initially a blanket rename of write_register_bytes() to
811deprecated_write_register_bytes() would help.
812
813Following that would, finaly be the corresponding changes to the target.
bc9e5bbf
AC
814
815--
816
67edb2c6
AC
817Check that GDB can handle all BFD architectures (Andrew Cagney)
818
819There should be a test that checks that BFD/GDB are in sync with
820regard to architecture changes. Something like a test that first
821queries GDB for all supported architectures and then feeds each back
822to GDB.. Anyone interested in learning how to write tests? :-)
823
824--
825
4afc966c
AC
826 Architectural Change: Multi-arch et al.
827 =======================================
2a00c9ce 828
4afc966c
AC
829The long term objective is to remove all assumptions that there is a
830single target with a single address space with a single instruction
831set architecture and single application binary interface.
2a00c9ce 832
4afc966c
AC
833This is an ongoing effort. The first milestone is to enable
834``multi-arch'' where by all architectural decisions are made at
835runtime.
7ae38352 836
4afc966c
AC
837It should be noted that ``gdbarch'' is really ``gdbabi'' and
838``gdbisa''. Once things are multi-arched breaking that down correctly
839will become much easier.
7ae38352
AC
840
841--
842
4afc966c 843GDBARCH cleanup (Andrew Cagney)
7ae38352 844
4afc966c
AC
845The non-generated parts of gdbarch.{sh,h,c} should be separated out
846into arch-utils.[hc].
847
848Document that gdbarch_init_ftype could easily fail because it didn't
849identify an architecture.
ed952ac5
AC
850
851--
852
4afc966c 853Fix BELIEVE_PPC_PROMOTION. Change it to BELIEVE_PPC_PROMOTION_P?
ed952ac5 854
4afc966c
AC
855At present there is still #ifdef BELIEVE_PPC_PROMOTION code in the
856symtab file.
ed952ac5 857
4afc966c
AC
858--
859
860Fix ``set architecture <tab>''
861
862This command should expand to a list of all supported architectures.
863At present ``info architecture'' needs to be used. That is simply
864wrong. It involves the use of add_set_enum_cmd().
ed952ac5 865
7ae38352
AC
866--
867
8e6a3c35
AC
868Fix target_signal_from_host() etc.
869
870The name is wrong for starters. ``target_signal'' should probably be
871``gdb_signal''. ``from_host'' should be ``from_target_signal''.
872After that it needs to be multi-arched and made independant of any
873host signal numbering.
874
875--
876
4afc966c
AC
877Update ALPHA so that it uses ``struct frame_extra_info'' instead of
878EXTRA_FRAME_INFO.
879
880This is a barrier to replacing mips_extra_func_info with something
881that works with multi-arch.
7ae38352
AC
882
883--
884
4afc966c
AC
885Multi-arch mips_extra_func_info.
886
887This first needs the alpha to be updated so that it uses ``struct
888frame_extra_info''.
7ae38352
AC
889
890--
891
4afc966c 892Rationalize TARGET_SINGLE_FORMAT and TARGET_SINGLE_BIT et al.
7ae38352 893
4afc966c 894Surely one of them is redundant.
7ae38352
AC
895
896--
897
4afc966c 898Convert ALL architectures to MULTI-ARCH.
7ae38352
AC
899
900--
901
902Select the initial multi-arch ISA / ABI based on --target or similar.
903
904At present the default is based on what ever is first in the BFD
905archures table. It should be determined based on the ``--target=...''
906name.
907
908--
909
910Truly multi-arch.
911
912Enable the code to recognize --enable-targets=.... like BINUTILS does.
913
4afc966c
AC
914Can the tm.h and nm.h files be eliminated by multi-arch.
915
7ae38352
AC
916--
917
4afc966c
AC
918 Architectural Change: MI, LIBGDB and scripting languages
919 ========================================================
7ae38352 920
4afc966c
AC
921See also architectural changes related to the event loop. LIBGDB
922can't be finished until there is a generic event loop being used by
923all targets.
924
925The long term objective is it to be possible to integrate GDB into
926scripting languages.
7ae38352
AC
927
928--
929
4afc966c 930Implement generic ``(gdb) commmand > file''
7ae38352 931
4afc966c
AC
932Once everything is going through ui_file it should be come fairly
933easy.
934
935http://sourceware.cygnus.com/ml/gdb/2000-04/msg00104.html
936
937--
938
939Replace gdb_stdtarg with gdb_targout (and possibly gdb_targerr).
940
941gdb_stdtarg is easily confused with gdb_stdarg.
942
943--
944
945Extra ui_file methods - dump.
946
947These are for debugging / testing. An aside is to set up a whitebox
948testsuite for key internals such as ui_file.
949
950--
951
952Eliminate error_begin().
953
954With ui_file, there is no need for the statefull error_begin ()
955function.
956
957--
958
959Send normal output to gdb_stdout.
960Send error messages to gdb_stderror.
961Send debug and log output log gdb_stdlog.
962
963GDB still contains many cases where (f)printf or printf_filtered () is
964used when it should be sending the messages to gdb_stderror or
965gdb_stdlog. The thought of #defining printf to something has crossed
966peoples minds ;-)
7ae38352
AC
967
968--
969
970Re-do GDB's output pager.
971
972GDB's output pager still relies on people correctly using *_filtered
973for gdb_stdout and *_unfiltered for gdb_stdlog / gdb_stderr.
974Hopefully, with all normal output going to gdb_stdout, the pager can
975just look at the ui_file that the output is on and then use that to
976decide what to do about paging. Sounds good in theory.
977
978--
979
4afc966c
AC
980Check/cleanup MI documentation.
981
982The list of commands specified in the documentation needs to be
983checked against the mi-cmds.c table in a mechanical way (so that they
984two can be kept up-to-date).
985
986--
987
988Convert MI into libgdb
989
990MI provides a text interface into what should be many of the libgdb
991functions. The implementation of those functions should be separated
992into the MI interface and the functions proper. Those functions being
993moved to gdb/lib say.
994
995--
996
997Create libgdb.h
998
999The first part can already be found in defs.h.
1000
1001--
1002
1003MI's input does not use buffering.
1004
1005At present the MI interface reads raw characters of from an unbuffered
1006FD. This is to avoid several nasty buffer/race conditions. That code
1007should be changed so that it registers its self with the event loop
1008(on the input FD) and then push commands up to MI as they arrive.
1009
1010The serial code already does this.
1011
1012--
1013
1014Make MI interface accessable from existing CLI.
1015
1016--
1017
1018Add a breakpoint-edit command to MI.
1019
1020It would be similar to MI's breakpoint create but would apply to an
1021existing breakpoint. It saves the need to delete/create breakpoints
1022when ever they are changed.
1023
1024--
1025
1026Add directory path to MI breakpoint.
1027
1028That way the GUI's task of finding the file within which the
1029breakpoint was set is simplified.
1030
1031--
1032
1033Add a mechanism to reject certain expression classes to MI
7ae38352
AC
1034
1035There are situtations where you don't want GDB's expression
1036parser/evaluator to perform inferior function calls or variable
4afc966c
AC
1037assignments. A way of restricting the expression parser so that such
1038operations are not accepted would be very helpful.
7ae38352
AC
1039
1040--
1041
1042Remove sideffects from libgdb breakpoint create function.
1043
1044The user can use the CLI to create a breakpoint with partial
1045information - no file (gdb would use the file from the last
1046breakpoint).
1047
1048The libgdb interface currently affects that environment which can lead
1049to confusion when a user is setting breakpoints via both the MI and
1050the CLI.
1051
1052This is also a good example of how getting the CLI ``right'' will be
1053hard.
1054
1055--
1056
4afc966c 1057Move gdb_lasterr to ui_out?
7ae38352 1058
4afc966c
AC
1059The way GDB throws errors and records them needs a re-think. ui_out
1060handles the correct output well. It doesn't resolve what to do with
1061output / error-messages when things go wrong.
7ae38352 1062
4afc966c
AC
1063--
1064
1065 Architectural Change: Async
1066 ===========================
1067
1068While GDB uses an event loop when prompting the user for input. That
1069event loop is not exploited by targets when they allow the target
1070program to continue. Typically targets still block in (target_wait())
1071until the program again halts.
1072
1073The closest a target comes to supporting full asynchronous mode are
1074the remote targets ``async'' and ``extended-async''.
7ae38352
AC
1075
1076--
1077
4afc966c 1078Asynchronous expression evaluator
7ae38352 1079
4afc966c 1080Inferior function calls hang GDB.
7ae38352
AC
1081
1082--
1083
1084Fix implementation of ``target xxx''.
1085
1086At present when the user specifies ``target xxxx'', the CLI maps that
1087directly onto a target open method. It is then assumed that the
1088target open method should do all sorts of complicated things as this
1089is the only chance it has. Check how the various remote targets
1090duplicate the target operations. Check also how the various targets
1091behave differently for purely arbitrary reasons.
1092
1093What should happen is that ``target xxxx'' should call a generic
1094``target'' function and that should then co-ordinate the opening of
1095``xxxx''. This becomes especially important when you're trying to
1096open an asynchronous target that may need to perform background tasks
1097as part of the ``attach'' phase.
1098
1099Unfortunatly, due to limitations in the old/creaking command.h
1100interface, that isn't possible. The function being called isn't told
1101of the ``xxx'' or any other context information.
1102
1103Consequently a precursor to fixing ``target xxxx'' is to clean up the
1104CLI code so that it passes to the callback function (attatched to a
1105command) useful information such as the actual command and a context
1106for that command. Other changes such as making ``struct command''
1107opaque may also help.
1108
1109--
1110
4afc966c
AC
1111Make "target xxx" command interruptible.
1112
1113As things become async this becomes possible. A target would start
1114the connect and then return control to the event loop. A cntrl-c
1115would notify the target that the operation is to be abandoned and the
1116target code could respond.
7ae38352
AC
1117
1118--
1119
4afc966c
AC
1120Add a "suspend" subcommand of the "continue" command to suspend gdb
1121while continuing execution of the subprocess. Useful when you are
1122debugging servers and you want to dodge out and initiate a connection
1123to a server running under gdb.
1124
1125[hey async!!]
7ae38352 1126
2a00c9ce
AC
1127--
1128
1129 Legacy Wish List
1130 ================
1131
1132This list is not up to date, and opinions vary about the importance or
1133even desirability of some of the items. If you do fix something, it
1134always pays to check the below.
1135
1136--
c906108c 1137
b83266a0
SS
1138@c This does not work (yet if ever). FIXME.
1139@c @item --parse=@var{lang} @dots{}
1140@c Configure the @value{GDBN} expression parser to parse the listed languages.
1141@c @samp{all} configures @value{GDBN} for all supported languages. To get a
1142@c list of all supported languages, omit the argument. Without this
1143@c option, @value{GDBN} is configured to parse all supported languages.
1144
7ae38352 1145--
c906108c
SS
1146
1147START_INFERIOR_TRAPS_EXPECTED need never be defined to 2, since that
1148is its default value. Clean this up.
1149
7ae38352
AC
1150--
1151
c906108c
SS
1152It should be possible to use symbols from shared libraries before we know
1153exactly where the libraries will be loaded. E.g. "b perror" before running
1154the program. This could maybe be done as an extension of the "breakpoint
1155re-evaluation" after new symbols are loaded.
1156
7ae38352
AC
1157--
1158
c906108c
SS
1159Make single_step() insert and remove breakpoints in one operation.
1160
7ae38352
AC
1161--
1162
c906108c
SS
1163Speed up single stepping by avoiding extraneous ptrace calls.
1164
7ae38352
AC
1165--
1166
c906108c
SS
1167Speed up single stepping by not inserting and removing breakpoints
1168each time the inferior starts and stops.
1169
1170Breakpoints should not be inserted and deleted all the time. Only the
1171one(s) there should be removed when we have to step over one. Support
1172breakpoints that don't have to be removed to step over them.
1173
7ae38352 1174[this has resulted in numerous debates. The issue isn't clear cut]
c906108c 1175
7ae38352 1176--
c906108c
SS
1177
1178Provide "voodoo" debugging of core files. This creates a zombie
1179process as a child of the debugger, and loads it up with the data,
1180stack, and regs of the core file. This allows you to call functions
1181in the executable, to manipulate the data in the core file.
1182
7ae38352 1183[you wish]
c906108c 1184
7ae38352 1185--
c906108c 1186
7ae38352 1187GDB reopens the source file on every line, as you "next" through it.
c906108c 1188
7ae38352 1189[still true? I've a memory of this being fixed]
c906108c 1190
7ae38352 1191--
c906108c
SS
1192
1193Perhaps "i source" should take an argument like that of "list".
1194
7ae38352 1195--
c906108c
SS
1196
1197Remove "at 0xnnnn" from the "b foo" response, if `print address off' and if
1198it matches the source line indicated.
1199
7ae38352 1200--
c906108c 1201
7ae38352 1202The prompt at end of screen should accept space as well as CR.
c906108c 1203
7ae38352 1204--
c906108c
SS
1205
1206Backtrace should point out what the currently selected frame is, in
1207its display, perhaps showing "@3 foo (bar, ...)" or ">3 foo (bar,
1208...)" rather than "#3 foo (bar, ...)".
1209
7ae38352
AC
1210--
1211
c906108c
SS
1212"i program" should work for core files, and display more info, like what
1213actually caused it to die.
1214
7ae38352
AC
1215--
1216
c906108c
SS
1217"x/10i" should shorten the long name, if any, on subsequent lines.
1218
7ae38352 1219--
c906108c
SS
1220
1221"next" over a function that longjumps, never stops until next time you happen
1222to get to that spot by accident. E.g. "n" over execute_command which has
1223an error.
1224
7ae38352
AC
1225--
1226
c906108c
SS
1227"set zeroprint off", don't bother printing members of structs which
1228are entirely zero. Useful for those big structs with few useful
1229members.
1230
7ae38352
AC
1231--
1232
c906108c
SS
1233GDB does four ioctl's for every command, probably switching terminal modes
1234to/from inferior or for readline or something.
1235
7ae38352
AC
1236--
1237
c906108c
SS
1238terminal_ours versus terminal_inferior: cache state. Switch should be a noop
1239if the state is the same, too.
1240
7ae38352 1241--
c906108c
SS
1242
1243"i frame" shows wrong "arglist at" location, doesn't show where the args
1244should be found, only their actual values.
1245
7ae38352
AC
1246--
1247
c906108c
SS
1248There should be a way for "set" commands to validate the new setting
1249before it takes effect.
1250
7ae38352 1251--
c906108c
SS
1252
1253"ena d" is ambiguous, why? "ena delete" seems to think it is a command!
1254
7ae38352 1255--
c906108c
SS
1256
1257i line VAR produces "Line number not known for symbol ``var''.". I
1258thought we were stashing that info now!
1259
7ae38352
AC
1260--
1261
c906108c
SS
1262We should be able to write to random files at hex offsets like adb.
1263
7ae38352
AC
1264--
1265
7ae38352
AC
1266[elena - delete this]
1267
c906108c
SS
1268Handle add_file with separate text, data, and bss addresses. Maybe
1269handle separate addresses for each segment in the object file?
1270
7ae38352
AC
1271--
1272
1273[Jimb/Elena delete this one]
1274
c906108c
SS
1275Handle free_named_symtab to cope with multiply-loaded object files
1276in a dynamic linking environment. Should remember the last copy loaded,
1277but not get too snowed if it finds references to the older copy.
1278
7ae38352
AC
1279--
1280
1281[elena delete this also]
c906108c
SS
1282
1283Remove all references to:
1284 text_offset
1285 data_offset
1286 text_data_start
1287 text_end
1288 exec_data_offset
1289 ...
1290now that we have BFD. All remaining are in machine dependent files.
1291
7ae38352 1292--
c906108c
SS
1293
1294Re-organize help categories into things that tend to fit on a screen
1295and hang together.
1296
7ae38352 1297--
c906108c
SS
1298
1299Add in commands like ADB's for searching for patterns, etc. We should
1300be able to examine and patch raw unsymboled binaries as well in gdb as
1301we can in adb. (E.g. increase the timeout in /bin/login without source).
1302
7ae38352
AC
1303[actually, add ADB interface :-]
1304
1305--
c906108c
SS
1306
1307When doing "step" or "next", if a few lines of source are skipped between
1308the previous line and the current one, print those lines, not just the
1309last line of a multiline statement.
1310
7ae38352 1311--
c906108c
SS
1312
1313Handling of "&" address-of operator needs some serious overhaul
1314for ANSI C and consistency on arrays and functions.
1315 For "float point[15];":
1316ptype &point[4] ==> Attempt to take address of non-lvalue.
1317 For "char *malloc();":
1318ptype malloc ==> "char *()"; should be same as
1319ptype &malloc ==> "char *(*)()"
1320call printf ("%x\n", malloc) ==> weird value, should be same as
1321call printf ("%x\n", &malloc) ==> correct value
1322
7ae38352
AC
1323--
1324
c906108c
SS
1325Fix dbxread.c symbol reading in the presence of interrupts. It
1326currently leaves a cleanup to blow away the entire symbol table when a
1327QUIT occurs. (What's wrong with that? -kingdon, 28 Oct 1993).
1328
7ae38352
AC
1329[I suspect that the grype was that, on a slow system, you might want
1330to cntrl-c and get just half the symbols and then load the rest later
1331- scary to be honest]
1332
1333--
1334
c906108c
SS
1335Mipsread.c reads include files depth-first, because the dependencies
1336in the psymtabs are way too inclusive (it seems to me). Figure out what
1337really depends on what, to avoid recursing 20 or 30 times while reading
1338real symtabs.
1339
7ae38352
AC
1340--
1341
c906108c
SS
1342value_add() should be subtracting the lower bound of arrays, if known,
1343and possibly checking against the upper bound for error reporting.
1344
7ae38352 1345--
c906108c
SS
1346
1347When listing source lines, check for a preceding \n, to verify that
1348the file hasn't changed out from under us.
1349
7ae38352
AC
1350[fixed by some other means I think. That hack wouldn't actually work
1351reliably - the file might move such that another \n appears. ]
c906108c 1352
7ae38352 1353--
c906108c
SS
1354
1355Get all the remote systems (where the protocol allows it) to be able to
1356stop the remote system when the GDB user types ^C (like remote.c
1357does). For ebmon, use ^Ak.
1358
7ae38352
AC
1359--
1360
c906108c
SS
1361Possible feature: A version of the "disassemble" command which shows
1362both source and assembly code ("set symbol-filename on" is a partial
1363solution).
1364
7ae38352
AC
1365[has this been done? It was certainly done for MI and GDBtk]
1366
1367--
1368
c906108c
SS
1369investigate "x/s 0" (right now stops early) (I think maybe GDB is
1370using a 0 address for bad purposes internally).
1371
7ae38352
AC
1372--
1373
c906108c
SS
1374Make "info path" and path_command work again (but independent of the
1375environment either of gdb or that we'll pass to the inferior).
1376
7ae38352
AC
1377--
1378
c906108c
SS
1379Make GDB understand the GCC feature for putting octal constants in
1380enums. Make it so overflow on an enum constant does not error_type
1381the whole type. Allow arbitrarily large enums with type attributes.
1382Put all this stuff in the testsuite.
1383
7ae38352
AC
1384--
1385
c906108c
SS
1386Make TYPE_CODE_ERROR with a non-zero TYPE_LENGTH more useful (print
1387the value in hex; process type attributes). Add this to the
1388testsuite. This way future compilers can add new types and old
1389versions of GDB can do something halfway reasonable.
1390
7ae38352 1391--
c906108c
SS
1392
1393Fix mdebugread.c:parse_type to do fundamental types right (see
1394rs6000_builtin_type in stabsread.c for what "right" is--the point is
1395that the debug format fixes the sizes of these things and it shouldn't
1396depend on stuff like TARGET_PTR_BIT and so on. For mdebug, there seem
1397to be separate bt* codes for 64 bit and 32 bit things, and GDB should
1398be aware of that). Also use a switch statement for clarity and speed.
1399
7ae38352
AC
1400--
1401
c906108c
SS
1402Investigate adding symbols in target_load--some targets do, some
1403don't.
1404
7ae38352
AC
1405--
1406
c906108c
SS
1407Put dirname in psymtabs and change lookup*symtab to use dirname (so
1408/foo/bar.c works whether compiled by cc /foo/bar.c, or cd /foo; cc
1409bar.c).
1410
7ae38352
AC
1411--
1412
c906108c
SS
1413Merge xcoffread.c and coffread.c. Use breakpoint_re_set instead of
1414fixup_breakpoints.
1415
7ae38352 1416--
c906108c
SS
1417
1418Make a watchpoint which contains a function call an error (it is
1419broken now, making it work is probably not worth the effort).
1420
7ae38352 1421--
c906108c
SS
1422
1423New test case based on weird.exp but in which type numbers are not
1424renumbered (thus multiply defining a type). This currently causes an
1425infinite loop on "p v_comb".
1426
7ae38352 1427--
c906108c 1428
7ae38352 1429[Hey! Hint Hint Delete Delete!!!]
c906108c
SS
1430
1431Fix 386 floating point so that floating point registers are real
1432registers (but code can deal at run-time if they are missing, like
1433mips and 68k). This would clean up "info float" and related stuff.
1434
7ae38352 1435--
c906108c
SS
1436
1437gcc -g -c enummask.c then gdb enummask.o, then "p v". GDB complains
1438about not being able to access memory location 0.
1439
1440-------------------- enummask.c
1441enum mask
1442{
1443 ANIMAL = 0,
1444 VEGETABLE = 1,
1445 MINERAL = 2,
1446 BASIC_CATEGORY = 3,
1447
1448 WHITE = 0,
1449 BLUE = 4,
1450 GREEN = 8,
1451 BLACK = 0xc,
1452 COLOR = 0xc,
1453
1454 ALIVE = 0x10,
1455
1456 LARGE = 0x20
1457} v;
1458
7ae38352
AC
1459--
1460
c906108c
SS
1461If try to modify value in file with "set write off" should give
1462appropriate error not "cannot access memory at address 0x65e0".
1463
7ae38352 1464--
c906108c 1465
c906108c
SS
1466Allow core file without exec file on RS/6000.
1467
7ae38352
AC
1468--
1469
c906108c
SS
1470Make sure "shell" with no arguments works right on DOS.
1471
7ae38352
AC
1472--
1473
c906108c
SS
1474Make gdb.ini (as well as .gdbinit) be checked on all platforms, so
1475the same directory can be NFS-mounted on unix or DOS, and work the
1476same way.
1477
7ae38352
AC
1478--
1479
1480[Is this another delete???]
c906108c
SS
1481
1482Get SECT_OFF_TEXT stuff out of objfile_relocate (might be needed to
1483get RS/6000 to work right, might not be immediately relevant).
1484
7ae38352 1485--
c906108c
SS
1486
1487Work out some kind of way to allow running the inferior to be done as
1488a sub-execution of, eg. breakpoint command lists. Currently running
1489the inferior interupts any command list execution. This would require
1490some rewriting of wait_for_inferior & friends, and hence should
1491probably be done in concert with the above.
1492
7ae38352
AC
1493--
1494
c906108c
SS
1495Add function arguments to gdb user defined functions.
1496
7ae38352
AC
1497--
1498
c906108c
SS
1499Add convenience variables that refer to exec file, symbol file,
1500selected frame source file, selected frame function, selected frame
1501line number, etc.
1502
7ae38352
AC
1503--
1504
c906108c
SS
1505Modify the handling of symbols grouped through BINCL/EINCL stabs to
1506allocate a partial symtab for each BINCL/EINCL grouping. This will
1507seriously decrease the size of inter-psymtab dependencies and hence
1508lessen the amount that needs to be read in when a new source file is
1509accessed.
1510
7ae38352 1511--
c906108c 1512
c906108c
SS
1513Add a command for searching memory, a la adb. It specifies size,
1514mask, value, start address. ADB searches until it finds it or hits
1515an error (or is interrupted).
1516
7ae38352
AC
1517--
1518
b83266a0
SS
1519Remove the range and type checking code and documentation, if not
1520going to implement.
1521
c906108c
SS
1522# Local Variables:
1523# mode: text
1524# End:
This page took 0.116001 seconds and 4 git commands to generate.