Commit graph

3798 commits

Author SHA1 Message Date
Peter Schauer
e7e98487ba * dwarf2read.c (dwarf2_linkage_name): New function to get
the linkage name of a die from DW_AT_MIPS_linkage_name or
	DW_AT_name.
	(read_func_scope, dwarf2_add_field, dwarf2_add_member_fn,
	new_symbol):  Use it instead of accessing DW_AT_name.
	(read_partial_die):  Use DW_AT_MIPS_linkage name as name of the
	partial die if present.
	(dwarf2_add_member_fn):  Make a copy of physname on the type obstack.
1997-02-08 09:16:26 +00:00
Jeff Law
c301abbdbb * blockframe.c (generic_frame_chain_valid): If the new frame
is not INNER_THAN the old frame, then it's not valid.
1997-02-07 17:07:49 +00:00
Mark Alexander
7d9e8fac1a * mips-tdep.c (mips16_get_imm): Fix calculation of extended immediate.
(mips16_heuristic_proc_desc): Recognize jal(x) instruction.
1997-02-04 17:18:56 +00:00
Mark Alexander
b348b9fd0e * mips-tdep.c (mips16_decode_reg_save): Distinguish between
sd and sw instructions correctly.
	(heuristic_proc_start): Add support for MIPS16.
	(mips16_get_imm, mips16_heuristic_proc_desc,
	mips32_heuristic_proc_desc): New helper functions for
	heuristic_proc_desc.
	(heuristic_proc_desc): Rewrite and reorganize to support MIPS16.
	(mips_push_arguments): Don't align small arguments in EABI.
	(mips32_skip_prologue): Attempt to shrink code size a little.
1997-02-04 02:09:33 +00:00
Michael Snyder
fbfa4d54f8 Mon Feb 3 11:06:05 1997 Michael Snyder <msnyder@cleaver.cygnus.com>
* m32r-stub.c: New -- remote protocol support for M32R cpu.
        * m32r-rom.c:  Several experiments with improved download time.
        * .Sanitize:   Add entry for m32r-stub.c
1997-02-03 19:18:32 +00:00
Stan Shebs
bb6debca31 Annual ChangeLog split. 1997-01-31 19:54:14 +00:00
Mark Alexander
20fa0902e7 * mips-tdep.c (MIPS16_INSTLEN): Define.
(mips_find_saved_regs): Replace hardcoded 2's with MIPS16_INSTLEN.
	(heuristic_proc_start): Recognize 'entry' pseudo-op as a start
	of function on MIPS16.
	(mips32_skip_prologue, mips16_skip_prologue): New helper functions
	for mips_skip_prologue.
	(mips_skip_prologue): Recognize both 16- and 32-bit prologues.
1997-01-31 16:37:07 +00:00
Michael Meissner
7e2b3363f1 Remove ../sim/ppc/libsim.a 1997-01-29 17:47:02 +00:00
Michael Snyder
b444216f2c * blockframe.c: fix a null pointer ref in generic_get_saved_register 1997-01-28 23:55:28 +00:00
Geoffrey Noer
52c8eceee0 Tue Jan 28 15:39:50 1997 Geoffrey Noer <noer@cygnus.com>
* mn10200-tdep.c (mn10200_frame_chain): get basic backtracing
        working
1997-01-28 23:43:36 +00:00
Mark Alexander
f9f8c14b1a First set of changes for mips16:
* config/mips/tm-mips.h (MIPS16_BIG_BREAKPOINT,
	MIPS16_LITTLE_BREAKPOINT, BREAKPOINT_FROM_PC): Define.
	(ABOUT_TO_RETURN): Call new function mips_about_to_return.
	(mips_breakpoint_from_pc, mips_about_to_return): Declare.
	* mem-break.c (memory_breakpoint_from_pc): New function.
	(memory_insert_breakpoint, memory_remove_breakpoint): Use
	memory_breakpoint_from_pc to determine breakpoint contents and size.
	* target.h (memory_breakpoint_from_pc): Declare.
	* monitor.c (monitor_insert_breakpoint): Use memory_breakpoint_from_pc
	to determine size of breakpoint instruction.
	* mips-tdep.c (mips32_decode_reg_save, mips16_decode_reg_save):
	New helper functions for mips_find_saved_regs.
	(mips_find_saved_regs): Recognize mips16 prologues.
	(mips_addr_bits_remove): Strip off upper 32 bits of address
	when target CPU is 32 bits but CORE_ADDR is 64 bits.
	(mips_step_skips_delay): No branch delay slot on mips16.
	(gdb_print_insn_mips): Disassemble mips16 code.
	(mips_breakpoint_from_pc, mips_about_to_return): New functions.
1997-01-28 00:50:13 +00:00
Jeff Law
ddc846e915 * tm-mn10200.h (NUM_REGS): Decrease to 12.
(REGISTER_NAMES): Elimination registers not found on the mn10200.
        (PC_REGNUM, MDR_REGNUM, PSW_REGNUM): Corresponding changes.
        (LIR_REGNUM, LAR_REGNUM): Delete.  They don't exist on the mn10200.
