10 |
|
* tjw@omnigroup.com Sun, 4 Jun 2000 |
11 |
|
* www.omnigroup.com/mailman/archive/macosx-dev/2000-June/002030.html |
12 |
|
* |
13 |
< |
* Basilisk II (C) 1997-2002 Christian Bauer |
13 |
> |
* Basilisk II (C) 1997-2004 Christian Bauer |
14 |
|
* |
15 |
|
* This program is free software; you can redistribute it and/or modify |
16 |
|
* it under the terms of the GNU General Public License as published by |
281 |
|
#undef SIGSEGV_FAULT_ADDRESS |
282 |
|
#define SIGSEGV_FAULT_ADDRESS sip->si_ptr |
283 |
|
#endif |
284 |
+ |
#if (defined(arm) || defined(__arm__)) |
285 |
+ |
#include <asm/ucontext.h> /* use kernel structure, glibc may not be in sync */ |
286 |
+ |
#define SIGSEGV_CONTEXT_REGS (((struct ucontext *)scp)->uc_mcontext) |
287 |
+ |
#define SIGSEGV_FAULT_INSTRUCTION (SIGSEGV_CONTEXT_REGS.arm_pc) |
288 |
+ |
#endif |
289 |
|
#endif |
290 |
|
#endif |
291 |
|
|
325 |
|
#define SIGSEGV_FAULT_ADDRESS get_fault_address(scp) |
326 |
|
#define SIGSEGV_FAULT_INSTRUCTION scp->sc_pc |
327 |
|
#endif |
328 |
+ |
#if (defined(arm) || defined(__arm__)) |
329 |
+ |
#define SIGSEGV_FAULT_HANDLER_ARGLIST int sig, int r1, int r2, int r3, struct sigcontext sc |
330 |
+ |
#define SIGSEGV_FAULT_HANDLER_ARGLIST_1 struct sigcontext *scp |
331 |
+ |
#define SIGSEGV_FAULT_HANDLER_ARGS &sc |
332 |
+ |
#define SIGSEGV_FAULT_ADDRESS scp->fault_address |
333 |
+ |
#define SIGSEGV_FAULT_INSTRUCTION scp->arm_pc |
334 |
+ |
#endif |
335 |
|
#endif |
336 |
|
|
337 |
|
// Irix 5 or 6 on MIPS |