3 * stabsread.c (read_type): Handle stub types for bitstrings.
4 * stabsread.c (read_array_type): Check for stub domain type
5 using TYPE_FLAG_STUB, not its length.
6 * gdbtypes.c (create_set_type): Handle a stub domain type.
8 * ch-exp.y: Get rid of some extra non-terminals, and move
9 their rules into primitive_value.
10 * parser-defs.h: Add comment about unary postfix operators.
11 * ch-lang.c (chill_op_print_tab): Add '->', postfix and prefix.
12 * expprint.c (print_subexp): Recognize unary postfix operator.
16 * remote-hms.c: use remote_debug instead of hms_silent toggle.
17 Add warnings about depreciation of `snoop' cmd.
21 * remote-hms.c (hms_read_inferior_memory): Cope when
22 target sends both \r and \n.
26 * remote-mips.c (mips_error): Place NORETURN macro correctly.
27 * TODO: Add item about START_INFERIOR_TRAPS_EXPECTED.
31 * xcoffread.c (read_xcoff_symtab): Fix obsolete comment about
34 * f-valprint.c (f_val_print): Change cast of valaddr from
35 CORE_ADDR * to char **, since that is how it is used.
37 * dbxread.c (read_dbx_dynamic_symtab): Save copy of symbol names
38 using obsavestring, and pass that to prim_record_minimal_symbol.
39 Having the objfile point to bfd_asymbol_name directly doesn't work
40 if we save and restore a mapped symbol file.
44 * gdbtk.tcl: Add ref counts to breakpoint tags.
45 * Put quotes around function name in disassemble command to better
46 handle assembler names containing `.'.
47 * Make pclist element 0 be filler to avoid off-by-one problem with
49 * Set names of top-level windows.
50 * Add register display window.
51 * Add PC to label of assembly window.
55 * w89k-rom.c, op50-rom.c, monitor.c, config/pa/hppapro.mt: New files
56 to add a generic ROM monitor interface, and support file for the
57 WinBond W89K and the Oki OP50N PA based target boards.
61 * gdbtk.c (gdbtk_flush gdbtk_fputs): Buffer up output to make
62 disassembly more efficient.
63 * (breakpoint_notify): Include pc in gdbtk_tcl_breakpoint
65 * (gdb_loc): Include pc in return value. Also, return function
66 name if arg was specified.
67 * (gdb_cmd_stub): Call gdb_flush to drain internal GDB buffers
68 after command completes.
69 * (gdbtk_init): Improve error handling.
71 * gdbtk.tcl: Add lots of comments. Clean up code.
72 * (gdbtk_tcl_fputs): Make output window redirectable.
73 * Add assembly window, and breapoint support.
74 * Make button 1 in margin toggle breakpoints.
75 * Use stippling to indicate breakpoint disabling.
79 * config/pa/tm-hppa.h (REGISTER_NAMES): Use r26-r23 for arg0-arg3.
83 * irix5-nat.c, osfsolib.c, solib.c (solib_add): Simplify last
84 change by replacing `symbols_added' with `so_last'.
85 * mdebugread.c (parse_external, parse_partial_symbols): Ignore
86 global common symbols, they will be resolved by the runtime loader.
87 * mdebugread.c (parse_symbol, parse_partial_symbols, cross_ref):
88 Handle scSCommon like scCommon symbols.
92 * corelow.c (add_solib_stub): Copy to_sections changes from
93 core_ops to current_target after adding the shared libraries.
94 * partial-stab.h (N_EXCL), dbxread.c (add_old_header_file,
95 find_corresponding_bincl_psymtab): Change `repeated header not seen'
96 error to a complaint, simplify complaint.
97 * procfs.c (signalname, errnoname): Make `name' const.
98 * symfile.c (reread_symbols): Use filename from old BFD to
100 * values.c (record_latest_value): Don't record value in the
101 history chain until we are sure there won't be an error.
105 * nlm/Makefile.in: remove MMALLOC, READLINE, TERMCAP, and other
108 * config/i386/gdbserve.mt: New file, defs for i386 nlm stub.
112 * remote.c (fromhex): Make error more explicit.
113 (read_frame): Don't print bad checksum information unless
114 remote_debugging. Don't use repeat count unless it's > 0.
115 * remote-e7000.c (expect): When echoing, ignore multiple newlines.
116 (e7000_insert_breakpoint, e7000_remove_breakpoint, target_ops):
117 Optionally cope with BC style breakpoints.
118 (e7000_command): After command send directly to the E7000 mark
119 registers as changed.
120 (why_stop, e7000_wait: Understand BC style stop condition.
121 * sh-tdep.c (sh_skip_prologue): Understand more complicated
122 sequences. (frame_find_saved_regs): Likewise.
123 * config/h8500/tm-h8500.h (target_write_pc, TARGET_WRITE_PC):
125 * config/i386/xm-go32.h (GDBINIT_FILENAME): Set to gdb.ini.
126 (more work here to come)
127 * config/sh/tm-sh.h (EXTRA_FRAME_INFO): Add f_offset and leaf_function
132 * sparclite/Makefile.in: Assorted stuff needed for eload.
134 * sparclite/eload.c: Merge in command line argument parsing and
135 error message handling improvements orignally made to aload.c.
139 * defs.h (enum misc_command_type, command_control_type): Enums
140 for describing the command and control types.
141 (struct command_line): Add new fields to keep track of the command
142 type and body associated with the command.
143 * top.c: Include value.h. Delete whitespace at the end of lines.
144 (build_command_line, get_command_line): New functions.
145 (execute_control_command, while_command, if_command): Likewise.
146 (realloc_body_list, read_next_line): Likewise.
147 (recurse_read_control_structure): Likewise.
148 (execute_user_command): Call execute_control_command.
149 (read_command_lines): Simplify by calling read_next_line, call
150 read_control_structure for "if" and "while" commands.
151 (free_command_lines): Free new fields in the command structure.
152 (define_command): Reset control_level to zero.
153 (init_main): Install command handlers for "if" and "while" commands.
157 * c-typeprint.c (c_type_print_varspec_prefix,
158 c_type_print_varspec_suffix): Add cases for Fortran type codes.
159 * eval.c (evaluate_subexp): For OP_ARRAY expressions in Fortran,
160 call f77_value_literal_string instead.
161 * f_exp.y: Include <string.h>, move include of parser-defs.h.
162 (parse_number): Translate 'd' floats to 'e' so atof() works.
163 (yylex): Remove unused variables.
164 * f-lang.c: Include <string.h>.
165 (get_bf_for_fcn): Remove unused variable.
166 * f-typeprint.c (f_type_print_varspec_prefix,
167 f_type_print_varspec_suffix): Remove unused
168 variables, add cases to switch statements.
169 (f_type_print_base): Remove unused variables.
170 * f-valprint.c (gdbcore.h, command.h): Include.
171 (f77_get_dynamic_lowerbound, f77_get_dynamic_upperbound):
172 Call read_memory_integer with correct number of arguments.
173 (f77_get_dynamic_upperbound): Call f77_get_dynamic_lowerbound
174 with correct argument type.
175 (f77_print_array): Removed unused array array_size_array.
176 (f_val_print): Don't use a CORE_ADDR as a char *.
177 * valops.c (value_cast): Handle COMPLEX and BOOL types.
178 (value_assign): Handle Fortran literal string and complex values.
179 (f77_cast_into_complex, f77_assign_from_literal_string,
180 f77_assign_from_literal_complex): New functions.
184 * ch-typeprint.c (chill_type_print_base): Make TYPE_CODE_RANGE
189 * i960-tdep.c (signal.h): Don't include.
191 * cxux-nat.c (target_is_m88110): Remove definition.
193 * configure.in (config/nm-empty.h): If cross only, use instead
194 of config/nm-trash.h.
195 * config/nm-trash.h: Remove.
196 * config/nm-empty.h: New file.
197 * config/i386/nm-m3.h: New file, includes config/nm-m3.h.
198 * config/mips/nm-m3.h: New file, includes config/nm-m3.h.
199 * config/m68k/nm-sysv4.h: New file, includes config/nm-sysv4.h.
200 * config/mips/nm-sysv4.h: New file, includes config/nm-sysv4.h.
201 * config/sparc/nm-sysv4.h: New file, includes config/nm-sysv4.h.
205 * configure.in: Don't symlink to gdbtk.tcl if it's already there.
209 * configure.in: No longer look for nm, tm, and xm headers in
210 config/<header>; they are always in config/<cpu>/<header>.
214 * objfiles.c (allocate_objfile): Add the newly-created objfile to
215 the end of the list of objfiles, instead of at the beginning.
217 * xcoffread.c (allocate_include_entry): New function, abstracted
218 from code in record_include_begin.
219 (record_include_begin, record_include_end): Call it.
221 * blockframe.c (reinit_frame_cache): Test inferior_pid instead of
222 target_has_stack to decide whether to create a real stack frame
225 * coffread.c (process_coff_symbol) [CXUX_TARGET]: Ignore vendor
227 * config/m88k/tm-cxux.h (CXUX_TARGET): Define.
229 * h8300-tdep.c: Include "dis-asm.h" instead of <dis-asm.h>.
233 * config/sparc/tm-nbsd.h: Add #defines to map NetBSD struct and
234 field names into what is expected by sparc-nat.c.
238 * c-typeprint.c (c_typedef_print): Add missing Chill support.
242 * rs6000-pinsn.c (print_insn): Use powerpc disassembler when
244 * config/powerpc/tm-ppc-nw.h: Define GDB_TARGET_POWERPC.
246 * config/i386/i386lynx.mh, config/m68k/m68klynx.mh,
247 config/rs6000/rs6000lynx.mh, config/sparc/sparclynx.mh: Enable
250 * nlm/Makefile.in: Get rid of NWSOURCE.
251 * nlm/alpha-io.S (inVti, outVti): Remove extraneous ldha's.
252 * nlm/gdbserve.o: Add dummy __main routine.
253 * nlm/gdbserve.def: Turn on debug.
257 * config/xm-nbsd.h: Don't define SET_STACK_LIMIT_HUGE; it is obsolete.
261 * config/tm-nbsd.h: New file, support for all NetBSD targets.
262 * config/xm-nbsd.h: fix typo.
263 * config/sparc/{nm,tm,xm}-nbsd.h: New files, renamed from
264 {nm,tm,xm}-sparcnbsd.h to conform to prefered file naming
266 * configure.in: (sparc-*-netbsd): use config/sparc/nbsd.m[ht].
270 * remote-udi.c (udi_read_inferior_memory,udi_write_inferior_memory):
271 change typeo in error msg (`inferrior' -> `inferior').
275 * inflow.c (set_sigint_trap, clear_sigint_trap): Check for
276 attach_flag (this check was performed by the callers). Also check
277 inferior_thisrun_terminal.
278 * inftarg.c (child_wait), lynx-nat.c (child_wait),
279 procfs.c (wait_fd), symm-nat.c (child_wait): Don't check
280 attach_flag in deciding whether to call set_sigint_trap and
283 * value.h (struct value): Change literal_data from PTR to char *,
284 since that is the way it is used.
288 * somread.c (som_symfile_read): Force unwinds to be re-read after
289 reading in a new partial symbol table.
293 * config/h8500/tm-8500.h (DONT_USE_REMOTE): Remove definition,
294 an obsolete conditional.
295 * config/pa/tm-hppa.h (BREAKPOINT) [KERNELDEBUG]: Remove use,
296 an obsolete conditional.
297 * config/rs6000/rs6000.mh, config/rs6000/rs6000.mt: Clean up
302 * Makefile.in (ns32k-opcode.h): Remove reference.
303 (ns32k-pinsn.o): Update dependencies.
304 * ns32k-opcode.h: Remove file.
305 * ns32k-pinsn.c (print_insn): Call version in libopcodes, remove
306 all other code in this file.
310 * nlm/configure.in: Stop using cpu.c. Put it in TDEPFILES instead.
311 * config/alpha/gdbserve.mt (TDEPFILES): Remove alpha-patch.o.
313 * nlm/Makefile.in: Add rule for .S.o.
314 * nlm/aio.h: Protect from multiple inclusions.
315 * nlm/alpha-io.S: Remove everything we don't need.
316 * nlm/{alpha-patch.c, alpha-patch.h, alpha-uart.c, alpha-uart.h}:
317 Remove, no longer needed.
318 * nlm/alpha.c: Merge in lots of stuff from previous files.
319 * nlm/alpha.h: Don't #include alpha-patch.h. Make
320 breakpoint_insn extern.
321 * Move stuff from alpha-patch.h into here.
323 * config/alpha/gdbserve.mt (TDEPFILES): Get rid of alpha-uart.o.
327 * annotate.c (annotate_starting): Flush output.
331 * symfile.c (symbol_file_add): Move reinit_frame_cache call to
332 the callers of symbol_file_add. Gets rid of heuristic fence-post
333 warnings on mips and alpha targets when the PC resides in a shared
334 library which is not yet read in.
335 * coff-solib.c (coff_solib_add), cxux-nat.c (add_shared_symbol_files),
336 irix5-nat.c (solib_add), osfsolib.c (solib_add),
337 remote-vx.c (vx_open), solib.c (solib_add):
338 Add call to reinit_frame_cache after all shared libraries are read in.
339 * remote-udi.c (udi_load), remote-vx.c (vx_load_command),
340 symfile.c (symbol_file_command, add_symbol_file_command):
341 Add call to reinit_frame_cache after symbol_file_add.
345 * config/xm-nbsd.h: New file, support for all NetBSD ports.
346 * config/sparc/{nm-sparcnbsd.h,tm-sparcnbsd.h,xm-sparcnbsd.h,
347 sparcnbsd.mh,sparcnbsd.mt}: New files, support for NetBSD/sparc.
348 * configure.in: Add sparc-*-netbsd target.
352 * remote-vx.c (vx_attach): Interpret the command argument as an
357 * configure.in: Change i[34]86 to i[345]86.
358 * nlm/configure.in: Likewise.
359 * gdbserver/configure.in: Likewise.
363 * configure.in (i386-*-netware): Automatically configure nlm
368 * nlm/gdbserve.c: conditionalize header file inclusion for either
369 NetWare 4.0 or PIN targets.
370 * nlm/i386.c: include appropriate header files.
371 * nlm/prelude.c: define TERMINATE_BY_UNLOAD for NetWare 4.0
376 * nlm/ppc.c (set_step_traps clear_step_traps): Cleanups.
377 * nlm/gdbserve.def: Autoload clib.
381 * breakpoint.c (condition_command): Call breakpoints_changed.
383 * gdbtypes.h: Declare f77_create_literal_string_type and
384 f77_create_literal_complex_type.
385 * valops.c (f77_value_literal_string, f77_value_substring,
386 f77_value_literal_complex): Use xmalloc not malloc.
387 * valops.c (f77_value_literal_string, f77_value_substring):
388 Make addr char * not CORE_ADDR.
389 * value.h (struct value): Add new field literal_data of aligner union.
390 (VALUE_LITERAL_DATA): Use it.
391 * f-lang.h: Declare find_common_for_function.
392 * value.h, valops.c: Split VALUE_SUBSTRING_START into memaddr and
393 myaddr fields of a union. Don't overload it with the frame field
394 (not sure this is necessary; I'm not sure what lval_* codes
395 VALUE_SUBSTRING_* can be used with).
399 * config/a29k/{a29k-kern.mt,a29k-udi.mt,a29k.mt,ultra3.mh,
400 ultra3.mt}: Clean up comments, remove no-longer-used definitions.
402 * rs6000-nat.c: Include libbfd.h again, needed until reference
403 to bfd_cache_lookup is cleaned out.
405 * config/i386/linux.mh (XM_CLIBS): Add -lm.
409 Work to reduce the interrupts-off duration when running in DOS.
410 * ser-go32.c: (dos_async_ready): See if anything is in the buffer.
411 (dos_async_rx): rewrite to unpack as many characters from the
412 asynctsr as possible into a local buffer.
416 Initial Fortran language support, adapted from work by Farooq Butt
418 * Makefile.in: Add Fortran-related files and dependencies.
419 * defs.h (language_fortran): New language enum.
420 * language.h (_LANG_fortran): Define.
421 (MAX_FORTRAN_DIMS): Define.
422 * expression.h: Reformat to standard.
423 (MULTI_F77_SUBSCRIPT, OP_F77_UNDETERMINED_ARGLIST,
424 OP_F77_LITERAL_COMPLEX, OP_F77_SUBSTR): New expression opcodes.
425 * gdbtypes.h (TYPE_CODE_COMPLEX, TYPE_CODE_LITERAL_COMPLEX,
426 TYPE_CODE_LITERAL_STRING): New type codes.
427 (type): New fields upper_bound_type and lower_bound_type.
428 (TYPE_ARRAY_UPPER_BOUND_TYPE, TYPE_ARRAY_LOWER_BOUND_TYPE,
429 TYPE_ARRAY_UPPER_BOUND_VALUE, TYPE_ARRAY_LOWER_BOUND_VALUE): New
431 (builtin_type_f_character, etc): Declare.
432 * value.h (VALUE_LITERAL_DATA, VALUE_SUBSTRING_START): Define.
433 * f-exp.y: New file, Fortran expression grammar.
434 * f-lang.c: New file, Fortran language support functions.
435 * f-lang.h: New file, Fortran language support declarations.
436 * f-typeprint.c: New file, Fortran type printing.
437 * f-valprint.c: New file, Fortran value printing.
438 * eval.c (evaluate_subexp): Add code for new expression opcodes,
439 fix wording of error message.
440 * gdbtypes.c (f77_create_literal_complex_type,
441 f77_create_literal_string_type): New functions.
442 * language.c (set_language_command): Add Fortran info.
443 (calc_f77_array_dims): New function.
444 * parse.c (length_of_subexp, prefixify_subexp): Add cases for new
446 * symfile.c (deduce_language_from_filename): Recognize .f and .F
447 as Fortran source files.
448 * valops.c (f77_value_literal_string, f77_value_substring,
449 f77_value_literal_complex): New functions.
453 * c-typeprint.c (c_print_type): Assume demangled arguments
454 if a '(' is found in varstring, looking for ')' at the end of
455 varstring did fail with demangled const member functions, which
456 have a trailing `const'.
457 * remote.c (get_offsets, putpkt): Change to `char' buffers,
458 to avoid errors when compiling with DEC c89.
459 (remote_wait): Cast to `char *' before passing buffer to
460 fputs_filtered, to avoid errors when compiling with DEC c89.
461 (remote_wait): Do not return inferior_pid by default, this
462 statement is never reached, which causes warnings from some
464 * stabsread.c (scan_file_globals): Ignore static minimal symbols.
465 * symfile.c (load_command): If called with no argument, try
466 to get the filename from the executable file.
467 (generic_load): Remove check for NULL filename, it is done
472 * hppa-tdep.c (skip_trampoline_code): Revert incorrect change
473 from June 2, 1994 (what was I thinking?!?). Fix it right this
478 * nlm/i386.c, nlm/i386.h: New files that contain i386 specific code.
482 * README: Grammar improvements, clarifications, updates.
486 * Makefile.in (TARGET_FLAGS_TO_PASS): Pass down LD_FOR_TARGET and
487 NLMCONV_FOR_TARGET. (SUBDIRS): Add nlm target.
488 * configure.in (powerpc-*-netware*): Automatically configure nlm
490 * nlm/Makefile.in: Add {CC NLMCONV LD}_FOR_TARGET. Remove alpha
491 specific stuff. Make things more configurable.
492 * nlm/configure.in: Add powerpc-*-netware* target. Use
493 gdbserve.mt/cpu.c/cpu.h for target stuff. Get rid of tm/xm/nm.h
495 * nlm/gdbserve.c: Move Alpha specific stuff into other files.
496 Remove lots of architecture-specific stuff.
497 * nlm/gdbserve.def: Add new imports.
498 * nlm/ppc.c, nlm/ppc.h: New files that contain PowerPC specific code.
499 * nlm/prelude.c: Don't include libhooks.h, get rid of call to
501 * nlm/prelude.o: What was this doing here?
502 * config/alpha/gdbserve.mt: Defs for alpha nlm stub.
503 * config/powerpc/gdbserve.mt: Defs for PowerPC nlm stub.
504 * config/powerpc/ppc-nw.mt: Defs for PowerPC target for GDB.
505 * config/powerpc/tm-ppc-nw.h: Ditto.
507 * nlmstub.def: New file, contains imports for 386 nlm stub.
511 * remote-pa.c: New file for HPPA embedded support. Currently it's
513 * config/pa/hppabsd.mt,hppahpux.mt,hppaosf.mt: User remote-pa.c.
517 * config/m68k/tm-delta68.h (EXTRACT_RETURN_VALUE,
518 STORE_RETURN_VALUE): Define to use %a0 for pointers.
522 * remote-mips.c: Remove unused declaration of mips_load.
526 * coffread.c: General cleanup, and support for section offsets.
527 (time.h, sys/types.h, libbfd.h): Don't include.
528 (cur_src_start_addr, cur_src_end_addr): Rename to
529 current_source_start_addr, current_source_end_addr.
530 (nlist_stream_global): Remove.
531 (nlist_bfd_global): New global variable.
532 (coff_symfile_read): Remove code that gets and uses fileno()
534 (read_coff_symtab, enter_linenos, process_coff_symbol): Add
535 section_offsets parameter, add text/data section offset to
536 appropriate symbols' values.
537 (read_one_sym): Use bfd_read instead of fread.
538 (init_stringtab, init_lineno): Change first parameter to a bfd,
539 use bfd routines instead of raw I/O.
543 * symtab.c (decode_line_1): If funfirstline and we get a
544 non-LOC_BLOCK symbol (e.g. variable or type), then error().
546 * Makefile.in (TARFILES, NONSRC, SFILES_STAND, SFILES_KGDB):
548 (TAGFILES_NO_SRCDIR): Remove ALLPARAM.
549 (HFILES_NO_SRCDIR): Remove all files in config sub-directory.
550 (TAGS): Also pass result of find on config sub-directory to etags.
551 (ALLPARAM): Remove; now unused.
555 * Makefile.in (VERSION): Bump to 4.13.1
556 * NEWS, README: Update to match gdb 4.13 release version.
561 * cxux-nat.c: Remove dangling #else block.
562 (m88k_harris_core_register_addr): New function.
564 * environ.c (init_environ): If no environment, do nothing.
568 * remote.c (remote_wait): Return inferior_pid instead of 0 for
573 * sparclite/aload.c (sys_error, error): Use vfprintf for variable
578 * defs.h (concat, basename, buildargv, freeargv, strerrno, strsigno,
579 errno_max, signo_max, strtoerrno, strtosigno): Delete.
580 Include "libiberty.h" instead.
584 * i386v-nat.c (i386_insert_nonaligned_watchpoint):
585 add additional argument specifying raw address to permit
586 proper release of debug registers.
587 (i386_insert_watchpoint, i386_insert_aligned_watchpoint):
592 * defs.h, top.c: Use `extern' in declarations of GUI hooks, and
593 define them in top.c. Add comments to the hooks.
597 * remote-sim.c (gdbsim_ops): Set `to_insert_breakpoint' and
598 `to_remove_breakpoint' fields.
602 * infcmd.c (run_command): Remove comment suggesting using
603 target_has_execution instead of inferior_pid.
607 * remote-mips.c (mips_open): add code to handle baud rate.
611 * infrun.c (wait_for_inferior): Call target_resume() upon
612 detection of new processes.
614 * procfs.c (create_procinfo): Return pointer to new procinfo
616 * (do_detach): Spacing & formatting cleanup.
617 * (procfs_wait): Move wait_again label to ensure that we really
618 wait again. On exit from fork, release new child from gdbs'
620 * (procfs_set_sproc_trap): Enable trapping of fork and vfork.
624 * i386-nlmstub.c (handle_exception): Wait until the thread has
625 been started before killing the NLM by pointing the PC at
630 * config/mips/tm-irix5.h (IN_SIGTRAMP): Redefine for Irix 5,
631 Irix 5 has a standard _sigtramp signal handler.
632 * irix5-nat.c (solib_add): Get rid of sigtramp_address handling,
633 it is not needed for a standard _sigtramp signal handler.
634 Add shared library sections to the section table of the target
635 before adding the symbols.
636 * mips-tdep.c (mips_skip_prologue): Do not skip load immediate
637 instructions that do not prepare a stack adjustment.
638 * regex.c (SIGN_EXTEND_CHAR): Update to emacs-19.25 definition,
639 which does the right thing on machines where `char' is unsigned.
643 * remote.c (remote_open): Move setting of inferior_pid prior to
644 call to remote_start_remote. Also use unique value for pid to
645 avoid confusion with read_register_pid & friends.
646 * (remote_wait): Return inferior_pid instead of 0 in all cases.
650 * dwarfread.c (bfd.h): Don't include.
654 * i386-nlmstub.c (handle_exception): Point the PC at _exit() to
655 kill the program being debugged. KillMe(), the undocumented
656 call intended for this purpose, causes the server to hang.
660 * remote.c (read_frame): Calculate run length encoded checksum
662 * config/sh/stub.c: New file.
666 * target.c (find_default_run_target): Make sure to_can_run is set
671 * TODO: Remove note about fast watchpoints and remove obsolete
676 * config/i386/xm-i386v4.h, config/m68k/xm-m68kv4.h,
677 config/sparc/xm-sun4sol2.h (NORETURN): Don't define.
678 * config/m88k/tm-cxux.h (ARCH_NUM_REGS): Undefine before defining.
682 * target.c (add_target): Don't call clean_target on target
684 * (unpush_target): Test for to_close being set before calling.
685 * (target_xfer_memory, target_info): Check for to_has_memory
686 before playing with memory.
688 * remote.c (remote_open): Set inferior_pid to make kill command
690 * inflow.c (kill_command): Revert change of Aug 2. Use
691 inferior_pid to determine whether to print out "The program is not
696 * config/i386/i386m3.mh (NAT_CLIBS): Add -lmachid and -lnetname.
697 * m3-nat.c, config/nm-m3.h: #if 0 REQUEST_QUIT stuff.
698 * m3-nat.c: Pass argument to return_to_top_level.
699 Declare m3_kill_inferior before use.
700 (port_chain_insert): In "can't happen" case, abort rather than
701 setting `mid' to large decimal constant (which gcc warns about).
702 (get_thread_name): Use cast to convert const char * to char *.
703 (add_mach_specific_commands): #if 0 "thread break" command.
704 (m3_trace_him): Call push_target.
705 (mach_really_wait): New argument pid; remove unused
707 (intercept_exec_calls): Call target_terminal_init and
708 target_terminal_inferior once the child execs.
709 * infrun.c (proceed): Pass argument to PREPARE_TO_PROCEED.
713 * procfs.c (procfs_mourn_inferior): don't dereference the
714 procinfo pointer after it has been freed.
718 * breakpoint.c (breakpoint_1): Improve pluralization in display
719 of breakpoint hit counts.
721 * language.h (struct language_defn): Remove unused field
723 (longest_float): Remove, no longer used.
724 * language.c (unknown_language_defn, auto_language_defn,
725 local_language_defn): Remove init of la_longest_float field.
726 * c-lang.c (c_language_defn, cplus_language_defn,
727 asm_language_defn): Ditto.
728 * ch-lang.c (chill_language_defn): Ditto.
729 * m2-lang.c (m2_language_defn): Ditto.
733 * defs.h (bfd_read, bfd_seek): Remove declarations.
734 * os9kread.c, rs6000-nat.c (libbfd.h): Don't include.
738 * inflow.c (kill_command): Fix a bug which prevented target
739 programs to be killed.
743 * defs.h: Change two-line declarations to one-line form.
744 (NORETURN): Define as "volatile" only for older GCCs.
745 (ATTR_NORETURN): Define for newer GCCs.
746 * procfs.c (proc_init_failed): Add ATTR_NORETURN to declaration.
750 * breakpoint.c (mention), main.c (fputs_unfiltered): Add comments.
751 * breakpoint.c (delete_breakpoint, enable_breakpoint,
752 disable_breakpoint): Don't call breakpoints_changed; it is now
753 called via the *_breakpoint_hook functions.
754 * annotate.c (_initialize_annotate, breakpoint_changed): New functions.
758 * stabsread.c (read_type): Fix a bug in enum size calculation.
762 * hppa-tdep.c (compare_unwind_entries): Add "const" to both
763 argument types to shut up GCC.
765 * hppa-tdep.c (saved_pc_after_call): If the saved PC is in a
766 linker stub, then return the address the stub will return to.
767 (frame_saved_pc): Correctly restart the search for the saved
768 pc when a linker stub is encountered.
770 * hppa-tdep.c (inst_saves_gr): Handle 16 and 8 bit instruction
771 register stores emitted by the version 9 HP compilers.
772 (inst_saves_fr): Relax test for a specific base register (%r1);
773 this avoids losing with the version 9 HP compilers.
774 (skip_prologue): Try to skip argument stores emitted by the HP
775 compilers. It's not perfect, but it's better than before.
779 * findvar.c (write_pc write_pc_pid): Remove casts to long when
780 calling write_register_pid.
781 * (write_register_pid): Add prototype.
785 * remote.c (read_frame): Split readchar/checksum calculation into
786 two parts since evaluation order is undefined.
791 * Makefile.in (coredep.o): Add inferior.h as dependency.
792 * inflow.c: Add F_SETOWN to list of defines to check
793 around code that uses F_SETOWN.
797 * Makefile.in (CC_FOR_TARGET, CXX_FOR_TARGET): If using newlib,
798 set the -L and -B directory prefixes so we can link with it.
802 * Makefile.in (INSTALLED_LIBS, CLIBS, DEPFILES): Add support for
803 --enable-xxx configure option by adding ENABLE_{CLIBS DEPFILES}
806 * General hackery to support alternate user-interface.
807 * breakpoint.c (mention, delete_breakpoint, enable_breakpoint,
808 disable_breakpoint): Call hooks for alternate user-interface.
809 * defs.h: Add declarations for alternate user-interface hooks.
810 * main.c (main): Add --nw (and --nowindows) options to disable
812 * (near call to command_loop): Call command_loop_hook if set.
813 * (fputs_unfiltered): Call fputs_unfiltered_hook if set.
814 * stack.c: Call print_frame_info_listing_hook if set.
815 * top.c (gdb_init): Initialize targets.c and utils.c prior to
816 other files to make sure that calls to error and warning will
817 work. Call init_ui_hook after everything else.
818 * utils.c (query): Call query_hook if set.
819 * (gdb_flush): Call flush_hook if set.
820 * Change _initialize_utils to initialize_utils cuz we don't use
821 automatic initialization of utils.c anymore.
823 * Support for TK GUI.
824 * Makefile.in: Add rule for gdbtk.o.
825 * configure.in: Add support for --enable-gdbtk.
826 * gdbtk.c: New file. Contains support routines for TK interface.
827 * gdbtk.tcl: New file. Implements GUI policy.
829 * remote.c: Get rid of #ifdef DONT_USE_REMOTE. It's no longer
834 * Makefile.in (CC_FOR_TARGET, CXX_FOR_TARGET): Use newlib if it is
835 there and we are using the gcc from the tree.
836 (LD_FOR_TARGET): Look for ld in ../ld/ld.new.
840 * Makefile.in (annotate.o): Add dependencies.
844 * sparclite/aload.c: Added new -q (quiet) option.
845 return 0 exit status if file was successfully downloaded.
847 * nlm/gdbserve.c: merge in command line argument parsing changes
848 and bug fixes made to i386-nlmstub.c.
850 * i386-nlmstub.c: The returnLength field must be initialized
851 before portConfig is passed to AIOGetPortConfiguration.
852 Compare command line arguments with strnicmp(); args are
853 case insensitive on netware.
857 * Makefile.in (DISTSTUFF): Add definition.
858 (diststuff): Add for new distribution support.
859 (gdb.tar.Z, make-proto-gdb.dir, setup-to-dist,
860 gdb-$(VERSION).tar.Z, make-proto-gdb-1, make-proto-testsuite.dir):
861 Remove old distribution building rules, now uses standard
862 distribution support in parent directory Makefile.in.
866 * target.c (push_target): Cast result from xmalloc.
868 Tue Jul 26 18:20:46 1994 Paul Flinders (ptf@smee)
870 * elfread.c (elf_symtab_read): Discard compiler labels generated
871 by the Solaris 2.1/Intel SunPro compiler.
875 * target.c (nomemory): Fix prototype and routine to take correct
880 * Makefile.in (clean): Remove libgdb-files.
884 * coredep.c: Include inferior.h.
888 * i386-nlmstub.c: Add support for NODE, PORT and BAUD command
893 * symfile.c (deduce_language_from_filename): Recognize .S as asm,
894 .cp as C++, alphabetize better.
896 * breakpoint.c (ignore, condition): Move usage note into body of
897 help text, so first line can be one-line summary.
901 * target.c (unpush_target): Fix handling of removal of top target.
905 * Makefile.in: Add stuff to build nlmstub.
906 * Add rule for annotate.o to keep Sun make happy.
907 * configure.in: Add config for powerpc/Netware.
909 * partial-stab.h (near N_SO): Don't call START_PSYMTAB with null
910 filename. This speeds up handling of trailing N_SO stabs (they
911 mark the end of a .o file).
913 * target.c, target.h: Change the way pushing and popping of
914 targets work to support target overlays and inheritance.
915 * corelow.c, hppa-tdep.c, inflow.c, remote-nindy.c, utils.c:
916 Fixup references to current_target, due to previous changes.
918 * config/i386/tm-i386nw.h: Enable longjmp support. More work is
919 needed to get the address of longjmp out of the target.
923 * main.c: Include <ctype.h>.
927 * remote-mips.c (mips_readchar): Fix a bug in checking <IDT>
932 * solib.c (look_for_base): Don't deref exec_bfd if NULL.
936 * Makefile.in (VERSION): Bump to 4.12.4.
941 * configure.in (m88*-harris-cxux*): New configuration.
942 * cxux-nat.c, config/m88k/cxux.mh, config/m88k/cxux.mt,
943 config/m88k/xm-cxux.h, config/m88k/tm-cxux.h, config/m88k/nm-cxux.h:
945 * config/m88k/tm-m88k.h: Add comment about Harris OS.
946 (TARGET_WRITE_PC): Pass pid through to register writers.
948 * configure.in (m68*): Put vendor-only-specified host configs
949 after vendor-and-os-specified configs.
950 (m68*-atari-sysv4*, m68*-cbm-sysv4*): Replace with m68*-*-sysv4.
952 * config/m88k/delta88.mh (MUNCH_DEFINE): Remove.
953 * config/m88k/delta88.mt, config/m88k/delta88v4.mh: Format
958 * elfread.c (elf_symtab_read): Handle error return from
959 bfd_get_dynamic_symtab_upper_bound gracefully.
963 * inferior.h (ARCH_NUM_REGS): New macro, actual number of
964 registers in use by the inferior.
965 * coredep.c (fetch_core_registers, register_addr): Use it.
966 * findvar.c (registers_changed, registers_fetched,
967 read_register_bytes): Ditto.
968 * infcmd.c (do_registers_info, registers_info): Ditto.
969 * infptrace.c (fetch_inferior_registers,
970 store_inferior_registers): Ditto.
971 * stack.c (frame_info): Ditto.
973 * coredep.c (CORE_REGISTER_ADDR): New macro.
974 (fetch_core_registers): Use it.
976 * breakpoint.c (ignore, condition): Add usage notes to help strings.
977 * symfile.c (add-symbol-file): Add usage note to help string.
978 (add_shared_symbol_files_command): New command.
981 * inferior.h (read_pc_pid): Declare.
982 * breakpoint.c (watchpoint_check): Cache breakpoint in local
983 variable b, remove unused variable other_type_used.
984 * main.c (inferior.h, call-cmds.h): Include.
986 * remote.c (remote_wait): Return 0 by default.
990 Stop printing at null char option, from Oliver Meyer
992 * valprint.h, valprint.c (stop_print_at_null): New global.
993 * valprint.c (_initialize_valprint): New print set subcommand
995 * c-valprint.c (c_val_print): If stop_print_at_null is on, and
996 printing a char array, adjust the number of chars to print.
1001 * m88k-tdep.c (examine_prologue): Modified to handle prologues for
1002 pic code in addition to prologues where an instruction from the
1003 prologue gets moved into the delay slot of a branch instruction
1004 immediately following the prologue. A table of potential prologue
1005 instructions (prologue_insn_tbl) is now used for picking apart a
1007 (frame_find_saved_regs): Changed the way in which limit gets set
1008 so that the delay slot of branch instructions immediately
1009 following the prologue gets examined.
1010 (pushed_size, store_parm_word, store_parm, push_parameters,
1011 collect_returned_value): Deleted.
1015 * infrun.c (wait_for_inferior): Handle stepping into leaf
1016 functions whose prologue consists of gp loading code only.
1020 * dbxread.c: Don't include libbfd.h.
1021 * dwarfread.c, elfread.c somread.c: Don't include libbfd.h,
1022 <time.h>, or <sys/types.h>.
1023 * elfread.c (elf_symfile_read): Use only standard BFD functions to
1024 collect information about the stab and stab string sections.
1028 * stabsread.c (read_huge_number): handle large unsigned number
1029 for stabs generated by os9k C compiler.
1034 * breakpoint.h (hit_count): New breakpoint field.
1035 * breakpoint.c (show_breakpoint_hit_counts): New variable.
1036 (clear_breakpoint_hit_counts): New function.
1037 (bpstat_stop_status): Increment the hit count.
1038 (breakpoint_1): Display the hit count.
1039 * infcmd.c (run_command): Reset breakpoint hit counts.
1040 * target.c (generic_mourn_inferior): Don't clear ignore counts if
1041 displaying hit counts.
1045 * elfread.c (elf_symfile_read): Unconditionally add dynamic
1046 symbols for all symbol files. Makes skipping over the
1047 trampoline code work when stepping from a function in a shared
1048 library into a function in a different shared library for Irix 5.
1049 Other ELF targets do not have enough information in their
1050 dynamic symbol tables to make this work.
1051 (elf_symtab_read): Relocate mst_solib_trampoline address.
1056 * configure.in (m68*-atari-sysv4*): New configuration.
1057 (m68*-cbm-sysv4*): Use m68kv4 instead of amix.
1058 * m68k-tdep.c (R_PS): Define as R_SR if necessary.
1059 * config/m68k/m68kv4.mh, config/m68k/m68kv4.mt,
1060 config/m68k/tm-m68kv4.h, config/m68k/xm-m68kv4.h: New files.
1061 * config/m68k/amix.mh, config/m68k/amix.mt,
1062 config/m68k/tm-amix.h, config/m68k/xm-amix.h: Removed, superseded
1067 * symtab.c (find_function_start_sal): New function to find
1068 the start of a function from a function symbol.
1069 (decode_line_1, decode_line_2): Use it instead of open coded
1070 partial copies of the code.
1071 (list_symbols): Quote symbol name before passing it to
1072 break_command to enable proper handling of mangled symbols.
1076 * ch-exp.y (match_simple_name_string): Don't lower-case here.
1077 * ch-exp.y (yylex): First try name lookup using exact name
1078 typed by user; if that fails, try lower-cased name.
1082 * dbxread.c, elfread.c, mipsread.c, nlmread.c, os9kread.c:
1083 Move "no debugging symbols found" test to symfile.c.
1084 * symfile.c (syms_from_objfile, reread_symbols): Add
1085 "no debugging symbols found" test.
1086 * coffread.c (init_stringtab): Handle stripped files with a
1087 stringtab offset of zero gracefully.
1088 * osfsolib.c (solib_create_inferior_hook): Use DYNAMIC flag from
1089 BFD instead of stop_pc heuristic to determine if it is a dynamically
1091 * procfs.c (wait_fd): Handle ENOENT error return from PIOCWSTOP
1092 ioctl, it indicates that the process has exited.
1096 * hppa-tdep.c (read_unwind_info): ELF unwind information is in the
1097 .PARISC.unwind section now.
1101 * breakpoint.c (mention): Always show breakpoint address if no
1106 * solib.c (bfd_lookup_symbol, look_for_base): Reinstate to reenable
1107 handling of shared libraries for non-ELF executables, but only if
1108 HANDLE_SVR4_EXEC_EMULATORS is defined.
1109 (locate_base): Try to find debug_base in the dynamic linker
1110 for non-ELF executables if HANDLE_SVR4_EXEC_EMULATORS is defined.
1111 * config/sparc/tm-sun4sol2.h (HANDLE_SVR4_EXEC_EMULATORS):
1112 Define to enable handling of shared libraries for a.out executables,
1113 run under Solaris BCP.
1117 * infrun.c (wait_for_inferior): Print "Program exited normally"
1118 regardless of batch_mode.
1119 * defs.h, top.c (batch_mode): Removed.
1123 * Makefile.in (dcache_h): Remove redundant definition.
1124 (init.c): Add a comment.
1125 (top.c): Remove explicit compile action.
1126 * breakpoint.c (mention): Share code indicating location of
1127 break/watchpoints, don't print address if addressprint is off.
1128 * breakpoint.c, c-typeprint.c, c-valprint.c, energize.c, symtab.h
1129 (demangle): Remove redundant declarations.
1130 * eval.c: Remove redundant function declarations.
1131 * objfiles.h: Cosmetic and grammatical improvements.
1132 * TODO: Various updates.
1134 * remote-mips.c: Replace all \r chars with \015.
1135 (mips_receive_header): Display control characters readably.
1136 (mips_xfer_memory): Add a simple progress display.
1140 * remote-e7000.c (e7000_open): Don't try a tcp open if we're
1142 * remote-hms.c (flush): New function.
1143 (expect): Get edge case right.
1144 (hms_read_inferior_memory): Be more tolerant of line noise.
1148 * configure.in: Use i386m3.mh and i386m3.mt as names of host and
1149 target files, not non-existent mach3.mh and mach3.mt.
1153 * dbxread.c (dbx_symfile_read): Unconditionally add dynamic
1154 symbols for all symbol files. Makes skipping over the
1155 trampoline code work when stepping from a function in a shared
1156 library into a function in a different shared library.
1157 (read_dbx_dynamic_symtab): Relocate mst_solib_trampoline address.
1161 * dbxread.c, partial-stab.h (near N_SO): SO stabs with blank
1162 names mean end of .o file.
1163 * infrun.c (wait_for_inferior): Clean up multi-thread logic near
1164 top of routine. Handle new thread notification cleanly.
1165 * lynx-nat.c (child_wait): General cleanups, handle new LynxOS
1166 thread notification scheme.
1167 * (child_resume): General cleanups, handle resumption of all
1172 * ser-go32.c: Rewrite to run under windows.
1173 * ser-e7kpc.c: New file to support the E7000 with the PC ISA
1175 * serial.c (serial_open): Notice device "pc".
1176 * remote-e7000.c: Fix copyright date.
1177 (expect): Compare \n and \r the same.
1178 (e7000_open): Allow pc as a serial port
1179 * sh/sh.mt: Add ser-e7kpc.
1180 * h8300/h8300hms.mt: Add ser-e7kpc.
1181 * main.c (proc_wait): Don't wait if using go32.
1185 * somread.c: Simplify by using stabsect_build_psymtabs.
1186 * dbxread.c (stabsect_build_psymtabs): New argument "text_name"
1187 corresponding to the name of the text section. All references
1189 (somstab_build_psymtabs): Delete function, no longer needed.
1193 * somread.c: Renamed from paread.c. Changed function names and
1194 comments to reflect that this file deals with SOM (an object file
1195 format), rather than the PA (a cpu).
1196 (Makefile.in): Chaned appropriately.
1197 (config/pa/hppabsd.mh, config/pa/hppahpux.mh): Likewise.
1198 * dbxread.c (somstab_build_psymtabs): Renamed from
1199 pastab_build_psymtabs.
1203 * core-sol2.c: New file to handle ELF and BCP core file flavours.
1204 * config/sparc/sun4sol2.mh (NATDEPFILES): Use it instead of
1206 * Makefile.in: Updated for core-sol2.c.
1207 * README: Add notes about SPARCworks cc under Solaris 2.x,
1209 * config/mips/xm-makeva.h: Removed, no longer necessary.
1210 * Makefile.in, config/mips/xm-irix3.h, config/mips/xm-irix5.h,
1211 config/mips/xm-mips.h, config/mips/xm-news-mips.h,
1212 config/mips/xm-riscos.h: Remove references to xm-makeva.h
1216 * gdba.el: Put program input and output in a separate buffer.
1220 * energize-patches, main.c (main), top.c (gdb_init, pwd_command),
1221 top.h: Change all occurances of dirbuf to gdb_dirbuf. Collides
1222 with global variable of same name in libnsl.so on UnixWare.
1226 * symtab.c (decode_line_1): fix a bug in dealing with '<>'
1227 embedded in template name.
1231 * config/i386/nm-linux.h: change calling convention of
1232 TARGET_CAN_USE_HARDWARE_WATCHPOINT() and
1233 target_insert_watchpoint() and
1234 target_remove_watchpoint().
1236 * config/mips/tm-mips64.h: define FORCE_LONG_LONG to force LONGEST
1237 to be long long in gdb.
1238 * config/mips/tm-bigmips.h: ditto.
1242 * c-lang.c (asm_language_defn): New definitions for language_asm,
1243 mostly copied from c_language_defn, to avoid warnings when
1244 switching between c and asm stack frames.
1248 * mdebugread.c (parse_symbol): Don't call ecoff_swap_tir_in or
1249 ecoff_swap_rndx_in directly; use the debug_swap pointer instead.
1250 (upgrade_type, handle_psymbol_enumerators): Likewise.
1251 (has_opaque_xref, cross_ref): Likewise.
1252 (elfmdebug_build_psymtabs): Call swap->read_debug_info to read
1253 debugging information, rather than doing it here.
1254 * mipsread.c (mipscoff_symfile_read): Call read_debug_info entry
1255 point in ecoff_debug_swap backend structure, rather than calling
1256 ecoff_slurp_symbolic_info directly.
1260 * breakpoint.c: Include annotate.h. Call annotate_field rather
1261 than printing annotation directly.
1263 * main.c: Include string.h.
1267 * fork-child.c (startup_inferior) [STARTUP_INFERIOR]: If defined,
1268 call it instead of doing normal loop.
1269 * infcmd.c (attach_command): Don't call wait_for_inferior if
1271 * infrun.c (proceed) [PREPARE_TO_PROCEED]: If defined, call
1272 hook that can decide whether to step over the next breakpoint.
1273 * utils.c (wrap_here): Abort if wrap_buffer not allocated.
1274 (request_quit) [REQUEST_QUIT]: If defined, call it instead of
1277 * configure.in: Improve sorting/formatting of hosts and targets.
1278 (i[34]86-*-mach3*, i[34]86-*-osf1mk*, mips-*-mach3*,
1279 m88*-*-mach3*, ns32k-*-mach3*): Recognize.
1280 * Makefile.in (stop-gdb): New target.
1281 * stop-gdb.c: New file, utility to get attention of waiting GDBs
1286 * top.c (gdb_init): Init current_directory in gdb_init. Probably
1287 the identical initialization can be deleted from main.c, but i
1288 haven't done so just in case.
1292 * gdba.el: Added menu windows and slightly improved window
1293 handling to gdba.el. Fixed numerous minor bugs that were causing
1294 emacs and gdb to fall out of sync.
1298 * breakpoint.c: annotate changes lost at merge, put back in.
1302 * config/i386/i386sco.mh, i386sco4.mh (XDEPFILES): Remove
1307 * config/m68k/dpx2.mh (NATDEPFILES): Remove duplicate inclusion
1309 * config/m68k/tm-dpx2.h (CANNOT_STORE_REGISTER): Define to inhibit
1310 writing of floating registers, the dpx2 kernel disallows it.
1311 * irix5-nat.c (LM_ADDR): The loaded address of the shared library
1312 is contained in o_praw.
1313 * irix5-nat.c (solib_map_sections): Adjust sections by the
1314 difference between the loaded address and the prelinked address.
1315 * irix5-nat.c (solib_address): Use LM_ADDR for the loaded start
1317 * mdebugread.c (parse_symbol): Do not relocate stEnd/scText
1318 symbols, their value is absolute.
1319 * mdebugread.c (parse_partial_symbols): Handle Irix 5.2 shared
1320 libraries fh->adr fields of zero. Relocate minimal symbol values
1321 upon readin. Relocate non-stabs symbols upon readin.
1322 * mdebugread.c (psymtab_to_symtab_1): Use pst->textlow for the
1323 start address of the outermost block.
1324 * mdebugread.c (parse_lines, parse_procedure): Pass in pst
1325 instead of section_offsets and use relocated pst->textlow for
1326 line number and procedure address relocations.
1329 * mdebugread.c (parse_symbol, parse_partial_symbols, cross_ref):
1330 Handle SGI Irix5 stIndirect symbol type.
1334 * breakpoint.c: fix a syntax error native cc does not like.
1336 * Makefile.in: change sparclite-tdep.c to sparcl-tdep.c.
1337 * sparclite/Makefile.in: ditto.
1338 * sparcl-tdpe.c: change file name because first 8 chars has to be
1340 * sparcl-stub.c: ditto.
1342 * .Sanitize: add sparclite-stub.c sparclite-tdep.c to keep.
1344 * sparclite/Makefile.in: fix INCLUDE_CFLAGS to have {srcdir}/../config.
1348 * hppa-tdep.c (target_read_pc, target_write_pc): Accept (and
1349 ignore) a PID argument.
1350 (hppa_pop_frame): Pass a PID to target_write_pc.
1351 * config/pa/tm-hppa.h (TARGET_READ_PC, TARGET_WRITE_PC): Accept
1352 and pass through a PID argument.
1353 (target_read_pc, target_write_pc): Update prototypes.
1357 * Makefile.in: add new file sparclite-tdep.c.
1358 * sparclite/Makefile.in: add new file sparclite-stub.c.
1359 * sparclite/hw_breakpoint.note: note for SPARClite hardware breapoint
1361 * config/sparc/sparclite.mt: add sparclite-tdep.o.
1362 * config/sparc/tm-sparclite.h: add hardware breakpoints support
1364 * sparclite-tdep.c: new file, contains hardware breakpoint support
1366 * sparclite-stub.c: new file, stub code that add support hardware
1368 * breakpoint.c: add hardware breakpoint support.
1369 * breakpoint.h: add new breakpoint type to support hardware
1371 * config/mips/nm-irix4.h: change interface for target dependent
1372 code supporting watch point.
1373 * config/pa/nm-hppab.h: change interface for target dependent
1374 code supporting watch point.
1378 * remote-os9k.c (rombuf_command): fix a bug accepting rombug
1380 * stabsread.c (read_struct_fields): os9k nested structure does not
1381 have terminating ';', instead it just get to ',' and bit position
1386 * nlmread.c (nlm_symtab_read): Clean up a bit.
1387 * (nlm_symfile_read): Record bounds of main() so that backtrace
1388 command will know where to stop.
1389 * objfiles.c (objfile_relocate): Relocate entry point/func info
1390 for backtrace as well.
1391 * objfiles.h: Define values for invalid PCs for entry point info.
1392 * symfile.c (init_entry_point_info): Initialize invalid values
1393 with aforementioned macros.
1394 * config/alpha/tm-alphanw.h: Turn on FRAME_CHAIN_VALID_ALTERNATE
1395 to cause backtrace to stop when it gets back to main().
1396 * config/i386/tm-i386nw.h: Ditto.
1400 Fix value_print, which used to be ostensibly language-independent,
1401 but would print pointers and arrays in C syntax. Instead, call
1402 a language-specific function.
1403 * language.h (struct language_defn): New functional field
1405 (LA_VALUE_PRINT): New macro.
1406 * language.c (unk_lang_value_print): New stub/dummy function.
1407 (unknown_language_defn, auto_language_defn, local_language_defn):
1409 * c-valprint.c (c_value_print): New function, with code moved from:
1410 * valprint.c (value_print): ... here. Now just invoke
1411 LA_VALUE_PRINT to do language-specific stuff.
1412 * valprint.c (value_print_array_elements): Make non-static.
1413 * c-lang.c (c_language_defn, cplus_language_defn): Add
1414 c_value_print in the la_value_print field.
1415 * m2-lang.c (m2_language_defn): Likewise.
1416 * ch-lang.c (chill_language_defn): But here use chill_value_print.
1417 * ch-valprint.c (chill_val_print): Print null pointer as NULL.
1418 * ch-valprint.c (chill_value_print): New function, based on
1419 c_value_print, but use Chill "look and feel."
1420 * c-lang.h (c_value_print): New prototype.
1421 * ch-lang.h (chill_value_print): New prototype.
1422 * value.h (value_print_array_elements): New prototype.
1424 * ch-valprint.c (chill_val_print, case TYPE_CODE_BITSTRING
1425 and case TYPE_CODE_SET): Check that the element type isn't a stub.
1429 * main.c: Move entire file except for #ifndef MAIN_OVERRIDE code
1430 to new file top.c. Make things extern instead of static and
1431 similar rearrangements to deal with this.
1433 * utils.c: Move fputs_unfiltered to main.c. Remove
1434 FPUTS_UNFILTERED_OVERRIDE ifndef.
1435 * Makefile.in: Change so that gdb uses main.c, utils.c, and top.c,
1436 and libgdb uses utils.c and top.c.
1440 * hppa-tdep.c (skip_trampoline_code): Fix typo.
1444 * ch-valprint.c (chill_val_print_array_elements): New function.
1445 A Chill version of val_print_array_elements, it prints the
1446 array index labels, in additions ot the array element values.
1447 (chill_val_print): Use the new function.
1451 * configure.in: Add nlm subdir to configdirs for alpha-*-netware
1453 * defs.h (enum language): Add language_asm.
1454 * findvar.c (read_register_bytes read_register_gen
1455 write_register_bytes read_register read_register_pid
1456 write_register write_register_pid supply_register): Move multi-
1457 thread handling down into these routines. Create XXX_pid routines
1458 that allow register references to specify the pid.
1459 * findvar.c infcmd.c (read_pc read_pc_pid write_pc write_pc_pid
1460 read_sp write_sp read_fp write_fp): Move these routines from
1461 infcmd to findvar to centralize the whole mess.
1462 * i386-nlmstub.c: Portability fixes.
1463 * infptrace.c (child_resume): Conditionalize to allow other natives
1464 to override it. Remove PIDGET gubbish, it's no longer necessary.
1465 * infrun.c (wait_for_inferior): Put registers_changed() before
1466 target_wait() to speed up remote debugging.
1467 * Replace code that reads registers from other threads with much
1468 nicer looking new function calls (see changes to findvar.c).
1469 * Don't skip prologues if debugging assembly source.
1470 * lynx-nat.c (child_resume): Lynx now needs it's own version of
1471 child_resume to handle multi-thread debugging properly.
1472 * remote.c: Add O response to get console output from target.
1473 * (readchar): Add timeout parameter. Handle SERIAL_EOF and
1474 SERIAL_ERROR here to simplify callers.
1475 * Change static var timeout to remote_timeout.
1476 * (fromhex): Remove unnecessary return -1 at end of routine.
1477 * (remote_wait): Turn this into a big switch statement. Add
1478 support for O response.
1479 * (putpkt): Remove unnecessary handling of SERIAL_EOF/ERROR.
1480 * (getpkt): Split getpkt into two parts. read_frame deals with
1481 all formatting issues, run-length encoding, and framing. getpkt
1482 now handles error recovery, and frame detection.
1483 * ser-tcp.c (tcp_readchar): Handle EINTR from read().
1484 * ser-unix.c (hardwire_raw): Set CLOCAL so that we ignore modem
1485 control. (hardwire_readchar): Handle EINTR from read().
1486 * symfile.c (deduce_language_from_filename): Add support for .s
1488 * config/nm-lynx.h: Define CHILD_WAIT so that lynx-nat.c can
1489 override infptrace's child_wait.
1490 * config/rs6000/rs6000lynx.mh: Use xm-rs6000ly.h & nm-rs6000ly.h
1491 instead of XXXlynx.h.
1492 * config/rs6000/rs6000lynx.mt: Use tm-rs6000ly.h instead of
1494 * nlm/gdbserve.c: Portability fixes.
1498 * inftarg.c (child_wait): Call proc_wait, not wait.
1499 (child_mourn_inferior): Call proc_remove_foreign.
1500 * main.c (gdb_init): Call init_proc.
1501 * main.c: Provide dummy versions of init_proc, proc_wait, and
1502 proc_remove_foreign for the gdb case (the libgdb case provides its
1503 own versions of these functions).
1504 * Makefile.in (libgdb-files): Add libproc.a.
1508 Hardware watchpoints for Linux, from Rick Sladkey
1510 * infrun.c (wait_for_inferior) [HAVE_CONTINUABLE_WATCHPOINT]: Add
1511 new hardware breakpoint recovery method.
1512 * i386v-nat.c (i386_insert_watchpoint,
1513 i386_insert_nonaligned_watchpoint, i386_remove_watchpoint,
1514 i386_stopped_by_watchpoint) [TARGET_CAN_USE_HARWARE_WATCHPOINT]:
1515 New functions to support the 386 hardware debugging registers.
1516 * config/i386/nm-linux.h (TARGET_CAN_USE_HARDWARE_WATCHPOINT,
1517 HAVE_CONTINUABLE_WATCHPOINT, STOPPED_BY_WATCHPOINT,
1518 target_insert_watchpoint, target_remove_watchpoint): Define these
1519 macros to use the hardware debugging functions in i386v-nat.c.
1523 * Makefile.in: Replace libgdb.a with libgdb-files. Make "all"
1528 * target.c, target.h: New variables target_activity_function and
1530 * inflow.c, inferior.h: New functions set_sigio_trap and
1532 * inftarg.c (child_wait), procfs.c (wait_fd): Call them.
1536 * remote-sim.h (sim_verbose): Delete.
1537 Document callbacks needed.
1538 (sim_*): Change result to void where there isn't one.
1539 (sim_open): Clarify argument and error response.
1540 (sim_close): Declare.
1541 (sim_load): Change bfd_handle argument to file name. Clarify result.
1542 (sim_create_inferior): Renamed from sim_set_args.
1543 (sim_set_pc): Delete.
1544 (sim_info): Delete printf_fn argument.
1545 * remote-sim.c (gdbsim_kill): Add comment describing purpose.
1546 (gdbsim_load): Try sim_load first.
1547 (gdbsim_create_inferior): Call sim_create_inferior.
1548 (gdbsim_open): Handle args == NULL. Update call to sim_open.
1549 (gdbsim_close): Call sim_close.
1550 (gdbsim_files_info): Update call to sim_info.
1551 (gdbsim_ops): Realign comments.
1553 * printcmd.c (decode_format): Allow TARGET_PTR_BIT to be non-constant.
1557 * xcoffread.c (read_xcoff_symtab): For C_FILE symbols, only use
1558 the auxent if the symbol's name is ".file". From David Edelsohn
1563 * breakpoint.c (breakpoint_1): Fix typo.
1565 * annotate.c (annotate_field_end): Fix typo.
1567 * Makefile.in: Move annotate.o from COMMON_OBS to OBS.
1569 * Makefile.in (TSSTART): Remove; no longer used.
1571 * utils.c (vfprintf_maybe_filtered, vfprintf_unfiltered): Call
1572 fputs_unfiltered and exit directly, rather than fatal. The latter
1573 calls vfprintf_unfiltered!
1575 * gdbtypes.h, gdbtypes.c (can_dereference): New function.
1576 * value.h, printcmd.c (print_value_flags): Move from here...
1577 * annotate.c: ...to here, and make it use can_dereference.
1581 * inflow.c (job_control, attach_flag, generic_mourn_inferior):
1582 Remove, needed for both native and cross.
1583 * target.c (attach_flag, generic_mourn_inferior): Put here.
1584 * utils.c (job_control): Put here.
1585 (terminal.h): Don't include anymore.
1589 * source.c (find_source_lines): Always use code that was #ifdef
1590 BROKEN_LARGE_ALLOCA. Do the cleanup before returning, rather than
1591 leaving it on the chain. Reindent much of this function.
1592 * config/sparc/{xm-sun4sol2.h,xm-sun4os4.h},
1593 config/i386/{xm-sun386.h,xm-i386m3.h,xm-i386mach.h},
1594 config/m68k/{sun3os4.h,xm-news.h,xm-hp300hpux.h},
1595 config/ns32k/xm-ns32km3.h: Remove all references to
1596 BROKEN_LARGE_ALLOCA; with the above change it is no longer needed.
1597 * main.c, fork-child.c, many config files: Remove all
1598 SET_STACK_LIMIT_HUGE code; with the above changes it should no
1601 * symtab.c (lookup_partial_symbol): Use if and abort, not assert.
1602 This avoids __eprintf troubles.
1606 * main.c (main): Surround in #ifndef MAIN_OVERRIDE. Move
1607 initialization code which needs to be called even if we bypass the
1608 command line stuff into gdb_init.
1609 * utils.c (fputs_unfiltered): Surround in #ifndef
1610 FPUTS_UNFILTERED_OVERRIDE.
1611 * Makefile.in (libgdb.a): New target.
1613 * utils.c: Rearrange I/O stuff a bit so that all output goes
1614 through fputs_unfiltered. Use vasprintf; removes arbitrary limit
1615 which made %s not work with arbitrarily large strings.
1616 * printcmd.c (printf_command): Use printf_filtered, not
1617 printf_unfiltered and printf, now that arbitrary limit is gone.
1620 * breakpoint.c (watchpoint_check): Remove unused variable b.
1621 * stack.c (print_frame_info): Move sp and buf inside #if.
1622 * eval.c (evaluate_subexp): Remove unused variables pp,
1623 mangle_ptr, ptr, and mangle_tstr.
1624 * valarith.c (value_x_binop): Remove unused variables mangle_tstr
1626 * symtab.c (lookup_symtab): Put variable copy inside #if.
1627 (decode_line_1): Put variable q1 inside #if 0.
1628 * target.h: Declare target_link.
1629 * infrun.c (wait_for_inferior): Remove unused variables signame.
1630 * remote.c (remote_resume): Remove unused variable name.
1631 * c-exp.y (parse_number): Parenthesize operand of shift.
1632 * dbxread.c (record_minimal_symbol): Parenthesize operand of &&
1633 (this is a semantic change, the warning seems to have detected a bug).
1634 * dbxread.c (end_psymtab): Move variable p1 inside #if.
1635 * coffread.c: Move variable temptype inside #if.
1636 * ch-typeprint.c (chill_type_print_base): Remove unused variable
1638 * ch-valprint.c: #include typeprint.h and ch-lang.h.
1639 (chill_val_print): Remove unused variable in_range.
1640 (chill_val_print): Remove statement "length > TYPE_LENGTH (type);".
1641 (chill_val_print): Add default case for switch.
1642 * stabsread.h: Declare stabsect_build_psymtabs.
1643 * os9kread.c (read_minimal_symbols): Make this return void.
1644 (os9k_symfile_read): Remove unused variables stb_exist and val.
1645 (os9k_symfile_init): Remove unused variable val.
1646 (fill_sym): Remove unused variable id.
1647 (read_os9k_psymtab): Put variable back_to inside #if 0. Remove
1648 unused variable nsl.
1649 Remove unused variable symfile_bfd.
1650 #if 0 unused variables lbrac_unmatched_complaint and
1651 lbrac_mismatch_complaint.
1652 Remove declaration for non-existent function os9k_next_symbol_text.
1654 * annotate.c, annotate.h: New files, containing a function for
1655 each annotation which outputs it.
1656 * Move breakpoints_changed from breakpoint.c to annotate.c.
1657 * breakpoint.c, blockframe.c, infrun.c, cp-valprint.c, main.c,
1658 printcmd.c, source.c, stack.c, utils.c, valprint.c:
1659 Use annotate.c functions to output annotations.
1660 * Makefile.in (OBS): Add annotate.o.
1664 * hppa-tdep.c (read_unwind_info): Make sure elf_unwind_size and
1665 elf_unwind_entries are always initialized.
1667 * hppa-tdep.c (skip_trampoline_code): Handle argument relocation
1668 stubs which return directly to the caller rather than to the stub
1673 * c-exp.y (yyerror): Display a more informative error message.
1674 * ch-exp.y (yyerror): Ditto, don't use global yychar.
1675 * m2-exp.y (yyerror): Ditto.
1679 * inflow.c (job_control): Move definition to front of file.
1683 * maint.c (print_section_table): Rename SEC_SHARED_LIBRARY to
1684 SEC_COFF_SHARED_LIBRARY to match corresponding change in bfd.
1688 * Makefile.in (kdb): Remove old init.c creation commands.
1689 * configure.in (sparclite): Match on sparclite*.
1690 * sparclite/aload.c (main): Only change section addresses for
1691 a.out format object files.
1695 * config/i386/go32.mh: Define CC.
1699 * gdbserver/Makefile.in: Remove irrelevant definitions and
1700 comments inherited from the gdb Makefile.
1701 (BFD_DIR, BFD, BFD_SRC, BFD_CFLAGS): Add from gdb Makefile.
1702 (VERSION): Update to 4.12.3.
1703 (gdbserver): Remove any existing executable first.
1704 (distclean, realclean): Remove nm.h.
1705 * gdbserver/low-lynx.c: Add Sparc Lynx support.
1706 * gdbserver/low-sparc.c, gdbserver/low-sun3.c (sys/wait.h):
1707 Don't use absolute pathname.
1711 * rs6000-nat.c (vmap_ldinfo): Don't fail if fstat returns an
1716 * infrun.c (proceed, normal_stop, wait_for_inferior), breakpoint.c
1717 (print_it_normal): Add annotations for the inferior starting and
1718 stopping, and for all the various messages related to how it
1721 * printcmd.c (do_one_display): Annotate.
1722 * stack.c (print_frame_info): Annotate printing of stack frames.
1726 * remote.c (get_offsets): Handle case where stub doesn't support
1731 Add partial support for g++ code compiled with -fvtable-thunks.
1732 * c-valprint.c (c_val_print): Add vtblprint support
1734 * cp-valprint.c (cp_is_vtbl_member): A vtable can be an array of
1735 pointers (if using thunks) as well as array of structs (otherwise).
1736 * cp-valprint.c (vtbl_ptr_name_old, vtbl_ptr_name): Move to global
1737 level, and make the latter non-static (so define_symbol can use it).
1738 * stabsread.c (define_symbol): If the type being defined is a
1739 pointer type named "__vtbl_ptr_type", set the TYPE_NAME to that name.
1740 * symtab.h (VTBL_PREFIX_P): Allow "_VT" as well as "_vt".
1741 * values.c (value_virtual_fn_field): Handle thunks.
1742 * values.c (value_headof): Minor efficiency hack.
1743 * values.c (value_headof): Incomplete thunk support. FIXME.
1747 * valprint.c (print_longest): Clarify comment about use_local.
1748 * printcmd.c, defs.h (print_address_numeric), callers in
1749 symmisc.c, symfile.c, stack.c, source.c, remote.c, infcmd.c,
1750 cp-valprint.c, core.c, ch-valprint.c, c-valprint.c, breakpoint.c,
1751 exec.c: New argument use_local.
1752 * source.c (identify_source_line): Use filtered output. Use
1753 print_address_numeric.
1755 * core.c (memory_error), symtab.c (cplusplus_hint, decode_line_1),
1756 language.c (type_error, range_error): Use filtered output.
1757 * utils.c (error_begin): Update comment to tell people to use
1760 * Makefile.in (HFILES_WITH_SRCDIR): List bfd.h.
1761 (HFILES_NO_SRCDIR): List gdbcore.h not gdbcore_h, so as not to get
1766 * procfs.c (procfs_wait): Reinstate code which deduces the signal
1767 from the fault, #ifndef FAULTED_USE_SIGINFO.
1768 * config/sparc/tm-sun4sol2.h: Define FAULTED_USE_SIGINFO.
1772 * breakpoint.c (breakpoint_1): Annotate each field of the headers.
1773 Explicitly annotate each record.
1777 * xcoffexec.c: Reformat to standards and lint.
1778 (language.h): Include.
1779 (exec_close): Declare arg "quitting".
1780 (file_command): Declare arg "from_tty".
1781 (map_vmap): Cast xmalloc result to PTR.
1782 * rs6000-nat.c: Reformat to standards and lint.
1783 (exec_one_dummy_insn): Use char array for saved instruction.
1784 (fixup_breakpoints): Declare.
1785 (vmap_ldinfo): Be more informative in fatal error messages.
1786 (xcoff_relocate_symtab): Define to return void.
1787 * xcoffsolib.h: Reformat to standards, improve comments.
1788 * config/rs6000/nm-rs6000.h (xcoff_relocate_symtab): Declare.
1792 * utils.c, defs.h (error_begin): New function.
1793 (quit): Print annotation before printing the error message.
1794 * main.c (return_to_top_level): Print annotation before doing the
1796 * symtab.c (decode_line_1): Call error not warning and then
1797 return_to_top_level. Call error_begin and printf_unfiltered
1798 rather calling warning (before calls to return_to_top_level).
1799 * core.c (memory_error): Use error_begin, printf_unfiltered,
1800 print_address_numeric and return_to_top_level instead of error.
1801 Cleans up a FIXME-32x64.
1802 * language.c (type_error, range_error): Call error_begin
1803 not just target_terminal_ours.
1805 * dbxread.c (stabsect_build_psymtabs): Assign to sym_stab_info
1806 directly, rather than via DBX_SYMFILE_INFO. A cast on the left
1807 side of an assignment is non-portable.
1809 * utils.c (query): Change syntax of query annotations to be
1810 consistent with other input annotations.
1811 (prompt_for_continue): Likewise for prompt-for-continue annotation.
1815 * mdebugread.c (psymtab_to_symtab_1): Do not call sort_blocks
1817 * mips-tdep.c (mips_skip_prologue): Handle prologues for functions
1818 that have a stack frame size of 32k or larger (from Paul Flinders).
1819 Remove #if 0'd code.
1823 * lynx-nat.c (CANNOT_STORE_REGISTER): Add a fallback definition
1824 for Lynx platforms that need it.
1825 * config/nm-lynx.h (__LYNXOS): Define if not already defined.
1829 * procfs.c (procfs_wait): Use the signal from the pr_info rather
1830 than trying to deduce it from the fault.
1834 * printcmd.c (print_address_symbolic): Initialize name to empty
1835 string to avoid core dump if lookup fails.
1836 * remote-e7000.c (printf_e7000debug): Error if target not open.
1838 Tue Apr 26 22:45:24 1994 Stu Grossman (grossman at cygnus.com)
1840 * i386-nlmstub.c: Update to be more in line with PIN stub.
1841 * nlm/gdbserve.c (putDebugChar): Install bug fix from i386-nlmstub.
1842 * (hex2mem): Init ptr.
1843 * General cleanups to use ConsolePrintf, standard prologues, etc...
1845 Tue Apr 26 10:23:04 1994 Stu Grossman (grossman at cygnus.com)
1847 * i386-nlmstub.c: More changes to be compatible with remote.c.
1849 * dbxread.c: Move a bunch of strncmps out of process_one_symbol
1850 into (the far less frequently called) dbx_symfile_read.
1852 * i386-nlmstub.c: An interim version till we get PIN for the x86.
1854 Tue Apr 26 09:50:45 1994 Stu Grossman (grossman at cygnus.com)
1856 * dbxread.c (record_minimal_symbol): Record the section
1857 associated with the symbol to make dynmaic relocation work.
1858 * (dbx_symfile_read, process_one_symbol): Fixes to work around
1859 Solaris brain-damage which don't apply to relocatable object
1861 * (stabsect_build_psymtabs): New routine to read stabs out of an
1862 arbitrarily named section.
1863 * nlmread.c (nlm_symtab_read): Read ALL syms from the NLM, not just
1865 * (nlm_symfile_read): Call stabsect_build_psymtabs to read the
1866 stabs out of the nlm.
1867 * partial-stabs.h (cases 'f' & 'F'): Fixes to work around Solaris
1868 brain-damage which don't apply to relocatable object files.
1869 * remote.c (putpkt): Improve error reporting and error handling.
1870 * (get_offsets): Temporary kludge to force data & bss sections to
1871 have the same relocation.
1872 * stabsread.c (define_symbol, scan_file_globals): Record section
1877 * breakpoint.c (breakpoint_1): Annotate each field of output. Add
1878 FIXME-32x64 comment.
1882 * infrun.c (wait_for_inferior): Move call to flush_cached_frames
1883 to after call to target_wait. This means that flush_cached_frames
1884 can call target_terminal_ours if it wants to.
1885 * infrun.c (wait_for_inferior) [HAVE_NONSTEPPABLE_WATCHPOINT]: Add
1886 comment about why the code is dubious.
1888 * stabsread.c (read_type): Call read_type, not nonexistent
1893 * remote-os9k.c (rombug_fetch_registers): set trace mode
1895 * remote-os9k.c (rombug_read_inferior_memory): cache data in
1897 * os9kread,c (read_os9k_psymtab): process file symbol to truncate
1899 * os9kread.c (os9k_read_ofile_symtab): proper casting of args
1900 passed to process_one_symbol.
1901 * stabsread.c (read_type): process os9k functio prototype.
1905 * solib.c (symbol_add_stub): If so->textsection is NULL, don't
1910 * utils.c (prompt_for_continue): Annotate prompt.
1911 (query): Annotate query.
1912 * printcmd.c (print_frame_args): Change syntax of argument
1913 annotation to make name and value part of a single group of
1914 annotations, not two separate groups.
1915 * cp-valprint.c (cp_print_value_fields): Likewise for fields.
1916 * valprint.c (val_print_array_elements): Change syntax of
1917 annotation to be more concise.
1918 * main.c, defs.h (command_line_input): New argument tells what
1919 string to include in the annotations.
1920 * symtab.c (decode_line_2), main.c (read_command_lines,
1921 command_loop): Change callers.
1923 * breakpoint.c (watch_command): Use (CORE_ADDR)0, not NULL, for
1924 target null pointer.
1925 * blockframe.c (find_frame_addr_in_frame_chain): Likewise.
1927 * printcmd.c (output_command): Annotate things we print here too.
1928 * printcmd.c (print_command_1): Add "value-history-value" annotation.
1929 * Move declaration of print_value_flags from defs.h to value.h.
1930 * main.c (command_line_input): Call wrap_here as well as gdb_flush.
1934 * dbxread.c (read_dbx_dynamic_symtab): Reinstall support for sun3,
1935 BFD handles sun3 dynamic relocations now.
1936 * elfread.c (elf_symtab_read, elf_symfile_read): Handle dynamic
1941 * printcmd.c (print_command_1): Annotate the top-level expressions
1943 (print_frame_args): Annotate each argument.
1944 * printcmd.c, defs.h (print_value_flags): New function.
1945 * cp-valprint.c (cp_print_value_fields): Annotate each field.
1946 * valprint.c (val_print_array_elements): Annotate each array element.
1950 * findvar.c (read_var_value): Handle LOC_REPARM_ADDR case correctly,
1951 the register contains a pointer to the type, not the type itself.
1955 * main.c (main): Accept --annotate=N option and make --fullname
1956 the same as --annotate=1.
1957 (command_line_input): Print annotatation before and after prompt.
1958 * blockframe.c (flush_cached_frames): Print annotation.
1959 * Rename frame_file_full_name to annotation_level and move it from
1961 * source.c (identify_source_line): If annotation_level > 1,
1962 change output format.
1963 * breakpoint.c: Print annotation whenever a breakpoint changes.
1964 * main.c: New variable server_command.
1965 (command_line_input): Parse "server " and set server_command.
1966 (dont_repeat): Check server_command.
1970 * xcoffread.c (xcoff_next_symbol_text): Don't return before
1971 updating raw_symbol and symnum. Return a value in the case where
1974 * dstread.c, coffread.c: Don't define pending_blocks; buildsym.c
1976 * parse.c: Don't define block_found; it is defined in symtab.c.
1977 * parser-defs.h: Add comment regarding block_found.
1981 * hppa-tdep.c (internalize_unwind_info): Delete unused indexp
1986 * dbxread.c (read_dbx_dynamic_symtab): Relocate BFD symbols by
1987 section vma. Do not read dynamic relocs for sun3 executables to
1988 avoid BFD assertion message.
1992 * nm-hppab.h (KERNEL_U_ADDR): Define.
1993 (FIVE_ARG_PTRACE): Likewise.
1994 (CANNOT_STORE_REGISTER): Likewise.
1995 * nm-hppah.h (KERNEL_U_ADDR): Define.
1996 (FIVE_ARG_PTRACE): Likewise.
1997 (CANNOT_STORE_REGISTER): Likewise.
1998 (NEED_TEXT_START_END): Likewise.
2000 * tm-hppah.h (NEED_TEXT_START_END): Delete definition.
2001 * xm-hppah.h (KERNEL_U_ADDR): Delete definition.
2002 (FIVE_ARG_PTRACE): Likewise.
2003 * xm-hppab.h (KERNEL_U_ADDR): Delete definition.
2004 (FIVE_ARG_PTRACE): Likewise.
2006 * hppa-tdep.c (read_unwind_info): Make static.
2007 (restore_pc_queue): Indirect through the target vector to
2008 reload the register state.
2012 * paread.c (compare_unwind_entries): Delete function. It's been
2013 moved into hppa-tdep.c.
2014 (read_unwind_info): Likewise.
2015 (pa_symfile_read): No longer call read_unwind_info. The unwind
2016 tables will be read in as they are needed.
2018 * hppa-tdep.c (compare_unwind_entries): New function.
2019 (read_unwind_info, internalize_unwinds): Likewise.
2020 (find_unwind_entry): Read in unwind information on demand.
2024 * source.c (DIRNAME_SEPARATOR): New macro, replaces all references
2025 to : in search path processing.
2026 * defs.h (qsort): Rename argument in prototype.
2027 * symtab.h (SAYMBOL_VALUE): Rename value field, avoids bugs in
2029 * breakpoint.c, exec.c, mdebugread.c, mipsread.c, xcoffexec.c
2030 (false): Eliminate usages.
2034 * h8500-tdep.c (initialize_h8500_tdep, large_command):
2035 All references to value changed to value_ptrlage_command is now
2037 All references to value changed to value_ptr.
2038 * remote-e7000.c (e7000_wait): Use target_waitstatus and SETSTOP
2039 * remote-hms.c (hms_wait): Timeout after five seconds.
2040 * ser-go32.c (dosasync_read): Poll if timeout < 0.
2041 * config/tm/tm-h8500.h (BEFORE_MAIN_LOOP_HOOK): Deleted.
2042 * config/sh/tm-sh.h (BREAKPOINT): Is now sleep opcode.
2046 * procfs.c (procfs_wait): Protect watchpoint code with appropriate
2048 (procfs_set_watchpoint, procfs_stopped_by_watchpoint): Likewise.
2052 * breakpoint.h (enum bptype): Add bp_hardware_watchpoint and
2053 bp_watchpoint_scope breakpoints.
2054 (struct breakpoint): Add val_chain and related_breakpoint fields
2055 for use by watchpoints.
2057 * breakpoint.c (within_scope): Delete. No longer used.
2058 (TARGET_CAN_USE_HARDWARE_WATCHPOINT): Provide default definition.
2059 (target_{remove,insert}_watchpoint): Likewise.
2060 (can_use_hardware_watchpoint): New function.
2061 (remove_breakpoint): New function to remove a single breakpoint
2062 or hardware watchpoint.
2063 (insert_breakpoints): Handle insertion of hardware watchpoints.
2064 Store a copy of the value chain derived from the watchpoint
2066 (remove_breakpoints): Simplify by using remove_breakpoint.
2067 (delete_breakpoint): Likewise.
2068 (watchpoint_check): Delete the watchpoint and watchpoint scope
2069 breakpoints when the watchpoint goes out of scope. Save & restore
2070 the current frame after checking watchpoints.
2071 (breakpoint_init_inferior): Likewise (restarting the program
2072 makes all local watchpoints go out of scope).
2073 (bpstat_stop_status): Handle hardware watchpoints much like normal
2074 watchpoints. Delete the watchpoint and watchpoint scope breakpoint
2075 when the watchpoint goes out of scope. Remove and reinsert all
2076 breakpoints before returning if we stopped when a hardware watchpoint
2078 (watch_command): Use a hardware watchpoint when possible. If
2079 watching a local expression, build a scope breakpoint too.
2080 (map_breakpoint_numbers): Also call given function for any
2081 related breakpoints.
2082 (disable_breakpoint): Never disable a scope breakpoint.
2083 (enable_breakpoint): Handle hardware breakpoints much like normal
2084 breakpoints, but recompute the watchpoint_scope breakpoint's
2085 frame and address (if we have an associated scope breakpoint).
2086 (read_memory_nobpt): Handle hardware watchpoints like normal
2087 watchpoints. When necessary handle watchpoint_scope breakpoints.
2088 (print_it_normal, bpstat_what, breakpoint_1, mention): Likewise.
2089 (clear_command, breakpoint_re_set_one, enable_command): Likewise.
2090 (disable_command): Likewise.
2092 * blockframe.c (find_frame_addr_in_frame_chain): New function.
2093 Extern prototype added to frame.h
2095 * infrun.c (wait_for_inferior): Set current_frame and select
2096 a frame before checking if we stopped due to a hardare watchpoint
2097 firing. Handle stepping over hardware watchpoints.
2098 (normal_stop): Remove unnecessary call to select_frame.
2100 * value.h (value_release_to_mark): Declare.
2101 * values.c (value_release_to_mark): New function.
2103 * procfs.c (procfs_wait): Add cases for hardware watchpoints.
2104 (procfs_set_watchpoint, procfs_stopped_by_watchpoint): New functions.
2106 * hppab-nat.c (hppa_set_watchpoint): New function.
2108 * config/pa/nm-hppab.h (STOPPED_BY_WATCHPOINT): Define.
2109 (HAVE_STEPPABLE_WATCHPOINT): Define.
2110 (TARGET_CAN_USE_HARDWARE_WATCHPOINT): Define.
2111 (target_{insert,delete}_watchpoint): Define.
2113 * config/mips/nm-irix4.h (TARGET_CAN_USE_HARDWARE_WATCHPOINT): Define.
2114 (STOPPED_BY_WATCHPOINT, HAVE_NONSTEPPABLE_WATCHPOINT): Likewise.
2115 (target_{insert,remove}_watchpoint): Likewise.
2117 Mon Apr 11 19:21:27 1994 Stu Grossman (grossman at cygnus.com)
2119 * xcoffread.c (read_xcoff_symtab): Ignore symbols of class C_EXT,
2120 smtyp XTY_LD, sclass XMC_DS (external data segment label). They
2121 often have the same names as debug symbols for functions, and
2122 confuse lookup_symbol().
2126 * remote.c: Around redefinition of PBUFSIZE, adjust whitespace.
2127 * config/pa/tm-hppa.h (REGISTER_BYTES): Use 4 rather than
2128 REGISTER_RAW_SIZE (1).
2129 Together these changes work around a bug in HP's compiler. Both
2130 seem to be necessary.
2134 * paread.c (pa_symtab_read): Handle ST_STUB symbols and symbols
2135 with scope SS_EXTERNAL. ST_ENTRY symbols in dynamic executables
2136 are type mst_solib_trampoline.
2140 * config/m68k/es1800.mt: Change comments.
2144 * config/m68k/monitor.mt (TDEPFILES): Don't include remote-es.o.
2146 Fri Apr 8 15:35:30 1994 Stu Grossman (grossman at cygnus.com)
2148 * lynx-nat.c: Restore regmap structure for SPARC. It's needed
2153 * values.c (unpack_long): Remove obsolete comment about using a
2156 * symfile.c (symbol_file_command): Add comments about command syntax.
2161 * infrun.c (IN_SOLIB_TRAMPOLINE): Correct comment, trampolines
2162 are in the .plt section.
2163 * minsyms.c (lookup_solib_trampoline_symbol_by_pc,
2164 find_solib_trampoline_target): New functions for handling
2165 stepping into -g compiled shared libraries.
2166 * symtab.h (lookup_solib_trampoline_symbol_by_pc,
2167 find_solib_trampoline_target): Add prototypes.
2168 * config/tm-sunos.h (IN_SOLIB_TRAMPOLINE, SKIP_TRAMPOLINE_CODE):
2169 Define to handle stepping into -g compiled shared libraries.
2170 * config/tm-sysv4.h (SKIP_TRAMPOLINE_CODE): Define to handle
2171 stepping into -g compiled shared libraries.
2175 * configure.in: Add mips-*-sysv4* support.
2176 * config/mips/mipsv4.mh, config/mips/mipsv4.mt,
2177 config/mips/tm-mipsv4.h, config/mips/xm-mipsv4.h, mipsv4-nat.c:
2178 New files for MIPS SVR4 support.
2179 * Makefile.in: Update for new mipsv4 files.
2180 * alpha-tdep.c (heuristic_proc_desc, find_proc_desc): Use
2181 read_next_frame_reg to obtain the frame relative stack pointer.
2182 * mips-tdep.c (heuristic_proc_desc): Use read_next_frame_reg to
2183 obtain the frame relative stack pointer.
2184 * mdebugread.c (parse_partial_symbols, psymtab_to_symtab1):
2185 Handle stStatic and stStaticProc symbols in stabs-in-ecoff output
2186 by entering them into the minimal symbol table.
2187 * printcmd.c (print_scalar_formatted): Do not try to unpack to
2188 a long for float formats.
2189 * solib.c: Include "elf/mips.h" only if DT_MIPS_RLD_MAP does not
2190 get defined in <link.h>.
2191 * solib.c (solib_add): Add shared library sections to the section
2192 table of the target before adding the symbols.
2193 * partial-stab.h: Relocate static and global functions.
2194 * dbxread.c (read_dbx_symtab): Remove unused variable
2195 end_of_text_address. Relocate text_addr when passing it
2198 For Alpha OSF/1 targets, enable gdb to set breakpoints in shared
2199 library functions before the executable is run. Retrieve dynamic
2200 symbols from stripped executables.
2201 * mipsread.c (read_alphacoff_dynamic_symtab): New function.
2202 * mipsread.c (mipscoff_symfile_read): Use it. Issue warning message
2203 if no debugging symbols were found.
2204 * alpha-tdep.c (alpha_skip_prologue): Silently return the unaltered
2205 pc if memory at the pc is not accessible and GDB_TARGET_HAS_SHARED_LIBS
2207 * config/alpha/nm-alpha.h (GDB_TARGET_HAS_SHARED_LIBS): Define,
2208 OSF/1 has shared libraries.
2212 * dbxread.c (read_dbx_dynamic_symtab): Adjust for recent changes
2213 to BFD handling of dynamic symbols.
2217 * hppa-tdep.c (hppa_fix_call_dummy): If FUN is a procedure label,
2218 then gets its real address into FUN and its GOT/DP value into %r19.
2220 * tm-hppa.h (CALL_DUMMY): Use %r20, not %r19 as a temporary.
2222 * hppa-tdep.c (frameless_function_invocation): If no unwind
2223 descriptor was found, then assume this was not a frameless
2224 function invocation.
2225 (frame_saved_pc): If the saved PC is in a linker stub, then
2226 return the return address which the linker stub will return to.
2228 * xm-hppab.h: Never define USG.
2229 * xm-hppah.h: Always define USG.
2233 * values.c (unpack_long, value_from_longest),
2234 valarith.c (value_binop): Allow TYPE_CODE_RANGE.
2238 * symfile.c (deduce_language_from_filename): .cpp is a C++ extension.
2242 For SVR4 targets, enable gdb to set breakpoints in shared
2243 library functions before the executable is run.
2244 * elfread.c (elf_symtab_read): Handle symbols for shared library
2246 * sparc-tdep.c (in_solib_trampoline): Renamed to in_plt_section
2247 and moved to objfiles.c.
2248 * objfiles.c (in_plt_section): Moved to here from sparc-tdep.
2249 * config/tm-sysv4.h (IN_SOLIB_TRAMPOLINE): Use new in_plt_section.
2250 * config/sparc/tm-sun4sol2.h (IN_SOLIB_TRAMPOLINE): Removed,
2251 the new generic definition from tm-sysv4.h works for Solaris.
2255 * elfread.c (elf_symtab_read): Change storage_needed,
2256 number_of_symbols and i to long. Rename get_symtab_upper_bound to
2257 bfd_get_symtab_upper_bound. Check for errors from
2258 bfd_get_symtab_upper_bound and bfd_canonicalize_symtab.
2259 * nlmread.c (nlm_symtab_read): Same changes.
2263 * xcoffread.c (xcoff_next_symbol_text): New function.
2264 (read_xcoff_symtab): Set next_symbol_text_func to it.
2265 Move raw_symbol outside of read_xcoff_symtab.
2267 * remote.c (getpkt): Remove unused "out" label.
2271 * breakpoint.c (print_it_normal): Allow GDB to notify the user
2272 about more than one watchpoint being triggered.
2276 * config/m68k/tm-dpx2.h: Include tm-m68k.h not nonexistent tm-68k.h.
2280 * blockframe.c (find_pc_partial_function): mst_file_text
2281 symbols do not live in the shared library transfer table.
2282 * ch-exp.y (decode_integer_value, match_character_literal,
2283 match_bitstring_literal): Guard tolower calls with isupper,
2284 tolower on old BSD systems blindly subtracts a constant.
2285 * dbxread.c (read_ofile_symtab): Check for __gnu_compiled_* as
2286 well when determining the producer of the object file.
2287 * mdebugread.c (has_opaque_xref): New function to check for
2288 cross reference to an opaque aggregate.
2289 * mdebugread.c (parse_symbol, parse_partial_symbols): Do not
2290 enter typedefs to opaque aggregates into the symbol tables.
2291 * mdebugread.c (parse_external): Remove skip_procedures argument,
2292 it has always been 1. Remove code that handled stProc symbols,
2293 it was never executed and was wrong, as the index of a
2294 stProc symbol points to the local symbol table and not to the
2295 auxiliary symbol info. Update caller.
2296 * mdebugread.c (parse_partial_symbols): Do not enter external
2297 stProc symbols into the partial symbol table, they are already
2298 entered into the minimal symbol table.
2299 * config/i386/tm-symmetry.h: Clean up, it is now only used for Dynix.
2300 Remove all conditionals and definitions for ptx.
2301 I386_REGNO_TO_SYMMETRY moved to here from symm-tdep.c.
2302 Fix addresses of floating point registers in REGISTER_U_ADDR.
2303 STORE_STRUCT_RETURN now handles cc and gcc conventions.
2304 FRAME_CHAIN, FRAMELESS_FUNCTION_INVOCATION, FRAME_SAVED_PC,
2305 IN_SIGTRAMP, SIGCONTEXT_PC_OFFSET defined to make backtracing through
2306 signal trampoline code work.
2307 * config/i386/xm-symmetry.h: Clean up, it is now only used for Dynix.
2308 Remove all conditionals and definitions for ptx.
2309 Remove KDB definitions.
2310 * symm-nat.c (store_inferior_registers): Fetch registers before
2311 storing them to obtain valid floating point control registers.
2312 Store fpu registers.
2313 * symm-nat.c (print_1167_control_word): Dynix 3.1.1 defines
2314 FPA_PCR_CC_C0 and FPA_PCR_CC_C1, avoid duplicate case value.
2315 * symm-nat.c (fetch_inferior_registers, child_xfer_memory):
2317 * symm-nat.c (child_resume): Update type of `signal' parameter.
2318 * symm-tdep.c (I386_REGNO_TO_SYMMETRY): Moved to tm-symmetry.h.
2322 * hppa-tdep.c (hppa_fix_call_dummy): Use an alternate method for
2323 calling import stubs for functions in shared libraries.
2327 * ch-exp.y: Implement SIZE(mode_name) and SIZE(expression).
2329 * ch-lang.c (chill_is_varying_struct): Magic string is
2330 was "<var_length>" is now "__var_length" (more portable).
2334 * remote.c (getpkt): If we get a timeout, actually retry rather
2335 than just giving up the first time it happens.
2336 * remote.c: Document sequence numbers.
2337 (remote_store_registers): Change syntax of 'P' request so that it
2338 never looks like a sequence number.
2342 * os9kread.c (record_minimal_symbol): add section_offset to
2343 relocate minimal symbol table.
2344 * os9kread.c (read_minimal_symbols): ditto.
2345 * os9kread.c (os9k_symfile_init): increase size of dbg and stb
2347 * os9kread.c (read_os9k_psymtab): if there's no dbg file, just
2348 return. Also if file addr is 0 leave it 0, not to relocate.
2349 * remote-os9k.c (_initialize_remote_os9k): add 'set remotexon',
2350 'set remotexoff' and 'set remotelog' commands.
2354 * remote.c (remote_store_registers): Add 'P' request to set an
2355 individual register.
2356 (remote_write_bytes, remote_read_bytes): Use %lx, not %x, to print
2361 * config/sparc/tm-sparc.h: Define USE_REGISTER_NOT_ARG.
2362 * stabsread (define_symbol): If USE_REGISTER_NOT_ARG, go back to
2363 combining all 'p' and 'r' pairs into a LOC_REGPARM.
2365 * command.c (do_setshow_command, case var_string): Never add a
2366 space to the end of the string.
2367 * NEWS: Document this change.
2368 * .gdbinit: Add a space to the "set prompt" command.
2372 * m3-nat.c, i386m3-nat.c, config/i386/i386m3.mh: Many minor
2373 changes to make it compile (it doesn't link yet).
2375 * buildsym.c (start_subfile, patch_subfile_names), demangle.c
2376 (set_demangling_style, set_demangling_command): Use savestring not
2377 strdup. We were not dealing properly with a NULL return from
2378 strdup, and were not declaring strdup (the system header may or
2381 * valprint.c (val_print): Remove inaccurate comment about what
2382 types can be stub types.
2384 * config/i386/ptx.mh (XDEPFILES): Add coredep.o. Delete infptrace.o.
2385 * symm-nat.c (child_wait, _initialize_symm_nat, kill_inferior):
2386 Supply alternate version if ATTACH_DETACH is not defined.
2387 * ptx4-nat.c, config/i386/{nm-ptx4.h, ptx4.mh, ptx.mt, ptx4.mt,
2388 tm-ptx.h, tm-ptx4.h, xm-ptx.h, xm-ptx4.h}: New files.
2389 * configure.in: Recognize i[34]86-sequent-sysv4* host.
2393 * hppa-tdep.c (skip_prologue): Do nothing if not at the beginning
2395 (skip_trampoline_code): Rewrite and add support for argument
2396 relocation stubs stubs, import/export stubs, calls through
2397 "_sr4export" and cascaded trampolines.
2399 * hppa-tdep.c (skip_prologue): Return "pc" not zero
2400 if no unwind descriptor is found.
2402 * tm-hppa.h (NUM_REGS): Bump to 128 registers.
2403 (REGISTER_NAMES): Add entries for "right-half" of FP registers.
2404 (REGISTER_RAW_SIZE, MAX_REGISTER_RAW_SIZE): Do not treat FP regs
2405 differently. All registers are four bytes.
2406 (REGISTER_BYTES, REGISTER_BYTE): Simplify now that all registers are
2408 (REGISTER_VIRTUAL_TYPE): Use builtin_type_float for all FP regs.
2410 * hppa-tdep.c (pa_print_fp_reg): Update to print even numbered FP
2411 registers as both single and double values (fetching 2nd 32bit half
2412 as necessary). Annotate each register printed with its precision.
2414 * paread.c (read_unwind_info): Fix off-by-one error.
2418 * main.c (complete_command): Deal with it if arg is NULL.
2422 * config/mips/tm-mips.h (SETUP_ARBITRARY_FRAME): Revise comment
2423 regarding using the PC--using the PC is necessary and all the
2424 FIXME comments in the world won't make it go away.
2426 * valops.c (value_at, value_at_lazy): Give error if we dereference
2428 * gdbtypes.h: Fix comments regarding TYPE_CODE_VOID.
2429 * stabsread.c: Use 1, not 0, for TYPE_LENGTH of void types.
2431 * stabsread.c (patch_block_stabs): Add comment about what happens
2432 if the definition is in another compilation unit from the stab.
2434 * dbxread.c (end_psymtab): Add comment about empty psymtabs.
2438 * main.c (complete_command): New command, from Rick Sladkey
2440 (symbol_completion_function): Don't declare rl_point and
2441 rl_line_buffer; they are now declared in readline.h.
2442 (show_commands): Don't declare history_base; it is declared in
2444 * command.c (lookup_cmd): Don't delete trailing whitespace.
2445 Reverts change of 14 May 1989.
2447 Wed Mar 23 16:14:52 1994 Stu Grossman (grossman at cygnus.com)
2449 * minsyms.c (prim_record_minimal_symbol): Move section deduction
2450 code from prim_record_minimal_symbol_and_info() to here. Callers
2451 of the latter can legitimately supply a section number of -1.
2455 * gdbtypes.h, gdbtypes.c: Add comments regarding whether static
2456 member functions have an element in args for a (nonexistent) this
2461 * config/pa/tm-hppao.h (NO_PC_SPACE_QUEUE_RESTORE): Define.
2463 * hppa-tdep.c (hppa_pop_frame): Do not restore the PC space
2464 queue if NO_PC_SPACE_QUEUE_RESTORE is defined.
2466 * stabsread.c (REG_STRUCT_HAS_ADDR): Accept additional argument
2467 for the structure's type. All callers changed.
2469 * valops.c (call_function_by_hand): Check REG_STRUCT_HAS_ADDR
2470 for each structure argument rather than assuming it's either
2471 true or false for all structure arguments.
2473 * config/pa/tm-hppa.h (REG_STRUCT_HAS_ADDR): Depend only
2474 on the length structure passed, not the compiler used.
2476 * config/sparc/tm-sparc.h (REG_STRUCT_HAS_ADDR): Accept additional
2477 argument for the structure's type.
2481 * values.c (set_internalvar): Don't set var->value until we are
2482 sure there won't be an error().
2484 * remote.c (get_offsets): Reinstate comment which was in
2485 remote_wait about use of SECT_OFF_TEXT and so on.
2489 * symmisc.c (maintenance_check_symtabs): New function to check
2490 consistency of psymtabs and symtabs.
2491 * symtab.h (maintenance_check_symtabs): Add prototype.
2492 * maint.c: Add new `maint check-symtabs' command.
2493 * config/i386/tm-i386aix.h, config/i386/tm-sun386.h,
2494 config/i386/tm-symmetry.h (REGISTER_CONVERT_TO_RAW): Fix typo.
2495 * config/i386/tm-symmetry.h: Make comment inside #if 0 a real
2497 * config/i386/tm-symmetry.h (STORE_STRUCT_RETURN): Cast argument
2498 to write_memory to avoid warnings from gcc.
2499 * config/i386/xm-symmetry.h: Add missing #endif.
2500 * config/i386/nm-symmetry.h (NO_PTRACE_H): Add for Dynix.
2501 * config/i386/symmetry.mt (TDEPFILES): Add i386-tdep.o.
2502 * config/i386/symmetry.mh (NAT_FILE, NATDEPFILES): Add.
2506 * hppa-tdep.c (hppa_fix_call_dummy): Use value_ptr.
2507 (hppa_push_arguments): Likewise.
2509 Mon Mar 21 11:02:51 1994 Stu Grossman (grossman at cygnus.com)
2511 * alpha-tdep.c: Gobs of changes (many imported from mips-tdep) to
2512 improve remote debugging efficiency. Also fixed problems with
2513 doing function calls for programs with no entry points.
2514 * infcmd.c (run_stack_dummy): Use CALL_DUMMY_ADDRESS instead of
2515 entry_point_address.
2516 * inferior.h (PC_IN_CALL_DUMMY): ditto.
2517 * mdebugread.c (parse_symbol, parse_procedure, parse_external,
2518 parse_lines): Pass section_offsets info to these routines so that
2519 we can relocate symbol table entries upon readin.
2520 * (psymtab_to_symtab_1): Set symtab->primary to tell
2521 objfile_relocate to do relocations for our symbols.
2522 * (ecoff_relocate_efi): New routine to relocate adr field of PDRs
2523 (which hang off of the symbol table).
2524 * Use prim_record_minimal_symbols_and_info instead of
2525 prim_record_minimal_symbols to supply section info to make minimal
2526 symbol relocations work.
2527 * minsyms.c (prim_record_minimal_symbols_and_info): If section is
2528 -1, try to deduce it from ms_type.
2529 * objfiles.c (objfile_relocate): Use ALL_OBJFILE_SYMTABS where
2530 appropriate. Handle relocation of MIPS_EFI symbols special. Also,
2531 add code to relocate objfile->sections data structure.
2532 * remote.c (get_offsets): Use new protocol message to acquire
2533 section offsets from the target.
2534 * (remote_wait): Get rid of relocation stuff. That's all handled
2535 by objfile_relocate now.
2536 * config/alpha/alpha-nw.mt (TM_FILE): Use tm-alphanw.h.
2537 * config/alpha/tm-alpha.h: Define CALL_DUMMY_ADDRESS, and
2539 * config/alpha/tm-alphanw.h: DECR_PC_AFTER_BREAK=0, VM_MIN_ADDRESS=0.
2543 * sparc-tdep.c (sparc_frame_find_save_regs): Use REGISTER_RAW_SIZE
2545 * sp64-tdep.c (target_ptr_bit, set_target_ptr_bit): Deleted,
2546 can no longer set this at run time.
2547 * config/sparc/sp64.mt (SIMFILES): Use remote-sim.o now.
2548 (TM_CLIBS): Define to -lm, the simulator uses the sqrt() function.
2549 * config/sparc/tm-sp64.h (FPS_REGNUM, CPS_REGNUM): Define (so
2550 sparc-tdep.c compiles).
2551 (TARGET_PTR_BIT): Must be a constant now, fix at 64.
2555 * config/m68k/{cisco.mt,tm-cisco.h}: New files.
2556 * Makefile.in (ALLPARAM, ALLCONFIG): Add them.
2557 * configure.in: Recognize m68*-cisco*-*.
2559 * Makefile.in (TAGS): Use variables directly, rather than using
2560 find, to locate TM_FILE, XM_FILE, and NAT_FILE. This is faster
2561 and means that these filenames no longer need be unique across all
2562 the config/* directories.
2563 * configure.in: Put the config/*/ into TM_FILE, etc.
2565 * m68k-stub.c (computeSignal): Return SIGFPE, not SIGURG, for chk
2566 and trapv exceptions.
2568 * target.h (struct section_table), objfiles.h (struct obj_section):
2569 Change name of field sec_ptr to the_bfd_section. More mnemonic
2570 and avoids the (sort of, for the ptx compiler) name clash with
2571 the name of the typedef.
2572 * exec.c, xcoffexec.c, sparc-tdep.c, rs6000-nat.c, osfsolib.c,
2573 solib.c, irix5-nat.c, objfiles.c, remote.c: Change users.
2575 * utils.c: Include readline.h.
2576 * Makefile.in (utils.o): Add dependency.
2578 * remote.c (getpkt): Add support for run-length encoding.
2582 * utils.c (prompt_for_continue): Call readline, not gdb_readline.
2586 * dstread.c (record_minimal_symbol): New arg objfile. Pass it to
2587 prim_record_minimal_symbol.
2590 * regex.c (EXTEND_BUFFER): Adjust pointers within buffer by
2591 computing their offset from the start of the old buffer and adding
2592 to the new buffer, rather than by assuming we can add the
2593 difference between the old buffer and the new buffer (it might not
2594 fit in an int). Merge in cosmetic differences from emacs regex.c
2595 version of this macro.
2599 * Makefile.in (install-only): Fix use of program_transform_name.
2603 * printcmd.c: Remove "set print fast-symbolic-addr off" command.
2604 The bug which it worked around was fixed on 25 Feb 94 in coffread.c,
2605 so I'm nuking the command.
2606 * symtab.c (find_addr_symbol): Comment out, no longer used.
2608 * main.c (main): Don't init_source_path for the -cd argument. Now
2609 that source_path doesn't contain the current_directory from when
2610 GDB started up, init_source_path is no longer useful (and is
2611 harmful because it clobbers a source_path set in $HOME/.gdbinit).
2613 * TODO: Remove item about line numbers being off. It is useless
2614 and confusing without a reproducible test case (it mentions
2615 proceed(), but I was able to step through proceed without trouble).
2619 For Sunos 4.x targets, enable gdb to set breakpoints in shared
2620 library functions before the executable is run. Retrieve dynamic
2621 symbols from stripped executables.
2622 * symtab.h (minimal_symbol_type): Add mst_solib_trampoline type.
2623 * parse.c (write_exp_msymbol), symmisc.c (dump_msymbols),
2624 symtab.c (list_symbols): Handle mst_solib_trampoline.
2625 * minsyms.c (lookup_minimal_symbol): Handle mst_solib_trampoline
2626 for all targets, remove IBM6000_TARGET dependencies.
2627 * dbxread.c (read_dbx_dynamic_symtab): New function.
2628 * dbxread.c (dbx_symfile_read): Use it.
2629 * dbxread.c (SET_NAMESTRING): Set namestring to
2630 "<bad string table index>" instead of "foo" if the string index is
2632 * xcoffread.c (read_xcoff_symtab): Use mst_solib_trampoline instead
2634 * symtab.c (list_symbols): Take from_tty as parameter and pass it
2635 to break_command. Handle mst_file_* minimal symbol types.
2636 * config/i386/tm-i386bsd.h: Give just macro name, not args, to #undef.
2640 * c-exp.y(yylex): fix potential memory overflow.
2644 * environ.c (set_in_environ): Eliminate special handling of PATH and
2646 * putenv.c: Removed, conflicts with system declaration of
2647 putenv on RS/6000 running AIX 3.2.5, and above change makes it
2649 * Makefile.in: Change accordingly.
2650 * procfs.c (procfs_create_inferior): Change comment accordingly.
2654 * rs6000-tdep.c: Change value to value_ptr.
2658 * i386m3-nat.c: Include floatformat.h.
2659 (get_i387_state): Use memset not bzero.
2663 * Makefile.in: Enable commented out getopt_h, bfd_h, etc. Change
2664 ieee-float.h to floatformat.h.
2666 * valprint.c (val_print_string): Ignore error if the error
2667 happened after a terminating '\0'.
2669 * c-valprint.c (c_val_print): Never add 1 to return value from
2670 val_print_string; just return what it returns.
2672 * target.h (enum target_signal): Add TARGET_SIGNAL_FIRST, for
2673 looping through all of the enums.
2674 * infrun.c (signals_info): Use it.
2678 * main.c (main): When printing warning about bad baud rate, don't
2679 use warning(); it relies on current_target which isn't set up yet.
2681 * breakpoint.c (_initialize_breakpoint): Update docstring for
2682 tbreak to match what the code actually does. Don't mention tbreak
2683 in docstrings for "enable once" or "enable breakpoints once".
2687 * symfile.h (ADD_PSYMBOL_VT_TO_LIST): Don't put a semicolon after
2688 while (0). That defeats the whole purpose of using do . . . while (0).
2689 * mdebugread.c (parse_partial_symbols): Don't use ?: expression as
2690 list for ADD_PSYMBOL_TO_LIST; the macro takes its address and
2691 using a ?: expression as an lvalue is not portable.
2693 * stabsread.c (define_symbol): If REG_STRUCT_HAS_ADDR, also
2694 convert a LOC_ARG to a LOC_REF_ARG. Update code which combines
2695 'p' and 'r' symbol descriptors into a single symbol to look for a
2697 * README, config/sparc/tm-sparc.h: Update comments.
2701 * mdebugread.c (parse_type): Do not complain for types with
2702 an `indexNil' aux index, these are simply undefined types.
2703 Remove indexNil check from caller of parse_type.
2704 * mdebugread.c (parse_partial_symbols): Do not enter
2705 stGlobal, scCommon symbols into the minimal symbol table, their
2706 value is the size of the common, not its address.
2707 Handle scInit, scFini, scPData and scXData sections.
2708 Use minimal symbol type mst_file_* for stLabel symbols, instead of
2710 Enter stProc symbols into the global_psymbols list once, not into
2711 the static_psymbols_list.
2712 Get rid of dummy psymtab if it is empty, to allow proper detection
2713 of stripped executables.
2714 * mdebugread.c (cross_ref): Allow cross references to Fortran
2719 * stabsread.c (common_block_end, fix_common_block): Stash the
2720 struct pending * in the SYMBOL_TYPE, not the SYMBOL_NAMESPACE, so
2721 as to not assume that a pointer fits in an enum.
2725 * os9kread.c (fill_sym): check compiler verion number for pre-
2727 * os9kread.c (os9k_process_one_symbol): address of symbol is
2728 relative to section not module.
2729 * stabsread.c (define_symbol): add symbol type 's' as local
2731 * remote-os9k.c: add command 'set monitor_log' to turn on or off
2733 * remote-os9k.c: fix bug in delete breakpoint, single step trace.
2734 * remote-os9k.c: fix bug in 'set remotebaud' function.
2735 * remote-os9k.c (rombug_link): minimize checking so to improve
2737 * symfile.c (symbol_file_command): check if failed to link, also make
2738 the command be able to accept more than one filenames.
2739 * target.c (target_link): check if failed to link with rombug.
2740 * config/i386/tm-i386os9k.h : add #define DECR_PC_AFTER_BREAK 0.
2744 * remote-es.c (es1800_child_ops): Don't declare it static.
2748 * config/i386/tm-i386v4.h: Give just macro name, not args, to #undef.
2752 * dbxread.c: New variable lowest_text_address.
2753 (record_minimal_symbol, read_dbx_symtab): Set it.
2754 (read_dbx_symtab): Use lowest_text_address + text_size instead of
2755 end_of_text_address.
2756 * config/gould/tm-pn.h: Add comment regarding END_OF_TEXT_DEFAULT.
2758 * dbxread.c (end_psymtab): Remove old and commented out
2759 capping_global and capping_static. Fix comments regarding
2760 N_SO_ADDRESS_MAYBE_MISSING to match the real name of the macro.
2762 * parser-defs.h: Add "extern" to start of variable declarations so
2763 we don't end up with commons.
2764 * parse.c: Define these variables.
2766 * irix5-nat.c (find_solib): Cast o_path to CORE_ADDR when using it
2771 * alpha-tdep.c: Change value to value_ptr.
2775 * solib.c (elf_locate_base): New function to locate the address
2776 of the dynamic linker's runtime structure in the dynamic info section.
2777 * solib.c (locate_base): Use it instead of iterating over the list
2778 of mapped address segments.
2779 * solib.c (look_for_base, bfd_lookup_symbol): Removed, no longer
2784 * hppa-tdep.c (pc_in_linker_stub): Move decl to beginning of file.
2785 (pc_in_interrupt_handler): New function. Also add PARAM decl.
2786 (find_proc_framesize): Deal with HPUX setting SAVE_SP bit for
2787 signal trampoline and interrupt routines.
2788 (frame_saved_pc): Handle signal trampolines and interrupt routines.
2789 (frame_chain, frame_chain_valid): Likewise.
2790 (hppa_frame_find_saved_regs): Likewise. Also deal with special
2791 saved regs convention for SP.
2793 * tm-hppa[bho].h: FRAME_FIND_SAVED_PC_IN_SIGTRAMP): Define.
2794 (FRAME_BASE_BEFORE_SIGTRAMP): Define.
2795 (FRAME_FIND_SAVED_REGS_IN_SIGTRAMP): Define.
2797 * tm-hppah.h (IN_SIGTRAMP): Define.
2801 * ch-exp.y (match_simple_name_string): Accept '_' as well as an
2802 alphabetic character as the start of a name.
2804 * sparclite/Makefile.in (all install): Build and install aload.
2806 * configure.in: Accept i[34]86-*-*sysv32 because that is what
2807 config.guess and config.sub produce.
2809 * mips-tdep.c: Change value to value_ptr.
2813 * breakpoint.c, breakpoint.h, c-valprint.c, ch-valprint.c,
2814 cp-valprint.c, eval.c, expprint.c, findvar.c, language.c,
2815 objfiles.h, infcmd.c, printcmd.c, stack.c, typeprint.c,
2816 valarith.c, valops.c, valprint.c, value.h, values.c: Replace
2817 value with value_ptr. This is for the ptx compiler.
2818 * objfiles.h, target.h: Don't declare a "sec_ptr" field using a
2820 * symm-nat.c: Add a bunch of stuff for symmetry's ptrace stuff.
2821 #if 0 i386_float_info.
2822 * symm-tdep.c (round): Remove. Also remove sgttyb.
2823 * symm-tdep.c: Remove lots of stuff which duplicates stuff from
2824 i386-tdep.c. Remove register_addr and ptx_coff_regno_to_gdb.
2825 * i386-tdep.c (i386_frame_find_saved_regs): Put in
2826 I386_REGNO_TO_SYMMETRY check in case it is needed for Dynix
2828 * config/i386/nm-symmetry.h: Change KERNEL_U_ADDR. Move
2829 stuff from PTRACE_READ_REGS, PTRACE_WRITE_REGS macros to
2830 symm-nat.c. Define CHILD_WAIT and declare child_wait().
2831 * config/i386/tm-symmetry.h: Remove call function stuff; stuff in
2832 tm-i386v.h is apparently OK.
2833 * config/i386/xm-symmetry.h [_SEQUENT_]: Define HAVE_TERMIOS not
2834 HAVE_TERMIO. Define MEM_FNS_DECLARED, NEED_POSIX_SETPGID, and
2839 * osfsolib.c (xfer_link_map_member): Update to use new
2840 target_read_string interface.
2844 * infrun.c (wait_for_inferior): In checking
2845 remove_breakpoints_on_following_step, check
2846 through_sigtramp_breakpoint as well as step_resume_breakpoint.
2850 * os9kread.c (os9k_process_one_symbol): Rename
2851 VARIABLES_INSIDE_BLOCK to OS9K_VARIABLES_INSIDE_BLOCK.
2852 * symfile.c (symbol_file_command): Check for (CORE_ADDR)-1, not
2853 (CORE_ADDR)0, from target_link, since that is what it uses.
2854 Process name at end, not during parsing (like we did before Kung's
2855 change), so that -readnow and -mapped can appear anywhere.
2856 Make text_relocation a local variable.
2857 * config/i386/i386os9k.mt: Fix comment.
2858 * Makefile.in (ALLDEPFILES): Add remote-os9k.c.
2859 * os9kread.c: Put "comments" after #endif inside /* */.
2860 * stabsread.h: Add os9k_stabs variable.
2861 * stabsread.c (start_stabs), os9kread.c (os9k_process_one_symbol):
2863 * stabsread.c (define_symbol): If os9k_stabs, put a 'V' symbol
2864 descriptor in global_symbols not local_symbols.
2865 (read_type): If os9k_stabs, accept 'c', 'i', and 'b' type
2867 (read_type): If os9k_stabs, accept function parameters after 'f'
2869 (read_array_type): If os9k_stabs, don't expect index type and
2870 expect lower and upper to be separated by ',' not ';'.
2871 (read_enum_type): If os9k_stabs, read a number before the first
2872 enumeration constant.
2873 (os9k_init_type_vector): New function.
2874 (dbx_lookup_type): Call it when starting new type vector.
2875 * config/i386/tm-i386os9k.h: Define BELIEVE_PCC_PROMOTION.
2876 * (os9k_process_one_symbol): Call define_symbol not os9k_define_symbol.
2877 * os9kstab.c: Removed.
2878 * Makefile.in: Update accordingly.
2879 * objfiles.c (objfile_relocate_data): Removed.
2880 * remote-os9k.c (rombug_wait): Call objfile_relocate
2881 not objfile_relocate_data.
2882 * objfiles.h, objfiles.c: Remove find_pc_objfile.
2883 * remote-os9k.c (rombug_wait): Call find_pc_section not
2885 * main.c (quit_command): Check inferior_pid; revert Kung change.
2886 * remote-os9k.c (rombug_create_inferior): Set inferior_pid.
2890 * os9kread.c: New file to read os9000 style symbo table.
2891 * os9kstab.c: new file to read os9000 style stabs.
2892 * remote-os9k.c: remote protocol talking to os9000 rombug monitor.
2893 * objfiles.c (find_pc_objfile): new function to search objfile
2895 * objfiles.c (objfile_relocate_data): new function to relocate
2896 data symbols in symbol table.
2897 * objfiles.h: Add two aux fields in struct objfile to handle
2898 multiple symbol table files situation like in os9000.
2899 * symfile.c: Change so 'symbol-file' command can handle multiple
2900 files. Also call target_link() to get relocation infos.
2901 * target.c (target_link): new function to get relocation info when
2902 a symbol file is requested to load.
2903 * main.c (quit_command): take out 'inferior_pid != 0' condition,
2904 because in cross mode there's no inferior pid, bit they need to
2906 Makefile.in: add os9kread.c os9kstab.c and .o's.
2907 configure.in: add i386os9k target.
2908 config/i386/i386os9k.mt: new add.
2909 config/i386/tm-i386os9k.h: new add.
2913 * config/sparc/tm-sun4sol2.h (IN_SIGTRAMP): Handle ucbsigvechandler.
2914 * sparc-tdep.c (sparc_frame_saved_pc): Handle ucbsigvechandler.
2918 * target.c, target.h (target_read_string): Provide error detection to
2919 caller. Put string in malloc'd space, so caller need not impose
2921 * solib.c (find_solib): Update to use new interface.
2922 * irix5-nat.c (find_solib): Read o_path from inferior
2923 (clear_solib): Free storage for o_path.
2924 * valprint.c (val_print_string): Add comments.
2928 * symtab.c (decode_line_1): Handle the case when skip_quoted does not
2933 * value.h (struct value): Add modifiable field.
2934 * values.c (allocate_value, record_latest_value, value_copy): Set it.
2935 (record_latest_value): Don't mess with VALUE_LVAL of value.
2936 * valops.c (value_assign): Check it. Reword existing error
2937 message on not_lval.
2939 * mips-tdep.c (mips_step_skips_delay), config/mips/tm-mips.h
2940 (STEP_SKIPS_DELAY): Added.
2941 * infrun.c (proceed) [STEP_SKIPS_DELAY]: Check for a breakpoint in
2944 * valprint.c (val_print_string): If errcode is set, always print
2945 an error, regardless of force_ellipsis. In the non-EIO case,
2946 just print the error message rather than calling error(). Don't
2947 access *(bufptr-1) if bufptr points to the start of the buffer.
2948 When looking for '\0', don't increment bufptr and addr if bufptr
2949 started out already at limit. If an error happens on fetching the
2950 first character, don't print the string.
2954 * config/m68k/tm-apollo68b.h: Remove HAVE_68881 define; it is
2957 * i387-tdep.c, i386-tdep.c i386v-nat.c, i386aix-nat.c,
2958 i386m3-nat.c, config/m68k/tm-m68k.h, i960-tdep.c
2959 config/i960/tm-i960.h, remote-nindy.c, config/m88k/tm-m88k.h,
2960 m88k-tdep.c: Use floatformat.h instead of ieee-float.h.
2961 * sparc-tdep.c: Remove now-obsolete ieee-float.h stuff
2962 * findvar.c: Update comment regarding ieee-float.h.
2966 * config/i386/tm-i386v4.h (I386V4_SIGTRAMP_SAVED_PC, IN_SIGTRAMP,
2967 FRAME_CHAIN, FRAMELESS_FUNCTION_INVOCATION, FRAME_SAVED_PC):
2968 Define to make backtracing through the various sigtramp handlers
2970 * i386-tdep.c (i386v4_sigtramp_saved_pc): New routine to fetch
2971 the saved pc from ucontext on the stack for SVR4 signal handling.
2975 * remote.c, remote-mon.c, remote-utils.c, remote-utils.h,
2976 target.h, remote-es.c, remote-nindy.c: Don't set baud rate if
2977 baud_rate is -1. Remove sr_get_baud_rate and sr_set_baud_rate;
2978 just use the global variable itself. When printing baud rate,
2979 don't print a baud rate if baud_rate is -1.
2981 * coffread.c (read_coff_symtab): Pass mst_file_* to
2982 record_minimal_symbol for C_STAT symbols. Put C_EXT and C_STAT
2983 symbols in the minimal symbols regardless of SDB_TYPE.
2987 * breakpoint.h (enum bptype): New type bp_through_sigtramp.
2988 (bpstat_what_main_action): New code BPSTAT_WHAT_THROUGH_SIGTRAMP.
2989 * breakpoint.c (bpstat_what): Return BPSTAT_WHAT_THROUGH_SIGTRAMP
2990 if we hit a bp_through_sigtramp breakpoint. Remove kludge which
2991 ignored bs->stop for a bp_step_resume breakpoint.
2992 * infrun.c (wait_for_inferior): Make a through_sigtramp_breakpoint
2993 which performs one (the check_sigtramp2 one) of the functions
2994 which had been handled by the step_resume_breakpoint. For each
2995 use of the step_resume_breakpoint, make it still use the
2996 step_resume_breakpoint, use the through_sigtramp_breakpoint, or
2998 Deal with BPSTAT_WHAT_THROUGH_SIGTRAMP return from bpstat_what.
2999 When setting the frame address of the step resume breakpoint, set
3000 it to the address for frame *before* the call instruction is
3001 executed, not after.
3003 * mips-tdep.c (mips_print_register): Print integers using
3004 print_scalar_formatted rather than duplicating all the
3005 CC_HAS_LONG_LONG and so on.
3006 (mips_push_dummy_frame): Use read_register_gen rather than using
3007 read_register and then putting it back in target format with
3008 store_unsigned_integer. If registers are more than 4 bytes, give
3009 an error rather than have some registers overwrite other
3011 #if 0 unused include of opcode/mips.h.
3013 * symfile.h: Don't declare arguments for coff_getfilename.
3015 * defs.h: Revert Kung change regarding FORCE_LONG_LONG.
3019 * configure.in (hppa*-*-osf*): New configuration.
3020 * config/pa/hppaosf.mt: New target makefile fragment.
3021 * config/pa/tm-hppao.h: New target include file.
3025 * exec.c (print_section_info): Print entry point for exec_bfd only.
3026 * ser-unix.c (wait_for): Fix typo in HAVE_TERMIO case.
3027 * dwarfread.c: Remove second inclusion of <sys/types.h>, which
3028 causes problems if <sys/types.h> has no multiple inclusion protection.
3032 * tm-hppa.h (CALL_DUMMY): Add two NOP instructions to the end of
3033 the call dummy to avoid kernel bugs in HPUX, BSD, and OSF1.
3034 (CALL_DUMMY_LENGTH): Changed accordingly.
3036 Wed Feb 23 16:21:25 1994 Stu Grossman (grossman at cygnus.com)
3038 * sparc-stub.c (trap_low): Make trap handler work for arbitrary
3039 numbers of register windows.
3041 * sparclite/hello.c: Add factorial function for testing.
3042 * salib.c: Use macros instead of constants for I/O addresses to
3043 make 931 support easier.
3044 * sparclite.h: Change constraint for LOC to "rJ" to force use of
3045 register in sta/lda instructions.
3049 * dbxread.c (process_one_symbol): Set
3050 block_address_function_relative for COFF like we do for ELF and SOM.
3054 * mdebugread.c (new_psymtab): Pass in section_offsets and set
3056 * mdebugread.c (handle_psymbol_enumerators): New function to enter
3057 the enumerators of an ecoff enum into the partial symbol table.
3058 * mdebugread.c (parse_partial_symbols): Call it.
3059 * symfile.c (reread_symbols): Initialize objfile->*_psymbols.next.
3060 * symmisc.c (dump_psymtab): Fix typo, clean up output of section
3061 offsets. Cast psymtab->read_symtab to PTR before passing it to
3063 * i386-tdep.c (i386_skip_prologue): Skip over instructions that
3064 set up the global offset table pointer in pic compiled code.
3065 * config/mips/tm-mips.h (FIX_CALL_DUMMY): For big endian targets,
3066 error() on TYPE_CODE_FLT arguments whose size is greater than 8,
3067 swap all other TYPE_CODE_FLT arguments as mips_push_arguments
3068 ensures that floats are promoted to doubles before they are pushed
3071 Fri Feb 18 23:12:59 1994 Stu Grossman (grossman at cygnus.com)
3073 * sparclite/Makefile.in, sparclite/salib.c, sparclite/sparclite.h:
3074 Fixup cache_on and flush_i_cache so that they work for both the
3075 930 and 932 processors. Rewrite most low level funcs (uart
3076 access & cache stuff) to use new ASI access macros in sparclite.h.
3077 Also make it easy to access second serial port.
3081 * hp300ux-nat.c: Don't incloude <sys/dir.h>, <sys/ioctl.h>, or
3082 <sys/stat.h>; not needed.
3086 * stack.c (print_frame_info): In "pathological" case, don't
3087 distrust the line number information.
3091 * mips-tdep.c (mips_print_register): handle 64 bits register.
3092 * valprint.c (print_longest): fix a bug in printing 64 bits value.
3098 * Makefile.in (install): Do the sed for program_transform_name
3099 ourselves instead of worrying about INSTALL_XFORM. This enables
3100 users to override INSTALL_PROGRAM in the standard way.
3102 * Makefile.in (c-exp.tab.o, ch-exp.tab.o, m2-exp.tab.o): Don't
3103 depend on Makefile.in.
3105 * defs.h, valprint.c: Make longest_to_int a function not a macro.
3106 Only test against INT_MIN if a LONGEST is bigger than an int.
3108 * README: Change GhostScript to Ghostscript.
3112 * config/rs6000/{tm-rs6000lynx.h,nm-rs6000lynx.h,xm-rs6000lynx.h}:
3113 Rename to tm-rs6000ly.h, nm-rs6000ly.h, xm-rs6000ly.h for 14
3114 character file names.
3115 * Makefile.in (ALLPARAM): Add these files.
3117 * config/mips/littlemips64.mt: Rename to mipsel64.mt for 14
3118 character file names.
3119 * Makefile.in: Add Kung's new mips64 files.
3123 * configure.in: add mips64-*-elf, mips64-*-ecoff, mips64el-*-elf,
3124 mips64el-*-ecoff and mips64-big-*.
3125 * defs.h: get rid of FORCE_LONG_LONG.
3126 * mips-tdep.c (mips_find_saved_regs): add sd and sdc1 instruction
3127 parsing. Change register size to be MIPS_REGSIZE.
3131 * corelow.c, exec.c, irix5-nat.c, mipsread.c, objfiles.c,
3132 osfsolib.c, rs6000-nat.c, solib.c, symfile.c, utils.c,
3133 xcoffexec.c: Use bfd_get_error and bfd_set_error and new error names.
3137 * remote-hms.c (readchar, hms_open, hms_fetch_register): Made more robust.
3138 (remove_commands, add_commands): Add/remove hms-drain when target
3141 Fri Feb 11 16:11:38 1994 Stu Grossman (grossman at cygnus.com)
3143 * configure.in: Add Lynx/rs6000 support.
3144 * lynx-nat.c: Clean up some Sparc stuff. Clean up ptrace error
3145 messages. Add rs6000 support. Don't try to modify unwritable
3147 * rs6000-nat.c: Move lots of native dependent stuff (like core
3148 file support) from rs6000-tdep.c & xcoffexec.c to here.
3149 * rs6000-tdep.c: Move native dependent stuff to nat.c.
3150 * xcoffexec.c: Move native dependent stuff to nat.c.
3151 * config/rs6000/nm-rs6000.h: Move defs of SOLIB_* macros to here
3153 * config/rs6000/tm-rs6000.h: Remove defs of SOLIB_* funcs, cuz they're
3155 * config/rs6000/tm-rs6000lynx.h, config/rs6000/xm-rs6000lynx.h:
3156 New files to support Lynx/rs6000.
3160 * README: Remove note about gcc warnings on alpha, these should be
3162 * c-exp.y, ch-exp.y, core.c, corelow.c, eval.c, fork-child.c,
3163 m2-exp.y, minsyms.c, nlmread.c, parse.c, putenv.c, regex.c
3164 remote-utils.c, stabsread.c: Include <string.h>.
3165 * regex.c: Include "defs.h", change re_comp argument to const char *.
3166 * infptrace.c (fetch_register, store_inferior_registers): Change
3167 regaddr to type CORE_ADDR.
3168 * config/alpha/alpha-nw.mt, config/alpha/alpha-osf1.mt (MT_CFLAGS):
3169 Remove, no longer necessary now that we use bfd_vma for a CORE_ADDR.
3173 * symtab.h: Always define BYTE_BITFIELD to nothing.
3177 * config/m68k/{m68k-em.mt,tm-m68k-em.h}: Remove; no longer used.
3178 * configure.in: Remove comment about m68k-em.mt.
3179 * Makefile.in: Remove references.
3183 * defs.h [BFD64]: Use BFD_HOST_64_BIT, not nonexistent
3188 * target.c (target_preopen): If target_kill doesn't remove the
3189 target from the stack, use pop_target to do it.
3191 * coffread.c (process_coff_symbol, case C_TPDEF): Don't set name
3192 of TYPE_CODE_PTR or TYPE_CODE_FUNC types. This parallels similar
3193 changes to stabsread.c from summer 1993.
3195 * remote-udi.c (udi_files_info): If prog_name is NULL, just skip
3196 printing the program, rather than passing NULL to printf.
3197 (udi_detach): Set udi_session_id to -1 so that udi_close doesn't
3198 try to call UDIDisconnect again. Print better message.
3199 (udi_kill): Just call UDIDisconnect ourselves, rather than doing
3201 (udi_create_inferior): If udi_session_id is negative, open a new
3202 TIP rather than giving an error.
3204 * config/mips/mipsm3.mh, config/i386/i386m3.mh,
3205 config/ns32k/ns32km3.mh: Define NAT_FILE.
3206 * config/nm-m3.h: Change guard from _OS_MACH3_H_ and _OS_MACH3_H
3207 (it was inconsistent and namespace-wrong) to NM_M3_H.
3208 * m3-nat.c (mach_really_wait): Change parameter name to ourstatus.
3209 (m3_open): New function.
3211 * TODO: Update Mach section.
3213 * Makefile.in: Remove "rapp" stuff; it is superseded by gdbserver.
3217 * printcmd.c (printf_command): Add missing single-letter
3218 backslash-escape sequences, and improve error message.
3222 * corelow.c (solib_add_stub, core_open): Pass address of from_tty
3223 rather than trying to shove an int into a pointer and back out
3224 again. This avoids compiler warnings.
3226 * defs.h (alloca): Declare as void *, not char *, on hpux.
3227 Don't prototype it, just declare the return type.
3231 * config/i386/tm-sun386.h, config/i386/tm-symmetry.h
3232 (REGISTER_CONVERT_TO_RAW): Add missing backslash.
3236 * remote-mips.c (mips_fetch_registers): If regno is FP_REGNUM or
3237 ZERO_REGNUM, just read it as zero without talking to the board.
3239 * config/i386/tm-i386aix.h (REGISTER_CONVERT_TO_RAW): Add missing
3241 * i386-tdep.c (i386_extract_return_value): Pass TYPE_LENGTH (type)
3242 to store_floating, not nonexistent variable len.
3244 * remote-mips.c (mips_insert_breakpoint, mips_remove_breakpoint):
3246 (mips_store_word): Change calling convention to return errors, and
3247 to provide old contents if the caller wants it.
3248 (mips_xfer_memory): Deal with errors from mips_store_word.
3249 * config/mips/tm-idt.h, config/mips/tm-idtl.h: Remove BREAKPOINT
3250 define now that remote-mips.c doesn't use BREAKPOINT.
3252 * remote-mips.c (mips_create_inferior): Call warning if arguments
3253 specified, and then execute "set args" command. Call error, not
3254 mips_error, if executable file not specified.
3256 * remote-e7000.c: Replace "snoop" command (e7000_noecho) with
3259 * config/rs6000/tm-rs6000.h (STORE_STRUCT_RETURN): Don't cast
3264 * value.h (print_longest): Rename "value" to "val" in prototype
3265 declaration because some compilers don't like arguments whose
3266 names are the same as types.
3267 * remote.c (remote_xfer_memory): Cast "myaddr" to unsigned char *
3268 before passing it to remote_*_bytes.
3272 * h8500-tdep.c (saved_pc_after_call): The size of the
3273 pc is memory model dependent. (segmented_command,
3274 unsegmented_command, _initialize_h8500_tdep): New commands to
3275 change memory model.
3276 * remote-e7000.c (_initialize_remote_e7000): Change name of snoop
3278 * remote-hms.c (hms_load): Remove breakpoints when loaded.
3279 (hms_wait): Use new status structure
3280 (hms_open): Push the target here. (hms_before_main_loop): Not
3281 here. (supply_val, hms_fetch_register, hms_store_register): Cope
3282 with H8/500 names too. (hms_fetch_register): Take out REGISTER_TYPE.
3283 * sh-tdep.c (show_regs, initialize_sh_tdep): New command to print
3284 all registers in a compact way.
3288 * config/rs6000/tm-rs6000.h: Declare rs6000_struct_return_address
3289 as CORE_ADDR to match definition in rs6000-tdep.c.
3293 * dwarfread.c (process_dies): Skip nested TAG_compile_unit DIEs.
3294 * dwarfread.c (add_partial_symbol): Do not enter opaque aggregate
3295 definitions into the psymtab.
3299 * m68k-stub.c: Treat mc68332 like mc68020 most places. Provide
3300 a special exceptionSize for the 68332.
3302 * remote-udi.c (udi_attach): If no arguments, print error.
3306 * Makefile.in (VERSION): Bump to 4.12.1
3307 * NEWS, README: Update to match 4.12 release.
3311 * command.c (empty_sfunc): New function.
3312 (add_set_cmd): Use it instead of not_just_help_class_command.
3313 (not_just_help_class_command): Change calling convention back to
3314 what it was before yesterday's change.
3316 * stabsread.c (read_sun_builtin_type): Skip the semicolon at the end
3317 of the type if present.
3321 * printcmd.c (decode_format): Don't blithely set the size for
3322 an address to 'w'. Make it 'g' or 'h', depending on TARGET_PTR_BIT.
3324 * defs.h: Just typedef CORE_ADDR to bfd_vma. Include bfd.h.
3325 If BFD64, make a LONGEST a BFD_HOST_64_BIT.
3326 * defs.h (longest_to_int): Don't depend on CC_HAS_LONG_LONG; instead
3327 always just check against INT_MIN and INT_MAX (this also fixes things
3328 if sizeof (long) > sizeof (int), e.g. Alpha).
3329 * config/pa/tm-hppa.h, config/i386/sun386.h, config/rs6000/tm-rs6000.h:
3330 Don't define LONGEST or BUILTIN_TYPE_LONGEST.
3331 * gdbtypes.h: Remove BUILTIN_TYPE_LONGEST and
3332 BUILTIN_TYPE_UNSIGNED_LONGEST.
3333 * language.h, c-lang.c, ch-lang.c, m2-lang.c, language.c: Remove
3334 longest_int and longest_unsigned_int.
3335 * value.h (struct value): Just align to LONGEST, rather than worrying
3336 about CC_HAS_LONG_LONG.
3337 * valarith.c (value_binop): Figure out type ourself based on
3338 sizeof (LONGEST) rather than relying on BUILTIN_TYPE_LONGEST. The
3339 point is that we don't depend on CC_HAS_LONG_LONG anymore.
3340 * valprint.c (val_print_type_code_int): Just call
3341 extract_unsigned_integer directly, rather than going through
3343 * printcmd.c (decode_format): Remove code which would sometimes
3344 change 'g' size to 'w' for integers. print_scalar_formatted handles
3345 printing huge integers well enough, thank you.
3347 * command.c (add_set_cmd, not_just_help_class_command): Change
3348 to make this the sfunc, not cfunc, since that is how we call it.
3349 * command.h: Comment difference between sfunc and cfunc.
3350 * demangle.c (set_demangling_command): Add third arg since that
3351 is how it is called.
3352 (_initialize_demangler): Use sfunc, not cfunc, for
3353 set_demangling_command, since that is how it is called.
3354 Remove show_demangling_command; it has no effect.
3356 * command.c (shell_escape): Report errors correctly (with error
3357 message from strerror).
3361 * xcoffread.c (read_xcoff_symtab): Change CSECT_LEN to use
3362 x_scnlen.l rather than x_scnlen to match corresponding change in
3367 * gdbtypes.h, ch-typeprint.c, ch-valprint.c:
3368 Change comments regarding TYPE_CODE_BOOL.
3369 * language.c (boolean_type): Always return 1 for TYPE_CODE_BOOL,
3370 regardless of the language.
3371 (value_true): Just call value_logical_not regardless of language.
3372 * coffread.c (coff_read_enum_type), stabsread.c (read_enum_type):
3373 Remove #if 0'd code which makes some enums TYPE_CODE_BOOL.
3374 * language.h: Improve comment for la_builtin_type_vector.
3375 * m2-lang.c (_initialize_m2_language): Don't add any fields to
3376 builtin_type_m2_bool.
3380 * config/m88k/{tm-delta88.h,tm-delta88v4.h}, m88k-tdep.c:
3381 Define IN_SIGTRAMP and backtrace correctly through signal handlers.
3385 * procfs.c (wait_fd): Handle EINTR error return from PIOCWSTOP ioctl
3386 by restarting the ioctl.
3390 * target.h (target_wait): Add comment about calling
3391 return_to_top_level.
3395 * coffread.c (read_one_sym): bfd_coff_swap_aux_in now takes
3396 additional arguments.
3397 * xcoffread.c (read_xcoff_symtab, read_symbol_lineno): Likewise.
3399 Mon Jan 31 16:10:41 1994 Stu Grossman (grossman at cygnus.com)
3401 * sparc-stub.c: Remove unnecessary #include of memory.h.
3405 * mips-tdep.c: Remove code which sets saved_regs from
3406 init_extra_frame_info and put it in new function mips_find_saved_regs.
3407 (READ_FRAME_REG): Remove macro and replace uses with the expansion.
3408 * mips-tdep.c, config/mips/tm-mips.h: When examining ->saved_regs,
3409 check if it is NULL and call mips_find_saved_regs if so.
3411 * remote-mips.c: Use unfiltered, not filtered, output most places.
3413 * blockframe.c (get_prev_frame_info): Detect and stop an infinite
3414 backtrace. Revise comments.
3418 * mdebugread.c (parse_procedure): Remove _sigtramp kludges for
3419 alpha and irix. The _sigtramp case has to be handled properly
3420 in the tdep files if we have no ecoff debugging info.
3421 * alpha-tdep.c (alpha_frame_saved_pc, alpha_frame_chain),
3422 mips-tdep.c (mips_frame_saved_pc): Handle signal handler frames
3423 without PC_REGNUM kludge.
3424 * mdebugread.c (fixup_sigtramp), mips-tdep.c (read_next_frame_reg):
3425 Clean up handling of mips sigtramp frames, improve comments.
3429 * paread.c (read_unwind_info): Fix typo.
3431 * paread.c (pa_symtab_read): Update the "check_strange_names"
3432 filter to match GCC's current output. Filter out section symbols
3433 (which the HP linker sometimes puts in the wrong place).
3437 * serial.h (SERIAL_SET_TTY_STATE): Comment return value.
3439 * Makefile.in (TAGS): Just echo one line, rather than the whole thing.
3441 * Makefile.in: Remove all references to sparcly-nat.c.
3443 * Makefile.in (HFILES_NO_SRCDIR): Include dcache.h remote-utils.h
3444 remote-sim.h directly, rather than via $(remote_utils_h). This avoids
3445 duplicating serial.h and target.h.
3447 * Makefile.in: Don't set M_INSTALL and M_UNINSTALL. These variables
3448 are not used anywhere (a 5 Oct 1993 change removed the uses).
3450 * config/m68k/monitor.mt (TDEPFILE): Add remote-es.o.
3451 * config/m68k/es1800.mt: Add comment.
3452 * remote-es.c: Extensive changes to update to current conventions.
3454 * ser-unix.c (wait_for, hardwire_readchar) [HAVE_TERMIO, HAVE_TERMIOS]:
3455 If the timeout is too big to fit in c_cc[VTIME], then do multiple reads
3456 to achieve the desired timeout.
3457 * serial.h (serial_t): Add field timeout_remaining.
3461 * c-exp.y (yylex): Reenable nested type code.
3465 * a29k-tdep.c (examine_tag): Add comment regarding argcount.
3467 * remote-mips.c (mips_ops): Fix docstring.
3469 * remote-bug.c (bug_ops): Remove spurious newline from docstring.
3471 * config/m68k/tm-monitor.h: Changes to bring this into accordance
3472 with the old tm-m68k-em.h:
3473 (GDBINIT_FILENAME, DEFAULT_PROMPT): Remove.
3474 (HAVE_68881): Don't undefine; HAVE_68881 is obsolete.
3475 (REGISTER_NAMES): Don't muck with it; what tm-m68k.h has is fine.
3476 Add FIXME regarding GET_LONGJMP_TARGET.
3478 * remote-udi.c (udi_close, udi_detach, udi_kill): Add comments.
3479 * infptrace.c (kill_inferior): Add comments.
3480 * main.c (quit_command): Call target_close after we kill or
3482 * remote-udi.c (udi_close): Don't error() if QUITTING.
3486 * configure.in: Make m68k-coff and aout add monitor support in
3487 addition to the standard serial support.
3491 * mdebugread.c (psymtab_to_symtab_1): Don't complain on stLabel with
3496 * config/pa/tm-hppa.h: Define macro SMASH_TEXT_ADDRESS.
3497 * elfread.c (record_minimal_symbol_and_info),
3498 dwarfread.c (process_dies), paread.c (pa_symtab_read): Use it.
3502 * i386-stub.c: Add ".text" right before "mem_fault:".
3504 * main.c (baud_rate): Add FIXME comment about printing -1 value.
3506 * remote-utils.c (usage): Fix message to be accurate and conform
3507 more closely to normal conventions.
3509 * remote-utils.c (gr_files_info): Have the exec_bfd test control
3510 whether to show information about exec_bfd, and not control whether
3511 to show information about device and speed.
3513 * remote-utils.c (gr_open): If sr_get_device returns NULL, give
3514 usage message, don't dump core.
3516 * remote-bug.c (bug_write_memory): Use alloca, not GCC extension
3517 for variable size array.
3518 (bug_fetch_register, bug_store_register): Rename "value" to
3519 "fpreg_buf" because some compilers don't like variables whose
3520 names are the same as types.
3521 (bug_store_register): Use a cast when converting char * to
3524 * symmisc.c (maintenance_print_symbols): Don't refer to the name
3525 of the command in error message (the text was referring to the old
3526 name of the command).
3528 * symmisc.c (dump_symtab): Fix args to fprintf_filtered.
3530 * c-typeprint.c (c_type_print_base): Have SHOW == 0 mean to print
3531 full details on structure elements without names. This partially
3532 reverts the changes of 1 Jul 1993 and 31 Aug 1993; I think this aspect
3533 of those changes was accidental.
3535 * stack.c (parse_frame_specification): If SETUP_ARBITRARY_FRAME is
3536 defined, make it an error to specify a single argument which is not
3539 * Makefile.in (version.c), main.c (print_gdb_version): Use
3540 host_alias and target_alias, not host_canonical and
3541 target_canonical, to print configuration.
3545 * parse.c (write_exp_msymbol): Use new type msymbol_addr_type instead
3546 of builtin_type_long. It is necessary to get a type which is
3547 TARGET_PTR_BIT bits in size; builtin_type_long might not be big enough.
3549 Fix many sins which will come up in 32 bit x 64 bit GDB, and
3550 various miscellaneous things discovered in the process:
3551 * printcmd.c, defs.h (print_address_numeric): New function.
3552 * c-valprint.c (c_val_print), ch-valprint.c (chill_val_print)
3553 breakpoint.c (describe_other_breakpoints, breakpoint_1, mention),
3554 cp-valprint.c (cplus_print_value), infcmd.c (jump_command),
3555 printcmd.c, stack.c, symfile.c, symmisc.c, valprint.c:
3557 * utils.c, defs.h (gdb_print_address): New function.
3558 * expprint (dump_expression), gdbtypes.h: Use it.
3559 * breakpoint.c (describe_other_breakpoints),
3560 symmisc.c (dump_symtab, print_symbol):
3561 Use filtered not unfiltered I/O.
3562 (remove_breakpoints): Remove BREAKPOINT_DEBUG code. Might as well
3563 just run gdb under a debugger for this (and it had problems with
3564 printing addresses, how to print b->shadow, etc.).
3565 * buildsym.c (make_blockvector), core.c (memory_error),
3566 exec.c (print_section_info), maint.c (print_section_table),
3567 mdebugread.c (parse_procedure), solib.c, source.c, symfile.c,
3568 symmisc.c, symtab.c, valops.c, valprint.c, xcoffexec.c:
3569 Add comments saying code is broken. Marked with "FIXME-32x64".
3570 * dbxread.c (process_one_symbol), partial-stab.h (default),
3571 remote-vx.c (vx_run_files_info):
3572 Don't cast int being passed to local_hex_string.
3573 * symmisc.c (print_symbol): Don't cast long being passed to %lx.
3574 * symtab.h (general_symbol_info): Add comment about SYMBOL_VALUE
3576 * symmisc.c (print_symbol): Print "offset" in message for LOC_ARG
3578 * printcmd.c (print_address): Remove #if 0 code with ADDR_BITS_REMOVE.
3579 * source.c: Include <sys/types.h> regardless of USG.
3583 * valops.c (value_assign): Set `type' after coercing toval.
3584 * c-valprint.c (c_val_print), ch-valprint.c (chill_val_print):
3585 Use extract_unsigned_integer to get the address of a reference.
3589 * stabsread.c (STABS_CONTINUE, error_type), partial-stab.h:
3590 AIX can use ? instead of \ for continuation. Deal with it.
3592 * paread.c (read_unwind_info): Just assign to objfile->obj_private,
3593 not OBJ_UNWIND_INFO. Assigning to a cast is a GCC-ism which
3594 the HP compiler in ANSI mode doesn't like.
3596 * main.c: When defaulting HAVE_SIGSETMASK based on USG, just do it
3597 based on USG, rather than defining HAVE_SIGSETMASK to an
3598 expression containing defined. Having a macro used in #if expand
3599 to an expression containing "defined" is undefined according to
3600 ANSI, and the HP compiler in ANSI mode doesn't do what we wanted
3605 * sparc-nat.c (fetch_inferior_registers, store_inferior_registers):
3606 Clean up the changes of 11 Jan, as recommended by Peter Schauer.
3610 * ch-exp.y (match_string_literal): Allow a zero-length string.
3611 * ch-lang.c (chill_printstr): Don't print zero-length string funny.
3615 * i386aix-nat.c (i386_float_info): Reverse order of registers before
3616 passing them to print_387_status.
3617 (print_387_status): Don't subtract top from 7 before using it.
3618 * i387-tdep.c: Remove comment about AIX wanting "top" subtracted
3619 from 7; the above explains it.
3623 * mips-tdep.c (init_extra_frame_info): Use frame relative stack
3624 pointer value when fixing up the frame at the start of a function.
3626 Sat Jan 22 12:29:13 1994 Stu Grossman (grossman at cygnus.com)
3628 * lynx-nat.c (fetch_core_registers): Load the I & L regs for the
3629 Sparc from the stack.
3633 * remote-mips.c (mips_initialize): Clear mips_initializing via
3634 cleanup chain, not directly.
3636 * ser-unix.c (wait_for) [HAVE_TERMIO, HAVE_TERMIOS]: Make a timeout
3637 of -1 mean forever, like in the HAVE_SGTTY case. Warn if we are
3638 munging the timeout due to the limited range of c_cc[VTIME].
3640 * fork-child.c, inferior.h (fork_inferior): New argument shell_file.
3641 * procfs.c (procfs_create_inferior), inftarg.c (child_create_inferior),
3642 m3-nat.c (m3_create_inferior): Pass it.
3643 * procfs.c: Remove ptrace function. It was declared in a way which
3644 conflicted with the prototype in unistd.h on Solaris.
3648 * sparc-tdep.c (frame_saved_pc): Get the pc from the saved pc
3649 in the sigcontext if it is a signal trampoline frame.
3650 * config/sparc/tm-sun4sol2.h (IN_SIGTRAMP, SIGCONTEXT_PC_OFFSET):
3651 Define for Solaris2.
3653 Sat Jan 22 00:34:47 1994 Stu Grossman (grossman at cygnus.com)
3655 * sparc-tdep.c, lynx-nat.c, config/sparc/tm-sparc.h,
3656 config/sparc/tm-sparclynx.h: Move defs of FRAME_SAVED_I0/L0 to
3657 tm-sparc.h so they can be overridden if necessary.
3659 Fri Jan 21 17:49:28 1994 Stu Grossman (grossman at cygnus.com)
3661 * lynx-nat.c: Add Sparc support.
3662 * sparcly-nat.c: Remove. It's useless.
3663 * config/sparc/nm-sparclynx.h: Rewrite.
3664 * config/sparc/sparclynx.mh (NATDEPFILES): Replace sparcly-nat.o
3666 * config/sparc/tm-sparclynx.h: Rewrite.
3670 * rs6000-pinsn.c: Use the new disassembler in the opcodes
3671 directory. Old code was discarded, since the new opcode table has
3676 * Makefile.in (realclean): Remove info files per make-stds.texi.
3680 * dbxread.c (end_psymtab): Only patch psymtab textlow and texthigh
3681 if N_SO_ADDRESS_MAYBE_MISSING is defined.
3682 * config/sparc/tm-sun4sol2.h: Define it.
3686 * printcmd.c (print_address_symbolic): Unconditionally use msymbol
3687 if we did not find a symbol.
3691 * infptrace.c (child_xfer_memory): Only use if CHILD_XFER_MEMORY
3694 * hppab-nat.c (call_ptrace): Delete redundant function.
3695 (kill_inferior, attach, detach, child_resume): Likewise.
3696 (child_xfer_memory): Likewise.
3698 * hppah-nat.c (call_ptrace): Delete redundant function.
3699 (kill_inferior, attach, detach, child_resume): Likewise.
3701 * config/pa/hppabsd.mh (NATDEPFILES): Add infptrace.o.
3703 * config/pa/hppahpux.mh (NATDEPFILES): Add infptrace.o.
3705 * config/pa/nm-hppab.h (FETCH_INFERIOR_REGISTERS): Define.
3707 * config/pa/nm-hppah.h (FETCH_INFERIOR_REGISTERS): define.
3708 (CHILD_XFER_MEMORY): Define.
3709 (PT_*): Define so that generic infptrace.c code can be used.
3713 * xcoffread.c (xcoff_symfile_read): Make second parameter a
3714 struct section_offsets *, not a (nonexistent) struct section_offset *.
3716 * xcoffread.c (read_xcoff_symtab): Make main_aux just a union
3717 internal_xcoff_symtab, not an array of one of them. Change lots of
3718 "main_aux" to "&main_aux" and so on.
3720 * coffread.c, xcoffread.c: Include <coff/internal.h>
3725 * coffread.c (coff_getfilename): Make it not static.
3727 * xcoffread.c (read_xcoff_symtab): complain() not abort().
3729 * xcoffread.c (struct coff_symbol): Rename c_nsyms to c_naux (removes
3730 a completely gratuitous difference between xcoffread.c and coffread.c).
3734 * infrun.c (wait_for_inferior): Don't set frame for
3735 step_resume_breakpoint for IN_SIGTRAMP cases.
3737 * infrun.c (wait_for_inferior), breakpoint.h (struct bpstat_what),
3738 breakpoint.c (bpstat_what): Move step_resume from its own field of
3739 the struct bpstat_what into the main_action. Make it override
3740 other breakpoints. This is a conservative change in the sense
3741 that before the step resume breakpoint was a breakpoint.c
3742 breakpoint, hitting the step resume breakpoint overrode even
3743 calling bpstat_stop_status.
3747 * infrun.c (normal_stop): Set stop_pc after popping the dummy frame
3748 in case execution was stopped in the called function.
3749 * stack.c (print_frame_info, frame_info): If backtracing through
3750 a call dummy, handle the starting source line number on a line
3751 boundary like backtracing through sigtramp.
3752 * sparc-tdep.c (sparc_frame_find_saved_regs): Get frame address
3753 for call dummy frame right. Remove old test for dummy frame,
3754 it has been unused at least since gdb-3.5.
3755 * sparc-tdep.c (sparc_push_dummy_frame): Set return address register
3760 * infcmd.c (signal_command): Accept 0 as legitimate signal number.
3764 * infrun.c (signals_info), target.c (target_signal_from_name):
3765 Use ugly casts to avoid enumvar < enumvar or enumvar++.
3769 * ser-unix.c (hardwire_noflush_set_tty_state): Don't muck with ICANON.
3770 * inflow.c (terminal_ours_1): When discussing how to deal with the
3771 tty state, make note of query() as well as readline.
3773 * infrun.c (_initialize_infrun): Add TARGET_SIGNAL_POLL to list of
3774 signals for which stop and print are cleared by default.
3778 * config/pa/tm-hppa.h (unwind_table_entry): Use one of the
3779 reserved fields to hold a stub unwind entry type. Fix typo.
3780 (stub_unwind_entry): New structure for raw stub unwind entries.
3781 (stub_unwind_types): The types of stubs we may encounter.
3782 (UNWIND_ENTRY_SIZE, STUB_UNWIND_ENTRY_SIZE): New defines.
3783 * hppa-tdep.c (rp_saved): Use additional information provided
3784 by linker stub unwind descriptors.
3785 (frameless_function_invocation): Likewise.
3786 (frame_chain_valid): Likewise.
3787 * paread.c (compare_unwind_entries): New function for sorting
3788 unwind table entries.
3789 (read_unwind_info): Rewrite to remove dependency on host endianness.
3790 Read in data from the $UNWIND_END$ subspace which contains linker
3791 stub unwind descriptors. Merge that data into the basic unwind
3794 * hppab-nat.c (_initialize_kernel_u_addr): Delete unwanted functions.
3798 * xcoffread.c (read_xcoff_symtab, case C_FILE): Accept the name
3799 from either the symbol name or the auxent.
3800 * coffread.c, symfile.h (coff_getfilename): Renamed from getfilename,
3805 * Makefile.in (ALLPARAM): Change irix5.h to nm-irix5.h.
3809 * README: Update notes for alpha port.
3813 * i960-tdep.c (i960_fault_to_signal): Return TARGET_SIGNAL_ILL
3814 for operation fault, constraint fault, and type fault.
3818 * Makefile.in (init.c): Add comment explaining formatting conventions.
3820 * c-exp.y (parse_number): Assign to temporary between the right
3821 shifts, to work around a bug in the SCO compiler.
3823 * Makefile.in (ALLCONFIG, ALLPARAM, ALLDEPFILES, HFILES_NO_SRCDIR):
3824 Add various files which were added to GDB recently.
3826 * xcoffread.c (process_xcoff_symbol): Only change 'V' to 'S' if not
3829 * Makefile.in: Add mostlyclean target.
3837 * main.c (show_commands): Make return type of extern
3838 history_get be HIST_ENTRY, rather than struct _hist_entry.
3839 (The latter loses with the upcoming merged readline.)
3843 * minsyms.c (prim_record_minimal_symbol_and_info): Make tempstring
3844 const char *, not char *.
3846 * symtab.h (struct symbol): Make section short, not unsigned short.
3848 * symtab.c (lookup_symbol): Add comment about QUIT here.
3850 * utils.c (fputs_unfiltered): Call fputs, not fputs_maybe_filtered.
3852 * c-exp.y (parse_number): Check for overflow regardless of range
3853 checking. Fix overflow check to use unsigned LONGEST, not
3856 * c-exp.y (parse_number): Make it so that integer constants are
3857 builtin_type_long_long if builtin_type_long isn't big enough or if
3858 an "LL" suffix is used. Properly handle "UL" or "LU" suffixes.
3860 * c-typeprint.c (c_type_print_varspec_suffix, case TYPE_CODE_FUNC):
3861 Print our "()" first, then recurse for the target type.
3865 * remote-udi.c (udi_create_inferior): Quote empty execfile argument.
3867 * gdbserver/low-lynx.c: Include <sys/wait.h> not "/usr/include/wait.h".
3871 * utils.c (request_quit): Re-establish signal handler regardless
3874 * config/mips/xm-irix4.h: Define HAVE_TERMIOS.
3878 * i960-tdep.c: Include target.h.
3882 * lynx-nat.c (sys/wait.h): Don't use absolute pathname.
3886 * lynx-nat.c (child_wait): Fix thinkos in struct target_waitstatus
3887 changes (status -> ourstatus; declare status, etc.).
3888 * config/nm-lynx.h: Fix child_wait prototype and include target.h.
3892 * Makefile.in (ALLPARAM): Add config/nm-lynx.h.
3896 * remote-mips.c (mips_request, mips_wait): Correct prototypes.
3900 * config/i386/xm-linux.h: Define HAVE_TERMIOS.
3904 * config/alpha/tm-alpha.h (CALL_DUMMY): Improve comment.
3908 * remote-vx.c (vx_wait): Only call i960_fault_to_signal if I80960
3909 is defined. Otherwise just report TARGET_SIGNAL_UNKNOWN.
3911 * mips-tdep.c (mips_push_arguments): Byteswap struct_addr before
3914 Add search to target vector (#if 0'd until after 4.12):
3915 * target.h (to_search, target_search): Add.
3916 * gdbcore.h, core.c (generic_search): Add.
3917 * remote.c (remote_search): Add.
3918 * a29k-tdep.c (init_frame_info): Use target_search to find traceback
3921 * printcmd.c (print_address_symbolic): If set print fast-symbolic-addr
3922 is on, call find_pc_function rather than relying just on the minimal
3923 symbols (probably only matters for symbol readers which don't put
3924 statics in the minimal symbols, but changing this strikes me as
3925 not conservative enough).
3926 Initialize name_location in all cases.
3927 If no symbol and no msymbol, don't print anything symbolic.
3929 * a29k-tdep.c (push_dummy_frame): Add comment about saving lr0.
3933 * printcmd.c (print_address_symbolic): Make it search the
3934 symtabs for variables as well as functions. Add `set print
3935 fast-symbolic-addr' and default it to fast (the old way).
3936 Print line numbers for data items as well as functions.
3938 * symtab.c (find_addr_symbol): Return the symtab and the symbol
3939 address, if a symbol is found (take two more args pointing to
3940 where to store these results).
3942 * symtab.h (find_addr_symbol): Add prototype.
3946 * objfiles.h: Fix comments to reflect the fact that the phrase
3947 "top of stack" always refers to where the pushing and popping takes
3948 place, regardless of whether it is at the highest or lowest address.
3952 * mdebugread.c (parse_symbol): Do not set TYPE_TAG_NAME for
3953 compiler generated tag names.
3954 * mdebugread.c (parse_type): Handle cross references to qualified
3956 * valops.c (value_struct_elt): Improve error message if the
3957 address of a method is requested from an object instance.
3958 * valops.c (search_struct_method): Make name_matched non-static
3959 to get it initialized correctly.
3960 * config/i386/nm-i386sco.h (CANNOT_STORE_REGISTER): Define to
3961 exclude segment register which are not writable on newer SCO versions.
3965 * go32-xdep.c: Remove unused function uerror.
3966 (sigsetmask): Declare return type. Declare argument (to match the
3967 way it is called). Explicitly return 0.
3971 * symtab.h (struct symbol, general_symbol_info, minimal_symbol,
3972 partial_symbol): Shrink the storage sizes of symbols, by making
3973 enums into 1-byte bitfields when compiled __GNUC__, moving all the
3974 enums and small ints to the end of each struct to improve
3975 alignment, and switching the section number from int to unsigned
3980 * symtab.c (find_addr_symbol): New routine that will find the nearest
3981 symbol associated with an address. It does so by exhaustive
3982 search of the symtabs, so it's slow but complete.
3986 * coffread.c (read_coff_symtab): Set PC bounds of _globals_ symtab
3987 to [0,0] rather than [0, end of first source file]. This avoids
3988 problems with other parts of GDB looking for linetables in the
3989 _globals_ symtab. Eliminate variables num_object_files and
3990 first_object_file_end.
3994 * a29k-tdep.c (init_frame_info): Cast null arg to examine_tag.
3995 (pop_frame): Restore PC2 and LR0 from dummy frames.
3996 (push_dummy_frame): Save PC2 and LR0 into dummy frames.
3997 (setup_arbitrary_frame): Handle 3 args and set up real frames.
3998 * config/a29k/tm-a29k.h (FRAME_NUM_ARGS): Update comments.
3999 (DUMMY_FRAME_RSIZE): Add 2 longwords for PC2 and LR0.
4000 (SETUP_ARBITRARY_FRAME): Define.
4004 * infrun.c, config/mips/tm-irix5.h: Remove #if 0'd AT_FUNCTION_START.
4008 * remote-udi.c (udi_resume): Correct prototype.
4012 * config/pa/tm-hppa.h (FRAME_FIND_SAVED_REGS): Call
4013 hppa_frame_find_saved_regs.
4014 * hppa-tdep.c (dig_fp_from_stack): Delete function.
4015 (prologue_inst_adjust_sp): New function.
4016 (is_branch, inst_saves_gr, inst_saves_fr): New functions.
4017 (skip_prologue): Completely rewrite to use unwind information.
4018 (hppa_frame_find_saved_regs): Likewise.
4022 * remote-mips.c (mips_wait): Use new function mips_signal_from_protocol
4023 to convert a signal number with appropriate bounds checking.
4025 * remote-mips.c (mips_wait): Fix typos (0x177 -> 0177, 0x377 -> 0377).
4029 * stack.c (frame_info): If FRAME_FIND_SAVED_REGS isn't defined,
4030 print a newline to end the display anyway.
4032 * sparc-tdep.c (sparc_pop_frame): Pop the fsr and csr (float and
4033 coprocessor status regs) when popping a frame. This fixes
4034 float exceptions that occur after calling inferior functions.
4036 * sparc-nat.c (fetch_inferior_registers, store_inferior_registers):
4037 Read and write the fsr (float status register) to/from the child
4038 process along with the float regs. Remove Peter Schauer's change
4039 of May 24 '93, which has higher overhead and doesn't solve the
4040 real problem (which was that FSR wasn't being set).
4044 * a29k-tdep.c (examine_prologue): Don't worry if the ASGEQ
4045 stack overflow check isn't right after the register stack
4046 adjustment instruction. Metaware R2.3u compiler moves other
4047 things in front of it. This fix isn't perfect but is what's
4052 * c-valprint.c (c_val_print): Treat TYPE_CODE_RANGE like TYPE_CODE_INT.
4054 * config/alpha/alpha-netware.mt: Rename to alpha-nw.mt for 14
4055 character filenames.
4056 * configure.in: Change accordingly.
4060 * m68k-stub.c, sparc-stub.c: removed spurious introduction of
4061 _filtered io routines from these two files.
4065 * config/i386/tm-i386v.h, config/m68k/tm-m68k.h, config/mips/tm-mips.h,
4066 config/vax/tm-vax.h (CALL_DUMMY_BREAKPOINT_OFFSET): Define.
4067 * mdebugread.c (parse_symbol): Handle enum sh.type produced by
4069 * mdebugread.c (add_line): Handle zero linenos produced by DEC c89.
4073 * utils.c (print_sys_errmsg): Call gdb_flush (gdb_stdout) before
4074 printing to gdb_stderr.
4076 * remote-udi.c (udi_kill): Don't close the connection, just set
4077 inferior_pid to zero.
4078 (udi_mourn): Call remove_breakpoints.
4080 * remote-udi.c: Remove obsolete need_artificial_traps comment.
4082 * i386b-nat.c (sregmap): If sEAX, etc., not defined, use tEAX, etc.
4086 * symtab.c (lookup_symbol): Don't try adding .c to the name.
4088 * remote-bug.c: At the start of each section, reset srec_frame
4091 * target.h: Add TARGET_WAITKIND_LOADED and TARGET_WAITKIND_SPURIOUS.
4092 * target.c (store_waitstatus): Add CHILD_SPECIAL_WAITSTATUS hook.
4093 * infrun.c (wait_for_inferior): Replace SIGTRAP_STOP_AFTER_LOAD with
4094 code which looks for those two waitkinds. Use switch statement.
4095 * config/rs6000/tm-rs6000.h: Replace SIGTRAP_STOP_AFTER_LOAD with
4096 CHILD_SPECIAL_WAITSTATUS.
4098 * procfs.c (procfs_wait): Fix argument name to match 4 Jan changes.
4099 * Move target_signal_from_host, target_signal_to_host, and
4100 store_waitstatus from inftarg.c to target.c. procfs needs them.
4101 * target.c: Include "wait.h" and <signal.h>.
4102 * target.h, infrun.c (proceed), proceed callers: Pass new code
4103 TARGET_SIGNAL_DEFAULT instead of -1. This avoids problems with
4104 enums being treated as unsigned and is cleaner.
4105 * infrun.c (signals_info): Don't print TARGET_SIGNAL_DEFAULT or
4107 * infcmd.c (signal_command), infrun.c (signals_info):
4108 Don't allow user to specify numeric equivalent of
4109 TARGET_SIGNAL_DEFAULT.
4113 * config/alpha/alpha-netware.mt: New target support for Alpha
4115 * configure.in: Add alpha-*-netware* target.
4119 * remote-mips.c (mips_wait): Fix ref to TARGET_WAITKIND_STOPPED.
4123 * target.h: Add enum target_waitkind, enum target_signal, and
4124 struct target_waitstatus. Change status argument to target_wait to
4125 be struct target_waitstatus * instead of int *.
4126 * target.h, infrun.c, all targets: Change type of signal arguments
4127 to resume(), proceed(), and target_resume() from int to enum
4129 * All targets (*_wait, *_resume): Change accordingly.
4130 * infcmd.c (program_info, signal_command), throughout infrun.c,
4131 * fork-child.c, solib.c, hppa-tdep.c, osfsolib.c: Use this stuff.
4132 * convex-xdep.c, convex-tdep.c: Add FIXME's (getting the Convex
4133 signal code stuff right with the new signals would be non-trivial).
4134 * inferior.h (stop_signal): Make it enum target_signal not int.
4135 * target.c, target.h (target_signal_to_string, target_signal_to_name,
4136 target_signal_from_name): New functions.
4137 * inftarg.c, target.h (target_signal_to_host, target_signal_from_host,
4138 store_waitstatus): New functions.
4139 * procfs.c (procfs_notice_signals): Use them.
4140 * i960-tdep.c (i960_fault_to_signal): New function, to replace
4142 * config/i960/tm-i960.h: Don't define PRINT_RANDOM_SIGNAL.
4144 * objfiles.c (build_objfile_section_table): Don't abort() if
4145 objfile->sections is already set.
4147 * objfiles.c (add_to_objfile_sections): Check SEC_ALLOC not SEC_LOAD
4148 to match recent change to exec.c.
4152 * main.c (print_gdb_version): Change year to 1994.
4154 * ChangeLog, ChangeLog-93: Split ChangeLog at 1994.
4155 * Makefile.in (NONSRC): Add ChangeLog-93.
4159 * stabsread.c (read_type): Allow defining several type numbers
4160 at once (e.g. "(1,2)=(3,4)="...).
4162 * stabsread.c (read_enum_type): Use TARGET_INT_BIT not sizeof (int).
4164 * breakpoint.c (frame_in_dummy): Check PC as well as frame.
4168 * mdebugread.c (psymtab_to_symtab_1): Only pass N_STAB symbols
4169 to process_one_symbol.
4170 * symtab.c (find_pc_psymbol): Search global_psymbols as well to
4171 avoid caching a bad endaddr in find_pc_partial_function.
4175 * config/m68k/tm-sun3.h: Don't define BELIEVE_PCC_PROMOTION.
4179 * infrun.c (wait_for_inferior): Do not step or step resume past
4180 the end of a one-line function we just stepped into.
4182 For older changes see ChangeLog-93
4188 version-control: never