1997-01-27 17:36:55 +00:00
Peter Schauer
5499537344 * dwarf2read.c: Replace integral tag, name and form fields in
internal structure definitions with the corresponding enumeration
	types from dwarf2.h. Add default cases to switches on enumerations
	where appropriate.
	Make quoting of string arguments in complaint messages consistent.
	Check for NULL returns from DW_STRING.
	(struct partial_die_info):  Add sibling and has_type fields, remove
	unused value field.
	(DW_*):  Move access macro definitions near the definition of the
	attribute structure.
	(struct field_info):  New structure to pass information about fields
	and member functions between die processing routines.
	(dwarf2_build_psymtabs_hard):  Set cu_header_offset.
	(scan_partial_symbols):  Do not enter DW_TAG_subprogram dies into
	the partial symbol table if the DW_AT_*_pc attributes are missing.
	Add file scope base type definitions to the partial symbol table.
	Skip over child dies if the die has a sibling attribute.
	(add_partial_symbol):  Enter global variables with type attributes
	and without location descriptors into the partial symbol table.
	Store value of DW_TAG_variable dies in the partial symbol table.
	Do not enter global variables into the minimal symbol table.
	Add base type definitions to the partial symbol table.
	(psymtab_to_symtab_1):  Use dwarf2_get_pc_bounds to determine highpc.
	(process_die):  Move check for DW_AT_low_pc to read_func_scope.
	Add a typedef symbol for base type definitions to the symbol table.
	Ignore DW_TAG_inlined_subroutine tags for now.
	(read_file_scope):  Use dwarf2_get_pc_bounds to determine pc bounds.
	(read_func_scope, read_lexical_block_scope):  Use dwarf2_get_pc_bounds
	to determine pc bounds, ignore dies with invalid bounds.
	(dwarf2_get_pc_bounds):  New routine to extract and validate the
	DW_AT_*_pc attributes of a die.
	(dwarf2_add_field, dwarf2_attach_fields_to_type, skip_member_fn_name,
	dwarf2_add_member_fn, dwarf2_attach_fn_fields_to_type):
	New functions to handle fields and member functions.
	(read_structure_scope):  Rewritten to use them.
	(read_array_type):  Renamed from dwarf_read_array_type.
	Default upper array bound to describe an array with unspecified
	length.
	Create array types in backwards order, as dwarf2 puts out the array
	dimensions from left to right.
	(read_subroutine_type):  Handle DW_TAG_unspecified_parameters,
	DW_AT_artificial and DW_AT_prototyped.
	(read_base_type):  Make an unsigned type for DW_ATE_boolean.
	Pass objfile to dwarf_base_type.
	(read_partial_die):  Use read_attribute to read in the attributes.
	Handle DW_AT_sibling and DW_AT_type.
	Follow references when determining DW_AT_name and DW_AT_external
	attributes of the die.
	Validate DW_AT_*_pc attributes.
	(read_full_die):  Use read_attribute to read in the attributes.
	(read_attribute):  New function to read an attribute described
	by an abbreviated attribute.
	(new_symbol):  Relocate symbol value for DW_TAG_label with baseaddr.
	Do not set SYMBOL_VALUE_ADDRESS for DW_TAG_subprogram,
	SYMBOL_BLOCK_VALUE for the symbol will be set later by finish_block.
	Change symbol class for global variables with a zero valued location
	descriptor to LOC_UNRESOLVED.
	Handle DW_AT_const_value attributes for DW_TAG_variable,
	DW_TAG_formal_parameter and DW_TAG_enumerator.
	Build a typedef symbol for DW_TAG_base_type.
	(dwarf2_const_value):  New routine to copy a constant value from an
	attribute to a symbol.
	(dwarf_base_type):  Use passed in objfile, not current_objfile
	when calling dwarf2_fundamental_type.
	(dump_die):  Use DW_* accessor macros to access values of attributes.
	(decode_locdesc):  Handle DW_OP_plus_uconst.
1997-01-25 08:09:53 +00:00
Geoffrey Noer
d9ecb24ce8 Wed Jan 22 01:31:16 1997 Geoffrey Noer <noer@cygnus.com>
Start mn10200 gdb port by adding copies of mn10300
        target-specific files with all instances of mn10300 changed
        to mn10200 to start with.
        * mn10200-tdep.c: new
        * config/mn10200/tm-mn10200.h: new, REGISTER_SIZE is 24 bits not 32,
        SP_REGNUM and FP_REGNUM are different, also no lar or lir.
        * config/mn10200/mn10200.mt: new
        * configure.tgt: add mn10200 entry
1997-01-22 10:38:01 +00:00
Geoffrey Noer
879b939859 Wed Jan 22 01:31:16 1997 Geoffrey Noer <noer@cygnus.com>
Start mn10200 gdb port by adding copies of mn10300
        target-specific files with all instances of mn10300 changed
        to mn10200 to start with.
        * mn10200-tdep.c: new
        * config/mn10200/tm-mn10200.h: new, REGISTER_SIZE is 24 bits not 32,
        SP_REGNUM and FP_REGNUM are different, also no lar or lir.
        * config/mn10200/mn10200.mt: new
1997-01-22 09:41:02 +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
Geoffrey Noer
95efddf268 Tue Jan 21 17:03:26 1997 Geoffrey Noer <noer@cygnus.com>
* mn10300-tdep.c: wrote/fixed implementations of
        mn10300_frame_chain, mn10300_init_extra_frame_info,
        mn10300_frame_saved_pc
        * config/mn10300/tm-mn10300.h: redefine INIT_EXTRA_FRAME_INFO
        and INIT_FRAME_PC macros
        Backtracing starting to work correctly.
1997-01-22 01:33:58 +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
Mark Alexander
f1536ab577 * config/mips/{embed,embed64,embedl,embedl64}.mt:
Link in simulator on MIPS embedded targets.
1997-01-20 22:59:46 +00:00
Peter Schauer
15cb042bc1 * blockframe.c (frameless_look_for_prologue): Mark frames
with a zero PC as frameless to improve backtraces from core dumps
	caused by dereferencing a NULL function pointer.
1997-01-18 10:33:06 +00:00
Geoffrey Noer
1bb1df85cb Thu Jan 16 14:10:41 1997 Geoffrey Noer <noer@cygnus.com>
* config/mn10300/tm-mn10300.h: fix BREAKPOINT definition
1997-01-16 22:14:19 +00:00
Michael Snyder
afe56235ac * sparc-tdep.c (sparc_frame_find_saved_regs): Don't use
FP_REGISTER_BYTES to compute offsets into the saved frame,
        since it fails for SPARC targets configured without any
        FP regs.  Instead, use DUMMY_STACK_REG_BUF_SIZE.
--------------------------------------------------------------------
1997-01-09 19:48:27 +00:00
Stu Grossman
34b22c5cc8 * symtab.c (fixup_symbol_section): Handle NULL symbols without
crashing.
1997-01-06 19:17:39 +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
Geoffrey Noer
4efc404588 Fri Jan 3 14:20:05 1997 Geoffrey Noer <noer@cygnus.com>
* mn10300-tdep.c (mn10300_push_arguments): rewrote
        also removed code elsewhere that made use of RP_REGNUM
        * config/mn10300/tm-mn10300.h: ripped out RP_REGNUM, V0_REGNUM,
        ARG0_REGNUM, ARGLAST_REGNUM (all not appropriate for mn10300
        arch.), redefined SAVED_PC_AFTER_CALL, EXTRACT_RETURN_VALUE,
        EXTRACT_STRUCT_VALUE_ADDRESS, STORE_RETURN_VALUE
1997-01-03 22:34:52 +00:00
Geoffrey Noer
3de7693865 Fri Jan 3 14:20:05 1997 Geoffrey Noer <noer@cygnus.com>
* mn10300-tdep.c (mn10300_push_arguments): rewrote
        also removed code elsewhere that made use of RP_REGNUM
1997-01-03 22:23:08 +00:00
Geoffrey Noer
a2bfe134c1 Tue Dec 31 15:19:32 1996 Geoffrey Noer <noer@cygnus.com>
* config/mn10300/tm-mn10300.h: more small register fixes
1996-12-31 23:21:34 +00:00
Mark Alexander
c82844f78e * config/i386/xm-windows.h: Undo previous change to SIGTRAP
and SIGQUIT values; it messed up non-MIPS targets.
	* config/mips/tm-mips.h: Undefine BREAKPOINT, replace
	with separate LITTLE_BREAKPOINT and BIG_BREAKPOINT definitions;
	this fixes problem with setting breakpoints in little-endian
	programs in the simulator.
