Commit Graph

308 Commits

Author SHA1 Message Date
Andrew Cagney
e7ab2a476e (Mostly from Gavin Koch)
In dwarf2read.c, if the ABI is 32 bit and 64 bit addresses are encountered
discard the most significant 32 bits.
Use CORE_ADDR for address variables instead of long.
Add more explicit tx49 configur target.
Check/use sigaction/SA_RESTART in remote-sim.c
1997-12-15 12:38:05 +00:00
Keith Seitz
dd3dd91841 * gdbtk.c: move include of "guitcl.h" back out of IDE ifdef
(gdbtk_init): move ide_initialize_paths out of IDE ifdef

        * configure.in (TCL_LIBS, CONFIG_DEPS): add IDE libraries for all
        builds
        (CONFIG_OBS): remove tracepoint.o, which should always be included

        * configure: regenerate

        * Makefile.in (install-only): ALWAYS install the new gdbtk
        (REMOTE_OBS): add tracepoint.o
1997-12-01 20:53:02 +00:00
Michael Meissner
8d21d88c08 Add tracepoint.o to gdbtk builds 1997-11-27 15:13:14 +00:00
Michael Meissner
b2b1c5da2e If not --enable-ide, do not include ide libs 1997-11-27 14:30:06 +00:00
Keith Seitz
018d76dddb * tracepoint.c (set_raw_tracepoint): make sure there's a trailing slash on
the directory name

        * Merge (lots) with foundry-971118-build

        * Makefile.in (install-only): install the new gdbtk, not the old

        * top.h: add declaration of get_prompt

        * top.c (get_prompt): new function

        * gdbtk.c (gdbtk_call_command): also run idle hooks for class_trace
        commands
        (gdbtk_init): add new commands "gdb_get_locals", "gdb_get_args",
        "gdb_get_function", "gdb_get_line", "gdb_get_file",
        "gdb_tracepoint_exists", "gdb_get_tracepoint_info", "gdb_actions",
        and "gdb_prompt"
        (gdb_get_vars_command): new function
        (gdb_get_line_command): new function
        (gdb_get_file_command): new function
        (gdb_get_function_command): new function
        (gdb_get_tracepoint_info): new function
        (gdbtk_create_tracepoint): new function
        (gdbtk_delete_tracepoint): new function
        (tracepoint_notify): new function
        (tracepoint_exists): new function
        (gdb_actions_command): new function
        (gdb_tracepoint_exists_command): new function
        (gdb_prompt_command): new function

        * main.tcl: initialize gdbtk_state(readline)

        * console.tcl (invoke): get realine working
        (activate): add prompt argument for readline
        (setprompt): add prompt argument for readline

        * interface.tcl (gdbtk_tcl_readline): hack to get readline working

        * lots: Merge with foundry-971118-build

        * console.tcl (setprompt): get prompt from gdb

        * prefs.tcl (pref_set_defaults): add tracepoint defaults

        * interface.tcl (gdbtk_tcl_tracepoint): new function

        * src.tcl (constructor): set default behavior of left click, make
        a tracepoint dot, too
        (fill_files): "new" function: ripped out of "location"
        (location): use fill_files instead
        (do_bp): add support for tracepoints
        (bp_line): add support for tracepoints
        (set_tracepoint): new function
        (config_win): add "Set tracepoint here" to right-click menu

        * actiondlg.tcl: new file to help with tracepoint data collection actions

        * tracedlg.tcl: new file to help with tracepoints
1997-11-26 22:38:10 +00:00
Andrew Cagney
f7b8c9ce46 Improve GDB support for FreeBSD host/target.
To configure.in: make PRINTF_HAS_LONG_LONG check more pedantic; check
that SCANF_HAS_LONG_DOUBLE instead of assuming PRINTF_HAS_LONG_DOUBLE
implies it; document.
1997-11-24 06:50:12 +00:00
Geoffrey Noer
98fa4ade2c Thu Nov 20 04:11:27 1997 Geoffrey Noer <noer@cygnus.com>
* aclocal.m4: add EXEEXT setting rule
        * configure.in: call it
        * configure: regenerate
        * Makefile.in: pepper with EXEEXTs in appropriate places,
        set SHELL = @SHELL@ for those lame hosts that don't have a /bin/sh
1997-11-20 12:20:39 +00:00
Stan Shebs
501ad43a89 Remove sanitized-out Magic Cap support, will never be released 1997-10-06 19:38:43 +00:00
Ian Lance Taylor
f1f6dd9c39 * configure.in (tixdir): Update for cygwin32 case for Tcl 8.0.
* configure: Rebuild.
1997-08-08 19:20:42 +00:00
Martin Hunt
1154b47ab1 Thu Aug 7 14:08:23 1997 Martin M. Hunt <hunt@cygnus.com>
* configure.in: Change required Tix version to 4.1.8.0 .
	* configure: Rebuilt.
