Updated to fedora-glibc-20051020T0651
[glibc.git] / sysdeps / unix / sysv / linux / sh / sh4 / ucontext_i.h
blob88f774f0ad1b996c8ba8123e308c9f6cc352a270
1 /* Offsets and other constants needed in the *context() function
2 implementation.
3 Copyright (C) 2005 Free Software Foundation, Inc.
4 This file is part of the GNU C Library.
6 The GNU C Library is free software; you can redistribute it and/or
7 modify it under the terms of the GNU Lesser General Public
8 License as published by the Free Software Foundation; either
9 version 2.1 of the License, or (at your option) any later version.
11 The GNU C Library is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 Lesser General Public License for more details.
16 You should have received a copy of the GNU Lesser General Public
17 License along with the GNU C Library; if not, write to the Free
18 Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
19 02111-1307 USA. */
21 #define SIG_BLOCK 0
22 #define SIG_SETMASK 2
24 /* Offsets of the fields in the ucontext_t structure. */
25 #define oLINK 4
26 #define oSS_SP 8
27 #define oSS_SIZE 16
28 #define oR0 24
29 #define oR1 28
30 #define oR2 32
31 #define oR3 36
32 #define oR4 40
33 #define oR5 44
34 #define oR6 48
35 #define oR7 52
36 #define oR8 56
37 #define oR9 60
38 #define oR10 64
39 #define oR11 68
40 #define oR12 72
41 #define oR13 76
42 #define oR14 80
43 #define oR15 84
44 #define oPC 88
45 #define oPR 92
46 #define oSR 96
47 #define oGBR 100
48 #define oMACH 104
49 #define oMACL 108
50 #define oFR0 112
51 #define oFR1 116
52 #define oFR2 120
53 #define oFR3 124
54 #define oFR4 128
55 #define oFR5 132
56 #define oFR6 136
57 #define oFR7 140
58 #define oFR8 144
59 #define oFR9 148
60 #define oFR10 152
61 #define oFR11 156
62 #define oFR12 160
63 #define oFR13 164
64 #define oFR14 168
65 #define oFR15 172
66 #define oXFR0 176
67 #define oXFR1 180
68 #define oXFR2 184
69 #define oXFR3 188
70 #define oXFR4 192
71 #define oXFR5 196
72 #define oXFR6 200
73 #define oXFR7 204
74 #define oXFR8 208
75 #define oXFR9 212
76 #define oXFR10 216
77 #define oXFR11 220
78 #define oXFR12 224
79 #define oXFR13 228
80 #define oXFR14 232
81 #define oXFR15 236
82 #define oFPSCR 240
83 #define oFPUL 244
84 #define oOWNEDFP 248
85 #define oSIGMASK 252
87 /* Tests run in stdlib/tst-ucontext-off. */
88 #define TESTS \
89 TEST (uc_link, oLINK); \
90 TEST (uc_stack.ss_sp, oSS_SP); \
91 TEST (uc_stack.ss_size, oSS_SIZE); \
92 TEST (uc_mcontext.gregs[R0], oR0); \
93 TEST (uc_mcontext.gregs[R1], oR1); \
94 TEST (uc_mcontext.gregs[R2], oR2); \
95 TEST (uc_mcontext.gregs[R3], oR3); \
96 TEST (uc_mcontext.gregs[R4], oR4); \
97 TEST (uc_mcontext.gregs[R5], oR5); \
98 TEST (uc_mcontext.gregs[R6], oR6); \
99 TEST (uc_mcontext.gregs[R7], oR7); \
100 TEST (uc_mcontext.gregs[R8], oR8); \
101 TEST (uc_mcontext.gregs[R9], oR9); \
102 TEST (uc_mcontext.gregs[R10], oR10); \
103 TEST (uc_mcontext.gregs[R11], oR11); \
104 TEST (uc_mcontext.gregs[R12], oR12); \
105 TEST (uc_mcontext.gregs[R13], oR13); \
106 TEST (uc_mcontext.gregs[R14], oR14); \
107 TEST (uc_mcontext.gregs[R15], oR15); \
108 TEST (uc_mcontext.pc, oPC); \
109 TEST (uc_mcontext.pr, oPR); \
110 TEST (uc_mcontext.sr, oSR); \
111 TEST (uc_mcontext.gbr, oGBR); \
112 TEST (uc_mcontext.mach, oMACH); \
113 TEST (uc_mcontext.macl, oMACL); \
114 TEST (uc_mcontext.fpregs[0], oFR0); \
115 TEST (uc_mcontext.fpregs[1], oFR1); \
116 TEST (uc_mcontext.fpregs[2], oFR2); \
117 TEST (uc_mcontext.fpregs[3], oFR3); \
118 TEST (uc_mcontext.fpregs[4], oFR4); \
119 TEST (uc_mcontext.fpregs[5], oFR5); \
120 TEST (uc_mcontext.fpregs[6], oFR6); \
121 TEST (uc_mcontext.fpregs[7], oFR7); \
122 TEST (uc_mcontext.fpregs[8], oFR8); \
123 TEST (uc_mcontext.fpregs[9], oFR9); \
124 TEST (uc_mcontext.fpregs[10], oFR10); \
125 TEST (uc_mcontext.fpregs[11], oFR11); \
126 TEST (uc_mcontext.fpregs[12], oFR12); \
127 TEST (uc_mcontext.fpregs[13], oFR13); \
128 TEST (uc_mcontext.fpregs[14], oFR14); \
129 TEST (uc_mcontext.fpregs[15], oFR15); \
130 TEST (uc_mcontext.xfpregs[0], oXFR0); \
131 TEST (uc_mcontext.xfpregs[1], oXFR1); \
132 TEST (uc_mcontext.xfpregs[2], oXFR2); \
133 TEST (uc_mcontext.xfpregs[3], oXFR3); \
134 TEST (uc_mcontext.xfpregs[4], oXFR4); \
135 TEST (uc_mcontext.xfpregs[5], oXFR5); \
136 TEST (uc_mcontext.xfpregs[6], oXFR6); \
137 TEST (uc_mcontext.xfpregs[7], oXFR7); \
138 TEST (uc_mcontext.xfpregs[8], oXFR8); \
139 TEST (uc_mcontext.xfpregs[9], oXFR9); \
140 TEST (uc_mcontext.xfpregs[10], oXFR10); \
141 TEST (uc_mcontext.xfpregs[11], oXFR11); \
142 TEST (uc_mcontext.xfpregs[12], oXFR12); \
143 TEST (uc_mcontext.xfpregs[13], oXFR13); \
144 TEST (uc_mcontext.xfpregs[14], oXFR14); \
145 TEST (uc_mcontext.xfpregs[15], oXFR15); \
146 TEST (uc_mcontext.fpscr, oFPSCR); \
147 TEST (uc_mcontext.fpul, oFPUL); \
148 TEST (uc_mcontext.ownedfp, oOWNEDFP); \
149 TEST (uc_sigmask, oSIGMASK);