Subversion Repositories HelenOS

Rev

Rev 1949 | Rev 2089 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
1949 jermar 1
/*
2071 jermar 2
 * Copyright (c) 2005 Martin Decky
1949 jermar 3
 * All rights reserved.
4
 *
5
 * Redistribution and use in source and binary forms, with or without
6
 * modification, are permitted provided that the following conditions
7
 * are met:
8
 *
9
 * - Redistributions of source code must retain the above copyright
10
 *   notice, this list of conditions and the following disclaimer.
11
 * - Redistributions in binary form must reproduce the above copyright
12
 *   notice, this list of conditions and the following disclaimer in the
13
 *   documentation and/or other materials provided with the distribution.
14
 * - The name of the author may not be used to endorse or promote products
15
 *   derived from this software without specific prior written permission.
16
 *
17
 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
18
 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
19
 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
20
 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
21
 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
22
 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
23
 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
24
 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
25
 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
26
 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27
 */
28
 
29
#ifndef KERN_mips32_CONTEXT_OFFSET_H_
30
#define KERN_mips32_CONTEXT_OFFSET_H_
31
 
860 decky 32
#define OFFSET_SP      0x0
33
#define OFFSET_PC      0x4
34
#define OFFSET_S0      0x8
35
#define OFFSET_S1      0xc
36
#define OFFSET_S2      0x10
37
#define OFFSET_S3      0x14
38
#define OFFSET_S4      0x18
39
#define OFFSET_S5      0x1c
40
#define OFFSET_S6      0x20
41
#define OFFSET_S7      0x24
42
#define OFFSET_S8      0x28
43
#define OFFSET_GP      0x2c
457 decky 44
 
1948 jermar 45
/* struct istate */
860 decky 46
#define EOFFSET_AT     0x0
47
#define EOFFSET_V0     0x4
48
#define EOFFSET_V1     0x8
49
#define EOFFSET_A0     0xc
50
#define EOFFSET_A1     0x10
51
#define EOFFSET_A2     0x14
52
#define EOFFSET_A3     0x18
53
#define EOFFSET_T0     0x1c
54
#define EOFFSET_T1     0x20
55
#define EOFFSET_T2     0x24
56
#define EOFFSET_T3     0x28
57
#define EOFFSET_T4     0x2c
58
#define EOFFSET_T5     0x30
59
#define EOFFSET_T6     0x34
60
#define EOFFSET_T7     0x38
61
#define EOFFSET_S0     0x3c
62
#define EOFFSET_S1     0x40
63
#define EOFFSET_S2     0x44
64
#define EOFFSET_S3     0x48
65
#define EOFFSET_S4     0x4c
66
#define EOFFSET_S5     0x50
67
#define EOFFSET_S6     0x54
68
#define EOFFSET_S7     0x58
69
#define EOFFSET_T8     0x5c
70
#define EOFFSET_T9     0x60
71
#define EOFFSET_GP     0x64
72
#define EOFFSET_SP     0x68
73
#define EOFFSET_S8     0x6c
74
#define EOFFSET_RA     0x70
75
#define EOFFSET_LO     0x74
76
#define EOFFSET_HI     0x78
77
#define EOFFSET_STATUS 0x7c
78
#define EOFFSET_EPC    0x80
1102 palkovsky 79
#define EOFFSET_K1     0x84
1054 cejka 80
#define REGISTER_SPACE 136
1949 jermar 81
 
82
#endif