1997-08-07 21:07:44 +00:00
Geoffrey Noer
35ce4f0813 Wed Aug 6 16:15:31 1997 Geoffrey Noer <noer@cygnus.com>
* Makefile.in: add DLLTOOL = @DLLTOOL@, pass on DLLTOOL to
        sub makes, change clean rule to also remove *.a to remove
        libwigglers.a, in dependencies: add ppc-bdm.o ocd.o ser-ocd.o and
        remove remote-wiggler.o
        * configure.in: add DLLTOOL support
        * configure: regenerate
        * wigglers.def: new file for imports for wigglers.dll
        * ser-ocd.c: new file which is layer between ocd.c and either the
        wigglers.dll or the target box, only stub so far
        * config/powerpc/ppc-eabi.mt: add ppc-bdm.o to TDEPFILES
        * config/powerpc/ppc-sim.mt: add ppc-bdm.o to TDEPFILES
        * config/i386/cygwin32.mh: add ocd.o ser-ocd.o libwigglers.a
        to XDEPFILES, add rules to build libwigglers.a

        checking in changes of Stu Grossman  <grossman@cygnus.com>:
        * remote-wiggler.c: delete
        * ocd.c: new, was remote-wiggler.c
        always include sys/types.h, include ocd.h, move WIGGLER
        commands and many wiggler prototypes to ocd.h, make wiggler_desc
        static, stop making local wiggler functions static,
        define write_mem_command for wiggler_write_bytes
        (wiggler_start_remote): stop hardcoding the target type,
        instead set and use a target_type variable.
        (wiggler_open): add new target_type and ops args
        (wiggler_wait): now no longer takes pid and target_status as args,
        stop trying to set target_status struct, remove BGND insn
        checks
        (read_bdm_registers): renamed to wiggler_read_bdm_registers
        (wiggler_read_bdm_registers): numregs arg changed to reglen arg,
        remove pktlen check, set reglen instead of numregs
        (dump_all_bdm_regs): delete
        (wiggler_fetch_registers): delete
        (wiggler_prepare_to_store): now just an empty function
        (wiggler_store_registers): delete
        (wiggler_read_bdm_register): new
        (wiggler_write_bdm_registers): new
        (wiggler_write_bdm_register): new
        (wiggler_write_bytes): use write_mem_command variable instead of
        WIGGLER_WRITE_MEM
        (get_packet): renamed to wiggler_get_packet, change refs throughout
        (put_packet): renamed to wiggler_put_packet, change refs throughout
        (wiggler_get_packet): add break to default case of switch,
        change length of WIGGLER_GET_VERSION len to 10 from 4 to match
        specs
        (wiggler_mourn): unpush_target with current_ops, not &wiggler_ops
        (flash_xfer_memory): delete
        (noop_store_registers): new placeholder replacement for
        target_store_registers() which prevents generic_load from trying to
        set up the PC.
        (bdm_update_flash_command): add store_registers_tmp variable,
        make handling of wiggler_ops more generic -- define wiggler_ops
        in a target-specific file instead (such as ppc-bdm.c in the case
        of the ppc), use current_target to deal with registers again
        making this file less target-specific.
        (bdm_read_register_command): new
        (_initialize_remote_wiggler): stop doing add_target (&wiggler_ops),
        comment out add_cmd ("read-register", ...)
        * ocd.h: new, contains common wiggler prototypes, command definitions
        * ppc-bdm.c: file for ppc-specific OCD code, including target_ops
        structure for ppc bdm
        (bdm_ppc_open): new
        (bdm_ppc_wait): new
        (bdm_ppc_fetch_registers): new
        (bdm_ppc_store_registers_: new
        (_initialize_bdm_ppc): new
	* config/powerpc/tm-ppc-eabi.h: add necessary CPU32 BDM defines
1997-08-07 06:31:46 +00:00
Ian Lance Taylor
9b119644fc * gdbtk.c (Tcl_Alloc): Don't provide our own version of this if
_WIN32.
	(Tcl_Realloc, Tcl_Free): Likewise.
	* configure.in: Check for cygwin32 environment.  Define and
	substitute WIN32LIBS and WIN32LDAPP.  Always set configdir to
	unix; setting it to win was for an old Tcl/Tk configuration
	scheme.
	* aclocal.m4 (CY_AC_LOAD_TKCONFIG): Substitute TK_BUILD_INCLUDES.
	* Makefile.in (TK_CFLAGS): Add @TK_BUILD_INCLUDES@.
	(WIN32LDAPP, WIN32LIBS): Define.
	(CLIBS): Add $(WIN32LIBS).
	(gdb): Use $(WIN32LDAPP).
	* configure: Rebuild.
1997-08-01 19:24:55 +00:00
Martin Hunt
6bc5b2fa96 Tue Jul 22 19:45:37 1997 Martin M. Hunt <hunt@cygnus.com>
* configure.in, aclocal.m4: Another fix to find the
	correct Tix library name.

	* configure: Rebuilt.
1997-07-23 02:45:59 +00:00
Martin Hunt
2476848aaf Thu Jul 10 00:02:41 1997 Martin M. Hunt <hunt@cygnus.com>
* Makefile.in, configure.in, aclocal.m4: Add Itcl, Tix, and
	IDE configuration information.

	* gdbtk.c (breakpoint_notify): Send address, linenumber and
	filename when a breakpoint is set.  Avoids call to bp_info.
 	(gdbtk_init): Call Tcl_FindExecutable(). Add code to handle
	Itcl, Tix and IDE initialization.

	* defs.h (init_ui_hook): Change prototype to accept one arg.

	* main.c (gdb_init): Change prototype to accept one arg.

	* top.c (gdb_init): Accepts one argument which it uses to
	call (*init_ui_hook), which will be gdbtk_init(). This is
 	used for calling Tcl_FindExecutable().

	* gdbtcl/breakpoint.tcl (gdbtk_tcl_breakpoint): Change to
	accept variable number of args for compatibility with
	cchanges in gdbtk.c.

	* configure: Regenerated.

	* gdbtcl/tclIndex: Regenerated.
1997-07-10 07:15:26 +00:00
Andrew Cagney
c14cabbac4 Part II of getting GdbTk's stop button to always work. 1997-05-08 01:00:39 +00:00
Jason Molenda
991747113e * configure.in (gdbtcl): Create soft-link for gdbtcl/ directory instead
of gdbtk.tcl.
1997-04-01 06:04:02 +00:00
Ian Lance Taylor
0cb7d01dd2 * gdbinit.in: New file.
* .gdbinit: Remove.
	* configure.in: Generate .gdbinit from gdbinit.in.
	* configure: Rebuild.
1997-03-31 19:57:51 +00:00
Michael Meissner
23e92f3fbd Make powerpc simulator support in gdb dependent on whether the simulator was configured in 1997-03-21 20:56:10 +00:00
Martin Hunt
8a19b35a1b Wed Mar 19 15:16:17 1997 Martin M. Hunt <hunt@onions.cygnus.com>
* Makefile.in:  Install gdbtcl dir instead of gdbtk.tcl.

	* gdbtk.c: Added some ifdefs for Windows.  Changed GDBTK_FILENAME
	to GDBTK_LIBRARY, which is now a path to search.
	(gdb_path_conv): New function.  Convert Cygwin32 pathname to
	DOS-style pathname.

	* aclocal.m4, configure.in: Changes for Windows builds.

	* configure: Rebuilt.
1997-03-19 23:39:20 +00:00
Tom Tromey
469640865d * configure: Regenerated.
* configure.in (LIBS): Re-reverse order of TCL_LIBS and TK_LIBS.
1997-03-14 17:16:43 +00:00
Tom Tromey
f02156cf49 * configure: Regenerated.
* configure.in: Run AC_CONFIG_AUX_DIR before AC_CANONICAL_SYSTEM.

	* config.in: Regenerated.

	* acconfig.h (START_INFERIOR_TRAPS_EXPECTED, sys_quotactl,
	HAVE_HPUX_THREAD_SUPPORT): Define.

	* gdbtk.c (x_event): Use Tcl_DoOneEvent, TCL_DONT_WAIT,
	TCL_ALL_EVENTS.

	* configure: Regenerated.
	* configure.in (ENABLE_GDBTK): Put TCL_LIBS after TK_LIBS in
	LIBS.
1997-03-13 20:39:56 +00:00
Mark Alexander
33ef0f9387 First cut at supporting simulators in gdbserver:
* configure, configure.in: Allow gdbserver to be configured
	for cross-target environments.
	* gdbserver/Makefile.in: Add simulator support.
	* gdbserver/configure.in: Eliminate assumption that host == target.
	Simplify using gdb/configure.tgt and gdb/configure.host.
	Fix other minor configuration errors.
	* gdbserver/low-sparc.c: Fix compile error.
	* gdbserver/remote-utils.c: Eliminate assumption that registers
	and addresses are four bytes.  Fix minor compile errors and warnings.
	* gdbserver/server.c: Rewrite numerous instances of identical code
	for starting inferior processes to call new function start_inferior.
	Eliminate assumption that registers and addresses are four bytes.
	* gdbserver/server.h: Add missing prototypes to eliminate compiler
	warnings.
	* gdbserver/low-sim.c: New file to mate gdbserver with simulators.
	* config/mips/vr5000.mt: Add Vr5000 simulator support to gdbserver.
	* config/i386/linux.mh: Eliminate gdbserver support as a first step
	in moving such support from host to target makefile fragments.
	* config/i386/linux.mt: Move gdbserver support here from linux.mh.
1997-03-11 15:49:20 +00:00
Stu Grossman
c4c9112ad8 * configure.in configure (HPUX/OSF thread support): Enable this
only when running GCC, since HP's thread header files use ANSI C
	which is not supported by their default compiler.
1997-02-27 18:09:22 +00:00
Stu Grossman
bfde4a671b * configure.host (i[3456]86-*-windows): Disable long long
support for WinGDB.  Add mswin to configdirs.
	* configure.in configure:  Move calls to configure.host and
	configure.tgt to the top of configure.in to allow them to set
	config variables before they are referenced.
1997-02-27 17:46:18 +00:00
Stu Grossman
95b475477e * configure.in configure: Check if host has libdl if doing
Solaris threads.
1997-01-22 02:33:50 +00:00
Stu Grossman
ef6c51d13f * configure.in configure: Check if host has libm. Make sure we
are using gcc when using the -export-dynamic option.  Fixes a
	problem with building under Solaris/SunPro cc.
1997-01-22 01:12:19 +00:00
Stu Grossman
6c310da826 * Makefile.in configure configure.in: Remove ENABLE_CLIBS,
ENABLE_OBS, and THREAD_DB_OBS.  These are consolidated into LIBS
	and CONFIG_OBS.
	* configure configure.in:  Clean up test cases around thread support.
start-sanitize-v850
	* configure.tgt (v850-*-*):  Include v850ice.o and v850.lib if
	host is Windows.
end-sanitize-v850
	* c-valprint.c ch-valprint.c cp-valprint.c eval.c expprint.c
	printcmd.c valops.c value.h values.c:  Add bfd_section arg to
	value_at and value_at_lazy.
	* coffread.c dbxread.c elfread.c mdebugread.c minsyms.c symtab.h:
	Add bfd_section arg to prim_record_minimal_symbol_and_info.
	* corefile.c gdbcore.h printcmd.c valops.c:  Use read_memory_section
	instead of read_memory.  It takes a bfd_section arg.
	* coffread.c dbxread.c elfread.c gdb-stabs.h objfiles.h:  Remove
	unnecessary cast for assignment of struct dbx_symfile_info.
	Struct objfile now uses a real pointer instead of PTR for this
	element.
	* dbxread.c (dbx_symfile_init): Stash bfd section pointers for
	text, data and bss into dbx_symfile_info.
	* exec.c (xfer_memory):  Handle transfers for user-specified
	sections.
	* findvar.c (read_var_value locate_var_value):  Copy bfd section
	from the symbol to the value.
	* gdb-stabs.h:  Add section pointers for text, data and bss
	sections.
	* maint.c (translate address command):  Add test code for overlay
	address translation.
	* printcmd.c (do_examine do_one_display):  Now takes a bfd section
	arg.
	* (print_formatted x_command):  Record current section along with
	current address for repeated commands.
	* sparc-nat.c (fetch_inferior_registers):  Change
	target_xfer_memory to target_{read write}_memory to allow changes
	to target_xfer_memory interface for section info.
	* symmisc.c (dump_msymbols print_symbol):  Print section
	assocaited with symbol.
	* symtab.c (fixup_symbol_section):  New routine to
	add section info to symbols returned by lookup_symbol.
	* symtab.h (struct general_symbol_info):  Add bfd section to
	symbols.
	* target.c target.h (target_xfer_memory):  Add bfd section to
	args.
	* (target_read_memory_section):  New routine to read data from a
	specific section.
	* (target_memory_bfd_section):  New global variable to pass bfd
	section in to targets.
	* valarith.c (value_add value_addr value_array):  Preserve bfd
	section when computing new value.
	* value.h (struct value):  Add bfd section to values.
	* values.c (allocate_value value_copy):  Initialize/preserve bfd
	section.
	* (unpack_double):  Clean up _MSC_VER conditionals to remove
	duplicate code.
start-sanitize-v850
	* v850ice.c:  New module to support communication with NEC's
	PC-based ICE.
	* config/v850/tm-v850.h (REGISTER_NAMES):  Replace sp, gp, fp, and
	ep names with rxx names.  sp and fp are renamed via a different
	mechanism.
end-sanitize-v850
1997-01-04 00:25:53 +00:00
Peter Schauer
0db3fe94c3 Add support for Irix 6.2 native O32 and N32 ABI.
* config.in, configure.in, configure:  Check for <objlist.h>.
	* configure.tgt:  Handle mips*-sgi-irix6* like irix5 for now.

	* cp-valprint.c (cp_print_value_fields):  Use SYMBOL_VALUE_ADDRESS
	instead of SYMBOL_BLOCK_VALUE to get the address of a static member.

	* dwarf2read.c:  Turn warnings and recoverable errors into complaints,
	add new complaints where appropriate.
	gcc -Wall cleanup.
	(struct line_head):  Change line_base from char to int to avoid
	problems with compilers whose plain char is represented by an
	unsigned char.
	(struct partial_die_info):  Add is_declaration field.
	(dwarf2_tmp_obstack):  New obstack for allocating temporary storage
	used during symbol reading.
	(cu_header_offset):  New variable for resolving relative reference
	dies.
	(optimized_out, basereg, islocal, frame_base_reg, frame_base_offset):
	New interface variables for decode_locdesc.
	(struct dwarf2_pinfo):  New structure for communication between
	psymtab and symtab reading, passed via pst->read_symtab_private.
	(dwarf2_has_info, dwarf2_build_psymtabs):  Accept objects files
	without line number sections.
	(dwarf2_build_psymtabs_hard):  Initialize temporary obstack
	for symbol reading.
	Allocate and initialize pst->read_symtab_private.
	Relocate pst->textlow and pst->texthigh with baseaddr.
	(scan_partial_symbols):  Do not add DW_AT_declaration symbols
	to the partial symbol table.
	Add file scope enumerator symbols to the partial symbol table.
	Fix typo in highpc computation.
	If we didn't find a lowpc, set it to highpc to avoid complaints
	from `maint check.
	(add_partial_symbol):  Relocate symbol values with baseaddr.
	Add static DW_TAG_subprogram and DW_TAG_variable symbols to the
	minimal symbol table.
        Obtain symbol values for DW_TAG_variable symbols from the location
	descriptor, skip symbols with missing location desciptors.
	Skip symbols for aggregate types without children.
	Handle enumerator symbols.
	(dwarf2_psymtab_to_symtab):  Issue symbol reading message if verbose.
	(psymtab_to_symtab_1):  Set local variables from
	pst->read_symtab_private, set cu_header_offset and baseaddr.
	Initialize temporary obstack for symbol reading, initialize
	buildsym and add a cleanup to really_free_pendings.
	Relocate highpc with baseaddr when calling end_symtab.
	If the compilation is from a C file generated by language
	preprocessors, do not set the symtab language if it was already
	deduced by start_subfile.
	Removed verbose sorting symbol table message.
	(process_die):  Handle DW_TAG_ptr_to_member_type and
	DW_TAG_reference_type.
	Use read_subroutine_type to get the function type for
	DW_TAG_subprogram before calling read_func_scope.
	(read_file_scope):  Initialize file name to <unknown>, start_subfile
	expects a non-NULL name.
	If we didn't find a lowpc, set it to highpc to avoid complaints
	from finish_symbol.
	Relocate lowpc and highpc with baseaddr.
	Get rid of Irix6.2 native cc compile machine prefix in comp_dir.
	Zero out ftypes for each new compilation unit (may be different
	language or different objfile).
	Accept compilation units without line number information, pass
	comp_dir to decode_lines.
	(read_func_scope):  Initialize function name to <unknown> to avoid
	core dumps when DW_AT_name is missing.
	Relocate lowpc and highpc with baseaddr.
	Handle DW_AT_frame_base, keep result for DW_OP_fbreg operations.
	Pass function type to new_symbol.
	(read_lexical_block_scope):  Relocate lowpc and highpc with baseaddr.
	(read_structure_scope):  Set TYPE_TAG_NAME, not TYPE_NAME.
	Handle DW_TAG_class_type.
	Copy fields to type_obstack, release temporary storage for fields.
	Don't add symbol if die is a stub die and has no children.
	Handle C++ static member fields.
	(read_enumeration):  Set TYPE_TAG_NAME, not TYPE_NAME.
	Copy fields to type_obstack, release temporary storage for fields.
	Let new_symbol handle the symbol creation for enumerators
	instead of handcrafting a symbol.
	Determine signedness of enum type from enumerators.
	(dwarf_read_array_type):  Handle variable length arrays.
	Use lookup_pointer_type instead of handcrafting a type.
	Create array type only if a DW_TAG_subrange_type was found.
	(read_tag_pointer_type, read_tag_reference_type):
	Use lookup_pointer_type and lookup_reference_type instead
	of handcrafting a type.
	(read_tag_ptr_to_member_type):  New function to handle
	DW_TAG_ptr_to_member_type.
	(read_subroutine_type):  Handle parameter dies.
	Use lookup_function_type instead of handcrafting a type.
	(read_typedef):  Allocate a TYPE_CODE_TYPEDEF type for the typedef.
	(read_base_type):  If the type has a name, use init_type to create
	a new type instead of second guessing a fundamental type.
	(read_comp_unit):  Reset die reference table before building
	a new one.
	(dwarf2_read_section):  Read section contents into psymbol_obstack.
	(dwarf2_read_abbrevs):  Handle unterminated abbreviations
	for a compile unit gracefully.
	(read_partial_die):  Zero partial die before reading its info.
	Handle DW_AT_declaration.
	Fix typo in handling of DW_FORM_block4.
	(read_full_die):  Fix typo in handling of DW_FORM_block4.
	(read_1_signed_byte, read_2_signed_bytes, read_4_signed_bytes):
	New routines to get signed values from a buffer.
	(read_n_bytes, read_string):  Allocate storage from the temporary
	obstack. If the host char size permits it, return pointer
	to buffer instead of allocating storage.
	(set_cu_language):  Handle DW_LANG_Mips_Assembler.
	(dwarf_attr):  Return NULL if reference die for DW_AT_specification
	or DW_AT_abstract_origin die is not found.
	(record_minimal_symbol):  Removed, replaced with a direct call to
	prim_record_minimal_symbol, it now handles saving the string itself.
	(convert_locdesc):  Removed, partial symtab reading now uses
	decode_locdesc.
	(dwarf_attr):  Use dwarf2_get_ref_die_offset to get the absolute
	offset for the die reference.
	(dwarf_decode_lines):  Complain if the line section info is missing.
	Use read_1_signed_byte to extract lh.line_base to avoid
        problems with compilers whose plain char is represented by an
        unsigned char.
	Add cleanups for allocated temporary storage.
	Start a subfile for the first file in the state machine.
	Fix off by one problem with dirs.dirs access.
	Use comp_dir when directory index is 0.
	Support multiple sequences (from Jason Merrill <jason@cygnus.com>).
	(dwarf2_start_subfile):  Try to keep line numbers from identical
	absolute and relative file names in a common subfile.
	(new_symbol):  Allocate symbol and symbol name on the symbol_obstack.
	Set SYMBOL_LINE from DW_AT_decl_line if present.
	Set SYMBOL_TYPE from passed type if not NULL.
	Change DW_TAG_variable symbol types with missing type entries
	to a sensible type.
	Handle optimized_out, offreg and islocal storage classes.
	Add external symbols with type information whose address isn't
	known as LOC_UNRESOLVED symbols.
	Synthesize typedefs for C++ classes, structs, unions and enumerations.
	Handle DW_TAG_enumerator symbols, complain for unrecognized
	symbol tags.
	(die_type):  A missing DW_AT_type represents a void type.
	Use dwarf2_get_ref_die_offset to get the absolute offset for
	the die reference.
	(die_containing_type):  New function to build type from
	DW_AT_containing_type attribut.
	(read_type_die):  Handle DW_TAG_ptr_to_member_type.
	Treat DW_TAG_subprogram like DW_TAG_subroutine_type.
	(dwarf_base_type):  Fix typo with creation of FT_UNSIGNED_SHORT
	fundamental type.
	(create_name):  Removed, symbol name allocation is now done
	in new_symbol.
	(dump_die):  Use print_address_numeric to print a CORE_ADDR.
	(dwarf2_empty_die_ref_table):  New function to clear the die
	reference table.
	(dwarf2_get_ref_die_offset):  New function to get the absolute
	die offset from a die reference attribute.
	(decode_locdesc):  Complete rewrite using a stack, code mostly
	borrowed from dwarfread.c:locval.
	(dwarf_alloc_type):  Removed, replaced by direct calls to alloc_type.
	(dwarf_alloc_block):  Allocate block on temporary obstack.

	* elfread.c (elf_symtab_read):  When handling Irix dynamic symbols,
	skip section name symbols and relocate all others.
	(elf_symfile_read):  Build dwarf2 psymtab even if offset is non-zero.

	* irix5-nat.c (fetch_core_registers):  Handle core_reg_sect
	from N32 executables. Call registers_fetched after extracting
	the registers.
	(obj_list_variant, struct link_map, LM_OFFSET, LM_ADDR):  New
	definitions to enable support of O32 and N32 format objlists.
	(struct so_list):  New members offset, so_name and lmstart to
	eliminate dependencies from the objlist format used.
	(solib_map_sections, symbol_add_stub, solib_add,
	info_sharedlibrary_command, solib_address, clear_solib):  Use
	so_name and LM_OFFSET.
	(first_link_map_member):  Rewrite to enable support of O32 and N32
	format objlists.
	(next_link_map_member, xfer_link_map_member):  New functions to
	support O32 and N32 format objlists.
	(find_solib):  Use first_link_map_member, next_link_map_member and
	xfer_link_map_member.
	(solib_create_inferior_hook):  Use TARGET_SIGNAL_* instead of
	host signal numbers.

	* mdebugread.c (parse_partial_symbols, handle_psymbol_enumerators):
	Pass CORE_ADDR variant to add_psymbol_to_list.

	* mips-tdep.c (heuristic_proc_desc):  Stop examining the prologue
	if we encounter a positive stack adjustment. Handle `move $30,$sp'.
	Handle `sd reg,offset($sp)' for 32 bit ABIs.

	* symmisc.c (dump_msymbols, print_partial_symbols):  Use
	print_address_numeric to print a SYMBOL_VALUE_ADDRESS.
	(dump_symtab):  Print compilation directory if it is not NULL.

	* valops.c (search_struct_field, value_struct_elt_for_reference):
	Use SYMBOL_VALUE_ADDRESS instead of SYMBOL_BLOCK_VALUE to get the
	address of a static member.
1996-12-01 08:33:39 +00:00
Peter Schauer
074d813d38 * alpha-tdep.c (heuristic_proc_desc): Stop examining the prologue
if we encounter a positive stack adjustment.
	(find_proc_desc):  If heuristic_fence_post is non-zero, use
	heuristic_proc_start to determine the start of a function before
	calling heuristic_proc_desc.

	* coffread.c (coff_symtab_read):  Change minimal symbol types
	for C_LABEL symbols from mst_* to mst_file_*.

	* config/m68k/sun3os4.mh (MMALLOC_CFLAGS): Define MMCHECK_FORCE to 1.

	* configure.in:  Handle error message from sun3 native ld when
	configuring HLDFLAGS.
	* configure:  Regenerated with autoconf.

	* c-valprint.c (c_value_print):  Adjust value address by VALUE_OFFSET.
	* cp-valprint.c (cp_print_value):  Prevent gdb crashes by making sure
	that the virtual base pointer from an user object still points to
	accessible memory.

	* dbxread.c (dbx_symfile_init):  Initialize sym_stab_info to
	clear the recently added header_files fields.
	(dbx_symfile_finish):  Free hfiles[i].vector to avoid storage leak.
1996-11-09 09:17:34 +00:00
Mark Alexander
8ddf07a29a * dbxread.c (process_one_symbol): Interpret end-of-function
markers correctly; this fixes problem on Vr5000 where all
	functions in a module had the same address.
	* configure.in, configure.tgt, configure.host, gdbserver/configure.in:
	Correct	for pc-linux-gnu problem in config.guess.
	* configure: Regenerate.
1996-10-24 18:51:46 +00:00
Stan Shebs
943e243ce7 * configure.host: New file, host configuration mapping.
* configure.tgt: New file, target configuration mapping.
	* configure.in: Remove host and target mapping.
	* configure: Rebuild.
1996-10-18 01:27:59 +00:00
Stu Grossman
5d394f7072 * Makefile.in: Add rule for hpux-thread.o (needs special header
files).
	* (SUBDIRS):  Remove mswin.
	* Change procedure for creating init.c.  Speeds things up quite a
	bit.
	* config.in configure configure.in:  Check for select, poll.
	* Check for OSF header files before including hpux-thread.o.
	* Don't configure doc or testsuite when building under MSVC.
	* findvar.c value.h (read_register_pid write_register_pid):  Make
	global.  Needed for hppa-tdep.c.
	* (supply_register):  Don't set pid to inferior_pid when supplying
	registers.
	* hppa-tdep.c (saved_pc_after_call):  frame_saved_pc ->
	FRAME_SAVED_PC.
	* (frame_saved_pc):  Change name to hppa_frame_saved_pc.
	* (hppa_pop_frame):  Don't use a pid of 0 with target_write_pc.
	Use write_pc instead, which uses the correct pid.
	* (target_read_pc target_write_pc):  Use read/write_register_pid
	instead of read/write_register to preserve the pid passed in.
	* inftarg.c (child_can_run):  Add flag child_suppress_run to allow
	hpux-threads.c to override this as a runnable target.
	* config/pa/nm-hppah.h:  Define target_new_objfile and
	target_pid_to_str.
	* config/pa/tm-hppa.h (FRAME_SAVED_PC):  Use hppa_frame_saved_pc
	instead of frame_saved_pc.
	* config/m68k/tm-m68k.h:  Define TARGET_M68K for Wingdb.
	* config/m68k/tm-monitor.h:  Use FRAME_CHAIN_VALID_ALTERNATE, since
	we can't easily determine the start file bounds with ELF.
	* config/mips/tm-mips.h:  Define TARGET_MIPS for Wingdb.
	* hpux-thread.c:  New file for HPUX/OSF thread support.
	* osf-share/{README AT386/cma_thread_io.h HP800/cma_thread_io.h
	RIOS/cma_thread_io.h cma_attr.h cma_deb_core.h cma_debug_client.h
	cma_errors.h cma_handle.h cma_init.h cma_list.h cma_mutex.h
	cma_sched.h cma_semaphore_defs.h cma_sequence.h cma_stack.h
	cma_stack_int.h cma_tcb_defs.h cma_util.h}:  New files for OSF
	thread support.
1996-10-08 17:06:17 +00:00
Fred Fish
4d99d4eaaf Make sanitize-v850 lines into comments and rebuild configure 1996-09-28 15:22:09 +00:00
Stu Grossman
f6c6791e0a Sanitize out v850 stuff. 1996-09-28 01:00:59 +00:00
Stu Grossman
e281063162 * configure.in: Recognize v850 target.
* v850-tdep.c:  New file, NEC V850 target support.
	* config/v850/{v850.mt tm-v850.h}:  New files for NEC V850 support.
1996-09-28 00:59:13 +00:00
Mark Alexander
54225fd023 * configure.in, config/i386/tm-linux.h: Fix configure
problem on older Linux systems that prevented core files
	from being recognized.
1996-09-27 06:13:24 +00:00
Ian Lance Taylor
88907d73ef * configure.in: Add cases for MIPS 5000 like MIPS 4300.
* configure: Rebuild.
1996-09-17 16:23:23 +00:00
Fred Fish
1d5eb13704 * Makefile.in (INTERNAL_LDFLAGS): Add @HLDFLAGS@ to list.
(HLDENV): Set to @HLDENV@.
	(gdb): Prefix link command line with $(HLDENV).
	* configure.in: Add support to test for --enable-shared and
	generate appropriate values for HLDFLAGS and HLDENV.
	* configure: Regenerated with autoconf.
PR 10489
1996-09-14 00:09:24 +00:00
Stu Grossman
7bd1f0c5f9 * blockframe.c (inside_main_func): Cleanup slightly. Move
mainsym def into the block it's used in.
	* configure.in configure:  Allow NATDEPFILES to be recognized in
	.mh files regardless of whitespace.

	* cpu32bug-rom.c (cpu32bug_cmds):  Change load_response string to
	keep downloads from hanging.

	* remote-wiggler.c:  Add support for flash upgrades.
	* (wiggler_error):  Fix message format.  Add new error code.
	* (wiggler_write_byets):  Error code is hex.  Report errors with
	proper routine name.
	* (wiggler_read_byets):  Report errors with proper routine name.
	* (get_packet):  Add support for new flash commands.
	* (wiggler_load):  Call clear_symtab_users() to reset things
	properly after download.
	* (flash_xfer_memory bdm_update_flash_command):  New funxtions to
	support flash upgrades for Wiggler.
	* (_initialize_remote_wiggler):  Add `bdm update-flash' command.
1996-09-08 23:33:23 +00:00
Stu Grossman
d9951af428 * Makefile.in: Add mswin to SUBDIRS. Add rules for
mswin/libwingdb.a and remote-wiggler.o.
	* breakpoint.c (breakpoint_here_p):  Clean up bp enabled test.
	* (breakpoint_inserted_here_p):  New func, just like
	breakpoint_here_p, except it's honest.  Honestly.
	* breakpoint.h:  Proto for above.
start-sanitize-gdbtk
	* configure configure.in:  Add host *windows* to list of hosts
	that don't support GDBtk.
end-sanitize-gdbtk
	* configure configure.in:  Add mswin to configdirs if host is
	i[3456]86-*-windows.
	* core-aout.c (fetch_core_registers register_addr) gdbcore.h:
	Change all vars that can contain addresses to type CORE_ADDR.
	* findvar.c (supply_register):  Allow val to be NULL.  This means
	that regno is unsupported.
	* (read_pc read_pc_pid write_pc write_pc_pid):  Make non-pid forms
	just call pid forms with inferior_pid so that there's only once
	place to hack PC's and such.
	* infrun.c (proceed):  Don't skip breakpoints if user changed PC.
	* remote-wiggler.c:  New file.  Support for BDM interface from
	Macraigor Systems.
	* serial.c:  Enhance serial logging capability.  Add hex and octal
	output modes (set remotelogbase {hex|octal|ascii}.  Also log
	breaks, timeouts, errors, and eofs.
	* serial.h:  Redefine SERIAL_SEND_BREAK to go through a wrapper
	function so that we can log breaks.  Don't export serial_logfile
	or serial_logfp.
	* top.c (execute_command):  Don't test for serial_logfp here.
	Just call serial_log_comand, and let serial.c sort it out.
	* valops.c (value_of_variable):  Don't attempt to establish frames
	for static and global variables.  This makes things work a bit
	better if the stack or frame pointer is trashed.
	* config/m68k/monitor.mt (TDEPFILES):  Add remote-wiggler.o.
	* config/m68k/tm-m68k.h:  Define STACK_ALIGN.  CPU32 can't hack
	misaligned stacks during function calls.
1996-09-05 01:01:05 +00:00
Ian Lance Taylor
0cf433d937 * configure.in: If CY_AC_PATH_TCLCONFIG can't find TCL, don't run
CY_AC_LOAD_TCLCONFIG.
	* configure: Rebuild.
1996-08-28 17:13:00 +00:00
Geoffrey Noer
0579b53d5b Tue Aug 27 04:25:08 1996 Geoffrey Noer <noer@cygnus.com>
* configure.in: work around host_alias configure bug.
        AC_CANONICAL_HOST is called twice (first by AC_CHECK_TOOL
        and second by AC_CANONICAL_SYSTEM).  The second clobbers the
        previous setting.  Circumventing by moving the second check
        to before the first.
        * configure: regenerated
1996-08-27 11:32:34 +00:00
Martin Hunt
7b3fa778e2 Mon Aug 26 18:36:54 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
* config/d10v/d10v.mt: New file.
	* config/d10v/tm-d10v.h: New file.
	* configure.in: New target D10V.
	* d10v-tdep.c: New file.
1996-08-27 01:51:55 +00:00
Fred Fish
d538f9cfbc * valprint.c (print_longest): Test for CC_HAS_LONG_LONG as well as
PRINTF_HAS_LONG_LONG.
	* expprint.c (dump_expression): Ditto.
	* configure.in: Fix check for long long support in compiler to
	use a function body, not a nested function.
	* configure: Rebuild with autoconf.
1996-08-23 00:47:10 +00:00
Ian Lance Taylor
fef1696ffc * aclocal.m4: Include ../bfd/aclocal.m4.
* configure.in: Add stdlib.h to AC_CHECK_HEADERS.  Call
	BFD_NEED_DECLARATION on malloc, realloc, and free.
	* acconfig.h: Add NEED_DECLARATION_MALLOC,
	NEED_DECLARATION_REALLOC, and NEED_DECLARATION_FREE.
	* configure, config.in: Rebuild.
	* defs.h: Include <stddef.h> and <stdlib.h> based on HAVE_*_H
	rather than __STDC__.  Only declare malloc, realloc, and free if
	NEED_DECLARATION_* is defined.
1996-08-21 01:02:53 +00:00
Stu Grossman
8501c74270 * defs.h: Define CONST_PTR as blank if compiling with Microsoft
C, else it's `const'.
	* c-lang.c c-lang.h ch-lang.c f-lang.c language.c m2-lang.c
	scm-lang.c: Microsoft C can't hack const pointers.  Use CONST_PTR
	macro instead.
	* configure configure.in defs.h:  Use AC_C_CONST to figure out if
	the compiler supports const.  Gets rid of some cruft in defs.h.
	* dwarf2read.c:  <string.h> -> "gdb_string.h"
	* remote-sim.c:  Add prototypes.  Fix call to gdbsim_kill.
	* sparcl-tdep.c (download):  Add prototypes to write_routine and
	start_routine args.

	* mswin/gdbwin.c:  Don't include both varargs.h AND stdarg.h.  Get
	rid of varargs.h  Include string.h.
	* (gdbwin_update gdbwin_fputs regs_changed_f bpt_changed_f
	update):  Fix prototypes, fix calls.
	* (update):  Return value for catch_errors.
	* (run_execute_command togdb_command_from_tty togdb_command):
	Cleanup catching of errors from calls to execute_command.  Also,
	dup command string to avoid modifying const strings.
	* (togdb_breakinfo_i_init togdb_breakinfo_i_next):  Use 0 instead
	of NULL when see if b->address isn't set.
	* (bi_disable_bpt bi_enable_bpt bi_delete_all
	bi_delete_breakpoint):  Add arg to calls to update.
	* (gui_command):  Add prototype.
	* (mswin_query):  Fix prototype.
	* (_initialize_gdbwin):  Dup string to avoid modifying const.
	* (info_path togdb_get_info_path):  Remove const from decls cuz
	this can't be const (it points at malloc'ed memory).
	* (togdb_searchpath):  Remove const from path.  Dup string to
	avoid modifying const strings.
	* rindex -> strrchr.
	* (gdbwin_list_symbols):  Regexp param is const.
	* Fix lots of refs to psymtabs to deref correct pointers.
	* (togdb_set_breakpoint_sal):  Call set_breakpoint_sal with sal,
	not &sal.
	* mswin/gdbwin.h (togdb_searchpath togdb_get_info_path
	toget_set_info_path):  Fix prototypes to match reality.
	* mswin/gui.cpp:  Define _beginthreadex and _endthreadex routines
	with proper prototypes.
	* mswin/iface.cpp (gdbwin_fputs):  Define with correct number of args.
	* mswin/ser-win32s.c:  Fix defs of min and max.
	* mswin/serdll32.c (OpenComm16):  Make cbInQueue and cbOutQueue be
	USHORT.
	* (WriteComm16):  Change lpBug from LPVOID to LPCSTR.
	* mswin/serdll32.h:  Fix prototypes for OpenComm16 and WriteComm16.
1996-08-13 00:01:37 +00:00
Tom Tromey
047465fd1b changes for new tcl/tk:
* gdbtk.c (mainWindow): Deleted.
        (cleanup_init): Don't destroy main window.
        (gdbtk_init): Main window now created by Tk_Init.

        * configure.in: Most X checks now handled automatically by Tk.
        Use new macros to find Tcl/Tk.
        * aclocal.m4: New version for new Tcl/Tk; from Don Libes.
        * config.in, configure: Regenerated.

        * Makefile.in (TCL, TCL_CFLAGS, TK, TK_CFLAGS, X11_CFLAGS,
        X11_LDFLAGS, X11_LIBS): Changed for new Tcl and Tk.
1996-08-02 02:43:27 +00:00
Fred Fish
80f600a4b2 * configure.in: Expand "long long" test to include code that triggers
known problem on HPUX with native compiler.
	(configure): Regenerated.
1996-07-30 04:26:25 +00:00
Fred Fish
3f550b5940 * configure.in: Add test for "long long" support.
* configure: Regenerate with autoconf.
	* acconfig.h: Add CC_HAS_LONG_LONG
	* config.in: Regenerate with autoheader.
	* config/mips/tm-mips64.h (FORCE_LONG_LONG): Remove
	* config/sparc/tm-sp64.h (CC_HAS_LONG_LONG): Remove.
	* config/mips/tm-vr4300el.h (CC_HAS_LONG_LONG): Remove.
	* config/mips/tm-vr4300.h (CC_HAS_LONG_LONG): Remove.
	* config/mips/xm-irix5.h (CC_HAS_LONG_LONG): Remove
	(PRINTF_HAS_LONG_LONG): Remove.
	(FORCE_LONG_LONG): Remove.
	* config/powerpc/xm-aix.h (UINT_MAX): Undef and use gdb's version.
	* config/convex/xm-convex.h (CC_HAS_LONG_LONG): Remove
	(PRINTF_HAS_LONG_LONG): Remove.
	* config/xm-nbsd.h (CC_HAS_LONG_LONG): Remove.
	(PRINTF_HAS_LONG_LONG): Remove.
	* config/pa/tm-hppa.h (GET_FIELD): Put parens around
	subtraction inside shift.  Put parens around subtraction
	in operand of bitwise and.
	(struct frame_info): Forward declare
 	if __STDC__ defined.
	(frame_saved_regs): Ditto.
	(struct value): Ditto.
	(struct type): Ditto.
	(struct inferior_status): Ditto.
	(init_extra_frame_info): Add prototype.
	(skip_prologue): Ditto.
	(frameless_function_invocation): Ditto.
	(frame_chain): Ditto.
	(frame_chain_valid): Ditto.
	(saved_pc_after_call): Ditto.
	(hppa_fix_call_dummy): Ditto.
	(hppa_push_arguments): Ditto.
	(pa_do_registers_info): Ditto.
	(in_solib_call_trampoline): Ditto.
	(in_solib_return_trampoline): Ditto.
	(push_dummy_frame): Ditto.
	* convex-tdep.c (decout): Use print_longest rather than
	fprintf_filtered.
	* defs.h: Remove use of FORCE_LONG_LONG and __GNUC__ to set
	CC_HAS_LONG_LONG.
	(INT_MIN): Fix so it works correctly when assigned to a long long.
	* valprint.c (longest_to_int): Rewrite to remove dependence
	on INT_MIN and INT_MAX.
	(print_longest): Rewrite the code that falls back to synthesized
	hex output when LONGEST value is not representable as in a long and
 	printf doesn't support printing long longs.
	* ch-valprint.c (chill_val_print): Cast 2nd arg of
	chill_print_type_scalar to LONGEST.
	chill_print_type_scalar): Make static and add prototype.
	* hppa-tdep.c (get_field): Ifdef out unused function.
	(set_field): Ditto.
	(extract_3): Ditto.
	(extract_5_store): Ditto.
	(extract_11): Ditto.
	(extract_12): Ditto.
	(deposit_17): Ditto.
	(extract_14): Convert to static and add prototype.
	(deposit_14): Ditto.
	(extract_21): Ditto.
	(deposit_21): Ditto.
	(extract_17): Ditto.
	(extract_5r_store): Ditto.
	(extract_5R_store): Ditto.
	(extract_5_load): Ditto.
	(find_proc_framesize): Ditto.
	(find_dummy_frame_regs): Ditto.
	(sign_extend): Ditto.
	(find_unwind_entry): Add prototype.
	(find_return_regnum): Ditto.
	(unwind_command): Ditto.
	(find_dummy_frame_regs): Add parens around subtraction in operand
	of bitwise-and.
	(skip_prologue): Add parens around operands of logical-and inside
	operand of logical-or.
	(sign_extend): Add parens around operands of subtraction inside
	operand of shift.
	(low_sign_extend): Ditto.
	* top.c (filename_completer): Convert old style decl of
	filename_completion_function into prototype.
	* f-lang.c (patch_common_entries): Ifdef out unused function.
	* stabsread.c (read_cfront_baseclasses): Remove unused local
	variable "msg_noterm".
	(resolve_cfront_continuation): Remove unused local variable "fip".
	(read_type): Remove unused variable xtypenums.
	(read_cfront_static_fields): Remove unused variable "i".
	(read_cfront_static_fields): Remove unused variable "nfields".
	(read_cfront_member_functions): Add missing comment terminator.
	(read_cfront_static_fields): Return 1 rather than random value.
	(read_cfront_baseclasses): Ditto.
	(read_cfront_baseclasses): Ditto.
	(read_cfront_baseclasses): Ditto.
	* somsolib.c (som_solib_create_inferior_hook): Remove unused
	variable "u".
	(som_solib_create_inferior_hook): Remove unused variable
	shadow_contents.
	(language.h): Add for needed prototypes.
	(som_solib_sharedlibrary_command): Add prototype.
	* hpread.c: (hpread_read_array_type): Add prototype.
	* somread.c (hpread_build_pysmtabs): Add prototype.
	(hpread_symfile_finish): Ditto.
	(hpread_symfile_init): Ditto.
	* hppah-nat.c (fetch_register): Convert old style decl
	to prototype.
	(gdbcore.h): Include for needed prototypes.
	(fetch_register): Remove unused variable "mess".
	* remote-pa.c (get_offsets): Ifdef out unused function.
	(remote_start_remote): Remove unused variable "timeout".
	(boot_board): Add prototype.
	(reaad_frame): Add prototype.
	(getpkt): Remove unused variable "bp".
	(remote_kill): Add prototype.
	(remote_mourn): Add prototype.
	(remote_insert_breakpoint): Add prototype.
	(remote_remove_breakpoint): Add prototype.
	* valops.c (value_push): Only use if PUSH_ARGUMENTS is not defined.
	* infcmd.c (do_registers_info): Only need prototype if
	DO_REGISTERS_INFO is not defined.
	(breakpoint_auto_delete_contents): Only need if
	CALL_DUMMY_BREAKPOINT_OFFSET is defined.
1996-07-28 06:32:48 +00:00
Stu Grossman
89e673a481 * sparcl-tdep.c (_initialize_sparc_tdep) config/sparc/tm-sparc.h,
config/sparc/tm-sparclite.h:  Initialize tm_print_insn from
	TM_PRINT_INSN, which comes from the tm file.

	* Makefile.in (INTERNAL_LDFLAGS):  Add in flags from configure.
	* configure configure.in:  Only make sol-thread.o for native.
	Also, switch to dlopened libthread_db.so.1.
	* sol-thread.c:  Switch to using dlopen to get the thread_db
	library.

	* configure, configure.in:  Change test for libthread_db to only
	work for configs where build/host/target are the same.
1996-07-04 00:49:25 +00:00