Commit Graph

6619 Commits

Author SHA1 Message Date
Jeff Law d83c8ac193 * gdb.disasm/mn10200.s (misc_tests): Fix targets for "jsr" insns.
* gdb.disasm/mn10200.exp (misc_tests): Remove bogus line accidentally
        left in.  No longer expect them to fail.
1997-02-13 23:33:33 +00:00
Jeff Law f8cc5c612e * gdb.stabs/*.mt; Deleted, no longer used.
* gdb.stabs/configure.in: Remove references to target makefile
        frags.
        * gdb.stabs/configure: Rebuilt.
Removing more crud.
1997-02-13 23:20:09 +00:00
Jeff Law f43e619c5b * gdb.disasm/*.mt: Deleted, no longer used.
* gdb.disasm/configure.in: Remove references to target makefile
        frags.  Use "sh3.s" as the unique filename for this directory.
        * gdb.disasm/configure: Rebuilt.
Cleaning up unused crud.

        * gdb.disasm/mn10200.s: New test file for mn10200 disassembler.
        * gdb.disasm/mn10200.exp: Run mn10200 disassembler tests.
        * gdb.disasm/Makefile.in: Remove "mn10200" when cleaning.
mn10200 disassembler testsuite.
1997-02-13 23:16:26 +00:00
Dawn Perchik 8662603f08 * debugify.c, debugify.h: Make safe for non-ansi compilers. 1997-02-13 00:01:21 +00:00
Dawn Perchik 2dec49333b * defs.h: Fix prototypes for new cleanup functions. 1997-02-12 23:32:50 +00:00
Dawn Perchik 27e81a4e1b * debugify.c, debugify.h: Fix for general gnu use. Remove C++
comment, add PARAMS, add license info and fix indentation.
1997-02-12 23:16:32 +00:00
Dawn Perchik 4659e3b367 * debugify.c, debugify.h: New files. Provide common macros
for writing debug info to a log file or stdio.
1997-02-12 22:48:45 +00:00
Dawn Perchik 65c89fc376 * c-valprint.c: Fix checkin glitch. 1997-02-12 15:18:10 +00:00
Dawn Perchik be733f5841 * c-valprint.c (c_val_print): Fix printing for arrays defined
with 0 length.  A sticky tag caused this fix from
        revision 2.32 date: 1996/04/29 23:25:27;  author: dawn;
        state: Exp;  lines: +1 -0 branches:  2.32.34;
        to not make it into devo.
1997-02-12 10:49:20 +00:00
Dawn Perchik 16a43bf443 * defs.h: Fix cntl-C to read from the Windows message queue.
Add prototypes for make_final_cleanup (and the other cleanup
	routines.
	* remote-e7000.c: Fix sync code to timeout if unable to sync.
	Change sync code to report status while trying to sync-up
	with hardware.  Add debugging output and document.
	* ser-e7kpc.c: Swap order of len & offset to match implementation.
	Add debugging output and document.
	* serial.c: Add debugging output.
	* top.c: Add call to do_final_cleanups.
	Remove conditionals preventing Win32 from getting SIGQUIT.
	* utils.c: (*_cleanup): Modify cleanup routines to accept a cleanup
	chain as a parameter.  Extract this generic code from the cleanup
	routines into separate funtions (*_my_cleanup).  Keep old
	functionality by passing "cleanup_chain" to the new funtions.
	Define the cleanup chain "final_cleanup_chain" to be a cleanup
	chain which will be executed only when gdb exits.  Add functions
	(*_final_cleanup) to match the original (*_cleanup) functions.
	(pollquit, quit, notice_quit): Fix to read cntl-C from the
	Windows message queue.
1997-02-12 10:27:11 +00:00
Jeff Law 6fb47af036 Revert last structs.exp change -- I found the problem. 1997-02-12 02:06:34 +00:00
Bob Manson 76abb184ef * config/udi.exp: Use mondfe,name instead of remote_host.
remote_host is a bad naming choice.
1997-02-12 01:00:49 +00:00
Jeff Law 8bd49d39b3 Remove REG_STRUCT_HAS_ADDR change. 1997-02-12 01:00:46 +00:00
Jeff Law d601a41faa * config/mn10200/tm-mn10200.h (STORE_STRUCT_RETURN): Fix.
* mn10200-tdep.c (mn10200_store_struct_return): New function.
        (REG_STRUCT_HAS_ADDR): Tweak.
Fixes most of the structs.exp tests.
1997-02-12 00:48:47 +00:00
Jeff Law 380c32d50d * gdb.base/structs.exp: Expect some failures from the mn10200 port.
I don't want to deal with this for the alpha!
1997-02-12 00:45:46 +00:00
David Edelsohn 46148567bd * m32r-rom.c: #include <sys/types.h>.
#ifdef out new load support if wingdb.
1997-02-11 23:38:50 +00:00
David Edelsohn a66c8b50d1 * m32r/tm-m32r.h (TARGET_M32R): Define, for wingdb. 1997-02-11 23:38:25 +00:00
Jeff Law 527579ee7b * config/mn10200/tm-mn10200.h (EXTRACT_RETURN_VALUE): Fix case when
extracting a return value from a register pair.
Fixes remaining failures in callfuncs.exp, but not structs.exp.
1997-02-11 22:40:54 +00:00
Jeff Law 3d6ab69f35 * gdb.base/watchpoint.exp: Don't expect a failure when calling
a function with a watchpoint enabled on the mn10200.
1997-02-11 19:54:45 +00:00
Jeff Law 25de138b06 * mn10200-tdep.c (mn10200_push_arguments): Stack only needs to
be two byte aligned.  Round argument sizes up to two byte boundary.
        Write out args in two byte hunks.
        (mn10200_push_return_address): Implement.
        * config/mn10200/tm-mn10200.h (EXTRACT_RETURN_VALUE): Abort for
        structures > 8 bytes (temporary).
        (STORE_RETURN_VALUE): Likewise.
        (CALL_DUMMY): No longer undefine.
        (USE_STRUCT_CONVENTION): Use for args > 8 bytes.
        (REG_STRUCT_HAS_ADDR): Define.
Inferior function calls for the mn10200.
1997-02-11 19:31:29 +00:00
Jeff Law 9e40b4f147 * gdb.stabs/weird.exp: Don't quit if "weird.s" doesn't exist
before trying to create it!
1997-02-11 18:24:21 +00:00
Gavin Romig-Koch 276c2d7dc8 Add r5900 1997-02-11 13:26:34 +00:00
Bob Manson dba77cd79b * config/vx.exp: Use hostname instead of netport.
* config/vxworks.exp: New file.

	* gdb.base/a2-run.exp: Change vxworks cases to use gdb_spawn_id.

	* config/monitor.exp(gdb_target_monitor): Look for a prompt from
 	gdb before assuming everything worked. Send a ^C if a timeout
	occurs.

Random fixes for vxworks and d10v.
1997-02-11 06:38:22 +00:00
Mark Alexander 7061bb0ef3 * mips-tdep.c (non_heuristic_proc_desc): New function.
(find_proc_desc): Move non-heuristic proc search code into separate
	function.
	(gdb_print_insn_mips): Use non-heuristic method to find procedure
	descriptor, to avoid prologue examination when disassembling.
	* remote-mips.c: Add support for new "lsi" target (LSI MiniRISC
	aka MicroMeteor board).
	(mips_exit_debug): Prevent protocol reinitialization if an error
	occurs while exiting debug mode.
1997-02-11 02:48:55 +00:00
Bob Manson 6a590607fc * lib/gdb.exp(gdb_test): Check the result of send_gdb. Use
$gdb_spawn_id directly.

Checking for errors actually helps. *sigh*
1997-02-11 00:49:17 +00:00
Jeff Law a698d0d06f * mn10200-tdep.c: Remove lots of debugging printfs, update/improve
comments, formatting, etc.  Plus other minor fixes for problems
        I found during my first pass over the mn10200 port.
        (mn10200_analyze_prologue): New function.
        (mn10200_frame_chain, mn10200_init_extra_frame_info): Use it.
        * config/mn10200/tm-mn10200.h: Lots of updates/improvements to
        comments, formatting, etc.  Minor fixes for problems I found during
        my first pass over the mn10200 port.
        (TARGET_*_BIT): Define appropriately for ints, long longs, doubles and
        pointers.
        (REGISTER_VIRTUAL_TYPE): Define as a long.
        (EXTRACT_RETURN_VALUE): Rework to deal with long ints living
        in register pairs.
        (STORE_RETURN_VALUE): Similarly.
Checking in my initial changes, prologue scanning, etc.
Current gdb testsuite results:

                === gdb Summary ===

# of expected passes       3684
# of expected failures     40
# of unexpected failures   6
1997-02-10 23:56:56 +00:00
Jeff Law efaf2b5892 * blockframe.c (generic_get_saved_regs): Remove unused variable
"addr".
        * breakpoint.c (frame_in_dummy): Move struct breakpoint *b decl
        inside #ifdef CALL_DUMMY.
        (watch_command_1): Initialize target_resources_ok.
        * command.c (do_setshow_command): Provide dummy initialization
        for "match".
        * valops.c (find_function_addr): Move function & prototype inside
        #ifdef CALL_DUMMY.
        (value_arg_coerce): Similarly.
        (value_of_variable): Provide dummy initialization of "frame".
Lint.
1997-02-10 23:15:37 +00:00
Jeff Law 66e7ce0add * gdb.base/exprs.exp: Delete bogus/incorrect (and probably
redundant) test.
1997-02-10 22:24:53 +00:00
Stu Grossman 40dffa42ba * gdbtk.c (call_wrapper): Clear running_now if an error occurs.
This fixes PR 11323, where gdbtk stops responding if an error occurs.
1997-02-10 21:52:46 +00:00
Jeff Law 797b43f662 * gdb.base/recurse.exp: Relax final value test for 'b' so that
it doesn't lose for 16bit integer systems.
1997-02-10 18:30:03 +00:00
Fred Fish 86fdcdafd1 * xcoffread.c (RECORD_MINIMAL_SYMBOL): Add NULL asection* parameter
to prim_record_minimal_symbol_and_info call that was missed in Jan 3
	change.
	(scan_xcoff_symtab): Ditto.
1997-02-10 15:59:01 +00:00
Mark Alexander 32dab60312 * remote-mips.c (common_breakpoint): Prevent 64-bit addresses
from being sent to 32-bit targets by masking off upper bits.
	* mips-tdep.c (heuristic_proc_start): Mask off upper 32 bits
	of PC on 32-bit targets.
	(mips16_heuristic_proc_desc): Recognize 'addiu s1,sp,n' as a
	frame setup instruction.
	(mips32_heuristic_proc_desc): Fix warning found by gcc -Wall.
	(mips16_skip_prologue): Recognize 'addiu s1,sp,n' as a valid
	prologue instruction.  Fix warnings and bugs found by gcc -Wall.
	* buildsym.c (finish_block): Improve handling of overlapping blocks;
	fixes problem on MIPS16 printing function arguments.
1997-02-09 17:36:49 +00:00
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
Jeff Law 28ec59b4cf * gdb.fortran/types.exp: If the target doesn't support "double"
data types, then expect "real" types to only be 4 bytes.
1997-02-07 16:40:39 +00:00
Jeff Law 2f54eeea76 * gdb.c++/virtfunc.exp: Expect failure for virtual function
call tests if the target doesn't support inferior function calls.
1997-02-07 16:34:55 +00:00
Jeff Law ad9f858a45 * gdb.base/printcmds.exp: Allow minor deviation in FP values
in printf tests.
1997-02-07 16:32:42 +00:00
Jeff Law 6382554a6c * gdb.base/help.exp: Disable "help set", "help show", and
"help support".  Simplify regexp for "help stack".
They're causing timeouts, overruns, etc again.
1997-02-06 22:47:57 +00:00
Jeff Law fed72befa9 * gdb.base/default.exp: Set match_max to 5000 and the timeout
to 60 seconds.  Temporarily set match_max to 15000 around the
        "info copying" test.
Fixes timeout/overflow problems for hpux10.20 hosted toolchains.
1997-02-06 21:43:53 +00:00
Jeff Law dada510572 * gdb.base/nodebug.exp: Don't try to do an inferior function
call if the target doesn't support them.
        * gdb.base/printcmds.exp: Likewise.
        * gdb.base/setvar.exp: Likewise.
        * gdb.base/structs.exp: Likewise.
        * gdb.c++/templates.exp: Likewise.
        * gdb.base/ptype.exp: Likewise.  Remove UDI specific stuff.

        * gdb.base/recurse.exp: Enable for the mn10200.

        * configure.in: Do configure gdb.stabs directory for *-*-elf
        targets.
        * configure: Rebuilt.
1997-02-06 20:58:55 +00:00
Jeff Law 0979e7bd28 * gdb.base/break.exp: Check for gdb,noresults before testing
exit status and/or results from the target.
        * gdb.base/watchpoint.exp, gdb.base/langs.exp: Likewise.
        * lib/gdb.exp: Remove old (now bogus) initialization of
        noinferior, noargs, noresults and nosignals.
More cleanups for new testing framework.
1997-02-06 19:50:33 +00:00
Bob Manson b6f32a5bb9 * config/sh.exp: New file.
* config/slite.exp: Try to connect multiple times to the board
	before rebooting. Only send a "monitor run" if need_monitor_run
	is set.

	* gdb.base/break.exp: Don't do the "stub continue" test if
	the target has gdb_stub set.

	* gdb.base/callfuncs.exp: Increase the timeout.

	* gdb.base/interrupt.exp: Don't even try to compile the testcase
	if the target has gdb,noinferiorio set.

	* gdb.base/list.exp: Increase match_max to 10000 characters.

	* gdb.base/sigall.exp: Check for gdb,nosignals on the target.

	* gdb.base/watchpoint.exp: Check for gdb,noinferiorio on the
	target.

	* lib/gdb.exp(gdb_run_cmd): Fix for targets that use stubs.

Misc fixes for sparclite and SH.
1997-02-05 06:25:42 +00:00
Bob Manson 5d05bf0d50 * config/sh.exp: New file.
* config/slite.exp: Try to connect multiple times to the board
	before rebooting. Only send a "monitor run" if need_monitor_run
	is set.

	* gdb.base/break.exp: Don't do the "stub continue" test if
	the target has gdb_stub set.

	* gdb.base/callfuncs.exp: Increase the timeout.

	* gdb.base/interrupt.exp: Don't even try to compile the testcase
	if the target has gdb,noinferiorio set.

	* gdb.base/list.exp: Increase match_max to 10000 characters.

	* gdb.base/sigall.exp: Check for gdb,nosignals on the target.

	* gdb.base/watchpoint.exp: Check for gdb,noinferiorio on the
	target.

	* lib/gdb.exp(gdb_run_cmd): Fix for targets that use stubs.

Misc fixes for sparclite and SH.
1997-02-05 05:59:01 +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
Bob Manson 94b25813b1 * gdb.base/a1-selftest.exp: Make sure we call gdb_exit before
trying to delete the copy of gdb. Catch the file delete so we
 	don't die if the delete fails; also, the file should be copied to
 	the host, not to the build.

Fixes problems when gdb isn't built with debugging.
1997-02-03 20:36:39 +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
Bob Manson 0d8017baad * lib/gdb.exp(gdb_test): Surround the result pattern with
parenthesis in case it contains multiple regexps separated
	with |.

Fixes last nights native failures.

	* gdb.base/watchpoint.exp: Use gdb_test.
	* gdb.base/default.exp: Ditto.

More improvements.
1997-02-03 03:35:42 +00:00
Bob Manson 85fbaa747f * gdb.*/*.exp: Replace $prompt with $gdb_prompt.
* gdb.base/scope.exp: Use gdb_test.
	* gdb.c++/classes.exp: Ditto.
	* gdb.c++/inherit.exp: Ditto.

