Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(153)

Side by Side Diff: gdb/nacl-tdep.c

Issue 11969036: Merge GDB 7.5.1 (Closed) Base URL: http://git.chromium.org/native_client/nacl-gdb.git@master
Patch Set: Created 7 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « gdb/mt-tdep.c ('k') | gdb/nbsd-tdep.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* Target-dependent code for NaCl. 1 /* Target-dependent code for NaCl.
2 2
3 Copyright (C) 2001, 2003-2012 Free Software Foundation, Inc. 3 Copyright (C) 2001, 2003-2012 Free Software Foundation, Inc.
4 4
5 This file is part of GDB. 5 This file is part of GDB.
6 6
7 This program is free software; you can redistribute it and/or modify 7 This program is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by 8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation; either version 3 of the License, or 9 the Free Software Foundation; either version 3 of the License, or
10 (at your option) any later version. 10 (at your option) any later version.
(...skipping 13 matching lines...) Expand all
24 #include "amd64-tdep.h" 24 #include "amd64-tdep.h"
25 #include "nacl-manifest.h" 25 #include "nacl-manifest.h"
26 #include "symtab.h" 26 #include "symtab.h"
27 #include "solib-svr4.h" 27 #include "solib-svr4.h"
28 #include "frame.h" 28 #include "frame.h"
29 #include "osabi.h" 29 #include "osabi.h"
30 #include "disasm.h" 30 #include "disasm.h"
31 #include "breakpoint.h" 31 #include "breakpoint.h"
32 #include "target.h" 32 #include "target.h"
33 #include "elf-bfd.h" 33 #include "elf-bfd.h"
34 #include "inferior.h"
34 35
35 static enum gdb_osabi 36 static enum gdb_osabi
36 nacl_osabi_sniffer (bfd *abfd) 37 nacl_osabi_sniffer (bfd *abfd)
37 { 38 {
38 /* WARNING! This way of checking for NaCl OS ABI is deprecated. 39 /* WARNING! This way of checking for NaCl OS ABI is deprecated.
39 See http://code.google.com/p/nativeclient/issues/detail?id=2971 */ 40 See http://code.google.com/p/nativeclient/issues/detail?id=2971 */
40 if (bfd_get_flavour (abfd) == bfd_target_elf_flavour && 41 if (bfd_get_flavour (abfd) == bfd_target_elf_flavour &&
41 elf_elfheader (abfd)->e_ident[EI_OSABI] == 123) 42 elf_elfheader (abfd)->e_ident[EI_OSABI] == 123)
42 return GDB_OSABI_NACL; 43 return GDB_OSABI_NACL;
43 44
44 return GDB_OSABI_UNKNOWN; 45 return GDB_OSABI_UNKNOWN;
45 } 46 }
46 47
47 static void 48 static void
48 nacl_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch) 49 nacl_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
49 { 50 {
50 /* NaCl uses SVR4-style shared libraries. */ 51 /* NaCl uses SVR4-style shared libraries. */
51 set_gdbarch_skip_trampoline_code (gdbarch, find_solib_trampoline_target); 52 set_gdbarch_skip_trampoline_code (gdbarch, find_solib_trampoline_target);
52 set_solib_svr4_map_so_name (gdbarch, nacl_manifest_find); 53 set_solib_svr4_map_so_name (gdbarch, nacl_manifest_find);
53 set_gdbarch_process_record (gdbarch, i386_process_record); 54 set_gdbarch_process_record (gdbarch, i386_process_record);
55 set_gdbarch_call_dummy_location(gdbarch, AT_ENTRY_POINT);
54 } 56 }
55 57
56 static void 58 static void
57 i386_nacl_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch) 59 i386_nacl_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
58 { 60 {
59 struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch); 61 struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch);
60 linux_init_abi (info, gdbarch); 62 linux_init_abi (info, gdbarch);
61 i386_elf_init_abi (info, gdbarch); 63 i386_elf_init_abi (info, gdbarch);
62 tdep->tdesc = tdesc_i386_linux; 64 tdep->tdesc = tdesc_i386_linux;
63 set_solib_svr4_fetch_link_map_offsets (gdbarch, 65 set_solib_svr4_fetch_link_map_offsets (gdbarch,
(...skipping 158 matching lines...) Expand 10 before | Expand all | Expand 10 after
222 { 224 {
223 gdbarch_register_osabi_sniffer (bfd_arch_i386, bfd_target_elf_flavour, 225 gdbarch_register_osabi_sniffer (bfd_arch_i386, bfd_target_elf_flavour,
224 nacl_osabi_sniffer); 226 nacl_osabi_sniffer);
225 227
226 gdbarch_register_osabi (bfd_arch_i386, bfd_mach_x86_64, 228 gdbarch_register_osabi (bfd_arch_i386, bfd_mach_x86_64,
227 GDB_OSABI_NACL, amd64_nacl_init_abi); 229 GDB_OSABI_NACL, amd64_nacl_init_abi);
228 230
229 gdbarch_register_osabi (bfd_arch_i386, 0, 231 gdbarch_register_osabi (bfd_arch_i386, 0,
230 GDB_OSABI_NACL, i386_nacl_init_abi); 232 GDB_OSABI_NACL, i386_nacl_init_abi);
231 } 233 }
OLDNEW
« no previous file with comments | « gdb/mt-tdep.c ('k') | gdb/nbsd-tdep.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698