Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(274)

Side by Side Diff: mojo/monacl/gen/NOT_FOR_COMMIT/libmojo.cc

Issue 385983008: Mojo + NaCl prototype. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Dead files Created 6 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 // WARNING this file was generated by generate_monacl_bindings.py
6 // Do not edit by hand.
7
8 #include <errno.h>
9
10 #include "mojo/public/c/system/core.h"
11 #include "native_client/src/public/imc_syscalls.h"
12 #include "native_client/src/public/imc_types.h"
13
14 #define NACL_MOJO_DESC 8
15
16 static void DoMojoCall(uint32_t params[], int numParams) {
17 NaClAbiNaClImcMsgIoVec iov[1] = {
18 {params, numParams}
19 };
20 NaClAbiNaClImcMsgHdr msgh = {iov, 1, NULL, 0};
21 // Note: return value unchecked. We're relying on the result parameter being
22 // unmodified - if the syscall fails, the Mojo function will return whatever
23 // the result parameter was initialized to before this function was called.
24 imc_sendmsg(NACL_MOJO_DESC, &msgh, 0);
25 }
26
27 MojoResult MojoCreateSharedBuffer(
28 const struct MojoCreateSharedBufferOptions* options,
29 uint64_t num_bytes,
30 MojoHandle* shared_buffer_handle){
31 uint32_t params[5];
32 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
33 params[0] = 0;
34 params[1] = reinterpret_cast<uint32_t>(options);
35 params[2] = reinterpret_cast<uint32_t>(&num_bytes);
36 params[3] = reinterpret_cast<uint32_t>(shared_buffer_handle);
37 params[4] = reinterpret_cast<uint32_t>(&result);
38 DoMojoCall(params, sizeof(params));
39 return result;
40 }
41
42 MojoResult MojoDuplicateBufferHandle(
43 MojoHandle buffer_handle,
44 const struct MojoDuplicateBufferHandleOptions* options,
45 MojoHandle* new_buffer_handle){
46 uint32_t params[5];
47 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
48 params[0] = 1;
49 params[1] = reinterpret_cast<uint32_t>(&buffer_handle);
50 params[2] = reinterpret_cast<uint32_t>(options);
51 params[3] = reinterpret_cast<uint32_t>(new_buffer_handle);
52 params[4] = reinterpret_cast<uint32_t>(&result);
53 DoMojoCall(params, sizeof(params));
54 return result;
55 }
56
57 MojoResult MojoMapBuffer(
58 MojoHandle buffer_handle,
59 uint64_t offset,
60 uint64_t num_bytes,
61 void** buffer,
62 MojoMapBufferFlags flags){
63 uint32_t params[7];
64 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
65 params[0] = 2;
66 params[1] = reinterpret_cast<uint32_t>(&buffer_handle);
67 params[2] = reinterpret_cast<uint32_t>(&offset);
68 params[3] = reinterpret_cast<uint32_t>(&num_bytes);
69 params[4] = reinterpret_cast<uint32_t>(buffer);
70 params[5] = reinterpret_cast<uint32_t>(&flags);
71 params[6] = reinterpret_cast<uint32_t>(&result);
72 DoMojoCall(params, sizeof(params));
73 return result;
74 }
75
76 MojoResult MojoUnmapBuffer(void* buffer){
77 uint32_t params[3];
78 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
79 params[0] = 3;
80 params[1] = reinterpret_cast<uint32_t>(&buffer);
81 params[2] = reinterpret_cast<uint32_t>(&result);
82 DoMojoCall(params, sizeof(params));
83 return result;
84 }
85
86 MojoResult MojoCreateDataPipe(
87 const struct MojoCreateDataPipeOptions* options,
88 MojoHandle* data_pipe_producer_handle,
89 MojoHandle* data_pipe_consumer_handle){
90 uint32_t params[5];
91 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
92 params[0] = 4;
93 params[1] = reinterpret_cast<uint32_t>(options);
94 params[2] = reinterpret_cast<uint32_t>(data_pipe_producer_handle);
95 params[3] = reinterpret_cast<uint32_t>(data_pipe_consumer_handle);
96 params[4] = reinterpret_cast<uint32_t>(&result);
97 DoMojoCall(params, sizeof(params));
98 return result;
99 }
100
101 MojoResult MojoWriteData(
102 MojoHandle data_pipe_producer_handle,
103 const void* elements,
104 uint32_t* num_bytes,
105 MojoWriteDataFlags flags){
106 uint32_t params[6];
107 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
108 params[0] = 5;
109 params[1] = reinterpret_cast<uint32_t>(&data_pipe_producer_handle);
110 params[2] = reinterpret_cast<uint32_t>(elements);
111 params[3] = reinterpret_cast<uint32_t>(num_bytes);
112 params[4] = reinterpret_cast<uint32_t>(&flags);
113 params[5] = reinterpret_cast<uint32_t>(&result);
114 DoMojoCall(params, sizeof(params));
115 return result;
116 }
117
118 MojoResult MojoBeginWriteData(
119 MojoHandle data_pipe_producer_handle,
120 void** buffer,
121 uint32_t* buffer_num_bytes,
122 MojoWriteDataFlags flags){
123 uint32_t params[6];
124 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
125 params[0] = 6;
126 params[1] = reinterpret_cast<uint32_t>(&data_pipe_producer_handle);
127 params[2] = reinterpret_cast<uint32_t>(buffer);
128 params[3] = reinterpret_cast<uint32_t>(buffer_num_bytes);
129 params[4] = reinterpret_cast<uint32_t>(&flags);
130 params[5] = reinterpret_cast<uint32_t>(&result);
131 DoMojoCall(params, sizeof(params));
132 return result;
133 }
134
135 MojoResult MojoEndWriteData(
136 MojoHandle data_pipe_producer_handle,
137 uint32_t num_bytes_written){
138 uint32_t params[4];
139 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
140 params[0] = 7;
141 params[1] = reinterpret_cast<uint32_t>(&data_pipe_producer_handle);
142 params[2] = reinterpret_cast<uint32_t>(&num_bytes_written);
143 params[3] = reinterpret_cast<uint32_t>(&result);
144 DoMojoCall(params, sizeof(params));
145 return result;
146 }
147
148 MojoResult MojoReadData(
149 MojoHandle data_pipe_consumer_handle,
150 void* elements,
151 uint32_t* num_bytes,
152 MojoReadDataFlags flags){
153 uint32_t params[6];
154 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
155 params[0] = 8;
156 params[1] = reinterpret_cast<uint32_t>(&data_pipe_consumer_handle);
157 params[2] = reinterpret_cast<uint32_t>(elements);
158 params[3] = reinterpret_cast<uint32_t>(num_bytes);
159 params[4] = reinterpret_cast<uint32_t>(&flags);
160 params[5] = reinterpret_cast<uint32_t>(&result);
161 DoMojoCall(params, sizeof(params));
162 return result;
163 }
164
165 MojoResult MojoBeginReadData(
166 MojoHandle data_pipe_consumer_handle,
167 const void** buffer,
168 uint32_t* buffer_num_bytes,
169 MojoReadDataFlags flags){
170 uint32_t params[6];
171 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
172 params[0] = 9;
173 params[1] = reinterpret_cast<uint32_t>(&data_pipe_consumer_handle);
174 params[2] = reinterpret_cast<uint32_t>(buffer);
175 params[3] = reinterpret_cast<uint32_t>(buffer_num_bytes);
176 params[4] = reinterpret_cast<uint32_t>(&flags);
177 params[5] = reinterpret_cast<uint32_t>(&result);
178 DoMojoCall(params, sizeof(params));
179 return result;
180 }
181
182 MojoResult MojoEndReadData(
183 MojoHandle data_pipe_consumer_handle,
184 uint32_t num_bytes_read){
185 uint32_t params[4];
186 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
187 params[0] = 10;
188 params[1] = reinterpret_cast<uint32_t>(&data_pipe_consumer_handle);
189 params[2] = reinterpret_cast<uint32_t>(&num_bytes_read);
190 params[3] = reinterpret_cast<uint32_t>(&result);
191 DoMojoCall(params, sizeof(params));
192 return result;
193 }
194
195 MojoTimeTicks MojoGetTimeTicksNow(){
196 uint32_t params[2];
197 MojoTimeTicks result = 0;
198 params[0] = 11;
199 params[1] = reinterpret_cast<uint32_t>(&result);
200 DoMojoCall(params, sizeof(params));
201 return result;
202 }
203
204 MojoResult MojoClose(MojoHandle handle){
205 uint32_t params[3];
206 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
207 params[0] = 12;
208 params[1] = reinterpret_cast<uint32_t>(&handle);
209 params[2] = reinterpret_cast<uint32_t>(&result);
210 DoMojoCall(params, sizeof(params));
211 return result;
212 }
213
214 MojoResult MojoWait(
215 MojoHandle handle,
216 MojoHandleSignals signals,
217 MojoDeadline deadline){
218 uint32_t params[5];
219 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
220 params[0] = 13;
221 params[1] = reinterpret_cast<uint32_t>(&handle);
222 params[2] = reinterpret_cast<uint32_t>(&signals);
223 params[3] = reinterpret_cast<uint32_t>(&deadline);
224 params[4] = reinterpret_cast<uint32_t>(&result);
225 DoMojoCall(params, sizeof(params));
226 return result;
227 }
228
229 MojoResult MojoWaitMany(
230 const MojoHandle* handles,
231 const MojoHandleSignals* signals,
232 uint32_t num_handles,
233 MojoDeadline deadline){
234 uint32_t params[6];
235 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
236 params[0] = 14;
237 params[1] = reinterpret_cast<uint32_t>(handles);
238 params[2] = reinterpret_cast<uint32_t>(signals);
239 params[3] = reinterpret_cast<uint32_t>(&num_handles);
240 params[4] = reinterpret_cast<uint32_t>(&deadline);
241 params[5] = reinterpret_cast<uint32_t>(&result);
242 DoMojoCall(params, sizeof(params));
243 return result;
244 }
245
246 MojoResult MojoCreateMessagePipe(
247 const struct MojoCreateMessagePipeOptions* options,
248 MojoHandle* message_pipe_handle0,
249 MojoHandle* message_pipe_handle1){
250 uint32_t params[5];
251 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
252 params[0] = 15;
253 params[1] = reinterpret_cast<uint32_t>(options);
254 params[2] = reinterpret_cast<uint32_t>(message_pipe_handle0);
255 params[3] = reinterpret_cast<uint32_t>(message_pipe_handle1);
256 params[4] = reinterpret_cast<uint32_t>(&result);
257 DoMojoCall(params, sizeof(params));
258 return result;
259 }
260
261 MojoResult MojoWriteMessage(
262 MojoHandle message_pipe_handle,
263 const void* bytes,
264 uint32_t num_bytes,
265 const MojoHandle* handles,
266 uint32_t num_handles,
267 MojoWriteMessageFlags flags){
268 uint32_t params[8];
269 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
270 params[0] = 16;
271 params[1] = reinterpret_cast<uint32_t>(&message_pipe_handle);
272 params[2] = reinterpret_cast<uint32_t>(bytes);
273 params[3] = reinterpret_cast<uint32_t>(&num_bytes);
274 params[4] = reinterpret_cast<uint32_t>(handles);
275 params[5] = reinterpret_cast<uint32_t>(&num_handles);
276 params[6] = reinterpret_cast<uint32_t>(&flags);
277 params[7] = reinterpret_cast<uint32_t>(&result);
278 DoMojoCall(params, sizeof(params));
279 return result;
280 }
281
282 MojoResult MojoReadMessage(
283 MojoHandle message_pipe_handle,
284 void* bytes,
285 uint32_t* num_bytes,
286 MojoHandle* handles,
287 uint32_t* num_handles,
288 MojoReadMessageFlags flags){
289 uint32_t params[8];
290 MojoResult result = MOJO_RESULT_INVALID_ARGUMENT;
291 params[0] = 17;
292 params[1] = reinterpret_cast<uint32_t>(&message_pipe_handle);
293 params[2] = reinterpret_cast<uint32_t>(bytes);
294 params[3] = reinterpret_cast<uint32_t>(num_bytes);
295 params[4] = reinterpret_cast<uint32_t>(handles);
296 params[5] = reinterpret_cast<uint32_t>(num_handles);
297 params[6] = reinterpret_cast<uint32_t>(&flags);
298 params[7] = reinterpret_cast<uint32_t>(&result);
299 DoMojoCall(params, sizeof(params));
300 return result;
301 }
302
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698