Commit Graph

283 Commits

Author SHA1 Message Date
Andrew Cagney e7ab2a476e (Mostly from Gavin Koch)
In dwarf2read.c, if the ABI is 32 bit and 64 bit addresses are encountered
discard the most significant 32 bits.
Use CORE_ADDR for address variables instead of long.
Add more explicit tx49 configur target.
Check/use sigaction/SA_RESTART in remote-sim.c
1997-12-15 12:38:05 +00:00
Nick Clifton cd66558c07 Renamed v850eq -> v850ea 1997-12-12 19:05:07 +00:00
Nick Clifton 89b993af84 Add support for Thumb target. 1997-12-02 18:17:13 +00:00
Andrew Cagney c08075aaf8 Have mips64vr5400-*-elf look like a mips64vr5000. 1997-11-24 06:31:05 +00:00
Gavin Romig-Koch da3636f762 * configure.tgt: Add tx49 configury based on 4300. 1997-10-29 22:38:09 +00:00
Stan Shebs 501ad43a89 Remove sanitized-out Magic Cap support, will never be released 1997-10-06 19:38:43 +00:00
Jeff Law 91ee277977 * configure.tgt: Set gdb_target to r5900.
* config/mips/tm-r5900.h, config/mips/r5900.mt: New files

        * mips-tdep.c (_initialize_mips_tdep): Allow target files to
        override default FPU type.
Brought over from r5900 branch.
1997-09-26 18:53:22 +00:00
Felix Lee afa38b3dff * configure.tgt (v850-*-*): necmsg.lib instead of v850.lib. 1997-09-26 17:37:34 +00:00
Stu Grossman 45a70ed653 * The following block of changes add support for debugging assembly
source files.
	* breakpoint.c (resolve_sal_pc):  Prevent crash when pc isn't
	associated with a function.
	* buildsym.c (record_line start_symtab end_symtab):  Don't delete
	symtabs which only have line numbers (but no other debug symbols).
	* dbxread.c (read_dbx_symtab end_psymtab):  Ditto.

	* remote-sim.c:  New functions gdbsim_insert/remove_breakpoint.  Use
	intrinsic simulator breakpoints if available, otherwise do it the
 	hard way.
	* configure.tgt:  Add d30v.
	* d30v-tdep.c:  New file.
	* config/d30v/d30v.mt, config/d30v/tm-d30v.h:  New files.
1997-09-25 01:26:36 +00:00
Jeff Law 7dce98aab2 vr5900 -> r5900
r5900 is always little endian.
1997-09-23 16:31:33 +00:00
Nick Clifton 446df8b8d5 Removed v850eq sanitization. 1997-09-21 01:19:51 +00:00
Stan Shebs 2bf15e13f5 Remove/retain old ARC stuff as appropriate 1997-09-16 02:27:10 +00:00
Mark Alexander 899c402166 * dbxread.c (MSYMBOL_SIZE): New macro.
(end_psymtab): Use MSYMBOL_SIZE to extract size from minimal symbol.
	* elfread.c (elf_symtab_read): If ELF symbol is "special",
	such as a MIPS16 function, mark minimal symbol as special too.
	* mips-tdep.c (pc_is_mips16): New function to check whether
	a function is MIPS16 by looking at the minimal symbol.  Use
	pc_is_mips16 throughout instead of IS_MIPS16_ADDR macro.
	* config/mips/tm-mips.h (SYMBOL_IS_SPECIAL, MAKE_MSYMBOL_SPECIAL,
	MSYMBOL_IS_SPECIAL, MSYMBOL_SIZE): New functions for setting/testing
	"special" MIPS16 bit in ELF and minimal symbols.
	* mdebugread.c (parse_partial_symbols): Don't construct a partial
	symbol table for a file that already has one.
start-sanitize-tx19
	* configure.tgt: Support TX19.
	* config/mips/tm-tx19.h, config/mips/tm-tx19l.h, config/mips/tx19.mt,
	config/mips/tx19l.mt: New files for TX19.