More random cleanups. Still lots to go, however.
1997-02-02 07:59:25 +00:00
Geoffrey Noer e385d6e03e Committing sanitize changes 1997-02-02 06:49:44 +00:00
Bob Manson 05a2139023 * gdb.base/crossload.exp: Don't use execute_anywhere, use
remote_exec instead.
        * gdb.base/corefile.exp: Don't be ridiculous.
        * gdb.base/*.c: Add missing stub invocations.

Fixes failures on HP-UX.
1997-01-31 21:21:31 +00:00
Stan Shebs e696e60686 do d10v sanitization over all files 1997-01-31 19:57:42 +00:00
Stan Shebs c3dccb2a46 keep 1996 ChangeLog 1997-01-31 19:55:15 +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
Bob Manson 0e865b3950 Miscellaneous fixes for config/slite.exp. 1997-01-31 04:38:01 +00:00
Bob Manson ef87597cfa Oops. goes with previous checkin. 1997-01-31 01:04:09 +00:00
Bob Manson 1a7dadf9cf * lib/gdb.exp: Fix runto.
* gdb.base/signals.exp: Check for a gdb,nosignals feature of
	the target.

	* gdb.base/watchpoint.exp: Fix regexp.

Random miscellaneous fixes. Gotta dig up all these global variables someday..
1997-01-31 01:03:51 +00:00
Bob Manson 83b1cc25d1 * lib/gdb.exp(default_gdb_exit): Add a catch to the
close and wait commands, as the descriptor may now be
	invalid. Always call "remote_close host".

Makes sure things get cleaned up if gdb dies in the middle of a test.
1997-01-31 00:51:45 +00:00
Michael Meissner 7e2b3363f1 Remove ../sim/ppc/libsim.a 1997-01-29 17:47:02 +00:00
Bob Manson 787f622077 Major revision to testsuites for cross-testing and DOS testing support. 1997-01-29 09:40:31 +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 b0d8afed60 Committing tiny change -- pretend regs are 32 bits 1997-01-23 10:01:20 +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
Angela Marie Thomas 6b01dc653b fix bugs 1997-01-16 10:50:58 +00:00
Geoffrey Noer 6c009684d9 Tue Jan 14 16:01:06 1997 Geoffrey Noer <noer@cygnus.com>
* mn10300-tdep.c: made a lot more generic, ripping out code
        from copied target (no more mn10300_scan_prologue,
        init_extra_frame_info, and mn10300_fix_call_dummy calls)
        * config/mn10300/tm-mn10300.h: undefine INIT_EXTRA_FRAME_INFO
        and INIT_FRAME_PC macros
1997-01-15 00:06:41 +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 4c681116af * 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:33:01 +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 fb0b06b0cf small fix 1996-12-31 23:30:48 +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 133b13c022 * 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:02:30 +00:00
Mark Alexander 04624a8582 * config/i386/xm-windows.h: Undo previous change to SIGTRAP
and SIGQUIT values; it messed up non-MIPS targets.
1996-12-31 15:01:55 +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 988eafc044 * config/mips/tm-mips.h (PC_IN_CALL_DUMMY): Removed, the default
definition in inferior.h is sufficient.
1996-12-21 21:01:19 +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
Geoffrey Noer 4c7be7baf5 fixed .Sanitize 1996-12-17 20:59:13 +00:00
Angela Marie Thomas 72e83496c1 add missing Do-last: 1996-12-17 19:45:09 +00:00
Mark Alexander d31b72a314 * config/mips/tm-mips.h (FIX_CALL_DUMMY): Define to set up $25
correctly for PIC on Irix 5.
1996-12-15 04:59:33 +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
Mark Alexander 78b9b17039 * gdbtk.c (gdb_loc): Correct truncation of PC on 64-bit MIPS. 1996-12-12 02:54:55 +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 509ffa78cf * config/mips/tm-mips.h: Get rid of call-dummy code.
Minor changes to make pre-ANSI compilers happy.
1996-12-10 00:15:46 +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
Fred Fish 1fe1c717d9 * gdb.texinfo, refcard.tex: Restore author credit 1996-12-09 23:58:07 +00:00
Geoffrey Noer 578d1f4493 additional register stuff 1996-12-09 09:11:45 +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
Mark Alexander 1bcfe5fa30 * add valops.c to list of files to be sanitized for d10v 1996-12-06 17:44:23 +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 edbceb89a8 (TM_PRINT_INSN_MACH): Redefine for sparclet. 1996-12-05 22:30:45 +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 021b78fb68 fixed sanitize files 1996-12-05 00:37:33 +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
Geoffrey Noer c5c4495202 Sun Dec 1 00:40:46 1996 Geoffrey Noer <noer@cygnus.com>
* configure.tgt: add new mn10300 entry
1996-12-01 08:46:59 +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 50f04a5a37 Tue Nov 26 18:29:23 1996 Michael Snyder <msnyder@cleaver.cygnus.com>
* gdb.base/callfuncs.exp: Turn on function call tests for h8300.
        * gdb.base/default.exp:   ditto.
        * gdb.base/nodebug.exp:   ditto.
        * gdb.base/printcmds.exp: ditto.
        * gdb.base/ptype.exp:     ditto.
        * gdb.base/setvar.exp:    ditto.
        * gdb.base/structs.exp:   ditto.
        * gdb.base/setshow.c:     Guard against uninitialized values of argc.
1996-11-27 19:13:21 +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 7844472931 * config/mips/tm-mips.h (ADDR_BITS_REMOVE, TARGET_READ_SP): Define.
(mips_addr_bits_remove): Declare.
1996-11-27 03:40:28 +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 d45358c6a7 * configure, */configure: Rebuild with autoconf 2.12. 1996-11-26 22:27:00 +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
Fred Fish b016565b0c * gdb.base/a1-selftest.exp: Change x86 linux setup_xfails to
use new i*86-pc-linux*-gnu quads.
	* gdb.base/corefile.exp: Ditto.
	* gdb.base/signals.exp: Ditto.
	* gdb.base/sigall.exp: Ditto.
	* gdb.base/interrupt.exp: Ditto.

	* gdb.base/signals.exp (signal_tests_1): Remove setup_xfail
	"i*86-*-linux" for "signal SIGUSR1".  Now works, at least with
	RedHat 4.0.

	* gdb.threads/pthreads.c (_MIT_POSIX_THREADS): Define if target is
 	linux.  This allows the test case to at least compile on latest
 	linux, but still not run due to missing the threads runtime library.