1996-12-31 15:01:12 +00:00
David Edelsohn
d9ad8adf03 * remote-sim.c (gdbsim_open_p): New static local.
(gdbsim_open): Call unpush_target if sim open.  Set gdbsim_open_p.
	(gdbsim_close): Only call sim_close if sim open.  Reset gdbsim_open_p.
1996-12-30 08:34:35 +00:00
Mark Alexander
62487cdb30 * config/i386/xm-windows.h: Make SIGTRAP and SIGQUIT consistent
with sim/mips/support.h.
1996-12-29 17:18:12 +00:00
Michael Meissner
0b019fa141 Add large frame support 1996-12-27 20:59:46 +00:00
Michael Meissner
a490f8c130 Work with new compiler frame layout 1996-12-27 19:58:59 +00:00
Mark Alexander
25012f0e71 * valprint.c (print_longest): Don't lose upper bits
of 64-bit values on Windows.
	* config/i386/xm-windows.h: Leave CC_HAS_LONG_LONG defined,
	undefine PRINTF_HAS_LONG_LONG, so that 64-bit values will
	be printed without loss of upper bits.
1996-12-27 04:04:44 +00:00
Michael Snyder
5a1ed5f71d Thu Dec 26 15:56:09 1996 Michael Snyder <msnyder@cleaver.cygnus.com>
* sparclet-stub.c: a few clean-ups, removing dead code
        * config/sparc/tm-sparclet.h: make registers ASR15, ASR19 invisible
          (they're not useful, you can't change, write or even read them)
1996-12-27 00:03:41 +00:00
Fred Fish
34191e5205 * config/pa/hppahpux.mh (TERMCAP): Always link to libc before
libcurses, to avoid picking up broken select() from libcurses
	on some versions of HPUX.
1996-12-26 23:29:26 +00:00
Michael Snyder
a7f6f9ed4d Thu Dec 26 15:15:21 1996 Michael Snyder <msnyder@cleaver.cygnus.com>
* sparclet-rom.c: Remove includes of Unix system files.
          Add function "sparclet_supply_register" so that parse_register_dump
          will not seg-fault by calling a null function pointer.
          Remove XMODEM support (unfinished work?).
          Remove flag "MO_HANDLE_NL", so monitor's output can be read by humans.
          Add fill command.
          Remove colon from getreg.resp_delim so PSR register will work.
          Remove pointer to sparclet_load (downloading SREC's doesn't work).
          Null out local register names for %g0, all %cc and all %asr regs,
          since the monitor can't report them.  Will return zero instead.
        * sparclet-stub.c: New -- remote protocol support for sparclet CPU.
        * config/sparc/tm-sparclet.h: Re-arrange REGISTER_NAMES:
          Add back %g0 and %psr, add %cc coprocessor regs, add %asr regs.
          Adjust NUM_REGS and REGISTER_BYTES accordingly
1996-12-26 23:16:27 +00:00
Jeff Law
7282d6111c * remote-e7000.c (want_h8300h, want_nopc_h8300h): Renamed
from want and want_nopc.
        (want_h8300s, want_nopc_h8300s): New variables for H8/S register
        lists.
        (e7000_fetch_registers): Use H8/300H or H8/S register list string
        as needed.
        (e7000_wait): Likewise.
Bringing over a change from hmse-h8s-beta branch.
1996-12-24 17:34:41 +00:00
Peter Schauer
a09f340401 * mips-tdep.c (mips_find_saved_regs): If a frame has been
interrupted by a signal, figure out whether the registers that
	the proc_desc claims are saved have been saved yet.
	(mips_push_dummy_frame):  Write dummy frame register after all
	registers have been saved in the dummy frame. Update comments
	to reflect the fact that we are now using an AT_ENTRY_POINT
	call dummy.
1996-12-23 10:30:51 +00:00
Martin Hunt
294f72b25b Sun Dec 22 15:52:25 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
* d10v-tdep.c (d10v_skip_prologue): PR11287.  Fix problem where
	some breakpoints weren't being set.
1996-12-22 23:56:01 +00:00
Peter Schauer
61d2d19a17 * config/mips/tm-mips.h (PC_IN_CALL_DUMMY): Removed, the default
definition in inferior.h is sufficient.
	* mips-tdep.c (mips_pc_in_call_dummy):  Ditto.
	(mips_push_arguments):  Make sure that the stack is aligned to a
	multiple of 8 after the arguments are pushed.
	Structures are always passed by value in the old ABI.
	Adjust argument register value on big endian targets when passing
	a value whose length is less than the register size.
	Write stack arguments with a single write_memory call.
	(mips_pop_frame):  Use frame_saved_regs instead of proc_desc to
	decide which registers have to be restored.
1996-12-21 21:01:01 +00:00
Peter Schauer
bb4569b9f6 * irix5-nat.c (fill_gregset): Sign extend registers before
filling in the gregset structure.
1996-12-21 10:10:43 +00:00
Stu Grossman
334162c138 * mswin/genmakes: Don't define _DEBUG. This breaks wingdb. 1996-12-20 19:08:13 +00:00
Michael Meissner
b71f8719a0 Recognize -mep mode when used to store the stack frame 1996-12-20 00:44:15 +00:00
David Edelsohn
f8dfe411d2 * m32r-tdep.c (m32r_frame_find_saved_regs): Fix thinko in arg def. 1996-12-20 00:00:53 +00:00
Stan Shebs
7885e8b3c9 * mpw-make.sed: Use NewFolderRecursive for installation. 1996-12-19 19:46:32 +00:00
Mark Alexander
214e969267 * values.c (unpack_double): Make it compile with MSVC++ 2.x.
* remote-mips.c (S_IROTH): Define if not defined by stat.h, e.g.
	when using MSVC++.
	(common_open): Fix help string.
1996-12-19 17:45:57 +00:00
Mark Alexander
97e091b20f * mips-tdep.c (mips_push_arguments): Handle floating point args.
* config/mips/tm-mips.h (FIX_CALL_DUMMY): Define to set up $25
	correctly for PIC on Irix 5.
1996-12-15 04:59:14 +00:00
Peter Schauer
958866c5ca * i386-tdep.c (i386_frame_find_saved_regs): Handle zero return
from get_pc_function_start gracefully.
1996-12-14 17:54:53 +00:00
Peter Schauer
a46d92a736 * c-exp.y (qualified_name): Replace explicit check for valid
destructor name with call to destructor_name_p.

	* c-lang.h, c-typeprint.c (cp_type_print_method_args):  Removed,
	no longer needed.

	* c-typeprint.c (c_type_print_varspec_prefix, c_type_print_base):
	Replace remaining fprintf_unfiltered calls with their filtered variant.
	(c_type_print_base):  Do not print return type for destructors from
	template classes.
	Replace cp_type_print_method_args with cplus_demangle call to get
	consistent type output for stubbed and unstubbed methods.

	* cp-valprint.c (cp_print_class_method):  Replace
	cp_type_print_method_args with cplus_demangle call to get consistent
	type output for stubbed and unstubbed methods.

	* gdbtypes.c, gdbtypes.h (get_destructor_fn_field):  New function
	to find the destructor field indices for a type.

	* gdbtypes.h (struct type):  Clarify comments for vptr_basetype
	and arg_types fields.
	(struct fn_field):  Remove args field, no longer used.

	* symtab.c (decode_line_1), valops.c (value_struct_elt,
	check_field_in):  Use get_destructor_fn_field to find the destructor
	field indices instead of assuming that the compiler passes the member
	function fields in a specific order.

	* symtab.c (find_methods):  Pass NULL instead of SYMBOL_BLOCK_VALUE
	to lookup_symbol.
	(list_symbol):  Replace cp_type_print_method_args with cplus_demangle
	call in zapped out code and explain why this code is zapped out.
