aboutsummaryrefslogtreecommitdiff
path: root/gdb/printcmd.c
AgeCommit message (Collapse)AuthorFilesLines
1998-10-141998-10-13 Jason Molenda (jsm@bugshack.cygnus.com)Jason Molenda1-7/+11
* blockframe.c (find_pc_sect_partial_function): Add braces to avoid possible nested-if confusion. * breakpoint.c (breakpoint_here_p): Ditto. (breakpoint_inserted_here_p): Ditto. (breakpoint_thread_match): Ditto. * gnu-regex.c: Define _REGEX_RE_COMP only if it isn't already defined. * gnu-regex.h: Define _REGEX_RE_COMP to pick up old compatability prototypes. * symtab.h: Add prototype for _initialize_source. * value.h: Add prototype for _initialize_value. * defs.h: Include sys/types.h or stddef.h to get size_t. (make_cleanup): Add make_cleanup_func typedef and switch to using a prototype for this function. (mfree): Add prototypes for mmalloc, mrealloc, mfree if we aren't using mmalloc. * ax-gdb.c breakpoint.c coffread.c corelow.c dbxread.c dwarf2read.c dwarfread.c elfread.c eval.c exec.c gdbtk-cmds.c gdbtk.c infcmd.c infrun.c mipsread.c nlmread.c os9kread.c parse.c printcmd.c symfile.c symmisc.c symtab.c thread.c top.c tracepoint.c typeprint.c valops.c: Cast parameters passed to make_cleanup to use the new make_cleanup_func typedef. More warning cleanups. There are still a bunch of places where the first argument to make_cleanup is not cast to (make_cleanup_func); these are either due to the function fitting the make_cleanup_func specification already (e.g. free()) or they are in files that weren't compiled when I did my make on a Linux native system. Bwahahaha. You can see them like this: grep make_cleanup\ * | grep -v make_cleanup_func I'll surely go back and clean up the remaining suspicious calls in GDB one of these days. :-)
1998-10-05 * c-lang.c (emit_char c_printchar c_printstr), c-lang.h (c_printstr)Stu Grossman1-21/+30
ch-lang.c (chill_printstr chill_printchar) c-valprint.c (c_val_print) ch-valprint.c (chill_val_print) expprint.c (print_subexp) f-lang.c (f_printstr f_printchar emit_char) f-valprint.c (f_val_print) jv-lang.c (java_printchar java_emit_char) jv-valprint.c (java_value_print java_val_print) language.c (unk_lang_printchar unk_lang_printstr unk_lang_emit_char) language.h (struct language_defn LA_PRINT_STRING LA_EMIT_CHAR) m2-lang.c (m2_printstr m2_printchar emit_char) printcmd.c (print_formatted) scm-lang.c (scm_printstr) valprint.c (val_print_string) value.h (val_print_string): Add emit_char routines to language_desc struct to allow finer control over language specific character output issues. Add character width arg to printstr routines to allow handling of wchar_t/Unicode strings. Fix c_printstr to handle wide characters. Supply width argument to LA_PRINT_STRING and val_print_string. * jv-lang.c (java_object_type dynamics_objfile java_link_class_type get_dynamics_objfile get_java_object_type) jv-lang.h (get_java_object_type): Make lots of things static. * expprint.c (dump_prefix_expression dump_subexp): Move opcode name printing to common routine (op_name). * (dump_subexp): Add support for OP_SCOPE.
1998-06-04Thu Jun 4 12:14:48 1998 Michael Snyder <msnyder@cleaver.cygnus.com>Michael Snyder1-7/+20
* printcmd.c (disassemble_command): Fix off-by-one error for disassembling functions in unmapped overlay sections.
1997-11-24Pass architecture from ``set arch MACH'' command into disasemblerAndrew Cagney1-30/+221
through tm_print_insn_info.mach argument. Delete x86 specific set assembler command, subsumed by replaced with ``set arch''
1996-07-15 * defs.h printcmd.c: Create global disassemble_info structureStu Grossman1-36/+55
tm_print_insn_info. * gdbtk.c (gdb_disassemble): Setup di.mach from tm_print_insn_info.mach, and set endian from TARGET_BYTE_ORDER. * i386-tdep.c (set_assembly_language_command): set tm_print_insn_info.mach to the appropriate value for 386 or 8086 disassembly. * printcmd.c (print_insn): Move init of disassembler_info to _initialize_printcmd. Set endian for disassembler here. * sparc-tdep.c: Set tm_print_insn_info.mach as appropriate to select sparc/sparclite. * config/sparc/{tm-sparc.h tm-sparclite.h}: Get rid of TM_PRINT_INSN. Set TM_PRINT_INSN_MACH to bfd_mach_sparc/bfd_mach_sparc_sparclite.
1995-08-01* configure.in: Check for working mmap, ansi headers, string.h,J.T. Conklin1-3/+3
strings.h, and memory.h. * configure: Regenerated. * gdb_stat.h: New file, "portable" <sys/stat.h>. * gdb_string.h: New file, "portable" <string.h>. * altos-xdep.c, arm-tdep.c, arm-xdep.c, convex-tdep.c, convex-xdep.c, coredep.c, cxux-nat.c, dbxread.c, exec.c, gould-xdep.c, hppa-tdep.c, i386aix-nat.c, i386b-nat.c, i386mach-nat.c, i386v-nat.c, infptrace.c, m88k-nat.c, main.c, mdebugread.c, objfiles.c, os9kread.c, procfs.c, pyr-xdep.c, rs6000-nat.c, source.c, standalone.c, stuff.c, sun386-nat.c, symfile.c, symm-nat.c, symm-tdep.c, symtab.c, top.c, ultra3-nat.c, ultra3-xdep.c, umax-xdep.c, xcoffread.c: Include "gdb_stat.h" instead of <sys/stat.h>. * alpha-tdep.c, breakpoint.c, buildsym.c, c-typeprint.c, ch-typeprint.c, coffread.c, command.c, core-sol2.c, core-svr4.c, core.c, corelow.c, cp-valprint.c, dbxread.c, dcache.c, demangle.c, dpx2-nat.c, dstread.c, dwarfread.c, elfread.c, environ.c, eval.c, exec.c, f-lang.c, f-typeprint.c, f-valprint.c, findvar.c, fork-child.c, gdbtypes.c, hpread.c, i386-tdep.c, infcmd.c, inflow.c, infptrace.c, infrun.c, irix5-nat.c, language.c, m2-typeprint.c, main.c, mdebugread.c, minsyms.c, mipsread.c, monitor.c, nlmread.c, objfiles.c, os9kread.c, osfsolib.c, parse.c, printcmd.c, procfs.c, regex.c, remote-adapt.c, remote-arc.c, remote-array.c, remote-bug.c, remote-e7000.c, remote-eb.c, remote-es.c, remote-hms.c, remote-mm.c, remote-os9k.c, remote-pa.c, remote-sim.c, remote-st.c, remote-udi.c, remote-utils.c, remote-vx.c, remote-vx29k.c, remote-vx68.c, remote-vx960.c, remote-vxmips.c, remote-vxsparc.c, remote.c, solib.c, somread.c, source.c, stabsread.c, stack.c, symfile.c, symmisc.c, symtab.c, target.c, top.c, typeprint.c, utils.c, valarith.c, valops.c, valprint.c, values.c, xcoffread.c: Include "gdb_string.h" instead of <string.h>. * gdbtk.c: Likewise. * config/xm-sysv4.h, i386/xm-ptx.h, m68k/xm-sun3os4.h, sparc/xm-sun4os4.h (HAVE_MMAP): Removed. * config/xm-lynx.h, config/i386/xm-ptx.h, config/m68k/nm-apollo68b.h, config/m68k/xm-hp300hpux.h, config/mips/xm-irix3.h, config/mips/xm-mips.h, config/mips/xm-news-mips.h, config/mips/xm-riscos.h, config/pa/hppah.h, config/rs6000/xm-rs6000.h, config/sparc/xm-sun4os4.h, config/sparc/xm-sun4sol2.h, config/vax/xm-vaxbsd.h, config/vax/xm-vaxult.h, config/vax/xm-vaxult2.h (MEM_FNS_DECLARED): Removed. * config/mips/xm-irix3.h, config/mips/xm-mips.h, config/pa/xm-hppah.h (memcpy, memset): Removed declarations.
1995-05-18 * utils.c (fprintf_filtered, fprintf_unfiltered, fprintfi_filtered,J.T. Conklin1-5/+3
printf_filtered, printf_unfiltered, printfi_filtered, query, warning, error, fatal, fatal_dump_core): Use stdarg.h macros when compiling with an ANSI compiler. * complain.c (complain): Likewise. * language.c (type_error, range_error): Likewise. * monitor.c (monitor_printf, monitor_printf_noecho): Likewise. * remote-array.c (printf_monitor, debuglogs): Likewise. * remote-mips.c (mips_error): Likewise. * remote-os9k.c (printf_monitor): Likewise. * remote-st.c (printf_stdebug): Likewise. * gdbtk.c (gdbtk_query): Likewise. * defs.h, complain.h, language.h, monitor.h: Add prototypes to match above changes. * printcmd.c: Remove uneeded #include <varargs.h>. * remote-e7000.c: Likewise. * f-typeprint.c (f_type_print_base): Fix typo found by above changes.
1995-02-03 * core.c (dis_asm_read_memory), defs.h, gdbtk.c (gdb_disassemble),Stu Grossman1-84/+91
top.c : Get rid of dis_asm_read_memory_hook. We can now call the disassemblers directly and have no need for this hook anymore. * defs.h, printcmd.c: Make print_insn be static. * ser-go32.c (dos_comisr): Make this 8 bit clean. * (dos_open dos_close): Allow multiple opens to the same device. Use a ref count to prevent unwanted deallocations. * sparcl-tdep.c: Put #ifdefs around all socket stuff to make GO32 happy. * (sparclite_ops): Switch to download_stratum. * target.h (enum strata): Move download_stratum before process_stratum so that executable targets get pushed on top of download targets.
1994-05-17 * utils.c (vfprintf_maybe_filtered, vfprintf_unfiltered): CallJim Kingdon1-13/+0
fputs_unfiltered and exit directly, rather than fatal. The latter calls vfprintf_unfiltered! * gdbtypes.h, gdbtypes.c (can_dereference): New function. * value.h, printcmd.c (print_value_flags): Move from here... * annotate.c: ...to here, and make it use can_dereference.
1994-05-14 * source.c (find_source_lines): Always use code that was #ifdefJim Kingdon1-22/+7
BROKEN_LARGE_ALLOCA. Do the cleanup before returning, rather than leaving it on the chain. Reindent much of this function. * config/sparc/{xm-sun4sol2.h,xm-sun4os4.h}, config/i386/{xm-sun386.h,xm-i386m3.h,xm-i386mach.h}, config/m68k/{sun3os4.h,xm-news.h,xm-hp300hpux.h}, config/ns32k/xm-ns32km3.h: Remove all references to BROKEN_LARGE_ALLOCA; with the above change it is no longer needed. * main.c, fork-child.c, many config files: Remove all SET_STACK_LIMIT_HUGE code; with the above changes it should no longer be needed. * symtab.c (lookup_partial_symbol): Use if and abort, not assert. This avoids __eprintf troubles. * main.c (main): Surround in #ifndef MAIN_OVERRIDE. Move initialization code which needs to be called even if we bypass the command line stuff into gdb_init. * utils.c (fputs_unfiltered): Surround in #ifndef FPUTS_UNFILTERED_OVERRIDE. * Makefile.in (libgdb.a): New target. * utils.c: Rearrange I/O stuff a bit so that all output goes through fputs_unfiltered. Use vasprintf; removes arbitrary limit which made %s not work with arbitrarily large strings. * printcmd.c (printf_command): Use printf_filtered, not printf_unfiltered and printf, now that arbitrary limit is gone.
1994-05-13 gcc -Wall lint:Jim Kingdon1-41/+44
* breakpoint.c (watchpoint_check): Remove unused variable b. * stack.c (print_frame_info): Move sp and buf inside #if. * eval.c (evaluate_subexp): Remove unused variables pp, mangle_ptr, ptr, and mangle_tstr. * valarith.c (value_x_binop): Remove unused variables mangle_tstr and mangle_ptr. * symtab.c (lookup_symtab): Put variable copy inside #if. (decode_line_1): Put variable q1 inside #if 0. * target.h: Declare target_link. * infrun.c (wait_for_inferior): Remove unused variables signame. * remote.c (remote_resume): Remove unused variable name. * c-exp.y (parse_number): Parenthesize operand of shift. * dbxread.c (record_minimal_symbol): Parenthesize operand of && (this is a semantic change, the warning seems to have detected a bug). * dbxread.c (end_psymtab): Move variable p1 inside #if. * coffread.c: Move variable temptype inside #if. * ch-typeprint.c (chill_type_print_base): Remove unused variable name. * ch-valprint.c: #include typeprint.h and ch-lang.h. (chill_val_print): Remove unused variable in_range. (chill_val_print): Remove statement "length > TYPE_LENGTH (type);". (chill_val_print): Add default case for switch. * stabsread.h: Declare stabsect_build_psymtabs. * os9kread.c (read_minimal_symbols): Make this return void. (os9k_symfile_read): Remove unused variables stb_exist and val. (os9k_symfile_init): Remove unused variable val. (fill_sym): Remove unused variable id. (read_os9k_psymtab): Put variable back_to inside #if 0. Remove unused variable nsl. Remove unused variable symfile_bfd. #if 0 unused variables lbrac_unmatched_complaint and lbrac_mismatch_complaint. Remove declaration for non-existent function os9k_next_symbol_text. * annotate.c, annotate.h: New files, containing a function for each annotation which outputs it. * Move breakpoints_changed from breakpoint.c to annotate.c. * breakpoint.c, blockframe.c, infrun.c, cp-valprint.c, main.c, printcmd.c, source.c, stack.c, utils.c, valprint.c: Use annotate.c functions to output annotations. * Makefile.in (OBS): Add annotate.o.
1994-05-04 * valprint.c (print_longest): Clarify comment about use_local.Jim Kingdon1-10/+13
* printcmd.c, defs.h (print_address_numeric), callers in symmisc.c, symfile.c, stack.c, source.c, remote.c, infcmd.c, cp-valprint.c, core.c, ch-valprint.c, c-valprint.c, breakpoint.c, exec.c: New argument use_local. * source.c (identify_source_line): Use filtered output. Use print_address_numeric.
1994-04-27 * printcmd.c (print_address_symbolic): Initialize name to emptySteve Chamberlain1-4/+5
string to avoid core dump if lookup fails. * remote-e7000.c (printf_e7000debug): Error if target not open.
1994-04-21 * breakpoint.c (watch_command): Use (CORE_ADDR)0, not NULL, forJim Kingdon1-0/+13
target null pointer. * blockframe.c (find_frame_addr_in_frame_chain): Likewise. * printcmd.c (output_command): Annotate things we print here too. * Move declaration of print_value_flags from defs.h to value.h. * main.c (command_line_input): Call wrap_here as well as gdb_flush.
1994-04-21 * printcmd.c (print_command_1): Annotate the top-level expressionsJim Kingdon1-0/+49
that we print. (print_frame_args): Annotate each argument. * printcmd.c, defs.h (print_value_flags): New function. * cp-valprint.c (cp_print_value_fields): Annotate each field. * valprint.c (val_print_array_elements): Annotate each array element.
1994-04-08 * infrun.c (IN_SOLIB_TRAMPOLINE): Correct comment, trampolinesPeter Schauer1-22/+11
are in the .plt section. * minsyms.c (lookup_solib_trampoline_symbol_by_pc, find_solib_trampoline_target): New functions for handling stepping into -g compiled shared libraries. * symtab.h (lookup_solib_trampoline_symbol_by_pc, find_solib_trampoline_target): Add prototypes. * config/tm-sunos.h (IN_SOLIB_TRAMPOLINE, SKIP_TRAMPOLINE_CODE): Define to handle stepping into -g compiled shared libraries. * config/tm-sysv4.h (SKIP_TRAMPOLINE_CODE): Define to handle stepping into -g compiled shared libraries. * configure.in: Add mips-*-sysv4* support. * config/mips/mipsv4.mh, config/mips/mipsv4.mt, config/mips/tm-mipsv4.h, config/mips/xm-mipsv4.h, mipsv4-nat.c: New files for MIPS SVR4 support. * Makefile.in: Update for new mipsv4 files. * alpha-tdep.c (heuristic_proc_desc, find_proc_desc): Use read_next_frame_reg to obtain the frame relative stack pointer. * mips-tdep.c (heuristic_proc_desc): Use read_next_frame_reg to obtain the frame relative stack pointer. * mdebugread.c (parse_partial_symbols, psymtab_to_symtab1): Handle stStatic and stStaticProc symbols in stabs-in-ecoff output by entering them into the minimal symbol table. * printcmd.c (print_scalar_formatted): Do not try to unpack to a long for float formats. * solib.c: Include "elf/mips.h" only if DT_MIPS_RLD_MAP does not get defined in <link.h>. * solib.c (solib_add): Add shared library sections to the section table of the target before adding the symbols. * partial-stab.h: Relocate static and global functions. * dbxread.c (read_dbx_symtab): Remove unused variable end_of_text_address. Relocate text_addr when passing it to end_psymtab. For Alpha OSF/1 targets, enable gdb to set breakpoints in shared library functions before the executable is run. Retrieve dynamic symbols from stripped executables. * mipsread.c (read_alphacoff_dynamic_symtab): New function. * mipsread.c (mipscoff_symfile_read): Use it. Issue warning message if no debugging symbols were found. * alpha-tdep.c (alpha_skip_prologue): Silently return the unaltered pc if memory at the pc is not accessible and GDB_TARGET_HAS_SHARED_LIBS is defined. * config/alpha/nm-alpha.h (GDB_TARGET_HAS_SHARED_LIBS): Define, OSF/1 has shared libraries.
1994-03-03 * breakpoint.c, breakpoint.h, c-valprint.c, ch-valprint.c,Jim Kingdon1-24/+49
cp-valprint.c, eval.c, expprint.c, findvar.c, language.c, objfiles.h, infcmd.c, printcmd.c, stack.c, typeprint.c, valarith.c, valops.c, valprint.c, value.h, values.c: Replace value with value_ptr. This is for the ptx compiler. * objfiles.h, target.h: Don't declare a "sec_ptr" field using a "sec_ptr" typedef. * symm-nat.c: Add a bunch of stuff for symmetry's ptrace stuff. #if 0 i386_float_info. * symm-tdep.c (round): Remove. Also remove sgttyb. * symm-tdep.c: Remove lots of stuff which duplicates stuff from i386-tdep.c. Remove register_addr and ptx_coff_regno_to_gdb. * i386-tdep.c (i386_frame_find_saved_regs): Put in I386_REGNO_TO_SYMMETRY check in case it is needed for Dynix someday. * config/i386/nm-symmetry.h: Change KERNEL_U_ADDR. Move stuff from PTRACE_READ_REGS, PTRACE_WRITE_REGS macros to symm-nat.c. Define CHILD_WAIT and declare child_wait(). * config/i386/tm-symmetry.h: Remove call function stuff; stuff in tm-i386v.h is apparently OK. * config/i386/xm-symmetry.h [_SEQUENT_]: Define HAVE_TERMIOS not HAVE_TERMIO. Define MEM_FNS_DECLARED, NEED_POSIX_SETPGID, and USE_O_NOCTTY.
1994-01-27 Fix many sins which will come up in 32 bit x 64 bit GDB, andJim Kingdon1-26/+40
various miscellaneous things discovered in the process: * printcmd.c, defs.h (print_address_numeric): New function. * c-valprint.c (c_val_print), ch-valprint.c (chill_val_print) breakpoint.c (describe_other_breakpoints, breakpoint_1, mention), cp-valprint.c (cplus_print_value), infcmd.c (jump_command), printcmd.c, stack.c, symfile.c, symmisc.c, valprint.c: Use it. * utils.c, defs.h (gdb_print_address): New function. * expprint (dump_expression), gdbtypes.h: Use it. * breakpoint.c (describe_other_breakpoints), symmisc.c (dump_symtab, print_symbol): Use filtered not unfiltered I/O. (remove_breakpoints): Remove BREAKPOINT_DEBUG code. Might as well just run gdb under a debugger for this (and it had problems with printing addresses, how to print b->shadow, etc.). * buildsym.c (make_blockvector), core.c (memory_error), exec.c (print_section_info), maint.c (print_section_table), mdebugread.c (parse_procedure), solib.c, source.c, symfile.c, symmisc.c, symtab.c, valops.c, valprint.c, xcoffexec.c: Add comments saying code is broken. Marked with "FIXME-32x64". * dbxread.c (process_one_symbol), partial-stab.h (default), remote-vx.c (vx_run_files_info): Don't cast int being passed to local_hex_string. * symmisc.c (print_symbol): Don't cast long being passed to %lx. * symtab.h (general_symbol_info): Add comment about SYMBOL_VALUE only being a long. * symmisc.c (print_symbol): Print "offset" in message for LOC_ARG and LOC_LOCAL. * printcmd.c (print_address): Remove #if 0 code with ADDR_BITS_REMOVE. * source.c: Include <sys/types.h> regardless of USG.
1994-01-21Thu Jan 20 15:04:24 1994 Peter Schauer (pes@regent.e-technik.tu-muenchen.de)Jim Kingdon1-4/+14
* printcmd.c (print_address_symbolic): Unconditionally use msymbol if we did not find a symbol.
1994-01-13* printcmd.c (print_address_symbolic): Make it search theJohn Gilmore1-32/+90
symtabs for variables as well as functions. Add `set print fast-symbolic-addr' and default it to fast (the old way). Print line numbers for data items as well as functions. * symtab.c (find_addr_symbol): Return the symtab and the symbol address, if a symbol is found (take two more args pointing to where to store these results). * symtab.h (find_addr_symbol): Add prototype.
1993-12-25 * printcmd.c (disassemble_command): Call wrap_here between printingJim Kingdon1-22/+24
address and printing instruction.
1993-11-11 * printcmd.c (address_info): Use fprintf_symbol_filteredJeff Law1-5/+15
to print the symbol name. * stabsread.c (define_symbol): Handle cfront lossage for struct/union/enums and typedefs. * partial-stab.h (case N_BINCL): Update psymtab_language as appropriate when changing subfiles. (case N_SOL): Update psymtab_language as appropriate when changing subfiles. Add typedef for structs, unions, and enums when processing C++ files.
1993-11-01Change the stream argument to _filtered to GDB_FILE *.Thomas Lord1-210/+185
Change all references to stdout/stderr to gdb_stdout/gdb_stderr. Replace all calls to stdio output functions with calls to corresponding _unfiltered functions (`fprintf_unfiltered') Replaced calls to fopen for output to gdb_fopen. Added sufficient goo to utils.c and defs.h to make the above work. The net effect is that stdio output functions are only directly used in utils.c. Elsewhere, the _unfiltered and _filtered functions and GDB_FILE type are used. In the near future, GDB_FILE will stop being equivalant to FILE. The semantics of some commands has changed in a very subtle way: called in the right context, they may cause new occurences of prompt_for_continue() behavior. The testsuite doesn't notice anything like this, though. Please respect this change by not reintroducing stdio output dependencies in the main body of gdb code. All output from commands should go to a GDB_FILE. Target-specific code can still use stdio directly to communicate with targets.
1993-10-01 * printcmd.c (do_examine): Make meaning of 'h', 'w', and 'g' notJim Kingdon1-33/+32
depend on builtin_type_*. Instead, it is always 2, 4, and 8 bytes like the documentation says. * printcmd.c (decode_format) [CC_HAS_LONG_LONG]: Remove 'l' as synonym for 'g'. This was never documented, it shouldn't depend on CC_HAS_LONG_LONG, and I don't see what's wrong with 'g'.
1993-09-02* printcmd.c: Remove __INT_VARARGS_H code; now in xm-m88k.h.Jim Kingdon1-1/+1
1993-09-02* printcmd.c: Remove __INT_VARARGS_H code; now in xm-m88k.h.Jim Kingdon1-2/+7
1993-09-02 * config/m88k/xm-dgux.h: Renamed from config/m88k/xm-m88k.h.Jim Kingdon1-13/+0
* config/m88k/xm-m88k.h: New file, with HOST_BYTE_ORDER, MAKEVA_END and MAKEVA_ARG. * config/m88k/xm-*.h: Include m88k/xm-m88k.h. * printcmd.c: Remove __INT_VARARGS_H code; now in xm-m88k.h.
1993-08-24 * frame.h, symtab.h, findvar.c (read_var_value): Change baseregJim Kingdon1-31/+19
support to use LOC_BASEREG rather than SYMBOL_BASEREG_VALID. * dwarfread.c: Use LOC_BASEREG where appropriate. * Various: Support LOC_BASEREG and LOC_BASEREG_ARG.
1993-08-20* printcmd.c (MAKEVA_END): Update this version to use "aligner".Jim Kingdon1-2/+2
1993-08-18 * printcmd.c (print_address), values.c (value_as_pointer): Don'tJim Kingdon1-7/+14
use ADDR_BITS_REMOVE.
1993-07-14 Changes from Jeffrey Law:Jim Kingdon1-1/+8
* printcmd.c (makeva_list): Use MAKEVA_EXTRA_INFO to define machine dependent fields in the makeva_list structure. (makeva_size): Allocate extra space to handle gaps made by alignment restrictions. * config/pa/xm-pa.h (MAKEVA_EXTRA_INFO): Define. (MAKEVA_START): Initialize arglist_address field. (MAKEVA_ARG): Always store arguments on natural alignment boundaries. Set arglist_address to the address right after the args. (MAKEVA_END): Simply return the value stored in arglist_address.
1993-07-12 * symtab.c (decode_line_1): Use end of block to figure out whetherJim Kingdon1-51/+7
val.end is in the same function, not minimal symbols. * source.c (line_info): Add a few more wrap_here's. * i386-tdep.c (i386_follow_jump): Do byteswapping where needed and don't make assumptions about sizes of host data types. * blockframe.c, symtab.h (find_pc_partial_function): New arg endaddr. * infrun.c, breakpoint.c, printcmd.c: Change callers. * printcmd.c (containing_function_bounds): Remove. * printcmd.c (disassemble_command): Use find_pc_partial_function, not containing_function_bounds. * infcmd.c (step_1): Use find_pc_partial_function rather than trying to roll our own. Move check for a pc between SIGTRAMP_START and SIGTRAMP_END in find_pc_partial_function, not step_1.
1993-07-09 * utils.c: Clean up comments about wrap buffer and wrap_here.Jim Kingdon1-34/+105
* printcmd.c (printf_command): Call wrap_here before vprintf.
1993-06-18 * Makefile.in (INTERNAL_CFLAGS): Include ../include as well asJim Kingdon1-1/+6
${srcdir}/../include. * config/m88k/xm-delta88.h: Comment out unused defines which conflict with system headers. * printcmd.c (printf_command): Cast second arg to vprintf to PTR. Use VPRINTF macro if defined. * config/m88k/xm-delta88.h: Define VPRINTF. Include <sys/siginfo.h>. Define TIOC{GETC,GLTC}_BROKEN. * m88k-nat.c: Uncomment include of <sys/ptrace.h>. * main.c: Rename initialize_{main,cmd_lists,history} to init_* to make things easier on munch (apparently this matters on the delta88 with svr3).
1993-06-13 * valprint.c (print_hex_chars): Use local_hex_format_{pre,suf}fix.Jim Kingdon1-30/+16
* printcmd.c (print_scalar_formatted): Use val_print_type_code_int.
1993-05-29 * printcmd.c (print_address_symbolic): turn this into an assigmentDavid D. Zuhn1-1/+3
instead of an initialization (many compilers don't accept structure initialization).
1993-05-27 * printcmd.c (print_address_symbolic): Append source filename andPeter Schauer1-3/+20
linenumber of the symbol if print symbol-filename is on. (initialize_printcmd): `set print symbol-filename'.
1993-05-26 * printcmd.c (print_formatted, case 'i'): Pass a tab to wrap_here.Jim Kingdon1-1/+6
* source.c (line_info): Change "pc" to "address" in messages and use print_address for addresses.
1993-05-25 * Many places: replace "the inferior" in messages with "the program"Jim Kingdon1-67/+25
or "the program being debugged". * inflow.c (try_writing_regs): Remove; it's been #if 0'd forever and I'm getting sick of maintaining it.
1993-04-23 * printcmd.c (print_address_symbolic): Search symtabs as well as thePeter Schauer1-10/+29
minimal symbols for a nearby symbol.
1993-04-22Thu Apr 22 14:50:05 1993 Jim Kingdon (kingdon@cygnus.com)Jim Kingdon1-0/+5
* symtab.h: Fix LOC_REF_ARG comment. Wed Apr 22 20:21:30 1993 Peter Schauer (pes@regent.e-technik.tu-muenchen.de) and Jim Kingdon (kingdon@cygnus.com) * stabsread.c (define_symbol): Combine a 'p', 'r' arg pair to a LOC_REGPARM symbol. * config/sparc/tm-sparc.h (REG_STRUCT_HAS_ADDR): Revise comments. symfile.c (compare_symbols): Don't check first character; STRCMP does that. * stabsread.c (define_symbol): Generate a LOC_REGPARM_ADDR for structures that are passed by address in a register. * symtab.h (enum address_class): Add LOC_REGPARM_ADDR. * findvar.c (read_var_value), printcmd.c (address_info, print_frame_args), stack.c (print_frame_arg_vars), symmisc.c (print_{,partial_}symbol), * symtab.c (lookup_block_symbol): Deal with it.
1993-04-22 * objfiles.h (obj_section), objfiles.c (build_objfile_section_table):Jim Kingdon1-7/+23
Add objfile field. * objfiles.c (find_pc_section): Return a struct obj_section *. * sparc-tdep.c (in_solib_trampoline): Deal with find_pc_section return. * symfile.c (syms_from_objfile) [IBM6000_TARGET]: Don't use obj_section hack. * xcoffexec (vmap_symtab): Relocate obj_sections. * printcmd.c (containing_function_bounds): Use find_pc_section.
1993-04-21 * stack.c (print_frame_arg_vars), printcmd.c (print_frame_args):Jim Kingdon1-11/+21
Expand comments about LOC_ARG/LOC_LOCAL pairs.
1993-03-11 * main.c (source_command): Require an explicit pathname of fileFred Fish1-8/+35
to source, since previous behavior of defaulting to gdb init file was troublesome and undocumented. * printcmd.c (disassemble_command): Add missing '{}' pair to else with two statements. Bug reported by Stephane Tsacas <slt@isoft.fr>. * symtab.c (find_pc_line): Don't complain about zero length or negative length line numbers for the moment, since we may not own the terminal when called, such as when single stepping. (FIXME) * language.h (CAST_IS_CONVERSION): True if current language is C++ as well as C. Fix from Peter Schauer. * environ.c (get_in_environ, set_in_environ, unset_in_environ): Use STREQN macro rather than bare '!strncmp()'. * environ.c (unset_in_environ): Avoid use of memcpy on overlapping memory regions, as suggested by Paul Eggert <eggert@twinsun.com>. * c-exp.y (%union struct): Remove unused ulval as suggested by Paul Eggert <eggert@twinsun.com>.
1993-02-02* printcmd.c (print_frame_args, print_frame_nameless_args):John Gilmore1-16/+33
Let print_frame_nameless_args decide whether there are any, laying groundwork for possibly later printing 29K args for functions where we have tag words but no symbols.
1992-12-31 * c-exp.y, m2-exp.y (yyreds, yytoks): Remap like other yy* names.Fred Fish1-8/+10
* c-exp.y, m2-exp.y (YYDEBUG): Define if MAINTENANCE_CMDS is defined and YYDEBUG is not already defined. * c-exp.y (strncmp): Replace throughout with STREQN, missed them during the previous replacements. * printcmd.c (_initialize_printcmd): Update internal documentation for "set" command to note that the assignment syntax is language dependent. **** start-sanitize-chill **** * ch-exp.y (yyreds, yytoks): Remap like other yy* names. * ch-exp.y (YYDEBUG): Define if MAINTENANCE_CMDS is defined and YYDEBUG is not already defined. * ch-exp.y (GDB_REGNAME, GDB_LAST, GDB_VARIABLE, GDB_ASSIGNMENT, single_assignment_action): New terminals and nonterminal for gdb extensions to chill expression grammer. * ch-exp.y (match_dollar_tokens): Lexer routine to match all tokens that start with '$' (register names, convenience vars, etc). * ch-exp.y (tokentab2): Add GDB_ASSIGNMENT. * ch-exp.y (yylex): Call match_dollar_tokens. **** end-sanitize-chill ****
1992-12-23 * defs.h (STRCMP, STREQ, STREQN): New macros.Fred Fish1-7/+8
* defs.h (demangle_and_match): Remove prototype. * dwarfread.c (STREQ, STREQN): Remove macros, replaced with STREQ and STREQN defined in defs.h. * dwarfread.c (set_cu_language): For completely unknown languages, try to deduce the language from the filename. Retain behavior that for known languages we don't know how to handle, we use language_unknown. * dwarfread.c (enum_type, symthesize_typedef): Initialize language and demangled name fields in symbol. * dwarfread.c, mipsread.c, partial-stab.h: For all usages of ADD_PSYMBOL_TO_LIST, add language and objfile parameters. * dwarfread.c (new_symbol): Attempt to demangle C++ symbol names and cache the results in SYMBOL_DEMANGLED_NAME for the symbol. * elfread.c (STREQ): Remove macro, use STREQ defined in defs.h. Replace usages throughout. * elfread.c (demangle.h): Include. * elfread.c (record_minimal_symbol): Remove prototype and function. * gdbtypes.h, symtab.h (B_SET, B_CLR, B_TST, B_TYPE, B_BYTES, B_CLRALL): Moved from symtab.h to gdbtypes.h. * infcmd.c (jump_command): Remove code to demangle name and add it to a cleanup list. Now just use SYMBOL_DEMANGLED_NAME. * minsyms.c (demangle.h): Include. * minsyms.c (lookup_minimal_symbol): Indent comment to match code. * minsyms.c (install_minimal_symbols): Attempt to demangle symbol names as C++ names, and cache them in SYMBOL_DEMANGLED_NAME. * mipsread.c (psymtab_language): Add static variable. * stabsread.c (demangle.h): Include. * stabsread.c (define_symbol): Attempt to demangle C++ symbol names and cache them in the SYMBOL_DEMANGLED_NAME field. * stack.c (return_command): Remove explicit demangling of name and use of cleanups. Just use SYMBOL_DEMANGLED_NAME. * symfile.c (demangle.h): Include. * symfile.c (add_psymbol_to_list, add_psymbol_addr_to_list): Fix to match macros in symfile.h and allow them to be compiled if INLINE_ADD_PSYMBOL is not true. * symfile.h (INLINE_ADD_PSYMBOL): Default to true if not set. * symfile.h (ADD_PSYMBOL_*): Add language and objfile parameters. Add code to demangle and cache C++ symbol names. Use macro form if INLINE_ADD_PSYMBOL is true, otherwise use C function form. * symmisc.c (add_psymbol_to_list, add_psymbol_addr_to_list): Remove, also defined in symfile.c, which we already fixed. * symtab.c (expensive_mangler): Remove prototype and function. * symtab.c (find_methods): Remove physnames parameter and fix prototype to match. * symtab.c (completion_list_add_symbol): Name changed to completion_list_add_name. * symtab.c (COMPLETION_LIST_ADD_SYMBOL): New macro, adds both the normal symbol name and the cached C++ demangled name. * symtab.c (lookup_demangled_partial_symbol, lookup_demangled_block_symbol): Remove prototypes and functions. * symtab.c (lookup_symbol): Remove use of expensive_mangler, use lookup_block_symbol instead of lookup_demangled_block_symbol. Remove code to try demangling names and matching them. * symtab.c (lookup_partial_symbol, lookup_block_symbol): Fix to try matching the cached demangled name if no match is found using the regular symbol name. * symtab.c (find_methods): Remove unused physnames array. * symtab.c (name_match, NAME_MATCH): Remove function and macro, replaced with SYMBOL_MATCHES_REGEXP from symtab.h. * symtab.c (completion_list_add_symbol): Rewrite to use cached C++ demangled symbol names. * symtab.h: Much reformatting of structures and such to add whitespace to make them more readable, and make them more consistent with other gdb structure definitions. * symtab.h (general_symbol_info): New struct containing fields common to all symbols. * symtab.h (SYMBOL_LANGUAGE, SYMBOL_DEMANGLED_NAME, SYMBOL_SOURCE_NAME, SYMBOL_LINKAGE_NAME, SYMBOL_MATCHES_NAME, SYMBOL_MATCHES_REGEXP, MSYMBOL_INFO, MSYMBOL_TYPE): New macros. * symtab. (struct minimal_symbol, struct partial_symbol, struct symbol): Use general_symbol_info struct. * utils.c (demangle_and_match): Remove, no longer used. * valops.c (demangle.h): Include. * xcoffexec.c (eq): Remove macro, replace usages with STREQ. * blockframe.c, breakpoint.c, c-exp.y, c-valprint.c, dbxread.c, infcmd.c, m2-exp.y, minsyms.c, objfiles.h, solib.c, stack.c, symmisc.c, symtab.c, valops.c: Replace references to minimal symbol fields with appropriate macros. * breakpoint.c, buildsym.c, c-exp.y, c-typeprint.c, c-valprint.c, coffread.c, command.c, convex-tdep.c, cp-valprint.c, dbxread.c, demangle.c, elfread.c, energize.c, environ.c, exec.c, gdbtypes.c, i960-tdep.c, infrun.c, infrun-hacked.c, language.c, main.c, minsyms.c, mipsread.c, partial-stab.h, remote-es1800.c, remote-nindy.c, remote-udi.c, rs6000-tdep.c, solib.c, source.c, sparc-pinsn.c, stabsread.c, standalone.c, state.c, stuff.c, symfile.c, symmisc.c, symtab.c, symtab.h, tm-sysv4.h, tm-ultra3.h, values.c, xcoffexec.c, xcoffread.c: Replace strcmp and strncmp usages with STREQ, STREQN, or STRCMP as appropriate. * breakpoint.c, buildsym.c, c-typeprint.c, expprint.c, findvar.c, mipsread.c, printcmd.c, source.c, stabsread.c, stack.c, symmisc.c, tm-29k.h, valops.c, values.c: Replace SYMBOL_NAME references with SYMBOL_SOURCE_NAME or SYMBOL_LINKAGE_NAME as appropriate. * buildsym.c (start_subfile, patch_subfile_names): Default the source language to what can be deduced from the filename. * buildsym.c (end_symtab): Update the source language in the allocated symtab to match what we have been using. * buildsym.h (struct subfile): Add a language field. * c-typeprint.c (c_print_type): Remove code to do explicit demangling. * dbxread.c (psymtab_language): Add static variable. * dbxread.c (start_psymtab): Initialize psymtab_language using deduce_language_from_filename.
1992-12-18 * Makefile.in (VERSION): Bump to 4.7.4.Fred Fish1-120/+13
* Makefile.in (SFILES_MAINDIR): Add typeprint.c, c-typeprint.c, m2-typeprint.c, c-valprint.c cp-valprint.c m2-valprint.c. * Makefile.in (HFILES): Add valprint.h. * Makefile.in (OBS): Add typeprint.o, c-typeprint.o, m2-typeprint.o, c-valprint.o, cp-valprint.o m2-valprint.o. * typeprint.c, typeprint.h: New files for language independent type printing functions. * c-typeprint.c, m2-typeprint.c: New files for language dependent type printing functions and definitions. * valprint.h: New include file for language independent value printing definitions. * c-valprint.c, cp-valprint.c, m2-valprint.c: New files for language dependent value printing functions. * c-exp.y (production ptype): Add range_type variable and use new create_range_type function. * c-exp.y (tokentab2, tokentab3), c-lang.c (c_op_print_tab), infcmd.c (path_var_name), language.c (unk_op_print_tab), m2-lang.c (m2_op_print_tab): Change from ANSI-obsolescent "const static" to ANSI-conformant "static const". * c-exp.y (c_create_fundamental_type): Remove unused nbytes. * c-exp.y (c_language_defn, cplus_language_defn): Add c_print_type, and c_val_print. * c-lang.h (c_print_type, c_val_print): Add prototypes. * coffread.c (decode_type): Add range_type variable and call to new create_range_type function. * complaints.c (complain): Remove unused val variable. * complaints.c (_initialize_complaints): Make it void. * convex-tdep.c (value_of_trapped_internalvar): Add range_type variable and call new create_range_type function. * defs.h (enum val_prettyprint): Move enum from value.h to here so we can avoid having to include value.h just for prototypes that need the enum (thanks ANSI). * dwarfread.c (struct_type): Local anonymous_size variable is only used if !BITS_BIG_ENDIAN. * dwarfread.c (decode_subscript_data_item): Add rangetype variable and call new create_range_type function. * elfread.c (elf_symfile_read): Remove unused dbx and text_sect variables. * eval.c (evaluate_subexp): Remove unused local variable name and the statement with no side effects that initializes it. * expprint.c (print_subexp): Change local_printstr to LA_PRINT_STRING. * gdbtypes.c (create_range_type): New function that creates a range type using code fragments from object file readers as an example of what has to be initialized. * gdbtypes.c (create_array_type): Removed index_type, low_bound, and high_bound parameters, replaced with a single range_type parameter. Change function body to use passed in range_type rather than handcrafting one. * gdbtypes.h (create_range_type): Add prototype. * gdbtypes.h (create_array_type): Change prototype parameters. * infrun.c (normal_stop): Remove unused local variables tem and c. * infrun.c (hook_stop_stub): Return 0 rather than random value. * language.c (unk_lang_print_type, unk_lang_val_print): Add stub functions that call error if called. * language.c (unknown_language_defn, auto_language_defn, local_language_defn): Add initializers unk_lang_print_type and unk_lang_val_print. * language.h (struct language_defn): Reformat for larger comments, add la_print_type and la_val_print members. Add LA_PRINT_TYPE and LA_VAL_PRINT macros. Change local_printchar to LA_PRINT_CHAR and local_printstr to LA_PRINT_STRING. * m2-lang.c (m2_create_fundamental_type): Remove unused local variable nbytes. * m2-lang.c (m2_language_defn): Add initializers m2_print_type and m2_val_print. * m2-lang.h (m2_print_type, m2_val_print): Add prototypes. * main.c (execute_command): Remove unused local variable cmdlines. * main.c (echo_command), stabsread.c (read_type), printcmd.c (clear_displays), symmisc.c (block_depth), values.c (clear_value_history): Make testing of truth value of assignment result explicit. * mipsread.c (upgrade_type): Update FIXME to include future use of create_range_type. * printcmd.c (ptype_command, ptype_eval, whatis_command, whatis_exp, maintenance_print_type): Move prototypes and functions to new typeprint.c. * printcmd.c (_initialize_printcmd): Move add_com calls for ptype_command and whatis_command to new typeprint.c. * ser-bsd.c (serial_open): Remove unused variable sgttyb. * source.c (find_source_lines): Local variable c only used when LSEEK_NOT_LINEAR is defined. * stabsread.c (read_array_type): Use new create_range_type function. * stabsread.c (read_range_type): Add new index_type variable and call new create_range_type function rather than handcrafting range types. * symmisc.c (type_print_1): Change usages to LA_PRINT_TYPE. * symtab.c (typedef_print usages): Use c_typedef_print, renamed. * symtab.c (type_print_base usages): Use c_type_print_base. * symtab.c (type_print_varspec_prefix usages): Use c_type_print_varspec_prefix. * symtab.c (type_print_method_args usages): Use cp_type_print_method_args. * valprint.c: Completely ripped apart and the fragments used to create c-valprint.c, cp-valprint.c, m2-valprint.c, and valprint.h. Remaining stuff is language independent. * value.h (struct fn_field): Forward declare for prototypes. * value.h (type_print_1): Remove prototype. * value.h (enum val_prettyprint): Moved to defs.h. * value.h (typedef_print): Prototype renamed to c_typedef_print. * value.h (baseclass_offset): Add prototype. **** start-sanitize-chill **** * Makefile.in (SFILES_MAINDIR): Add ch-typeprint.c, ch-valprint.c. * Makefile.in (OBS): Add ch-typeprint.o, ch-valprint.o. * ch-typeprint.c: New file for language dependent type printing. * ch-valprint.c: New file for language dependent value printing. * ch-exp.y (parse_number): Remove prototype and stub function. * ch-exp.y (decode_integer_literal): Removed unused digits and temp variables. * ch-exp.y (convert_float): Completely ifdef out for now. * ch-exp.y (tokentab2, tokentab3, tokentab4, tokentab5), ch-lang.c (chill_op_print_tab): Change from ANSI-obsolescent "const static" to ANSI-conformant "static const". * ch-exp.y (yylex): Add unhandled storage class enumeration literals to switch statement for completeness. * ch-lang.c (chill_create_fundamental_types): Remove unused nbytes variable. Change dummy type to 2 bytes to match int. Handle FT_VOID types gratuituously added to chill DWARF by compiler. Change FT_CHAR case to generate an TYPE_CODE_CHAR type rather than a one byte TYPE_CODE_INT type. * ch-lang.c (chill_language_defn): Add chill_print_type and chill_val_print. * ch-lang.h (chill_print_type, chill_val_print): Add prototypes. **** end-sanitize-chill ****
1992-06-25* printcmd.c (output_command): Thinko.John Gilmore1-17/+50
(x_command): Only set remembered size/format if cmd succeeds.
1992-03-29Merged in latest RS6000 diffs from Metin G. Ozisik.Per Bothner1-3/+2