* infrun.c (handle_command, signals_info), infcmd.c
(signal_command): Use it.
* infrun.c, infcmd.c: Update docstrings for these commands.
* target.h (enum target_signal), target.c (signals), target.c
(target_signal_from_host, target_signal_to_host): Add
TARGET_SIGNAL_REALTIME_* and TARGET_SIGNAL_PRIO for lynx.
* config/tm-lynx.h: Define signal numbers for realtime events.
for Sun acc 3.0 under SunOS4.
Changes to improve handling of runtime common symbols
under SunOS4.
* minsyms.c (get_symbol_leading_char): New routine to determine
the leading symbol character for an objfile.
(prim_record_minimal_symbol_and_info, install_minimal_symbols):
Use it.
* objfiles.h (rt_common_objfile): New global, points to objfile
containing the runtime common minimal symbols.
* objfiles.c (free_objfile): Mark rt_common_objfile as
unallocated before freeing it.
* solib.c (allocate_rt_common_objfile): New routine to allocate
an objfile for the runtime common minimal symbols.
(solib_add_common_symbols): Allocate an objfile for the runtime
common symbols if necessary and put common symbols into it.
Clean up code and comments.
(solib_add, special_symbol_handling): Cleanup comments regarding
runtime common symbols.
* stabsread.c (scan_file_globals_1): New routine, contains
old scan_file_globals code. Checks if there are any unresolved
global symbols before starting the expensive minimal symbol table
search.
(scan_file_globals): Now calls scan_file_globals_1 for the passed
objfile and eventually for the runtime common objfile. Complains
about any unresolved global symbols and removes them from the
global symbol chain to avoid dangling pointers into the symbol
table if the symbol table is reread.
* core.c (dis_asm_read_memory): Add call to
dis_asm_read_memory_hook to provide alternate way for disassembler
to read memory.
* defs.h: Protect from multiple inclusion. Add decl for
dis_asm_read_memory_hook.
* gdbtk.c (finish_saving_output): Don't do anything if not saving
output.
* (breakpoint_notify): Don't send null filename to tcl.
* (gdb_eval): New tcl command to eval an expression.
* (gdb_disassemble): New tcl command to do disassembly. This
allows tcl code to choose between exec file and target memeory,
and can also do mixed source and assembly.
* (gdbtk_init): Move reading of gdbtk.tcl to the end to make sure
that more of the environment is set up. Also, create link between
gdb and tcl vars disassemble{-_}from{-_}exec.
* gdbtk.tcl: New expression window support.
* Make assembly window be 80 columns wide.
* Use new disassembly method. Add menu items to select
disassembly from exec file or target.
* Change View menubar item to Options.
* Get rid of Stack, Breakpoints, Signals, and Variables Windows,
since they don't exist yet.
* Pop up a copyright window on startup.
* top.c: Make window startup be the default.
* Add dis_asm_read_memory_hook.
(tuple): Parse simple unlabelled tuples.
* eval.c (evaluate_subexp case OP_ARRAY): Use expect_type to
evaluate brace-initializer-expressions depending on context.
(evaluate_subexp case UNOP_CAST): Pass the target type as
expected type when evaluating the expression.
BOOL from TYPE_NAME.
* ch-valprint.c (chill_print_type_scalar): New function, to handle
TYPE_CODE_RANGE better than print_type_scalar does.
(chill_val_print_array_elements): Use above new function.
commands.
* top.c (struct user_args): Structure for holding arguments to
user defined commands.
(print_command_line): Delete unused "tmp_chain" variable. Clean
up flow control by having cases exit in the same manner.
Before executing a command or evaluating an expression, substitute
the current $arg0..$arg9 values if the command/expression uses them.
(arg_cleanup): New function.
(setup_user_args, locate_arg, insert_args): Likewise.
(execute_user_command): Allow arguments to user defined commands.
* Allow if/while commands to be used within a breakpoint command
list.
* breakpoint.c (bpstat_do_actions): Call execute_control_command
rather than execute_command (passes entire command structure rather
than just the command line text).
(breakpoint_1): Use "print_command_line" to print a breakpoint
command line (including control structures).
* gdbcmd.h (execute_control_command): Provide extern decl.
(print_command_line): Likewise.
* top.c (execute_control_command): No longer static.
(print_command_line): New function to recursively print a command
line, including control structures.
to monitor config structure for supported baud rates for a target
and variable stop bits.
* monitor.c (monitor_fetch_register): Store register values in big
endian format on any host.
export stubs and actual shared library functions so that lazy
binding works correctly. Try both __d_plt_call and __gcc_plt_call
trampolines for calling import stubs.
space ID to place in the stack & inf_status structure.
(hppa_pop_frame): Don't walk through trampoline code if popping a
call dummy frame.
(hppa_fix_call_dummy): Call the stack dummy directly if the
current PC is in a shared library.
in_syscall bit in flags. Don't depend on the PC queue registers
when in_syscall is set, they're not valid.
* config/pa/tm-hppa.h (PUSH_DUMMY_FRAME): Pass inf_status down to
push_dummy_frame.
(SR4_REGNUM): Define.
* hppa-tdep.c: Misc. lint changes.
enabling I/O interrupts for SVR4 (streams).
* (start_saving_output save_output get_saved_output
finish_saving_output flush_holdbuf gdbtk_flush gdbtk_fputs
gdbtk_init):
Totally revamp to use TCLs dynamic string functions. Also, quote
all data passed back to TCL to prevent errors with unmatched
braces, odd characters, etc... This fixes several wierd problems
with outputting strings containing unmatched braces.
* (breakpoint_notify gdb_loc): Use long hex format to output
addresses of breakpoints and PCs. This fixes some Alpha problems.
* (breakpoint_notify): Add stream arg to call to gdbtk_fputs.
* (gdb_listfiles): Also, go through the symtabs when looking for
files. This makes xcoff work (sort of), but probably breaks
something else.
* (gdb_stop): Return TCL_OK instead of nothing. This fixes odd
TCL errors when hitting stop button.
* (tk_command): Don't pass interp->result on to Tcl_{Var}Eval, as
that will trash the result. strdup the result instead and pass
that on. Improve error handling as well.
* gdbtk.tcl (gdbtk_tcl_flush): Use global def of
current_output_win. Makes flushing actually work!
* (asm_win_name create_asm_win update_assembly): Bunch of fixes
to make assembly windows stop flashing when loading a new file.
* (gdbtk_tcl_busy gdbtk_tcl_idle): Use catch to prevent gdb_cmd
errors from losing control.
* (create_source_window): Add source file selection to View menu.
* (create_command_window (<Key-Return> binding): Quote text fed
into gdb_cmd to prevent eval errors.
* sparc-tdep.c (sparc_init_extra_frame_info): Set it.
(examine_prologue, sparc_init_extra_frame_info): Use ->frame plus
->sp_offset to compute the address something is saved at, not
->bottom.
* sparc-tdep.c (get_saved_register): New function.
* tm-sparc.h: Define GET_SAVED_REGISTER; don't define
FRAME_FIND_SAVED_REGS, HAVE_REGISTER_WINDOWS or REGISTER_IN_WINDOW_P.
* stack.c (frame_info): Add comment about what to do if
FRAME_FIND_SAVED_REGS is not defined.
* sparc-tdep.c (sparc_init_extra_frame_info): Set ->frame field
here. Get it right for flat frames.
* sparc-tdep.c (sparc_frame_chain): Instead of returning
meaningful value for ->frame field, just return dummy value.
This change is needed because the old code didn't deal with mixed
flat and non-flat frames.
* sparc-tdep.c (sparc_pop_frame): Write SP_REGNUM from
frame->frame, don't go through saved regs for this.
* sparc-tdep.c: Move guts of skip_prologue to new function
examine_prologue. Check for flat prologue and set is_flat.
Provide the caller with the information about what is saved where
if desired.
(skip_prologue, sparc_frame_find_saved_regs): Call examine_prologue.
* sparc-tdep.c: Replace union sparc_insn_layout and anonymous
union in isannulled, which won't work on a little-endian host,
with X_* macros.
* sparc-tdep.c (sparc_frame_saved_pc): If addr == 0, the saved PC
is still in %o7.
* config/sparc/tm-sparc.h: Define INIT_FRAME_PC and
INIT_FRAME_PC_FIRST.
* blockframe.c (get_prev_frame_info): Modify comments regarding
INIT_FRAME_PC_FIRST and the sparc.
* sparc-tdep.c (single_step): Use 4 not sizeof (long) for size of
instruction.
the return type of methods to avoid infinite loops with anonymous
types.
* valops.c (search_struct_field): Handle anonymous unions.
* sparc-tdep.c (sunos4_skip_trampoline_code): New function
to correctly handle steps into -g compiled PIC objects in the
main executable.
* config/sparc/tm-sun4os4.h (SKIP_TRAMPOLINE_CODE):
Redefine to use sunos4_skip_trampoline_code.
* dwarfread.c (DWARF_REG_TO_REGNUM): Provide a default mapping
from DWARF to GDB register numbering.
* dwarfread.c (locval): Use DWARF_REG_TO_REGNUM to map the
register value.
* config/mips/tm-mipsv4.h (DWARF_REG_TO_REGNUM): Define.
(QUIT): Call PROGRESS.
* main.c (main): Call START_PROGRESS and END_PROGRESS, break
usage message into shorter strings.
* source.c: Change long command help strings into concats of
shorter ones, for picky ANSI compilers.
(ChangeLog.mpw)
* main.c, source.c: Remove hacks that replace long strings
with shorter ones, now solved portably.
to fputs_unfiltered_hook. Differentiate stdout from stderr when
passing text into tcl land.
* defs.h, top.c, utils.c (error): Add error_hook.
* gdbtk.c: Improve mechanism for capturing output values.
* (full_filename): Remove.
* (gdb_cmd call_wrapper gdbtk_init): Protect all calls from tcl
land with call_wrapper. This prevents longjmps (usually via
error()) from jumping out of tcl/tk and leaving things in an
indeterminate state.
* gdbtk.tcl: New view option to disable line numbers. Put catch
around most uses of gdb_cmd. Add update button to reg config
window. Stop doing immediate updates when selecting registers.
Change register view values into checkbuttons.
recompute_reg_display_list): Use array instead of individual vars
for register display list.
* (recompute_reg_display_list update_registers): Fix bug with not
displaying all registers.
builtin_type_f_integer, and only include it in the f_builtin_types
once.
* somread.c (som_symfile_read): Just assign to objfile->obj_private,
not OBJ_UNWIND_INFO. Assigning to a cast is a GCC-ism which
the HP compiler doesn't like.
gdb_changed_register_list, and gdb_regnames.
* gdbtk.tcl: Use monochrome color model for now.
* (delete_breakpoint_tag create_file_win): Add breakdot support.
* (create_file_win create_asm_win update_listing build_framework
create_source_window create_command_window): Re-org window
creation to give all windows consistent look and feel.
* (update_listing update_asm): Change pc pointer to '->'.
* (registers_command reg_config_menu create_registers_window
populate_reg_window update_registers): Revamp register window.
Allow selection of registers to be displayed. Highlight changed
registers.