X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=gdb%2Fosabi.h;h=a7e6a10d01983c66d16420e557b53705b92a830b;hb=refs%2Fheads%2Fconcurrent-displaced-stepping-2020-04-01;hp=4c03790856fea85af8774416bb1482135fb9a7bf;hpb=ecd75fc8eed3bde86036141228074a20e55dcfc9;p=deliverable%2Fbinutils-gdb.git diff --git a/gdb/osabi.h b/gdb/osabi.h index 4c03790856..a7e6a10d01 100644 --- a/gdb/osabi.h +++ b/gdb/osabi.h @@ -1,5 +1,5 @@ /* OS ABI variant handling for GDB. - Copyright (C) 2001-2014 Free Software Foundation, Inc. + Copyright (C) 2001-2020 Free Software Foundation, Inc. This file is part of GDB. @@ -19,6 +19,38 @@ #ifndef OSABI_H #define OSABI_H +/* * List of known OS ABIs. If you change this, make sure to update the + table in osabi.c. */ +enum gdb_osabi +{ + GDB_OSABI_UNKNOWN = 0, /* keep this zero */ + GDB_OSABI_NONE, + + GDB_OSABI_SVR4, + GDB_OSABI_HURD, + GDB_OSABI_SOLARIS, + GDB_OSABI_LINUX, + GDB_OSABI_FREEBSD, + GDB_OSABI_NETBSD, + GDB_OSABI_OPENBSD, + GDB_OSABI_WINCE, + GDB_OSABI_GO32, + GDB_OSABI_QNXNTO, + GDB_OSABI_CYGWIN, + GDB_OSABI_WINDOWS, + GDB_OSABI_AIX, + GDB_OSABI_DICOS, + GDB_OSABI_DARWIN, + GDB_OSABI_SYMBIAN, + GDB_OSABI_OPENVMS, + GDB_OSABI_LYNXOS178, + GDB_OSABI_NEWLIB, + GDB_OSABI_SDE, + GDB_OSABI_PIKEOS, + + GDB_OSABI_INVALID /* keep this last */ +}; + /* Register an OS ABI sniffer. Each arch/flavour may have more than one sniffer. This is used to e.g. differentiate one OS's a.out from another. The first sniffer to return something other than @@ -49,6 +81,10 @@ void gdbarch_init_osabi (struct gdbarch_info, struct gdbarch *); /* Return the name of the specified OS ABI. */ const char *gdbarch_osabi_name (enum gdb_osabi); +/* Return a regular expression that matches the OS part of a GNU + configury triplet for the given OSABI. */ +const char *osabi_triplet_regexp (enum gdb_osabi osabi); + /* Helper routine for ELF file sniffers. This looks at ABI tag note sections to determine the OS ABI from the note. It should be called via bfd_map_over_sections. */