3 * c-lang.c (asm_language_defn): New definitions for language_asm,
4 mostly copied from c_language_defn, to avoid warnings when
5 switching between c and asm stack frames.
9 * mdebugread.c (parse_symbol): Don't call ecoff_swap_tir_in or
10 ecoff_swap_rndx_in directly; use the debug_swap pointer instead.
11 (upgrade_type, handle_psymbol_enumerators): Likewise.
12 (has_opaque_xref, cross_ref): Likewise.
13 (elfmdebug_build_psymtabs): Call swap->read_debug_info to read
14 debugging information, rather than doing it here.
15 * mipsread.c (mipscoff_symfile_read): Call read_debug_info entry
16 point in ecoff_debug_swap backend structure, rather than calling
17 ecoff_slurp_symbolic_info directly.
21 * breakpoint.c: Include annotate.h. Call annotate_field rather
22 than printing annotation directly.
24 * main.c: Include string.h.
28 * fork-child.c (startup_inferior) [STARTUP_INFERIOR]: If defined,
29 call it instead of doing normal loop.
30 * infcmd.c (attach_command): Don't call wait_for_inferior if
32 * infrun.c (proceed) [PREPARE_TO_PROCEED]: If defined, call
33 hook that can decide whether to step over the next breakpoint.
34 * utils.c (wrap_here): Abort if wrap_buffer not allocated.
35 (request_quit) [REQUEST_QUIT]: If defined, call it instead of
38 * configure.in: Improve sorting/formatting of hosts and targets.
39 (i[34]86-*-mach3*, i[34]86-*-osf1mk*, mips-*-mach3*,
40 m88*-*-mach3*, ns32k-*-mach3*): Recognize.
41 * Makefile.in (stop-gdb): New target.
42 * stop-gdb.c: New file, utility to get attention of waiting GDBs
47 * top.c (gdb_init): Init current_directory in gdb_init. Probably
48 the identical initialization can be deleted from main.c, but i
49 haven't done so just in case.
53 * gdba.el: Added menu windows and slightly improved window
54 handling to gdba.el. Fixed numerous minor bugs that were causing
55 emacs and gdb to fall out of sync.
59 * breakpoint.c: annotate changes lost at merge, put back in.
63 * config/i386/i386sco.mh, i386sco4.mh (XDEPFILES): Remove
68 * config/m68k/dpx2.mh (NATDEPFILES): Remove duplicate inclusion
70 * config/m68k/tm-dpx2.h (CANNOT_STORE_REGISTER): Define to inhibit
71 writing of floating registers, the dpx2 kernel disallows it.
72 * irix5-nat.c (LM_ADDR): The loaded address of the shared library
73 is contained in o_praw.
74 * irix5-nat.c (solib_map_sections): Adjust sections by the
75 difference between the loaded address and the prelinked address.
76 * irix5-nat.c (solib_address): Use LM_ADDR for the loaded start
78 * mdebugread.c (parse_symbol): Do not relocate stEnd/scText
79 symbols, their value is absolute.
80 * mdebugread.c (parse_partial_symbols): Handle Irix 5.2 shared
81 libraries fh->adr fields of zero. Relocate minimal symbol values
82 upon readin. Relocate non-stabs symbols upon readin.
83 * mdebugread.c (psymtab_to_symtab_1): Use pst->textlow for the
84 start address of the outermost block.
85 * mdebugread.c (parse_lines, parse_procedure): Pass in pst
86 instead of section_offsets and use relocated pst->textlow for
87 line number and procedure address relocations.
90 * mdebugread.c (parse_symbol, parse_partial_symbols, cross_ref):
91 Handle SGI Irix5 stIndirect symbol type.
95 * breakpoint.c: fix a syntax error native cc does not like.
97 * Makefile.in: change sparclite-tdep.c to sparcl-tdep.c.
98 * sparclite/Makefile.in: ditto.
99 * sparcl-tdpe.c: change file name because first 8 chars has to be
101 * sparcl-stub.c: ditto.
103 * .Sanitize: add sparclite-stub.c sparclite-tdep.c to keep.
105 * sparclite/Makefile.in: fix INCLUDE_CFLAGS to have {srcdir}/../config.
109 * hppa-tdep.c (target_read_pc, target_write_pc): Accept (and
110 ignore) a PID argument.
111 (hppa_pop_frame): Pass a PID to target_write_pc.
112 * config/pa/tm-hppa.h (TARGET_READ_PC, TARGET_WRITE_PC): Accept
113 and pass through a PID argument.
114 (target_read_pc, target_write_pc): Update prototypes.
118 * Makefile.in: add new file sparclite-tdep.c.
119 * sparclite/Makefile.in: add new file sparclite-stub.c.
120 * sparclite/hw_breakpoint.note: note for SPARClite hardware breapoint
122 * config/sparc/sparclite.mt: add sparclite-tdep.o.
123 * config/sparc/tm-sparclite.h: add hardware breakpoints support
125 * sparclite-tdep.c: new file, contains hardware breakpoint support
127 * sparclite-stub.c: new file, stub code that add support hardware
129 * breakpoint.c: add hardware breakpoint support.
130 * breakpoint.h: add new breakpoint type to support hardware
132 * config/mips/nm-irix4.h: change interface for target dependent
133 code supporting watch point.
134 * config/pa/nm-hppab.h: change interface for target dependent
135 code supporting watch point.
139 * remote-os9k.c (rombuf_command): fix a bug accepting rombug
141 * stabsread.c (read_struct_fields): os9k nested structure does not
142 have terminating ';', instead it just get to ',' and bit position
147 * nlmread.c (nlm_symtab_read): Clean up a bit.
148 * (nlm_symfile_read): Record bounds of main() so that backtrace
149 command will know where to stop.
150 * objfiles.c (objfile_relocate): Relocate entry point/func info
151 for backtrace as well.
152 * objfiles.h: Define values for invalid PCs for entry point info.
153 * symfile.c (init_entry_point_info): Initialize invalid values
154 with aforementioned macros.
155 * config/alpha/tm-alphanw.h: Turn on FRAME_CHAIN_VALID_ALTERNATE
156 to cause backtrace to stop when it gets back to main().
157 * config/i386/tm-i386nw.h: Ditto.
161 Fix value_print, which used to be ostensibly language-independent,
162 but would print pointers and arrays in C syntax. Instead, call
163 a language-specific function.
164 * language.h (struct language_defn): New functional field
166 (LA_VALUE_PRINT): New macro.
167 * language.c (unk_lang_value_print): New stub/dummy function.
168 (unknown_language_defn, auto_language_defn, local_language_defn):
170 * c-valprint.c (c_value_print): New function, with code moved from:
171 * valprint.c (value_print): ... here. Now just invoke
172 LA_VALUE_PRINT to do language-specific stuff.
173 * valprint.c (value_print_array_elements): Make non-static.
174 * c-lang.c (c_language_defn, cplus_language_defn): Add
175 c_value_print in the la_value_print field.
176 * m2-lang.c (m2_language_defn): Likewise.
177 * ch-lang.c (chill_language_defn): But here use chill_value_print.
178 * ch-valprint.c (chill_val_print): Print null pointer as NULL.
179 * ch-valprint.c (chill_value_print): New function, based on
180 c_value_print, but use Chill "look and feel."
181 * c-lang.h (c_value_print): New prototype.
182 * ch-lang.h (chill_value_print): New prototype.
183 * value.h (value_print_array_elements): New prototype.
185 * ch-valprint.c (chill_val_print, case TYPE_CODE_BITSTRING
186 and case TYPE_CODE_SET): Check that the element type isn't a stub.
190 * main.c: Move entire file except for #ifndef MAIN_OVERRIDE code
191 to new file top.c. Make things extern instead of static and
192 similar rearrangements to deal with this.
194 * utils.c: Move fputs_unfiltered to main.c. Remove
195 FPUTS_UNFILTERED_OVERRIDE ifndef.
196 * Makefile.in: Change so that gdb uses main.c, utils.c, and top.c,
197 and libgdb uses utils.c and top.c.
201 * hppa-tdep.c (skip_trampoline_code): Fix typo.
205 * ch-valprint.c (chill_val_print_array_elements): New function.
206 A Chill version of val_print_array_elements, it prints the
207 array index labels, in additions ot the array element values.
208 (chill_val_print): Use the new function.
212 * configure.in: Add nlm subdir to configdirs for alpha-*-netware
214 * defs.h (enum language): Add language_asm.
215 * findvar.c (read_register_bytes read_register_gen
216 write_register_bytes read_register read_register_pid
217 write_register write_register_pid supply_register): Move multi-
218 thread handling down into these routines. Create XXX_pid routines
219 that allow register references to specify the pid.
220 * findvar.c infcmd.c (read_pc read_pc_pid write_pc write_pc_pid
221 read_sp write_sp read_fp write_fp): Move these routines from
222 infcmd to findvar to centralize the whole mess.
223 * i386-nlmstub.c: Portability fixes.
224 * infptrace.c (child_resume): Conditionalize to allow other natives
225 to override it. Remove PIDGET gubbish, it's no longer necessary.
226 * infrun.c (wait_for_inferior): Put registers_changed() before
227 target_wait() to speed up remote debugging.
228 * Replace code that reads registers from other threads with much
229 nicer looking new function calls (see changes to findvar.c).
230 * Don't skip prologues if debugging assembly source.
231 * lynx-nat.c (child_resume): Lynx now needs it's own version of
232 child_resume to handle multi-thread debugging properly.
233 * remote.c: Add O response to get console output from target.
234 * (readchar): Add timeout parameter. Handle SERIAL_EOF and
235 SERIAL_ERROR here to simplify callers.
236 * Change static var timeout to remote_timeout.
237 * (fromhex): Remove unnecessary return -1 at end of routine.
238 * (remote_wait): Turn this into a big switch statement. Add
239 support for O response.
240 * (putpkt): Remove unnecessary handling of SERIAL_EOF/ERROR.
241 * (getpkt): Split getpkt into two parts. read_frame deals with
242 all formatting issues, run-length encoding, and framing. getpkt
243 now handles error recovery, and frame detection.
244 * ser-tcp.c (tcp_readchar): Handle EINTR from read().
245 * ser-unix.c (hardwire_raw): Set CLOCAL so that we ignore modem
246 control. (hardwire_readchar): Handle EINTR from read().
247 * symfile.c (deduce_language_from_filename): Add support for .s
249 * config/nm-lynx.h: Define CHILD_WAIT so that lynx-nat.c can
250 override infptrace's child_wait.
251 * config/rs6000/rs6000lynx.mh: Use xm-rs6000ly.h & nm-rs6000ly.h
252 instead of XXXlynx.h.
253 * config/rs6000/rs6000lynx.mt: Use tm-rs6000ly.h instead of
255 * nlm/gdbserve.c: Portability fixes.
259 * inftarg.c (child_wait): Call proc_wait, not wait.
260 (child_mourn_inferior): Call proc_remove_foreign.
261 * main.c (gdb_init): Call init_proc.
262 * main.c: Provide dummy versions of init_proc, proc_wait, and
263 proc_remove_foreign for the gdb case (the libgdb case provides its
264 own versions of these functions).
265 * Makefile.in (libgdb-files): Add libproc.a.
269 Hardware watchpoints for Linux, from Rick Sladkey
271 * infrun.c (wait_for_inferior) [HAVE_CONTINUABLE_WATCHPOINT]: Add
272 new hardware breakpoint recovery method.
273 * i386v-nat.c (i386_insert_watchpoint,
274 i386_insert_nonaligned_watchpoint, i386_remove_watchpoint,
275 i386_stopped_by_watchpoint) [TARGET_CAN_USE_HARWARE_WATCHPOINT]:
276 New functions to support the 386 hardware debugging registers.
277 * config/i386/nm-linux.h (TARGET_CAN_USE_HARDWARE_WATCHPOINT,
278 HAVE_CONTINUABLE_WATCHPOINT, STOPPED_BY_WATCHPOINT,
279 target_insert_watchpoint, target_remove_watchpoint): Define these
280 macros to use the hardware debugging functions in i386v-nat.c.
284 * Makefile.in: Replace libgdb.a with libgdb-files. Make "all"
289 * target.c, target.h: New variables target_activity_function and
291 * inflow.c, inferior.h: New functions set_sigio_trap and
293 * inftarg.c (child_wait), procfs.c (wait_fd): Call them.
297 * remote-sim.h (sim_verbose): Delete.
298 Document callbacks needed.
299 (sim_*): Change result to void where there isn't one.
300 (sim_open): Clarify argument and error response.
301 (sim_close): Declare.
302 (sim_load): Change bfd_handle argument to file name. Clarify result.
303 (sim_create_inferior): Renamed from sim_set_args.
304 (sim_set_pc): Delete.
305 (sim_info): Delete printf_fn argument.
306 * remote-sim.c (gdbsim_kill): Add comment describing purpose.
307 (gdbsim_load): Try sim_load first.
308 (gdbsim_create_inferior): Call sim_create_inferior.
309 (gdbsim_open): Handle args == NULL. Update call to sim_open.
310 (gdbsim_close): Call sim_close.
311 (gdbsim_files_info): Update call to sim_info.
312 (gdbsim_ops): Realign comments.
314 * printcmd.c (decode_format): Allow TARGET_PTR_BIT to be non-constant.
318 * xcoffread.c (read_xcoff_symtab): For C_FILE symbols, only use
319 the auxent if the symbol's name is ".file". From David Edelsohn
324 * breakpoint.c (breakpoint_1): Fix typo.
326 * annotate.c (annotate_field_end): Fix typo.
328 * Makefile.in: Move annotate.o from COMMON_OBS to OBS.
330 * Makefile.in (TSSTART): Remove; no longer used.
332 * utils.c (vfprintf_maybe_filtered, vfprintf_unfiltered): Call
333 fputs_unfiltered and exit directly, rather than fatal. The latter
334 calls vfprintf_unfiltered!
336 * gdbtypes.h, gdbtypes.c (can_dereference): New function.
337 * value.h, printcmd.c (print_value_flags): Move from here...
338 * annotate.c: ...to here, and make it use can_dereference.
342 * inflow.c (job_control, attach_flag, generic_mourn_inferior):
343 Remove, needed for both native and cross.
344 * target.c (attach_flag, generic_mourn_inferior): Put here.
345 * utils.c (job_control): Put here.
346 (terminal.h): Don't include anymore.
350 * source.c (find_source_lines): Always use code that was #ifdef
351 BROKEN_LARGE_ALLOCA. Do the cleanup before returning, rather than
352 leaving it on the chain. Reindent much of this function.
353 * config/sparc/{xm-sun4sol2.h,xm-sun4os4.h},
354 config/i386/{xm-sun386.h,xm-i386m3.h,xm-i386mach.h},
355 config/m68k/{sun3os4.h,xm-news.h,xm-hp300hpux.h},
356 config/ns32k/xm-ns32km3.h: Remove all references to
357 BROKEN_LARGE_ALLOCA; with the above change it is no longer needed.
358 * main.c, fork-child.c, many config files: Remove all
359 SET_STACK_LIMIT_HUGE code; with the above changes it should no
362 * symtab.c (lookup_partial_symbol): Use if and abort, not assert.
363 This avoids __eprintf troubles.
367 * main.c (main): Surround in #ifndef MAIN_OVERRIDE. Move
368 initialization code which needs to be called even if we bypass the
369 command line stuff into gdb_init.
370 * utils.c (fputs_unfiltered): Surround in #ifndef
371 FPUTS_UNFILTERED_OVERRIDE.
372 * Makefile.in (libgdb.a): New target.
374 * utils.c: Rearrange I/O stuff a bit so that all output goes
375 through fputs_unfiltered. Use vasprintf; removes arbitrary limit
376 which made %s not work with arbitrarily large strings.
377 * printcmd.c (printf_command): Use printf_filtered, not
378 printf_unfiltered and printf, now that arbitrary limit is gone.
381 * breakpoint.c (watchpoint_check): Remove unused variable b.
382 * stack.c (print_frame_info): Move sp and buf inside #if.
383 * eval.c (evaluate_subexp): Remove unused variables pp,
384 mangle_ptr, ptr, and mangle_tstr.
385 * valarith.c (value_x_binop): Remove unused variables mangle_tstr
387 * symtab.c (lookup_symtab): Put variable copy inside #if.
388 (decode_line_1): Put variable q1 inside #if 0.
389 * target.h: Declare target_link.
390 * infrun.c (wait_for_inferior): Remove unused variables signame.
391 * remote.c (remote_resume): Remove unused variable name.
392 * c-exp.y (parse_number): Parenthesize operand of shift.
393 * dbxread.c (record_minimal_symbol): Parenthesize operand of &&
394 (this is a semantic change, the warning seems to have detected a bug).
395 * dbxread.c (end_psymtab): Move variable p1 inside #if.
396 * coffread.c: Move variable temptype inside #if.
397 * ch-typeprint.c (chill_type_print_base): Remove unused variable
399 * ch-valprint.c: #include typeprint.h and ch-lang.h.
400 (chill_val_print): Remove unused variable in_range.
401 (chill_val_print): Remove statement "length > TYPE_LENGTH (type);".
402 (chill_val_print): Add default case for switch.
403 * stabsread.h: Declare stabsect_build_psymtabs.
404 * os9kread.c (read_minimal_symbols): Make this return void.
405 (os9k_symfile_read): Remove unused variables stb_exist and val.
406 (os9k_symfile_init): Remove unused variable val.
407 (fill_sym): Remove unused variable id.
408 (read_os9k_psymtab): Put variable back_to inside #if 0. Remove
410 Remove unused variable symfile_bfd.
411 #if 0 unused variables lbrac_unmatched_complaint and
412 lbrac_mismatch_complaint.
413 Remove declaration for non-existent function os9k_next_symbol_text.
415 * annotate.c, annotate.h: New files, containing a function for
416 each annotation which outputs it.
417 * Move breakpoints_changed from breakpoint.c to annotate.c.
418 * breakpoint.c, blockframe.c, infrun.c, cp-valprint.c, main.c,
419 printcmd.c, source.c, stack.c, utils.c, valprint.c:
420 Use annotate.c functions to output annotations.
421 * Makefile.in (OBS): Add annotate.o.
425 * hppa-tdep.c (read_unwind_info): Make sure elf_unwind_size and
426 elf_unwind_entries are always initialized.
428 * hppa-tdep.c (skip_trampoline_code): Handle argument relocation
429 stubs which return directly to the caller rather than to the stub
434 * c-exp.y (yyerror): Display a more informative error message.
435 * ch-exp.y (yyerror): Ditto, don't use global yychar.
436 * m2-exp.y (yyerror): Ditto.
440 * inflow.c (job_control): Move definition to front of file.
444 * maint.c (print_section_table): Rename SEC_SHARED_LIBRARY to
445 SEC_COFF_SHARED_LIBRARY to match corresponding change in bfd.
449 * Makefile.in (kdb): Remove old init.c creation commands.
450 * configure.in (sparclite): Match on sparclite*.
451 * sparclite/aload.c (main): Only change section addresses for
452 a.out format object files.
456 * config/i386/go32.mh: Define CC.
460 * gdbserver/Makefile.in: Remove irrelevant definitions and
461 comments inherited from the gdb Makefile.
462 (BFD_DIR, BFD, BFD_SRC, BFD_CFLAGS): Add from gdb Makefile.
463 (VERSION): Update to 4.12.3.
464 (gdbserver): Remove any existing executable first.
465 (distclean, realclean): Remove nm.h.
466 * gdbserver/low-lynx.c: Add Sparc Lynx support.
467 * gdbserver/low-sparc.c, gdbserver/low-sun3.c (sys/wait.h):
468 Don't use absolute pathname.
472 * rs6000-nat.c (vmap_ldinfo): Don't fail if fstat returns an
477 * infrun.c (proceed, normal_stop, wait_for_inferior), breakpoint.c
478 (print_it_normal): Add annotations for the inferior starting and
479 stopping, and for all the various messages related to how it
482 * printcmd.c (do_one_display): Annotate.
483 * stack.c (print_frame_info): Annotate printing of stack frames.
487 * remote.c (get_offsets): Handle case where stub doesn't support
492 Add partial support for g++ code compiled with -fvtable-thunks.
493 * c-valprint.c (c_val_print): Add vtblprint support
495 * cp-valprint.c (cp_is_vtbl_member): A vtable can be an array of
496 pointers (if using thunks) as well as array of structs (otherwise).
497 * cp-valprint.c (vtbl_ptr_name_old, vtbl_ptr_name): Move to global
498 level, and make the latter non-static (so define_symbol can use it).
499 * stabsread.c (define_symbol): If the type being defined is a
500 pointer type named "__vtbl_ptr_type", set the TYPE_NAME to that name.
501 * symtab.h (VTBL_PREFIX_P): Allow "_VT" as well as "_vt".
502 * values.c (value_virtual_fn_field): Handle thunks.
503 * values.c (value_headof): Minor efficiency hack.
504 * values.c (value_headof): Incomplete thunk support. FIXME.
508 * valprint.c (print_longest): Clarify comment about use_local.
509 * printcmd.c, defs.h (print_address_numeric), callers in
510 symmisc.c, symfile.c, stack.c, source.c, remote.c, infcmd.c,
511 cp-valprint.c, core.c, ch-valprint.c, c-valprint.c, breakpoint.c,
512 exec.c: New argument use_local.
513 * source.c (identify_source_line): Use filtered output. Use
514 print_address_numeric.
516 * core.c (memory_error), symtab.c (cplusplus_hint, decode_line_1),
517 language.c (type_error, range_error): Use filtered output.
518 * utils.c (error_begin): Update comment to tell people to use
521 * Makefile.in (HFILES_WITH_SRCDIR): List bfd.h.
522 (HFILES_NO_SRCDIR): List gdbcore.h not gdbcore_h, so as not to get
527 * procfs.c (procfs_wait): Reinstate code which deduces the signal
528 from the fault, #ifndef FAULTED_USE_SIGINFO.
529 * config/sparc/tm-sun4sol2.h: Define FAULTED_USE_SIGINFO.
533 * breakpoint.c (breakpoint_1): Annotate each field of the headers.
534 Explicitly annotate each record.
538 * xcoffexec.c: Reformat to standards and lint.
539 (language.h): Include.
540 (exec_close): Declare arg "quitting".
541 (file_command): Declare arg "from_tty".
542 (map_vmap): Cast xmalloc result to PTR.
543 * rs6000-nat.c: Reformat to standards and lint.
544 (exec_one_dummy_insn): Use char array for saved instruction.
545 (fixup_breakpoints): Declare.
546 (vmap_ldinfo): Be more informative in fatal error messages.
547 (xcoff_relocate_symtab): Define to return void.
548 * xcoffsolib.h: Reformat to standards, improve comments.
549 * config/rs6000/nm-rs6000.h (xcoff_relocate_symtab): Declare.
553 * utils.c, defs.h (error_begin): New function.
554 (quit): Print annotation before printing the error message.
555 * main.c (return_to_top_level): Print annotation before doing the
557 * symtab.c (decode_line_1): Call error not warning and then
558 return_to_top_level. Call error_begin and printf_unfiltered
559 rather calling warning (before calls to return_to_top_level).
560 * core.c (memory_error): Use error_begin, printf_unfiltered,
561 print_address_numeric and return_to_top_level instead of error.
562 Cleans up a FIXME-32x64.
563 * language.c (type_error, range_error): Call error_begin
564 not just target_terminal_ours.
566 * dbxread.c (stabsect_build_psymtabs): Assign to sym_stab_info
567 directly, rather than via DBX_SYMFILE_INFO. A cast on the left
568 side of an assignment is non-portable.
570 * utils.c (query): Change syntax of query annotations to be
571 consistent with other input annotations.
572 (prompt_for_continue): Likewise for prompt-for-continue annotation.
576 * mdebugread.c (psymtab_to_symtab_1): Do not call sort_blocks
578 * mips-tdep.c (mips_skip_prologue): Handle prologues for functions
579 that have a stack frame size of 32k or larger (from Paul Flinders).
584 * lynx-nat.c (CANNOT_STORE_REGISTER): Add a fallback definition
585 for Lynx platforms that need it.
586 * config/nm-lynx.h (__LYNXOS): Define if not already defined.
590 * procfs.c (procfs_wait): Use the signal from the pr_info rather
591 than trying to deduce it from the fault.
595 * printcmd.c (print_address_symbolic): Initialize name to empty
596 string to avoid core dump if lookup fails.
597 * remote-e7000.c (printf_e7000debug): Error if target not open.
599 Tue Apr 26 22:45:24 1994 Stu Grossman (grossman at cygnus.com)
601 * i386-nlmstub.c: Update to be more in line with PIN stub.
602 * nlm/gdbserve.c (putDebugChar): Install bug fix from i386-nlmstub.
603 * (hex2mem): Init ptr.
604 * General cleanups to use ConsolePrintf, standard prologues, etc...
606 Tue Apr 26 10:23:04 1994 Stu Grossman (grossman at cygnus.com)
608 * i386-nlmstub.c: More changes to be compatible with remote.c.
610 * dbxread.c: Move a bunch of strncmps out of process_one_symbol
611 into (the far less frequently called) dbx_symfile_read.
613 * i386-nlmstub.c: An interim version till we get PIN for the x86.
615 Tue Apr 26 09:50:45 1994 Stu Grossman (grossman at cygnus.com)
617 * dbxread.c (record_minimal_symbol): Record the section
618 associated with the symbol to make dynmaic relocation work.
619 * (dbx_symfile_read, process_one_symbol): Fixes to work around
620 Solaris brain-damage which don't apply to relocatable object
622 * (stabsect_build_psymtabs): New routine to read stabs out of an
623 arbitrarily named section.
624 * nlmread.c (nlm_symtab_read): Read ALL syms from the NLM, not just
626 * (nlm_symfile_read): Call stabsect_build_psymtabs to read the
627 stabs out of the nlm.
628 * partial-stabs.h (cases 'f' & 'F'): Fixes to work around Solaris
629 brain-damage which don't apply to relocatable object files.
630 * remote.c (putpkt): Improve error reporting and error handling.
631 * (get_offsets): Temporary kludge to force data & bss sections to
632 have the same relocation.
633 * stabsread.c (define_symbol, scan_file_globals): Record section
638 * breakpoint.c (breakpoint_1): Annotate each field of output. Add
643 * infrun.c (wait_for_inferior): Move call to flush_cached_frames
644 to after call to target_wait. This means that flush_cached_frames
645 can call target_terminal_ours if it wants to.
646 * infrun.c (wait_for_inferior) [HAVE_NONSTEPPABLE_WATCHPOINT]: Add
647 comment about why the code is dubious.
649 * stabsread.c (read_type): Call read_type, not nonexistent
654 * remote-os9k.c (rombug_fetch_registers): set trace mode
656 * remote-os9k.c (rombug_read_inferior_memory): cache data in
658 * os9kread,c (read_os9k_psymtab): process file symbol to truncate
660 * os9kread.c (os9k_read_ofile_symtab): proper casting of args
661 passed to process_one_symbol.
662 * stabsread.c (read_type): process os9k functio prototype.
666 * solib.c (symbol_add_stub): If so->textsection is NULL, don't
671 * utils.c (prompt_for_continue): Annotate prompt.
672 (query): Annotate query.
673 * printcmd.c (print_frame_args): Change syntax of argument
674 annotation to make name and value part of a single group of
675 annotations, not two separate groups.
676 * cp-valprint.c (cp_print_value_fields): Likewise for fields.
677 * valprint.c (val_print_array_elements): Change syntax of
678 annotation to be more concise.
679 * main.c, defs.h (command_line_input): New argument tells what
680 string to include in the annotations.
681 * symtab.c (decode_line_2), main.c (read_command_lines,
682 command_loop): Change callers.
684 * breakpoint.c (watch_command): Use (CORE_ADDR)0, not NULL, for
686 * blockframe.c (find_frame_addr_in_frame_chain): Likewise.
688 * printcmd.c (output_command): Annotate things we print here too.
689 * printcmd.c (print_command_1): Add "value-history-value" annotation.
690 * Move declaration of print_value_flags from defs.h to value.h.
691 * main.c (command_line_input): Call wrap_here as well as gdb_flush.
695 * dbxread.c (read_dbx_dynamic_symtab): Reinstall support for sun3,
696 BFD handles sun3 dynamic relocations now.
697 * elfread.c (elf_symtab_read, elf_symfile_read): Handle dynamic
702 * printcmd.c (print_command_1): Annotate the top-level expressions
704 (print_frame_args): Annotate each argument.
705 * printcmd.c, defs.h (print_value_flags): New function.
706 * cp-valprint.c (cp_print_value_fields): Annotate each field.
707 * valprint.c (val_print_array_elements): Annotate each array element.
711 * findvar.c (read_var_value): Handle LOC_REPARM_ADDR case correctly,
712 the register contains a pointer to the type, not the type itself.
716 * main.c (main): Accept --annotate=N option and make --fullname
717 the same as --annotate=1.
718 (command_line_input): Print annotatation before and after prompt.
719 * blockframe.c (flush_cached_frames): Print annotation.
720 * Rename frame_file_full_name to annotation_level and move it from
722 * source.c (identify_source_line): If annotation_level > 1,
723 change output format.
724 * breakpoint.c: Print annotation whenever a breakpoint changes.
725 * main.c: New variable server_command.
726 (command_line_input): Parse "server " and set server_command.
727 (dont_repeat): Check server_command.
731 * xcoffread.c (xcoff_next_symbol_text): Don't return before
732 updating raw_symbol and symnum. Return a value in the case where
735 * dstread.c, coffread.c: Don't define pending_blocks; buildsym.c
737 * parse.c: Don't define block_found; it is defined in symtab.c.
738 * parser-defs.h: Add comment regarding block_found.
742 * hppa-tdep.c (internalize_unwind_info): Delete unused indexp
747 * dbxread.c (read_dbx_dynamic_symtab): Relocate BFD symbols by
748 section vma. Do not read dynamic relocs for sun3 executables to
749 avoid BFD assertion message.
753 * nm-hppab.h (KERNEL_U_ADDR): Define.
754 (FIVE_ARG_PTRACE): Likewise.
755 (CANNOT_STORE_REGISTER): Likewise.
756 * nm-hppah.h (KERNEL_U_ADDR): Define.
757 (FIVE_ARG_PTRACE): Likewise.
758 (CANNOT_STORE_REGISTER): Likewise.
759 (NEED_TEXT_START_END): Likewise.
761 * tm-hppah.h (NEED_TEXT_START_END): Delete definition.
762 * xm-hppah.h (KERNEL_U_ADDR): Delete definition.
763 (FIVE_ARG_PTRACE): Likewise.
764 * xm-hppab.h (KERNEL_U_ADDR): Delete definition.
765 (FIVE_ARG_PTRACE): Likewise.
767 * hppa-tdep.c (read_unwind_info): Make static.
768 (restore_pc_queue): Indirect through the target vector to
769 reload the register state.
773 * paread.c (compare_unwind_entries): Delete function. It's been
774 moved into hppa-tdep.c.
775 (read_unwind_info): Likewise.
776 (pa_symfile_read): No longer call read_unwind_info. The unwind
777 tables will be read in as they are needed.
779 * hppa-tdep.c (compare_unwind_entries): New function.
780 (read_unwind_info, internalize_unwinds): Likewise.
781 (find_unwind_entry): Read in unwind information on demand.
785 * source.c (DIRNAME_SEPARATOR): New macro, replaces all references
786 to : in search path processing.
787 * defs.h (qsort): Rename argument in prototype.
788 * symtab.h (SAYMBOL_VALUE): Rename value field, avoids bugs in
790 * breakpoint.c, exec.c, mdebugread.c, mipsread.c, xcoffexec.c
791 (false): Eliminate usages.
795 * h8500-tdep.c (initialize_h8500_tdep, large_command):
796 All references to value changed to value_ptrlage_command is now
798 All references to value changed to value_ptr.
799 * remote-e7000.c (e7000_wait): Use target_waitstatus and SETSTOP
800 * remote-hms.c (hms_wait): Timeout after five seconds.
801 * ser-go32.c (dosasync_read): Poll if timeout < 0.
802 * config/tm/tm-h8500.h (BEFORE_MAIN_LOOP_HOOK): Deleted.
803 * config/sh/tm-sh.h (BREAKPOINT): Is now sleep opcode.
807 * procfs.c (procfs_wait): Protect watchpoint code with appropriate
809 (procfs_set_watchpoint, procfs_stopped_by_watchpoint): Likewise.
813 * breakpoint.h (enum bptype): Add bp_hardware_watchpoint and
814 bp_watchpoint_scope breakpoints.
815 (struct breakpoint): Add val_chain and related_breakpoint fields
816 for use by watchpoints.
818 * breakpoint.c (within_scope): Delete. No longer used.
819 (TARGET_CAN_USE_HARDWARE_WATCHPOINT): Provide default definition.
820 (target_{remove,insert}_watchpoint): Likewise.
821 (can_use_hardware_watchpoint): New function.
822 (remove_breakpoint): New function to remove a single breakpoint
823 or hardware watchpoint.
824 (insert_breakpoints): Handle insertion of hardware watchpoints.
825 Store a copy of the value chain derived from the watchpoint
827 (remove_breakpoints): Simplify by using remove_breakpoint.
828 (delete_breakpoint): Likewise.
829 (watchpoint_check): Delete the watchpoint and watchpoint scope
830 breakpoints when the watchpoint goes out of scope. Save & restore
831 the current frame after checking watchpoints.
832 (breakpoint_init_inferior): Likewise (restarting the program
833 makes all local watchpoints go out of scope).
834 (bpstat_stop_status): Handle hardware watchpoints much like normal
835 watchpoints. Delete the watchpoint and watchpoint scope breakpoint
836 when the watchpoint goes out of scope. Remove and reinsert all
837 breakpoints before returning if we stopped when a hardware watchpoint
839 (watch_command): Use a hardware watchpoint when possible. If
840 watching a local expression, build a scope breakpoint too.
841 (map_breakpoint_numbers): Also call given function for any
843 (disable_breakpoint): Never disable a scope breakpoint.
844 (enable_breakpoint): Handle hardware breakpoints much like normal
845 breakpoints, but recompute the watchpoint_scope breakpoint's
846 frame and address (if we have an associated scope breakpoint).
847 (read_memory_nobpt): Handle hardware watchpoints like normal
848 watchpoints. When necessary handle watchpoint_scope breakpoints.
849 (print_it_normal, bpstat_what, breakpoint_1, mention): Likewise.
850 (clear_command, breakpoint_re_set_one, enable_command): Likewise.
851 (disable_command): Likewise.
853 * blockframe.c (find_frame_addr_in_frame_chain): New function.
854 Extern prototype added to frame.h
856 * infrun.c (wait_for_inferior): Set current_frame and select
857 a frame before checking if we stopped due to a hardare watchpoint
858 firing. Handle stepping over hardware watchpoints.
859 (normal_stop): Remove unnecessary call to select_frame.
861 * value.h (value_release_to_mark): Declare.
862 * values.c (value_release_to_mark): New function.
864 * procfs.c (procfs_wait): Add cases for hardware watchpoints.
865 (procfs_set_watchpoint, procfs_stopped_by_watchpoint): New functions.
867 * hppab-nat.c (hppa_set_watchpoint): New function.
869 * config/pa/nm-hppab.h (STOPPED_BY_WATCHPOINT): Define.
870 (HAVE_STEPPABLE_WATCHPOINT): Define.
871 (TARGET_CAN_USE_HARDWARE_WATCHPOINT): Define.
872 (target_{insert,delete}_watchpoint): Define.
874 * config/mips/nm-irix4.h (TARGET_CAN_USE_HARDWARE_WATCHPOINT): Define.
875 (STOPPED_BY_WATCHPOINT, HAVE_NONSTEPPABLE_WATCHPOINT): Likewise.
876 (target_{insert,remove}_watchpoint): Likewise.
878 Mon Apr 11 19:21:27 1994 Stu Grossman (grossman at cygnus.com)
880 * xcoffread.c (read_xcoff_symtab): Ignore symbols of class C_EXT,
881 smtyp XTY_LD, sclass XMC_DS (external data segment label). They
882 often have the same names as debug symbols for functions, and
883 confuse lookup_symbol().
887 * remote.c: Around redefinition of PBUFSIZE, adjust whitespace.
888 * config/pa/tm-hppa.h (REGISTER_BYTES): Use 4 rather than
889 REGISTER_RAW_SIZE (1).
890 Together these changes work around a bug in HP's compiler. Both
891 seem to be necessary.
895 * paread.c (pa_symtab_read): Handle ST_STUB symbols and symbols
896 with scope SS_EXTERNAL. ST_ENTRY symbols in dynamic executables
897 are type mst_solib_trampoline.
901 * config/m68k/es1800.mt: Change comments.
905 * config/m68k/monitor.mt (TDEPFILES): Don't include remote-es.o.
907 Fri Apr 8 15:35:30 1994 Stu Grossman (grossman at cygnus.com)
909 * lynx-nat.c: Restore regmap structure for SPARC. It's needed
914 * values.c (unpack_long): Remove obsolete comment about using a
917 * symfile.c (symbol_file_command): Add comments about command syntax.
922 * infrun.c (IN_SOLIB_TRAMPOLINE): Correct comment, trampolines
923 are in the .plt section.
924 * minsyms.c (lookup_solib_trampoline_symbol_by_pc,
925 find_solib_trampoline_target): New functions for handling
926 stepping into -g compiled shared libraries.
927 * symtab.h (lookup_solib_trampoline_symbol_by_pc,
928 find_solib_trampoline_target): Add prototypes.
929 * config/tm-sunos.h (IN_SOLIB_TRAMPOLINE, SKIP_TRAMPOLINE_CODE):
930 Define to handle stepping into -g compiled shared libraries.
931 * config/tm-sysv4.h (SKIP_TRAMPOLINE_CODE): Define to handle
932 stepping into -g compiled shared libraries.
936 * configure.in: Add mips-*-sysv4* support.
937 * config/mips/mipsv4.mh, config/mips/mipsv4.mt,
938 config/mips/tm-mipsv4.h, config/mips/xm-mipsv4.h, mipsv4-nat.c:
939 New files for MIPS SVR4 support.
940 * Makefile.in: Update for new mipsv4 files.
941 * alpha-tdep.c (heuristic_proc_desc, find_proc_desc): Use
942 read_next_frame_reg to obtain the frame relative stack pointer.
943 * mips-tdep.c (heuristic_proc_desc): Use read_next_frame_reg to
944 obtain the frame relative stack pointer.
945 * mdebugread.c (parse_partial_symbols, psymtab_to_symtab1):
946 Handle stStatic and stStaticProc symbols in stabs-in-ecoff output
947 by entering them into the minimal symbol table.
948 * printcmd.c (print_scalar_formatted): Do not try to unpack to
949 a long for float formats.
950 * solib.c: Include "elf/mips.h" only if DT_MIPS_RLD_MAP does not
951 get defined in <link.h>.
952 * solib.c (solib_add): Add shared library sections to the section
953 table of the target before adding the symbols.
954 * partial-stab.h: Relocate static and global functions.
955 * dbxread.c (read_dbx_symtab): Remove unused variable
956 end_of_text_address. Relocate text_addr when passing it
959 For Alpha OSF/1 targets, enable gdb to set breakpoints in shared
960 library functions before the executable is run. Retrieve dynamic
961 symbols from stripped executables.
962 * mipsread.c (read_alphacoff_dynamic_symtab): New function.
963 * mipsread.c (mipscoff_symfile_read): Use it. Issue warning message
964 if no debugging symbols were found.
965 * alpha-tdep.c (alpha_skip_prologue): Silently return the unaltered
966 pc if memory at the pc is not accessible and GDB_TARGET_HAS_SHARED_LIBS
968 * config/alpha/nm-alpha.h (GDB_TARGET_HAS_SHARED_LIBS): Define,
969 OSF/1 has shared libraries.
973 * dbxread.c (read_dbx_dynamic_symtab): Adjust for recent changes
974 to BFD handling of dynamic symbols.
978 * hppa-tdep.c (hppa_fix_call_dummy): If FUN is a procedure label,
979 then gets its real address into FUN and its GOT/DP value into %r19.
981 * tm-hppa.h (CALL_DUMMY): Use %r20, not %r19 as a temporary.
983 * hppa-tdep.c (frameless_function_invocation): If no unwind
984 descriptor was found, then assume this was not a frameless
986 (frame_saved_pc): If the saved PC is in a linker stub, then
987 return the return address which the linker stub will return to.
989 * xm-hppab.h: Never define USG.
990 * xm-hppah.h: Always define USG.
994 * values.c (unpack_long, value_from_longest),
995 valarith.c (value_binop): Allow TYPE_CODE_RANGE.
999 * symfile.c (deduce_language_from_filename): .cpp is a C++ extension.
1003 For SVR4 targets, enable gdb to set breakpoints in shared
1004 library functions before the executable is run.
1005 * elfread.c (elf_symtab_read): Handle symbols for shared library
1007 * sparc-tdep.c (in_solib_trampoline): Renamed to in_plt_section
1008 and moved to objfiles.c.
1009 * objfiles.c (in_plt_section): Moved to here from sparc-tdep.
1010 * config/tm-sysv4.h (IN_SOLIB_TRAMPOLINE): Use new in_plt_section.
1011 * config/sparc/tm-sun4sol2.h (IN_SOLIB_TRAMPOLINE): Removed,
1012 the new generic definition from tm-sysv4.h works for Solaris.
1016 * elfread.c (elf_symtab_read): Change storage_needed,
1017 number_of_symbols and i to long. Rename get_symtab_upper_bound to
1018 bfd_get_symtab_upper_bound. Check for errors from
1019 bfd_get_symtab_upper_bound and bfd_canonicalize_symtab.
1020 * nlmread.c (nlm_symtab_read): Same changes.
1024 * xcoffread.c (xcoff_next_symbol_text): New function.
1025 (read_xcoff_symtab): Set next_symbol_text_func to it.
1026 Move raw_symbol outside of read_xcoff_symtab.
1028 * remote.c (getpkt): Remove unused "out" label.
1032 * breakpoint.c (print_it_normal): Allow GDB to notify the user
1033 about more than one watchpoint being triggered.
1037 * config/m68k/tm-dpx2.h: Include tm-m68k.h not nonexistent tm-68k.h.
1041 * blockframe.c (find_pc_partial_function): mst_file_text
1042 symbols do not live in the shared library transfer table.
1043 * ch-exp.y (decode_integer_value, match_character_literal,
1044 match_bitstring_literal): Guard tolower calls with isupper,
1045 tolower on old BSD systems blindly subtracts a constant.
1046 * dbxread.c (read_ofile_symtab): Check for __gnu_compiled_* as
1047 well when determining the producer of the object file.
1048 * mdebugread.c (has_opaque_xref): New function to check for
1049 cross reference to an opaque aggregate.
1050 * mdebugread.c (parse_symbol, parse_partial_symbols): Do not
1051 enter typedefs to opaque aggregates into the symbol tables.
1052 * mdebugread.c (parse_external): Remove skip_procedures argument,
1053 it has always been 1. Remove code that handled stProc symbols,
1054 it was never executed and was wrong, as the index of a
1055 stProc symbol points to the local symbol table and not to the
1056 auxiliary symbol info. Update caller.
1057 * mdebugread.c (parse_partial_symbols): Do not enter external
1058 stProc symbols into the partial symbol table, they are already
1059 entered into the minimal symbol table.
1060 * config/i386/tm-symmetry.h: Clean up, it is now only used for Dynix.
1061 Remove all conditionals and definitions for ptx.
1062 I386_REGNO_TO_SYMMETRY moved to here from symm-tdep.c.
1063 Fix addresses of floating point registers in REGISTER_U_ADDR.
1064 STORE_STRUCT_RETURN now handles cc and gcc conventions.
1065 FRAME_CHAIN, FRAMELESS_FUNCTION_INVOCATION, FRAME_SAVED_PC,
1066 IN_SIGTRAMP, SIGCONTEXT_PC_OFFSET defined to make backtracing through
1067 signal trampoline code work.
1068 * config/i386/xm-symmetry.h: Clean up, it is now only used for Dynix.
1069 Remove all conditionals and definitions for ptx.
1070 Remove KDB definitions.
1071 * symm-nat.c (store_inferior_registers): Fetch registers before
1072 storing them to obtain valid floating point control registers.
1073 Store fpu registers.
1074 * symm-nat.c (print_1167_control_word): Dynix 3.1.1 defines
1075 FPA_PCR_CC_C0 and FPA_PCR_CC_C1, avoid duplicate case value.
1076 * symm-nat.c (fetch_inferior_registers, child_xfer_memory):
1078 * symm-nat.c (child_resume): Update type of `signal' parameter.
1079 * symm-tdep.c (I386_REGNO_TO_SYMMETRY): Moved to tm-symmetry.h.
1083 * hppa-tdep.c (hppa_fix_call_dummy): Use an alternate method for
1084 calling import stubs for functions in shared libraries.
1088 * ch-exp.y: Implement SIZE(mode_name) and SIZE(expression).
1090 * ch-lang.c (chill_is_varying_struct): Magic string is
1091 was "<var_length>" is now "__var_length" (more portable).
1095 * remote.c (getpkt): If we get a timeout, actually retry rather
1096 than just giving up the first time it happens.
1097 * remote.c: Document sequence numbers.
1098 (remote_store_registers): Change syntax of 'P' request so that it
1099 never looks like a sequence number.
1103 * os9kread.c (record_minimal_symbol): add section_offset to
1104 relocate minimal symbol table.
1105 * os9kread.c (read_minimal_symbols): ditto.
1106 * os9kread.c (os9k_symfile_init): increase size of dbg and stb
1108 * os9kread.c (read_os9k_psymtab): if there's no dbg file, just
1109 return. Also if file addr is 0 leave it 0, not to relocate.
1110 * remote-os9k.c (_initialize_remote_os9k): add 'set remotexon',
1111 'set remotexoff' and 'set remotelog' commands.
1115 * remote.c (remote_store_registers): Add 'P' request to set an
1116 individual register.
1117 (remote_write_bytes, remote_read_bytes): Use %lx, not %x, to print
1122 * config/sparc/tm-sparc.h: Define USE_REGISTER_NOT_ARG.
1123 * stabsread (define_symbol): If USE_REGISTER_NOT_ARG, go back to
1124 combining all 'p' and 'r' pairs into a LOC_REGPARM.
1126 * command.c (do_setshow_command, case var_string): Never add a
1127 space to the end of the string.
1128 * NEWS: Document this change.
1129 * .gdbinit: Add a space to the "set prompt" command.
1133 * m3-nat.c, i386m3-nat.c, config/i386/i386m3.mh: Many minor
1134 changes to make it compile (it doesn't link yet).
1136 * buildsym.c (start_subfile, patch_subfile_names), demangle.c
1137 (set_demangling_style, set_demangling_command): Use savestring not
1138 strdup. We were not dealing properly with a NULL return from
1139 strdup, and were not declaring strdup (the system header may or
1142 * valprint.c (val_print): Remove inaccurate comment about what
1143 types can be stub types.
1145 * config/i386/ptx.mh (XDEPFILES): Add coredep.o. Delete infptrace.o.
1146 * symm-nat.c (child_wait, _initialize_symm_nat, kill_inferior):
1147 Supply alternate version if ATTACH_DETACH is not defined.
1148 * ptx4-nat.c, config/i386/{nm-ptx4.h, ptx4.mh, ptx.mt, ptx4.mt,
1149 tm-ptx.h, tm-ptx4.h, xm-ptx.h, xm-ptx4.h}: New files.
1150 * configure.in: Recognize i[34]86-sequent-sysv4* host.
1154 * hppa-tdep.c (skip_prologue): Do nothing if not at the beginning
1156 (skip_trampoline_code): Rewrite and add support for argument
1157 relocation stubs stubs, import/export stubs, calls through
1158 "_sr4export" and cascaded trampolines.
1160 * hppa-tdep.c (skip_prologue): Return "pc" not zero
1161 if no unwind descriptor is found.
1163 * tm-hppa.h (NUM_REGS): Bump to 128 registers.
1164 (REGISTER_NAMES): Add entries for "right-half" of FP registers.
1165 (REGISTER_RAW_SIZE, MAX_REGISTER_RAW_SIZE): Do not treat FP regs
1166 differently. All registers are four bytes.
1167 (REGISTER_BYTES, REGISTER_BYTE): Simplify now that all registers are
1169 (REGISTER_VIRTUAL_TYPE): Use builtin_type_float for all FP regs.
1171 * hppa-tdep.c (pa_print_fp_reg): Update to print even numbered FP
1172 registers as both single and double values (fetching 2nd 32bit half
1173 as necessary). Annotate each register printed with its precision.
1175 * paread.c (read_unwind_info): Fix off-by-one error.
1179 * main.c (complete_command): Deal with it if arg is NULL.
1183 * config/mips/tm-mips.h (SETUP_ARBITRARY_FRAME): Revise comment
1184 regarding using the PC--using the PC is necessary and all the
1185 FIXME comments in the world won't make it go away.
1187 * valops.c (value_at, value_at_lazy): Give error if we dereference
1189 * gdbtypes.h: Fix comments regarding TYPE_CODE_VOID.
1190 * stabsread.c: Use 1, not 0, for TYPE_LENGTH of void types.
1192 * stabsread.c (patch_block_stabs): Add comment about what happens
1193 if the definition is in another compilation unit from the stab.
1195 * dbxread.c (end_psymtab): Add comment about empty psymtabs.
1199 * main.c (complete_command): New command, from Rick Sladkey
1201 (symbol_completion_function): Don't declare rl_point and
1202 rl_line_buffer; they are now declared in readline.h.
1203 (show_commands): Don't declare history_base; it is declared in
1205 * command.c (lookup_cmd): Don't delete trailing whitespace.
1206 Reverts change of 14 May 1989.
1208 Wed Mar 23 16:14:52 1994 Stu Grossman (grossman at cygnus.com)
1210 * minsyms.c (prim_record_minimal_symbol): Move section deduction
1211 code from prim_record_minimal_symbol_and_info() to here. Callers
1212 of the latter can legitimately supply a section number of -1.
1216 * gdbtypes.h, gdbtypes.c: Add comments regarding whether static
1217 member functions have an element in args for a (nonexistent) this
1222 * config/pa/tm-hppao.h (NO_PC_SPACE_QUEUE_RESTORE): Define.
1224 * hppa-tdep.c (hppa_pop_frame): Do not restore the PC space
1225 queue if NO_PC_SPACE_QUEUE_RESTORE is defined.
1227 * stabsread.c (REG_STRUCT_HAS_ADDR): Accept additional argument
1228 for the structure's type. All callers changed.
1230 * valops.c (call_function_by_hand): Check REG_STRUCT_HAS_ADDR
1231 for each structure argument rather than assuming it's either
1232 true or false for all structure arguments.
1234 * config/pa/tm-hppa.h (REG_STRUCT_HAS_ADDR): Depend only
1235 on the length structure passed, not the compiler used.
1237 * config/sparc/tm-sparc.h (REG_STRUCT_HAS_ADDR): Accept additional
1238 argument for the structure's type.
1242 * values.c (set_internalvar): Don't set var->value until we are
1243 sure there won't be an error().
1245 * remote.c (get_offsets): Reinstate comment which was in
1246 remote_wait about use of SECT_OFF_TEXT and so on.
1250 * symmisc.c (maintenance_check_symtabs): New function to check
1251 consistency of psymtabs and symtabs.
1252 * symtab.h (maintenance_check_symtabs): Add prototype.
1253 * maint.c: Add new `maint check-symtabs' command.
1254 * config/i386/tm-i386aix.h, config/i386/tm-sun386.h,
1255 config/i386/tm-symmetry.h (REGISTER_CONVERT_TO_RAW): Fix typo.
1256 * config/i386/tm-symmetry.h: Make comment inside #if 0 a real
1258 * config/i386/tm-symmetry.h (STORE_STRUCT_RETURN): Cast argument
1259 to write_memory to avoid warnings from gcc.
1260 * config/i386/xm-symmetry.h: Add missing #endif.
1261 * config/i386/nm-symmetry.h (NO_PTRACE_H): Add for Dynix.
1262 * config/i386/symmetry.mt (TDEPFILES): Add i386-tdep.o.
1263 * config/i386/symmetry.mh (NAT_FILE, NATDEPFILES): Add.
1267 * hppa-tdep.c (hppa_fix_call_dummy): Use value_ptr.
1268 (hppa_push_arguments): Likewise.
1270 Mon Mar 21 11:02:51 1994 Stu Grossman (grossman at cygnus.com)
1272 * alpha-tdep.c: Gobs of changes (many imported from mips-tdep) to
1273 improve remote debugging efficiency. Also fixed problems with
1274 doing function calls for programs with no entry points.
1275 * infcmd.c (run_stack_dummy): Use CALL_DUMMY_ADDRESS instead of
1276 entry_point_address.
1277 * inferior.h (PC_IN_CALL_DUMMY): ditto.
1278 * mdebugread.c (parse_symbol, parse_procedure, parse_external,
1279 parse_lines): Pass section_offsets info to these routines so that
1280 we can relocate symbol table entries upon readin.
1281 * (psymtab_to_symtab_1): Set symtab->primary to tell
1282 objfile_relocate to do relocations for our symbols.
1283 * (ecoff_relocate_efi): New routine to relocate adr field of PDRs
1284 (which hang off of the symbol table).
1285 * Use prim_record_minimal_symbols_and_info instead of
1286 prim_record_minimal_symbols to supply section info to make minimal
1287 symbol relocations work.
1288 * minsyms.c (prim_record_minimal_symbols_and_info): If section is
1289 -1, try to deduce it from ms_type.
1290 * objfiles.c (objfile_relocate): Use ALL_OBJFILE_SYMTABS where
1291 appropriate. Handle relocation of MIPS_EFI symbols special. Also,
1292 add code to relocate objfile->sections data structure.
1293 * remote.c (get_offsets): Use new protocol message to acquire
1294 section offsets from the target.
1295 * (remote_wait): Get rid of relocation stuff. That's all handled
1296 by objfile_relocate now.
1297 * config/alpha/alpha-nw.mt (TM_FILE): Use tm-alphanw.h.
1298 * config/alpha/tm-alpha.h: Define CALL_DUMMY_ADDRESS, and
1300 * config/alpha/tm-alphanw.h: DECR_PC_AFTER_BREAK=0, VM_MIN_ADDRESS=0.
1304 * sparc-tdep.c (sparc_frame_find_save_regs): Use REGISTER_RAW_SIZE
1306 * sp64-tdep.c (target_ptr_bit, set_target_ptr_bit): Deleted,
1307 can no longer set this at run time.
1308 * config/sparc/sp64.mt (SIMFILES): Use remote-sim.o now.
1309 (TM_CLIBS): Define to -lm, the simulator uses the sqrt() function.
1310 * config/sparc/tm-sp64.h (FPS_REGNUM, CPS_REGNUM): Define (so
1311 sparc-tdep.c compiles).
1312 (TARGET_PTR_BIT): Must be a constant now, fix at 64.
1316 * config/m68k/{cisco.mt,tm-cisco.h}: New files.
1317 * Makefile.in (ALLPARAM, ALLCONFIG): Add them.
1318 * configure.in: Recognize m68*-cisco*-*.
1320 * Makefile.in (TAGS): Use variables directly, rather than using
1321 find, to locate TM_FILE, XM_FILE, and NAT_FILE. This is faster
1322 and means that these filenames no longer need be unique across all
1323 the config/* directories.
1324 * configure.in: Put the config/*/ into TM_FILE, etc.
1326 * m68k-stub.c (computeSignal): Return SIGFPE, not SIGURG, for chk
1327 and trapv exceptions.
1329 * target.h (struct section_table), objfiles.h (struct obj_section):
1330 Change name of field sec_ptr to the_bfd_section. More mnemonic
1331 and avoids the (sort of, for the ptx compiler) name clash with
1332 the name of the typedef.
1333 * exec.c, xcoffexec.c, sparc-tdep.c, rs6000-nat.c, osfsolib.c,
1334 solib.c, irix5-nat.c, objfiles.c, remote.c: Change users.
1336 * utils.c: Include readline.h.
1337 * Makefile.in (utils.o): Add dependency.
1339 * remote.c (getpkt): Add support for run-length encoding.
1343 * utils.c (prompt_for_continue): Call readline, not gdb_readline.
1347 * dstread.c (record_minimal_symbol): New arg objfile. Pass it to
1348 prim_record_minimal_symbol.
1351 * regex.c (EXTEND_BUFFER): Adjust pointers within buffer by
1352 computing their offset from the start of the old buffer and adding
1353 to the new buffer, rather than by assuming we can add the
1354 difference between the old buffer and the new buffer (it might not
1355 fit in an int). Merge in cosmetic differences from emacs regex.c
1356 version of this macro.
1360 * Makefile.in (install-only): Fix use of program_transform_name.
1364 * printcmd.c: Remove "set print fast-symbolic-addr off" command.
1365 The bug which it worked around was fixed on 25 Feb 94 in coffread.c,
1366 so I'm nuking the command.
1367 * symtab.c (find_addr_symbol): Comment out, no longer used.
1369 * main.c (main): Don't init_source_path for the -cd argument. Now
1370 that source_path doesn't contain the current_directory from when
1371 GDB started up, init_source_path is no longer useful (and is
1372 harmful because it clobbers a source_path set in $HOME/.gdbinit).
1374 * TODO: Remove item about line numbers being off. It is useless
1375 and confusing without a reproducible test case (it mentions
1376 proceed(), but I was able to step through proceed without trouble).
1380 For Sunos 4.x targets, enable gdb to set breakpoints in shared
1381 library functions before the executable is run. Retrieve dynamic
1382 symbols from stripped executables.
1383 * symtab.h (minimal_symbol_type): Add mst_solib_trampoline type.
1384 * parse.c (write_exp_msymbol), symmisc.c (dump_msymbols),
1385 symtab.c (list_symbols): Handle mst_solib_trampoline.
1386 * minsyms.c (lookup_minimal_symbol): Handle mst_solib_trampoline
1387 for all targets, remove IBM6000_TARGET dependencies.
1388 * dbxread.c (read_dbx_dynamic_symtab): New function.
1389 * dbxread.c (dbx_symfile_read): Use it.
1390 * dbxread.c (SET_NAMESTRING): Set namestring to
1391 "<bad string table index>" instead of "foo" if the string index is
1393 * xcoffread.c (read_xcoff_symtab): Use mst_solib_trampoline instead
1395 * symtab.c (list_symbols): Take from_tty as parameter and pass it
1396 to break_command. Handle mst_file_* minimal symbol types.
1397 * config/i386/tm-i386bsd.h: Give just macro name, not args, to #undef.
1401 * c-exp.y(yylex): fix potential memory overflow.
1405 * environ.c (set_in_environ): Eliminate special handling of PATH and
1407 * putenv.c: Removed, conflicts with system declaration of
1408 putenv on RS/6000 running AIX 3.2.5, and above change makes it
1410 * Makefile.in: Change accordingly.
1411 * procfs.c (procfs_create_inferior): Change comment accordingly.
1415 * rs6000-tdep.c: Change value to value_ptr.
1419 * i386m3-nat.c: Include floatformat.h.
1420 (get_i387_state): Use memset not bzero.
1424 * Makefile.in: Enable commented out getopt_h, bfd_h, etc. Change
1425 ieee-float.h to floatformat.h.
1427 * valprint.c (val_print_string): Ignore error if the error
1428 happened after a terminating '\0'.
1430 * c-valprint.c (c_val_print): Never add 1 to return value from
1431 val_print_string; just return what it returns.
1433 * target.h (enum target_signal): Add TARGET_SIGNAL_FIRST, for
1434 looping through all of the enums.
1435 * infrun.c (signals_info): Use it.
1439 * main.c (main): When printing warning about bad baud rate, don't
1440 use warning(); it relies on current_target which isn't set up yet.
1442 * breakpoint.c (_initialize_breakpoint): Update docstring for
1443 tbreak to match what the code actually does. Don't mention tbreak
1444 in docstrings for "enable once" or "enable breakpoints once".
1448 * symfile.h (ADD_PSYMBOL_VT_TO_LIST): Don't put a semicolon after
1449 while (0). That defeats the whole purpose of using do . . . while (0).
1450 * mdebugread.c (parse_partial_symbols): Don't use ?: expression as
1451 list for ADD_PSYMBOL_TO_LIST; the macro takes its address and
1452 using a ?: expression as an lvalue is not portable.
1454 * stabsread.c (define_symbol): If REG_STRUCT_HAS_ADDR, also
1455 convert a LOC_ARG to a LOC_REF_ARG. Update code which combines
1456 'p' and 'r' symbol descriptors into a single symbol to look for a
1458 * README, config/sparc/tm-sparc.h: Update comments.
1462 * mdebugread.c (parse_type): Do not complain for types with
1463 an `indexNil' aux index, these are simply undefined types.
1464 Remove indexNil check from caller of parse_type.
1465 * mdebugread.c (parse_partial_symbols): Do not enter
1466 stGlobal, scCommon symbols into the minimal symbol table, their
1467 value is the size of the common, not its address.
1468 Handle scInit, scFini, scPData and scXData sections.
1469 Use minimal symbol type mst_file_* for stLabel symbols, instead of
1471 Enter stProc symbols into the global_psymbols list once, not into
1472 the static_psymbols_list.
1473 Get rid of dummy psymtab if it is empty, to allow proper detection
1474 of stripped executables.
1475 * mdebugread.c (cross_ref): Allow cross references to Fortran
1480 * stabsread.c (common_block_end, fix_common_block): Stash the
1481 struct pending * in the SYMBOL_TYPE, not the SYMBOL_NAMESPACE, so
1482 as to not assume that a pointer fits in an enum.
1486 * os9kread.c (fill_sym): check compiler verion number for pre-
1488 * os9kread.c (os9k_process_one_symbol): address of symbol is
1489 relative to section not module.
1490 * stabsread.c (define_symbol): add symbol type 's' as local
1492 * remote-os9k.c: add command 'set monitor_log' to turn on or off
1494 * remote-os9k.c: fix bug in delete breakpoint, single step trace.
1495 * remote-os9k.c: fix bug in 'set remotebaud' function.
1496 * remote-os9k.c (rombug_link): minimize checking so to improve
1498 * symfile.c (symbol_file_command): check if failed to link, also make
1499 the command be able to accept more than one filenames.
1500 * target.c (target_link): check if failed to link with rombug.
1501 * config/i386/tm-i386os9k.h : add #define DECR_PC_AFTER_BREAK 0.
1505 * remote-es.c (es1800_child_ops): Don't declare it static.
1509 * config/i386/tm-i386v4.h: Give just macro name, not args, to #undef.
1513 * dbxread.c: New variable lowest_text_address.
1514 (record_minimal_symbol, read_dbx_symtab): Set it.
1515 (read_dbx_symtab): Use lowest_text_address + text_size instead of
1516 end_of_text_address.
1517 * config/gould/tm-pn.h: Add comment regarding END_OF_TEXT_DEFAULT.
1519 * dbxread.c (end_psymtab): Remove old and commented out
1520 capping_global and capping_static. Fix comments regarding
1521 N_SO_ADDRESS_MAYBE_MISSING to match the real name of the macro.
1523 * parser-defs.h: Add "extern" to start of variable declarations so
1524 we don't end up with commons.
1525 * parse.c: Define these variables.
1527 * irix5-nat.c (find_solib): Cast o_path to CORE_ADDR when using it
1532 * alpha-tdep.c: Change value to value_ptr.
1536 * solib.c (elf_locate_base): New function to locate the address
1537 of the dynamic linker's runtime structure in the dynamic info section.
1538 * solib.c (locate_base): Use it instead of iterating over the list
1539 of mapped address segments.
1540 * solib.c (look_for_base, bfd_lookup_symbol): Removed, no longer
1545 * hppa-tdep.c (pc_in_linker_stub): Move decl to beginning of file.
1546 (pc_in_interrupt_handler): New function. Also add PARAM decl.
1547 (find_proc_framesize): Deal with HPUX setting SAVE_SP bit for
1548 signal trampoline and interrupt routines.
1549 (frame_saved_pc): Handle signal trampolines and interrupt routines.
1550 (frame_chain, frame_chain_valid): Likewise.
1551 (hppa_frame_find_saved_regs): Likewise. Also deal with special
1552 saved regs convention for SP.
1554 * tm-hppa[bho].h: FRAME_FIND_SAVED_PC_IN_SIGTRAMP): Define.
1555 (FRAME_BASE_BEFORE_SIGTRAMP): Define.
1556 (FRAME_FIND_SAVED_REGS_IN_SIGTRAMP): Define.
1558 * tm-hppah.h (IN_SIGTRAMP): Define.
1562 * ch-exp.y (match_simple_name_string): Accept '_' as well as an
1563 alphabetic character as the start of a name.
1565 * sparclite/Makefile.in (all install): Build and install aload.
1567 * configure.in: Accept i[34]86-*-*sysv32 because that is what
1568 config.guess and config.sub produce.
1570 * mips-tdep.c: Change value to value_ptr.
1574 * breakpoint.c, breakpoint.h, c-valprint.c, ch-valprint.c,
1575 cp-valprint.c, eval.c, expprint.c, findvar.c, language.c,
1576 objfiles.h, infcmd.c, printcmd.c, stack.c, typeprint.c,
1577 valarith.c, valops.c, valprint.c, value.h, values.c: Replace
1578 value with value_ptr. This is for the ptx compiler.
1579 * objfiles.h, target.h: Don't declare a "sec_ptr" field using a
1581 * symm-nat.c: Add a bunch of stuff for symmetry's ptrace stuff.
1582 #if 0 i386_float_info.
1583 * symm-tdep.c (round): Remove. Also remove sgttyb.
1584 * symm-tdep.c: Remove lots of stuff which duplicates stuff from
1585 i386-tdep.c. Remove register_addr and ptx_coff_regno_to_gdb.
1586 * i386-tdep.c (i386_frame_find_saved_regs): Put in
1587 I386_REGNO_TO_SYMMETRY check in case it is needed for Dynix
1589 * config/i386/nm-symmetry.h: Change KERNEL_U_ADDR. Move
1590 stuff from PTRACE_READ_REGS, PTRACE_WRITE_REGS macros to
1591 symm-nat.c. Define CHILD_WAIT and declare child_wait().
1592 * config/i386/tm-symmetry.h: Remove call function stuff; stuff in
1593 tm-i386v.h is apparently OK.
1594 * config/i386/xm-symmetry.h [_SEQUENT_]: Define HAVE_TERMIOS not
1595 HAVE_TERMIO. Define MEM_FNS_DECLARED, NEED_POSIX_SETPGID, and
1600 * osfsolib.c (xfer_link_map_member): Update to use new
1601 target_read_string interface.
1605 * infrun.c (wait_for_inferior): In checking
1606 remove_breakpoints_on_following_step, check
1607 through_sigtramp_breakpoint as well as step_resume_breakpoint.
1611 * os9kread.c (os9k_process_one_symbol): Rename
1612 VARIABLES_INSIDE_BLOCK to OS9K_VARIABLES_INSIDE_BLOCK.
1613 * symfile.c (symbol_file_command): Check for (CORE_ADDR)-1, not
1614 (CORE_ADDR)0, from target_link, since that is what it uses.
1615 Process name at end, not during parsing (like we did before Kung's
1616 change), so that -readnow and -mapped can appear anywhere.
1617 Make text_relocation a local variable.
1618 * config/i386/i386os9k.mt: Fix comment.
1619 * Makefile.in (ALLDEPFILES): Add remote-os9k.c.
1620 * os9kread.c: Put "comments" after #endif inside /* */.
1621 * stabsread.h: Add os9k_stabs variable.
1622 * stabsread.c (start_stabs), os9kread.c (os9k_process_one_symbol):
1624 * stabsread.c (define_symbol): If os9k_stabs, put a 'V' symbol
1625 descriptor in global_symbols not local_symbols.
1626 (read_type): If os9k_stabs, accept 'c', 'i', and 'b' type
1628 (read_type): If os9k_stabs, accept function parameters after 'f'
1630 (read_array_type): If os9k_stabs, don't expect index type and
1631 expect lower and upper to be separated by ',' not ';'.
1632 (read_enum_type): If os9k_stabs, read a number before the first
1633 enumeration constant.
1634 (os9k_init_type_vector): New function.
1635 (dbx_lookup_type): Call it when starting new type vector.
1636 * config/i386/tm-i386os9k.h: Define BELIEVE_PCC_PROMOTION.
1637 * (os9k_process_one_symbol): Call define_symbol not os9k_define_symbol.
1638 * os9kstab.c: Removed.
1639 * Makefile.in: Update accordingly.
1640 * objfiles.c (objfile_relocate_data): Removed.
1641 * remote-os9k.c (rombug_wait): Call objfile_relocate
1642 not objfile_relocate_data.
1643 * objfiles.h, objfiles.c: Remove find_pc_objfile.
1644 * remote-os9k.c (rombug_wait): Call find_pc_section not
1646 * main.c (quit_command): Check inferior_pid; revert Kung change.
1647 * remote-os9k.c (rombug_create_inferior): Set inferior_pid.
1651 * os9kread.c: New file to read os9000 style symbo table.
1652 * os9kstab.c: new file to read os9000 style stabs.
1653 * remote-os9k.c: remote protocol talking to os9000 rombug monitor.
1654 * objfiles.c (find_pc_objfile): new function to search objfile
1656 * objfiles.c (objfile_relocate_data): new function to relocate
1657 data symbols in symbol table.
1658 * objfiles.h: Add two aux fields in struct objfile to handle
1659 multiple symbol table files situation like in os9000.
1660 * symfile.c: Change so 'symbol-file' command can handle multiple
1661 files. Also call target_link() to get relocation infos.
1662 * target.c (target_link): new function to get relocation info when
1663 a symbol file is requested to load.
1664 * main.c (quit_command): take out 'inferior_pid != 0' condition,
1665 because in cross mode there's no inferior pid, bit they need to
1667 Makefile.in: add os9kread.c os9kstab.c and .o's.
1668 configure.in: add i386os9k target.
1669 config/i386/i386os9k.mt: new add.
1670 config/i386/tm-i386os9k.h: new add.
1674 * config/sparc/tm-sun4sol2.h (IN_SIGTRAMP): Handle ucbsigvechandler.
1675 * sparc-tdep.c (sparc_frame_saved_pc): Handle ucbsigvechandler.
1679 * target.c, target.h (target_read_string): Provide error detection to
1680 caller. Put string in malloc'd space, so caller need not impose
1682 * solib.c (find_solib): Update to use new interface.
1683 * irix5-nat.c (find_solib): Read o_path from inferior
1684 (clear_solib): Free storage for o_path.
1685 * valprint.c (val_print_string): Add comments.
1689 * symtab.c (decode_line_1): Handle the case when skip_quoted does not
1694 * value.h (struct value): Add modifiable field.
1695 * values.c (allocate_value, record_latest_value, value_copy): Set it.
1696 (record_latest_value): Don't mess with VALUE_LVAL of value.
1697 * valops.c (value_assign): Check it. Reword existing error
1698 message on not_lval.
1700 * mips-tdep.c (mips_step_skips_delay), config/mips/tm-mips.h
1701 (STEP_SKIPS_DELAY): Added.
1702 * infrun.c (proceed) [STEP_SKIPS_DELAY]: Check for a breakpoint in
1705 * valprint.c (val_print_string): If errcode is set, always print
1706 an error, regardless of force_ellipsis. In the non-EIO case,
1707 just print the error message rather than calling error(). Don't
1708 access *(bufptr-1) if bufptr points to the start of the buffer.
1709 When looking for '\0', don't increment bufptr and addr if bufptr
1710 started out already at limit. If an error happens on fetching the
1711 first character, don't print the string.
1715 * config/m68k/tm-apollo68b.h: Remove HAVE_68881 define; it is
1718 * i387-tdep.c, i386-tdep.c i386v-nat.c, i386aix-nat.c,
1719 i386m3-nat.c, config/m68k/tm-m68k.h, i960-tdep.c
1720 config/i960/tm-i960.h, remote-nindy.c, config/m88k/tm-m88k.h,
1721 m88k-tdep.c: Use floatformat.h instead of ieee-float.h.
1722 * sparc-tdep.c: Remove now-obsolete ieee-float.h stuff
1723 * findvar.c: Update comment regarding ieee-float.h.
1727 * config/i386/tm-i386v4.h (I386V4_SIGTRAMP_SAVED_PC, IN_SIGTRAMP,
1728 FRAME_CHAIN, FRAMELESS_FUNCTION_INVOCATION, FRAME_SAVED_PC):
1729 Define to make backtracing through the various sigtramp handlers
1731 * i386-tdep.c (i386v4_sigtramp_saved_pc): New routine to fetch
1732 the saved pc from ucontext on the stack for SVR4 signal handling.
1736 * remote.c, remote-mon.c, remote-utils.c, remote-utils.h,
1737 target.h, remote-es.c, remote-nindy.c: Don't set baud rate if
1738 baud_rate is -1. Remove sr_get_baud_rate and sr_set_baud_rate;
1739 just use the global variable itself. When printing baud rate,
1740 don't print a baud rate if baud_rate is -1.
1742 * coffread.c (read_coff_symtab): Pass mst_file_* to
1743 record_minimal_symbol for C_STAT symbols. Put C_EXT and C_STAT
1744 symbols in the minimal symbols regardless of SDB_TYPE.
1748 * breakpoint.h (enum bptype): New type bp_through_sigtramp.
1749 (bpstat_what_main_action): New code BPSTAT_WHAT_THROUGH_SIGTRAMP.
1750 * breakpoint.c (bpstat_what): Return BPSTAT_WHAT_THROUGH_SIGTRAMP
1751 if we hit a bp_through_sigtramp breakpoint. Remove kludge which
1752 ignored bs->stop for a bp_step_resume breakpoint.
1753 * infrun.c (wait_for_inferior): Make a through_sigtramp_breakpoint
1754 which performs one (the check_sigtramp2 one) of the functions
1755 which had been handled by the step_resume_breakpoint. For each
1756 use of the step_resume_breakpoint, make it still use the
1757 step_resume_breakpoint, use the through_sigtramp_breakpoint, or
1759 Deal with BPSTAT_WHAT_THROUGH_SIGTRAMP return from bpstat_what.
1760 When setting the frame address of the step resume breakpoint, set
1761 it to the address for frame *before* the call instruction is
1762 executed, not after.
1764 * mips-tdep.c (mips_print_register): Print integers using
1765 print_scalar_formatted rather than duplicating all the
1766 CC_HAS_LONG_LONG and so on.
1767 (mips_push_dummy_frame): Use read_register_gen rather than using
1768 read_register and then putting it back in target format with
1769 store_unsigned_integer. If registers are more than 4 bytes, give
1770 an error rather than have some registers overwrite other
1772 #if 0 unused include of opcode/mips.h.
1774 * symfile.h: Don't declare arguments for coff_getfilename.
1776 * defs.h: Revert Kung change regarding FORCE_LONG_LONG.
1780 * configure.in (hppa*-*-osf*): New configuration.
1781 * config/pa/hppaosf.mt: New target makefile fragment.
1782 * config/pa/tm-hppao.h: New target include file.
1786 * exec.c (print_section_info): Print entry point for exec_bfd only.
1787 * ser-unix.c (wait_for): Fix typo in HAVE_TERMIO case.
1788 * dwarfread.c: Remove second inclusion of <sys/types.h>, which
1789 causes problems if <sys/types.h> has no multiple inclusion protection.
1793 * tm-hppa.h (CALL_DUMMY): Add two NOP instructions to the end of
1794 the call dummy to avoid kernel bugs in HPUX, BSD, and OSF1.
1795 (CALL_DUMMY_LENGTH): Changed accordingly.
1797 Wed Feb 23 16:21:25 1994 Stu Grossman (grossman at cygnus.com)
1799 * sparc-stub.c (trap_low): Make trap handler work for arbitrary
1800 numbers of register windows.
1802 * sparclite/hello.c: Add factorial function for testing.
1803 * salib.c: Use macros instead of constants for I/O addresses to
1804 make 931 support easier.
1805 * sparclite.h: Change constraint for LOC to "rJ" to force use of
1806 register in sta/lda instructions.
1810 * dbxread.c (process_one_symbol): Set
1811 block_address_function_relative for COFF like we do for ELF and SOM.
1815 * mdebugread.c (new_psymtab): Pass in section_offsets and set
1817 * mdebugread.c (handle_psymbol_enumerators): New function to enter
1818 the enumerators of an ecoff enum into the partial symbol table.
1819 * mdebugread.c (parse_partial_symbols): Call it.
1820 * symfile.c (reread_symbols): Initialize objfile->*_psymbols.next.
1821 * symmisc.c (dump_psymtab): Fix typo, clean up output of section
1822 offsets. Cast psymtab->read_symtab to PTR before passing it to
1824 * i386-tdep.c (i386_skip_prologue): Skip over instructions that
1825 set up the global offset table pointer in pic compiled code.
1826 * config/mips/tm-mips.h (FIX_CALL_DUMMY): For big endian targets,
1827 error() on TYPE_CODE_FLT arguments whose size is greater than 8,
1828 swap all other TYPE_CODE_FLT arguments as mips_push_arguments
1829 ensures that floats are promoted to doubles before they are pushed
1832 Fri Feb 18 23:12:59 1994 Stu Grossman (grossman at cygnus.com)
1834 * sparclite/Makefile.in, sparclite/salib.c, sparclite/sparclite.h:
1835 Fixup cache_on and flush_i_cache so that they work for both the
1836 930 and 932 processors. Rewrite most low level funcs (uart
1837 access & cache stuff) to use new ASI access macros in sparclite.h.
1838 Also make it easy to access second serial port.
1842 * hp300ux-nat.c: Don't incloude <sys/dir.h>, <sys/ioctl.h>, or
1843 <sys/stat.h>; not needed.
1847 * stack.c (print_frame_info): In "pathological" case, don't
1848 distrust the line number information.
1852 * mips-tdep.c (mips_print_register): handle 64 bits register.
1853 * valprint.c (print_longest): fix a bug in printing 64 bits value.
1859 * Makefile.in (install): Do the sed for program_transform_name
1860 ourselves instead of worrying about INSTALL_XFORM. This enables
1861 users to override INSTALL_PROGRAM in the standard way.
1863 * Makefile.in (c-exp.tab.o, ch-exp.tab.o, m2-exp.tab.o): Don't
1864 depend on Makefile.in.
1866 * defs.h, valprint.c: Make longest_to_int a function not a macro.
1867 Only test against INT_MIN if a LONGEST is bigger than an int.
1869 * README: Change GhostScript to Ghostscript.
1873 * config/rs6000/{tm-rs6000lynx.h,nm-rs6000lynx.h,xm-rs6000lynx.h}:
1874 Rename to tm-rs6000ly.h, nm-rs6000ly.h, xm-rs6000ly.h for 14
1875 character file names.
1876 * Makefile.in (ALLPARAM): Add these files.
1878 * config/mips/littlemips64.mt: Rename to mipsel64.mt for 14
1879 character file names.
1880 * Makefile.in: Add Kung's new mips64 files.
1884 * configure.in: add mips64-*-elf, mips64-*-ecoff, mips64el-*-elf,
1885 mips64el-*-ecoff and mips64-big-*.
1886 * defs.h: get rid of FORCE_LONG_LONG.
1887 * mips-tdep.c (mips_find_saved_regs): add sd and sdc1 instruction
1888 parsing. Change register size to be MIPS_REGSIZE.
1892 * corelow.c, exec.c, irix5-nat.c, mipsread.c, objfiles.c,
1893 osfsolib.c, rs6000-nat.c, solib.c, symfile.c, utils.c,
1894 xcoffexec.c: Use bfd_get_error and bfd_set_error and new error names.
1898 * remote-hms.c (readchar, hms_open, hms_fetch_register): Made more robust.
1899 (remove_commands, add_commands): Add/remove hms-drain when target
1902 Fri Feb 11 16:11:38 1994 Stu Grossman (grossman at cygnus.com)
1904 * configure.in: Add Lynx/rs6000 support.
1905 * lynx-nat.c: Clean up some Sparc stuff. Clean up ptrace error
1906 messages. Add rs6000 support. Don't try to modify unwritable
1908 * rs6000-nat.c: Move lots of native dependent stuff (like core
1909 file support) from rs6000-tdep.c & xcoffexec.c to here.
1910 * rs6000-tdep.c: Move native dependent stuff to nat.c.
1911 * xcoffexec.c: Move native dependent stuff to nat.c.
1912 * config/rs6000/nm-rs6000.h: Move defs of SOLIB_* macros to here
1914 * config/rs6000/tm-rs6000.h: Remove defs of SOLIB_* funcs, cuz they're
1916 * config/rs6000/tm-rs6000lynx.h, config/rs6000/xm-rs6000lynx.h:
1917 New files to support Lynx/rs6000.
1921 * README: Remove note about gcc warnings on alpha, these should be
1923 * c-exp.y, ch-exp.y, core.c, corelow.c, eval.c, fork-child.c,
1924 m2-exp.y, minsyms.c, nlmread.c, parse.c, putenv.c, regex.c
1925 remote-utils.c, stabsread.c: Include <string.h>.
1926 * regex.c: Include "defs.h", change re_comp argument to const char *.
1927 * infptrace.c (fetch_register, store_inferior_registers): Change
1928 regaddr to type CORE_ADDR.
1929 * config/alpha/alpha-nw.mt, config/alpha/alpha-osf1.mt (MT_CFLAGS):
1930 Remove, no longer necessary now that we use bfd_vma for a CORE_ADDR.
1934 * symtab.h: Always define BYTE_BITFIELD to nothing.
1938 * config/m68k/{m68k-em.mt,tm-m68k-em.h}: Remove; no longer used.
1939 * configure.in: Remove comment about m68k-em.mt.
1940 * Makefile.in: Remove references.
1944 * defs.h [BFD64]: Use BFD_HOST_64_BIT, not nonexistent
1949 * target.c (target_preopen): If target_kill doesn't remove the
1950 target from the stack, use pop_target to do it.
1952 * coffread.c (process_coff_symbol, case C_TPDEF): Don't set name
1953 of TYPE_CODE_PTR or TYPE_CODE_FUNC types. This parallels similar
1954 changes to stabsread.c from summer 1993.
1956 * remote-udi.c (udi_files_info): If prog_name is NULL, just skip
1957 printing the program, rather than passing NULL to printf.
1958 (udi_detach): Set udi_session_id to -1 so that udi_close doesn't
1959 try to call UDIDisconnect again. Print better message.
1960 (udi_kill): Just call UDIDisconnect ourselves, rather than doing
1962 (udi_create_inferior): If udi_session_id is negative, open a new
1963 TIP rather than giving an error.
1965 * config/mips/mipsm3.mh, config/i386/i386m3.mh,
1966 config/ns32k/ns32km3.mh: Define NAT_FILE.
1967 * config/nm-m3.h: Change guard from _OS_MACH3_H_ and _OS_MACH3_H
1968 (it was inconsistent and namespace-wrong) to NM_M3_H.
1969 * m3-nat.c (mach_really_wait): Change parameter name to ourstatus.
1970 (m3_open): New function.
1972 * TODO: Update Mach section.
1974 * Makefile.in: Remove "rapp" stuff; it is superseded by gdbserver.
1978 * printcmd.c (printf_command): Add missing single-letter
1979 backslash-escape sequences, and improve error message.
1983 * corelow.c (solib_add_stub, core_open): Pass address of from_tty
1984 rather than trying to shove an int into a pointer and back out
1985 again. This avoids compiler warnings.
1987 * defs.h (alloca): Declare as void *, not char *, on hpux.
1988 Don't prototype it, just declare the return type.
1992 * config/i386/tm-sun386.h, config/i386/tm-symmetry.h
1993 (REGISTER_CONVERT_TO_RAW): Add missing backslash.
1997 * remote-mips.c (mips_fetch_registers): If regno is FP_REGNUM or
1998 ZERO_REGNUM, just read it as zero without talking to the board.
2000 * config/i386/tm-i386aix.h (REGISTER_CONVERT_TO_RAW): Add missing
2002 * i386-tdep.c (i386_extract_return_value): Pass TYPE_LENGTH (type)
2003 to store_floating, not nonexistent variable len.
2005 * remote-mips.c (mips_insert_breakpoint, mips_remove_breakpoint):
2007 (mips_store_word): Change calling convention to return errors, and
2008 to provide old contents if the caller wants it.
2009 (mips_xfer_memory): Deal with errors from mips_store_word.
2010 * config/mips/tm-idt.h, config/mips/tm-idtl.h: Remove BREAKPOINT
2011 define now that remote-mips.c doesn't use BREAKPOINT.
2013 * remote-mips.c (mips_create_inferior): Call warning if arguments
2014 specified, and then execute "set args" command. Call error, not
2015 mips_error, if executable file not specified.
2017 * remote-e7000.c: Replace "snoop" command (e7000_noecho) with
2020 * config/rs6000/tm-rs6000.h (STORE_STRUCT_RETURN): Don't cast
2025 * value.h (print_longest): Rename "value" to "val" in prototype
2026 declaration because some compilers don't like arguments whose
2027 names are the same as types.
2028 * remote.c (remote_xfer_memory): Cast "myaddr" to unsigned char *
2029 before passing it to remote_*_bytes.
2033 * h8500-tdep.c (saved_pc_after_call): The size of the
2034 pc is memory model dependent. (segmented_command,
2035 unsegmented_command, _initialize_h8500_tdep): New commands to
2036 change memory model.
2037 * remote-e7000.c (_initialize_remote_e7000): Change name of snoop
2039 * remote-hms.c (hms_load): Remove breakpoints when loaded.
2040 (hms_wait): Use new status structure
2041 (hms_open): Push the target here. (hms_before_main_loop): Not
2042 here. (supply_val, hms_fetch_register, hms_store_register): Cope
2043 with H8/500 names too. (hms_fetch_register): Take out REGISTER_TYPE.
2044 * sh-tdep.c (show_regs, initialize_sh_tdep): New command to print
2045 all registers in a compact way.
2049 * config/rs6000/tm-rs6000.h: Declare rs6000_struct_return_address
2050 as CORE_ADDR to match definition in rs6000-tdep.c.
2054 * dwarfread.c (process_dies): Skip nested TAG_compile_unit DIEs.
2055 * dwarfread.c (add_partial_symbol): Do not enter opaque aggregate
2056 definitions into the psymtab.
2060 * m68k-stub.c: Treat mc68332 like mc68020 most places. Provide
2061 a special exceptionSize for the 68332.
2063 * remote-udi.c (udi_attach): If no arguments, print error.
2067 * Makefile.in (VERSION): Bump to 4.12.1
2068 * NEWS, README: Update to match 4.12 release.
2072 * command.c (empty_sfunc): New function.
2073 (add_set_cmd): Use it instead of not_just_help_class_command.
2074 (not_just_help_class_command): Change calling convention back to
2075 what it was before yesterday's change.
2077 * stabsread.c (read_sun_builtin_type): Skip the semicolon at the end
2078 of the type if present.
2082 * printcmd.c (decode_format): Don't blithely set the size for
2083 an address to 'w'. Make it 'g' or 'h', depending on TARGET_PTR_BIT.
2085 * defs.h: Just typedef CORE_ADDR to bfd_vma. Include bfd.h.
2086 If BFD64, make a LONGEST a BFD_HOST_64_BIT.
2087 * defs.h (longest_to_int): Don't depend on CC_HAS_LONG_LONG; instead
2088 always just check against INT_MIN and INT_MAX (this also fixes things
2089 if sizeof (long) > sizeof (int), e.g. Alpha).
2090 * config/pa/tm-hppa.h, config/i386/sun386.h, config/rs6000/tm-rs6000.h:
2091 Don't define LONGEST or BUILTIN_TYPE_LONGEST.
2092 * gdbtypes.h: Remove BUILTIN_TYPE_LONGEST and
2093 BUILTIN_TYPE_UNSIGNED_LONGEST.
2094 * language.h, c-lang.c, ch-lang.c, m2-lang.c, language.c: Remove
2095 longest_int and longest_unsigned_int.
2096 * value.h (struct value): Just align to LONGEST, rather than worrying
2097 about CC_HAS_LONG_LONG.
2098 * valarith.c (value_binop): Figure out type ourself based on
2099 sizeof (LONGEST) rather than relying on BUILTIN_TYPE_LONGEST. The
2100 point is that we don't depend on CC_HAS_LONG_LONG anymore.
2101 * valprint.c (val_print_type_code_int): Just call
2102 extract_unsigned_integer directly, rather than going through
2104 * printcmd.c (decode_format): Remove code which would sometimes
2105 change 'g' size to 'w' for integers. print_scalar_formatted handles
2106 printing huge integers well enough, thank you.
2108 * command.c (add_set_cmd, not_just_help_class_command): Change
2109 to make this the sfunc, not cfunc, since that is how we call it.
2110 * command.h: Comment difference between sfunc and cfunc.
2111 * demangle.c (set_demangling_command): Add third arg since that
2112 is how it is called.
2113 (_initialize_demangler): Use sfunc, not cfunc, for
2114 set_demangling_command, since that is how it is called.
2115 Remove show_demangling_command; it has no effect.
2117 * command.c (shell_escape): Report errors correctly (with error
2118 message from strerror).
2122 * xcoffread.c (read_xcoff_symtab): Change CSECT_LEN to use
2123 x_scnlen.l rather than x_scnlen to match corresponding change in
2128 * gdbtypes.h, ch-typeprint.c, ch-valprint.c:
2129 Change comments regarding TYPE_CODE_BOOL.
2130 * language.c (boolean_type): Always return 1 for TYPE_CODE_BOOL,
2131 regardless of the language.
2132 (value_true): Just call value_logical_not regardless of language.
2133 * coffread.c (coff_read_enum_type), stabsread.c (read_enum_type):
2134 Remove #if 0'd code which makes some enums TYPE_CODE_BOOL.
2135 * language.h: Improve comment for la_builtin_type_vector.
2136 * m2-lang.c (_initialize_m2_language): Don't add any fields to
2137 builtin_type_m2_bool.
2141 * config/m88k/{tm-delta88.h,tm-delta88v4.h}, m88k-tdep.c:
2142 Define IN_SIGTRAMP and backtrace correctly through signal handlers.
2146 * procfs.c (wait_fd): Handle EINTR error return from PIOCWSTOP ioctl
2147 by restarting the ioctl.
2151 * target.h (target_wait): Add comment about calling
2152 return_to_top_level.
2156 * coffread.c (read_one_sym): bfd_coff_swap_aux_in now takes
2157 additional arguments.
2158 * xcoffread.c (read_xcoff_symtab, read_symbol_lineno): Likewise.
2160 Mon Jan 31 16:10:41 1994 Stu Grossman (grossman at cygnus.com)
2162 * sparc-stub.c: Remove unnecessary #include of memory.h.
2166 * mips-tdep.c: Remove code which sets saved_regs from
2167 init_extra_frame_info and put it in new function mips_find_saved_regs.
2168 (READ_FRAME_REG): Remove macro and replace uses with the expansion.
2169 * mips-tdep.c, config/mips/tm-mips.h: When examining ->saved_regs,
2170 check if it is NULL and call mips_find_saved_regs if so.
2172 * remote-mips.c: Use unfiltered, not filtered, output most places.
2174 * blockframe.c (get_prev_frame_info): Detect and stop an infinite
2175 backtrace. Revise comments.
2179 * mdebugread.c (parse_procedure): Remove _sigtramp kludges for
2180 alpha and irix. The _sigtramp case has to be handled properly
2181 in the tdep files if we have no ecoff debugging info.
2182 * alpha-tdep.c (alpha_frame_saved_pc, alpha_frame_chain),
2183 mips-tdep.c (mips_frame_saved_pc): Handle signal handler frames
2184 without PC_REGNUM kludge.
2185 * mdebugread.c (fixup_sigtramp), mips-tdep.c (read_next_frame_reg):
2186 Clean up handling of mips sigtramp frames, improve comments.
2190 * paread.c (read_unwind_info): Fix typo.
2192 * paread.c (pa_symtab_read): Update the "check_strange_names"
2193 filter to match GCC's current output. Filter out section symbols
2194 (which the HP linker sometimes puts in the wrong place).
2198 * serial.h (SERIAL_SET_TTY_STATE): Comment return value.
2200 * Makefile.in (TAGS): Just echo one line, rather than the whole thing.
2202 * Makefile.in: Remove all references to sparcly-nat.c.
2204 * Makefile.in (HFILES_NO_SRCDIR): Include dcache.h remote-utils.h
2205 remote-sim.h directly, rather than via $(remote_utils_h). This avoids
2206 duplicating serial.h and target.h.
2208 * Makefile.in: Don't set M_INSTALL and M_UNINSTALL. These variables
2209 are not used anywhere (a 5 Oct 1993 change removed the uses).
2211 * config/m68k/monitor.mt (TDEPFILE): Add remote-es.o.
2212 * config/m68k/es1800.mt: Add comment.
2213 * remote-es.c: Extensive changes to update to current conventions.
2215 * ser-unix.c (wait_for, hardwire_readchar) [HAVE_TERMIO, HAVE_TERMIOS]:
2216 If the timeout is too big to fit in c_cc[VTIME], then do multiple reads
2217 to achieve the desired timeout.
2218 * serial.h (serial_t): Add field timeout_remaining.
2222 * c-exp.y (yylex): Reenable nested type code.
2226 * a29k-tdep.c (examine_tag): Add comment regarding argcount.
2228 * remote-mips.c (mips_ops): Fix docstring.
2230 * remote-bug.c (bug_ops): Remove spurious newline from docstring.
2232 * config/m68k/tm-monitor.h: Changes to bring this into accordance
2233 with the old tm-m68k-em.h:
2234 (GDBINIT_FILENAME, DEFAULT_PROMPT): Remove.
2235 (HAVE_68881): Don't undefine; HAVE_68881 is obsolete.
2236 (REGISTER_NAMES): Don't muck with it; what tm-m68k.h has is fine.
2237 Add FIXME regarding GET_LONGJMP_TARGET.
2239 * remote-udi.c (udi_close, udi_detach, udi_kill): Add comments.
2240 * infptrace.c (kill_inferior): Add comments.
2241 * main.c (quit_command): Call target_close after we kill or
2243 * remote-udi.c (udi_close): Don't error() if QUITTING.
2247 * configure.in: Make m68k-coff and aout add monitor support in
2248 addition to the standard serial support.
2252 * mdebugread.c (psymtab_to_symtab_1): Don't complain on stLabel with
2257 * config/pa/tm-hppa.h: Define macro SMASH_TEXT_ADDRESS.
2258 * elfread.c (record_minimal_symbol_and_info),
2259 dwarfread.c (process_dies), paread.c (pa_symtab_read): Use it.
2263 * i386-stub.c: Add ".text" right before "mem_fault:".
2265 * main.c (baud_rate): Add FIXME comment about printing -1 value.
2267 * remote-utils.c (usage): Fix message to be accurate and conform
2268 more closely to normal conventions.
2270 * remote-utils.c (gr_files_info): Have the exec_bfd test control
2271 whether to show information about exec_bfd, and not control whether
2272 to show information about device and speed.
2274 * remote-utils.c (gr_open): If sr_get_device returns NULL, give
2275 usage message, don't dump core.
2277 * remote-bug.c (bug_write_memory): Use alloca, not GCC extension
2278 for variable size array.
2279 (bug_fetch_register, bug_store_register): Rename "value" to
2280 "fpreg_buf" because some compilers don't like variables whose
2281 names are the same as types.
2282 (bug_store_register): Use a cast when converting char * to
2285 * symmisc.c (maintenance_print_symbols): Don't refer to the name
2286 of the command in error message (the text was referring to the old
2287 name of the command).
2289 * symmisc.c (dump_symtab): Fix args to fprintf_filtered.
2291 * c-typeprint.c (c_type_print_base): Have SHOW == 0 mean to print
2292 full details on structure elements without names. This partially
2293 reverts the changes of 1 Jul 1993 and 31 Aug 1993; I think this aspect
2294 of those changes was accidental.
2296 * stack.c (parse_frame_specification): If SETUP_ARBITRARY_FRAME is
2297 defined, make it an error to specify a single argument which is not
2300 * Makefile.in (version.c), main.c (print_gdb_version): Use
2301 host_alias and target_alias, not host_canonical and
2302 target_canonical, to print configuration.
2306 * parse.c (write_exp_msymbol): Use new type msymbol_addr_type instead
2307 of builtin_type_long. It is necessary to get a type which is
2308 TARGET_PTR_BIT bits in size; builtin_type_long might not be big enough.
2310 Fix many sins which will come up in 32 bit x 64 bit GDB, and
2311 various miscellaneous things discovered in the process:
2312 * printcmd.c, defs.h (print_address_numeric): New function.
2313 * c-valprint.c (c_val_print), ch-valprint.c (chill_val_print)
2314 breakpoint.c (describe_other_breakpoints, breakpoint_1, mention),
2315 cp-valprint.c (cplus_print_value), infcmd.c (jump_command),
2316 printcmd.c, stack.c, symfile.c, symmisc.c, valprint.c:
2318 * utils.c, defs.h (gdb_print_address): New function.
2319 * expprint (dump_expression), gdbtypes.h: Use it.
2320 * breakpoint.c (describe_other_breakpoints),
2321 symmisc.c (dump_symtab, print_symbol):
2322 Use filtered not unfiltered I/O.
2323 (remove_breakpoints): Remove BREAKPOINT_DEBUG code. Might as well
2324 just run gdb under a debugger for this (and it had problems with
2325 printing addresses, how to print b->shadow, etc.).
2326 * buildsym.c (make_blockvector), core.c (memory_error),
2327 exec.c (print_section_info), maint.c (print_section_table),
2328 mdebugread.c (parse_procedure), solib.c, source.c, symfile.c,
2329 symmisc.c, symtab.c, valops.c, valprint.c, xcoffexec.c:
2330 Add comments saying code is broken. Marked with "FIXME-32x64".
2331 * dbxread.c (process_one_symbol), partial-stab.h (default),
2332 remote-vx.c (vx_run_files_info):
2333 Don't cast int being passed to local_hex_string.
2334 * symmisc.c (print_symbol): Don't cast long being passed to %lx.
2335 * symtab.h (general_symbol_info): Add comment about SYMBOL_VALUE
2337 * symmisc.c (print_symbol): Print "offset" in message for LOC_ARG
2339 * printcmd.c (print_address): Remove #if 0 code with ADDR_BITS_REMOVE.
2340 * source.c: Include <sys/types.h> regardless of USG.
2344 * valops.c (value_assign): Set `type' after coercing toval.
2345 * c-valprint.c (c_val_print), ch-valprint.c (chill_val_print):
2346 Use extract_unsigned_integer to get the address of a reference.
2350 * stabsread.c (STABS_CONTINUE, error_type), partial-stab.h:
2351 AIX can use ? instead of \ for continuation. Deal with it.
2353 * paread.c (read_unwind_info): Just assign to objfile->obj_private,
2354 not OBJ_UNWIND_INFO. Assigning to a cast is a GCC-ism which
2355 the HP compiler in ANSI mode doesn't like.
2357 * main.c: When defaulting HAVE_SIGSETMASK based on USG, just do it
2358 based on USG, rather than defining HAVE_SIGSETMASK to an
2359 expression containing defined. Having a macro used in #if expand
2360 to an expression containing "defined" is undefined according to
2361 ANSI, and the HP compiler in ANSI mode doesn't do what we wanted
2366 * sparc-nat.c (fetch_inferior_registers, store_inferior_registers):
2367 Clean up the changes of 11 Jan, as recommended by Peter Schauer.
2371 * ch-exp.y (match_string_literal): Allow a zero-length string.
2372 * ch-lang.c (chill_printstr): Don't print zero-length string funny.
2376 * i386aix-nat.c (i386_float_info): Reverse order of registers before
2377 passing them to print_387_status.
2378 (print_387_status): Don't subtract top from 7 before using it.
2379 * i387-tdep.c: Remove comment about AIX wanting "top" subtracted
2380 from 7; the above explains it.
2384 * mips-tdep.c (init_extra_frame_info): Use frame relative stack
2385 pointer value when fixing up the frame at the start of a function.
2387 Sat Jan 22 12:29:13 1994 Stu Grossman (grossman at cygnus.com)
2389 * lynx-nat.c (fetch_core_registers): Load the I & L regs for the
2390 Sparc from the stack.
2394 * remote-mips.c (mips_initialize): Clear mips_initializing via
2395 cleanup chain, not directly.
2397 * ser-unix.c (wait_for) [HAVE_TERMIO, HAVE_TERMIOS]: Make a timeout
2398 of -1 mean forever, like in the HAVE_SGTTY case. Warn if we are
2399 munging the timeout due to the limited range of c_cc[VTIME].
2401 * fork-child.c, inferior.h (fork_inferior): New argument shell_file.
2402 * procfs.c (procfs_create_inferior), inftarg.c (child_create_inferior),
2403 m3-nat.c (m3_create_inferior): Pass it.
2404 * procfs.c: Remove ptrace function. It was declared in a way which
2405 conflicted with the prototype in unistd.h on Solaris.
2409 * sparc-tdep.c (frame_saved_pc): Get the pc from the saved pc
2410 in the sigcontext if it is a signal trampoline frame.
2411 * config/sparc/tm-sun4sol2.h (IN_SIGTRAMP, SIGCONTEXT_PC_OFFSET):
2412 Define for Solaris2.
2414 Sat Jan 22 00:34:47 1994 Stu Grossman (grossman at cygnus.com)
2416 * sparc-tdep.c, lynx-nat.c, config/sparc/tm-sparc.h,
2417 config/sparc/tm-sparclynx.h: Move defs of FRAME_SAVED_I0/L0 to
2418 tm-sparc.h so they can be overridden if necessary.
2420 Fri Jan 21 17:49:28 1994 Stu Grossman (grossman at cygnus.com)
2422 * lynx-nat.c: Add Sparc support.
2423 * sparcly-nat.c: Remove. It's useless.
2424 * config/sparc/nm-sparclynx.h: Rewrite.
2425 * config/sparc/sparclynx.mh (NATDEPFILES): Replace sparcly-nat.o
2427 * config/sparc/tm-sparclynx.h: Rewrite.
2431 * rs6000-pinsn.c: Use the new disassembler in the opcodes
2432 directory. Old code was discarded, since the new opcode table has
2437 * Makefile.in (realclean): Remove info files per make-stds.texi.
2441 * dbxread.c (end_psymtab): Only patch psymtab textlow and texthigh
2442 if N_SO_ADDRESS_MAYBE_MISSING is defined.
2443 * config/sparc/tm-sun4sol2.h: Define it.
2447 * printcmd.c (print_address_symbolic): Unconditionally use msymbol
2448 if we did not find a symbol.
2452 * infptrace.c (child_xfer_memory): Only use if CHILD_XFER_MEMORY
2455 * hppab-nat.c (call_ptrace): Delete redundant function.
2456 (kill_inferior, attach, detach, child_resume): Likewise.
2457 (child_xfer_memory): Likewise.
2459 * hppah-nat.c (call_ptrace): Delete redundant function.
2460 (kill_inferior, attach, detach, child_resume): Likewise.
2462 * config/pa/hppabsd.mh (NATDEPFILES): Add infptrace.o.
2464 * config/pa/hppahpux.mh (NATDEPFILES): Add infptrace.o.
2466 * config/pa/nm-hppab.h (FETCH_INFERIOR_REGISTERS): Define.
2468 * config/pa/nm-hppah.h (FETCH_INFERIOR_REGISTERS): define.
2469 (CHILD_XFER_MEMORY): Define.
2470 (PT_*): Define so that generic infptrace.c code can be used.
2474 * xcoffread.c (xcoff_symfile_read): Make second parameter a
2475 struct section_offsets *, not a (nonexistent) struct section_offset *.
2477 * xcoffread.c (read_xcoff_symtab): Make main_aux just a union
2478 internal_xcoff_symtab, not an array of one of them. Change lots of
2479 "main_aux" to "&main_aux" and so on.
2481 * coffread.c, xcoffread.c: Include <coff/internal.h>
2486 * coffread.c (coff_getfilename): Make it not static.
2488 * xcoffread.c (read_xcoff_symtab): complain() not abort().
2490 * xcoffread.c (struct coff_symbol): Rename c_nsyms to c_naux (removes
2491 a completely gratuitous difference between xcoffread.c and coffread.c).
2495 * infrun.c (wait_for_inferior): Don't set frame for
2496 step_resume_breakpoint for IN_SIGTRAMP cases.
2498 * infrun.c (wait_for_inferior), breakpoint.h (struct bpstat_what),
2499 breakpoint.c (bpstat_what): Move step_resume from its own field of
2500 the struct bpstat_what into the main_action. Make it override
2501 other breakpoints. This is a conservative change in the sense
2502 that before the step resume breakpoint was a breakpoint.c
2503 breakpoint, hitting the step resume breakpoint overrode even
2504 calling bpstat_stop_status.
2508 * infrun.c (normal_stop): Set stop_pc after popping the dummy frame
2509 in case execution was stopped in the called function.
2510 * stack.c (print_frame_info, frame_info): If backtracing through
2511 a call dummy, handle the starting source line number on a line
2512 boundary like backtracing through sigtramp.
2513 * sparc-tdep.c (sparc_frame_find_saved_regs): Get frame address
2514 for call dummy frame right. Remove old test for dummy frame,
2515 it has been unused at least since gdb-3.5.
2516 * sparc-tdep.c (sparc_push_dummy_frame): Set return address register
2521 * infcmd.c (signal_command): Accept 0 as legitimate signal number.
2525 * infrun.c (signals_info), target.c (target_signal_from_name):
2526 Use ugly casts to avoid enumvar < enumvar or enumvar++.
2530 * ser-unix.c (hardwire_noflush_set_tty_state): Don't muck with ICANON.
2531 * inflow.c (terminal_ours_1): When discussing how to deal with the
2532 tty state, make note of query() as well as readline.
2534 * infrun.c (_initialize_infrun): Add TARGET_SIGNAL_POLL to list of
2535 signals for which stop and print are cleared by default.
2539 * config/pa/tm-hppa.h (unwind_table_entry): Use one of the
2540 reserved fields to hold a stub unwind entry type. Fix typo.
2541 (stub_unwind_entry): New structure for raw stub unwind entries.
2542 (stub_unwind_types): The types of stubs we may encounter.
2543 (UNWIND_ENTRY_SIZE, STUB_UNWIND_ENTRY_SIZE): New defines.
2544 * hppa-tdep.c (rp_saved): Use additional information provided
2545 by linker stub unwind descriptors.
2546 (frameless_function_invocation): Likewise.
2547 (frame_chain_valid): Likewise.
2548 * paread.c (compare_unwind_entries): New function for sorting
2549 unwind table entries.
2550 (read_unwind_info): Rewrite to remove dependency on host endianness.
2551 Read in data from the $UNWIND_END$ subspace which contains linker
2552 stub unwind descriptors. Merge that data into the basic unwind
2555 * hppab-nat.c (_initialize_kernel_u_addr): Delete unwanted functions.
2559 * xcoffread.c (read_xcoff_symtab, case C_FILE): Accept the name
2560 from either the symbol name or the auxent.
2561 * coffread.c, symfile.h (coff_getfilename): Renamed from getfilename,
2566 * Makefile.in (ALLPARAM): Change irix5.h to nm-irix5.h.
2570 * README: Update notes for alpha port.
2574 * i960-tdep.c (i960_fault_to_signal): Return TARGET_SIGNAL_ILL
2575 for operation fault, constraint fault, and type fault.
2579 * Makefile.in (init.c): Add comment explaining formatting conventions.
2581 * c-exp.y (parse_number): Assign to temporary between the right
2582 shifts, to work around a bug in the SCO compiler.
2584 * Makefile.in (ALLCONFIG, ALLPARAM, ALLDEPFILES, HFILES_NO_SRCDIR):
2585 Add various files which were added to GDB recently.
2587 * xcoffread.c (process_xcoff_symbol): Only change 'V' to 'S' if not
2590 * Makefile.in: Add mostlyclean target.
2598 * main.c (show_commands): Make return type of extern
2599 history_get be HIST_ENTRY, rather than struct _hist_entry.
2600 (The latter loses with the upcoming merged readline.)
2604 * minsyms.c (prim_record_minimal_symbol_and_info): Make tempstring
2605 const char *, not char *.
2607 * symtab.h (struct symbol): Make section short, not unsigned short.
2609 * symtab.c (lookup_symbol): Add comment about QUIT here.
2611 * utils.c (fputs_unfiltered): Call fputs, not fputs_maybe_filtered.
2613 * c-exp.y (parse_number): Check for overflow regardless of range
2614 checking. Fix overflow check to use unsigned LONGEST, not
2617 * c-exp.y (parse_number): Make it so that integer constants are
2618 builtin_type_long_long if builtin_type_long isn't big enough or if
2619 an "LL" suffix is used. Properly handle "UL" or "LU" suffixes.
2621 * c-typeprint.c (c_type_print_varspec_suffix, case TYPE_CODE_FUNC):
2622 Print our "()" first, then recurse for the target type.
2626 * remote-udi.c (udi_create_inferior): Quote empty execfile argument.
2628 * gdbserver/low-lynx.c: Include <sys/wait.h> not "/usr/include/wait.h".
2632 * utils.c (request_quit): Re-establish signal handler regardless
2635 * config/mips/xm-irix4.h: Define HAVE_TERMIOS.
2639 * i960-tdep.c: Include target.h.
2643 * lynx-nat.c (sys/wait.h): Don't use absolute pathname.
2647 * lynx-nat.c (child_wait): Fix thinkos in struct target_waitstatus
2648 changes (status -> ourstatus; declare status, etc.).
2649 * config/nm-lynx.h: Fix child_wait prototype and include target.h.
2653 * Makefile.in (ALLPARAM): Add config/nm-lynx.h.
2657 * remote-mips.c (mips_request, mips_wait): Correct prototypes.
2661 * config/i386/xm-linux.h: Define HAVE_TERMIOS.
2665 * config/alpha/tm-alpha.h (CALL_DUMMY): Improve comment.
2669 * remote-vx.c (vx_wait): Only call i960_fault_to_signal if I80960
2670 is defined. Otherwise just report TARGET_SIGNAL_UNKNOWN.
2672 * mips-tdep.c (mips_push_arguments): Byteswap struct_addr before
2675 Add search to target vector (#if 0'd until after 4.12):
2676 * target.h (to_search, target_search): Add.
2677 * gdbcore.h, core.c (generic_search): Add.
2678 * remote.c (remote_search): Add.
2679 * a29k-tdep.c (init_frame_info): Use target_search to find traceback
2682 * printcmd.c (print_address_symbolic): If set print fast-symbolic-addr
2683 is on, call find_pc_function rather than relying just on the minimal
2684 symbols (probably only matters for symbol readers which don't put
2685 statics in the minimal symbols, but changing this strikes me as
2686 not conservative enough).
2687 Initialize name_location in all cases.
2688 If no symbol and no msymbol, don't print anything symbolic.
2690 * a29k-tdep.c (push_dummy_frame): Add comment about saving lr0.
2694 * printcmd.c (print_address_symbolic): Make it search the
2695 symtabs for variables as well as functions. Add `set print
2696 fast-symbolic-addr' and default it to fast (the old way).
2697 Print line numbers for data items as well as functions.
2699 * symtab.c (find_addr_symbol): Return the symtab and the symbol
2700 address, if a symbol is found (take two more args pointing to
2701 where to store these results).
2703 * symtab.h (find_addr_symbol): Add prototype.
2707 * objfiles.h: Fix comments to reflect the fact that the phrase
2708 "top of stack" always refers to where the pushing and popping takes
2709 place, regardless of whether it is at the highest or lowest address.
2713 * mdebugread.c (parse_symbol): Do not set TYPE_TAG_NAME for
2714 compiler generated tag names.
2715 * mdebugread.c (parse_type): Handle cross references to qualified
2717 * valops.c (value_struct_elt): Improve error message if the
2718 address of a method is requested from an object instance.
2719 * valops.c (search_struct_method): Make name_matched non-static
2720 to get it initialized correctly.
2721 * config/i386/nm-i386sco.h (CANNOT_STORE_REGISTER): Define to
2722 exclude segment register which are not writable on newer SCO versions.
2726 * go32-xdep.c: Remove unused function uerror.
2727 (sigsetmask): Declare return type. Declare argument (to match the
2728 way it is called). Explicitly return 0.
2732 * symtab.h (struct symbol, general_symbol_info, minimal_symbol,
2733 partial_symbol): Shrink the storage sizes of symbols, by making
2734 enums into 1-byte bitfields when compiled __GNUC__, moving all the
2735 enums and small ints to the end of each struct to improve
2736 alignment, and switching the section number from int to unsigned
2741 * symtab.c (find_addr_symbol): New routine that will find the nearest
2742 symbol associated with an address. It does so by exhaustive
2743 search of the symtabs, so it's slow but complete.
2747 * coffread.c (read_coff_symtab): Set PC bounds of _globals_ symtab
2748 to [0,0] rather than [0, end of first source file]. This avoids
2749 problems with other parts of GDB looking for linetables in the
2750 _globals_ symtab. Eliminate variables num_object_files and
2751 first_object_file_end.
2755 * a29k-tdep.c (init_frame_info): Cast null arg to examine_tag.
2756 (pop_frame): Restore PC2 and LR0 from dummy frames.
2757 (push_dummy_frame): Save PC2 and LR0 into dummy frames.
2758 (setup_arbitrary_frame): Handle 3 args and set up real frames.
2759 * config/a29k/tm-a29k.h (FRAME_NUM_ARGS): Update comments.
2760 (DUMMY_FRAME_RSIZE): Add 2 longwords for PC2 and LR0.
2761 (SETUP_ARBITRARY_FRAME): Define.
2765 * infrun.c, config/mips/tm-irix5.h: Remove #if 0'd AT_FUNCTION_START.
2769 * remote-udi.c (udi_resume): Correct prototype.
2773 * config/pa/tm-hppa.h (FRAME_FIND_SAVED_REGS): Call
2774 hppa_frame_find_saved_regs.
2775 * hppa-tdep.c (dig_fp_from_stack): Delete function.
2776 (prologue_inst_adjust_sp): New function.
2777 (is_branch, inst_saves_gr, inst_saves_fr): New functions.
2778 (skip_prologue): Completely rewrite to use unwind information.
2779 (hppa_frame_find_saved_regs): Likewise.
2783 * remote-mips.c (mips_wait): Use new function mips_signal_from_protocol
2784 to convert a signal number with appropriate bounds checking.
2786 * remote-mips.c (mips_wait): Fix typos (0x177 -> 0177, 0x377 -> 0377).
2790 * stack.c (frame_info): If FRAME_FIND_SAVED_REGS isn't defined,
2791 print a newline to end the display anyway.
2793 * sparc-tdep.c (sparc_pop_frame): Pop the fsr and csr (float and
2794 coprocessor status regs) when popping a frame. This fixes
2795 float exceptions that occur after calling inferior functions.
2797 * sparc-nat.c (fetch_inferior_registers, store_inferior_registers):
2798 Read and write the fsr (float status register) to/from the child
2799 process along with the float regs. Remove Peter Schauer's change
2800 of May 24 '93, which has higher overhead and doesn't solve the
2801 real problem (which was that FSR wasn't being set).
2805 * a29k-tdep.c (examine_prologue): Don't worry if the ASGEQ
2806 stack overflow check isn't right after the register stack
2807 adjustment instruction. Metaware R2.3u compiler moves other
2808 things in front of it. This fix isn't perfect but is what's
2813 * c-valprint.c (c_val_print): Treat TYPE_CODE_RANGE like TYPE_CODE_INT.
2815 * config/alpha/alpha-netware.mt: Rename to alpha-nw.mt for 14
2816 character filenames.
2817 * configure.in: Change accordingly.
2821 * m68k-stub.c, sparc-stub.c: removed spurious introduction of
2822 _filtered io routines from these two files.
2826 * config/i386/tm-i386v.h, config/m68k/tm-m68k.h, config/mips/tm-mips.h,
2827 config/vax/tm-vax.h (CALL_DUMMY_BREAKPOINT_OFFSET): Define.
2828 * mdebugread.c (parse_symbol): Handle enum sh.type produced by
2830 * mdebugread.c (add_line): Handle zero linenos produced by DEC c89.
2834 * utils.c (print_sys_errmsg): Call gdb_flush (gdb_stdout) before
2835 printing to gdb_stderr.
2837 * remote-udi.c (udi_kill): Don't close the connection, just set
2838 inferior_pid to zero.
2839 (udi_mourn): Call remove_breakpoints.
2841 * remote-udi.c: Remove obsolete need_artificial_traps comment.
2843 * i386b-nat.c (sregmap): If sEAX, etc., not defined, use tEAX, etc.
2847 * symtab.c (lookup_symbol): Don't try adding .c to the name.
2849 * remote-bug.c: At the start of each section, reset srec_frame
2852 * target.h: Add TARGET_WAITKIND_LOADED and TARGET_WAITKIND_SPURIOUS.
2853 * target.c (store_waitstatus): Add CHILD_SPECIAL_WAITSTATUS hook.
2854 * infrun.c (wait_for_inferior): Replace SIGTRAP_STOP_AFTER_LOAD with
2855 code which looks for those two waitkinds. Use switch statement.
2856 * config/rs6000/tm-rs6000.h: Replace SIGTRAP_STOP_AFTER_LOAD with
2857 CHILD_SPECIAL_WAITSTATUS.
2859 * procfs.c (procfs_wait): Fix argument name to match 4 Jan changes.
2860 * Move target_signal_from_host, target_signal_to_host, and
2861 store_waitstatus from inftarg.c to target.c. procfs needs them.
2862 * target.c: Include "wait.h" and <signal.h>.
2863 * target.h, infrun.c (proceed), proceed callers: Pass new code
2864 TARGET_SIGNAL_DEFAULT instead of -1. This avoids problems with
2865 enums being treated as unsigned and is cleaner.
2866 * infrun.c (signals_info): Don't print TARGET_SIGNAL_DEFAULT or
2868 * infcmd.c (signal_command), infrun.c (signals_info):
2869 Don't allow user to specify numeric equivalent of
2870 TARGET_SIGNAL_DEFAULT.
2874 * config/alpha/alpha-netware.mt: New target support for Alpha
2876 * configure.in: Add alpha-*-netware* target.
2880 * remote-mips.c (mips_wait): Fix ref to TARGET_WAITKIND_STOPPED.
2884 * target.h: Add enum target_waitkind, enum target_signal, and
2885 struct target_waitstatus. Change status argument to target_wait to
2886 be struct target_waitstatus * instead of int *.
2887 * target.h, infrun.c, all targets: Change type of signal arguments
2888 to resume(), proceed(), and target_resume() from int to enum
2890 * All targets (*_wait, *_resume): Change accordingly.
2891 * infcmd.c (program_info, signal_command), throughout infrun.c,
2892 * fork-child.c, solib.c, hppa-tdep.c, osfsolib.c: Use this stuff.
2893 * convex-xdep.c, convex-tdep.c: Add FIXME's (getting the Convex
2894 signal code stuff right with the new signals would be non-trivial).
2895 * inferior.h (stop_signal): Make it enum target_signal not int.
2896 * target.c, target.h (target_signal_to_string, target_signal_to_name,
2897 target_signal_from_name): New functions.
2898 * inftarg.c, target.h (target_signal_to_host, target_signal_from_host,
2899 store_waitstatus): New functions.
2900 * procfs.c (procfs_notice_signals): Use them.
2901 * i960-tdep.c (i960_fault_to_signal): New function, to replace
2903 * config/i960/tm-i960.h: Don't define PRINT_RANDOM_SIGNAL.
2905 * objfiles.c (build_objfile_section_table): Don't abort() if
2906 objfile->sections is already set.
2908 * objfiles.c (add_to_objfile_sections): Check SEC_ALLOC not SEC_LOAD
2909 to match recent change to exec.c.
2913 * main.c (print_gdb_version): Change year to 1994.
2915 * ChangeLog, ChangeLog-93: Split ChangeLog at 1994.
2916 * Makefile.in (NONSRC): Add ChangeLog-93.
2920 * stabsread.c (read_type): Allow defining several type numbers
2921 at once (e.g. "(1,2)=(3,4)="...).
2923 * stabsread.c (read_enum_type): Use TARGET_INT_BIT not sizeof (int).
2925 * breakpoint.c (frame_in_dummy): Check PC as well as frame.
2929 * mdebugread.c (psymtab_to_symtab_1): Only pass N_STAB symbols
2930 to process_one_symbol.
2931 * symtab.c (find_pc_psymbol): Search global_psymbols as well to
2932 avoid caching a bad endaddr in find_pc_partial_function.
2936 * config/m68k/tm-sun3.h: Don't define BELIEVE_PCC_PROMOTION.
2940 * infrun.c (wait_for_inferior): Do not step or step resume past
2941 the end of a one-line function we just stepped into.
2943 For older changes see ChangeLog-93
2949 version-control: never