1996-12-14 09:17:22 +00:00
Michael Meissner
1e4a0d020f Add ../sim/common/libcommon.a 1996-12-12 18:30:50 +00:00
David Edelsohn
eb28c55a5a * monitor.c (monitor_load): Add support for load address argument.
* dsrec.c: #include <time.h>.
	(load_srec): New argument load_offset.  Print download stats.
	* srec.h (load_srec): Update prototype.
	* sh3-rom.c (sh3_load): Update call to load_srec.
1996-12-11 20:14:11 +00:00
Geoffrey Noer
4da0f856e2 Mon Dec 9 17:34:05 1996 Geoffrey Noer <noer@cygnus.com>
* config/mn10300/tm-mn10300.h: more small register fixes
        * mn10300-tdep.c: filled in from another target
1996-12-10 01:41:16 +00:00
David Edelsohn
15f13cd0ec * monitor.c (monitor_insert_breakpoint): Handle bi-endian machines. 1996-12-10 01:32:17 +00:00
Mark Alexander
9d78e1afcc * config/mips/tm-mips.h: Get rid of call-dummy code.
Minor changes to make pre-ANSI compilers happy.
	* mips-tdep.c: Minor changes to make pre-ANSI compilers happy.
	(mips_push_arguments): Rewrite to partially support EABI.
	(mips_pc_in_call_dummy): New function.
	* infcmd.c: Include symfile.h to get prototype of entry_point_address,
	which fixes 64-bit sign extension bug on MIPS.
1996-12-10 00:14:48 +00:00
Geoffrey Noer
ddc2888e6b Mon Dec 9 00:14:49 1996 Geoffrey Noer <noer@cygnus.com>
* config/mn10300/tm-mn10300.h: fix register names
        * mn10300-tdep.c: new skeleton tdep for mn10300
1996-12-09 08:33:27 +00:00
David Edelsohn
163a75afdb * remote-sim.h: Update some comments.
* remote-sim.c (gdb_os_error): New function.
	(init_callbacks): Fix initializing of gdb_callback.  Add gdb_os_error.
	(gdb_os_printf_filtered): Use gdb_stdout, not stdout.
1996-12-09 02:06:42 +00:00
Peter Schauer
1d275068e9 * irix5-nat.c (supply_gregset, fill_gregset): Handle gregsets
from O32 and N32 ABI.
	(xfer_link_map_member):  Work around problem with alignments
	in struct obj when compiling GDB under N32 ABI.
1996-12-08 08:38:34 +00:00
Stan Shebs
48712b3060 * d10v-tdep.c: Add support for examination and interpretation
of instruction trace buffer.
	(trace, untrace, info trace, tdisassemble): New commands.
1996-12-06 07:37:24 +00:00
David Edelsohn
cf869869bd * tm-sparclet.h (TM_PRINT_INSN_MACH): Redefine for sparclet. 1996-12-05 22:26:44 +00:00
David Edelsohn
d0e5107749 * config/sparc/tm-sparclet.h (TARGET_BYTE_ORDER): Undef.
(TARGET_BYTE_ORDER_SELECTABLE): Define.
	(BREAKPOINT): Undef.
	({BIG,LITTLE}_BREAKPOINT): Define.
1996-12-05 22:09:15 +00:00
David Edelsohn
cd6dfa936a * config/h8300/h8300.mt (SIM): Change to ../sim/h8300/libsim.a.
* config/h8500/h8500.mt (SIM): Change to ../sim/h8500/libsim.a.
Entries missing from Nov. 20 change.
1996-12-05 22:04:46 +00:00
Geoffrey Noer
6823374b90 Wed Dec 4 16:34:05 1996 Geoffrey Noer <noer@cygnus.com>
* config/mn10300/mn10300.mt
        * config/mn10300/tm-mn10300.h: new config files for mn10300
        processor
1996-12-05 00:36:45 +00:00
Michael Snyder
e47d1a4e35 Tue Dec 3 11:38:14 1996 Michael Snyder <msnyder@cleaver.cygnus.com>
* blockframe.c: add macro USE_GENERIC_DUMMY_FRAMES to enable/disable
          code for generic call_dummy frames.
        * config/h8300/tm-h8300.h: turn on USE_GENERIC_DUMMY_FRAMES
        * config/m32r/tm-m32r.h: turn on USE_GENERIC_DUMMY_FRAMES
        * config/sh/tm-sh.h: turn on USE_GENERIC_DUMMY_FRAMES
        * config/v850/tm-v850.h: turn on USE_GENERIC_DUMMY_FRAMES
1996-12-03 19:44:51 +00:00
Peter Schauer
94cff946b8 * vax-tdep.c (vax_print_insn, print_insn_arg): Use info functions
for printing. From Valeriy Ushakov <uwe@ptc.spbu.ru>.
1996-12-01 08:43:48 +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
0f75e2e37b * vax-tdep.c (vax_print_insn): Made static, modified to take
disassemble_info as parameter.
	(_initialize_vax_tdep):  New function to initialize tm_print_insn
	to vax_print_insn.
1996-11-28 08:55:13 +00:00
Michael Snyder
409f64ae05 Wed Nov 27 11:29:06 1996 Michael Snyder <msnyder@cleaver.cygnus.com>
* blockframe.c:         ...Remove old-style CALL_DUMMY code...
        * h8300-tdep.c:
        * config/h8300/tm-h8300.h:
start-sanitize-m32r
        * m32r-tdep.c:
        * config/m32r/tm-m32r.h:
end-sanitize-m32r
        * sh-tdep.c:
        * config/sh/tm-sh.h:
start-sanitize-v850
        * v850-tdep.c:
        * config/v850/tm-v850.h:
end-sanitize-v850
1996-11-27 19:31:26 +00:00
Michael Snyder
dc1b349d39 Added target function calls for SH, M32R and H8300.
Added some generic target-independant code for managing call-dummy frames.

