1996-10-18 09:27:59 +08:00
|
|
|
# Mappings from configurations to GDB target definitions. This is
|
|
|
|
# invoked from the autoconf generated configure script.
|
|
|
|
|
|
|
|
# This file sets the following shell variables:
|
|
|
|
# gdb_target_cpu generic name of CPU
|
|
|
|
# gdb_target name of GDB target definition to use
|
|
|
|
|
|
|
|
# This file may also modify configdirs.
|
|
|
|
|
|
|
|
# Map target cpu into the config cpu subdirectory name.
|
|
|
|
# The default is $target_cpu.
|
|
|
|
|
|
|
|
case "${target_cpu}" in
|
|
|
|
|
1998-02-03 09:20:27 +08:00
|
|
|
alpha*) gdb_target_cpu=alpha ;;
|
1996-10-18 09:27:59 +08:00
|
|
|
c[12]) gdb_target_cpu=convex ;;
|
|
|
|
hppa*) gdb_target_cpu=pa ;;
|
1996-10-25 02:51:46 +08:00
|
|
|
i[3456]86*) gdb_target_cpu=i386 ;;
|
1996-10-18 09:27:59 +08:00
|
|
|
m68*) gdb_target_cpu=m68k ;;
|
|
|
|
m88*) gdb_target_cpu=m88k ;;
|
|
|
|
mips*) gdb_target_cpu=mips ;;
|
|
|
|
np1) gdb_target_cpu=gould ;;
|
|
|
|
powerpc*) gdb_target_cpu=powerpc ;;
|
|
|
|
pn) gdb_target_cpu=gould ;;
|
|
|
|
pyramid) gdb_target_cpu=pyr ;;
|
|
|
|
sparc*) gdb_target_cpu=sparc ;;
|
1997-12-03 02:17:13 +08:00
|
|
|
thumb*) gdb_target_cpu=arm ;;
|
1996-10-18 09:27:59 +08:00
|
|
|
*) gdb_target_cpu=$target_cpu ;;
|
|
|
|
|
|
|
|
esac
|
|
|
|
|
|
|
|
# map target info into gdb names.
|
|
|
|
|
|
|
|
case "${target}" in
|
|
|
|
|
|
|
|
a29k-*-aout*) gdb_target=a29k ;;
|
|
|
|
a29k-*-coff*) gdb_target=a29k ;;
|
|
|
|
a29k-*-elf*) gdb_target=a29k ;;
|
|
|
|
a29k-*-ebmon*) gdb_target=a29k ;;
|
|
|
|
a29k-*-kern*) gdb_target=a29k-kern ;;
|
|
|
|
a29k-*-none*) gdb_target=a29k ;;
|
|
|
|
a29k-*-sym1*) gdb_target=ultra3 ;;
|
|
|
|
a29k-*-udi*) gdb_target=a29k-udi ;;
|
|
|
|
a29k-*-vxworks*) gdb_target=vx29k ;;
|
|
|
|
|
1998-02-03 09:20:27 +08:00
|
|
|
alpha*-*-osf*) gdb_target=alpha-osf1 ;;
|
|
|
|
alpha*-*-linux*) gdb_target=alpha-linux ;;
|
1996-10-18 09:27:59 +08:00
|
|
|
|
|
|
|
arc-*-*) gdb_target=arc ;;
|
|
|
|
|
1998-01-08 19:12:39 +08:00
|
|
|
arm-*-* | thumb-*-*) gdb_target=arm
|
|
|
|
|
|
|
|
# rdi doesn't work for wingdb yet
|
|
|
|
case $gdb_host in
|
|
|
|
windows) ;;
|
|
|
|
*)
|
|
|
|
configdirs="$configdirs rdi-share"
|
|
|
|
CONFIG_OBS="$CONFIG_OBS remote-rdi.o rdi-share/libangsd.a"
|
|
|
|
;;
|
|
|
|
esac
|
|
|
|
;;
|
1996-10-18 09:27:59 +08:00
|
|
|
|
|
|
|
c1-*-*) gdb_target=convex ;;
|
|
|
|
c2-*-*) gdb_target=convex ;;
|
|
|
|
|
|
|
|
d10v-*-*) gdb_target=d10v ;;
|
1997-09-25 09:26:36 +08:00
|
|
|
d30v-*-*) gdb_target=d30v ;;
|
1996-10-18 09:27:59 +08:00
|
|
|
|
|
|
|
h8300-*-*) gdb_target=h8300 ;;
|
|
|
|
h8500-*-*) gdb_target=h8500 ;;
|
|
|
|
|
|
|
|
sh-*-*) gdb_target=sh ;;
|
|
|
|
|
|
|
|
hppa*-*-bsd*) gdb_target=hppabsd ;;
|
|
|
|
hppa*-*-pro*) gdb_target=hppapro ;;
|
|
|
|
hppa*-*-hpux*) gdb_target=hppahpux ;;
|
|
|
|
hppa*-*-hiux*) gdb_target=hppahpux ;;
|
|
|
|
hppa*-*-osf*) gdb_target=hppaosf ;;
|
|
|
|
|
|
|
|
i[3456]86-sequent-bsd*) gdb_target=symmetry ;;
|
|
|
|
i[3456]86-sequent-sysv4*) gdb_target=ptx4 ;;
|
|
|
|
i[3456]86-sequent-sysv*) gdb_target=ptx ;;
|
|
|
|
i[3456]86-ncr-*) gdb_target=ncr3000 ;;
|
|
|
|
i[3456]86-*-aout*) gdb_target=i386aout ;;
|
|
|
|
i[3456]86-*-coff*) gdb_target=i386v ;;
|
|
|
|
i[3456]86-*-elf*) gdb_target=i386v ;;
|
|
|
|
i[3456]86-*-aix*) gdb_target=i386aix ;;
|
|
|
|
i[3456]86-*-bsd*) gdb_target=i386bsd ;;
|
|
|
|
i[3456]86-*-freebsd*) gdb_target=fbsd ;;
|
|
|
|
i[3456]86-*-netbsd*) gdb_target=nbsd ;;
|
|
|
|
i[3456]86-*-os9k) gdb_target=i386os9k ;;
|
|
|
|
i[3456]86-*-go32*) gdb_target=i386aout ;;
|
|
|
|
i[3456]86-*-lynxos*) gdb_target=i386lynx
|
|
|
|
configdirs="${configdirs} gdbserver" ;;
|
|
|
|
i[3456]86-*-solaris*) gdb_target=i386sol2 ;;
|
|
|
|
i[3456]86-*-sunos*) gdb_target=sun386 ;;
|
1997-03-20 08:41:50 +08:00
|
|
|
i[3456]86-*-sysv4.2MP) gdb_target=i386v42mp ;;
|
1996-10-18 09:27:59 +08:00
|
|
|
i[3456]86-*-sysv4*) gdb_target=i386v4 ;;
|
1997-03-20 08:41:50 +08:00
|
|
|
i[3456]86-*-unixware2*) gdb_target=i386v42mp ;;
|
|
|
|
i[3456]86-*-unixware*) gdb_target=i386v4 ;;
|
1996-10-18 09:27:59 +08:00
|
|
|
i[3456]86-*-sco*) gdb_target=i386v ;;
|
|
|
|
i[3456]86-*-sysv*) gdb_target=i386v ;;
|
|
|
|
i[3456]86-*-linux*) gdb_target=linux
|
|
|
|
configdirs="${configdirs} gdbserver" ;;
|
1996-10-25 02:51:46 +08:00
|
|
|
i[3456]86-pc-linux-gnu) gdb_target=linux
|
|
|
|
configdirs="${configdirs} gdbserver" ;;
|
1996-10-18 09:27:59 +08:00
|
|
|
i[3456]86-*-isc*) gdb_target=i386v ;;
|
|
|
|
i[3456]86-*-mach3*) gdb_target=i386m3 ;;
|
|
|
|
i[3456]86-*-gnu*) gdb_target=i386gnu ;;
|
|
|
|
i[3456]86-*-netware*) gdb_target=i386nw
|
|
|
|
configdirs="${configdirs} nlm" ;;
|
|
|
|
i[3456]86-*-osf1mk*) gdb_target=i386mk ;;
|
|
|
|
i[3456]86-*-cygwin32) gdb_target=cygwin32 ;;
|
|
|
|
i960-*-bout*) gdb_target=vxworks960 ;;
|
|
|
|
i960-nindy-coff*) gdb_target=nindy960 ;;
|
|
|
|
i960-*-coff*) gdb_target=mon960 ;;
|
|
|
|
i960-nindy-elf*) gdb_target=nindy960 ;;
|
|
|
|
i960-*-elf*) gdb_target=mon960 ;;
|
|
|
|
|
|
|
|
i960-*-nindy*) gdb_target=nindy960 ;;
|
|
|
|
i960-*-vxworks*) gdb_target=vxworks960 ;;
|
|
|
|
|
1996-11-01 08:41:21 +08:00
|
|
|
m32r-*-elf*) gdb_target=m32r ;;
|
|
|
|
|
1996-10-18 09:27:59 +08:00
|
|
|
m68000-*-sunos3*) gdb_target=sun2os3 ;;
|
|
|
|
m68000-*-sunos4*) gdb_target=sun2os4 ;;
|
|
|
|
|
|
|
|
m68*-apollo*-bsd*) gdb_target=apollo68b ;;
|
|
|
|
m68*-bull-sysv*) gdb_target=dpx2 ;;
|
|
|
|
m68*-hp-bsd*) gdb_target=hp300bsd ;;
|
|
|
|
m68*-hp-hpux*) gdb_target=hp300hpux ;;
|
|
|
|
m68*-altos-*) gdb_target=altos ;;
|
|
|
|
m68*-att-*) gdb_target=3b1 ;;
|
|
|
|
m68*-cisco*-*) gdb_target=cisco ;;
|
|
|
|
m68*-ericsson-*) gdb_target=es1800 ;;
|
|
|
|
m68*-isi-*) gdb_target=isi ;;
|
|
|
|
m68*-motorola-*) gdb_target=delta68 ;;
|
|
|
|
m68*-netx-*) gdb_target=vxworks68 ;;
|
|
|
|
m68*-sony-*) gdb_target=news ;;
|
|
|
|
m68*-tandem-*) gdb_target=st2000 ;;
|
|
|
|
m68*-rom68k-*) gdb_target=monitor ;;
|
|
|
|
m68*-*bug-*) gdb_target=monitor ;;
|
|
|
|
m68*-monitor-*) gdb_target=monitor ;;
|
|
|
|
m68*-est-*) gdb_target=monitor ;;
|
|
|
|
m68*-*-aout*) gdb_target=monitor ;;
|
|
|
|
m68*-*-coff*) gdb_target=monitor ;;
|
|
|
|
m68*-*-elf*) gdb_target=monitor ;;
|
|
|
|
m68*-*-lynxos*) gdb_target=m68klynx
|
|
|
|
configdirs="${configdirs} gdbserver" ;;
|
|
|
|
m68*-*-netbsd*) gdb_target=nbsd ;;
|
|
|
|
m68*-*-os68k*) gdb_target=os68k ;;
|
|
|
|
m68*-*-sunos3*) gdb_target=sun3os3 ;;
|
|
|
|
m68*-*-sunos4*) gdb_target=sun3os4 ;;
|
|
|
|
m68*-*-sysv4*) gdb_target=m68kv4 ;;
|
|
|
|
m68*-*-vxworks*) gdb_target=vxworks68 ;;
|
|
|
|
|
|
|
|
m88*-harris-cxux*) gdb_target=cxux ;;
|
|
|
|
m88*-motorola-sysv4*) gdb_target=delta88v4 ;;
|
|
|
|
m88*-motorola-*) gdb_target=delta88 ;;
|
|
|
|
m88*-*-*) gdb_target=m88k ;;
|
|
|
|
|
|
|
|
mips64*-big-*) gdb_target=bigmips64 ;;
|
|
|
|
mips*-big-*) gdb_target=bigmips ;;
|
|
|
|
mips*-dec-mach3*) gdb_target=mach3 ;;
|
|
|
|
mips*-dec-*) gdb_target=decstation ;;
|
|
|
|
mips64*el-*-ecoff*) gdb_target=embedl64 ;;
|
|
|
|
mips64*-*-ecoff*) gdb_target=embed64 ;;
|
1998-03-04 00:16:57 +08:00
|
|
|
# start-sanitize-vr4320
|
|
|
|
mips64*vr4320*el-*-elf*)gdb_target=vr4300el ;;
|
1998-04-15 07:09:06 +08:00
|
|
|
mips64*vr4320*-*-elf*) gdb_target=vr4320 ;;
|
1998-03-04 00:16:57 +08:00
|
|
|
# end-sanitize-vr4320
|
1996-10-18 09:27:59 +08:00
|
|
|
mips64*vr4300*el-*-elf*) gdb_target=vr4300el ;;
|
|
|
|
mips64*vr4300*-*-elf*) gdb_target=vr4300 ;;
|
|
|
|
mips64*vr4100*el-*-elf*) gdb_target=vr4300el ;;
|
1998-03-04 08:28:41 +08:00
|
|
|
mips64*vr4100*-*-elf*) gdb_target=vr4xxx ;;
|
1996-10-28 12:24:30 +08:00
|
|
|
mips64*vr5000*el-*-elf*) gdb_target=vr5000el ;;
|
1997-08-09 12:49:48 +08:00
|
|
|
mips64*vr5000*-*-elf*) gdb_target=vr5000
|
|
|
|
configdirs="${configdirs} gdbserver" ;;
|
1998-08-12 18:50:35 +08:00
|
|
|
# start-sanitize-cygnus
|
1997-11-24 14:31:05 +08:00
|
|
|
mips64*vr5400*el-*-elf*) gdb_target=vr5000el ;;
|
|
|
|
mips64*vr5400*-*-elf*) gdb_target=vr5000
|
|
|
|
configdirs="${configdirs} gdbserver" ;;
|
1998-08-12 18:50:35 +08:00
|
|
|
# end-sanitize-cygnus
|
1998-02-07 06:39:18 +08:00
|
|
|
# start-sanitize-sky
|
|
|
|
mips64*r5900*-sky-elf*) gdb_target=txvu ;;
|
|
|
|
# end-sanitize-sky
|
1997-02-11 21:26:34 +08:00
|
|
|
# start-sanitize-r5900
|
1997-09-27 02:53:22 +08:00
|
|
|
mips64*r5900*-*-elf*) gdb_target=r5900 ;;
|
1997-02-11 21:26:34 +08:00
|
|
|
# end-sanitize-r5900
|
1997-09-16 05:06:16 +08:00
|
|
|
# start-sanitize-tx19
|
|
|
|
mips-tx19*el-* | mips*tx19*el-*-*)
|
1997-12-17 04:10:36 +08:00
|
|
|
gdb_target=tx19l ;;
|
1997-09-16 05:06:16 +08:00
|
|
|
mips-tx19*-* | mips*tx19*-*-*)
|
|
|
|
gdb_target=tx19 ;;
|
|
|
|
# end-sanitize-tx19
|
1997-12-17 04:10:36 +08:00
|
|
|
mips*tx39*el*-elf*) gdb_target=tx39l ;;
|
1997-06-14 04:53:34 +08:00
|
|
|
mips*tx39*-elf*) gdb_target=tx39 ;;
|
1997-12-15 20:38:05 +08:00
|
|
|
# start-sanitize-tx49
|
|
|
|
mips64*tx49*el-*-elf*) gdb_target=tx49el ;;
|
|
|
|
mips64*tx49*-*-elf*) gdb_target=tx49 ;;
|
|
|
|
# end-sanitize-tx49
|
1996-10-18 09:27:59 +08:00
|
|
|
mips64*el-*-elf*) gdb_target=embedl64 ;;
|
|
|
|
mips64*-*-elf*) gdb_target=embed64 ;;
|
|
|
|
mips*el-*-ecoff*) gdb_target=embedl ;;
|
|
|
|
mips*-*-ecoff*) gdb_target=embed ;;
|
|
|
|
mips*el-*-elf*) gdb_target=embedl ;;
|
|
|
|
mips*-*-elf*) gdb_target=embed ;;
|
|
|
|
mips*-little-*) gdb_target=littlemips ;;
|
1997-02-26 12:23:45 +08:00
|
|
|
mips*-*-lnews*) gdb_target=embedl ;;
|
1996-10-18 09:27:59 +08:00
|
|
|
mips*-sgi-irix5*) gdb_target=irix5 ;;
|
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 16:33:39 +08:00
|
|
|
mips*-sgi-irix6*) gdb_target=irix5 ;;
|
1996-10-18 09:27:59 +08:00
|
|
|
mips*-sgi-*) gdb_target=irix3 ;;
|
|
|
|
mips*-sony-*) gdb_target=bigmips ;;
|
1998-01-21 11:01:47 +08:00
|
|
|
mips*-*-mach3*) gdb_target=mipsm3 ;;
|
1996-10-18 09:27:59 +08:00
|
|
|
mips*-*-sysv4*) gdb_target=mipsv4 ;;
|
|
|
|
mips*-*-sysv*) gdb_target=bigmips ;;
|
|
|
|
mips*-*-riscos*) gdb_target=bigmips ;;
|
|
|
|
mips*-*-vxworks*) gdb_target=vxmips ;;
|
|
|
|
|
1997-01-22 18:38:01 +08:00
|
|
|
mn10200-*-*) gdb_target=mn10200 ;;
|
1996-12-01 16:46:59 +08:00
|
|
|
mn10300-*-*) gdb_target=mn10300 ;;
|
|
|
|
|
1996-10-18 09:27:59 +08:00
|
|
|
none-*-*) gdb_target=none ;;
|
|
|
|
|
|
|
|
np1-*-*) gdb_target=np1 ;;
|
|
|
|
|
1998-01-21 11:01:47 +08:00
|
|
|
ns32k-*-mach3*) gdb_target=ns32km3 ;;
|
1996-10-18 09:27:59 +08:00
|
|
|
ns32k-*-netbsd*) gdb_target=nbsd ;;
|
|
|
|
ns32k-utek-sysv*) gdb_target=merlin ;;
|
|
|
|
ns32k-utek-*) gdb_target=umax ;;
|
|
|
|
|
|
|
|
pn-*-*) gdb_target=pn ;;
|
|
|
|
powerpc-*-macos*) gdb_target=macos ;;
|
|
|
|
powerpc-*-netware*) gdb_target=ppc-nw
|
|
|
|
configdirs="${configdirs} nlm" ;;
|
|
|
|
|
|
|
|
powerpc-*-aix*) gdb_target=aix ;;
|
|
|
|
powerpcle-*-cygwin32) gdb_target=cygwin32 ;;
|
|
|
|
powerpcle-*-solaris*) gdb_target=solaris ;;
|
|
|
|
powerpc-*-eabi* | powerpc-*-linux* | powerpc-*-sysv* | powerpc-*-elf*)
|
1997-03-22 04:56:10 +08:00
|
|
|
if test -f ../sim/ppc/Makefile; then
|
1996-10-18 09:27:59 +08:00
|
|
|
gdb_target=ppc-sim
|
|
|
|
else
|
|
|
|
gdb_target=ppc-eabi
|
|
|
|
fi ;;
|
|
|
|
powerpcle-*-eabi* | powerpcle-*-sysv* | powerpcle-*-elf*)
|
1997-03-22 04:56:10 +08:00
|
|
|
if test -f ../sim/ppc/Makefile; then
|
1996-10-18 09:27:59 +08:00
|
|
|
gdb_target=ppcle-sim
|
|
|
|
else
|
|
|
|
gdb_target=ppcle-eabi
|
|
|
|
fi ;;
|
|
|
|
|
|
|
|
pyramid-*-*) gdb_target=pyramid ;;
|
|
|
|
|
|
|
|
rs6000-*-lynxos*) gdb_target=rs6000lynx ;;
|
|
|
|
rs6000-*-aix4*) gdb_target=aix4 ;;
|
|
|
|
rs6000-*-*) gdb_target=rs6000 ;;
|
|
|
|
|
|
|
|
sparc-*-aout*) gdb_target=sparc-em ;;
|
|
|
|
sparc-*-coff*) gdb_target=sparc-em ;;
|
|
|
|
sparc-*-elf*) gdb_target=sparc-em ;;
|
1998-03-03 07:17:31 +08:00
|
|
|
sparc-*-linux*) gdb_target=linux ;;
|
1996-10-18 09:27:59 +08:00
|
|
|
sparc-*-lynxos*) gdb_target=sparclynx
|
|
|
|
configdirs="${configdirs} gdbserver" ;;
|
|
|
|
sparc-*-netbsd*) gdb_target=nbsd ;;
|
|
|
|
sparc-*-solaris2*) gdb_target=sun4sol2 ;;
|
|
|
|
sparc-*-sunos4*) gdb_target=sun4os4 ;;
|
|
|
|
sparc-*-sunos5*) gdb_target=sun4sol2 ;;
|
|
|
|
sparc-*-vxworks*) gdb_target=vxsparc ;;
|
|
|
|
sparc-*-*) gdb_target=sun4os4 ;;
|
|
|
|
sparclet-*-*) gdb_target=sparclet;;
|
1998-04-19 06:45:37 +08:00
|
|
|
sparclite-*-*) gdb_target=sparclite ;;
|
|
|
|
sparc86x-*-*) gdb_target=sparclite ;;
|
1996-10-18 09:27:59 +08:00
|
|
|
# It's not clear what the right solution for "v8plus" systems is yet.
|
|
|
|
# For now, stick with sparc-sun-solaris2 since that's what config.guess
|
|
|
|
# should return. Work is still needed to get gdb to print the 64 bit
|
|
|
|
# regs (some of which are usable in v8plus) so sp64sol.mt hasn't been
|
|
|
|
# deleted though presumably it should be eventually.
|
|
|
|
#sparc64-*-solaris2*) gdb_target=sp64sol2 ;;
|
|
|
|
sparc64-*-*) gdb_target=sp64 ;;
|
|
|
|
|
|
|
|
tahoe-*-*) gdb_target=tahoe ;;
|
|
|
|
|
1997-03-23 07:52:04 +08:00
|
|
|
# start-sanitize-tic80
|
1997-08-09 12:49:48 +08:00
|
|
|
tic80-*-*) gdb_target=tic80
|
|
|
|
configdirs="${configdirs} gdbserver" ;;
|
1997-03-23 07:52:04 +08:00
|
|
|
# end-sanitize-tic80
|
|
|
|
|
1996-10-18 09:27:59 +08:00
|
|
|
vax-*-*) gdb_target=vax ;;
|
|
|
|
|
1997-01-04 08:25:53 +08:00
|
|
|
v850-*-*) gdb_target=v850
|
|
|
|
case $gdb_host in
|
|
|
|
windows)
|
|
|
|
CONFIG_OBS="${CONFIG_OBS} v850ice.o"
|
1997-09-27 01:37:34 +08:00
|
|
|
LIBS="${LIBS} necmsg.lib" ;;
|
1998-07-16 02:52:50 +08:00
|
|
|
cygwin32)
|
|
|
|
CONFIG_OBS="${CONFIG_OBS} v850ice.o" ;;
|
1997-01-04 08:25:53 +08:00
|
|
|
esac
|
|
|
|
;;
|
1997-08-19 02:12:54 +08:00
|
|
|
# start-sanitize-v850e
|
|
|
|
v850e-*-*) gdb_target=v850
|
|
|
|
gdb_target_cpu=v850
|
|
|
|
case $gdb_host in
|
|
|
|
windows)
|
|
|
|
CONFIG_OBS="${CONFIG_OBS} v850ice.o"
|
|
|
|
LIBS="${LIBS} v850.lib" ;;
|
1998-07-16 02:52:50 +08:00
|
|
|
cygwin32)
|
|
|
|
CONFIG_OBS="${CONFIG_OBS} v850ice.o" ;;
|
1997-08-19 02:12:54 +08:00
|
|
|
esac
|
|
|
|
;;
|
1997-12-13 03:05:07 +08:00
|
|
|
v850ea-*-*) gdb_target=v850
|
1997-08-19 02:12:54 +08:00
|
|
|
gdb_target_cpu=v850
|
|
|
|
case $gdb_host in
|
|
|
|
windows)
|
|
|
|
CONFIG_OBS="${CONFIG_OBS} v850ice.o"
|
|
|
|
LIBS="${LIBS} v850.lib" ;;
|
1998-07-16 02:52:50 +08:00
|
|
|
cygwin32)
|
|
|
|
CONFIG_OBS="${CONFIG_OBS} v850ice.o" ;;
|
1997-08-19 02:12:54 +08:00
|
|
|
esac
|
|
|
|
;;
|
1997-09-21 09:19:51 +08:00
|
|
|
# end-sanitize-v850e
|
1996-10-18 09:27:59 +08:00
|
|
|
w65-*-*) gdb_target=w65 ;;
|
|
|
|
|
|
|
|
z8k-*-coff*) gdb_target=z8k ;;
|
|
|
|
|
|
|
|
esac
|