OLD | NEW |
1 /* ARM Symbian OS target support. | 1 /* ARM Symbian OS target support. |
2 | 2 |
3 Copyright (C) 2008-2012 Free Software Foundation, Inc. | 3 Copyright (C) 2008-2013 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. |
11 | 11 |
12 This program is distributed in the hope that it will be useful, | 12 This program is distributed in the hope that it will be useful, |
13 but WITHOUT ANY WARRANTY; without even the implied warranty of | 13 but WITHOUT ANY WARRANTY; without even the implied warranty of |
(...skipping 17 matching lines...) Expand all Loading... |
31 | 31 |
32 static CORE_ADDR | 32 static CORE_ADDR |
33 arm_symbian_skip_trampoline_code (struct frame_info *frame, CORE_ADDR pc) | 33 arm_symbian_skip_trampoline_code (struct frame_info *frame, CORE_ADDR pc) |
34 { | 34 { |
35 struct gdbarch *gdbarch; | 35 struct gdbarch *gdbarch; |
36 enum bfd_endian byte_order; | 36 enum bfd_endian byte_order; |
37 ULONGEST insn; | 37 ULONGEST insn; |
38 CORE_ADDR dest; | 38 CORE_ADDR dest; |
39 gdb_byte buf[4]; | 39 gdb_byte buf[4]; |
40 | 40 |
41 if (!in_plt_section (pc, NULL)) | 41 if (!in_plt_section (pc)) |
42 return 0; | 42 return 0; |
43 | 43 |
44 if (target_read_memory (pc, buf, 4) != 0) | 44 if (target_read_memory (pc, buf, 4) != 0) |
45 return 0; | 45 return 0; |
46 | 46 |
47 gdbarch = get_frame_arch (frame); | 47 gdbarch = get_frame_arch (frame); |
48 byte_order = gdbarch_byte_order (gdbarch); | 48 byte_order = gdbarch_byte_order (gdbarch); |
49 | 49 |
50 /* ldr pc, [pc, #-4]. */ | 50 /* ldr pc, [pc, #-4]. */ |
51 insn = extract_unsigned_integer (buf, 4, byte_order); | 51 insn = extract_unsigned_integer (buf, 4, byte_order); |
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
127 void | 127 void |
128 _initialize_arm_symbian_tdep (void) | 128 _initialize_arm_symbian_tdep (void) |
129 { | 129 { |
130 gdbarch_register_osabi_sniffer (bfd_arch_arm, | 130 gdbarch_register_osabi_sniffer (bfd_arch_arm, |
131 bfd_target_elf_flavour, | 131 bfd_target_elf_flavour, |
132 arm_symbian_osabi_sniffer); | 132 arm_symbian_osabi_sniffer); |
133 | 133 |
134 gdbarch_register_osabi (bfd_arch_arm, 0, GDB_OSABI_SYMBIAN, | 134 gdbarch_register_osabi (bfd_arch_arm, 0, GDB_OSABI_SYMBIAN, |
135 arm_symbian_init_abi); | 135 arm_symbian_init_abi); |
136 } | 136 } |
OLD | NEW |