source: mainline/uspace/lib/c/arch/riscv64/include/libarch/fibril_context.ag@ cf13b17

lfn serial ticket/834-toolchain-update topic/msim-upgrade topic/simplify-dev-export
Last change on this file since cf13b17 was 8d2dd7f2, checked in by Jakub Jermar <jakub@…>, 8 years ago

Reduce the number of files that include <sys/types.h>

  • Property mode set to 100644
File size: 5.5 KB
Line 
1#
2# Copyright (c) 2016 Martin Decky
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{
30 name : context,
31
32 includes : [
33 {
34 include : <stddef.h>
35 },
36 {
37 include : <stdint.h>
38 }
39 ],
40
41 members : [
42 #
43 # There is a room for optimization (we can store just those
44 # registers that must be preserved during ABI function call).
45 #
46
47 {
48 name : sp,
49 type : uint64_t
50 },
51 {
52 name : pc,
53 type : uint64_t
54 },
55
56 {
57 name : zero,
58 type : uint64_t
59 },
60 {
61 name : ra,
62 type : uint64_t
63 },
64
65 {
66 name : x3,
67 type : uint64_t
68 },
69 {
70 name : x4,
71 type : uint64_t
72 },
73 {
74 name : x5,
75 type : uint64_t
76 },
77 {
78 name : x6,
79 type : uint64_t
80 },
81 {
82 name : x7,
83 type : uint64_t
84 },
85 {
86 name : x8,
87 type : uint64_t
88 },
89 {
90 name : x9,
91 type : uint64_t
92 },
93 {
94 name : x10,
95 type : uint64_t
96 },
97 {
98 name : x11,
99 type : uint64_t
100 },
101 {
102 name : x12,
103 type : uint64_t
104 },
105 {
106 name : x13,
107 type : uint64_t
108 },
109 {
110 name : x14,
111 type : uint64_t
112 },
113 {
114 name : x15,
115 type : uint64_t
116 },
117 {
118 name : x16,
119 type : uint64_t
120 },
121 {
122 name : x17,
123 type : uint64_t
124 },
125 {
126 name : x18,
127 type : uint64_t
128 },
129 {
130 name : x19,
131 type : uint64_t
132 },
133 {
134 name : x20,
135 type : uint64_t
136 },
137 {
138 name : x21,
139 type : uint64_t
140 },
141 {
142 name : x22,
143 type : uint64_t
144 },
145 {
146 name : x23,
147 type : uint64_t
148 },
149 {
150 name : x24,
151 type : uint64_t
152 },
153 {
154 name : x25,
155 type : uint64_t
156 },
157 {
158 name : x26,
159 type : uint64_t
160 },
161 {
162 name : x27,
163 type : uint64_t
164 },
165 {
166 name : x28,
167 type : uint64_t
168 },
169 {
170 name : x29,
171 type : uint64_t
172 },
173 {
174 name : x30,
175 type : uint64_t
176 },
177 {
178 name : x31,
179 type : uint64_t
180 }
181 ]
182}
Note: See TracBrowser for help on using the repository browser.