end-sanitize-tx19
1997-09-15 21:06:16 +00:00
Nick Clifton 3234b2e7a5 removed v850 sanitization. 1997-09-03 23:26:21 +00:00
Nick Clifton ab11a82c2d Add support for v850e and v850eq targets. 1997-08-18 18:12:54 +00:00
Mark Alexander 28954a6eb3 start-sanitize-tic80
* config/tic80/tic80.mt:
	(GDBSERVER-DEPFILES, GDBSERVER_LIBS): Define for gdbserver.
	(SIM): Remove -lm to prevent make errors.
	* configure.tgt: add gdbserver to configdirs for tic80.
end-sanitize-tic80
	* gdbserver/utils.c (error): Change prototype to match defs.h.
	* gdbserver/low-sim.c: Change simulator calls to use new interface.
	* remote.c (remote_write_bytes): Include '$' at start of packet
	and checksum at end of packet in overhead calculation.
1997-08-09 04:49:48 +00:00
Michael Snyder 00e40d11f4 Fri Jun 13 13:44:47 1997 Michael Snyder (msnyder@cleaver.cygnus.com)
* config/mips/tm-tx39[l].h, tx39[l].mt: change r3900 target to tx39.
	[also clean up sanitization]
1997-06-13 20:53:34 +00:00
Michael Snyder 3d400c0939 * configure.tgt: add mipsr3900-elf target
* config/mips/r3900*.mt config/mips/tm-r3900*.h: ditto
1997-06-03 23:28:54 +00:00
David Edelsohn 038e48cf64 Remove m32r sanitization. 1997-04-07 23:01:27 +00:00
Fred Fish 12967062e4 * remote-sim.c (simulator_command): Add comment about dealing with
NULL or empty args.
start-sanitize-tic80
	* Makefile.in (tic80-tdep.o): Add target.
	* configure.tgt: Add tic80 case.
	* tic80-tdep.c: New file.
	* config/tic80/{tic80.mt, tm-tic80.h}: New files.
end-sanitize-tic80
1997-03-22 23:52:04 +00:00
Michael Meissner 23e92f3fbd Make powerpc simulator support in gdb dependent on whether the simulator was configured in 1997-03-21 20:56:10 +00:00
Geoffrey Noer 9e3977b9df Wed Mar 19 16:13:22 1997 Geoffrey Noer <noer@pizza.cygnus.com>
New UnixWare 2.1 configuration
        * config/i386/i386v42mp.mt: new
        * config/i386/i386v42mp.mh: new
        * config/i386/tm-i386v42mp.h: new
        * config/i386/nm-i386v42mp.h: new
        * configure.tgt: added new entries
        * configure.host: added new entries
1997-03-20 00:41:50 +00:00
Stan Shebs 84fdbc864f * configure.tgt (mips*-*-lnews*): New target. 1997-02-26 04:23:45 +00:00
Michael Meissner c6c7035cfb Since d10v is public now, remove all sanitization statements 1997-02-20 16:05:18 +00:00
Gavin Romig-Koch 276c2d7dc8 Add r5900 1997-02-11 13:26:34 +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
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 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 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
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
Mark Alexander 26c87277f4 * config/mips/{tm-vr5000.h,tm-vr5000el.h,vr5000.mt,vr5000el.mt}:
New files.
	* configure.tgt: Modify cases for vr5000 to use new files.
1996-10-28 04:24:30 +00:00
Mark Alexander 8ddf07a29a * dbxread.c (process_one_symbol): Interpret end-of-function
markers correctly; this fixes problem on Vr5000 where all
	functions in a module had the same address.
	* configure.in, configure.tgt, configure.host, gdbserver/configure.in:
	Correct	for pc-linux-gnu problem in config.guess.
	* configure: Regenerate.
1996-10-24 18:51:46 +00:00
Stan Shebs 943e243ce7 * configure.host: New file, host configuration mapping.
* configure.tgt: New file, target configuration mapping.
	* configure.in: Remove host and target mapping.
	* configure: Rebuild.
1996-10-18 01:27:59 +00:00