OLD | NEW |
1 /* Target-dependent code for GNU/Linux SPARC. | 1 /* Target-dependent code for GNU/Linux SPARC. |
2 | 2 |
3 Copyright (C) 2003-2005, 2007-2012 Free Software Foundation, Inc. | 3 Copyright (C) 2003-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 69 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
83 SIGTRAMP_FRAME, | 83 SIGTRAMP_FRAME, |
84 4, | 84 4, |
85 { | 85 { |
86 { 0x82102065, -1 }, /* mov __NR_rt_sigreturn, %g1 */ | 86 { 0x82102065, -1 }, /* mov __NR_rt_sigreturn, %g1 */ |
87 { 0x91d02010, -1 }, /* ta 0x10 */ | 87 { 0x91d02010, -1 }, /* ta 0x10 */ |
88 { TRAMP_SENTINEL_INSN, -1 } | 88 { TRAMP_SENTINEL_INSN, -1 } |
89 }, | 89 }, |
90 sparc32_linux_sigframe_init | 90 sparc32_linux_sigframe_init |
91 }; | 91 }; |
92 | 92 |
| 93 /* This enum represents the signals' numbers on the SPARC |
| 94 architecture. It just contains the signal definitions which are |
| 95 different from the generic implementation. |
| 96 |
| 97 It is derived from the file <arch/sparc/include/uapi/asm/signal.h>, |
| 98 from the Linux kernel tree. */ |
| 99 |
| 100 enum |
| 101 { |
| 102 SPARC_LINUX_SIGEMT = 7, |
| 103 SPARC_LINUX_SIGBUS = 10, |
| 104 SPARC_LINUX_SIGSYS = 12, |
| 105 SPARC_LINUX_SIGURG = 16, |
| 106 SPARC_LINUX_SIGSTOP = 17, |
| 107 SPARC_LINUX_SIGTSTP = 18, |
| 108 SPARC_LINUX_SIGCONT = 19, |
| 109 SPARC_LINUX_SIGCHLD = 20, |
| 110 SPARC_LINUX_SIGIO = 23, |
| 111 SPARC_LINUX_SIGPOLL = SPARC_LINUX_SIGIO, |
| 112 SPARC_LINUX_SIGLOST = 29, |
| 113 SPARC_LINUX_SIGPWR = SPARC_LINUX_SIGLOST, |
| 114 SPARC_LINUX_SIGUSR1 = 30, |
| 115 SPARC_LINUX_SIGUSR2 = 31, |
| 116 }; |
| 117 |
93 static void | 118 static void |
94 sparc32_linux_sigframe_init (const struct tramp_frame *self, | 119 sparc32_linux_sigframe_init (const struct tramp_frame *self, |
95 struct frame_info *this_frame, | 120 struct frame_info *this_frame, |
96 struct trad_frame_cache *this_cache, | 121 struct trad_frame_cache *this_cache, |
97 CORE_ADDR func) | 122 CORE_ADDR func) |
98 { | 123 { |
99 CORE_ADDR base, addr, sp_addr; | 124 CORE_ADDR base, addr, sp_addr; |
100 int regnum; | 125 int regnum; |
101 | 126 |
102 base = get_frame_register_unsigned (this_frame, SPARC_O1_REGNUM); | 127 base = get_frame_register_unsigned (this_frame, SPARC_O1_REGNUM); |
(...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
200 } | 225 } |
201 | 226 |
202 static void | 227 static void |
203 sparc32_linux_collect_core_gregset (const struct regset *regset, | 228 sparc32_linux_collect_core_gregset (const struct regset *regset, |
204 const struct regcache *regcache, | 229 const struct regcache *regcache, |
205 int regnum, void *gregs, size_t len) | 230 int regnum, void *gregs, size_t len) |
206 { | 231 { |
207 sparc32_collect_gregset (&sparc32_linux_core_gregset, | 232 sparc32_collect_gregset (&sparc32_linux_core_gregset, |
208 regcache, regnum, gregs); | 233 regcache, regnum, gregs); |
209 } | 234 } |
error: old chunk mismatch |
None
OLD | NEW |