GDB (xrefs)

/tmp/gdb-8.1/gdb/aarch64-newlib-tdep.c
Go to the documentation of this file.
1 /* Target-dependent code for Newlib AArch64.
2
3 Copyright (C) 2011-2018 Free Software Foundation, Inc.
4 Contributed by ARM Ltd.
5
6 This file is part of GDB.
7
8 This program is free software; you can redistribute it and/or modify
9 it under the terms of the GNU General Public License as published by
10 the Free Software Foundation; either version 3 of the License, or
11 (at your option) any later version.
12
13 This program is distributed in the hope that it will be useful,
14 but WITHOUT ANY WARRANTY; without even the implied warranty of
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 GNU General Public License for more details.
17
18 You should have received a copy of the GNU General Public License
19 along with this program. If not, see <http://www.gnu.org/licenses/>. */
20
21 #include "defs.h"
22
23 #include "gdbarch.h"
24 #include "aarch64-tdep.h"
25 #include "osabi.h"
26
27 /* Implement the 'init_osabi' method of struct gdb_osabi_handler. */
28
29 static void
30 aarch64_newlib_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
31 {
32 struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch);
33
34 /* Jump buffer - support for longjmp.
35 Offset of original PC in jump buffer (in registers). */
36 tdep->jb_pc = 11;
37 }
38
39 void
40 _initialize_aarch64_newlib_tdep (void)
41 {
42 gdbarch_register_osabi (bfd_arch_aarch64, 0, GDB_OSABI_NEWLIB,
43 aarch64_newlib_init_abi);
44 }
gdbarch
Definition: gdbarch.c:127
_initialize_aarch64_newlib_tdep
void _initialize_aarch64_newlib_tdep(void)
Definition: aarch64-newlib-tdep.c:40
gdbarch_tdep
Definition: aarch64-tdep.h:55
GDB_OSABI_NEWLIB
Definition: defs.h:531
defs.h
aarch64-tdep.h
gdbarch_tdep
struct gdbarch_tdep * gdbarch_tdep(struct gdbarch *gdbarch)
Definition: gdbarch.c:1491
osabi.h
gdbarch.h
gdbarch_tdep::jb_pc
int jb_pc
Definition: aarch64-tdep.h:62
gdbarch_register_osabi
void gdbarch_register_osabi(enum bfd_architecture arch, unsigned long machine, enum gdb_osabi osabi, void(*init_osabi)(struct gdbarch_info, struct gdbarch *))
Definition: osabi.c:143
gdbarch_info
Definition: gdbarch.h:1626
aarch64_newlib_init_abi
static void aarch64_newlib_init_abi(struct gdbarch_info info, struct gdbarch *gdbarch)
Definition: aarch64-newlib-tdep.c:30