Wed Nov 27 10:32:14 1996  Michael Snyder  <msnyder@cleaver.cygnus.com>

        * breakpoint.c: DELETE command will not delete CALL_DUMMY breakpoint.
        * blockframe.c: Add target-independant support for managing
                        CALL_DUMMY frames on the host side.
        * frame.h:      Declarations for generic CALL_DUMMY frame support.
        * h8300-tdep.c: Add target function calls using generic frame support.
        * config/h8300/tm-h8300.h: config for generic target function calls.
start-sanitize-m32r
        * m32r-tdep.c:  Add target function calls using generic frame support.
        * config/m32r/tm-m32r.h:   config for generic target function calls.
end-sanitize-m32r
        * sh-tdep.c:    Add target function calls using generic frame support.
        * config/sh/tm-sh.h:       config for generic target function calls.
start-sanitize-v850
        * v850-tdep.c:  Add target function calls using generic frame support.
        * config/v850/tm-v850.h:   config for generic target function calls.
end-sanitize-v850
        * valops.c:     ADD PUSH_RETURN_ADDRESS so that it doesn't have to be
                        done by PUSH_ARGUMENTS when there's no CALL_DUMMY.
1996-11-27 19:10:07 +00:00
Mark Alexander
96431497ff * config/mips/tm-mips.h (ADDR_BITS_REMOVE, TARGET_READ_SP): Define.
(mips_addr_bits_remove): Declare.
	* mips-tdep.c (mips_push_dummy_frame): Fix heuristic-fence-post
	errors when hitting breakpoints during inferior function calls
	in 64-bit programs.
	(fix_sign_extension): Make public, rename to mips_addr_bits_remove.
	* utils.c (paddr_nz, preg_nz): New functions, similar to
	paddr and preg but don't print leading zeroes.
	* defs.h (paddr_nz, preg_nz): Declare.
	* remote-mips.c: Use paddr_nz instead of paddr throughout
	to reduce packet size.
	(pmon_end_download): Improve timeout error handling.
1996-11-27 03:40:02 +00:00
Ian Lance Taylor
8b70128443 * configure: Rebuild with autoconf 2.12. 1996-11-26 22:22:17 +00:00
Fred Fish
22ba28a51a From: Paul Eggert <eggert@twinsun.com>
* remote-bug.c (wait_strings): Avoid creating a trigraph.
1996-11-25 20:09:27 +00:00
Peter Schauer
00b45456dd * config/i386/nm-i386v4.h (LOSING_POLL): Define, needed for
Unixware 1.1.2.
1996-11-22 18:09:47 +00:00
Mark Alexander
ee45546371 * mips-tdep.c: Replace hard-coded constants with MIPS_INSTLEN.
(common_breakpoint): Use paddr instead of %x to print 64-bit values.
	(heuristic_proc_desc): Add tests for 64-bit instructions.
	(init_extra_frame_info, mips_push_arguments): Recognize additional
	registers for EABI.
	* remote-mips.c: Extend DDB target to allow TFTP downloads.
	* config/mips/tm-mips.h (MIPS_LAST_ARG_REGNUM, MIPS_NUM_ARG_REGS):
	Define.
1996-11-22 04:50:46 +00:00
Martin Hunt
d716b33d85 Wed Nov 20 19:09:16 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
* infcmd.c (do_registers_info): Call val_print with the
	virtual buf instead of the raw buf.  Needed for REGISTER_CONVERT
	to work with non-floating point regs.

start-sanitize-d10v
	* d10v-tdep.c (d10v_skip_prologue): If we have line debugging
	information, then the end of the prologue should the first
	assembly instruction of the first source line.

	* values.c (value_from_longest): Put in D10V call to
	fix up address pointers.

	* config/d10v/tm-d10v.h (REGISTER_VIRTUAL_SIZE): Modified.
	(REGISTER_VIRTUAL_TYPE): Modified for PC_REGNUM and SP_REGNUM.
	(REGISTER_CONVERTIBLE): Make PC and SP convertible.
	(REGISTER_CONVERT_TO_VIRTUAL): Define.
	(REGISTER_CONVERT_TO_RAW): Define.
	(D10V_MAKE_DADDR): Define.
	(D10V_MAKE_IADDR): Define.
end-sanitize-d10v
1996-11-21 03:19:37 +00:00
Geoffrey Noer
9fb53c4fed Wed Nov 20 16:15:15 1996 Geoffrey Noer <noer@cygnus.com>
* config/i386/cygwin32.mh: add MMALLOC_CFLAGS = -I$(MMALLOC_SRC)
        -DMMCHECK_FORCE=1 so memory checks are loaded for cygwin32 gdb
1996-11-21 00:17:54 +00:00
Stan Shebs
38012297f9 Fix a sanitization booboo 1996-11-20 20:51:12 +00:00
David Edelsohn
4da8b2a5f4 * callback.h: Deleted, moved to ../include.
* callback.c: Deleted, moved to ../sim/common.
	* Makefile.in (SFILES,COMMON_OBJS): Delete callback.[co].
	(callback.o): Delete rule.
	* remote-sim.h: No longer include callback.h
	(sim_callback_write_stdout): Delete prototype.
	* remote-sim.c (init_callbacks,end_callbacks): New functions.
	(gdb_os_write_stdout, gdb_os_printf_filtered): New functions.
	(gdb_callback, callbacks_initialized): New static globals.
	(gdbsim_open): Call init_callbacks.
	(gdbsim_close): Call end_callbacks.
	(simulator_command): Call init_callbacks.
1996-11-20 08:55:42 +00:00
Tom Tromey
bd45f82f41 * gdbtk.c (gdbtk_readline): Fix memory leak. 1996-11-19 16:38:48 +00:00
Tom Tromey
a5a6e3bd0a Fixes for Tcl 7.6 / Tk 4.2:
* gdbtk.tcl (apply_filespec): Use tk_getOpenFile.
        Removed old fileselect code.
        * gdbtk.c (Tcl_Alloc): Renamed from Tcl_Malloc.
1996-11-19 07:40:18 +00:00
Jim Wilson
692a601fb7 Fix Irix6 host build problem.
* config/mips/tm-mips.h (FIX_CALL_DUMMY): Change unsigned LONGEST
        to ULONGEST.
1996-11-19 00:04:37 +00:00
Fred Fish
e172af811a From Peter Schauer <Peter.Schauer@Regent.E-Technik.TU-Muenchen.DE>
* procfs.c (wait_fd):  Handle EINTR error return from poll
        by restarting the poll.
	* defs.h (PIDGET): Define a default version that just
	returns its argument unchanged.
	* inflow.c (terminal_init_inferior): Eliminate #ifdef
	of PIDGET and fold both alternatives into common code.
	(pass_signal): Use PIDGET for pid passed to kill().
