3 * gdbserver/remote-utils.c (write_ok): Write "OK", not "Ok", to
4 match stubs and protocol spec.
5 * gdbserver/remote-utils.c (remote_open): Cast to struct sockaddr
6 when passing to function which expects that.
8 The following changes aren't quite enough to make things work with
9 LynxOS (apprently kernel problems).
10 * infrun.c (wait_for_inferior): When resuming new thread, pass pid
11 not -1 for remote case.
12 * thread.c (info_threads_command): Give error if !target_has_stack.
13 * infrun.c (start_remote): Call init_thread_list.
14 * thread.c (info_threads_command): Don't call kill for remote
16 * target.c (normal_pid_to_str): Print "thread" not "process" for
18 * remote.c, gdbserver/*: Add 'H', 'S', and 'C' requests, 'X'
19 response, and `thread' part of 'T' response.
20 * gdbserver/*: If program exits, send packet to GDB before
21 exiting. Handle termination with a signal the same as exiting
23 * remote.c: Don't try to kill program after getting an 'X'
25 * infrun.c (wait_for_inferior): Add comment about kill versus mourn.
29 * config/pa/tm-pro.h tm-hppap.h, hppapro.mt: Rename tm-hppap.h to
34 * source.c: Various cosmetic changes.
35 (forward_search_command): Handle very long source lines correctly.
39 * hppa-tdep.c: Use GDB_TARGET_IS_PA_ELF so SOM target support will
42 * config/pa/tm-hppap.h: New file. Set GDB_TARGET_IS_PA_ELF,
43 otherwise it looks like BSD-ELF.
47 * inftarg.c: include <sys/types.h> to get def of pid_t.
51 * solib.c (auto_solib_add_at_startup): New global.
52 (solib_create_inferior_hook): Call solib_add only if
53 auto_solib_add_at_startup is nonzero.
54 (_initialize_solib): New command "set auto-solib-add".
58 * parse.c (msymbol_addr_type): Replaced by
59 lookup_pointer_type (builtin_type_void).
61 * printcmd.c (_initialize_printcmd): Give examine_*_type
62 a name for `ptype $_'.
66 * printcmd.c (print_formatted): Call val_print_string directly,
67 rather than via value_print.
71 * somsolib.c (som_solib_get_got_by_pc): New function.
72 * somsolib.h (som_solib_get_got_by_pc): Add extern decl.
73 * hppa-tdep.c (hppa_fix_call_dummy): Handle case where FUN is the
74 function's export stub or real address in a shared library.
78 * config/i386/nbsd.mh (REGEX, REGEX1): No longer define.
80 * configure.in (i[345]86-*-freebsd*): New configuration.
81 * config/i386/{fbsd.mh,fbsd.mt,nm-fbsd.h}: New files.
85 * top.c (read_next_line): Pass annotation suffix "commands"
86 instead of "command", matches documentation.
90 * config/a29k/tm-a29k.h (setup_arbitrary_frame): Replace
91 FRAME_ADDR with CORE_ADDR in prototype.
93 * top.c (command_line_input): If annotation suffix is NULL,
94 replace it with an empty string.
95 (read_next_line): Pass "command" as annotation suffix to
100 * config/rs6000/tm-rs6000.h (setpgrp): move defn from here...
101 * config/rs6000/xm-rs6000.h: ...to here.
105 * gdbtk.tcl (build_framework): Fix bug with setting window titles.
107 * gdbtk.tcl (build_framework): Add "Report bug" to help menu.
109 * gdbtk.tcl: Re-arrange windows using new, consistent layout. Clean
110 up lots of code and centralize framework initialization.
114 * tm-hppa.h (skip_trampoline_code): Add extern decl.
115 * hppa-tdep.c (hppa_pop_frame): Silently restart the inferior and
116 allow it to execute any return path trampoline code. Stop the
117 inferior and give the user control when the trampoline has
119 (in_solib_call_trampoline): Handle export stubs which also perform
120 parameter relocations.
121 (in_solib_return_trampoline): Likewise.
125 * coffread.c, symfile.h (coff_getfilename): Make it static again.
126 * xcoffread.c (coff_getfilename): Use a static copy from
127 coffread.c, modified for accessing the static xcoff strtbl.
131 * hppa-tdep.c (in_solib_call_trampoline): Recognize calls through
132 _sr4export and $$dyncall as trampolines. Likewise for long-call
133 stubs and parameter relocation stubs.
134 (in_solib_return_trampoline): Recognize a return trampoline for
135 return value relocation stubs.
137 * hpread.c: Include hp-symtab.h instead of hpux-symtab.h.
138 Various name changes to match those used by hp-symtab.h.
142 * blockframe.c (find_pc_partial_function): Inhibit mst_trampoline
143 symbol special handling when INHIBIT_SUNSOLIB_TRANSFER_TABLE_HACK
145 * infrun.c (IN_SOLIB_CALL_TRAMPOLINE): Renamed from
146 IN_SOLIB_TRAMPOLINE. All callers changed.
147 (IN_SOLIB_RETURN_TRAMPOLINE): Provide default definition.
148 (wait_for_inferior): Handle single stepping through trampolines on
149 return paths from shared libraries.
150 * config/pa/tm-hppa.h (IN_SOLIB_CALL_TRAMPOLINE): Use
151 in_solib_call_trampoline.
152 (IN_SOLIB_RETURN_TRAMPOLINE): Use in_solib_return_trampoline.
153 (INHIBIT_SUNSOLIB_TRANSFER_TABLE_HACK): Define.
154 * hppa-tdep.c (in_solib_call_trampoline): New function.
155 (in_solib_return_trampoline): New function.
159 * tm-h8300.h (REMOTE_BREAKPOINT): Define.
160 * h8300-tdep.c (h8300_pop_frame): Remove redundant call.
162 * remote-e7000.c (HARD_BREAKPOINTS): Reenable.
163 (BC_BREAKPOINTS): Disable.
164 * sh-tdep.c (print_insn): Cope with big and little endian machines.
165 * sh/sh.mt: Use libsim.a
166 * sh/tm-sh.h (TARGET_BYTE_ORDER_SELECTABLE): New
167 (BREAKPOINT): Changed to be byteorder independent.
171 Maintenance commands to report time and space usage.
172 * main.c (display_time, display_space): New globals.
173 (main): Add argument --statistics to enable reporting, display
174 time and space after startup is done.
175 * maint.c (maintenance_time_display, maintenance_space_display):
177 * top.c (command_loop): Display time and space after command
180 * top.c (pre_init_ui_hook): New global.
181 (gdb_init): If pre_init_ui_hook set, call before all other init.
185 * a29k-tdep.c (examine_tag): Fix a bug in stack frame size.
189 * config/i386/i386sol2.mh: Reenable core file support.
191 * symfile.c (deduce_language_from_filename): Treat .c++ as a
194 * valops.c (destructor_name_p): Do not compare the template
195 part for template classes.
199 * defs.h, infcmd.c (reg_names): Don't declare as constant.
200 * remote-mips.c (mips_open): Read and set the processor type.
201 * mips-tdep.c (mips_set_processor_type): Always return an int.
205 * nlm/alpha.c (strtol): Remove, it is provided by NetWare C library.
206 * nlm/gdbserve.def (strtol): Add to import list.
207 * nlm/fake_aio.c: Remove file, no longer used.
209 * Makefile.in (LD_FOR_TARGET, NLMCONV_FOR_TARGET): Remove.
210 * nlm/Makefile.in (gdbserve.O): Link with ${CC_FOR_TARGET}.
211 (LD_FOR_TARGET): Remove.
215 * monitor.h, monitor.c, w89k-rom.c, op50n-rom.c, idp-rom.c: Add
216 support for two variables used to control the load protocol and
221 Support for different MIPS IDT processor models.
222 * mips-tdep.c (mips_processor_type, tmp_mips_processor_type,
223 mips_generic_reg_names, mips_r3041_reg_names,
224 mips_r3051_reg_names, mips_r3081_reg_names,
225 mips_processor_type_table): New globals.
226 (mips_do_registers_info): Don't display register if name is empty.
227 (mips_set_processor_type_command): New command.
228 (mips_show_processor_type_command): New command.
229 (mips_set_processor_type): New function.
230 (mips_read_processor_type): New function.
231 * config/mips/tm-idt.h (DEFAULT_MIPS_TYPE): New macro.
232 * config/mips/tm-mips.h (DEFAULT_MIPS_TYPE): New macro.
233 (NUM_REGS): Increase to account for all CP0 registers.
234 (REGISTER_NAMES): Add empty names for CP0 registers.
235 (FIRST_EMBED_REGNUM, LAST_EMBED_REGNUM): Adjust.
236 (PRID_REGNUM): New macro.
240 * README: Add warning about termcap in Ultrix and OSF/1.
244 * Makefile.in: Fix the test for installing gdbtk.
246 * hppa-tdep.c: Remove including sys/dir.h from a target file.
250 * config/powerpc/gdbserve.mt (TDEPFILES): Remove fake_aio.o.
252 * nlm/gdbserve.c: Include <nwtypes.h> before other NetWare headers.
253 * nlm/ppc.c: Likewise.
255 * nlm/ppc.c (strtol): Remove, it is provided by NetWare C Library.
256 (StopBell): New function (stubbed out).
260 * hppa-tdep.c (skip_trampoline_code): Handle shared library import
265 * c-exp.y (yylex): Fix a bug in template scanning.
269 * i386-stub.c, m68k-stub.c, sparc-stub.c, sparcl-stub.c: Mask out
270 the top bit returned by getDebugChar.
274 * op50-rom.c, w89k-rom.c, monitor.c: Modify to usr two variables
275 to set remote load type and protocol.
276 * rom68k-rom.c: Add to_stop in target_ops.
280 * Makefile.in: Install gdbtk.tcl.
281 * configure.in: Add ENABLE_GDBTK flag.
282 * gdbtk.c (gdb_sourcelines): Returns list of source lines
283 containing code. (gdb_regnames): Returns list of register names.
287 * somsolib.c: Add TODO list.
288 (som_solib_add): Immediately return if $SHLIB_INFO$ sections does
289 not exist or has size zero. Slightly simplify error handling.
290 Keep an internal list of all the loaded shared libraries and
291 various tidbits of information about the loaded shared libraries.
292 Build section tables for each loaded shared library and add those
293 tables to the core target if necessary.
294 (som_solib_create_inferior_hook): Force re-reading of shared
295 libraries at exec time.
296 (som_sharedlibrary_info_command): New function for dumping
297 information about the currently loaded shared libraries.
298 (_initialize_som_solib): New function.
302 * Makefile.in (copying.o, f-exp.tab.o, dpx2-nat.o, dstread.o,
303 i386aix-nat.o, i386m3-nat.o, irix5-nat.o, lynx-nat.o, m3-nat.o,
304 mipsm3-nat.o, ns32km3-nat.o, remote-e7000.o, remote-os9k.o):
306 (copying.o, os9kread.o, remote.o): Update dependencies.
308 * valarith.c (value_sub): When subtracting pointers, only
309 check for a match of the pointed to element lengths.
310 Cast element length to LONGEST to obtain a signed result for
311 pointer subtractions.
315 * ch-exp.y (yylex): Fix off-by-one error when converting string to
316 lowercase. Null terminate new string.
318 * hppa-tdep.c (rp_saved): Handle IMPORT stubs too.
320 * somsolib.c (som_solib_add): Check the value of __dld_flags, if
321 it indicates __dld_list is not valid return an error. If it
322 indicates that libraries were not mapped privately, issue a
327 * symfile.c (syms_from_objfile): Only call find_lowest_section if
328 no ".text" section exists.
332 * rom68k-rom.c: New file. Replaces the old remote-mon.c and uses
333 the new generic ROM interface in monitor.c.
334 * config/m68k/monitor.mt: Use new ROM support.
335 * monitor.c: Add support for xmodem download protocol.
339 * findvar.c (find_saved_register): Fix a frame variable name.
340 * infcmd.c (finish_command): Ditto.
344 * TODO: Remove "Watchpoints seem not entirely reliable, though
345 they haven't failed me recently." item--this old (4.6 at least)
346 item is too vague to be useful (some watchpoint bugs have been
348 * TODO: Add explanation of "RPC interface" item.
352 * hppa-tdep.c (read_unwind_info): Use "text_offset" for linker
353 stub unwind descriptors too.
355 * Enable backtracing from inside a SOM shared library back into
357 * hppa-tdep.c (internalize_unwinds): Accept and use new
358 "text_offset" argument for dynamic relocation of
359 region_{start,end} fields in the unwind descriptor.
360 (read_unwind_info): Pass text_offset to internalize unwinds.
364 * m3-nat.c: Remove comments about arbitrary limit in
365 printf_filtered; that limit is gone.
369 * Beginnings of SOM shared library support. Breakpoints and
370 single frame backtracing within the library only. Only works when
371 using the HPUX 9 dynamic linker. More functionality to be added
374 * somsolib.c, somsolib.h: New files.
375 * Makefile.in (HFILES_NO_SRCDIR): Add somsolib.h
376 (ALLDEPFILES): Add somsolib.c.
377 (somsolib.o): Add some dependencies.
378 * somread.c (som_symtab_read): Accept multiple section offsets.
379 All callers changed. Adjust all text symbols with the first
381 * symfile.c (find_lowest_section): Enable this function. Add some
382 tie-breaking logic when sections have the same vma.
383 (syms_from_objfile): Use find_lowest_section rather than looking
384 for ".text" by name. Relax warning to only warn if the lowest
385 section is not a code section.
386 * config/pa/{hppabsd.mh, hppahpux.mh} (NATDEPFILES): Add somsolib.o
387 * config/pa/{nm-hppab.h, nm-hppah.h}: Include somsolib.h.
391 * partial-stab.h (N_TEXT): Put back GDB_TARGET_IS_HPPA kludge,
392 it is still needed for GCC-2.6 compiled code.
393 * TODO (GDB_TARGET_IS_HPPA): Note this kludge can be nuked
394 sometime after GCC-2.7 has been released.
396 * hppa-tdep.c (frame_saved_pc): Mask off low two bits when
397 retrieving the PC from a signal handler caller. Fix thinko
398 in Stan's last change ("frame", should have been "frame->next").
399 If the next frame is a signal handler caller and it's a system
400 call which has entered the kernel ((PSW & 0x2) != 0), then the
401 saved pc is in %r2 instead of %r31.
405 * hppa-tdep.c (hppa_frame_find_saved_regs): Change "frame" to
406 "frame_info" throughout.
410 * sparcl-stub.c: get rid of defs.h.
414 * gdbserver/Makefile.in (MMALLOC_CFLAGS): Add -I${MMALLOC_DIR}.
415 Correct definition of MMALLOC_DIR to reflect fact this is
416 gdb/gdbserver/Makefile.in, not gdb/Makefile.in.
418 * gdbserver/server.c (main): After we kill the inferior in
419 response to a 'k' request, exit.
421 * remote.c (remote_kill): Use catch_errors when calling putpkt.
422 (putpkt): Return int, not void, to match catch_errors calling
427 * rs6000-tdep.c (pop_frame): Correct a variable name.
431 * TODO: Re-write item about SIGINT handling to reflect the fact
432 that target_stop now exists.
436 Replace useless FRAME, FRAME_ADDR types with struct frame_info *
437 and CORE_ADDR, respectively.
438 * frame.h (FRAME, FRAME_INFO_ID, FRAME_ADDR): Remove.
439 * blockframe.c (get_frame_info): Remove.
440 * a29k-tdep.c, alpha-tdep.c, blockframe.c, breakpoint.c,
441 breakpoint.h, energize.c, findvar.c, gdbtk.c, gould-pinsn.c,
442 h8300-tdep.c, h8500-tdep.c, hppa-tdep.c, i386-tdep.c, i960-tdep.c,
443 infcmd.c, inferior.h, infrun.c, m68k-tdep.c, m88k-tdep.c,
444 mips-tdep.c, nindy-tdep.c, printcmd.c, pyr-tdep.c, rs6000-tdep.c,
445 sh-tdep.c, sparc-tdep.c, stack.c, valops.c, z8k-tdep.c,
446 config/a29k/tm-a29k.h, config/alpha/tm-alpha.h,
447 config/gould/tm-pn.h, config/h8300/tm-h8300.h,
448 config/h8500/tm-h8500.h, config/mips/tm-mips.h,
449 config/ns32k/tm-merlin.h, config/ns32k/tm-umax.h,
450 config/pyr/tm-pyr.h, config/sparc/tm-sparc.h): Replace FRAME with
451 struct frame_info * everywhere, replace FRAME_ADDR with CORE_ADDR,
452 rename variables consistently (using `frame' or `fi'), remove
453 calls to get_frame_info and FRAME_INFO_ID, remove comments about
454 FRAME and FRAME_ADDR cruftiness.
458 * corelow.c, exec.c, inftarg.c, m3-nat.c, op50-rom.c, procfs.c,
459 remote-adapt.c, remote-e7000.c, remote-eb.c, remote-es.c,
460 remote-hms.c, remote-mips.c, remote-mm.c, remote-mon.c,
461 remote-nindy.c, remote-os9k.c, remote-pa.c, remote-sim.c,
462 remote-st.c, remote-udi.c, remote-vx.c, remote-z8k.c, remote.c,
463 w89k-rom.c, target.c, target.h: Add support for target_stop().
464 * gdbtk.c (gdb_stop): Switch to target_stop().
468 * osfsolib.c (solib_map_sections, first_link_map_member,
469 next_link_map_member, xfer_link_map_member): Retrieve and use
470 shared library relocation offset from runtime loader structures.
471 Use libxproc.a routines to get a working version if
472 USE_LDR_ROUTINES is defined.
473 * README: Remove item about shared library relocation for
478 * c-exp.y (yylex): scan template names, and scan nested class
483 * nlm/Makefile.in: install gdbserve.nlm.
487 * Makefile.in: Use $(objdir)/tcl and $(objdir)/tk if they are
489 * configure.in (ENABLE_CLIBS): Use $(TCL) and $(TK) instead of
491 * gdbtk.c: Get rid of lots of unnecessary #includes.
492 * (gdbtk_init): Use ConnectionNumber macro instead of referencing
493 Display structure directly.
494 * gdbtk.tcl: Change exit button to quit button.
498 * c-valprint.c (c_value_print): Check for plain literal `char'
499 target type when suppressing `(char *)' output for strings.
503 * coffread.c (coff_symfile_init): Remove unused local abfd.
504 * utils.c [NO_MMALLOC] (mmalloc, mrealloc): Define and use size_t
505 instead of long, for compatibility with mmalloc.h.
509 * top.c (line_completion_function): Renamed from
510 symbol_completion_function, takes the line buffer and the
511 point in the line buffer as additional arguments.
512 (readline_line_completion_function): New function, interface
513 between readline and line_completion_function.
515 (complete_command): Use line_completion_function instead of
516 abusing rl_line_buffer. Free completion strings after printing
518 * symtab.c (completion_list_add_name): Recheck for duplicates
519 if we intend to add a modified symbol.
521 * gdbtypes.h (cplus_struct_type): nfn_fields_total no longer
522 includes the number of methods from the baseclasses.
523 * stabsread.c (attach_fn_fields_to_type): No longer add the
524 number of methods from the baseclasses to TYPE_NFN_FIELDS_TOTAL,
525 the baseclass type might not have been completely filled in yet.
526 * symtab.c (total_number_of_methods): New function to compute
527 the total number of methods for a type, including the methods
529 (decode_line_1): Use it instead of TYPE_NFN_FIELDS_TOTAL to
530 allocate the symbol array for find_methods.
532 * stabsread.c (scan_file_globals): Add default case to minimal
533 symbol type switch, to avoid gcc -Wall warnings.
535 * config/rs6000/tm-rs6000.h (INIT_EXTRA_FRAME_INFO):
536 Don't test for zero backchain pointer to recognize a signal
537 handler frame, if read() gets interrupted by a signal, the
538 backchain will be non zero.
539 (SIG_FRAME_FP_OFFSET): Move to here from rs6000-tdep.c,
541 (SIG_FRAME_PC_OFFSET): New definition.
542 (FRAME_SAVED_PC): Return saved pc from sigcontext if this
543 is a signal handler frame.
544 * rs6000-tdep.c (function_frame_info): Do not error out
545 if we can't access the instructions.
547 * config/rs6000/tm-rs6000.h (CONVERT_FROM_FUNC_PTR_ADDR):
548 New definition to get the function address from a function pointer.
549 * valops.c (find_function_addr): Use it when calling a user
550 function through a function pointer.
554 * Makefile.in (MMALLOC_DIR): New definition.
555 (MMALLOC): Use MMALLOC_DIR.
556 (MMALLOC_CFLAGS): Look in MMALLOC_DIR for mmalloc.h.
557 (OPCODES): Remove gratuitous "./".
558 * defs.h (mmalloc.h): Include.
559 (mmalloc, mrealloc, etc): Remove decls.
560 (cplus_demangle, cplus_demangle_opname): Remove decls.
564 * defs.h, gdbtk.c, main.c, top.c: Change sense and name of
565 no_windows variable. Now called use_windows, and defaults to off
570 * coffread.c (coff_symtab_read): If we get the address from
571 target_lookup_symbol, set the section to -2 not SECT_OFF_BSS.
572 (coff_symtab_read): Set value and section of symbol that
573 process_coff_symbol returns.
577 * config/i386/tm-nbsd.h: Enable longjmp support.
581 * valarith.c (value_binop): Take care of ANSI `value preserving'
582 rule, which was not addressed by the previous change.
584 * rs6000-tdep.c (skip_prologue): Handle `mr r31,r1', which is
585 generated by gcc-2.6, as a synonym for `oril r31,r1,0'.
587 * TODO: Remove item about RS/6000 shared libraries.
591 * defs.h, infrun.c (wait_for_inferior), top.c: Call
592 target_wait_hook to allow GUI to handle blocking for inferior. Call
593 call_command_hook in execute_command to provide means for wrapping
594 commands with GUI state change updates.
595 * gdbtk.c (gdb_cmd): Force GUI into idle mode when errors occur.
596 * (gdb_stop): New tcl command to stop the target process.
597 * (x_event, gdbtk_wait): Allow GUI to interrupt gdb out of target
599 * (gdbtk_call_command): Wrapper around command processing to
600 alert GUI of target state changes.
601 * (gdbtk_init): Get the fd of X server for doing async
602 notification of X events (via x_event). Setup new hooks.
603 * gdbtk.tcl: Add scrollbars to assembly and command windows.
604 * Change window foreground & background colors.
605 * Create margin tag for breakpoints in source and assembly windows.
606 * Add new routines to be invoked when target state changes to/from
608 * Add start of expression window.
609 * Change bindings of mouse button 1 in assembly and source window
610 to just set or clear breakpoints when in the margin tag.
611 * Change shape of register window to be more vertical to better
612 reflect it's contents.
614 * Cleanup some code around command window bindings.
616 * infrun.c (wait_for_inferior): Make sure
617 through_sigtramp_breakpoint is non-null before deleting.
621 * config/powerpc/ppc-nw.mt (TDEPFILES): Removed exec.o.
625 * Makefile.in (coffread.o): Depend on target.h.
626 (remote-vx.o): Depend on gdb-stabs.h objfiles.h symfile.h $(bfd_h).
634 * objfiles.c (objfile_relocate): When relocating ->sections, use
635 objfile not symfile_objfile.
637 * symtab.h, minsyms.c (minsyms_sort): New function.
638 * objfiles.c (objfile_relocate): Call it.
640 * remote-vx.c (vx_add_symbols): Call breakpoint_re_set.
642 * objfiles.c, objfiles.h (objfile_to_front): New function.
643 * remote-vx.c (vx_add_symbols): Call it.
645 * coffread.c (coff_symtab_read): Handle common symbols the same
646 way that partial-stab.h does.
650 * hppa-tdep.c: Remove include files a.out.h, ioctl.h, and
651 machine/psl.h. These are host files.
655 * objfiles.h (struct objfile): Fix comment--minimal_symbol_count
656 does *not* include the terminating NULL msymbol.
660 * monitor.c (monitor_load_srec,monitor_make_srec): Add an asrecord
661 loader that reads files using BFD and converts it on the fly.
665 * monitor.c (set_loadtype_command): Fixed so it doesn't core dump.
666 * monitor.c (monitor_load): check the load type and load the file
667 accordingly. Default to gr_load_image().
668 * monitor.c (monitor_load_ascii_srec): Load an ascii file in
669 srecord format by downloading to the monitor.
670 * w89k-rom.c, op50n-rom.c: set supported load types.
674 * Makefile.in (ALLDEPFILES): Remove xcoffexec.c.
675 * Makefile.in: Remove xcoffexec.o rule.
677 * exec.c (exec_file_command): Add comment.
679 Fix data and bss relocation for VxWorks 5.1:
680 * remote-vx.c (vx_add_symbols): New function.
681 (vx_load_command, add_symbol_stub): Call it instead of
683 (vx_wait): Remove comment which was wrong to useless.
684 * remote-vx.c: Reindent much of file.
685 * coffread.c (cs_to_section, find_targ_sec): New functions.
686 (process_coff_symbol): Set SYMBOL_SECTION to result
688 (coff_symtab_read): Call cs_to_section and deal with result
689 rather than assuming sections are in a certain order. Deal with
691 * coffread.c: Remove text_bfd_scnum variable.
695 * corelow.c: Format to standard.
696 (core_close): Use name instead of bfd_filename.
700 * exec.c (map_vmap): Cast return from xmalloc to its proper type,
703 * symfile.c (reread_symbols): Include bfd_errmsg string in error
704 message if bfd_close fails.
705 * exec.c (exec_close), solib.c (clear_solib), corelow.c
706 (core_close), objfiles.c (free_objfile), irix5-nat.c
707 (clear_solib), osfsolib.c (clear_solib), remote-utils.c
708 (gr_load_image): Check for errors from bfd_close.
709 * solib.c (look_for_base), remote-utils.c (gr_load_image),
710 remote-udi.c (download), corelow.c (core_open), symfile.c
711 (symfile_bfd_open), symfile.c (generic_load): Add comment
712 regarding error from bfd_close.
713 * remote-udi.c (download), remote-utils.c (gr_load_image): Add
714 comment about bogus handling of errors from bfd_openr.
715 * exec.c (exec_close): Add comment regarding memory leak and
716 dangling reference to vp->name.
720 * eval.c (evaluate_subexp): Make fnptr a LONGEST instead
721 of using longest_to_int.
723 * infcmd.c (run_stack_dummy): Reinstate set_current_frame call,
724 mips and alpha targets need the real breakpoint pc for
725 creating the breakpoint frame.
727 * stack.c (return_command): Cast return value to the return
728 type of the function from which we return.
729 * values.c (set_return_value): Pass VALUE_CONTENTS unmodified
730 to STORE_RETURN_VALUE.
732 * symtab.c (lookup_symbol): Remove search for `static mangled
733 symbols', the search for `static symbols' already looks for
734 mangled and demangled symbols via lookup_block_symbol.
736 * valarith.c (value_binop): Use ANSI C arithmetic conversions
737 when performing integral evaluations, implement BINOP_EQUAL and
739 (value_equal, value_less): Use value_binop to perform the
740 comparison if both operands have TYPE_CODE_INT.
742 * rs6000-tdep.c (pop_frame): Make sure all registers are valid,
743 as they are written back later. Handle sp restore for frameless
744 functions. Use fdata.nosavedpc instead of fdata.frameless to
745 determine if the pc has been saved.
746 (function_frame_info): Handle `mr r31,r1', which is generated by
747 gcc-2.6, as a synonym for `oril r31,r1,0'.
748 (skip_trampoline_code): Handle shared library trampolines.
749 * xcoffread.c (read_xcoff_symtabs): Record XMC_GL symbols with
750 their real name. Enables setting of breakpoints in shared libraries
751 before the executable is run.
755 * monitor.h, remote-mon.c: Hack up to so the old ROM monitor
756 interface code still works with the new ROM monitor
757 structures. Fake out a couple of fields.
761 * h8500-tdep.c (target_read_sp, target_write_sp, target_read_pc,
762 target_write_pc, target_read_fp, target_write_fp): Rename to
764 (h8500_read_pc, h8500_write_pc): Add pid argument.
765 * config/h8500/tm-h8500.h (TARGET_READ_SP, TARGET_WRITE_SP,
766 TARGET_READ_PC, TARGET_WRITE_PC, TARGET_READ_FP, TARGET_WRITE_FP):
767 Change to match functions above.
771 * NEWS: Add item about if and while.
773 * .gdbinit: Restore `end'; it was not excess. Reindent
774 list-objfiles to make this clear. Comment out all of
775 list-objfiles because old gdb's choke on it.
779 * config/mips/tm-bigmips64.h: Just define TARGET_BYTE_ORDER and
784 * Makefile.in (ANNOTATE_OBS): New definition.
785 (COMMON_OBS): Add exec.o.
786 (annotate.o): Remove extra compile rule.
787 * config/*/*.mh, config/*/*.mt: Remove exec.o from *DEPFILES lists
790 * .gdbinit: Remove excess `end'.
792 * exec.c: Merge in RS6000 support from xcoffexec.c.
793 (symfile.h, objfiles.h, xcoffsolib.h): Include.
794 (vmap): New global variable.
795 (exec_close): Close and free objects in vmap chain.
796 (exec_file_command) [IBM6000_TARGET]: Set up initial vmap.
797 (bfdsec_to_vmap, map_vmap): Moved here from xcoffexec.c.
798 (exec_files_info): Print vmap information.
799 * xcoffexec.c: Remove.
800 * config/rs6000/rs6000.mt, config/rs6000/rs6000lynx.mt
801 (TDEPFILES): Use exec.o instead of xcoffexec.o.
802 * TODO: Remove pertinent items.
806 * partial-stab.h (N_TEXT): Delete GDB_TARGET_IS_HPPA kludge; they
807 are no longer needed as of gcc-2.6.0.
811 * lynx-nat.c (child_wait): Correct handling of byte reversed SPARC
813 (fetch_core_registers): Don't try to fetch a register if
814 regmap maps it to -1.
815 * sparc-tdep.c (sparc_frame_find_saved_regs): Use FRAME_SAVED_I0
816 and FRAME_SAVED_L0 when setting saved_regs_addr. SPARC Lynx
817 stores the registers in a weird order.
821 * blockframe.c (reinit_frame_cache): Reinstate select_frame call
822 if inferior_pid is nonzero.
826 Speed up GDB startup time by not demangling partial symbols.
827 * symfile.h (ADD_PSYMBOL_VT_TO_LIST),
828 symfile.c (add_psymbol_to_list, add_psymbol_addr_to_list):
829 No longer demangle partial symbols.
830 * symtab.c (lookup_symbol, list_symbols): Handle mangled
831 variables, e.g. C++ static members, via the minimal symbols.
833 Handle reordered functions in an objfile, for Irix 5.2 shared
835 * objfiles.h (OBJF_REORDERED): New bit in the objfile flags,
836 set if the functions in an objfile are reordered.
837 * mdebugread.c (parse_partial_symbols): Detect reordered
838 functions in an objfile.
839 * symtab.c (find_pc_psymtab, find_pc_symtab): Use expensive
840 lookup algorithm if the functions in the objfile are reordered.
842 * xcoffexec.c (exec_close): If the current target has a copy
843 of the exec_ops sections, reflect the freeing of the sections
846 * valops.c (call_function_by_hand): Use `sizeof dummy1', not
847 `sizeof dummy', for constructing the call dummy code.
849 * config/sparc/tm-sparc.h: Add PARAMS declarations to all
850 function declarations.
851 * sparc-tdep.c (sparc_pop_frame): Cast result of
852 read_memory_integer to CORE_ADDR when passing it to PC_ADJUST.
854 * irix5-nat.c (enable_break): Set breakpoint at the entry point
855 of the executable, to handle the case where main resides in a
857 * irix5-nat.c (solib_create_inferior_hook): Reset stop_soon_quietly
858 after shared library symbol reading, to get rid of a warning from
859 heuristic_proc_start if the startup code has no symbolic debug info.
861 * breakpoint.h (struct breakpoint): Add new fields language
862 and input_radix, to enable breakpoint resetting with the
863 proper language and radix.
864 * breakpoint.c (set_raw_breakpoint): Initialize them.
865 (breakpoint_re_set_one): Use them when resetting the breakpoint.
866 (breakpoint_re_set): Preserve current language and input_radix
867 across breakpoint_re_set_one calls.
869 * symtab.c (decode_line_1): Do not build a canonical line
870 specification for `*expr' line specifications.
872 * breakpoint.h (bpstat_stop_status): Fix prototype declaration.
876 The point of these changes is to avoid reading the frame pointer
877 and stack pointer during stepping, to speed things up.
878 A. Changes to not select a frame until we need a selected frame:
879 * blockframe.c (flush_cached_frames): Call select_frame (NULL, -1).
880 * infrun.c (wait_for_inferior): Move call to select_frame back to
881 normal_stop. This reverts a change of 13 Apr 94 (it says Jeff
882 Law, but the change was my idea); the only reason for that change
883 was so we could save and restore the selected frame in
884 wait_for_inferior, and now that flush_cached frames clears the
885 selected frame, that should work OK now.
886 B. Changes to not create a current_frame until we need one:
887 * blockframe.c (get_current_frame): If current_frame is NULL, try
888 to create an innermost frame.
889 * sparc-tdep.c (sparc_pop_frame), infcmd.c (run-stack_dummy),
890 infrun.c (wait_for_inferior), thread.c (thread_switch),
891 convex-tdep.c (set_thread_command), a29k-tdep.c (pop_frame),
892 alpha-tdep.c (alpha_pop_frame), convex-xdep.c (core_file_command),
893 h8300-tdep.c (h8300_pop_frame), h8500-tdep.c (h8300_pop_frame),
894 hppa-tdep.c (hppa_pop_frame), i386-tdep.c (i386_pop_frame),
895 i960-tdep.c (pop_frame), m68k-tdep.c
896 (m68k_pop_frame), mips-tdep.c (mips_pop_frame), rs6000-tdep.c
897 (push_dummy_frame, pop_dummy_frame, pop_frame), sh-tdep.c
898 (pop_frame), config/arm/tm-arm.h (POP_FRAME),
899 config/convex/tm-convex.h (POP_FRAME), config/gould/tm-pn.h
900 (POP_FRAME), config/ns32k/tm-merlin.h (POP_FRAME),
901 config/ns32k/tm-umax.h (POP_FRAME), config/tahoe/tm-tahoe.h
902 (POP_FRAME), config/vax/tm-vax.h (POP_FRAME): Don't
903 call create_new_frame.
904 * corelow.c (core_open), altos-xdep.c (core_file_command),
905 arm-xdep.c (core_file_command), gould-xdep.c (core_file_command),
906 m3-nat.c (select_thread), sun386-nat.c (core_file_command),
907 umax-xdep.c (core_file_command): Don't call create_new_frame; do
908 call flush_cached_frames.
909 * blockframe.c (reinit_frame_cache): Don't call create_new_frame
911 C. Changes to get rid of stop_frame_address and instead only
912 fetch the frame pointer when we need it.
913 * breakpoint.c (bpstat_stop_status): Remove argument
914 frame_address; use FRAME_FP (get_current_frame ()).
915 * infrun.c (wait_for_inferior): Don't pass frame pointer to
917 * infrun.c (wait_for_inferior): Use FRAME_FP (get_current_frame
918 ()) instead of stop_frame_address.
919 * infrun.c (save_inferior_status, restore_inferior_status),
920 inferior.h (struct inferior_status): Don't save and restore
922 * inferior.h, infcmd.c, thread.c (thread_switch), m3-nat.c
923 (select_thread): Remove stop_frame_address and uses thereof.
924 D. Same thing for the stack pointer.
925 * infrun.c (wait_for_inferior): Remove stop_sp and replace
926 uses thereof with read_sp ().
927 E. Change to eliminate one nasty little spot where we were
928 wanting to know the frame pointer from before the current step
929 (idea from GDB 3.5, which saved my ass, because my other ideas of
930 how to fix it were very baroque).
931 * infrun.c: Remove prev_frame_address.
932 * infrun.c (wait_for_inferior, step_over_function): Use
933 step_frame_address instead of prev_frame_address.
934 F. Same basic idea for the stack pointer.
935 * inferior.h, infcmd.c: New variable step_sp.
936 * infcmd.c (step_1, until_next_command): Set it.
937 * infrun.c: Remove prev_sp and replace uses by step_sp.
938 * infrun.c (wait_for_inferior): If we get out of the step
939 range, then set step_sp to the current stack pointer before we
944 * top.c (target_byte_order_auto): New static variable.
945 (set_endian): Mention that ``auto'' is permitted.
946 (set_endian_auto): New static function.
947 (show_endian): Change message based on target_byte_order_auto.
948 (set_endian_from_file): New function.
949 (init_main): Add command ``auto'' to endianlist.
950 * exec.c (exec_file_command): Call set_endian_from_file.
951 * defs.h (set_endian_from_file): Declare.
955 * nlm/i386.c (flush_i_cache): New function, does nothing.
956 (frame_to_registers, registers_to_frame, set_step_traps,
957 clear_step_traps, do_status): Make non-static.
961 * config/mips/tm-mips.h (GDB_TARGET_IS_MIPS64): If not already
962 defined, define as 0.
963 (FIX_CALL_DUMMY): Rewrite to remove presumption that host and
965 * config/mips/tm-idt.h (TARGET_BYTE_ORDER_SELECTABLE): Define.
966 * config/mips/tm-idtl.h (TARGET_BYTE_ORDER_SELECTABLE): Define.
967 * config/mips/tm-idt64.h (TARGET_BYTE_ORDER_SELECTABLE): Define.
968 (BREAKPOINT): Remove definition.
969 * config/mips/tm-idtl64.h (TARGET_BYTE_ORDER_SELECTABLE): Define.
970 (BREAKPOINT): Remove definition.
971 * config/mips/tm-mips64.h (GDB_TARGET_IS_MIPS64): Define with a
972 value of 1, rather than without a value.
973 * config/mips/tm-bigmips64.h (GDB_TARGET_IS_MIPS64): Likewise.
974 * mips-tdep.c: Rewrite uses of GDB_TARGET_IS_MIPS64 to switch at
975 run time rather than at compile time.
977 * remote-mips.c (break_insn): Remove.
978 (BREAK_INSN, BREAK_INSN_SIZE): Define.
979 (mips_insert_breakpoint): Use BREAK_INSN, not break_insn.
980 (mips_remove_breakpoint): Likewise.
982 * defs.h: If TARGET_BYTE_ORDER_SELECTABLE is defined by tm.h,
983 define TARGET_BYTE_ORDER as target_byte_order, and declare
984 target_byte_order as an extern int, and define BITS_BIG_ENDIAN as
985 a test of TARGET_BYTE_ORDER.
986 * top.c: Several additions if TARGET_BYTE_ORDER_SELECTABLE is
988 (endianlist, target_byte_order): New variables.
989 (set_endian, set_endian_big, set_endian_little): New functions.
990 (show_endian): New function.
991 (init_cmd_lists): Initialize endianlist.
992 (init_main): Add commands ``set endian big'', ``set endian
993 little'', and ``show endian''.
994 * a29k-pinsn.c: Rewrite uses of TARGET_BYTE_ORDER and
995 BITS_BIG_ENDIAN to switch at run time rather than at compile time.
996 * coffread.c, dwarfread.c, findvar.c, mips-tdep.c: Likewise.
997 * remote-os9k.c, stabsread.c, valarith.c, valprint.c: Likewise.
998 * values.c: Likewise.
1002 * nlm/configure.in: ${gdb_host_cpu} defaults to ${host_cpu}.
1004 * nlm/Makefile.in: Get rid of NWINCLUDES.
1005 * config/{alpha,powerpc}/gdbserve.mt: Remove NWINCLUDES.
1006 User should now configure with --with-headers.
1010 * gdbserver/server.c (main): Silently accept all unrecognized
1011 requests and send back a zero length acknowledge. That is what
1012 *-stub.c do and is what remote.c expects.
1016 * corelow.c (core_open): Copy the modified to_sections_end
1017 vector from current_target to core_ops too.
1019 * gdbserver/server.c (main): Silently accept query requests
1020 and send back a zero length acknowledge.
1024 * nlm/Makefile.in: Don't define NWINCLUDES.
1025 * config/{alpha,powerpc}/gdbserve.mt: define NWINCLUDES.
1029 * gdbserver/low-lynx.c (create_inferior): Pass all 4 args to ptrace.
1033 * lynx-nat.c (child_wait): Use status.w_status, not status, in
1034 arithmetic. status is a `union wait'.
1036 * config/nm-lynx.h (PTRACE_ARG3_TYPE): Define to int, not char *.
1038 * lynx-nat.c (child_wait): Pass fourth argument to ptrace.
1042 * xcoffread.c (read_xcoff_symtab): Fix comment for yesterday's change.
1046 * coffread.c (complete_symtab): If last_source_file is set upon
1051 * xcoffread.c (read_xcoff_symtab, case C_FILE):
1052 Set main_aux before using it.
1054 * xcoffexec.c (exec_close): If quitting, don't call clear_symtab_users.
1056 * xcoffread.c (read_xcoff_symtab): Process XTY_LD symbols we were
1057 ignoring before. But continue to ignore XMC_DS.
1061 * hpread.c (hpread_read_array_type): Do not change the type code
1062 to TYPE_CODE_PTR for "char foo[]". Just make it a zero length
1065 * hpread.c (hpread_type_translate): Handle T_UNS_LONG types with
1066 lengths other than 32bits (HP C 9.69 represents an "unsigned char"
1067 as an T_UNS_LONG with length 8).
1069 * hpread.c (struct hpread_symfile_info): Delete have_module field
1070 and accessor macro. Minor indentation fix.
1071 (hpread_build_psymtabs, case K_MODULE): Only start a new psymtab
1072 and reset state variables have_name & texthigh if pst is NULL.
1073 (hpread_build_psymtabs, case K_SRCFILE): Only reset the name of a
1074 partial symbol table if pst is non-NULL. If pst is NULL, then
1075 start a new psymtab.
1076 (hpread_process_one_debug_symbol, case K_MODULE): Now empty.
1077 (hpread_process_one_debug_symbol, case K_SRCFILE): Simplify and
1078 correct handling of subfiles.
1082 * defs.h (misc_command_type): Remove trailing comma from
1087 * hppa-tdep.c (frame_saved_pc): Fix thinko in code to dig saved pc
1088 out of an interrupt frame.
1092 * infcmd.c (do_registers_info) [INVALID_FLOAT]: Only use if
1094 * values.c (unpack_double) [INVALID_FLOAT]: Ditto.
1095 * mips-tdep.c (mips_print_register): Don't test float validity.
1096 * config/a29k/tm-a29k.h, config/alpha/tm-alpha.h,
1097 config/arm/tm-arm.h, config/convex/tm-convex.h,
1098 config/h8300/tm-h8300.h, config/h8500/tm-h8500.h,
1099 config/i386/tm-i386v.h, config/i386/tm-sun386.h,
1100 config/i960/tm-i960.h, config/m68k/tm-m68k.h,
1101 config/m88k/tm-m88k.h, config/mips/tm-mips.h,
1102 config/ns32k/tm-merlin.h, config/ns32k/tm-nbsd.h,
1103 config/ns32k/tm-ns32km3.h, config/ns32k/tm-umax.h,
1104 config/pa/tm-hppa.h, config/pyr/tm-pyr.h,
1105 config/rs6000/tm-rs6000.h, config/sh/tm-sh.h,
1106 config/sparc/tm-sparc.h, config/z8k/tm-z8k.h (INVALID_FLOAT):
1111 * TODO: Remove item about adding general multi-threaded stuff;
1113 Remove item about specifying arbitrary locations of stack frames
1114 (this works on some machines).
1115 Remove item about debugging functions without a frame pointer
1116 (this works on some machines).
1117 Remove item about re-writing macros which handle frame chaining and
1118 frameless functions. They have been re-written at least once
1119 since that item was written.
1120 Remove item about gdb catching SIGINT when attached; this is done.
1121 Remove item about having list_command not read symbols--why bother?
1125 * TODO: Append contents of Projects file.
1130 * corelow.c (add_solib_stub): Remove copying of to_sections,
1131 pass current_target to SOLIB_ADD. The Sep 10 change failed
1132 if SOLIB_ADD errored out, or if SOLIB_ADD was trying to access
1134 * corelow.c (core_open): After reading the shared libraries,
1135 copy the modified to_sections vector from current_target to
1136 core_ops, so that core_close can free it later.
1137 * config/rs6000/nm-rs6000.h, rs6000-nat.c (xcoff_relocate_core):
1138 Pass down target parameter from SOLIB_ADD and use it instead of
1139 directly accessing core_ops.
1143 * solib.c: *BSD systems need <a.out.h> to be included before
1146 * i386b-nat.c: Add i386_float_info(), etc.
1147 * config/i386/nm-nbsd.h: #define FLOAT_INFO.
1149 * config/nm-nbsd.h: New file, for generic NetBSD native support.
1150 * config/i386/nm-nbsd.h: Use it.
1151 * config/sparc/nm-nbsd.h: Use it.
1152 * config/ns32k/nm-nbsd.h: Use it.
1154 * configure.in (i386-*-netbsd): Use config/i386/nbsd.m[ht].
1155 (ns32k-*-netbsd): Use config/ns32k/nbsd.m[ht].
1156 * config/i386/{nbsd.mh,nbsd.mt,nm-nbsd.h,tm-nbsd.h,xm-nbsd.h}:
1157 New files, support for NetBSD/i386.
1158 * config/ns32k/{nbsd.mh,nbsd.mh,nm-nbsd.h,tm-nbsd.h,xm-nbsd.h}:
1159 New files, support for NetBSD/ns32k.
1163 * .gdbinit: Add list-objfiles command.
1165 * TODO: Reword item regarding NO_STD_REGS.
1167 * coffread.c (record_minimal_symbol, coff_read_enum_type,
1168 coff_read_struct_type): Allocate on symbol_obstack, not directly
1169 via malloc/savestring.
1173 * TODO: Add more items.
1174 * tests: Remove the directory and all of its (obsolete) contents.
1178 * coffread.c (init_stringtab): When copying length to stringtab,
1179 use target format, not host format, since that is what the rest of
1184 * Makefile.in: Removed prelude.o, i386-nlmstub.o, nlmstub.o,
1185 nlmstub.nlm, and nlmstub targets. Removed NWSOURCE and
1186 NWINCLUDES definitions.
1187 * i386-nlmstub.c: Removed.
1191 * dbxread.c (read_dbx_dynamic_symtab): Cast bfd_asymbol_name to
1192 char * (from const char *) before assigning. Don't save string we
1193 pass to record_minimal_symbol (it already saves it).
1197 * gdbtk.tcl: Let ^U delete lines in the command window.
1201 * cp-valprint.c (static_field_print): New variable, controls
1202 printing of static members.
1203 (_initialize_cp_valprint): New print set subcommand
1204 "static-members". Turn on printing of static members by default.
1205 (cp_print_value_fields): Print static members if necessary.
1207 * solib.c: Remove inclusion of libelf.h and elf/mips.h.
1208 (elf_locate_base): Use only standard BFD functions to collect
1209 information about the .dynamic section. Check for DT_MIPS_RLD_MAP
1210 tag only if it got defined via the inclusion of <link.h>.
1212 * f-exp.y: Write block for OP_VAR_VALUE.
1213 * f-valprint.c (info_common_command): Handle `info common'
1214 without an argument correctly.
1216 * c-typeprint.c (c_type_print_base): Handle template constructors.
1217 * symtab.c (gdb_mangle_name): Handle template method mangling,
1218 get rid of GCC_MANGLE_BUG code, which only applied to gcc-2.2.2.
1222 * gdbtypes.h (TYPE_INDEX_TYPE): New macro.
1223 * ch-typeprint.c, ch-valprint.c: Use TYPE_INDEX_TYPE.
1224 * ch-valprint.c (chill_val_print): Pass index type directly
1225 (instead of its TYPE_TARGET_TYPE) to print_type_scalar.
1226 * stabsread.c (read_type): Don't set TYPE_FLAG_TARGET_STUB
1227 if the index type is a stub.
1231 * config/i386/{i386aix.mh, i386bsd.mh, i386lynx.mh, i386sco.mh,
1232 i386sco4.mh, i386sol2.mh, i386v.mh, i386v32.mh, i386v4.mh,
1233 ncr3000.mh, ptx.mh, ptx4.mh}, config/m68k/{altos.mh, apollo68v.mh,
1234 delta68.mh, dpx2.mh, hp300bsd.mh, hp300hpux.mh, m68klynx.mh,
1235 m68kv4.mh}, config/m88k/{delta88.mh, delta88v4.mh},
1236 config/mips/riscos.mh, config/pa/hppahpux.mh,
1237 config/rs6000/rs6000lynx.mh, config/sparc/{sparclynx.mh,
1238 sun4sol2.mh}, config/tahoe/tahoe.mh, config/vax/{vaxbsd.mh,
1239 vaxult.mh, vaxult2.mh} (REGEX, REGEX1, SYSV_DEFINE): No longer
1241 * config/i386/i386sco4.mh (MUNCH_DEFINE): No longer define.
1245 * defs.h (QUIT): Call interactive_hook to allow GUI to interrupt.
1246 Also, add decl for symtab_to_filename.
1247 * gdbtk.c: Replace calls to full_filename with symtab_to_filename.
1248 * gdbtk.tcl: New routine pc_to_line replaces in line code. New
1249 routine decr replaces in line code.
1250 * (create_file_win): Use catch to handle open failures more
1251 elegantly. Also, create special window to display file open
1252 failure message. Move opening of file prior to creation of text
1254 * (create_asm_win): Add PC as argument. We now base disassembly
1255 on PC instead of function name, since function names can be
1256 ambiguous (usually seen with shared libs). Also, use catch to
1257 simplify code where we don't care about failures.
1258 * source.c (symtab_to_filename): New. Returns the file
1259 associated with a symtab.
1260 * top.c: Define interactive_hook. Called during QUIT to animate
1265 * stabsread.c (read_type): Handle stub types for bitstrings.
1266 * stabsread.c (read_array_type): Check for stub domain type
1267 using TYPE_FLAG_STUB, not its length.
1268 * gdbtypes.c (create_set_type): Handle a stub domain type.
1270 * ch-exp.y: Get rid of some extra non-terminals, and move
1271 their rules into primitive_value.
1272 * parser-defs.h: Add comment about unary postfix operators.
1273 * ch-lang.c (chill_op_print_tab): Add '->', postfix and prefix.
1274 * expprint.c (print_subexp): Recognize unary postfix operator.
1278 * remote-hms.c: use remote_debug instead of hms_silent toggle.
1279 Add warnings about depreciation of `snoop' cmd.
1283 * remote-hms.c (hms_read_inferior_memory): Cope when
1284 target sends both \r and \n.
1288 * remote-mips.c (mips_error): Place NORETURN macro correctly.
1289 * TODO: Add item about START_INFERIOR_TRAPS_EXPECTED.
1293 * xcoffread.c (read_xcoff_symtab): Fix obsolete comment about
1294 mst_solib_trampoline.
1296 * f-valprint.c (f_val_print): Change cast of valaddr from
1297 CORE_ADDR * to char **, since that is how it is used.
1299 * dbxread.c (read_dbx_dynamic_symtab): Save copy of symbol names
1300 using obsavestring, and pass that to prim_record_minimal_symbol.
1301 Having the objfile point to bfd_asymbol_name directly doesn't work
1302 if we save and restore a mapped symbol file.
1306 * gdbtk.tcl: Add ref counts to breakpoint tags.
1307 * Put quotes around function name in disassemble command to better
1308 handle assembler names containing `.'.
1309 * Make pclist element 0 be filler to avoid off-by-one problem with
1311 * Set names of top-level windows.
1312 * Add register display window.
1313 * Add PC to label of assembly window.
1317 * w89k-rom.c, op50-rom.c, monitor.c, config/pa/hppapro.mt: New files
1318 to add a generic ROM monitor interface, and support file for the
1319 WinBond W89K and the Oki OP50N PA based target boards.
1323 * gdbtk.c (gdbtk_flush gdbtk_fputs): Buffer up output to make
1324 disassembly more efficient.
1325 * (breakpoint_notify): Include pc in gdbtk_tcl_breakpoint
1327 * (gdb_loc): Include pc in return value. Also, return function
1328 name if arg was specified.
1329 * (gdb_cmd_stub): Call gdb_flush to drain internal GDB buffers
1330 after command completes.
1331 * (gdbtk_init): Improve error handling.
1333 * gdbtk.tcl: Add lots of comments. Clean up code.
1334 * (gdbtk_tcl_fputs): Make output window redirectable.
1335 * Add assembly window, and breapoint support.
1336 * Make button 1 in margin toggle breakpoints.
1337 * Use stippling to indicate breakpoint disabling.
1341 * config/pa/tm-hppa.h (REGISTER_NAMES): Use r26-r23 for arg0-arg3.
1345 * irix5-nat.c, osfsolib.c, solib.c (solib_add): Simplify last
1346 change by replacing `symbols_added' with `so_last'.
1347 * mdebugread.c (parse_external, parse_partial_symbols): Ignore
1348 global common symbols, they will be resolved by the runtime loader.
1349 * mdebugread.c (parse_symbol, parse_partial_symbols, cross_ref):
1350 Handle scSCommon like scCommon symbols.
1354 * corelow.c (add_solib_stub): Copy to_sections changes from
1355 core_ops to current_target after adding the shared libraries.
1356 * partial-stab.h (N_EXCL), dbxread.c (add_old_header_file,
1357 find_corresponding_bincl_psymtab): Change `repeated header not seen'
1358 error to a complaint, simplify complaint.
1359 * procfs.c (signalname, errnoname): Make `name' const.
1360 * symfile.c (reread_symbols): Use filename from old BFD to
1362 * values.c (record_latest_value): Don't record value in the
1363 history chain until we are sure there won't be an error.
1367 * nlm/Makefile.in: remove MMALLOC, READLINE, TERMCAP, and other
1370 * config/i386/gdbserve.mt: New file, defs for i386 nlm stub.
1374 * remote.c (fromhex): Make error more explicit.
1375 (read_frame): Don't print bad checksum information unless
1376 remote_debugging. Don't use repeat count unless it's > 0.
1377 * remote-e7000.c (expect): When echoing, ignore multiple newlines.
1378 (e7000_insert_breakpoint, e7000_remove_breakpoint, target_ops):
1379 Optionally cope with BC style breakpoints.
1380 (e7000_command): After command send directly to the E7000 mark
1381 registers as changed.
1382 (why_stop, e7000_wait: Understand BC style stop condition.
1383 * sh-tdep.c (sh_skip_prologue): Understand more complicated
1384 sequences. (frame_find_saved_regs): Likewise.
1385 * config/h8500/tm-h8500.h (target_write_pc, TARGET_WRITE_PC):
1387 * config/i386/xm-go32.h (GDBINIT_FILENAME): Set to gdb.ini.
1388 (more work here to come)
1389 * config/sh/tm-sh.h (EXTRA_FRAME_INFO): Add f_offset and leaf_function
1394 * sparclite/Makefile.in: Assorted stuff needed for eload.
1396 * sparclite/eload.c: Merge in command line argument parsing and
1397 error message handling improvements orignally made to aload.c.
1401 * defs.h (enum misc_command_type, command_control_type): Enums
1402 for describing the command and control types.
1403 (struct command_line): Add new fields to keep track of the command
1404 type and body associated with the command.
1405 * top.c: Include value.h. Delete whitespace at the end of lines.
1406 (build_command_line, get_command_line): New functions.
1407 (execute_control_command, while_command, if_command): Likewise.
1408 (realloc_body_list, read_next_line): Likewise.
1409 (recurse_read_control_structure): Likewise.
1410 (execute_user_command): Call execute_control_command.
1411 (read_command_lines): Simplify by calling read_next_line, call
1412 read_control_structure for "if" and "while" commands.
1413 (free_command_lines): Free new fields in the command structure.
1414 (define_command): Reset control_level to zero.
1415 (init_main): Install command handlers for "if" and "while" commands.
1419 * c-typeprint.c (c_type_print_varspec_prefix,
1420 c_type_print_varspec_suffix): Add cases for Fortran type codes.
1421 * eval.c (evaluate_subexp): For OP_ARRAY expressions in Fortran,
1422 call f77_value_literal_string instead.
1423 * f_exp.y: Include <string.h>, move include of parser-defs.h.
1424 (parse_number): Translate 'd' floats to 'e' so atof() works.
1425 (yylex): Remove unused variables.
1426 * f-lang.c: Include <string.h>.
1427 (get_bf_for_fcn): Remove unused variable.
1428 * f-typeprint.c (f_type_print_varspec_prefix,
1429 f_type_print_varspec_suffix): Remove unused
1430 variables, add cases to switch statements.
1431 (f_type_print_base): Remove unused variables.
1432 * f-valprint.c (gdbcore.h, command.h): Include.
1433 (f77_get_dynamic_lowerbound, f77_get_dynamic_upperbound):
1434 Call read_memory_integer with correct number of arguments.
1435 (f77_get_dynamic_upperbound): Call f77_get_dynamic_lowerbound
1436 with correct argument type.
1437 (f77_print_array): Removed unused array array_size_array.
1438 (f_val_print): Don't use a CORE_ADDR as a char *.
1439 * valops.c (value_cast): Handle COMPLEX and BOOL types.
1440 (value_assign): Handle Fortran literal string and complex values.
1441 (f77_cast_into_complex, f77_assign_from_literal_string,
1442 f77_assign_from_literal_complex): New functions.
1446 * ch-typeprint.c (chill_type_print_base): Make TYPE_CODE_RANGE
1451 * i960-tdep.c (signal.h): Don't include.
1453 * cxux-nat.c (target_is_m88110): Remove definition.
1455 * configure.in (config/nm-empty.h): If cross only, use instead
1456 of config/nm-trash.h.
1457 * config/nm-trash.h: Remove.
1458 * config/nm-empty.h: New file.
1459 * config/i386/nm-m3.h: New file, includes config/nm-m3.h.
1460 * config/mips/nm-m3.h: New file, includes config/nm-m3.h.
1461 * config/m68k/nm-sysv4.h: New file, includes config/nm-sysv4.h.
1462 * config/mips/nm-sysv4.h: New file, includes config/nm-sysv4.h.
1463 * config/sparc/nm-sysv4.h: New file, includes config/nm-sysv4.h.
1467 * configure.in: Don't symlink to gdbtk.tcl if it's already there.
1471 * configure.in: No longer look for nm, tm, and xm headers in
1472 config/<header>; they are always in config/<cpu>/<header>.
1476 * objfiles.c (allocate_objfile): Add the newly-created objfile to
1477 the end of the list of objfiles, instead of at the beginning.
1479 * xcoffread.c (allocate_include_entry): New function, abstracted
1480 from code in record_include_begin.
1481 (record_include_begin, record_include_end): Call it.
1483 * blockframe.c (reinit_frame_cache): Test inferior_pid instead of
1484 target_has_stack to decide whether to create a real stack frame
1487 * coffread.c (process_coff_symbol) [CXUX_TARGET]: Ignore vendor
1489 * config/m88k/tm-cxux.h (CXUX_TARGET): Define.
1491 * h8300-tdep.c: Include "dis-asm.h" instead of <dis-asm.h>.
1495 * config/sparc/tm-nbsd.h: Add #defines to map NetBSD struct and
1496 field names into what is expected by sparc-nat.c.
1500 * c-typeprint.c (c_typedef_print): Add missing Chill support.
1504 * rs6000-pinsn.c (print_insn): Use powerpc disassembler when
1506 * config/powerpc/tm-ppc-nw.h: Define GDB_TARGET_POWERPC.
1508 * config/i386/i386lynx.mh, config/m68k/m68klynx.mh,
1509 config/rs6000/rs6000lynx.mh, config/sparc/sparclynx.mh: Enable
1512 * nlm/Makefile.in: Get rid of NWSOURCE.
1513 * nlm/alpha-io.S (inVti, outVti): Remove extraneous ldha's.
1514 * nlm/gdbserve.o: Add dummy __main routine.
1515 * nlm/gdbserve.def: Turn on debug.
1519 * config/xm-nbsd.h: Don't define SET_STACK_LIMIT_HUGE; it is obsolete.
1523 * config/tm-nbsd.h: New file, support for all NetBSD targets.
1524 * config/xm-nbsd.h: fix typo.
1525 * config/sparc/{nm,tm,xm}-nbsd.h: New files, renamed from
1526 {nm,tm,xm}-sparcnbsd.h to conform to prefered file naming
1528 * configure.in: (sparc-*-netbsd): use config/sparc/nbsd.m[ht].
1532 * remote-udi.c (udi_read_inferior_memory,udi_write_inferior_memory):
1533 change typeo in error msg (`inferrior' -> `inferior').
1537 * inflow.c (set_sigint_trap, clear_sigint_trap): Check for
1538 attach_flag (this check was performed by the callers). Also check
1539 inferior_thisrun_terminal.
1540 * inftarg.c (child_wait), lynx-nat.c (child_wait),
1541 procfs.c (wait_fd), symm-nat.c (child_wait): Don't check
1542 attach_flag in deciding whether to call set_sigint_trap and
1545 * value.h (struct value): Change literal_data from PTR to char *,
1546 since that is the way it is used.
1550 * somread.c (som_symfile_read): Force unwinds to be re-read after
1551 reading in a new partial symbol table.
1555 * config/h8500/tm-8500.h (DONT_USE_REMOTE): Remove definition,
1556 an obsolete conditional.
1557 * config/pa/tm-hppa.h (BREAKPOINT) [KERNELDEBUG]: Remove use,
1558 an obsolete conditional.
1559 * config/rs6000/rs6000.mh, config/rs6000/rs6000.mt: Clean up
1564 * Makefile.in (ns32k-opcode.h): Remove reference.
1565 (ns32k-pinsn.o): Update dependencies.
1566 * ns32k-opcode.h: Remove file.
1567 * ns32k-pinsn.c (print_insn): Call version in libopcodes, remove
1568 all other code in this file.
1572 * nlm/configure.in: Stop using cpu.c. Put it in TDEPFILES instead.
1573 * config/alpha/gdbserve.mt (TDEPFILES): Remove alpha-patch.o.
1575 * nlm/Makefile.in: Add rule for .S.o.
1576 * nlm/aio.h: Protect from multiple inclusions.
1577 * nlm/alpha-io.S: Remove everything we don't need.
1578 * nlm/{alpha-patch.c, alpha-patch.h, alpha-uart.c, alpha-uart.h}:
1579 Remove, no longer needed.
1580 * nlm/alpha.c: Merge in lots of stuff from previous files.
1581 * nlm/alpha.h: Don't #include alpha-patch.h. Make
1582 breakpoint_insn extern.
1583 * Move stuff from alpha-patch.h into here.
1585 * config/alpha/gdbserve.mt (TDEPFILES): Get rid of alpha-uart.o.
1589 * annotate.c (annotate_starting): Flush output.
1593 * symfile.c (symbol_file_add): Move reinit_frame_cache call to
1594 the callers of symbol_file_add. Gets rid of heuristic fence-post
1595 warnings on mips and alpha targets when the PC resides in a shared
1596 library which is not yet read in.
1597 * coff-solib.c (coff_solib_add), cxux-nat.c (add_shared_symbol_files),
1598 irix5-nat.c (solib_add), osfsolib.c (solib_add),
1599 remote-vx.c (vx_open), solib.c (solib_add):
1600 Add call to reinit_frame_cache after all shared libraries are read in.
1601 * remote-udi.c (udi_load), remote-vx.c (vx_load_command),
1602 symfile.c (symbol_file_command, add_symbol_file_command):
1603 Add call to reinit_frame_cache after symbol_file_add.
1607 * config/xm-nbsd.h: New file, support for all NetBSD ports.
1608 * config/sparc/{nm-sparcnbsd.h,tm-sparcnbsd.h,xm-sparcnbsd.h,
1609 sparcnbsd.mh,sparcnbsd.mt}: New files, support for NetBSD/sparc.
1610 * configure.in: Add sparc-*-netbsd target.
1614 * remote-vx.c (vx_attach): Interpret the command argument as an
1619 * configure.in: Change i[34]86 to i[345]86.
1620 * nlm/configure.in: Likewise.
1621 * gdbserver/configure.in: Likewise.
1625 * configure.in (i386-*-netware): Automatically configure nlm
1630 * nlm/gdbserve.c: conditionalize header file inclusion for either
1631 NetWare 4.0 or PIN targets.
1632 * nlm/i386.c: include appropriate header files.
1633 * nlm/prelude.c: define TERMINATE_BY_UNLOAD for NetWare 4.0
1638 * nlm/ppc.c (set_step_traps clear_step_traps): Cleanups.
1639 * nlm/gdbserve.def: Autoload clib.
1643 * breakpoint.c (condition_command): Call breakpoints_changed.
1645 * gdbtypes.h: Declare f77_create_literal_string_type and
1646 f77_create_literal_complex_type.
1647 * valops.c (f77_value_literal_string, f77_value_substring,
1648 f77_value_literal_complex): Use xmalloc not malloc.
1649 * valops.c (f77_value_literal_string, f77_value_substring):
1650 Make addr char * not CORE_ADDR.
1651 * value.h (struct value): Add new field literal_data of aligner union.
1652 (VALUE_LITERAL_DATA): Use it.
1653 * f-lang.h: Declare find_common_for_function.
1654 * value.h, valops.c: Split VALUE_SUBSTRING_START into memaddr and
1655 myaddr fields of a union. Don't overload it with the frame field
1656 (not sure this is necessary; I'm not sure what lval_* codes
1657 VALUE_SUBSTRING_* can be used with).
1661 * config/a29k/{a29k-kern.mt,a29k-udi.mt,a29k.mt,ultra3.mh,
1662 ultra3.mt}: Clean up comments, remove no-longer-used definitions.
1664 * rs6000-nat.c: Include libbfd.h again, needed until reference
1665 to bfd_cache_lookup is cleaned out.
1667 * config/i386/linux.mh (XM_CLIBS): Add -lm.
1671 Work to reduce the interrupts-off duration when running in DOS.
1672 * ser-go32.c: (dos_async_ready): See if anything is in the buffer.
1673 (dos_async_rx): rewrite to unpack as many characters from the
1674 asynctsr as possible into a local buffer.
1678 Initial Fortran language support, adapted from work by Farooq Butt
1680 * Makefile.in: Add Fortran-related files and dependencies.
1681 * defs.h (language_fortran): New language enum.
1682 * language.h (_LANG_fortran): Define.
1683 (MAX_FORTRAN_DIMS): Define.
1684 * expression.h: Reformat to standard.
1685 (MULTI_F77_SUBSCRIPT, OP_F77_UNDETERMINED_ARGLIST,
1686 OP_F77_LITERAL_COMPLEX, OP_F77_SUBSTR): New expression opcodes.
1687 * gdbtypes.h (TYPE_CODE_COMPLEX, TYPE_CODE_LITERAL_COMPLEX,
1688 TYPE_CODE_LITERAL_STRING): New type codes.
1689 (type): New fields upper_bound_type and lower_bound_type.
1690 (TYPE_ARRAY_UPPER_BOUND_TYPE, TYPE_ARRAY_LOWER_BOUND_TYPE,
1691 TYPE_ARRAY_UPPER_BOUND_VALUE, TYPE_ARRAY_LOWER_BOUND_VALUE): New
1693 (builtin_type_f_character, etc): Declare.
1694 * value.h (VALUE_LITERAL_DATA, VALUE_SUBSTRING_START): Define.
1695 * f-exp.y: New file, Fortran expression grammar.
1696 * f-lang.c: New file, Fortran language support functions.
1697 * f-lang.h: New file, Fortran language support declarations.
1698 * f-typeprint.c: New file, Fortran type printing.
1699 * f-valprint.c: New file, Fortran value printing.
1700 * eval.c (evaluate_subexp): Add code for new expression opcodes,
1701 fix wording of error message.
1702 * gdbtypes.c (f77_create_literal_complex_type,
1703 f77_create_literal_string_type): New functions.
1704 * language.c (set_language_command): Add Fortran info.
1705 (calc_f77_array_dims): New function.
1706 * parse.c (length_of_subexp, prefixify_subexp): Add cases for new
1708 * symfile.c (deduce_language_from_filename): Recognize .f and .F
1709 as Fortran source files.
1710 * valops.c (f77_value_literal_string, f77_value_substring,
1711 f77_value_literal_complex): New functions.
1715 * c-typeprint.c (c_print_type): Assume demangled arguments
1716 if a '(' is found in varstring, looking for ')' at the end of
1717 varstring did fail with demangled const member functions, which
1718 have a trailing `const'.
1719 * remote.c (get_offsets, putpkt): Change to `char' buffers,
1720 to avoid errors when compiling with DEC c89.
1721 (remote_wait): Cast to `char *' before passing buffer to
1722 fputs_filtered, to avoid errors when compiling with DEC c89.
1723 (remote_wait): Do not return inferior_pid by default, this
1724 statement is never reached, which causes warnings from some
1726 * stabsread.c (scan_file_globals): Ignore static minimal symbols.
1727 * symfile.c (load_command): If called with no argument, try
1728 to get the filename from the executable file.
1729 (generic_load): Remove check for NULL filename, it is done
1730 in load_command now.
1734 * Makefile.in (ALLDEPFILES): Add hpread.c.
1735 (hpread.o): Add dependencies.
1737 * somread.c: Do not include "aout/aout64.h". SOM has nothing to
1739 (BYTES_IN_WORD): Delete.
1740 (som_symfile_read): Call hpread_build_psymtabs to build any
1741 minimal symbols based on the HP C native debug symbols.
1742 (som_symfile_finish): Call hpread_symfile_finish.
1743 (som_symfile_init): Call hpread_symfile_init.
1744 * config/pa/tm-hppa.h (HPREAD_ADJUST_STACK_ADDRESS): Define.
1745 * hppa-tdep.c (hpread_adjust_stack_address): New function.
1747 * config/pa/hppabsd.mh (NATDEPFILES): Add hpread.o
1748 * config/pa/hppahpux.mh (NATDEPFILES): Likewise.
1749 * hpread.c: New file.
1753 * hppa-tdep.c (skip_trampoline_code): Revert incorrect change
1754 from June 2, 1994 (what was I thinking?!?). Fix it right this
1759 * nlm/i386.c, nlm/i386.h: New files that contain i386 specific code.
1763 * README: Grammar improvements, clarifications, updates.
1767 * Makefile.in (TARGET_FLAGS_TO_PASS): Pass down LD_FOR_TARGET and
1768 NLMCONV_FOR_TARGET. (SUBDIRS): Add nlm target.
1769 * configure.in (powerpc-*-netware*): Automatically configure nlm
1771 * nlm/Makefile.in: Add {CC NLMCONV LD}_FOR_TARGET. Remove alpha
1772 specific stuff. Make things more configurable.
1773 * nlm/configure.in: Add powerpc-*-netware* target. Use
1774 gdbserve.mt/cpu.c/cpu.h for target stuff. Get rid of tm/xm/nm.h
1776 * nlm/gdbserve.c: Move Alpha specific stuff into other files.
1777 Remove lots of architecture-specific stuff.
1778 * nlm/gdbserve.def: Add new imports.
1779 * nlm/ppc.c, nlm/ppc.h: New files that contain PowerPC specific code.
1780 * nlm/prelude.c: Don't include libhooks.h, get rid of call to
1782 * nlm/prelude.o: What was this doing here?
1783 * config/alpha/gdbserve.mt: Defs for alpha nlm stub.
1784 * config/powerpc/gdbserve.mt: Defs for PowerPC nlm stub.
1785 * config/powerpc/ppc-nw.mt: Defs for PowerPC target for GDB.
1786 * config/powerpc/tm-ppc-nw.h: Ditto.
1788 * nlmstub.def: New file, contains imports for 386 nlm stub.
1792 * remote-pa.c: New file for HPPA embedded support. Currently it's
1794 * config/pa/hppabsd.mt,hppahpux.mt,hppaosf.mt: User remote-pa.c.
1798 * config/m68k/tm-delta68.h (EXTRACT_RETURN_VALUE,
1799 STORE_RETURN_VALUE): Define to use %a0 for pointers.
1803 * remote-mips.c: Remove unused declaration of mips_load.
1807 * coffread.c: General cleanup, and support for section offsets.
1808 (time.h, sys/types.h, libbfd.h): Don't include.
1809 (cur_src_start_addr, cur_src_end_addr): Rename to
1810 current_source_start_addr, current_source_end_addr.
1811 (nlist_stream_global): Remove.
1812 (nlist_bfd_global): New global variable.
1813 (coff_symfile_read): Remove code that gets and uses fileno()
1815 (read_coff_symtab, enter_linenos, process_coff_symbol): Add
1816 section_offsets parameter, add text/data section offset to
1817 appropriate symbols' values.
1818 (read_one_sym): Use bfd_read instead of fread.
1819 (init_stringtab, init_lineno): Change first parameter to a bfd,
1820 use bfd routines instead of raw I/O.
1824 * symtab.c (decode_line_1): If funfirstline and we get a
1825 non-LOC_BLOCK symbol (e.g. variable or type), then error().
1827 * Makefile.in (TARFILES, NONSRC, SFILES_STAND, SFILES_KGDB):
1829 (TAGFILES_NO_SRCDIR): Remove ALLPARAM.
1830 (HFILES_NO_SRCDIR): Remove all files in config sub-directory.
1831 (TAGS): Also pass result of find on config sub-directory to etags.
1832 (ALLPARAM): Remove; now unused.
1836 * Makefile.in (VERSION): Bump to 4.13.1
1837 * NEWS, README: Update to match gdb 4.13 release version.
1842 * cxux-nat.c: Remove dangling #else block.
1843 (m88k_harris_core_register_addr): New function.
1845 * environ.c (init_environ): If no environment, do nothing.
1849 * hpread.c: Delete rest of TODO list. Do not include "libbfd.h",
1850 <time.h>, <sys/types.h>, "demangle.h", <sys/file.h>,
1851 "expression.h", "language.h", "gdbtypes.h", "demangleh".
1852 Move all global variables into the private symbol table structure
1853 and add accessor macros. Update some comments.
1854 (hpread_build_psymtabs): Delete dbsubc_addr, we don't need it.
1855 (hpread_end_psymtab): New function to end a partial symbol table,
1856 all callers changed (no more bogus sharing with dbxread.c).
1860 * remote.c (remote_wait): Return inferior_pid instead of 0 for
1865 * sparclite/aload.c (sys_error, error): Use vfprintf for variable
1870 * defs.h (concat, basename, buildargv, freeargv, strerrno, strsigno,
1871 errno_max, signo_max, strtoerrno, strtosigno): Delete.
1872 Include "libiberty.h" instead.
1876 * i386v-nat.c (i386_insert_nonaligned_watchpoint):
1877 add additional argument specifying raw address to permit
1878 proper release of debug registers.
1879 (i386_insert_watchpoint, i386_insert_aligned_watchpoint):
1884 * defs.h, top.c: Use `extern' in declarations of GUI hooks, and
1885 define them in top.c. Add comments to the hooks.
1889 * remote-sim.c (gdbsim_ops): Set `to_insert_breakpoint' and
1890 `to_remove_breakpoint' fields.
1894 * infcmd.c (run_command): Remove comment suggesting using
1895 target_has_execution instead of inferior_pid.
1899 * remote-mips.c (mips_open): add code to handle baud rate.
1903 * infrun.c (wait_for_inferior): Call target_resume() upon
1904 detection of new processes.
1906 * procfs.c (create_procinfo): Return pointer to new procinfo
1908 * (do_detach): Spacing & formatting cleanup.
1909 * (procfs_wait): Move wait_again label to ensure that we really
1910 wait again. On exit from fork, release new child from gdbs'
1912 * (procfs_set_sproc_trap): Enable trapping of fork and vfork.
1916 * hpread.c (hpread_process_one_debug_symbol): Fix block scoping
1917 problem (losing localvars on the close-brace instead of after
1922 * i386-nlmstub.c (handle_exception): Wait until the thread has
1923 been started before killing the NLM by pointing the PC at
1928 * config/mips/tm-irix5.h (IN_SIGTRAMP): Redefine for Irix 5,
1929 Irix 5 has a standard _sigtramp signal handler.
1930 * irix5-nat.c (solib_add): Get rid of sigtramp_address handling,
1931 it is not needed for a standard _sigtramp signal handler.
1932 Add shared library sections to the section table of the target
1933 before adding the symbols.
1934 * mips-tdep.c (mips_skip_prologue): Do not skip load immediate
1935 instructions that do not prepare a stack adjustment.
1936 * regex.c (SIGN_EXTEND_CHAR): Update to emacs-19.25 definition,
1937 which does the right thing on machines where `char' is unsigned.
1941 * remote.c (remote_open): Move setting of inferior_pid prior to
1942 call to remote_start_remote. Also use unique value for pid to
1943 avoid confusion with read_register_pid & friends.
1944 * (remote_wait): Return inferior_pid instead of 0 in all cases.
1948 * dwarfread.c (bfd.h): Don't include.
1952 * i386-nlmstub.c (handle_exception): Point the PC at _exit() to
1953 kill the program being debugged. KillMe(), the undocumented
1954 call intended for this purpose, causes the server to hang.
1958 * remote.c (read_frame): Calculate run length encoded checksum
1960 * config/sh/stub.c: New file.
1964 * target.c (find_default_run_target): Make sure to_can_run is set
1969 * TODO: Remove note about fast watchpoints and remove obsolete
1974 * config/i386/xm-i386v4.h, config/m68k/xm-m68kv4.h,
1975 config/sparc/xm-sun4sol2.h (NORETURN): Don't define.
1976 * config/m88k/tm-cxux.h (ARCH_NUM_REGS): Undefine before defining.
1980 * target.c (add_target): Don't call clean_target on target
1982 * (unpush_target): Test for to_close being set before calling.
1983 * (target_xfer_memory, target_info): Check for to_has_memory
1984 before playing with memory.
1986 * remote.c (remote_open): Set inferior_pid to make kill command
1988 * inflow.c (kill_command): Revert change of Aug 2. Use
1989 inferior_pid to determine whether to print out "The program is not
1990 being run." message.
1994 * config/i386/i386m3.mh (NAT_CLIBS): Add -lmachid and -lnetname.
1995 * m3-nat.c, config/nm-m3.h: #if 0 REQUEST_QUIT stuff.
1996 * m3-nat.c: Pass argument to return_to_top_level.
1997 Declare m3_kill_inferior before use.
1998 (port_chain_insert): In "can't happen" case, abort rather than
1999 setting `mid' to large decimal constant (which gcc warns about).
2000 (get_thread_name): Use cast to convert const char * to char *.
2001 (add_mach_specific_commands): #if 0 "thread break" command.
2002 (m3_trace_him): Call push_target.
2003 (mach_really_wait): New argument pid; remove unused
2005 (intercept_exec_calls): Call target_terminal_init and
2006 target_terminal_inferior once the child execs.
2007 * infrun.c (proceed): Pass argument to PREPARE_TO_PROCEED.
2011 * procfs.c (procfs_mourn_inferior): don't dereference the
2012 procinfo pointer after it has been freed.
2016 * breakpoint.c (breakpoint_1): Improve pluralization in display
2017 of breakpoint hit counts.
2019 * language.h (struct language_defn): Remove unused field
2021 (longest_float): Remove, no longer used.
2022 * language.c (unknown_language_defn, auto_language_defn,
2023 local_language_defn): Remove init of la_longest_float field.
2024 * c-lang.c (c_language_defn, cplus_language_defn,
2025 asm_language_defn): Ditto.
2026 * ch-lang.c (chill_language_defn): Ditto.
2027 * m2-lang.c (m2_language_defn): Ditto.
2031 * defs.h (bfd_read, bfd_seek): Remove declarations.
2032 * os9kread.c, rs6000-nat.c (libbfd.h): Don't include.
2036 * inflow.c (kill_command): Fix a bug which prevented target
2037 programs to be killed.
2041 * defs.h: Change two-line declarations to one-line form.
2042 (NORETURN): Define as "volatile" only for older GCCs.
2043 (ATTR_NORETURN): Define for newer GCCs.
2044 * procfs.c (proc_init_failed): Add ATTR_NORETURN to declaration.
2048 * breakpoint.c (mention), main.c (fputs_unfiltered): Add comments.
2049 * breakpoint.c (delete_breakpoint, enable_breakpoint,
2050 disable_breakpoint): Don't call breakpoints_changed; it is now
2051 called via the *_breakpoint_hook functions.
2052 * annotate.c (_initialize_annotate, breakpoint_changed): New functions.
2056 * stabsread.c (read_type): Fix a bug in enum size calculation.
2060 * hppa-tdep.c (compare_unwind_entries): Add "const" to both
2061 argument types to shut up GCC.
2063 * hppa-tdep.c (saved_pc_after_call): If the saved PC is in a
2064 linker stub, then return the address the stub will return to.
2065 (frame_saved_pc): Correctly restart the search for the saved
2066 pc when a linker stub is encountered.
2068 * hppa-tdep.c (inst_saves_gr): Handle 16 and 8 bit instruction
2069 register stores emitted by the version 9 HP compilers.
2070 (inst_saves_fr): Relax test for a specific base register (%r1);
2071 this avoids losing with the version 9 HP compilers.
2072 (skip_prologue): Try to skip argument stores emitted by the HP
2073 compilers. It's not perfect, but it's better than before.
2077 * findvar.c (write_pc write_pc_pid): Remove casts to long when
2078 calling write_register_pid.
2079 * (write_register_pid): Add prototype.
2083 * remote.c (read_frame): Split readchar/checksum calculation into
2084 two parts since evaluation order is undefined.
2089 * Makefile.in (coredep.o): Add inferior.h as dependency.
2090 * inflow.c: Add F_SETOWN to list of defines to check
2091 around code that uses F_SETOWN.
2095 * Makefile.in (CC_FOR_TARGET, CXX_FOR_TARGET): If using newlib,
2096 set the -L and -B directory prefixes so we can link with it.
2100 * Makefile.in (INSTALLED_LIBS, CLIBS, DEPFILES): Add support for
2101 --enable-xxx configure option by adding ENABLE_{CLIBS DEPFILES}
2104 * General hackery to support alternate user-interface.
2105 * breakpoint.c (mention, delete_breakpoint, enable_breakpoint,
2106 disable_breakpoint): Call hooks for alternate user-interface.
2107 * defs.h: Add declarations for alternate user-interface hooks.
2108 * main.c (main): Add --nw (and --nowindows) options to disable
2110 * (near call to command_loop): Call command_loop_hook if set.
2111 * (fputs_unfiltered): Call fputs_unfiltered_hook if set.
2112 * stack.c: Call print_frame_info_listing_hook if set.
2113 * top.c (gdb_init): Initialize targets.c and utils.c prior to
2114 other files to make sure that calls to error and warning will
2115 work. Call init_ui_hook after everything else.
2116 * utils.c (query): Call query_hook if set.
2117 * (gdb_flush): Call flush_hook if set.
2118 * Change _initialize_utils to initialize_utils cuz we don't use
2119 automatic initialization of utils.c anymore.
2121 * Support for TK GUI.
2122 * Makefile.in: Add rule for gdbtk.o.
2123 * configure.in: Add support for --enable-gdbtk.
2124 * gdbtk.c: New file. Contains support routines for TK interface.
2125 * gdbtk.tcl: New file. Implements GUI policy.
2127 * remote.c: Get rid of #ifdef DONT_USE_REMOTE. It's no longer
2132 * Makefile.in (CC_FOR_TARGET, CXX_FOR_TARGET): Use newlib if it is
2133 there and we are using the gcc from the tree.
2134 (LD_FOR_TARGET): Look for ld in ../ld/ld.new.
2138 * Makefile.in (annotate.o): Add dependencies.
2142 * sparclite/aload.c: Added new -q (quiet) option.
2143 return 0 exit status if file was successfully downloaded.
2145 * nlm/gdbserve.c: merge in command line argument parsing changes
2146 and bug fixes made to i386-nlmstub.c.
2148 * i386-nlmstub.c: The returnLength field must be initialized
2149 before portConfig is passed to AIOGetPortConfiguration.
2150 Compare command line arguments with strnicmp(); args are
2151 case insensitive on netware.
2155 * Makefile.in (DISTSTUFF): Add definition.
2156 (diststuff): Add for new distribution support.
2157 (gdb.tar.Z, make-proto-gdb.dir, setup-to-dist,
2158 gdb-$(VERSION).tar.Z, make-proto-gdb-1, make-proto-testsuite.dir):
2159 Remove old distribution building rules, now uses standard
2160 distribution support in parent directory Makefile.in.
2164 * target.c (push_target): Cast result from xmalloc.
2166 Tue Jul 26 18:20:46 1994 Paul Flinders (ptf@smee)
2168 * elfread.c (elf_symtab_read): Discard compiler labels generated
2169 by the Solaris 2.1/Intel SunPro compiler.
2173 * target.c (nomemory): Fix prototype and routine to take correct
2178 * Makefile.in (clean): Remove libgdb-files.
2182 * coredep.c: Include inferior.h.
2186 * i386-nlmstub.c: Add support for NODE, PORT and BAUD command
2191 * symfile.c (deduce_language_from_filename): Recognize .S as asm,
2192 .cp as C++, alphabetize better.
2194 * breakpoint.c (ignore, condition): Move usage note into body of
2195 help text, so first line can be one-line summary.
2199 * target.c (unpush_target): Fix handling of removal of top target.
2203 * Makefile.in: Add stuff to build nlmstub.
2204 * Add rule for annotate.o to keep Sun make happy.
2205 * configure.in: Add config for powerpc/Netware.
2207 * partial-stab.h (near N_SO): Don't call START_PSYMTAB with null
2208 filename. This speeds up handling of trailing N_SO stabs (they
2209 mark the end of a .o file).
2211 * target.c, target.h: Change the way pushing and popping of
2212 targets work to support target overlays and inheritance.
2213 * corelow.c, hppa-tdep.c, inflow.c, remote-nindy.c, utils.c:
2214 Fixup references to current_target, due to previous changes.
2216 * config/i386/tm-i386nw.h: Enable longjmp support. More work is
2217 needed to get the address of longjmp out of the target.
2221 * main.c: Include <ctype.h>.
2225 * remote-mips.c (mips_readchar): Fix a bug in checking <IDT>
2230 * solib.c (look_for_base): Don't deref exec_bfd if NULL.
2234 * Makefile.in (VERSION): Bump to 4.12.4.
2239 * configure.in (m88*-harris-cxux*): New configuration.
2240 * cxux-nat.c, config/m88k/cxux.mh, config/m88k/cxux.mt,
2241 config/m88k/xm-cxux.h, config/m88k/tm-cxux.h, config/m88k/nm-cxux.h:
2243 * config/m88k/tm-m88k.h: Add comment about Harris OS.
2244 (TARGET_WRITE_PC): Pass pid through to register writers.
2246 * configure.in (m68*): Put vendor-only-specified host configs
2247 after vendor-and-os-specified configs.
2248 (m68*-atari-sysv4*, m68*-cbm-sysv4*): Replace with m68*-*-sysv4.
2250 * config/m88k/delta88.mh (MUNCH_DEFINE): Remove.
2251 * config/m88k/delta88.mt, config/m88k/delta88v4.mh: Format
2256 * elfread.c (elf_symtab_read): Handle error return from
2257 bfd_get_dynamic_symtab_upper_bound gracefully.
2261 * inferior.h (ARCH_NUM_REGS): New macro, actual number of
2262 registers in use by the inferior.
2263 * coredep.c (fetch_core_registers, register_addr): Use it.
2264 * findvar.c (registers_changed, registers_fetched,
2265 read_register_bytes): Ditto.
2266 * infcmd.c (do_registers_info, registers_info): Ditto.
2267 * infptrace.c (fetch_inferior_registers,
2268 store_inferior_registers): Ditto.
2269 * stack.c (frame_info): Ditto.
2271 * coredep.c (CORE_REGISTER_ADDR): New macro.
2272 (fetch_core_registers): Use it.
2274 * breakpoint.c (ignore, condition): Add usage notes to help strings.
2275 * symfile.c (add-symbol-file): Add usage note to help string.
2276 (add_shared_symbol_files_command): New command.
2279 * inferior.h (read_pc_pid): Declare.
2280 * breakpoint.c (watchpoint_check): Cache breakpoint in local
2281 variable b, remove unused variable other_type_used.
2282 * main.c (inferior.h, call-cmds.h): Include.
2283 (gdb_init): Declare.
2284 * remote.c (remote_wait): Return 0 by default.
2288 Stop printing at null char option, from Oliver Meyer
2290 * valprint.h, valprint.c (stop_print_at_null): New global.
2291 * valprint.c (_initialize_valprint): New print set subcommand
2293 * c-valprint.c (c_val_print): If stop_print_at_null is on, and
2294 printing a char array, adjust the number of chars to print.
2299 * m88k-tdep.c (examine_prologue): Modified to handle prologues for
2300 pic code in addition to prologues where an instruction from the
2301 prologue gets moved into the delay slot of a branch instruction
2302 immediately following the prologue. A table of potential prologue
2303 instructions (prologue_insn_tbl) is now used for picking apart a
2305 (frame_find_saved_regs): Changed the way in which limit gets set
2306 so that the delay slot of branch instructions immediately
2307 following the prologue gets examined.
2308 (pushed_size, store_parm_word, store_parm, push_parameters,
2309 collect_returned_value): Deleted.
2313 * infrun.c (wait_for_inferior): Handle stepping into leaf
2314 functions whose prologue consists of gp loading code only.
2318 * dbxread.c: Don't include libbfd.h.
2319 * dwarfread.c, elfread.c somread.c: Don't include libbfd.h,
2320 <time.h>, or <sys/types.h>.
2321 * elfread.c (elf_symfile_read): Use only standard BFD functions to
2322 collect information about the stab and stab string sections.
2326 * stabsread.c (read_huge_number): handle large unsigned number
2327 for stabs generated by os9k C compiler.
2332 * breakpoint.h (hit_count): New breakpoint field.
2333 * breakpoint.c (show_breakpoint_hit_counts): New variable.
2334 (clear_breakpoint_hit_counts): New function.
2335 (bpstat_stop_status): Increment the hit count.
2336 (breakpoint_1): Display the hit count.
2337 * infcmd.c (run_command): Reset breakpoint hit counts.
2338 * target.c (generic_mourn_inferior): Don't clear ignore counts if
2339 displaying hit counts.
2343 * elfread.c (elf_symfile_read): Unconditionally add dynamic
2344 symbols for all symbol files. Makes skipping over the
2345 trampoline code work when stepping from a function in a shared
2346 library into a function in a different shared library for Irix 5.
2347 Other ELF targets do not have enough information in their
2348 dynamic symbol tables to make this work.
2349 (elf_symtab_read): Relocate mst_solib_trampoline address.
2354 * configure.in (m68*-atari-sysv4*): New configuration.
2355 (m68*-cbm-sysv4*): Use m68kv4 instead of amix.
2356 * m68k-tdep.c (R_PS): Define as R_SR if necessary.
2357 * config/m68k/m68kv4.mh, config/m68k/m68kv4.mt,
2358 config/m68k/tm-m68kv4.h, config/m68k/xm-m68kv4.h: New files.
2359 * config/m68k/amix.mh, config/m68k/amix.mt,
2360 config/m68k/tm-amix.h, config/m68k/xm-amix.h: Removed, superseded
2365 * symtab.c (find_function_start_sal): New function to find
2366 the start of a function from a function symbol.
2367 (decode_line_1, decode_line_2): Use it instead of open coded
2368 partial copies of the code.
2369 (list_symbols): Quote symbol name before passing it to
2370 break_command to enable proper handling of mangled symbols.
2374 * ch-exp.y (match_simple_name_string): Don't lower-case here.
2375 * ch-exp.y (yylex): First try name lookup using exact name
2376 typed by user; if that fails, try lower-cased name.
2380 * hpread.c: More cleanups. Delete lots of trailing whitespace.
2381 Remove some items from the TODO list and notes throughout code
2382 for things which need fixing. Add more comments.
2383 Document bogus struct symloc sharing with dbxread.c. Delete more
2384 useless variables. Add more PARAM prototypes. Fixup more
2385 indention problems that have crept in.
2386 (SET_NAMESTRING): Accept new namep and objfile arguments so that
2387 it doesn't depend on the variable names on the procedures it's
2389 (hpread_symfile_init): Delete incorrect checks for bogus sizes of
2394 * dbxread.c, elfread.c, mipsread.c, nlmread.c, os9kread.c:
2395 Move "no debugging symbols found" test to symfile.c.
2396 * symfile.c (syms_from_objfile, reread_symbols): Add
2397 "no debugging symbols found" test.
2398 * coffread.c (init_stringtab): Handle stripped files with a
2399 stringtab offset of zero gracefully.
2400 * osfsolib.c (solib_create_inferior_hook): Use DYNAMIC flag from
2401 BFD instead of stop_pc heuristic to determine if it is a dynamically
2403 * procfs.c (wait_fd): Handle ENOENT error return from PIOCWSTOP
2404 ioctl, it indicates that the process has exited.
2408 * hpread.c (hpread_symfile_init): Make sure to initialize all the
2409 private data to zero. Not having any HP C debug symbols is not an
2414 * hppa-tdep.c (read_unwind_info): ELF unwind information is in the
2415 .PARISC.unwind section now.
2419 * breakpoint.c (mention): Always show breakpoint address if no
2424 * solib.c (bfd_lookup_symbol, look_for_base): Reinstate to reenable
2425 handling of shared libraries for non-ELF executables, but only if
2426 HANDLE_SVR4_EXEC_EMULATORS is defined.
2427 (locate_base): Try to find debug_base in the dynamic linker
2428 for non-ELF executables if HANDLE_SVR4_EXEC_EMULATORS is defined.
2429 * config/sparc/tm-sun4sol2.h (HANDLE_SVR4_EXEC_EMULATORS):
2430 Define to enable handling of shared libraries for a.out executables,
2431 run under Solaris BCP.
2435 * hpread.c: Change contribution notice to the Cygnus/Utah agreed
2436 upon notice. Delete some stuff from the TODO list. Rework
2437 many comments to be clearer. Major cleanups. Consistently
2438 use "hpread_" prefix. Delete unnecessary macros, structures
2439 variables, fiels, functions and #if 0 code. Mark code which
2440 still needs to be cleaned up. PARAMize and make most functions
2441 static. Fix error checking when reading in the debug section
2442 contents. No more minimal symbol table handling in this code!
2446 * infrun.c (wait_for_inferior): Print "Program exited normally"
2447 regardless of batch_mode.
2448 * defs.h, top.c (batch_mode): Removed.
2452 * Makefile.in (dcache_h): Remove redundant definition.
2453 (init.c): Add a comment.
2454 (top.c): Remove explicit compile action.
2455 * breakpoint.c (mention): Share code indicating location of
2456 break/watchpoints, don't print address if addressprint is off.
2457 * breakpoint.c, c-typeprint.c, c-valprint.c, energize.c, symtab.h
2458 (demangle): Remove redundant declarations.
2459 * eval.c: Remove redundant function declarations.
2460 * objfiles.h: Cosmetic and grammatical improvements.
2461 * TODO: Various updates.
2463 * remote-mips.c: Replace all \r chars with \015.
2464 (mips_receive_header): Display control characters readably.
2465 (mips_xfer_memory): Add a simple progress display.
2469 * remote-e7000.c (e7000_open): Don't try a tcp open if we're
2471 * remote-hms.c (flush): New function.
2472 (expect): Get edge case right.
2473 (hms_read_inferior_memory): Be more tolerant of line noise.
2477 * configure.in: Use i386m3.mh and i386m3.mt as names of host and
2478 target files, not non-existent mach3.mh and mach3.mt.
2482 * dbxread.c (dbx_symfile_read): Unconditionally add dynamic
2483 symbols for all symbol files. Makes skipping over the
2484 trampoline code work when stepping from a function in a shared
2485 library into a function in a different shared library.
2486 (read_dbx_dynamic_symtab): Relocate mst_solib_trampoline address.
2490 * dbxread.c, partial-stab.h (near N_SO): SO stabs with blank
2491 names mean end of .o file.
2492 * infrun.c (wait_for_inferior): Clean up multi-thread logic near
2493 top of routine. Handle new thread notification cleanly.
2494 * lynx-nat.c (child_wait): General cleanups, handle new LynxOS
2495 thread notification scheme.
2496 * (child_resume): General cleanups, handle resumption of all
2501 * ser-go32.c: Rewrite to run under windows.
2502 * ser-e7kpc.c: New file to support the E7000 with the PC ISA
2504 * serial.c (serial_open): Notice device "pc".
2505 * remote-e7000.c: Fix copyright date.
2506 (expect): Compare \n and \r the same.
2507 (e7000_open): Allow pc as a serial port
2508 * sh/sh.mt: Add ser-e7kpc.
2509 * h8300/h8300hms.mt: Add ser-e7kpc.
2510 * main.c (proc_wait): Don't wait if using go32.
2514 * somread.c: Simplify by using stabsect_build_psymtabs.
2515 * dbxread.c (stabsect_build_psymtabs): New argument "text_name"
2516 corresponding to the name of the text section. All references
2518 (somstab_build_psymtabs): Delete function, no longer needed.
2522 * somread.c: Renamed from paread.c. Changed function names and
2523 comments to reflect that this file deals with SOM (an object file
2524 format), rather than the PA (a cpu).
2525 (Makefile.in): Chaned appropriately.
2526 (config/pa/hppabsd.mh, config/pa/hppahpux.mh): Likewise.
2527 * dbxread.c (somstab_build_psymtabs): Renamed from
2528 pastab_build_psymtabs.
2532 * core-sol2.c: New file to handle ELF and BCP core file flavours.
2533 * config/sparc/sun4sol2.mh (NATDEPFILES): Use it instead of
2535 * Makefile.in: Updated for core-sol2.c.
2536 * README: Add notes about SPARCworks cc under Solaris 2.x,
2538 * config/mips/xm-makeva.h: Removed, no longer necessary.
2539 * Makefile.in, config/mips/xm-irix3.h, config/mips/xm-irix5.h,
2540 config/mips/xm-mips.h, config/mips/xm-news-mips.h,
2541 config/mips/xm-riscos.h: Remove references to xm-makeva.h
2545 * gdba.el: Put program input and output in a separate buffer.
2549 * energize-patches, main.c (main), top.c (gdb_init, pwd_command),
2550 top.h: Change all occurances of dirbuf to gdb_dirbuf. Collides
2551 with global variable of same name in libnsl.so on UnixWare.
2555 * symtab.c (decode_line_1): fix a bug in dealing with '<>'
2556 embedded in template name.
2560 * config/i386/nm-linux.h: change calling convention of
2561 TARGET_CAN_USE_HARDWARE_WATCHPOINT() and
2562 target_insert_watchpoint() and
2563 target_remove_watchpoint().
2565 * config/mips/tm-mips64.h: define FORCE_LONG_LONG to force LONGEST
2566 to be long long in gdb.
2567 * config/mips/tm-bigmips.h: ditto.
2571 * c-lang.c (asm_language_defn): New definitions for language_asm,
2572 mostly copied from c_language_defn, to avoid warnings when
2573 switching between c and asm stack frames.
2577 * mdebugread.c (parse_symbol): Don't call ecoff_swap_tir_in or
2578 ecoff_swap_rndx_in directly; use the debug_swap pointer instead.
2579 (upgrade_type, handle_psymbol_enumerators): Likewise.
2580 (has_opaque_xref, cross_ref): Likewise.
2581 (elfmdebug_build_psymtabs): Call swap->read_debug_info to read
2582 debugging information, rather than doing it here.
2583 * mipsread.c (mipscoff_symfile_read): Call read_debug_info entry
2584 point in ecoff_debug_swap backend structure, rather than calling
2585 ecoff_slurp_symbolic_info directly.
2589 * breakpoint.c: Include annotate.h. Call annotate_field rather
2590 than printing annotation directly.
2592 * main.c: Include string.h.
2596 * fork-child.c (startup_inferior) [STARTUP_INFERIOR]: If defined,
2597 call it instead of doing normal loop.
2598 * infcmd.c (attach_command): Don't call wait_for_inferior if
2600 * infrun.c (proceed) [PREPARE_TO_PROCEED]: If defined, call
2601 hook that can decide whether to step over the next breakpoint.
2602 * utils.c (wrap_here): Abort if wrap_buffer not allocated.
2603 (request_quit) [REQUEST_QUIT]: If defined, call it instead of
2606 * configure.in: Improve sorting/formatting of hosts and targets.
2607 (i[34]86-*-mach3*, i[34]86-*-osf1mk*, mips-*-mach3*,
2608 m88*-*-mach3*, ns32k-*-mach3*): Recognize.
2609 * Makefile.in (stop-gdb): New target.
2610 * stop-gdb.c: New file, utility to get attention of waiting GDBs
2615 * top.c (gdb_init): Init current_directory in gdb_init. Probably
2616 the identical initialization can be deleted from main.c, but i
2617 haven't done so just in case.
2621 * gdba.el: Added menu windows and slightly improved window
2622 handling to gdba.el. Fixed numerous minor bugs that were causing
2623 emacs and gdb to fall out of sync.
2627 * breakpoint.c: annotate changes lost at merge, put back in.
2631 * config/i386/i386sco.mh, i386sco4.mh (XDEPFILES): Remove
2636 * config/m68k/dpx2.mh (NATDEPFILES): Remove duplicate inclusion
2638 * config/m68k/tm-dpx2.h (CANNOT_STORE_REGISTER): Define to inhibit
2639 writing of floating registers, the dpx2 kernel disallows it.
2640 * irix5-nat.c (LM_ADDR): The loaded address of the shared library
2641 is contained in o_praw.
2642 * irix5-nat.c (solib_map_sections): Adjust sections by the
2643 difference between the loaded address and the prelinked address.
2644 * irix5-nat.c (solib_address): Use LM_ADDR for the loaded start
2646 * mdebugread.c (parse_symbol): Do not relocate stEnd/scText
2647 symbols, their value is absolute.
2648 * mdebugread.c (parse_partial_symbols): Handle Irix 5.2 shared
2649 libraries fh->adr fields of zero. Relocate minimal symbol values
2650 upon readin. Relocate non-stabs symbols upon readin.
2651 * mdebugread.c (psymtab_to_symtab_1): Use pst->textlow for the
2652 start address of the outermost block.
2653 * mdebugread.c (parse_lines, parse_procedure): Pass in pst
2654 instead of section_offsets and use relocated pst->textlow for
2655 line number and procedure address relocations.
2658 * mdebugread.c (parse_symbol, parse_partial_symbols, cross_ref):
2659 Handle SGI Irix5 stIndirect symbol type.
2663 * breakpoint.c: fix a syntax error native cc does not like.
2665 * Makefile.in: change sparclite-tdep.c to sparcl-tdep.c.
2666 * sparclite/Makefile.in: ditto.
2667 * sparcl-tdpe.c: change file name because first 8 chars has to be
2669 * sparcl-stub.c: ditto.
2671 * .Sanitize: add sparclite-stub.c sparclite-tdep.c to keep.
2673 * sparclite/Makefile.in: fix INCLUDE_CFLAGS to have {srcdir}/../config.
2677 * hppa-tdep.c (target_read_pc, target_write_pc): Accept (and
2678 ignore) a PID argument.
2679 (hppa_pop_frame): Pass a PID to target_write_pc.
2680 * config/pa/tm-hppa.h (TARGET_READ_PC, TARGET_WRITE_PC): Accept
2681 and pass through a PID argument.
2682 (target_read_pc, target_write_pc): Update prototypes.
2686 * Makefile.in: add new file sparclite-tdep.c.
2687 * sparclite/Makefile.in: add new file sparclite-stub.c.
2688 * sparclite/hw_breakpoint.note: note for SPARClite hardware breapoint
2690 * config/sparc/sparclite.mt: add sparclite-tdep.o.
2691 * config/sparc/tm-sparclite.h: add hardware breakpoints support
2693 * sparclite-tdep.c: new file, contains hardware breakpoint support
2695 * sparclite-stub.c: new file, stub code that add support hardware
2697 * breakpoint.c: add hardware breakpoint support.
2698 * breakpoint.h: add new breakpoint type to support hardware
2700 * config/mips/nm-irix4.h: change interface for target dependent
2701 code supporting watch point.
2702 * config/pa/nm-hppab.h: change interface for target dependent
2703 code supporting watch point.
2707 * remote-os9k.c (rombuf_command): fix a bug accepting rombug
2709 * stabsread.c (read_struct_fields): os9k nested structure does not
2710 have terminating ';', instead it just get to ',' and bit position
2715 * nlmread.c (nlm_symtab_read): Clean up a bit.
2716 * (nlm_symfile_read): Record bounds of main() so that backtrace
2717 command will know where to stop.
2718 * objfiles.c (objfile_relocate): Relocate entry point/func info
2719 for backtrace as well.
2720 * objfiles.h: Define values for invalid PCs for entry point info.
2721 * symfile.c (init_entry_point_info): Initialize invalid values
2722 with aforementioned macros.
2723 * config/alpha/tm-alphanw.h: Turn on FRAME_CHAIN_VALID_ALTERNATE
2724 to cause backtrace to stop when it gets back to main().
2725 * config/i386/tm-i386nw.h: Ditto.
2729 Fix value_print, which used to be ostensibly language-independent,
2730 but would print pointers and arrays in C syntax. Instead, call
2731 a language-specific function.
2732 * language.h (struct language_defn): New functional field
2734 (LA_VALUE_PRINT): New macro.
2735 * language.c (unk_lang_value_print): New stub/dummy function.
2736 (unknown_language_defn, auto_language_defn, local_language_defn):
2738 * c-valprint.c (c_value_print): New function, with code moved from:
2739 * valprint.c (value_print): ... here. Now just invoke
2740 LA_VALUE_PRINT to do language-specific stuff.
2741 * valprint.c (value_print_array_elements): Make non-static.
2742 * c-lang.c (c_language_defn, cplus_language_defn): Add
2743 c_value_print in the la_value_print field.
2744 * m2-lang.c (m2_language_defn): Likewise.
2745 * ch-lang.c (chill_language_defn): But here use chill_value_print.
2746 * ch-valprint.c (chill_val_print): Print null pointer as NULL.
2747 * ch-valprint.c (chill_value_print): New function, based on
2748 c_value_print, but use Chill "look and feel."
2749 * c-lang.h (c_value_print): New prototype.
2750 * ch-lang.h (chill_value_print): New prototype.
2751 * value.h (value_print_array_elements): New prototype.
2753 * ch-valprint.c (chill_val_print, case TYPE_CODE_BITSTRING
2754 and case TYPE_CODE_SET): Check that the element type isn't a stub.
2758 * main.c: Move entire file except for #ifndef MAIN_OVERRIDE code
2759 to new file top.c. Make things extern instead of static and
2760 similar rearrangements to deal with this.
2762 * utils.c: Move fputs_unfiltered to main.c. Remove
2763 FPUTS_UNFILTERED_OVERRIDE ifndef.
2764 * Makefile.in: Change so that gdb uses main.c, utils.c, and top.c,
2765 and libgdb uses utils.c and top.c.
2769 * hppa-tdep.c (skip_trampoline_code): Fix typo.
2773 * ch-valprint.c (chill_val_print_array_elements): New function.
2774 A Chill version of val_print_array_elements, it prints the
2775 array index labels, in additions ot the array element values.
2776 (chill_val_print): Use the new function.
2780 * configure.in: Add nlm subdir to configdirs for alpha-*-netware
2782 * defs.h (enum language): Add language_asm.
2783 * findvar.c (read_register_bytes read_register_gen
2784 write_register_bytes read_register read_register_pid
2785 write_register write_register_pid supply_register): Move multi-
2786 thread handling down into these routines. Create XXX_pid routines
2787 that allow register references to specify the pid.
2788 * findvar.c infcmd.c (read_pc read_pc_pid write_pc write_pc_pid
2789 read_sp write_sp read_fp write_fp): Move these routines from
2790 infcmd to findvar to centralize the whole mess.
2791 * i386-nlmstub.c: Portability fixes.
2792 * infptrace.c (child_resume): Conditionalize to allow other natives
2793 to override it. Remove PIDGET gubbish, it's no longer necessary.
2794 * infrun.c (wait_for_inferior): Put registers_changed() before
2795 target_wait() to speed up remote debugging.
2796 * Replace code that reads registers from other threads with much
2797 nicer looking new function calls (see changes to findvar.c).
2798 * Don't skip prologues if debugging assembly source.
2799 * lynx-nat.c (child_resume): Lynx now needs it's own version of
2800 child_resume to handle multi-thread debugging properly.
2801 * remote.c: Add O response to get console output from target.
2802 * (readchar): Add timeout parameter. Handle SERIAL_EOF and
2803 SERIAL_ERROR here to simplify callers.
2804 * Change static var timeout to remote_timeout.
2805 * (fromhex): Remove unnecessary return -1 at end of routine.
2806 * (remote_wait): Turn this into a big switch statement. Add
2807 support for O response.
2808 * (putpkt): Remove unnecessary handling of SERIAL_EOF/ERROR.
2809 * (getpkt): Split getpkt into two parts. read_frame deals with
2810 all formatting issues, run-length encoding, and framing. getpkt
2811 now handles error recovery, and frame detection.
2812 * ser-tcp.c (tcp_readchar): Handle EINTR from read().
2813 * ser-unix.c (hardwire_raw): Set CLOCAL so that we ignore modem
2814 control. (hardwire_readchar): Handle EINTR from read().
2815 * symfile.c (deduce_language_from_filename): Add support for .s
2817 * config/nm-lynx.h: Define CHILD_WAIT so that lynx-nat.c can
2818 override infptrace's child_wait.
2819 * config/rs6000/rs6000lynx.mh: Use xm-rs6000ly.h & nm-rs6000ly.h
2820 instead of XXXlynx.h.
2821 * config/rs6000/rs6000lynx.mt: Use tm-rs6000ly.h instead of
2823 * nlm/gdbserve.c: Portability fixes.
2827 * inftarg.c (child_wait): Call proc_wait, not wait.
2828 (child_mourn_inferior): Call proc_remove_foreign.
2829 * main.c (gdb_init): Call init_proc.
2830 * main.c: Provide dummy versions of init_proc, proc_wait, and
2831 proc_remove_foreign for the gdb case (the libgdb case provides its
2832 own versions of these functions).
2833 * Makefile.in (libgdb-files): Add libproc.a.
2837 Hardware watchpoints for Linux, from Rick Sladkey
2839 * infrun.c (wait_for_inferior) [HAVE_CONTINUABLE_WATCHPOINT]: Add
2840 new hardware breakpoint recovery method.
2841 * i386v-nat.c (i386_insert_watchpoint,
2842 i386_insert_nonaligned_watchpoint, i386_remove_watchpoint,
2843 i386_stopped_by_watchpoint) [TARGET_CAN_USE_HARWARE_WATCHPOINT]:
2844 New functions to support the 386 hardware debugging registers.
2845 * config/i386/nm-linux.h (TARGET_CAN_USE_HARDWARE_WATCHPOINT,
2846 HAVE_CONTINUABLE_WATCHPOINT, STOPPED_BY_WATCHPOINT,
2847 target_insert_watchpoint, target_remove_watchpoint): Define these
2848 macros to use the hardware debugging functions in i386v-nat.c.
2852 * Makefile.in: Replace libgdb.a with libgdb-files. Make "all"
2857 * target.c, target.h: New variables target_activity_function and
2859 * inflow.c, inferior.h: New functions set_sigio_trap and
2861 * inftarg.c (child_wait), procfs.c (wait_fd): Call them.
2865 * remote-sim.h (sim_verbose): Delete.
2866 Document callbacks needed.
2867 (sim_*): Change result to void where there isn't one.
2868 (sim_open): Clarify argument and error response.
2869 (sim_close): Declare.
2870 (sim_load): Change bfd_handle argument to file name. Clarify result.
2871 (sim_create_inferior): Renamed from sim_set_args.
2872 (sim_set_pc): Delete.
2873 (sim_info): Delete printf_fn argument.
2874 * remote-sim.c (gdbsim_kill): Add comment describing purpose.
2875 (gdbsim_load): Try sim_load first.
2876 (gdbsim_create_inferior): Call sim_create_inferior.
2877 (gdbsim_open): Handle args == NULL. Update call to sim_open.
2878 (gdbsim_close): Call sim_close.
2879 (gdbsim_files_info): Update call to sim_info.
2880 (gdbsim_ops): Realign comments.
2882 * printcmd.c (decode_format): Allow TARGET_PTR_BIT to be non-constant.
2886 * xcoffread.c (read_xcoff_symtab): For C_FILE symbols, only use
2887 the auxent if the symbol's name is ".file". From David Edelsohn
2892 * breakpoint.c (breakpoint_1): Fix typo.
2894 * annotate.c (annotate_field_end): Fix typo.
2896 * Makefile.in: Move annotate.o from COMMON_OBS to OBS.
2898 * Makefile.in (TSSTART): Remove; no longer used.
2900 * utils.c (vfprintf_maybe_filtered, vfprintf_unfiltered): Call
2901 fputs_unfiltered and exit directly, rather than fatal. The latter
2902 calls vfprintf_unfiltered!
2904 * gdbtypes.h, gdbtypes.c (can_dereference): New function.
2905 * value.h, printcmd.c (print_value_flags): Move from here...
2906 * annotate.c: ...to here, and make it use can_dereference.
2910 * inflow.c (job_control, attach_flag, generic_mourn_inferior):
2911 Remove, needed for both native and cross.
2912 * target.c (attach_flag, generic_mourn_inferior): Put here.
2913 * utils.c (job_control): Put here.
2914 (terminal.h): Don't include anymore.
2918 * source.c (find_source_lines): Always use code that was #ifdef
2919 BROKEN_LARGE_ALLOCA. Do the cleanup before returning, rather than
2920 leaving it on the chain. Reindent much of this function.
2921 * config/sparc/{xm-sun4sol2.h,xm-sun4os4.h},
2922 config/i386/{xm-sun386.h,xm-i386m3.h,xm-i386mach.h},
2923 config/m68k/{sun3os4.h,xm-news.h,xm-hp300hpux.h},
2924 config/ns32k/xm-ns32km3.h: Remove all references to
2925 BROKEN_LARGE_ALLOCA; with the above change it is no longer needed.
2926 * main.c, fork-child.c, many config files: Remove all
2927 SET_STACK_LIMIT_HUGE code; with the above changes it should no
2930 * symtab.c (lookup_partial_symbol): Use if and abort, not assert.
2931 This avoids __eprintf troubles.
2935 * main.c (main): Surround in #ifndef MAIN_OVERRIDE. Move
2936 initialization code which needs to be called even if we bypass the
2937 command line stuff into gdb_init.
2938 * utils.c (fputs_unfiltered): Surround in #ifndef
2939 FPUTS_UNFILTERED_OVERRIDE.
2940 * Makefile.in (libgdb.a): New target.
2942 * utils.c: Rearrange I/O stuff a bit so that all output goes
2943 through fputs_unfiltered. Use vasprintf; removes arbitrary limit
2944 which made %s not work with arbitrarily large strings.
2945 * printcmd.c (printf_command): Use printf_filtered, not
2946 printf_unfiltered and printf, now that arbitrary limit is gone.
2949 * breakpoint.c (watchpoint_check): Remove unused variable b.
2950 * stack.c (print_frame_info): Move sp and buf inside #if.
2951 * eval.c (evaluate_subexp): Remove unused variables pp,
2952 mangle_ptr, ptr, and mangle_tstr.
2953 * valarith.c (value_x_binop): Remove unused variables mangle_tstr
2955 * symtab.c (lookup_symtab): Put variable copy inside #if.
2956 (decode_line_1): Put variable q1 inside #if 0.
2957 * target.h: Declare target_link.
2958 * infrun.c (wait_for_inferior): Remove unused variables signame.
2959 * remote.c (remote_resume): Remove unused variable name.
2960 * c-exp.y (parse_number): Parenthesize operand of shift.
2961 * dbxread.c (record_minimal_symbol): Parenthesize operand of &&
2962 (this is a semantic change, the warning seems to have detected a bug).
2963 * dbxread.c (end_psymtab): Move variable p1 inside #if.
2964 * coffread.c: Move variable temptype inside #if.
2965 * ch-typeprint.c (chill_type_print_base): Remove unused variable
2967 * ch-valprint.c: #include typeprint.h and ch-lang.h.
2968 (chill_val_print): Remove unused variable in_range.
2969 (chill_val_print): Remove statement "length > TYPE_LENGTH (type);".
2970 (chill_val_print): Add default case for switch.
2971 * stabsread.h: Declare stabsect_build_psymtabs.
2972 * os9kread.c (read_minimal_symbols): Make this return void.
2973 (os9k_symfile_read): Remove unused variables stb_exist and val.
2974 (os9k_symfile_init): Remove unused variable val.
2975 (fill_sym): Remove unused variable id.
2976 (read_os9k_psymtab): Put variable back_to inside #if 0. Remove
2977 unused variable nsl.
2978 Remove unused variable symfile_bfd.
2979 #if 0 unused variables lbrac_unmatched_complaint and
2980 lbrac_mismatch_complaint.
2981 Remove declaration for non-existent function os9k_next_symbol_text.
2983 * annotate.c, annotate.h: New files, containing a function for
2984 each annotation which outputs it.
2985 * Move breakpoints_changed from breakpoint.c to annotate.c.
2986 * breakpoint.c, blockframe.c, infrun.c, cp-valprint.c, main.c,
2987 printcmd.c, source.c, stack.c, utils.c, valprint.c:
2988 Use annotate.c functions to output annotations.
2989 * Makefile.in (OBS): Add annotate.o.
2993 * hppa-tdep.c (read_unwind_info): Make sure elf_unwind_size and
2994 elf_unwind_entries are always initialized.
2996 * hppa-tdep.c (skip_trampoline_code): Handle argument relocation
2997 stubs which return directly to the caller rather than to the stub
3002 * c-exp.y (yyerror): Display a more informative error message.
3003 * ch-exp.y (yyerror): Ditto, don't use global yychar.
3004 * m2-exp.y (yyerror): Ditto.
3008 * inflow.c (job_control): Move definition to front of file.
3012 * maint.c (print_section_table): Rename SEC_SHARED_LIBRARY to
3013 SEC_COFF_SHARED_LIBRARY to match corresponding change in bfd.
3017 * Makefile.in (kdb): Remove old init.c creation commands.
3018 * configure.in (sparclite): Match on sparclite*.
3019 * sparclite/aload.c (main): Only change section addresses for
3020 a.out format object files.
3024 * config/i386/go32.mh: Define CC.
3028 * gdbserver/Makefile.in: Remove irrelevant definitions and
3029 comments inherited from the gdb Makefile.
3030 (BFD_DIR, BFD, BFD_SRC, BFD_CFLAGS): Add from gdb Makefile.
3031 (VERSION): Update to 4.12.3.
3032 (gdbserver): Remove any existing executable first.
3033 (distclean, realclean): Remove nm.h.
3034 * gdbserver/low-lynx.c: Add Sparc Lynx support.
3035 * gdbserver/low-sparc.c, gdbserver/low-sun3.c (sys/wait.h):
3036 Don't use absolute pathname.
3040 * rs6000-nat.c (vmap_ldinfo): Don't fail if fstat returns an
3045 * infrun.c (proceed, normal_stop, wait_for_inferior), breakpoint.c
3046 (print_it_normal): Add annotations for the inferior starting and
3047 stopping, and for all the various messages related to how it
3050 * printcmd.c (do_one_display): Annotate.
3051 * stack.c (print_frame_info): Annotate printing of stack frames.
3055 * remote.c (get_offsets): Handle case where stub doesn't support
3060 Add partial support for g++ code compiled with -fvtable-thunks.
3061 * c-valprint.c (c_val_print): Add vtblprint support
3063 * cp-valprint.c (cp_is_vtbl_member): A vtable can be an array of
3064 pointers (if using thunks) as well as array of structs (otherwise).
3065 * cp-valprint.c (vtbl_ptr_name_old, vtbl_ptr_name): Move to global
3066 level, and make the latter non-static (so define_symbol can use it).
3067 * stabsread.c (define_symbol): If the type being defined is a
3068 pointer type named "__vtbl_ptr_type", set the TYPE_NAME to that name.
3069 * symtab.h (VTBL_PREFIX_P): Allow "_VT" as well as "_vt".
3070 * values.c (value_virtual_fn_field): Handle thunks.
3071 * values.c (value_headof): Minor efficiency hack.
3072 * values.c (value_headof): Incomplete thunk support. FIXME.
3076 * valprint.c (print_longest): Clarify comment about use_local.
3077 * printcmd.c, defs.h (print_address_numeric), callers in
3078 symmisc.c, symfile.c, stack.c, source.c, remote.c, infcmd.c,
3079 cp-valprint.c, core.c, ch-valprint.c, c-valprint.c, breakpoint.c,
3080 exec.c: New argument use_local.
3081 * source.c (identify_source_line): Use filtered output. Use
3082 print_address_numeric.
3084 * core.c (memory_error), symtab.c (cplusplus_hint, decode_line_1),
3085 language.c (type_error, range_error): Use filtered output.
3086 * utils.c (error_begin): Update comment to tell people to use
3089 * Makefile.in (HFILES_WITH_SRCDIR): List bfd.h.
3090 (HFILES_NO_SRCDIR): List gdbcore.h not gdbcore_h, so as not to get
3095 * procfs.c (procfs_wait): Reinstate code which deduces the signal
3096 from the fault, #ifndef FAULTED_USE_SIGINFO.
3097 * config/sparc/tm-sun4sol2.h: Define FAULTED_USE_SIGINFO.
3101 * breakpoint.c (breakpoint_1): Annotate each field of the headers.
3102 Explicitly annotate each record.
3106 * xcoffexec.c: Reformat to standards and lint.
3107 (language.h): Include.
3108 (exec_close): Declare arg "quitting".
3109 (file_command): Declare arg "from_tty".
3110 (map_vmap): Cast xmalloc result to PTR.
3111 * rs6000-nat.c: Reformat to standards and lint.
3112 (exec_one_dummy_insn): Use char array for saved instruction.
3113 (fixup_breakpoints): Declare.
3114 (vmap_ldinfo): Be more informative in fatal error messages.
3115 (xcoff_relocate_symtab): Define to return void.
3116 * xcoffsolib.h: Reformat to standards, improve comments.
3117 * config/rs6000/nm-rs6000.h (xcoff_relocate_symtab): Declare.
3121 * utils.c, defs.h (error_begin): New function.
3122 (quit): Print annotation before printing the error message.
3123 * main.c (return_to_top_level): Print annotation before doing the
3125 * symtab.c (decode_line_1): Call error not warning and then
3126 return_to_top_level. Call error_begin and printf_unfiltered
3127 rather calling warning (before calls to return_to_top_level).
3128 * core.c (memory_error): Use error_begin, printf_unfiltered,
3129 print_address_numeric and return_to_top_level instead of error.
3130 Cleans up a FIXME-32x64.
3131 * language.c (type_error, range_error): Call error_begin
3132 not just target_terminal_ours.
3134 * dbxread.c (stabsect_build_psymtabs): Assign to sym_stab_info
3135 directly, rather than via DBX_SYMFILE_INFO. A cast on the left
3136 side of an assignment is non-portable.
3138 * utils.c (query): Change syntax of query annotations to be
3139 consistent with other input annotations.
3140 (prompt_for_continue): Likewise for prompt-for-continue annotation.
3144 * mdebugread.c (psymtab_to_symtab_1): Do not call sort_blocks
3146 * mips-tdep.c (mips_skip_prologue): Handle prologues for functions
3147 that have a stack frame size of 32k or larger (from Paul Flinders).
3148 Remove #if 0'd code.
3152 * lynx-nat.c (CANNOT_STORE_REGISTER): Add a fallback definition
3153 for Lynx platforms that need it.
3154 * config/nm-lynx.h (__LYNXOS): Define if not already defined.
3158 * procfs.c (procfs_wait): Use the signal from the pr_info rather
3159 than trying to deduce it from the fault.
3163 * printcmd.c (print_address_symbolic): Initialize name to empty
3164 string to avoid core dump if lookup fails.
3165 * remote-e7000.c (printf_e7000debug): Error if target not open.
3167 Tue Apr 26 22:45:24 1994 Stu Grossman (grossman at cygnus.com)
3169 * i386-nlmstub.c: Update to be more in line with PIN stub.
3170 * nlm/gdbserve.c (putDebugChar): Install bug fix from i386-nlmstub.
3171 * (hex2mem): Init ptr.
3172 * General cleanups to use ConsolePrintf, standard prologues, etc...
3174 Tue Apr 26 10:23:04 1994 Stu Grossman (grossman at cygnus.com)
3176 * i386-nlmstub.c: More changes to be compatible with remote.c.
3178 * dbxread.c: Move a bunch of strncmps out of process_one_symbol
3179 into (the far less frequently called) dbx_symfile_read.
3181 * i386-nlmstub.c: An interim version till we get PIN for the x86.
3183 Tue Apr 26 09:50:45 1994 Stu Grossman (grossman at cygnus.com)
3185 * dbxread.c (record_minimal_symbol): Record the section
3186 associated with the symbol to make dynmaic relocation work.
3187 * (dbx_symfile_read, process_one_symbol): Fixes to work around
3188 Solaris brain-damage which don't apply to relocatable object
3190 * (stabsect_build_psymtabs): New routine to read stabs out of an
3191 arbitrarily named section.
3192 * nlmread.c (nlm_symtab_read): Read ALL syms from the NLM, not just
3194 * (nlm_symfile_read): Call stabsect_build_psymtabs to read the
3195 stabs out of the nlm.
3196 * partial-stabs.h (cases 'f' & 'F'): Fixes to work around Solaris
3197 brain-damage which don't apply to relocatable object files.
3198 * remote.c (putpkt): Improve error reporting and error handling.
3199 * (get_offsets): Temporary kludge to force data & bss sections to
3200 have the same relocation.
3201 * stabsread.c (define_symbol, scan_file_globals): Record section
3206 * breakpoint.c (breakpoint_1): Annotate each field of output. Add
3207 FIXME-32x64 comment.
3211 * infrun.c (wait_for_inferior): Move call to flush_cached_frames
3212 to after call to target_wait. This means that flush_cached_frames
3213 can call target_terminal_ours if it wants to.
3214 * infrun.c (wait_for_inferior) [HAVE_NONSTEPPABLE_WATCHPOINT]: Add
3215 comment about why the code is dubious.
3217 * stabsread.c (read_type): Call read_type, not nonexistent
3222 * remote-os9k.c (rombug_fetch_registers): set trace mode
3224 * remote-os9k.c (rombug_read_inferior_memory): cache data in
3226 * os9kread,c (read_os9k_psymtab): process file symbol to truncate
3228 * os9kread.c (os9k_read_ofile_symtab): proper casting of args
3229 passed to process_one_symbol.
3230 * stabsread.c (read_type): process os9k functio prototype.
3234 * solib.c (symbol_add_stub): If so->textsection is NULL, don't
3239 * utils.c (prompt_for_continue): Annotate prompt.
3240 (query): Annotate query.
3241 * printcmd.c (print_frame_args): Change syntax of argument
3242 annotation to make name and value part of a single group of
3243 annotations, not two separate groups.
3244 * cp-valprint.c (cp_print_value_fields): Likewise for fields.
3245 * valprint.c (val_print_array_elements): Change syntax of
3246 annotation to be more concise.
3247 * main.c, defs.h (command_line_input): New argument tells what
3248 string to include in the annotations.
3249 * symtab.c (decode_line_2), main.c (read_command_lines,
3250 command_loop): Change callers.
3252 * breakpoint.c (watch_command): Use (CORE_ADDR)0, not NULL, for
3253 target null pointer.
3254 * blockframe.c (find_frame_addr_in_frame_chain): Likewise.
3256 * printcmd.c (output_command): Annotate things we print here too.
3257 * printcmd.c (print_command_1): Add "value-history-value" annotation.
3258 * Move declaration of print_value_flags from defs.h to value.h.
3259 * main.c (command_line_input): Call wrap_here as well as gdb_flush.
3263 * dbxread.c (read_dbx_dynamic_symtab): Reinstall support for sun3,
3264 BFD handles sun3 dynamic relocations now.
3265 * elfread.c (elf_symtab_read, elf_symfile_read): Handle dynamic
3270 * printcmd.c (print_command_1): Annotate the top-level expressions
3272 (print_frame_args): Annotate each argument.
3273 * printcmd.c, defs.h (print_value_flags): New function.
3274 * cp-valprint.c (cp_print_value_fields): Annotate each field.
3275 * valprint.c (val_print_array_elements): Annotate each array element.
3279 * findvar.c (read_var_value): Handle LOC_REPARM_ADDR case correctly,
3280 the register contains a pointer to the type, not the type itself.
3284 * main.c (main): Accept --annotate=N option and make --fullname
3285 the same as --annotate=1.
3286 (command_line_input): Print annotatation before and after prompt.
3287 * blockframe.c (flush_cached_frames): Print annotation.
3288 * Rename frame_file_full_name to annotation_level and move it from
3290 * source.c (identify_source_line): If annotation_level > 1,
3291 change output format.
3292 * breakpoint.c: Print annotation whenever a breakpoint changes.
3293 * main.c: New variable server_command.
3294 (command_line_input): Parse "server " and set server_command.
3295 (dont_repeat): Check server_command.
3299 * xcoffread.c (xcoff_next_symbol_text): Don't return before
3300 updating raw_symbol and symnum. Return a value in the case where
3303 * dstread.c, coffread.c: Don't define pending_blocks; buildsym.c
3305 * parse.c: Don't define block_found; it is defined in symtab.c.
3306 * parser-defs.h: Add comment regarding block_found.
3310 * hppa-tdep.c (internalize_unwind_info): Delete unused indexp
3315 * dbxread.c (read_dbx_dynamic_symtab): Relocate BFD symbols by
3316 section vma. Do not read dynamic relocs for sun3 executables to
3317 avoid BFD assertion message.
3321 * nm-hppab.h (KERNEL_U_ADDR): Define.
3322 (FIVE_ARG_PTRACE): Likewise.
3323 (CANNOT_STORE_REGISTER): Likewise.
3324 * nm-hppah.h (KERNEL_U_ADDR): Define.
3325 (FIVE_ARG_PTRACE): Likewise.
3326 (CANNOT_STORE_REGISTER): Likewise.
3327 (NEED_TEXT_START_END): Likewise.
3329 * tm-hppah.h (NEED_TEXT_START_END): Delete definition.
3330 * xm-hppah.h (KERNEL_U_ADDR): Delete definition.
3331 (FIVE_ARG_PTRACE): Likewise.
3332 * xm-hppab.h (KERNEL_U_ADDR): Delete definition.
3333 (FIVE_ARG_PTRACE): Likewise.
3335 * hppa-tdep.c (read_unwind_info): Make static.
3336 (restore_pc_queue): Indirect through the target vector to
3337 reload the register state.
3341 * paread.c (compare_unwind_entries): Delete function. It's been
3342 moved into hppa-tdep.c.
3343 (read_unwind_info): Likewise.
3344 (pa_symfile_read): No longer call read_unwind_info. The unwind
3345 tables will be read in as they are needed.
3347 * hppa-tdep.c (compare_unwind_entries): New function.
3348 (read_unwind_info, internalize_unwinds): Likewise.
3349 (find_unwind_entry): Read in unwind information on demand.
3353 * source.c (DIRNAME_SEPARATOR): New macro, replaces all references
3354 to : in search path processing.
3355 * defs.h (qsort): Rename argument in prototype.
3356 * symtab.h (SAYMBOL_VALUE): Rename value field, avoids bugs in
3358 * breakpoint.c, exec.c, mdebugread.c, mipsread.c, xcoffexec.c
3359 (false): Eliminate usages.
3363 * h8500-tdep.c (initialize_h8500_tdep, large_command):
3364 All references to value changed to value_ptrlage_command is now
3366 All references to value changed to value_ptr.
3367 * remote-e7000.c (e7000_wait): Use target_waitstatus and SETSTOP
3368 * remote-hms.c (hms_wait): Timeout after five seconds.
3369 * ser-go32.c (dosasync_read): Poll if timeout < 0.
3370 * config/tm/tm-h8500.h (BEFORE_MAIN_LOOP_HOOK): Deleted.
3371 * config/sh/tm-sh.h (BREAKPOINT): Is now sleep opcode.
3375 * procfs.c (procfs_wait): Protect watchpoint code with appropriate
3377 (procfs_set_watchpoint, procfs_stopped_by_watchpoint): Likewise.
3381 * breakpoint.h (enum bptype): Add bp_hardware_watchpoint and
3382 bp_watchpoint_scope breakpoints.
3383 (struct breakpoint): Add val_chain and related_breakpoint fields
3384 for use by watchpoints.
3386 * breakpoint.c (within_scope): Delete. No longer used.
3387 (TARGET_CAN_USE_HARDWARE_WATCHPOINT): Provide default definition.
3388 (target_{remove,insert}_watchpoint): Likewise.
3389 (can_use_hardware_watchpoint): New function.
3390 (remove_breakpoint): New function to remove a single breakpoint
3391 or hardware watchpoint.
3392 (insert_breakpoints): Handle insertion of hardware watchpoints.
3393 Store a copy of the value chain derived from the watchpoint
3395 (remove_breakpoints): Simplify by using remove_breakpoint.
3396 (delete_breakpoint): Likewise.
3397 (watchpoint_check): Delete the watchpoint and watchpoint scope
3398 breakpoints when the watchpoint goes out of scope. Save & restore
3399 the current frame after checking watchpoints.
3400 (breakpoint_init_inferior): Likewise (restarting the program
3401 makes all local watchpoints go out of scope).
3402 (bpstat_stop_status): Handle hardware watchpoints much like normal
3403 watchpoints. Delete the watchpoint and watchpoint scope breakpoint
3404 when the watchpoint goes out of scope. Remove and reinsert all
3405 breakpoints before returning if we stopped when a hardware watchpoint
3407 (watch_command): Use a hardware watchpoint when possible. If
3408 watching a local expression, build a scope breakpoint too.
3409 (map_breakpoint_numbers): Also call given function for any
3410 related breakpoints.
3411 (disable_breakpoint): Never disable a scope breakpoint.
3412 (enable_breakpoint): Handle hardware breakpoints much like normal
3413 breakpoints, but recompute the watchpoint_scope breakpoint's
3414 frame and address (if we have an associated scope breakpoint).
3415 (read_memory_nobpt): Handle hardware watchpoints like normal
3416 watchpoints. When necessary handle watchpoint_scope breakpoints.
3417 (print_it_normal, bpstat_what, breakpoint_1, mention): Likewise.
3418 (clear_command, breakpoint_re_set_one, enable_command): Likewise.
3419 (disable_command): Likewise.
3421 * blockframe.c (find_frame_addr_in_frame_chain): New function.
3422 Extern prototype added to frame.h
3424 * infrun.c (wait_for_inferior): Set current_frame and select
3425 a frame before checking if we stopped due to a hardare watchpoint
3426 firing. Handle stepping over hardware watchpoints.
3427 (normal_stop): Remove unnecessary call to select_frame.
3429 * value.h (value_release_to_mark): Declare.
3430 * values.c (value_release_to_mark): New function.
3432 * procfs.c (procfs_wait): Add cases for hardware watchpoints.
3433 (procfs_set_watchpoint, procfs_stopped_by_watchpoint): New functions.
3435 * hppab-nat.c (hppa_set_watchpoint): New function.
3437 * config/pa/nm-hppab.h (STOPPED_BY_WATCHPOINT): Define.
3438 (HAVE_STEPPABLE_WATCHPOINT): Define.
3439 (TARGET_CAN_USE_HARDWARE_WATCHPOINT): Define.
3440 (target_{insert,delete}_watchpoint): Define.
3442 * config/mips/nm-irix4.h (TARGET_CAN_USE_HARDWARE_WATCHPOINT): Define.
3443 (STOPPED_BY_WATCHPOINT, HAVE_NONSTEPPABLE_WATCHPOINT): Likewise.
3444 (target_{insert,remove}_watchpoint): Likewise.
3446 Mon Apr 11 19:21:27 1994 Stu Grossman (grossman at cygnus.com)
3448 * xcoffread.c (read_xcoff_symtab): Ignore symbols of class C_EXT,
3449 smtyp XTY_LD, sclass XMC_DS (external data segment label). They
3450 often have the same names as debug symbols for functions, and
3451 confuse lookup_symbol().
3455 * remote.c: Around redefinition of PBUFSIZE, adjust whitespace.
3456 * config/pa/tm-hppa.h (REGISTER_BYTES): Use 4 rather than
3457 REGISTER_RAW_SIZE (1).
3458 Together these changes work around a bug in HP's compiler. Both
3459 seem to be necessary.
3463 * paread.c (pa_symtab_read): Handle ST_STUB symbols and symbols
3464 with scope SS_EXTERNAL. ST_ENTRY symbols in dynamic executables
3465 are type mst_solib_trampoline.
3469 * config/m68k/es1800.mt: Change comments.
3473 * config/m68k/monitor.mt (TDEPFILES): Don't include remote-es.o.
3475 Fri Apr 8 15:35:30 1994 Stu Grossman (grossman at cygnus.com)
3477 * lynx-nat.c: Restore regmap structure for SPARC. It's needed
3482 * values.c (unpack_long): Remove obsolete comment about using a
3485 * symfile.c (symbol_file_command): Add comments about command syntax.
3490 * infrun.c (IN_SOLIB_TRAMPOLINE): Correct comment, trampolines
3491 are in the .plt section.
3492 * minsyms.c (lookup_solib_trampoline_symbol_by_pc,
3493 find_solib_trampoline_target): New functions for handling
3494 stepping into -g compiled shared libraries.
3495 * symtab.h (lookup_solib_trampoline_symbol_by_pc,
3496 find_solib_trampoline_target): Add prototypes.
3497 * config/tm-sunos.h (IN_SOLIB_TRAMPOLINE, SKIP_TRAMPOLINE_CODE):
3498 Define to handle stepping into -g compiled shared libraries.
3499 * config/tm-sysv4.h (SKIP_TRAMPOLINE_CODE): Define to handle
3500 stepping into -g compiled shared libraries.
3504 * configure.in: Add mips-*-sysv4* support.
3505 * config/mips/mipsv4.mh, config/mips/mipsv4.mt,
3506 config/mips/tm-mipsv4.h, config/mips/xm-mipsv4.h, mipsv4-nat.c:
3507 New files for MIPS SVR4 support.
3508 * Makefile.in: Update for new mipsv4 files.
3509 * alpha-tdep.c (heuristic_proc_desc, find_proc_desc): Use
3510 read_next_frame_reg to obtain the frame relative stack pointer.
3511 * mips-tdep.c (heuristic_proc_desc): Use read_next_frame_reg to
3512 obtain the frame relative stack pointer.
3513 * mdebugread.c (parse_partial_symbols, psymtab_to_symtab1):
3514 Handle stStatic and stStaticProc symbols in stabs-in-ecoff output
3515 by entering them into the minimal symbol table.
3516 * printcmd.c (print_scalar_formatted): Do not try to unpack to
3517 a long for float formats.
3518 * solib.c: Include "elf/mips.h" only if DT_MIPS_RLD_MAP does not
3519 get defined in <link.h>.
3520 * solib.c (solib_add): Add shared library sections to the section
3521 table of the target before adding the symbols.
3522 * partial-stab.h: Relocate static and global functions.
3523 * dbxread.c (read_dbx_symtab): Remove unused variable
3524 end_of_text_address. Relocate text_addr when passing it
3527 For Alpha OSF/1 targets, enable gdb to set breakpoints in shared
3528 library functions before the executable is run. Retrieve dynamic
3529 symbols from stripped executables.
3530 * mipsread.c (read_alphacoff_dynamic_symtab): New function.
3531 * mipsread.c (mipscoff_symfile_read): Use it. Issue warning message
3532 if no debugging symbols were found.
3533 * alpha-tdep.c (alpha_skip_prologue): Silently return the unaltered
3534 pc if memory at the pc is not accessible and GDB_TARGET_HAS_SHARED_LIBS
3536 * config/alpha/nm-alpha.h (GDB_TARGET_HAS_SHARED_LIBS): Define,
3537 OSF/1 has shared libraries.
3541 * dbxread.c (read_dbx_dynamic_symtab): Adjust for recent changes
3542 to BFD handling of dynamic symbols.
3546 * hppa-tdep.c (hppa_fix_call_dummy): If FUN is a procedure label,
3547 then gets its real address into FUN and its GOT/DP value into %r19.
3549 * tm-hppa.h (CALL_DUMMY): Use %r20, not %r19 as a temporary.
3551 * hppa-tdep.c (frameless_function_invocation): If no unwind
3552 descriptor was found, then assume this was not a frameless
3553 function invocation.
3554 (frame_saved_pc): If the saved PC is in a linker stub, then
3555 return the return address which the linker stub will return to.
3557 * xm-hppab.h: Never define USG.
3558 * xm-hppah.h: Always define USG.
3562 * values.c (unpack_long, value_from_longest),
3563 valarith.c (value_binop): Allow TYPE_CODE_RANGE.
3567 * symfile.c (deduce_language_from_filename): .cpp is a C++ extension.
3571 For SVR4 targets, enable gdb to set breakpoints in shared
3572 library functions before the executable is run.
3573 * elfread.c (elf_symtab_read): Handle symbols for shared library
3575 * sparc-tdep.c (in_solib_trampoline): Renamed to in_plt_section
3576 and moved to objfiles.c.
3577 * objfiles.c (in_plt_section): Moved to here from sparc-tdep.
3578 * config/tm-sysv4.h (IN_SOLIB_TRAMPOLINE): Use new in_plt_section.
3579 * config/sparc/tm-sun4sol2.h (IN_SOLIB_TRAMPOLINE): Removed,
3580 the new generic definition from tm-sysv4.h works for Solaris.
3584 * elfread.c (elf_symtab_read): Change storage_needed,
3585 number_of_symbols and i to long. Rename get_symtab_upper_bound to
3586 bfd_get_symtab_upper_bound. Check for errors from
3587 bfd_get_symtab_upper_bound and bfd_canonicalize_symtab.
3588 * nlmread.c (nlm_symtab_read): Same changes.
3592 * xcoffread.c (xcoff_next_symbol_text): New function.
3593 (read_xcoff_symtab): Set next_symbol_text_func to it.
3594 Move raw_symbol outside of read_xcoff_symtab.
3596 * remote.c (getpkt): Remove unused "out" label.
3600 * breakpoint.c (print_it_normal): Allow GDB to notify the user
3601 about more than one watchpoint being triggered.
3605 * config/m68k/tm-dpx2.h: Include tm-m68k.h not nonexistent tm-68k.h.
3609 * blockframe.c (find_pc_partial_function): mst_file_text
3610 symbols do not live in the shared library transfer table.
3611 * ch-exp.y (decode_integer_value, match_character_literal,
3612 match_bitstring_literal): Guard tolower calls with isupper,
3613 tolower on old BSD systems blindly subtracts a constant.
3614 * dbxread.c (read_ofile_symtab): Check for __gnu_compiled_* as
3615 well when determining the producer of the object file.
3616 * mdebugread.c (has_opaque_xref): New function to check for
3617 cross reference to an opaque aggregate.
3618 * mdebugread.c (parse_symbol, parse_partial_symbols): Do not
3619 enter typedefs to opaque aggregates into the symbol tables.
3620 * mdebugread.c (parse_external): Remove skip_procedures argument,
3621 it has always been 1. Remove code that handled stProc symbols,
3622 it was never executed and was wrong, as the index of a
3623 stProc symbol points to the local symbol table and not to the
3624 auxiliary symbol info. Update caller.
3625 * mdebugread.c (parse_partial_symbols): Do not enter external
3626 stProc symbols into the partial symbol table, they are already
3627 entered into the minimal symbol table.
3628 * config/i386/tm-symmetry.h: Clean up, it is now only used for Dynix.
3629 Remove all conditionals and definitions for ptx.
3630 I386_REGNO_TO_SYMMETRY moved to here from symm-tdep.c.
3631 Fix addresses of floating point registers in REGISTER_U_ADDR.
3632 STORE_STRUCT_RETURN now handles cc and gcc conventions.
3633 FRAME_CHAIN, FRAMELESS_FUNCTION_INVOCATION, FRAME_SAVED_PC,
3634 IN_SIGTRAMP, SIGCONTEXT_PC_OFFSET defined to make backtracing through
3635 signal trampoline code work.
3636 * config/i386/xm-symmetry.h: Clean up, it is now only used for Dynix.
3637 Remove all conditionals and definitions for ptx.
3638 Remove KDB definitions.
3639 * symm-nat.c (store_inferior_registers): Fetch registers before
3640 storing them to obtain valid floating point control registers.
3641 Store fpu registers.
3642 * symm-nat.c (print_1167_control_word): Dynix 3.1.1 defines
3643 FPA_PCR_CC_C0 and FPA_PCR_CC_C1, avoid duplicate case value.
3644 * symm-nat.c (fetch_inferior_registers, child_xfer_memory):
3646 * symm-nat.c (child_resume): Update type of `signal' parameter.
3647 * symm-tdep.c (I386_REGNO_TO_SYMMETRY): Moved to tm-symmetry.h.
3651 * hppa-tdep.c (hppa_fix_call_dummy): Use an alternate method for
3652 calling import stubs for functions in shared libraries.
3656 * ch-exp.y: Implement SIZE(mode_name) and SIZE(expression).
3658 * ch-lang.c (chill_is_varying_struct): Magic string is
3659 was "<var_length>" is now "__var_length" (more portable).
3663 * remote.c (getpkt): If we get a timeout, actually retry rather
3664 than just giving up the first time it happens.
3665 * remote.c: Document sequence numbers.
3666 (remote_store_registers): Change syntax of 'P' request so that it
3667 never looks like a sequence number.
3671 * os9kread.c (record_minimal_symbol): add section_offset to
3672 relocate minimal symbol table.
3673 * os9kread.c (read_minimal_symbols): ditto.
3674 * os9kread.c (os9k_symfile_init): increase size of dbg and stb
3676 * os9kread.c (read_os9k_psymtab): if there's no dbg file, just
3677 return. Also if file addr is 0 leave it 0, not to relocate.
3678 * remote-os9k.c (_initialize_remote_os9k): add 'set remotexon',
3679 'set remotexoff' and 'set remotelog' commands.
3683 * remote.c (remote_store_registers): Add 'P' request to set an
3684 individual register.
3685 (remote_write_bytes, remote_read_bytes): Use %lx, not %x, to print
3690 * config/sparc/tm-sparc.h: Define USE_REGISTER_NOT_ARG.
3691 * stabsread (define_symbol): If USE_REGISTER_NOT_ARG, go back to
3692 combining all 'p' and 'r' pairs into a LOC_REGPARM.
3694 * command.c (do_setshow_command, case var_string): Never add a
3695 space to the end of the string.
3696 * NEWS: Document this change.
3697 * .gdbinit: Add a space to the "set prompt" command.
3701 * m3-nat.c, i386m3-nat.c, config/i386/i386m3.mh: Many minor
3702 changes to make it compile (it doesn't link yet).
3704 * buildsym.c (start_subfile, patch_subfile_names), demangle.c
3705 (set_demangling_style, set_demangling_command): Use savestring not
3706 strdup. We were not dealing properly with a NULL return from
3707 strdup, and were not declaring strdup (the system header may or
3710 * valprint.c (val_print): Remove inaccurate comment about what
3711 types can be stub types.
3713 * config/i386/ptx.mh (XDEPFILES): Add coredep.o. Delete infptrace.o.
3714 * symm-nat.c (child_wait, _initialize_symm_nat, kill_inferior):
3715 Supply alternate version if ATTACH_DETACH is not defined.
3716 * ptx4-nat.c, config/i386/{nm-ptx4.h, ptx4.mh, ptx.mt, ptx4.mt,
3717 tm-ptx.h, tm-ptx4.h, xm-ptx.h, xm-ptx4.h}: New files.
3718 * configure.in: Recognize i[34]86-sequent-sysv4* host.
3722 * hppa-tdep.c (skip_prologue): Do nothing if not at the beginning
3724 (skip_trampoline_code): Rewrite and add support for argument
3725 relocation stubs stubs, import/export stubs, calls through
3726 "_sr4export" and cascaded trampolines.
3728 * hppa-tdep.c (skip_prologue): Return "pc" not zero
3729 if no unwind descriptor is found.
3731 * tm-hppa.h (NUM_REGS): Bump to 128 registers.
3732 (REGISTER_NAMES): Add entries for "right-half" of FP registers.
3733 (REGISTER_RAW_SIZE, MAX_REGISTER_RAW_SIZE): Do not treat FP regs
3734 differently. All registers are four bytes.
3735 (REGISTER_BYTES, REGISTER_BYTE): Simplify now that all registers are
3737 (REGISTER_VIRTUAL_TYPE): Use builtin_type_float for all FP regs.
3739 * hppa-tdep.c (pa_print_fp_reg): Update to print even numbered FP
3740 registers as both single and double values (fetching 2nd 32bit half
3741 as necessary). Annotate each register printed with its precision.
3743 * paread.c (read_unwind_info): Fix off-by-one error.
3747 * main.c (complete_command): Deal with it if arg is NULL.
3751 * config/mips/tm-mips.h (SETUP_ARBITRARY_FRAME): Revise comment
3752 regarding using the PC--using the PC is necessary and all the
3753 FIXME comments in the world won't make it go away.
3755 * valops.c (value_at, value_at_lazy): Give error if we dereference
3757 * gdbtypes.h: Fix comments regarding TYPE_CODE_VOID.
3758 * stabsread.c: Use 1, not 0, for TYPE_LENGTH of void types.
3760 * stabsread.c (patch_block_stabs): Add comment about what happens
3761 if the definition is in another compilation unit from the stab.
3763 * dbxread.c (end_psymtab): Add comment about empty psymtabs.
3767 * main.c (complete_command): New command, from Rick Sladkey
3769 (symbol_completion_function): Don't declare rl_point and
3770 rl_line_buffer; they are now declared in readline.h.
3771 (show_commands): Don't declare history_base; it is declared in
3773 * command.c (lookup_cmd): Don't delete trailing whitespace.
3774 Reverts change of 14 May 1989.
3776 Wed Mar 23 16:14:52 1994 Stu Grossman (grossman at cygnus.com)
3778 * minsyms.c (prim_record_minimal_symbol): Move section deduction
3779 code from prim_record_minimal_symbol_and_info() to here. Callers
3780 of the latter can legitimately supply a section number of -1.
3784 * gdbtypes.h, gdbtypes.c: Add comments regarding whether static
3785 member functions have an element in args for a (nonexistent) this
3790 * config/pa/tm-hppao.h (NO_PC_SPACE_QUEUE_RESTORE): Define.
3792 * hppa-tdep.c (hppa_pop_frame): Do not restore the PC space
3793 queue if NO_PC_SPACE_QUEUE_RESTORE is defined.
3795 * stabsread.c (REG_STRUCT_HAS_ADDR): Accept additional argument
3796 for the structure's type. All callers changed.
3798 * valops.c (call_function_by_hand): Check REG_STRUCT_HAS_ADDR
3799 for each structure argument rather than assuming it's either
3800 true or false for all structure arguments.
3802 * config/pa/tm-hppa.h (REG_STRUCT_HAS_ADDR): Depend only
3803 on the length structure passed, not the compiler used.
3805 * config/sparc/tm-sparc.h (REG_STRUCT_HAS_ADDR): Accept additional
3806 argument for the structure's type.
3810 * values.c (set_internalvar): Don't set var->value until we are
3811 sure there won't be an error().
3813 * remote.c (get_offsets): Reinstate comment which was in
3814 remote_wait about use of SECT_OFF_TEXT and so on.
3818 * symmisc.c (maintenance_check_symtabs): New function to check
3819 consistency of psymtabs and symtabs.
3820 * symtab.h (maintenance_check_symtabs): Add prototype.
3821 * maint.c: Add new `maint check-symtabs' command.
3822 * config/i386/tm-i386aix.h, config/i386/tm-sun386.h,
3823 config/i386/tm-symmetry.h (REGISTER_CONVERT_TO_RAW): Fix typo.
3824 * config/i386/tm-symmetry.h: Make comment inside #if 0 a real
3826 * config/i386/tm-symmetry.h (STORE_STRUCT_RETURN): Cast argument
3827 to write_memory to avoid warnings from gcc.
3828 * config/i386/xm-symmetry.h: Add missing #endif.
3829 * config/i386/nm-symmetry.h (NO_PTRACE_H): Add for Dynix.
3830 * config/i386/symmetry.mt (TDEPFILES): Add i386-tdep.o.
3831 * config/i386/symmetry.mh (NAT_FILE, NATDEPFILES): Add.
3835 * hppa-tdep.c (hppa_fix_call_dummy): Use value_ptr.
3836 (hppa_push_arguments): Likewise.
3838 Mon Mar 21 11:02:51 1994 Stu Grossman (grossman at cygnus.com)
3840 * alpha-tdep.c: Gobs of changes (many imported from mips-tdep) to
3841 improve remote debugging efficiency. Also fixed problems with
3842 doing function calls for programs with no entry points.
3843 * infcmd.c (run_stack_dummy): Use CALL_DUMMY_ADDRESS instead of
3844 entry_point_address.
3845 * inferior.h (PC_IN_CALL_DUMMY): ditto.
3846 * mdebugread.c (parse_symbol, parse_procedure, parse_external,
3847 parse_lines): Pass section_offsets info to these routines so that
3848 we can relocate symbol table entries upon readin.
3849 * (psymtab_to_symtab_1): Set symtab->primary to tell
3850 objfile_relocate to do relocations for our symbols.
3851 * (ecoff_relocate_efi): New routine to relocate adr field of PDRs
3852 (which hang off of the symbol table).
3853 * Use prim_record_minimal_symbols_and_info instead of
3854 prim_record_minimal_symbols to supply section info to make minimal
3855 symbol relocations work.
3856 * minsyms.c (prim_record_minimal_symbols_and_info): If section is
3857 -1, try to deduce it from ms_type.
3858 * objfiles.c (objfile_relocate): Use ALL_OBJFILE_SYMTABS where
3859 appropriate. Handle relocation of MIPS_EFI symbols special. Also,
3860 add code to relocate objfile->sections data structure.
3861 * remote.c (get_offsets): Use new protocol message to acquire
3862 section offsets from the target.
3863 * (remote_wait): Get rid of relocation stuff. That's all handled
3864 by objfile_relocate now.
3865 * config/alpha/alpha-nw.mt (TM_FILE): Use tm-alphanw.h.
3866 * config/alpha/tm-alpha.h: Define CALL_DUMMY_ADDRESS, and
3868 * config/alpha/tm-alphanw.h: DECR_PC_AFTER_BREAK=0, VM_MIN_ADDRESS=0.
3872 * hpread.c (_initialize_hpuxread): Don't call add_symtab_fns if
3873 HPREAD is not defined.
3877 * sparc-tdep.c (sparc_frame_find_save_regs): Use REGISTER_RAW_SIZE
3879 * sp64-tdep.c (target_ptr_bit, set_target_ptr_bit): Deleted,
3880 can no longer set this at run time.
3881 * config/sparc/sp64.mt (SIMFILES): Use remote-sim.o now.
3882 (TM_CLIBS): Define to -lm, the simulator uses the sqrt() function.
3883 * config/sparc/tm-sp64.h (FPS_REGNUM, CPS_REGNUM): Define (so
3884 sparc-tdep.c compiles).
3885 (TARGET_PTR_BIT): Must be a constant now, fix at 64.
3889 * config/m68k/{cisco.mt,tm-cisco.h}: New files.
3890 * Makefile.in (ALLPARAM, ALLCONFIG): Add them.
3891 * configure.in: Recognize m68*-cisco*-*.
3893 * Makefile.in (TAGS): Use variables directly, rather than using
3894 find, to locate TM_FILE, XM_FILE, and NAT_FILE. This is faster
3895 and means that these filenames no longer need be unique across all
3896 the config/* directories.
3897 * configure.in: Put the config/*/ into TM_FILE, etc.
3899 * m68k-stub.c (computeSignal): Return SIGFPE, not SIGURG, for chk
3900 and trapv exceptions.
3902 * target.h (struct section_table), objfiles.h (struct obj_section):
3903 Change name of field sec_ptr to the_bfd_section. More mnemonic
3904 and avoids the (sort of, for the ptx compiler) name clash with
3905 the name of the typedef.
3906 * exec.c, xcoffexec.c, sparc-tdep.c, rs6000-nat.c, osfsolib.c,
3907 solib.c, irix5-nat.c, objfiles.c, remote.c: Change users.
3909 * utils.c: Include readline.h.
3910 * Makefile.in (utils.o): Add dependency.
3912 * remote.c (getpkt): Add support for run-length encoding.
3916 * utils.c (prompt_for_continue): Call readline, not gdb_readline.
3920 * dstread.c (record_minimal_symbol): New arg objfile. Pass it to
3921 prim_record_minimal_symbol.
3924 * regex.c (EXTEND_BUFFER): Adjust pointers within buffer by
3925 computing their offset from the start of the old buffer and adding
3926 to the new buffer, rather than by assuming we can add the
3927 difference between the old buffer and the new buffer (it might not
3928 fit in an int). Merge in cosmetic differences from emacs regex.c
3929 version of this macro.
3933 * Makefile.in (install-only): Fix use of program_transform_name.
3937 * printcmd.c: Remove "set print fast-symbolic-addr off" command.
3938 The bug which it worked around was fixed on 25 Feb 94 in coffread.c,
3939 so I'm nuking the command.
3940 * symtab.c (find_addr_symbol): Comment out, no longer used.
3942 * main.c (main): Don't init_source_path for the -cd argument. Now
3943 that source_path doesn't contain the current_directory from when
3944 GDB started up, init_source_path is no longer useful (and is
3945 harmful because it clobbers a source_path set in $HOME/.gdbinit).
3947 * TODO: Remove item about line numbers being off. It is useless
3948 and confusing without a reproducible test case (it mentions
3949 proceed(), but I was able to step through proceed without trouble).
3953 For Sunos 4.x targets, enable gdb to set breakpoints in shared
3954 library functions before the executable is run. Retrieve dynamic
3955 symbols from stripped executables.
3956 * symtab.h (minimal_symbol_type): Add mst_solib_trampoline type.
3957 * parse.c (write_exp_msymbol), symmisc.c (dump_msymbols),
3958 symtab.c (list_symbols): Handle mst_solib_trampoline.
3959 * minsyms.c (lookup_minimal_symbol): Handle mst_solib_trampoline
3960 for all targets, remove IBM6000_TARGET dependencies.
3961 * dbxread.c (read_dbx_dynamic_symtab): New function.
3962 * dbxread.c (dbx_symfile_read): Use it.
3963 * dbxread.c (SET_NAMESTRING): Set namestring to
3964 "<bad string table index>" instead of "foo" if the string index is
3966 * xcoffread.c (read_xcoff_symtab): Use mst_solib_trampoline instead
3968 * symtab.c (list_symbols): Take from_tty as parameter and pass it
3969 to break_command. Handle mst_file_* minimal symbol types.
3970 * config/i386/tm-i386bsd.h: Give just macro name, not args, to #undef.
3974 * c-exp.y(yylex): fix potential memory overflow.
3978 * environ.c (set_in_environ): Eliminate special handling of PATH and
3980 * putenv.c: Removed, conflicts with system declaration of
3981 putenv on RS/6000 running AIX 3.2.5, and above change makes it
3983 * Makefile.in: Change accordingly.
3984 * procfs.c (procfs_create_inferior): Change comment accordingly.
3988 * rs6000-tdep.c: Change value to value_ptr.
3992 * hpread.c (read_hpux_symtab: Correctly determine the namespace
3993 and address class of SVAR, DVAR, TYPEDEF, TAGDEF, CONST, and
3994 MEMENUM symbols. Do not include function-scoped variables in
3995 the partial symbol table.
3999 * i386m3-nat.c: Include floatformat.h.
4000 (get_i387_state): Use memset not bzero.
4004 * Makefile.in: Enable commented out getopt_h, bfd_h, etc. Change
4005 ieee-float.h to floatformat.h.
4007 * valprint.c (val_print_string): Ignore error if the error
4008 happened after a terminating '\0'.
4010 * c-valprint.c (c_val_print): Never add 1 to return value from
4011 val_print_string; just return what it returns.
4013 * target.h (enum target_signal): Add TARGET_SIGNAL_FIRST, for
4014 looping through all of the enums.
4015 * infrun.c (signals_info): Use it.
4019 * main.c (main): When printing warning about bad baud rate, don't
4020 use warning(); it relies on current_target which isn't set up yet.
4022 * breakpoint.c (_initialize_breakpoint): Update docstring for
4023 tbreak to match what the code actually does. Don't mention tbreak
4024 in docstrings for "enable once" or "enable breakpoints once".
4028 * symfile.h (ADD_PSYMBOL_VT_TO_LIST): Don't put a semicolon after
4029 while (0). That defeats the whole purpose of using do . . . while (0).
4030 * mdebugread.c (parse_partial_symbols): Don't use ?: expression as
4031 list for ADD_PSYMBOL_TO_LIST; the macro takes its address and
4032 using a ?: expression as an lvalue is not portable.
4034 * stabsread.c (define_symbol): If REG_STRUCT_HAS_ADDR, also
4035 convert a LOC_ARG to a LOC_REF_ARG. Update code which combines
4036 'p' and 'r' symbol descriptors into a single symbol to look for a
4038 * README, config/sparc/tm-sparc.h: Update comments.
4042 * mdebugread.c (parse_type): Do not complain for types with
4043 an `indexNil' aux index, these are simply undefined types.
4044 Remove indexNil check from caller of parse_type.
4045 * mdebugread.c (parse_partial_symbols): Do not enter
4046 stGlobal, scCommon symbols into the minimal symbol table, their
4047 value is the size of the common, not its address.
4048 Handle scInit, scFini, scPData and scXData sections.
4049 Use minimal symbol type mst_file_* for stLabel symbols, instead of
4051 Enter stProc symbols into the global_psymbols list once, not into
4052 the static_psymbols_list.
4053 Get rid of dummy psymtab if it is empty, to allow proper detection
4054 of stripped executables.
4055 * mdebugread.c (cross_ref): Allow cross references to Fortran
4060 * stabsread.c (common_block_end, fix_common_block): Stash the
4061 struct pending * in the SYMBOL_TYPE, not the SYMBOL_NAMESPACE, so
4062 as to not assume that a pointer fits in an enum.
4066 * os9kread.c (fill_sym): check compiler verion number for pre-
4068 * os9kread.c (os9k_process_one_symbol): address of symbol is
4069 relative to section not module.
4070 * stabsread.c (define_symbol): add symbol type 's' as local
4072 * remote-os9k.c: add command 'set monitor_log' to turn on or off
4074 * remote-os9k.c: fix bug in delete breakpoint, single step trace.
4075 * remote-os9k.c: fix bug in 'set remotebaud' function.
4076 * remote-os9k.c (rombug_link): minimize checking so to improve
4078 * symfile.c (symbol_file_command): check if failed to link, also make
4079 the command be able to accept more than one filenames.
4080 * target.c (target_link): check if failed to link with rombug.
4081 * config/i386/tm-i386os9k.h : add #define DECR_PC_AFTER_BREAK 0.
4085 * remote-es.c (es1800_child_ops): Don't declare it static.
4089 * config/i386/tm-i386v4.h: Give just macro name, not args, to #undef.
4093 * dbxread.c: New variable lowest_text_address.
4094 (record_minimal_symbol, read_dbx_symtab): Set it.
4095 (read_dbx_symtab): Use lowest_text_address + text_size instead of
4096 end_of_text_address.
4097 * config/gould/tm-pn.h: Add comment regarding END_OF_TEXT_DEFAULT.
4099 * dbxread.c (end_psymtab): Remove old and commented out
4100 capping_global and capping_static. Fix comments regarding
4101 N_SO_ADDRESS_MAYBE_MISSING to match the real name of the macro.
4103 * parser-defs.h: Add "extern" to start of variable declarations so
4104 we don't end up with commons.
4105 * parse.c: Define these variables.
4107 * irix5-nat.c (find_solib): Cast o_path to CORE_ADDR when using it
4112 * alpha-tdep.c: Change value to value_ptr.
4116 * solib.c (elf_locate_base): New function to locate the address
4117 of the dynamic linker's runtime structure in the dynamic info section.
4118 * solib.c (locate_base): Use it instead of iterating over the list
4119 of mapped address segments.
4120 * solib.c (look_for_base, bfd_lookup_symbol): Removed, no longer
4125 * hppa-tdep.c (pc_in_linker_stub): Move decl to beginning of file.
4126 (pc_in_interrupt_handler): New function. Also add PARAM decl.
4127 (find_proc_framesize): Deal with HPUX setting SAVE_SP bit for
4128 signal trampoline and interrupt routines.
4129 (frame_saved_pc): Handle signal trampolines and interrupt routines.
4130 (frame_chain, frame_chain_valid): Likewise.
4131 (hppa_frame_find_saved_regs): Likewise. Also deal with special
4132 saved regs convention for SP.
4134 * tm-hppa[bho].h: FRAME_FIND_SAVED_PC_IN_SIGTRAMP): Define.
4135 (FRAME_BASE_BEFORE_SIGTRAMP): Define.
4136 (FRAME_FIND_SAVED_REGS_IN_SIGTRAMP): Define.
4138 * tm-hppah.h (IN_SIGTRAMP): Define.
4142 * ch-exp.y (match_simple_name_string): Accept '_' as well as an
4143 alphabetic character as the start of a name.
4145 * sparclite/Makefile.in (all install): Build and install aload.
4147 * configure.in: Accept i[34]86-*-*sysv32 because that is what
4148 config.guess and config.sub produce.
4150 * mips-tdep.c: Change value to value_ptr.
4154 * breakpoint.c, breakpoint.h, c-valprint.c, ch-valprint.c,
4155 cp-valprint.c, eval.c, expprint.c, findvar.c, language.c,
4156 objfiles.h, infcmd.c, printcmd.c, stack.c, typeprint.c,
4157 valarith.c, valops.c, valprint.c, value.h, values.c: Replace
4158 value with value_ptr. This is for the ptx compiler.
4159 * objfiles.h, target.h: Don't declare a "sec_ptr" field using a
4161 * symm-nat.c: Add a bunch of stuff for symmetry's ptrace stuff.
4162 #if 0 i386_float_info.
4163 * symm-tdep.c (round): Remove. Also remove sgttyb.
4164 * symm-tdep.c: Remove lots of stuff which duplicates stuff from
4165 i386-tdep.c. Remove register_addr and ptx_coff_regno_to_gdb.
4166 * i386-tdep.c (i386_frame_find_saved_regs): Put in
4167 I386_REGNO_TO_SYMMETRY check in case it is needed for Dynix
4169 * config/i386/nm-symmetry.h: Change KERNEL_U_ADDR. Move
4170 stuff from PTRACE_READ_REGS, PTRACE_WRITE_REGS macros to
4171 symm-nat.c. Define CHILD_WAIT and declare child_wait().
4172 * config/i386/tm-symmetry.h: Remove call function stuff; stuff in
4173 tm-i386v.h is apparently OK.
4174 * config/i386/xm-symmetry.h [_SEQUENT_]: Define HAVE_TERMIOS not
4175 HAVE_TERMIO. Define MEM_FNS_DECLARED, NEED_POSIX_SETPGID, and
4180 * osfsolib.c (xfer_link_map_member): Update to use new
4181 target_read_string interface.
4185 * infrun.c (wait_for_inferior): In checking
4186 remove_breakpoints_on_following_step, check
4187 through_sigtramp_breakpoint as well as step_resume_breakpoint.
4191 * os9kread.c (os9k_process_one_symbol): Rename
4192 VARIABLES_INSIDE_BLOCK to OS9K_VARIABLES_INSIDE_BLOCK.
4193 * symfile.c (symbol_file_command): Check for (CORE_ADDR)-1, not
4194 (CORE_ADDR)0, from target_link, since that is what it uses.
4195 Process name at end, not during parsing (like we did before Kung's
4196 change), so that -readnow and -mapped can appear anywhere.
4197 Make text_relocation a local variable.
4198 * config/i386/i386os9k.mt: Fix comment.
4199 * Makefile.in (ALLDEPFILES): Add remote-os9k.c.
4200 * os9kread.c: Put "comments" after #endif inside /* */.
4201 * stabsread.h: Add os9k_stabs variable.
4202 * stabsread.c (start_stabs), os9kread.c (os9k_process_one_symbol):
4204 * stabsread.c (define_symbol): If os9k_stabs, put a 'V' symbol
4205 descriptor in global_symbols not local_symbols.
4206 (read_type): If os9k_stabs, accept 'c', 'i', and 'b' type
4208 (read_type): If os9k_stabs, accept function parameters after 'f'
4210 (read_array_type): If os9k_stabs, don't expect index type and
4211 expect lower and upper to be separated by ',' not ';'.
4212 (read_enum_type): If os9k_stabs, read a number before the first
4213 enumeration constant.
4214 (os9k_init_type_vector): New function.
4215 (dbx_lookup_type): Call it when starting new type vector.
4216 * config/i386/tm-i386os9k.h: Define BELIEVE_PCC_PROMOTION.
4217 * (os9k_process_one_symbol): Call define_symbol not os9k_define_symbol.
4218 * os9kstab.c: Removed.
4219 * Makefile.in: Update accordingly.
4220 * objfiles.c (objfile_relocate_data): Removed.
4221 * remote-os9k.c (rombug_wait): Call objfile_relocate
4222 not objfile_relocate_data.
4223 * objfiles.h, objfiles.c: Remove find_pc_objfile.
4224 * remote-os9k.c (rombug_wait): Call find_pc_section not
4226 * main.c (quit_command): Check inferior_pid; revert Kung change.
4227 * remote-os9k.c (rombug_create_inferior): Set inferior_pid.
4231 * os9kread.c: New file to read os9000 style symbo table.
4232 * os9kstab.c: new file to read os9000 style stabs.
4233 * remote-os9k.c: remote protocol talking to os9000 rombug monitor.
4234 * objfiles.c (find_pc_objfile): new function to search objfile
4236 * objfiles.c (objfile_relocate_data): new function to relocate
4237 data symbols in symbol table.
4238 * objfiles.h: Add two aux fields in struct objfile to handle
4239 multiple symbol table files situation like in os9000.
4240 * symfile.c: Change so 'symbol-file' command can handle multiple
4241 files. Also call target_link() to get relocation infos.
4242 * target.c (target_link): new function to get relocation info when
4243 a symbol file is requested to load.
4244 * main.c (quit_command): take out 'inferior_pid != 0' condition,
4245 because in cross mode there's no inferior pid, bit they need to
4247 Makefile.in: add os9kread.c os9kstab.c and .o's.
4248 configure.in: add i386os9k target.
4249 config/i386/i386os9k.mt: new add.
4250 config/i386/tm-i386os9k.h: new add.
4254 * config/sparc/tm-sun4sol2.h (IN_SIGTRAMP): Handle ucbsigvechandler.
4255 * sparc-tdep.c (sparc_frame_saved_pc): Handle ucbsigvechandler.
4259 * target.c, target.h (target_read_string): Provide error detection to
4260 caller. Put string in malloc'd space, so caller need not impose
4262 * solib.c (find_solib): Update to use new interface.
4263 * irix5-nat.c (find_solib): Read o_path from inferior
4264 (clear_solib): Free storage for o_path.
4265 * valprint.c (val_print_string): Add comments.
4269 * symtab.c (decode_line_1): Handle the case when skip_quoted does not
4274 * value.h (struct value): Add modifiable field.
4275 * values.c (allocate_value, record_latest_value, value_copy): Set it.
4276 (record_latest_value): Don't mess with VALUE_LVAL of value.
4277 * valops.c (value_assign): Check it. Reword existing error
4278 message on not_lval.
4280 * mips-tdep.c (mips_step_skips_delay), config/mips/tm-mips.h
4281 (STEP_SKIPS_DELAY): Added.
4282 * infrun.c (proceed) [STEP_SKIPS_DELAY]: Check for a breakpoint in
4285 * valprint.c (val_print_string): If errcode is set, always print
4286 an error, regardless of force_ellipsis. In the non-EIO case,
4287 just print the error message rather than calling error(). Don't
4288 access *(bufptr-1) if bufptr points to the start of the buffer.
4289 When looking for '\0', don't increment bufptr and addr if bufptr
4290 started out already at limit. If an error happens on fetching the
4291 first character, don't print the string.
4295 * config/m68k/tm-apollo68b.h: Remove HAVE_68881 define; it is
4298 * i387-tdep.c, i386-tdep.c i386v-nat.c, i386aix-nat.c,
4299 i386m3-nat.c, config/m68k/tm-m68k.h, i960-tdep.c
4300 config/i960/tm-i960.h, remote-nindy.c, config/m88k/tm-m88k.h,
4301 m88k-tdep.c: Use floatformat.h instead of ieee-float.h.
4302 * sparc-tdep.c: Remove now-obsolete ieee-float.h stuff
4303 * findvar.c: Update comment regarding ieee-float.h.
4307 * config/i386/tm-i386v4.h (I386V4_SIGTRAMP_SAVED_PC, IN_SIGTRAMP,
4308 FRAME_CHAIN, FRAMELESS_FUNCTION_INVOCATION, FRAME_SAVED_PC):
4309 Define to make backtracing through the various sigtramp handlers
4311 * i386-tdep.c (i386v4_sigtramp_saved_pc): New routine to fetch
4312 the saved pc from ucontext on the stack for SVR4 signal handling.
4316 * remote.c, remote-mon.c, remote-utils.c, remote-utils.h,
4317 target.h, remote-es.c, remote-nindy.c: Don't set baud rate if
4318 baud_rate is -1. Remove sr_get_baud_rate and sr_set_baud_rate;
4319 just use the global variable itself. When printing baud rate,
4320 don't print a baud rate if baud_rate is -1.
4322 * coffread.c (read_coff_symtab): Pass mst_file_* to
4323 record_minimal_symbol for C_STAT symbols. Put C_EXT and C_STAT
4324 symbols in the minimal symbols regardless of SDB_TYPE.
4328 * breakpoint.h (enum bptype): New type bp_through_sigtramp.
4329 (bpstat_what_main_action): New code BPSTAT_WHAT_THROUGH_SIGTRAMP.
4330 * breakpoint.c (bpstat_what): Return BPSTAT_WHAT_THROUGH_SIGTRAMP
4331 if we hit a bp_through_sigtramp breakpoint. Remove kludge which
4332 ignored bs->stop for a bp_step_resume breakpoint.
4333 * infrun.c (wait_for_inferior): Make a through_sigtramp_breakpoint
4334 which performs one (the check_sigtramp2 one) of the functions
4335 which had been handled by the step_resume_breakpoint. For each
4336 use of the step_resume_breakpoint, make it still use the
4337 step_resume_breakpoint, use the through_sigtramp_breakpoint, or
4339 Deal with BPSTAT_WHAT_THROUGH_SIGTRAMP return from bpstat_what.
4340 When setting the frame address of the step resume breakpoint, set
4341 it to the address for frame *before* the call instruction is
4342 executed, not after.
4344 * mips-tdep.c (mips_print_register): Print integers using
4345 print_scalar_formatted rather than duplicating all the
4346 CC_HAS_LONG_LONG and so on.
4347 (mips_push_dummy_frame): Use read_register_gen rather than using
4348 read_register and then putting it back in target format with
4349 store_unsigned_integer. If registers are more than 4 bytes, give
4350 an error rather than have some registers overwrite other
4352 #if 0 unused include of opcode/mips.h.
4354 * symfile.h: Don't declare arguments for coff_getfilename.
4356 * defs.h: Revert Kung change regarding FORCE_LONG_LONG.
4360 * configure.in (hppa*-*-osf*): New configuration.
4361 * config/pa/hppaosf.mt: New target makefile fragment.
4362 * config/pa/tm-hppao.h: New target include file.
4366 * exec.c (print_section_info): Print entry point for exec_bfd only.
4367 * ser-unix.c (wait_for): Fix typo in HAVE_TERMIO case.
4368 * dwarfread.c: Remove second inclusion of <sys/types.h>, which
4369 causes problems if <sys/types.h> has no multiple inclusion protection.
4373 * tm-hppa.h (CALL_DUMMY): Add two NOP instructions to the end of
4374 the call dummy to avoid kernel bugs in HPUX, BSD, and OSF1.
4375 (CALL_DUMMY_LENGTH): Changed accordingly.
4377 Wed Feb 23 16:21:25 1994 Stu Grossman (grossman at cygnus.com)
4379 * sparc-stub.c (trap_low): Make trap handler work for arbitrary
4380 numbers of register windows.
4382 * sparclite/hello.c: Add factorial function for testing.
4383 * salib.c: Use macros instead of constants for I/O addresses to
4384 make 931 support easier.
4385 * sparclite.h: Change constraint for LOC to "rJ" to force use of
4386 register in sta/lda instructions.
4390 * dbxread.c (process_one_symbol): Set
4391 block_address_function_relative for COFF like we do for ELF and SOM.
4395 * mdebugread.c (new_psymtab): Pass in section_offsets and set
4397 * mdebugread.c (handle_psymbol_enumerators): New function to enter
4398 the enumerators of an ecoff enum into the partial symbol table.
4399 * mdebugread.c (parse_partial_symbols): Call it.
4400 * symfile.c (reread_symbols): Initialize objfile->*_psymbols.next.
4401 * symmisc.c (dump_psymtab): Fix typo, clean up output of section
4402 offsets. Cast psymtab->read_symtab to PTR before passing it to
4404 * i386-tdep.c (i386_skip_prologue): Skip over instructions that
4405 set up the global offset table pointer in pic compiled code.
4406 * config/mips/tm-mips.h (FIX_CALL_DUMMY): For big endian targets,
4407 error() on TYPE_CODE_FLT arguments whose size is greater than 8,
4408 swap all other TYPE_CODE_FLT arguments as mips_push_arguments
4409 ensures that floats are promoted to doubles before they are pushed
4412 Fri Feb 18 23:12:59 1994 Stu Grossman (grossman at cygnus.com)
4414 * sparclite/Makefile.in, sparclite/salib.c, sparclite/sparclite.h:
4415 Fixup cache_on and flush_i_cache so that they work for both the
4416 930 and 932 processors. Rewrite most low level funcs (uart
4417 access & cache stuff) to use new ASI access macros in sparclite.h.
4418 Also make it easy to access second serial port.
4422 * hp300ux-nat.c: Don't incloude <sys/dir.h>, <sys/ioctl.h>, or
4423 <sys/stat.h>; not needed.
4427 * stack.c (print_frame_info): In "pathological" case, don't
4428 distrust the line number information.
4432 * mips-tdep.c (mips_print_register): handle 64 bits register.
4433 * valprint.c (print_longest): fix a bug in printing 64 bits value.
4439 * Makefile.in (install): Do the sed for program_transform_name
4440 ourselves instead of worrying about INSTALL_XFORM. This enables
4441 users to override INSTALL_PROGRAM in the standard way.
4443 * Makefile.in (c-exp.tab.o, ch-exp.tab.o, m2-exp.tab.o): Don't
4444 depend on Makefile.in.
4446 * defs.h, valprint.c: Make longest_to_int a function not a macro.
4447 Only test against INT_MIN if a LONGEST is bigger than an int.
4449 * README: Change GhostScript to Ghostscript.
4453 * config/rs6000/{tm-rs6000lynx.h,nm-rs6000lynx.h,xm-rs6000lynx.h}:
4454 Rename to tm-rs6000ly.h, nm-rs6000ly.h, xm-rs6000ly.h for 14
4455 character file names.
4456 * Makefile.in (ALLPARAM): Add these files.
4458 * config/mips/littlemips64.mt: Rename to mipsel64.mt for 14
4459 character file names.
4460 * Makefile.in: Add Kung's new mips64 files.
4464 * configure.in: add mips64-*-elf, mips64-*-ecoff, mips64el-*-elf,
4465 mips64el-*-ecoff and mips64-big-*.
4466 * defs.h: get rid of FORCE_LONG_LONG.
4467 * mips-tdep.c (mips_find_saved_regs): add sd and sdc1 instruction
4468 parsing. Change register size to be MIPS_REGSIZE.
4472 * corelow.c, exec.c, irix5-nat.c, mipsread.c, objfiles.c,
4473 osfsolib.c, rs6000-nat.c, solib.c, symfile.c, utils.c,
4474 xcoffexec.c: Use bfd_get_error and bfd_set_error and new error names.
4478 * remote-hms.c (readchar, hms_open, hms_fetch_register): Made more robust.
4479 (remove_commands, add_commands): Add/remove hms-drain when target
4482 Fri Feb 11 16:11:38 1994 Stu Grossman (grossman at cygnus.com)
4484 * configure.in: Add Lynx/rs6000 support.
4485 * lynx-nat.c: Clean up some Sparc stuff. Clean up ptrace error
4486 messages. Add rs6000 support. Don't try to modify unwritable
4488 * rs6000-nat.c: Move lots of native dependent stuff (like core
4489 file support) from rs6000-tdep.c & xcoffexec.c to here.
4490 * rs6000-tdep.c: Move native dependent stuff to nat.c.
4491 * xcoffexec.c: Move native dependent stuff to nat.c.
4492 * config/rs6000/nm-rs6000.h: Move defs of SOLIB_* macros to here
4494 * config/rs6000/tm-rs6000.h: Remove defs of SOLIB_* funcs, cuz they're
4496 * config/rs6000/tm-rs6000lynx.h, config/rs6000/xm-rs6000lynx.h:
4497 New files to support Lynx/rs6000.
4501 * README: Remove note about gcc warnings on alpha, these should be
4503 * c-exp.y, ch-exp.y, core.c, corelow.c, eval.c, fork-child.c,
4504 m2-exp.y, minsyms.c, nlmread.c, parse.c, putenv.c, regex.c
4505 remote-utils.c, stabsread.c: Include <string.h>.
4506 * regex.c: Include "defs.h", change re_comp argument to const char *.
4507 * infptrace.c (fetch_register, store_inferior_registers): Change
4508 regaddr to type CORE_ADDR.
4509 * config/alpha/alpha-nw.mt, config/alpha/alpha-osf1.mt (MT_CFLAGS):
4510 Remove, no longer necessary now that we use bfd_vma for a CORE_ADDR.
4514 * symtab.h: Always define BYTE_BITFIELD to nothing.
4518 * config/m68k/{m68k-em.mt,tm-m68k-em.h}: Remove; no longer used.
4519 * configure.in: Remove comment about m68k-em.mt.
4520 * Makefile.in: Remove references.
4524 * defs.h [BFD64]: Use BFD_HOST_64_BIT, not nonexistent
4529 * hpread.c (hpux_symfile_init): Use obj_som_* rather than obj_* to
4530 access BFD private data. Search for the "$TEXT$" space rather
4532 (hppa_sym_fns): Add bfd target flavour to initializer.
4536 * target.c (target_preopen): If target_kill doesn't remove the
4537 target from the stack, use pop_target to do it.
4539 * coffread.c (process_coff_symbol, case C_TPDEF): Don't set name
4540 of TYPE_CODE_PTR or TYPE_CODE_FUNC types. This parallels similar
4541 changes to stabsread.c from summer 1993.
4543 * remote-udi.c (udi_files_info): If prog_name is NULL, just skip
4544 printing the program, rather than passing NULL to printf.
4545 (udi_detach): Set udi_session_id to -1 so that udi_close doesn't
4546 try to call UDIDisconnect again. Print better message.
4547 (udi_kill): Just call UDIDisconnect ourselves, rather than doing
4549 (udi_create_inferior): If udi_session_id is negative, open a new
4550 TIP rather than giving an error.
4552 * config/mips/mipsm3.mh, config/i386/i386m3.mh,
4553 config/ns32k/ns32km3.mh: Define NAT_FILE.
4554 * config/nm-m3.h: Change guard from _OS_MACH3_H_ and _OS_MACH3_H
4555 (it was inconsistent and namespace-wrong) to NM_M3_H.
4556 * m3-nat.c (mach_really_wait): Change parameter name to ourstatus.
4557 (m3_open): New function.
4559 * TODO: Update Mach section.
4561 * Makefile.in: Remove "rapp" stuff; it is superseded by gdbserver.
4565 * printcmd.c (printf_command): Add missing single-letter
4566 backslash-escape sequences, and improve error message.
4570 * corelow.c (solib_add_stub, core_open): Pass address of from_tty
4571 rather than trying to shove an int into a pointer and back out
4572 again. This avoids compiler warnings.
4574 * defs.h (alloca): Declare as void *, not char *, on hpux.
4575 Don't prototype it, just declare the return type.
4579 * config/i386/tm-sun386.h, config/i386/tm-symmetry.h
4580 (REGISTER_CONVERT_TO_RAW): Add missing backslash.
4584 * remote-mips.c (mips_fetch_registers): If regno is FP_REGNUM or
4585 ZERO_REGNUM, just read it as zero without talking to the board.
4587 * config/i386/tm-i386aix.h (REGISTER_CONVERT_TO_RAW): Add missing
4589 * i386-tdep.c (i386_extract_return_value): Pass TYPE_LENGTH (type)
4590 to store_floating, not nonexistent variable len.
4592 * remote-mips.c (mips_insert_breakpoint, mips_remove_breakpoint):
4594 (mips_store_word): Change calling convention to return errors, and
4595 to provide old contents if the caller wants it.
4596 (mips_xfer_memory): Deal with errors from mips_store_word.
4597 * config/mips/tm-idt.h, config/mips/tm-idtl.h: Remove BREAKPOINT
4598 define now that remote-mips.c doesn't use BREAKPOINT.
4600 * remote-mips.c (mips_create_inferior): Call warning if arguments
4601 specified, and then execute "set args" command. Call error, not
4602 mips_error, if executable file not specified.
4604 * remote-e7000.c: Replace "snoop" command (e7000_noecho) with
4607 * config/rs6000/tm-rs6000.h (STORE_STRUCT_RETURN): Don't cast
4612 * value.h (print_longest): Rename "value" to "val" in prototype
4613 declaration because some compilers don't like arguments whose
4614 names are the same as types.
4615 * remote.c (remote_xfer_memory): Cast "myaddr" to unsigned char *
4616 before passing it to remote_*_bytes.
4620 * h8500-tdep.c (saved_pc_after_call): The size of the
4621 pc is memory model dependent. (segmented_command,
4622 unsegmented_command, _initialize_h8500_tdep): New commands to
4623 change memory model.
4624 * remote-e7000.c (_initialize_remote_e7000): Change name of snoop
4626 * remote-hms.c (hms_load): Remove breakpoints when loaded.
4627 (hms_wait): Use new status structure
4628 (hms_open): Push the target here. (hms_before_main_loop): Not
4629 here. (supply_val, hms_fetch_register, hms_store_register): Cope
4630 with H8/500 names too. (hms_fetch_register): Take out REGISTER_TYPE.
4631 * sh-tdep.c (show_regs, initialize_sh_tdep): New command to print
4632 all registers in a compact way.
4636 * config/rs6000/tm-rs6000.h: Declare rs6000_struct_return_address
4637 as CORE_ADDR to match definition in rs6000-tdep.c.
4641 * dwarfread.c (process_dies): Skip nested TAG_compile_unit DIEs.
4642 * dwarfread.c (add_partial_symbol): Do not enter opaque aggregate
4643 definitions into the psymtab.
4647 * m68k-stub.c: Treat mc68332 like mc68020 most places. Provide
4648 a special exceptionSize for the 68332.
4650 * remote-udi.c (udi_attach): If no arguments, print error.
4654 * Makefile.in (VERSION): Bump to 4.12.1
4655 * NEWS, README: Update to match 4.12 release.
4659 * command.c (empty_sfunc): New function.
4660 (add_set_cmd): Use it instead of not_just_help_class_command.
4661 (not_just_help_class_command): Change calling convention back to
4662 what it was before yesterday's change.
4664 * stabsread.c (read_sun_builtin_type): Skip the semicolon at the end
4665 of the type if present.
4669 * printcmd.c (decode_format): Don't blithely set the size for
4670 an address to 'w'. Make it 'g' or 'h', depending on TARGET_PTR_BIT.
4672 * defs.h: Just typedef CORE_ADDR to bfd_vma. Include bfd.h.
4673 If BFD64, make a LONGEST a BFD_HOST_64_BIT.
4674 * defs.h (longest_to_int): Don't depend on CC_HAS_LONG_LONG; instead
4675 always just check against INT_MIN and INT_MAX (this also fixes things
4676 if sizeof (long) > sizeof (int), e.g. Alpha).
4677 * config/pa/tm-hppa.h, config/i386/sun386.h, config/rs6000/tm-rs6000.h:
4678 Don't define LONGEST or BUILTIN_TYPE_LONGEST.
4679 * gdbtypes.h: Remove BUILTIN_TYPE_LONGEST and
4680 BUILTIN_TYPE_UNSIGNED_LONGEST.
4681 * language.h, c-lang.c, ch-lang.c, m2-lang.c, language.c: Remove
4682 longest_int and longest_unsigned_int.
4683 * value.h (struct value): Just align to LONGEST, rather than worrying
4684 about CC_HAS_LONG_LONG.
4685 * valarith.c (value_binop): Figure out type ourself based on
4686 sizeof (LONGEST) rather than relying on BUILTIN_TYPE_LONGEST. The
4687 point is that we don't depend on CC_HAS_LONG_LONG anymore.
4688 * valprint.c (val_print_type_code_int): Just call
4689 extract_unsigned_integer directly, rather than going through
4691 * printcmd.c (decode_format): Remove code which would sometimes
4692 change 'g' size to 'w' for integers. print_scalar_formatted handles
4693 printing huge integers well enough, thank you.
4695 * command.c (add_set_cmd, not_just_help_class_command): Change
4696 to make this the sfunc, not cfunc, since that is how we call it.
4697 * command.h: Comment difference between sfunc and cfunc.
4698 * demangle.c (set_demangling_command): Add third arg since that
4699 is how it is called.
4700 (_initialize_demangler): Use sfunc, not cfunc, for
4701 set_demangling_command, since that is how it is called.
4702 Remove show_demangling_command; it has no effect.
4704 * command.c (shell_escape): Report errors correctly (with error
4705 message from strerror).
4709 * xcoffread.c (read_xcoff_symtab): Change CSECT_LEN to use
4710 x_scnlen.l rather than x_scnlen to match corresponding change in
4715 * gdbtypes.h, ch-typeprint.c, ch-valprint.c:
4716 Change comments regarding TYPE_CODE_BOOL.
4717 * language.c (boolean_type): Always return 1 for TYPE_CODE_BOOL,
4718 regardless of the language.
4719 (value_true): Just call value_logical_not regardless of language.
4720 * coffread.c (coff_read_enum_type), stabsread.c (read_enum_type):
4721 Remove #if 0'd code which makes some enums TYPE_CODE_BOOL.
4722 * language.h: Improve comment for la_builtin_type_vector.
4723 * m2-lang.c (_initialize_m2_language): Don't add any fields to
4724 builtin_type_m2_bool.
4728 * config/m88k/{tm-delta88.h,tm-delta88v4.h}, m88k-tdep.c:
4729 Define IN_SIGTRAMP and backtrace correctly through signal handlers.
4733 * procfs.c (wait_fd): Handle EINTR error return from PIOCWSTOP ioctl
4734 by restarting the ioctl.
4738 * target.h (target_wait): Add comment about calling
4739 return_to_top_level.
4743 * coffread.c (read_one_sym): bfd_coff_swap_aux_in now takes
4744 additional arguments.
4745 * xcoffread.c (read_xcoff_symtab, read_symbol_lineno): Likewise.
4747 Mon Jan 31 16:10:41 1994 Stu Grossman (grossman at cygnus.com)
4749 * sparc-stub.c: Remove unnecessary #include of memory.h.
4753 * mips-tdep.c: Remove code which sets saved_regs from
4754 init_extra_frame_info and put it in new function mips_find_saved_regs.
4755 (READ_FRAME_REG): Remove macro and replace uses with the expansion.
4756 * mips-tdep.c, config/mips/tm-mips.h: When examining ->saved_regs,
4757 check if it is NULL and call mips_find_saved_regs if so.
4759 * remote-mips.c: Use unfiltered, not filtered, output most places.
4761 * blockframe.c (get_prev_frame_info): Detect and stop an infinite
4762 backtrace. Revise comments.
4766 * mdebugread.c (parse_procedure): Remove _sigtramp kludges for
4767 alpha and irix. The _sigtramp case has to be handled properly
4768 in the tdep files if we have no ecoff debugging info.
4769 * alpha-tdep.c (alpha_frame_saved_pc, alpha_frame_chain),
4770 mips-tdep.c (mips_frame_saved_pc): Handle signal handler frames
4771 without PC_REGNUM kludge.
4772 * mdebugread.c (fixup_sigtramp), mips-tdep.c (read_next_frame_reg):
4773 Clean up handling of mips sigtramp frames, improve comments.
4777 * paread.c (read_unwind_info): Fix typo.
4779 * paread.c (pa_symtab_read): Update the "check_strange_names"
4780 filter to match GCC's current output. Filter out section symbols
4781 (which the HP linker sometimes puts in the wrong place).
4785 * serial.h (SERIAL_SET_TTY_STATE): Comment return value.
4787 * Makefile.in (TAGS): Just echo one line, rather than the whole thing.
4789 * Makefile.in: Remove all references to sparcly-nat.c.
4791 * Makefile.in (HFILES_NO_SRCDIR): Include dcache.h remote-utils.h
4792 remote-sim.h directly, rather than via $(remote_utils_h). This avoids
4793 duplicating serial.h and target.h.
4795 * Makefile.in: Don't set M_INSTALL and M_UNINSTALL. These variables
4796 are not used anywhere (a 5 Oct 1993 change removed the uses).
4798 * config/m68k/monitor.mt (TDEPFILE): Add remote-es.o.
4799 * config/m68k/es1800.mt: Add comment.
4800 * remote-es.c: Extensive changes to update to current conventions.
4802 * ser-unix.c (wait_for, hardwire_readchar) [HAVE_TERMIO, HAVE_TERMIOS]:
4803 If the timeout is too big to fit in c_cc[VTIME], then do multiple reads
4804 to achieve the desired timeout.
4805 * serial.h (serial_t): Add field timeout_remaining.
4809 * c-exp.y (yylex): Reenable nested type code.
4813 * a29k-tdep.c (examine_tag): Add comment regarding argcount.
4815 * remote-mips.c (mips_ops): Fix docstring.
4817 * remote-bug.c (bug_ops): Remove spurious newline from docstring.
4819 * config/m68k/tm-monitor.h: Changes to bring this into accordance
4820 with the old tm-m68k-em.h:
4821 (GDBINIT_FILENAME, DEFAULT_PROMPT): Remove.
4822 (HAVE_68881): Don't undefine; HAVE_68881 is obsolete.
4823 (REGISTER_NAMES): Don't muck with it; what tm-m68k.h has is fine.
4824 Add FIXME regarding GET_LONGJMP_TARGET.
4826 * remote-udi.c (udi_close, udi_detach, udi_kill): Add comments.
4827 * infptrace.c (kill_inferior): Add comments.
4828 * main.c (quit_command): Call target_close after we kill or
4830 * remote-udi.c (udi_close): Don't error() if QUITTING.
4834 * configure.in: Make m68k-coff and aout add monitor support in
4835 addition to the standard serial support.
4839 * mdebugread.c (psymtab_to_symtab_1): Don't complain on stLabel with
4844 * config/pa/tm-hppa.h: Define macro SMASH_TEXT_ADDRESS.
4845 * elfread.c (record_minimal_symbol_and_info),
4846 dwarfread.c (process_dies), paread.c (pa_symtab_read): Use it.
4850 * i386-stub.c: Add ".text" right before "mem_fault:".
4852 * main.c (baud_rate): Add FIXME comment about printing -1 value.
4854 * remote-utils.c (usage): Fix message to be accurate and conform
4855 more closely to normal conventions.
4857 * remote-utils.c (gr_files_info): Have the exec_bfd test control
4858 whether to show information about exec_bfd, and not control whether
4859 to show information about device and speed.
4861 * remote-utils.c (gr_open): If sr_get_device returns NULL, give
4862 usage message, don't dump core.
4864 * remote-bug.c (bug_write_memory): Use alloca, not GCC extension
4865 for variable size array.
4866 (bug_fetch_register, bug_store_register): Rename "value" to
4867 "fpreg_buf" because some compilers don't like variables whose
4868 names are the same as types.
4869 (bug_store_register): Use a cast when converting char * to
4872 * symmisc.c (maintenance_print_symbols): Don't refer to the name
4873 of the command in error message (the text was referring to the old
4874 name of the command).
4876 * symmisc.c (dump_symtab): Fix args to fprintf_filtered.
4878 * c-typeprint.c (c_type_print_base): Have SHOW == 0 mean to print
4879 full details on structure elements without names. This partially
4880 reverts the changes of 1 Jul 1993 and 31 Aug 1993; I think this aspect
4881 of those changes was accidental.
4883 * stack.c (parse_frame_specification): If SETUP_ARBITRARY_FRAME is
4884 defined, make it an error to specify a single argument which is not
4887 * Makefile.in (version.c), main.c (print_gdb_version): Use
4888 host_alias and target_alias, not host_canonical and
4889 target_canonical, to print configuration.
4893 * parse.c (write_exp_msymbol): Use new type msymbol_addr_type instead
4894 of builtin_type_long. It is necessary to get a type which is
4895 TARGET_PTR_BIT bits in size; builtin_type_long might not be big enough.
4897 Fix many sins which will come up in 32 bit x 64 bit GDB, and
4898 various miscellaneous things discovered in the process:
4899 * printcmd.c, defs.h (print_address_numeric): New function.
4900 * c-valprint.c (c_val_print), ch-valprint.c (chill_val_print)
4901 breakpoint.c (describe_other_breakpoints, breakpoint_1, mention),
4902 cp-valprint.c (cplus_print_value), infcmd.c (jump_command),
4903 printcmd.c, stack.c, symfile.c, symmisc.c, valprint.c:
4905 * utils.c, defs.h (gdb_print_address): New function.
4906 * expprint (dump_expression), gdbtypes.h: Use it.
4907 * breakpoint.c (describe_other_breakpoints),
4908 symmisc.c (dump_symtab, print_symbol):
4909 Use filtered not unfiltered I/O.
4910 (remove_breakpoints): Remove BREAKPOINT_DEBUG code. Might as well
4911 just run gdb under a debugger for this (and it had problems with
4912 printing addresses, how to print b->shadow, etc.).
4913 * buildsym.c (make_blockvector), core.c (memory_error),
4914 exec.c (print_section_info), maint.c (print_section_table),
4915 mdebugread.c (parse_procedure), solib.c, source.c, symfile.c,
4916 symmisc.c, symtab.c, valops.c, valprint.c, xcoffexec.c:
4917 Add comments saying code is broken. Marked with "FIXME-32x64".
4918 * dbxread.c (process_one_symbol), partial-stab.h (default),
4919 remote-vx.c (vx_run_files_info):
4920 Don't cast int being passed to local_hex_string.
4921 * symmisc.c (print_symbol): Don't cast long being passed to %lx.
4922 * symtab.h (general_symbol_info): Add comment about SYMBOL_VALUE
4924 * symmisc.c (print_symbol): Print "offset" in message for LOC_ARG
4926 * printcmd.c (print_address): Remove #if 0 code with ADDR_BITS_REMOVE.
4927 * source.c: Include <sys/types.h> regardless of USG.
4931 * valops.c (value_assign): Set `type' after coercing toval.
4932 * c-valprint.c (c_val_print), ch-valprint.c (chill_val_print):
4933 Use extract_unsigned_integer to get the address of a reference.
4937 * stabsread.c (STABS_CONTINUE, error_type), partial-stab.h:
4938 AIX can use ? instead of \ for continuation. Deal with it.
4940 * paread.c (read_unwind_info): Just assign to objfile->obj_private,
4941 not OBJ_UNWIND_INFO. Assigning to a cast is a GCC-ism which
4942 the HP compiler in ANSI mode doesn't like.
4944 * main.c: When defaulting HAVE_SIGSETMASK based on USG, just do it
4945 based on USG, rather than defining HAVE_SIGSETMASK to an
4946 expression containing defined. Having a macro used in #if expand
4947 to an expression containing "defined" is undefined according to
4948 ANSI, and the HP compiler in ANSI mode doesn't do what we wanted
4953 * sparc-nat.c (fetch_inferior_registers, store_inferior_registers):
4954 Clean up the changes of 11 Jan, as recommended by Peter Schauer.
4958 * ch-exp.y (match_string_literal): Allow a zero-length string.
4959 * ch-lang.c (chill_printstr): Don't print zero-length string funny.
4963 * i386aix-nat.c (i386_float_info): Reverse order of registers before
4964 passing them to print_387_status.
4965 (print_387_status): Don't subtract top from 7 before using it.
4966 * i387-tdep.c: Remove comment about AIX wanting "top" subtracted
4967 from 7; the above explains it.
4971 * mips-tdep.c (init_extra_frame_info): Use frame relative stack
4972 pointer value when fixing up the frame at the start of a function.
4974 Sat Jan 22 12:29:13 1994 Stu Grossman (grossman at cygnus.com)
4976 * lynx-nat.c (fetch_core_registers): Load the I & L regs for the
4977 Sparc from the stack.
4981 * remote-mips.c (mips_initialize): Clear mips_initializing via
4982 cleanup chain, not directly.
4984 * ser-unix.c (wait_for) [HAVE_TERMIO, HAVE_TERMIOS]: Make a timeout
4985 of -1 mean forever, like in the HAVE_SGTTY case. Warn if we are
4986 munging the timeout due to the limited range of c_cc[VTIME].
4988 * fork-child.c, inferior.h (fork_inferior): New argument shell_file.
4989 * procfs.c (procfs_create_inferior), inftarg.c (child_create_inferior),
4990 m3-nat.c (m3_create_inferior): Pass it.
4991 * procfs.c: Remove ptrace function. It was declared in a way which
4992 conflicted with the prototype in unistd.h on Solaris.
4996 * sparc-tdep.c (frame_saved_pc): Get the pc from the saved pc
4997 in the sigcontext if it is a signal trampoline frame.
4998 * config/sparc/tm-sun4sol2.h (IN_SIGTRAMP, SIGCONTEXT_PC_OFFSET):
4999 Define for Solaris2.
5001 Sat Jan 22 00:34:47 1994 Stu Grossman (grossman at cygnus.com)
5003 * sparc-tdep.c, lynx-nat.c, config/sparc/tm-sparc.h,
5004 config/sparc/tm-sparclynx.h: Move defs of FRAME_SAVED_I0/L0 to
5005 tm-sparc.h so they can be overridden if necessary.
5007 Fri Jan 21 17:49:28 1994 Stu Grossman (grossman at cygnus.com)
5009 * lynx-nat.c: Add Sparc support.
5010 * sparcly-nat.c: Remove. It's useless.
5011 * config/sparc/nm-sparclynx.h: Rewrite.
5012 * config/sparc/sparclynx.mh (NATDEPFILES): Replace sparcly-nat.o
5014 * config/sparc/tm-sparclynx.h: Rewrite.
5018 * rs6000-pinsn.c: Use the new disassembler in the opcodes
5019 directory. Old code was discarded, since the new opcode table has
5024 * Makefile.in (realclean): Remove info files per make-stds.texi.
5028 * dbxread.c (end_psymtab): Only patch psymtab textlow and texthigh
5029 if N_SO_ADDRESS_MAYBE_MISSING is defined.
5030 * config/sparc/tm-sun4sol2.h: Define it.
5034 * printcmd.c (print_address_symbolic): Unconditionally use msymbol
5035 if we did not find a symbol.
5039 * infptrace.c (child_xfer_memory): Only use if CHILD_XFER_MEMORY
5042 * hppab-nat.c (call_ptrace): Delete redundant function.
5043 (kill_inferior, attach, detach, child_resume): Likewise.
5044 (child_xfer_memory): Likewise.
5046 * hppah-nat.c (call_ptrace): Delete redundant function.
5047 (kill_inferior, attach, detach, child_resume): Likewise.
5049 * config/pa/hppabsd.mh (NATDEPFILES): Add infptrace.o.
5051 * config/pa/hppahpux.mh (NATDEPFILES): Add infptrace.o.
5053 * config/pa/nm-hppab.h (FETCH_INFERIOR_REGISTERS): Define.
5055 * config/pa/nm-hppah.h (FETCH_INFERIOR_REGISTERS): define.
5056 (CHILD_XFER_MEMORY): Define.
5057 (PT_*): Define so that generic infptrace.c code can be used.
5061 * xcoffread.c (xcoff_symfile_read): Make second parameter a
5062 struct section_offsets *, not a (nonexistent) struct section_offset *.
5064 * xcoffread.c (read_xcoff_symtab): Make main_aux just a union
5065 internal_xcoff_symtab, not an array of one of them. Change lots of
5066 "main_aux" to "&main_aux" and so on.
5068 * coffread.c, xcoffread.c: Include <coff/internal.h>
5073 * coffread.c (coff_getfilename): Make it not static.
5075 * xcoffread.c (read_xcoff_symtab): complain() not abort().
5077 * xcoffread.c (struct coff_symbol): Rename c_nsyms to c_naux (removes
5078 a completely gratuitous difference between xcoffread.c and coffread.c).
5082 * infrun.c (wait_for_inferior): Don't set frame for
5083 step_resume_breakpoint for IN_SIGTRAMP cases.
5085 * infrun.c (wait_for_inferior), breakpoint.h (struct bpstat_what),
5086 breakpoint.c (bpstat_what): Move step_resume from its own field of
5087 the struct bpstat_what into the main_action. Make it override
5088 other breakpoints. This is a conservative change in the sense
5089 that before the step resume breakpoint was a breakpoint.c
5090 breakpoint, hitting the step resume breakpoint overrode even
5091 calling bpstat_stop_status.
5095 * infrun.c (normal_stop): Set stop_pc after popping the dummy frame
5096 in case execution was stopped in the called function.
5097 * stack.c (print_frame_info, frame_info): If backtracing through
5098 a call dummy, handle the starting source line number on a line
5099 boundary like backtracing through sigtramp.
5100 * sparc-tdep.c (sparc_frame_find_saved_regs): Get frame address
5101 for call dummy frame right. Remove old test for dummy frame,
5102 it has been unused at least since gdb-3.5.
5103 * sparc-tdep.c (sparc_push_dummy_frame): Set return address register
5108 * infcmd.c (signal_command): Accept 0 as legitimate signal number.
5112 * infrun.c (signals_info), target.c (target_signal_from_name):
5113 Use ugly casts to avoid enumvar < enumvar or enumvar++.
5117 * ser-unix.c (hardwire_noflush_set_tty_state): Don't muck with ICANON.
5118 * inflow.c (terminal_ours_1): When discussing how to deal with the
5119 tty state, make note of query() as well as readline.
5121 * infrun.c (_initialize_infrun): Add TARGET_SIGNAL_POLL to list of
5122 signals for which stop and print are cleared by default.
5126 * config/pa/tm-hppa.h (unwind_table_entry): Use one of the
5127 reserved fields to hold a stub unwind entry type. Fix typo.
5128 (stub_unwind_entry): New structure for raw stub unwind entries.
5129 (stub_unwind_types): The types of stubs we may encounter.
5130 (UNWIND_ENTRY_SIZE, STUB_UNWIND_ENTRY_SIZE): New defines.
5131 * hppa-tdep.c (rp_saved): Use additional information provided
5132 by linker stub unwind descriptors.
5133 (frameless_function_invocation): Likewise.
5134 (frame_chain_valid): Likewise.
5135 * paread.c (compare_unwind_entries): New function for sorting
5136 unwind table entries.
5137 (read_unwind_info): Rewrite to remove dependency on host endianness.
5138 Read in data from the $UNWIND_END$ subspace which contains linker
5139 stub unwind descriptors. Merge that data into the basic unwind
5142 * hppab-nat.c (_initialize_kernel_u_addr): Delete unwanted functions.
5146 * xcoffread.c (read_xcoff_symtab, case C_FILE): Accept the name
5147 from either the symbol name or the auxent.
5148 * coffread.c, symfile.h (coff_getfilename): Renamed from getfilename,
5153 * Makefile.in (ALLPARAM): Change irix5.h to nm-irix5.h.
5157 * README: Update notes for alpha port.
5161 * i960-tdep.c (i960_fault_to_signal): Return TARGET_SIGNAL_ILL
5162 for operation fault, constraint fault, and type fault.
5166 * Makefile.in (init.c): Add comment explaining formatting conventions.
5168 * c-exp.y (parse_number): Assign to temporary between the right
5169 shifts, to work around a bug in the SCO compiler.
5171 * Makefile.in (ALLCONFIG, ALLPARAM, ALLDEPFILES, HFILES_NO_SRCDIR):
5172 Add various files which were added to GDB recently.
5174 * xcoffread.c (process_xcoff_symbol): Only change 'V' to 'S' if not
5177 * Makefile.in: Add mostlyclean target.
5185 * main.c (show_commands): Make return type of extern
5186 history_get be HIST_ENTRY, rather than struct _hist_entry.
5187 (The latter loses with the upcoming merged readline.)
5191 * minsyms.c (prim_record_minimal_symbol_and_info): Make tempstring
5192 const char *, not char *.
5194 * symtab.h (struct symbol): Make section short, not unsigned short.
5196 * symtab.c (lookup_symbol): Add comment about QUIT here.
5198 * utils.c (fputs_unfiltered): Call fputs, not fputs_maybe_filtered.
5200 * c-exp.y (parse_number): Check for overflow regardless of range
5201 checking. Fix overflow check to use unsigned LONGEST, not
5204 * c-exp.y (parse_number): Make it so that integer constants are
5205 builtin_type_long_long if builtin_type_long isn't big enough or if
5206 an "LL" suffix is used. Properly handle "UL" or "LU" suffixes.
5208 * c-typeprint.c (c_type_print_varspec_suffix, case TYPE_CODE_FUNC):
5209 Print our "()" first, then recurse for the target type.
5213 * remote-udi.c (udi_create_inferior): Quote empty execfile argument.
5215 * gdbserver/low-lynx.c: Include <sys/wait.h> not "/usr/include/wait.h".
5219 * utils.c (request_quit): Re-establish signal handler regardless
5222 * config/mips/xm-irix4.h: Define HAVE_TERMIOS.
5226 * i960-tdep.c: Include target.h.
5230 * lynx-nat.c (sys/wait.h): Don't use absolute pathname.
5234 * lynx-nat.c (child_wait): Fix thinkos in struct target_waitstatus
5235 changes (status -> ourstatus; declare status, etc.).
5236 * config/nm-lynx.h: Fix child_wait prototype and include target.h.
5240 * Makefile.in (ALLPARAM): Add config/nm-lynx.h.
5244 * remote-mips.c (mips_request, mips_wait): Correct prototypes.
5248 * config/i386/xm-linux.h: Define HAVE_TERMIOS.
5252 * config/alpha/tm-alpha.h (CALL_DUMMY): Improve comment.
5256 * remote-vx.c (vx_wait): Only call i960_fault_to_signal if I80960
5257 is defined. Otherwise just report TARGET_SIGNAL_UNKNOWN.
5259 * mips-tdep.c (mips_push_arguments): Byteswap struct_addr before
5262 Add search to target vector (#if 0'd until after 4.12):
5263 * target.h (to_search, target_search): Add.
5264 * gdbcore.h, core.c (generic_search): Add.
5265 * remote.c (remote_search): Add.
5266 * a29k-tdep.c (init_frame_info): Use target_search to find traceback
5269 * printcmd.c (print_address_symbolic): If set print fast-symbolic-addr
5270 is on, call find_pc_function rather than relying just on the minimal
5271 symbols (probably only matters for symbol readers which don't put
5272 statics in the minimal symbols, but changing this strikes me as
5273 not conservative enough).
5274 Initialize name_location in all cases.
5275 If no symbol and no msymbol, don't print anything symbolic.
5277 * a29k-tdep.c (push_dummy_frame): Add comment about saving lr0.
5281 * printcmd.c (print_address_symbolic): Make it search the
5282 symtabs for variables as well as functions. Add `set print
5283 fast-symbolic-addr' and default it to fast (the old way).
5284 Print line numbers for data items as well as functions.
5286 * symtab.c (find_addr_symbol): Return the symtab and the symbol
5287 address, if a symbol is found (take two more args pointing to
5288 where to store these results).
5290 * symtab.h (find_addr_symbol): Add prototype.
5294 * objfiles.h: Fix comments to reflect the fact that the phrase
5295 "top of stack" always refers to where the pushing and popping takes
5296 place, regardless of whether it is at the highest or lowest address.
5300 * mdebugread.c (parse_symbol): Do not set TYPE_TAG_NAME for
5301 compiler generated tag names.
5302 * mdebugread.c (parse_type): Handle cross references to qualified
5304 * valops.c (value_struct_elt): Improve error message if the
5305 address of a method is requested from an object instance.
5306 * valops.c (search_struct_method): Make name_matched non-static
5307 to get it initialized correctly.
5308 * config/i386/nm-i386sco.h (CANNOT_STORE_REGISTER): Define to
5309 exclude segment register which are not writable on newer SCO versions.
5313 * go32-xdep.c: Remove unused function uerror.
5314 (sigsetmask): Declare return type. Declare argument (to match the
5315 way it is called). Explicitly return 0.
5319 * symtab.h (struct symbol, general_symbol_info, minimal_symbol,
5320 partial_symbol): Shrink the storage sizes of symbols, by making
5321 enums into 1-byte bitfields when compiled __GNUC__, moving all the
5322 enums and small ints to the end of each struct to improve
5323 alignment, and switching the section number from int to unsigned
5328 * symtab.c (find_addr_symbol): New routine that will find the nearest
5329 symbol associated with an address. It does so by exhaustive
5330 search of the symtabs, so it's slow but complete.
5334 * coffread.c (read_coff_symtab): Set PC bounds of _globals_ symtab
5335 to [0,0] rather than [0, end of first source file]. This avoids
5336 problems with other parts of GDB looking for linetables in the
5337 _globals_ symtab. Eliminate variables num_object_files and
5338 first_object_file_end.
5342 * a29k-tdep.c (init_frame_info): Cast null arg to examine_tag.
5343 (pop_frame): Restore PC2 and LR0 from dummy frames.
5344 (push_dummy_frame): Save PC2 and LR0 into dummy frames.
5345 (setup_arbitrary_frame): Handle 3 args and set up real frames.
5346 * config/a29k/tm-a29k.h (FRAME_NUM_ARGS): Update comments.
5347 (DUMMY_FRAME_RSIZE): Add 2 longwords for PC2 and LR0.
5348 (SETUP_ARBITRARY_FRAME): Define.
5352 * infrun.c, config/mips/tm-irix5.h: Remove #if 0'd AT_FUNCTION_START.
5356 * remote-udi.c (udi_resume): Correct prototype.
5360 * config/pa/tm-hppa.h (FRAME_FIND_SAVED_REGS): Call
5361 hppa_frame_find_saved_regs.
5362 * hppa-tdep.c (dig_fp_from_stack): Delete function.
5363 (prologue_inst_adjust_sp): New function.
5364 (is_branch, inst_saves_gr, inst_saves_fr): New functions.
5365 (skip_prologue): Completely rewrite to use unwind information.
5366 (hppa_frame_find_saved_regs): Likewise.
5370 * remote-mips.c (mips_wait): Use new function mips_signal_from_protocol
5371 to convert a signal number with appropriate bounds checking.
5373 * remote-mips.c (mips_wait): Fix typos (0x177 -> 0177, 0x377 -> 0377).
5377 * stack.c (frame_info): If FRAME_FIND_SAVED_REGS isn't defined,
5378 print a newline to end the display anyway.
5380 * sparc-tdep.c (sparc_pop_frame): Pop the fsr and csr (float and
5381 coprocessor status regs) when popping a frame. This fixes
5382 float exceptions that occur after calling inferior functions.
5384 * sparc-nat.c (fetch_inferior_registers, store_inferior_registers):
5385 Read and write the fsr (float status register) to/from the child
5386 process along with the float regs. Remove Peter Schauer's change
5387 of May 24 '93, which has higher overhead and doesn't solve the
5388 real problem (which was that FSR wasn't being set).
5392 * a29k-tdep.c (examine_prologue): Don't worry if the ASGEQ
5393 stack overflow check isn't right after the register stack
5394 adjustment instruction. Metaware R2.3u compiler moves other
5395 things in front of it. This fix isn't perfect but is what's
5400 * c-valprint.c (c_val_print): Treat TYPE_CODE_RANGE like TYPE_CODE_INT.
5402 * config/alpha/alpha-netware.mt: Rename to alpha-nw.mt for 14
5403 character filenames.
5404 * configure.in: Change accordingly.
5408 * m68k-stub.c, sparc-stub.c: removed spurious introduction of
5409 _filtered io routines from these two files.
5413 * config/i386/tm-i386v.h, config/m68k/tm-m68k.h, config/mips/tm-mips.h,
5414 config/vax/tm-vax.h (CALL_DUMMY_BREAKPOINT_OFFSET): Define.
5415 * mdebugread.c (parse_symbol): Handle enum sh.type produced by
5417 * mdebugread.c (add_line): Handle zero linenos produced by DEC c89.
5421 * utils.c (print_sys_errmsg): Call gdb_flush (gdb_stdout) before
5422 printing to gdb_stderr.
5424 * remote-udi.c (udi_kill): Don't close the connection, just set
5425 inferior_pid to zero.
5426 (udi_mourn): Call remove_breakpoints.
5428 * remote-udi.c: Remove obsolete need_artificial_traps comment.
5430 * i386b-nat.c (sregmap): If sEAX, etc., not defined, use tEAX, etc.
5434 * symtab.c (lookup_symbol): Don't try adding .c to the name.
5436 * remote-bug.c: At the start of each section, reset srec_frame
5439 * target.h: Add TARGET_WAITKIND_LOADED and TARGET_WAITKIND_SPURIOUS.
5440 * target.c (store_waitstatus): Add CHILD_SPECIAL_WAITSTATUS hook.
5441 * infrun.c (wait_for_inferior): Replace SIGTRAP_STOP_AFTER_LOAD with
5442 code which looks for those two waitkinds. Use switch statement.
5443 * config/rs6000/tm-rs6000.h: Replace SIGTRAP_STOP_AFTER_LOAD with
5444 CHILD_SPECIAL_WAITSTATUS.
5446 * procfs.c (procfs_wait): Fix argument name to match 4 Jan changes.
5447 * Move target_signal_from_host, target_signal_to_host, and
5448 store_waitstatus from inftarg.c to target.c. procfs needs them.
5449 * target.c: Include "wait.h" and <signal.h>.
5450 * target.h, infrun.c (proceed), proceed callers: Pass new code
5451 TARGET_SIGNAL_DEFAULT instead of -1. This avoids problems with
5452 enums being treated as unsigned and is cleaner.
5453 * infrun.c (signals_info): Don't print TARGET_SIGNAL_DEFAULT or
5455 * infcmd.c (signal_command), infrun.c (signals_info):
5456 Don't allow user to specify numeric equivalent of
5457 TARGET_SIGNAL_DEFAULT.
5461 * config/alpha/alpha-netware.mt: New target support for Alpha
5463 * configure.in: Add alpha-*-netware* target.
5467 * remote-mips.c (mips_wait): Fix ref to TARGET_WAITKIND_STOPPED.
5471 * target.h: Add enum target_waitkind, enum target_signal, and
5472 struct target_waitstatus. Change status argument to target_wait to
5473 be struct target_waitstatus * instead of int *.
5474 * target.h, infrun.c, all targets: Change type of signal arguments
5475 to resume(), proceed(), and target_resume() from int to enum
5477 * All targets (*_wait, *_resume): Change accordingly.
5478 * infcmd.c (program_info, signal_command), throughout infrun.c,
5479 * fork-child.c, solib.c, hppa-tdep.c, osfsolib.c: Use this stuff.
5480 * convex-xdep.c, convex-tdep.c: Add FIXME's (getting the Convex
5481 signal code stuff right with the new signals would be non-trivial).
5482 * inferior.h (stop_signal): Make it enum target_signal not int.
5483 * target.c, target.h (target_signal_to_string, target_signal_to_name,
5484 target_signal_from_name): New functions.
5485 * inftarg.c, target.h (target_signal_to_host, target_signal_from_host,
5486 store_waitstatus): New functions.
5487 * procfs.c (procfs_notice_signals): Use them.
5488 * i960-tdep.c (i960_fault_to_signal): New function, to replace
5490 * config/i960/tm-i960.h: Don't define PRINT_RANDOM_SIGNAL.
5492 * objfiles.c (build_objfile_section_table): Don't abort() if
5493 objfile->sections is already set.
5495 * objfiles.c (add_to_objfile_sections): Check SEC_ALLOC not SEC_LOAD
5496 to match recent change to exec.c.
5500 * main.c (print_gdb_version): Change year to 1994.
5502 * ChangeLog, ChangeLog-93: Split ChangeLog at 1994.
5503 * Makefile.in (NONSRC): Add ChangeLog-93.
5507 * stabsread.c (read_type): Allow defining several type numbers
5508 at once (e.g. "(1,2)=(3,4)="...).
5510 * stabsread.c (read_enum_type): Use TARGET_INT_BIT not sizeof (int).
5512 * breakpoint.c (frame_in_dummy): Check PC as well as frame.
5516 * mdebugread.c (psymtab_to_symtab_1): Only pass N_STAB symbols
5517 to process_one_symbol.
5518 * symtab.c (find_pc_psymbol): Search global_psymbols as well to
5519 avoid caching a bad endaddr in find_pc_partial_function.
5523 * config/m68k/tm-sun3.h: Don't define BELIEVE_PCC_PROMOTION.
5527 * infrun.c (wait_for_inferior): Do not step or step resume past
5528 the end of a one-line function we just stepped into.
5530 For older changes see ChangeLog-93
5536 version-control: never