Compare commits

...

1 Commits

Author SHA1 Message Date
Roland McGrath
0e608b2496 Recognize GNU .note.ABI-tag values 5 (syllable) and 6 (nacl)
gdb/
	* defs.h (enum gdb_osabi): Add GDB_OSABI_SYLLABLE and GDB_OSABI_NACL.
	* osabi.c (generic_elf_osabi_sniff_abi_tag_sections): Recognize
	GNU_ABI_TAG_SYLLABLE and GNU_ABI_TAG_NACL.
	* configure.tgt (*-*-nacl*): Set gdb_osabi=GDB_OSABI_NACL.
2015-05-29 09:37:11 -07:00
4 changed files with 27 additions and 9 deletions

View File

@@ -1,3 +1,10 @@
2015-05-29 Roland McGrath <mcgrathr@google.com>
* defs.h (enum gdb_osabi): Add GDB_OSABI_SYLLABLE and GDB_OSABI_NACL.
* osabi.c (generic_elf_osabi_sniff_abi_tag_sections): Recognize
GNU_ABI_TAG_SYLLABLE and GNU_ABI_TAG_NACL.
* configure.tgt (*-*-nacl*): Set gdb_osabi=GDB_OSABI_NACL.
2015-05-29 Roland McGrath <mcgrathr@google.com> 2015-05-29 Roland McGrath <mcgrathr@google.com>
PR gdb/18464 PR gdb/18464

View File

@@ -702,6 +702,7 @@ case "${targ}" in
gdb_osabi=GDB_OSABI_FREEBSD_ELF ;; gdb_osabi=GDB_OSABI_FREEBSD_ELF ;;
*-*-linux* | *-*-uclinux*) *-*-linux* | *-*-uclinux*)
gdb_osabi=GDB_OSABI_LINUX ;; gdb_osabi=GDB_OSABI_LINUX ;;
*-*-nacl*) gdb_osabi=GDB_OSABI_NACL ;;
*-*-nto*) gdb_osabi=GDB_OSABI_QNXNTO ;; *-*-nto*) gdb_osabi=GDB_OSABI_QNXNTO ;;
m68*-*-openbsd* | m88*-*-openbsd* | vax-*-openbsd*) ;; m68*-*-openbsd* | m88*-*-openbsd* | vax-*-openbsd*) ;;
*-*-openbsd*) gdb_osabi=GDB_OSABI_OPENBSD_ELF ;; *-*-openbsd*) gdb_osabi=GDB_OSABI_OPENBSD_ELF ;;

View File

@@ -93,7 +93,7 @@ enum compile_i_scope_types
/* The O_BINARY flag is defined in fcntl.h on some non-Posix platforms. /* The O_BINARY flag is defined in fcntl.h on some non-Posix platforms.
It is used as an access modifier in calls to open(), where it acts It is used as an access modifier in calls to open(), where it acts
similarly to the "b" character in fopen()'s MODE argument. On Posix similarly to the "b" character in fopen()'s MODE argument. On Posix
platforms it should be a no-op, so it is defined as 0 here. This platforms it should be a no-op, so it is defined as 0 here. This
ensures that the symbol may be used freely elsewhere in gdb. */ ensures that the symbol may be used freely elsewhere in gdb. */
#ifndef O_BINARY #ifndef O_BINARY
@@ -303,11 +303,11 @@ extern int print_address_symbolic (struct gdbarch *, CORE_ADDR,
extern int build_address_symbolic (struct gdbarch *, extern int build_address_symbolic (struct gdbarch *,
CORE_ADDR addr, CORE_ADDR addr,
int do_demangle, int do_demangle,
char **name, char **name,
int *offset, int *offset,
char **filename, char **filename,
int *line, int *line,
int *unmapped); int *unmapped);
extern void print_address (struct gdbarch *, CORE_ADDR, struct ui_file *); extern void print_address (struct gdbarch *, CORE_ADDR, struct ui_file *);
@@ -569,6 +569,8 @@ enum gdb_osabi
GDB_OSABI_LYNXOS178, GDB_OSABI_LYNXOS178,
GDB_OSABI_NEWLIB, GDB_OSABI_NEWLIB,
GDB_OSABI_SDE, GDB_OSABI_SDE,
GDB_OSABI_SYLLABLE,
GDB_OSABI_NACL,
GDB_OSABI_INVALID /* keep this last */ GDB_OSABI_INVALID /* keep this last */
}; };
@@ -651,9 +653,9 @@ extern void (*deprecated_post_add_symbol_hook) (void);
extern void (*selected_frame_level_changed_hook) (int); extern void (*selected_frame_level_changed_hook) (int);
extern int (*deprecated_ui_loop_hook) (int signo); extern int (*deprecated_ui_loop_hook) (int signo);
extern void (*deprecated_show_load_progress) (const char *section, extern void (*deprecated_show_load_progress) (const char *section,
unsigned long section_sent, unsigned long section_sent,
unsigned long section_size, unsigned long section_size,
unsigned long total_sent, unsigned long total_sent,
unsigned long total_size); unsigned long total_size);
extern void (*deprecated_print_frame_info_listing_hook) (struct symtab * s, extern void (*deprecated_print_frame_info_listing_hook) (struct symtab * s,
int line, int line,

View File

@@ -492,6 +492,14 @@ generic_elf_osabi_sniff_abi_tag_sections (bfd *abfd, asection *sect, void *obj)
*osabi = GDB_OSABI_NETBSD_ELF; *osabi = GDB_OSABI_NETBSD_ELF;
break; break;
case GNU_ABI_TAG_SYLLABLE:
*osabi = GDB_OSABI_SYLLABLE;
break;
case GNU_ABI_TAG_NACL:
*osabi = GDB_OSABI_NACL;
break;
default: default:
warning (_("GNU ABI tag value %u unrecognized."), abi_tag); warning (_("GNU ABI tag value %u unrecognized."), abi_tag);
break; break;