1996-11-16 06:58:43 +00:00
Michael Meissner
9f7f97103b Fix warning 1996-11-14 21:09:28 +00:00
Michael Meissner
9ef5835acc Define ULONGEST 1996-11-14 20:55:06 +00:00
Jim Wilson
119dfbb7c1 Patches to add Irix6 host support. 1996-11-12 23:33:32 +00:00
Michael Snyder
69992fc816 Tue Nov 12 12:16:40 1996 Michael Snyder <msnyder@cleaver.cygnus.com>
* sh-tdep.c: Add functionality for target function calls.
        * config/sh/tm-sh.h: Add support for target function calls.
This is a safety check-in: everything works, and there'll be another
clean-up round shortly.
1996-11-12 20:19:17 +00:00
Michael Snyder
6f3eea2bdf start-sanitize-m32r
Tue Nov 12 12:06:58 1996  Michael Snyder  <msnyder@cleaver.cygnus.com>

        * m32r-tdep.c: Add functionality for target function calls.
        * valops.c:    Small change to support target function calls.
        * config/m32r/tm-m32r.h: Add support for target function calls.
This is a safety checkin -- everything works, but there'll be another
clean-up round later.
1996-11-12 20:16:10 +00:00
Geoffrey Noer
cad9cd605c Mon Nov 11 17:15:59 1996 Geoffrey Noer <noer@cygnus.com>
* defs.h: modify Nov 11 12:59:00 change so _MSC_VER is checked
        instead of _WIN32
        * win32-nat.c: fix Nov 11 12:59:00 change (windows.h should
        be included instead of windefs.h for compilers other than
        VC++).
        * mswin/windefs.h: remove ^Ms and change C++ style comments
        to C style comments
1996-11-12 02:19:25 +00:00
Mark Alexander
57821e0c39 * utils.c (get_cell): Fix off-by-one bug.
* mips-tdep.c (get_frame_pointer, fix_sign_extension):
	New functions to consolidate common code.
	(mips_frame_chain, init_extra_frame_info): Use new functions
	to fix problems with backtrace and finish commands on ddb board.
1996-11-11 23:37:30 +00:00
Dawn Perchik
28444bf3a1 * mips-tdep.c, remote-mips.c, values.c, mdebugread.c,
config/mips/tm-mips.h: Add/fix bugs for 64-bit mips support.
	* defs.h: Cleanup; add prototypess
	* corefile.c: Change FIXME #ifdef
	* win32-nat.c: Include windefs instead of windows.h.
	* utils.c: Add routines for printing addresses and registers
	based on type size.
1996-11-11 21:02:55 +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
Michael Snyder
4dc42997c3 Fri Nov 8 14:30:23 1996 Michael Snyder <msnyder@cleaver.cygnus.com>
* config/tm-sh.h: Added a missing comma in middle of REGISTER_NAMES list.
1996-11-08 22:31:36 +00:00
Stan Shebs
944257d452 * monitor.c: Fix some formatting and comments. 1996-11-08 21:37:16 +00:00
Stan Shebs
07997f65e5 * remote-sim.c (simulator_command): Set up callbacks before
entering the simulator.
1996-11-08 20:38:07 +00:00
Martin Hunt
81a6f5b208 Thu Nov 7 15:19:08 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
* d10v-tdep.c: Fix some problems with inferior function calls.
	* config/d10v/tm-d10v.h (EXTRA_FRAME_INFO): Change dummy to be
	a pointer to the dummy's stack instead of just a flag.
1996-11-07 23:23:57 +00:00
Michael Snyder
e1703d1f53 Tue Nov 5 10:21:02 1996 Michael Snyder <msnyder@cleaver.cygnus.com>
* m32r-tdep.c: Improved frame_chain and fn prologue analysis.
        * config/tm-m32r.h: Add framesize and register to extra_frame_info.
1996-11-05 19:06:11 +00:00
Stu Grossman
7af1bcd64c * mswin/gdbwin.h: Remove bogus definition of CORE_ADDR.
* mswin/srcwin.cpp (CSrcScroll1::CSrcScroll1):  Initialize depth
	to fix divide-by-zero problem with clicking on source window.
1996-11-05 18:15:41 +00:00
Stu Grossman
9356d50dd2 * mswin/recordit: Fix problem with absolute paths. 1996-11-04 21:16:16 +00:00
Stu Grossman
237fa47ee0 * mswin/recordit: Fix problem with relative paths. 1996-11-04 08:52:44 +00:00
Stu Grossman
0f6e298424 * mswin/{Makefile.in configure configure.in}: New files for
configuring wingdb under Unix.
1996-11-04 02:10:19 +00:00
Peter Schauer
73b8e6a915 * irix5-nat.c, osfsolib.c, solib.c (symbol_add_stub): Handle
missing or zero-sized .text sections properly.
	* mdebugread.c:  Handle scRConst and scSUndefined storage classes.
	* stabsread.c (scan_file_globals):  Try to resolve symbols
	for shared libraries from the minimal symbol table of the main
	executable first.
1996-11-02 11:59:19 +00:00
Martin Hunt
21260fe16f Fri Nov 1 13:59:28 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
* d10v-tdep.c, config/d10v/tm-d10v.h:  Major fixes to support
	inferior function calls and proper stack backtracing on D10V-EVA
	board.
1996-11-01 22:02:20 +00:00
Michael Meissner
5db7cc25b8 Make gdb compile & link cleanly on powerpc-linux 1996-11-01 15:53:28 +00:00
Michael Snyder
8665f3dcfa Thu Oct 31 16:37:17 1996 Michael Snyder <msnyder@cleaver.cygnus.com>
* m32r-tdep.c: Improved frame_chain and fn prologue analysis.
        * configure.tgt: Add entry for m32r target.
        * monitor.h:   Add a flag to tell monitor_store_register to use
                        (val, regno) instead of (regno, val).
        * monitor.c:   Make monitor_store_register honor the above flag.
                        Make monitor_exp ignore DC1/DC3 for m32r.
                        Increase buf size in monitor_dump_regs.
1996-11-01 00:41:21 +00:00
Michael Snyder
70ab088d08 Wed Oct 30 18:14:14 1996 Michael Snyder <msnyder@cleaver.cygnus.com>
* m32r-tdep.c, m32r-rom.c: New files.
        * config/m32r/m32r.mt: New file.
        * config/m32r/tm-m32r.h: New file.
1996-10-31 02:27:58 +00:00
Geoffrey Noer
ea5c2d663c Tue Oct 29 16:56:01 1996 Geoffrey Noer <noer@cygnus.com>
* config/i386/xm-cygwin32.h:
        * config/powerpc/xm-cygwin32.h:
        add #define LSEEK_NOT_LINEAR so source lines aren't unexpectedly
        truncated
1996-10-30 00:58:26 +00:00
Michael Meissner
3f7401733d Allow bi-endian support in PowerPC 1996-10-29 23:40:58 +00:00
Stan Shebs
62c0cf2405 * TODO: Add item suggesting an "info bfd" command. 1996-10-29 23:20:54 +00:00
Martin Hunt
19414cdfb0 Tue Oct 29 12:48:04 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
* d10v-tdep.c: Snapshot that supports D10V-EVA board.

	* config/d10v/tm-d10v.h (REGISTER_NAMES): Add imap0,imap1,dmap.
	(TARGET_READ_FP,TARGET_WRITE_FP): Define.