1996-11-23 21:33:08 +00:00
Fred Fish e8ee39bcfb * misc.exp: Change x86 linux setup_xfails to use new
i*86-pc-linux*-gnu quads.
	* tuples.exp: Ditto.
	* tests2.exp: Ditto.
	* pr-5016.exp: Ditto.

	* tuples.exp: Add i*86-pc-linux-gnu setup_fail to existing
	xfails for 'set var vs1 := [ "bar", 42, m_ps[ a ] ]',
	'set var $i := m_s1["foo", 44, m_ps[a ]]', and
	'set var vs2 := [ 10+3, m_s1[ "foo" , 42, m_ps[ b ]]]'.
1996-11-23 21:28:30 +00:00
Martin Hunt d9b9cbf3cc Fri Nov 22 15:55:22 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
* valops.c (value_at, value_fetch_lazy): Put in D10V call
	to fix up address pointers.
	* values.c (value_from_longest): Removed previous d10v changes.
	* config/d10v/tm-d10v.h (TARGET_PTR_BIT): Change to 4 bytes.
1996-11-22 23:59:34 +00:00
Peter Schauer 49c7ee7be3 * gdb.base/a1-selftest.exp (do_steps_and_nexts): Reinitialize source
directory to search gdb directory. Accept and step over conditional
	stack alignment code. Consume $prompt in failure cases.
	Reset timeout to $oldtimeout instead of some arbitrary value.
	* gdb.base/nodebug.exp:  Limit backtrace to 10 frames to avoid
	timeout problems with infinite stack backtraces.
	* gdb.base/ptype.exp (ptype struct link, union tu_link):
	Accept function parameters for linkfunc member.
1996-11-22 18:16:24 +00:00