diff options
author | Mark Kettenis <kettenis@gnu.org> | 2002-06-15 18:49:52 +0000 |
---|---|---|
committer | Mark Kettenis <kettenis@gnu.org> | 2002-06-15 18:49:52 +0000 |
commit | 6e157172af6003a98be673ce19ea9d5386bd184b (patch) | |
tree | adb9ee7559f16a01aa2edca7a7d9a1d66d966538 /gdb/i386-sol2-tdep.c | |
parent | 7f19b9a2d27295b92e12c1767a56afd54857be5f (diff) | |
download | gdb-6e157172af6003a98be673ce19ea9d5386bd184b.zip gdb-6e157172af6003a98be673ce19ea9d5386bd184b.tar.gz gdb-6e157172af6003a98be673ce19ea9d5386bd184b.tar.bz2 |
* i386-sol2-tdep.c (i386_sol2_osabi_sniffer): New function.
(_initialize_i386_sol2_tdep): Register i386_sol2_osabi_sniffer.
Diffstat (limited to 'gdb/i386-sol2-tdep.c')
-rw-r--r-- | gdb/i386-sol2-tdep.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/gdb/i386-sol2-tdep.c b/gdb/i386-sol2-tdep.c index 714f5db..206e85c 100644 --- a/gdb/i386-sol2-tdep.c +++ b/gdb/i386-sol2-tdep.c @@ -48,12 +48,27 @@ i386_sol2_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch) } +static enum gdb_osabi +i386_sol2_osabi_sniffer (bfd *abfd) +{ + /* If we have a section named .SUNW_version, then it is almost + certainly Solaris 2. */ + if (bfd_get_section_by_name (abfd, ".SUNW_version")) + return GDB_OSABI_SOLARIS; + + return GDB_OSABI_UNKNOWN; +} + /* Provide a prototype to silence -Wmissing-prototypes. */ void _initialize_i386_sol2_tdep (void); void _initialize_i386_sol2_tdep (void) { + /* Register and ELF OS ABI sniffer for Solaris 2 binaries. */ + gdbarch_register_osabi_sniffer (bfd_arch_i386, bfd_target_elf_flavour, + i386_sol2_osabi_sniffer); + gdbarch_register_osabi (bfd_arch_i386, GDB_OSABI_SOLARIS, i386_sol2_init_abi); } |