1996-10-29 20:52:52 +00:00
Stu Grossman
cb5e6e683a * mswin/genmakes mswin/recordit: New scripts to generate make
files for MSVC.
1996-10-29 01:36:25 +00:00
Peter Schauer
1cb1b16cfb * procfs.c (proc_set_exec_trap): Under Alpha OSF/1-4.0, tracing
the entry to the exit system call to detect termination of the
	inferior stopped working. Trace termination of the inferior via
	PRFS_STOPTERM instead.
	(procfs_init_inferior):  Do not trace entry to exit system call
	if PIOCSSPCACT is defined.
	(procfs_wait):  Handle PR_DEAD event, which signals the termination
	of the inferior if PRFS_STOPTERM is set.

	* mdebugread.c (parse_partial_symbols):  Ignore stNil section
	start address symbols.

	* sparc-tdep.c (get_saved_register):  Get saved PC from the
	frame info if not in innermost frame.
1996-10-26 14:22:35 +00:00
Stu Grossman
139e2c0f92 * dbxread.c: Don't swap symbols in place, since internal and
external forms may have different sizes.  Don't assume that an
	internal_nlist has the same layout as an external_nlist.  Create
	symbol for n_strx element so to hide specifics of nlist from
	partial-stab.h.
	* partial-stab.h:  Don't reference dbxread symbols directly.  Use
	CUR_SYMBOL_STRX instead.
	* config/i386/xm-windows.h:  Define SIGQUIT and SIGTRAP.

	* config/v850/tm-v850.h:  Define PS_REGNUM and TARGET_V850 for
	MSVC builds.
	* mswin/gdbwin.c (reg_order):  Define register order for V850.
	* mswin/gui.cpp (CGuiApp::InitInstance):  Define target name for
	V850.
	* mswin/regdoc.h:  Define MAXREGS for V850.
1996-10-24 17:31:45 +00:00
Stu Grossman
a638512f44 * v850-tdep.c (scan_prologue): Changes to deal with scheduled
prologues correctly.  First, prologue end is now defined by
	presence of a branch, jump or call insn.  Second, can no longer
	fix frame offsets because we may not know the offset until after a
	register has been saved.
	* (v850_init_extra_frame_info):  Fixup frame offsets here because
	we have all the info at this time.
	* (v850_frame_chain):  Use new calling convention for scan_prologue.
1996-10-22 23:34:11 +00:00
Martin Hunt
fcabf67618 start-sanitize-d10v
Tue Oct 22 10:25:29 1996  Martin M. Hunt  <hunt@pizza.cygnus.com>

	* d10v-tdep.c, config/d10v/tm-d10v.h: Changes to allow stack
 	backtraces and inferior function calls.

end-sanitize-d10v
1996-10-22 21:13:38 +00:00
Stu Grossman
53845f94f7 Sanitize out v850 stuff. 1996-10-22 17:43:02 +00:00
Stan Shebs
5efcbe3636 * mpw-make.sed: Update init.c editing to work with Oct 8 change.
(@HLDFLAGS@): Always edit out.
1996-10-22 17:37:18 +00:00
Mark Alexander
d883102448 * mdebugread.c (parse_partial_symbols): Fix 64-bit
sign-extension problems in calculating psymtab addresses.
	* buildsym.c (end_symtab): Use macro to pop context.
1996-10-22 01:26:20 +00:00
Stu Grossman
23da411ac8 * v850-tdep.c: Cleanup lots of things. Add many comments.
* testsuite/gdb.base/nodebug.exp:  Whack out -g options by hand so
	that cflags can contains -gstabs, and work correctly for other tests.
1996-10-21 21:45:55 +00:00
Michael Snyder
62dd860e25 * top.c: Add new commands "set annotate" and "show annotate".
PR 8511
1996-10-21 21:11:31 +00:00
Peter Schauer
972256e712 * corelow.c (core_close): Clear inferior_pid only if there is
an open core_bfd.

	* cp-valprint.c (cp_print_value_fields):  Pass correct address
	to val_print, not 0.

	From Andreas Schwab (schwab@issan.informatik.uni-dortmund.de):
	* eval.c (evaluate_subexp_standard) [case BINOP_REPEAT]: Chase
	typedefs before checking for integral type of right operand.
1996-10-20 11:41:30 +00:00
Mark Alexander
91d12e123a * mdebugread.c (parse_symbol): Fix crash when malloc has
no type info and void type has no associated pointer type.
1996-10-19 00:31:53 +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
6420594bbf * testsuite/gdb.base/break.exp: Make backtrace from factorial
errors unique.
	* testsuite/gdb.base/nodebug.exp:  Whack out all -g options
	explicitly.

	* v850-tdep.c (v850_init_extra_frame_info v850_frame_chain):  Fix
	sign bugs with scanning prologues.  Get a little smarter about
	calculating the length of uninteresting instructions.
1996-10-17 02:12:24 +00:00
Stan Shebs
93ed453c68 * breakpoint.c (must_shift_inst_regs): New global.
(bpstat_stop_status): Change #if uses of DECR_PC_AFTER_BREAK into
	equivalent expression uses.
	* infrun.c (wait_for_inferior): Ditto.
1996-10-17 00:54:59 +00:00
Stu Grossman
687f4e2379 * v850-tdep.c (v850_push_arguments): Use symbolic names for arg
registers.
	* config/v850/tm-v850.h:  Change FP to 29.  Define arg regs.
1996-10-16 08:57:35 +00:00
Stu Grossman
9bf9a31876 * Makefile.in (init.c): Don't use -s option with grep. It means
something different under Digital Unix.
1996-10-15 23:54:48 +00:00
Stu Grossman
ac9548059b * buildsym.c (finish_block): Treat LOC_BASEREG_ARG and
LOC_LOCAL_ARG as arguments so that GDB will know about function
	args declared this way.  Mostly affects dwarf.
	* dwarfread.c (decode_die_type):  Change default type from int to
	void.  This allows GDB to recognize void functions.
	* (new_symbol):  If AT_PROTOTYPED is present, set a flag in the
	type structure.
	* findvar.c (extract_floating store_floating):  Clean up comments
	to reflect reality.
	* gdbtypes.h:  Add TYPE_FLAG_PROTOTYPED so that we can tell if a
	function has a prototype.  Currently, only dwarf supports this.
	* utils.c (floatformat_from_doublest):  Fix logic error with
	converting from double to float.  (It wasn't shifting mant_long if
	it had a hidden bit.)

	* v850-tdep.c:  Add support for function calling.  Fix some
	problems with debugging code w/o debug symbols.
	* config/v850/tm-v850.h:  Ditto.
