Home My Page Projects Code Snippets Project Openings SML/NJ
Summary Activity Forums Tracker Lists Tasks Docs Surveys News SCM Files

SCM Repository

[smlnj] Annotation of /sml/trunk/src/runtime/mach-dep/mklinux-regs.h
ViewVC logotype

Annotation of /sml/trunk/src/runtime/mach-dep/mklinux-regs.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2 - (view) (download) (as text)

1 : monnier 2 /* mklinux-regs.h
2 :     *
3 :     * COPYRIGHT (c) 1997 Bell Labs, Lucent Technologies.
4 :     *
5 :     * This defines the layout of the machine registers as they are
6 :     * passed to a signal handler in MkLinux on the PowerPC. It was
7 :     * reverse engineered from the files:
8 :     *
9 :     * mklinux/src/arch/osfmach3_ppc/kernel/signal.c
10 :     * mklinux/src/include/asm-ppc/ptrace.h
11 :     *
12 :     * in the MkLinux sources (DR2.1 update 4).
13 :     *
14 :     * A MkLinux signal handler has the prototype
15 :     *
16 :     * void handler (int signr, struct mklinux_ppc_regs *rp);
17 :     */
18 :    
19 :     #ifndef _MKLINUX_REGS_H_
20 :     #define _MKLINUX_REGS_H_
21 :    
22 :     #include <asm/ptrace.h>
23 :    
24 :     struct mklinux_ppc_regs {
25 :     unsigned long gpr[32];
26 :     unsigned long nip; /* aka PC */
27 :     unsigned long msr;
28 :     unsigned long orig_r3;
29 :     unsigned long ctr;
30 :     unsigned long lnk;
31 :     unsigned long xer;
32 :     unsigned long ccr;
33 :     unsigned long mq;
34 :     unsigned long trap;
35 :     unsigned long dar;
36 :     unsigned long dsisr;
37 :     unsigned long result;
38 :     unsigned long pad1[4]; /* pad to 48 words */
39 :     double fpr[32];
40 :     unsigned long pad2;
41 :     unsigned long fpscr;
42 :     };
43 :    
44 :     #endif /* !_MKLINUX_REGS_H_ */
45 :    

root@smlnj-gforge.cs.uchicago.edu
ViewVC Help
Powered by ViewVC 1.0.0