1996-10-15 23:44:13 +00:00
Ian Lance Taylor
03e2a8c8a0 * utils.c: Always ensure that size_t is defined. Check
HAVE_STDDEF_H rather than __STDC__
	(xmalloc, xrealloc): Use size_t rather than long.
1996-10-15 22:24:17 +00:00
Martin Hunt
3f3d60c1bc Tue Oct 15 14:24:19 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
* config/powerpc/tm-ppc-eabi.h: Undefine NO_SINGLE_STEP so targets
	can use single-step commands.
1996-10-15 21:26:29 +00:00
Stu Grossman
e5a2ac8b3f * frame.h: Move definition of struct frame_saved_args to before
struct frame to make it possible to use frame_saved_args in
	EXTRA_FRAME_INFO macro.

	* v850-tdep.c config/v850/tm-v850.h:  Lotsa new functions and
	macros to make frame operations (such as backtrace) work.
1996-10-11 22:50:42 +00:00
Fred Fish
693e9bf655 * dbxread.c (process_one_symbol): Check for null string directly
rather than using strcmp against "".
	* partial-stab.h: Ditto.
1996-10-11 22:31:56 +00:00
Mark Alexander
913a7c4cc4 * gdbserver/{gdbreplay.c,low-linux.c,remote-utils.c,utils.c}:
Make it compile on Linux and eliminate some warnings.
1996-10-11 19:26:04 +00:00
Fred Fish
a5ecaa632b Revert last change. I was fooled by an old Makefile that didn't
get rebuilt.
1996-10-11 17:48:24 +00:00
Fred Fish
7b6244ebcf Bug reported by Paul Flinders <paul@dawa.demon.co.uk>:
* Makefile.in (init.c): Restore '-n' option in sed command.
1996-10-11 17:23:14 +00:00
Stu Grossman
e96dc1f7d4 * Makefile.in (init.c): Fixup final sed script to work around
Linux bug with `p' operator.
1996-10-10 23:34:38 +00:00
Stan Shebs
5dad831218 * remote-mips.c: Use the correct name everywhere (DDB) for NEC's
VR4300 target.
	(ddb_ops, pmon_ops): Fix the documentation strings.
1996-10-10 01:17:05 +00:00
Stu Grossman
5faa6e1e4f * Makefile.in (init.c): Retro HPUX grep lacks -h option. Strip
filenames with sed instead.
1996-10-09 14:47:29 +00:00
Stu Grossman
99283e8779 * defs.h: Remove decls of xmalloc and xrealloc. There is a
conflicting definition in libiberty.h.
1996-10-08 23:01:04 +00:00
Fred Fish
a7f56d5aff Just some cleanups noticed while working on PR 10760
* dbxread.c (dbx_symfile_read): Call free_pending_blocks rather
	than poking global variable (which is now static).
	* hpread.c (hpread_build_psymtabs): Ditto.
	* os9kread.c (os9k_symfile_read): Ditto.
	* xcoffread.c (xcoff_initial_scan): Ditto.

	* buildsym.h (free_pending_blocks): Declare here.
	(pending_blocks): Remove declaration of global symbol.
	(free_pendings): Remove declaration of global symbol.
	(make_blockvector): Declare here.
	(record_pending_block): Declare here.

	* dstread.c (make_blockvector): Remove static copy that was old
	clone of version in buildsym.c.
	(process_dst_block): Call record_pending_block rather than doing
	it by hand.
	(read_dst_symtab): Ditto.

	* buildsym.c (make_blockvector): Make global rather than static,
	(record_pending_block): New function, code moved from finish_block.
	(finish_block): Use record_pending_block.
	(free_pending_blocks): New function.
	(really_free_pendings): Call free_pending_blocks.
	(pending_blocks): Make static instead of global.
	(free_pendings): Make static instead of global.
1996-10-08 19:00:38 +00:00
Stu Grossman
8a5c77a19e * config/i386/windows.mh config/i386/xm-windows.h:: New config
files to support building Wingdb (built under Microsoft build
	environment).
1996-10-08 17:12:06 +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
7336948874 * buildsym.c (finish_block): Change innerblock_anon_complaint to
print the addresses as part of the complaint.  Add a complaint for
	cases where the block end address is smaller than the block start
	address, in case any such conditions slip through our fixup mechanism.
	* symmisc.c (dump_symtab): Only print blockvector for primary
 	symtabs, to avoid massive duplication of output due to secondary
 	symtabs that point to same blockvector.  Also do some minor
	formatting tweaks.
1996-10-07 17:58:56 +00:00
Per Bothner
7f8da359a8 Replace header_files global by per-objfile field.
* gdb-stabs.h (struct dbx_symfile_info):  Add fields header_files,
	n_header_files, n_allocated_header_files.
	* stabsread.h (header_files, n_header_files, n_allocated_header_files):
	Replace externs by macros HEADER_FILES, N_HEADER_FILES, and
	N_ALLOCATED_HEADER_FILES.
	* dbxread.c (dbx_symfile_finish):  Free HEADER_FILES.
	(free_header_files, init_header-files):  Don't free/init headerfiles.
	(various functions):  Use macros instead of header_files globals.
	* stabsread.c (various functions):  Likewise.
1996-10-07 17:45:29 +00:00
Jason Merrill
e61a754e39 Sun Oct 6 22:43:06 1996 Jason Merrill <jason@yorick.cygnus.com>
* dwarf2read.c (read_tag_reference_type): New fn.
	(read_type_die): Call it.
	(dwarf_attr): Also look in the DIEs referred to by specification
 	or abstract_origin attributes.
1996-10-07 17:18:24 +00:00
Fred Fish
5bb23a95f4 * inferior.h (IN_SIGTRAMP): Pass pc to SIGTRAMP_START and
SIGTRAMP_END.
	* config/i386/tm-i386os9k.h (SIGTRAMP_START, SIGTRAMP_END):
	Define with dummy pc arg.
	* config/m68k/tm-nbsd.h: Ditto.
	* doc/gdbint.texinfo: Document that SIGTRAMP_START and
	SIGTRAMP_END are macros that take an single argument.
1996-10-03 17:05:00 +00:00
Stan Shebs
407e05d604 Fix a stutter
Fix a stutter
1996-10-01 05:15:10 +00:00
Fred Fish
b51843d888 * defs.h: Remove define of PRIVATE_XMALLOC. 1996-10-01 03:04:13 +00:00
Jeff Law
e20c36baa7 * top.c (execute_control_command): Free values from while_control
and if_control conditions after evaluation to avoid storage leaks.
        From Peter Schauer.
Fixes 10442.
1996-09-30 17:16:35 +00:00
Stu Grossman
1fa83dcd66 Add configure. 1996-09-28 01:11:34 +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
Peter Schauer
be23e5a495 * infrun.c (wait_for_inferior): Update current_line and
current_symtab when stepping continues in the middle of a new line.
1996-09-27 21:51:32 +00:00