]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - sys/compat/cloudabi32/cloudabi32_systrace_args.c
MFV r365599: import fix for a libexecinfo warning at higher WARNS
[FreeBSD/FreeBSD.git] / sys / compat / cloudabi32 / cloudabi32_systrace_args.c
1 /*
2  * System call argument to DTrace register array converstion.
3  *
4  * DO NOT EDIT-- this file is automatically @generated.
5  * $FreeBSD$
6  * This file is part of the DTrace syscall provider.
7  */
8
9 static void
10 systrace_args(int sysnum, void *params, uint64_t *uarg, int *n_args)
11 {
12         int64_t *iarg  = (int64_t *) uarg;
13         switch (sysnum) {
14         /* cloudabi_sys_clock_res_get */
15         case 0: {
16                 struct cloudabi_sys_clock_res_get_args *p = params;
17                 iarg[0] = p->clock_id; /* cloudabi_clockid_t */
18                 *n_args = 1;
19                 break;
20         }
21         /* cloudabi_sys_clock_time_get */
22         case 1: {
23                 struct cloudabi_sys_clock_time_get_args *p = params;
24                 iarg[0] = p->clock_id; /* cloudabi_clockid_t */
25                 iarg[1] = p->precision; /* cloudabi_timestamp_t */
26                 *n_args = 2;
27                 break;
28         }
29         /* cloudabi_sys_condvar_signal */
30         case 2: {
31                 struct cloudabi_sys_condvar_signal_args *p = params;
32                 uarg[0] = (intptr_t) p->condvar; /* cloudabi_condvar_t * */
33                 iarg[1] = p->scope; /* cloudabi_scope_t */
34                 iarg[2] = p->nwaiters; /* cloudabi_nthreads_t */
35                 *n_args = 3;
36                 break;
37         }
38         /* cloudabi_sys_fd_close */
39         case 3: {
40                 struct cloudabi_sys_fd_close_args *p = params;
41                 iarg[0] = p->fd; /* cloudabi_fd_t */
42                 *n_args = 1;
43                 break;
44         }
45         /* cloudabi_sys_fd_create1 */
46         case 4: {
47                 struct cloudabi_sys_fd_create1_args *p = params;
48                 iarg[0] = p->type; /* cloudabi_filetype_t */
49                 *n_args = 1;
50                 break;
51         }
52         /* cloudabi_sys_fd_create2 */
53         case 5: {
54                 struct cloudabi_sys_fd_create2_args *p = params;
55                 iarg[0] = p->type; /* cloudabi_filetype_t */
56                 *n_args = 1;
57                 break;
58         }
59         /* cloudabi_sys_fd_datasync */
60         case 6: {
61                 struct cloudabi_sys_fd_datasync_args *p = params;
62                 iarg[0] = p->fd; /* cloudabi_fd_t */
63                 *n_args = 1;
64                 break;
65         }
66         /* cloudabi_sys_fd_dup */
67         case 7: {
68                 struct cloudabi_sys_fd_dup_args *p = params;
69                 iarg[0] = p->from; /* cloudabi_fd_t */
70                 *n_args = 1;
71                 break;
72         }
73         /* cloudabi32_sys_fd_pread */
74         case 8: {
75                 struct cloudabi32_sys_fd_pread_args *p = params;
76                 iarg[0] = p->fd; /* cloudabi_fd_t */
77                 uarg[1] = (intptr_t) p->iovs; /* const cloudabi32_iovec_t * */
78                 uarg[2] = p->iovs_len; /* size_t */
79                 iarg[3] = p->offset; /* cloudabi_filesize_t */
80                 *n_args = 4;
81                 break;
82         }
83         /* cloudabi32_sys_fd_pwrite */
84         case 9: {
85                 struct cloudabi32_sys_fd_pwrite_args *p = params;
86                 iarg[0] = p->fd; /* cloudabi_fd_t */
87                 uarg[1] = (intptr_t) p->iovs; /* const cloudabi32_ciovec_t * */
88                 uarg[2] = p->iovs_len; /* size_t */
89                 iarg[3] = p->offset; /* cloudabi_filesize_t */
90                 *n_args = 4;
91                 break;
92         }
93         /* cloudabi32_sys_fd_read */
94         case 10: {
95                 struct cloudabi32_sys_fd_read_args *p = params;
96                 iarg[0] = p->fd; /* cloudabi_fd_t */
97                 uarg[1] = (intptr_t) p->iovs; /* const cloudabi32_iovec_t * */
98                 uarg[2] = p->iovs_len; /* size_t */
99                 *n_args = 3;
100                 break;
101         }
102         /* cloudabi_sys_fd_replace */
103         case 11: {
104                 struct cloudabi_sys_fd_replace_args *p = params;
105                 iarg[0] = p->from; /* cloudabi_fd_t */
106                 iarg[1] = p->to; /* cloudabi_fd_t */
107                 *n_args = 2;
108                 break;
109         }
110         /* cloudabi_sys_fd_seek */
111         case 12: {
112                 struct cloudabi_sys_fd_seek_args *p = params;
113                 iarg[0] = p->fd; /* cloudabi_fd_t */
114                 iarg[1] = p->offset; /* cloudabi_filedelta_t */
115                 iarg[2] = p->whence; /* cloudabi_whence_t */
116                 *n_args = 3;
117                 break;
118         }
119         /* cloudabi_sys_fd_stat_get */
120         case 13: {
121                 struct cloudabi_sys_fd_stat_get_args *p = params;
122                 iarg[0] = p->fd; /* cloudabi_fd_t */
123                 uarg[1] = (intptr_t) p->buf; /* cloudabi_fdstat_t * */
124                 *n_args = 2;
125                 break;
126         }
127         /* cloudabi_sys_fd_stat_put */
128         case 14: {
129                 struct cloudabi_sys_fd_stat_put_args *p = params;
130                 iarg[0] = p->fd; /* cloudabi_fd_t */
131                 uarg[1] = (intptr_t) p->buf; /* const cloudabi_fdstat_t * */
132                 iarg[2] = p->flags; /* cloudabi_fdsflags_t */
133                 *n_args = 3;
134                 break;
135         }
136         /* cloudabi_sys_fd_sync */
137         case 15: {
138                 struct cloudabi_sys_fd_sync_args *p = params;
139                 iarg[0] = p->fd; /* cloudabi_fd_t */
140                 *n_args = 1;
141                 break;
142         }
143         /* cloudabi32_sys_fd_write */
144         case 16: {
145                 struct cloudabi32_sys_fd_write_args *p = params;
146                 iarg[0] = p->fd; /* cloudabi_fd_t */
147                 uarg[1] = (intptr_t) p->iovs; /* const cloudabi32_ciovec_t * */
148                 uarg[2] = p->iovs_len; /* size_t */
149                 *n_args = 3;
150                 break;
151         }
152         /* cloudabi_sys_file_advise */
153         case 17: {
154                 struct cloudabi_sys_file_advise_args *p = params;
155                 iarg[0] = p->fd; /* cloudabi_fd_t */
156                 iarg[1] = p->offset; /* cloudabi_filesize_t */
157                 iarg[2] = p->len; /* cloudabi_filesize_t */
158                 iarg[3] = p->advice; /* cloudabi_advice_t */
159                 *n_args = 4;
160                 break;
161         }
162         /* cloudabi_sys_file_allocate */
163         case 18: {
164                 struct cloudabi_sys_file_allocate_args *p = params;
165                 iarg[0] = p->fd; /* cloudabi_fd_t */
166                 iarg[1] = p->offset; /* cloudabi_filesize_t */
167                 iarg[2] = p->len; /* cloudabi_filesize_t */
168                 *n_args = 3;
169                 break;
170         }
171         /* cloudabi_sys_file_create */
172         case 19: {
173                 struct cloudabi_sys_file_create_args *p = params;
174                 iarg[0] = p->fd; /* cloudabi_fd_t */
175                 uarg[1] = (intptr_t) p->path; /* const char * */
176                 uarg[2] = p->path_len; /* size_t */
177                 iarg[3] = p->type; /* cloudabi_filetype_t */
178                 *n_args = 4;
179                 break;
180         }
181         /* cloudabi_sys_file_link */
182         case 20: {
183                 struct cloudabi_sys_file_link_args *p = params;
184                 iarg[0] = p->fd1; /* cloudabi_lookup_t */
185                 uarg[1] = (intptr_t) p->path1; /* const char * */
186                 uarg[2] = p->path1_len; /* size_t */
187                 iarg[3] = p->fd2; /* cloudabi_fd_t */
188                 uarg[4] = (intptr_t) p->path2; /* const char * */
189                 uarg[5] = p->path2_len; /* size_t */
190                 *n_args = 6;
191                 break;
192         }
193         /* cloudabi_sys_file_open */
194         case 21: {
195                 struct cloudabi_sys_file_open_args *p = params;
196                 iarg[0] = p->dirfd; /* cloudabi_lookup_t */
197                 uarg[1] = (intptr_t) p->path; /* const char * */
198                 uarg[2] = p->path_len; /* size_t */
199                 iarg[3] = p->oflags; /* cloudabi_oflags_t */
200                 uarg[4] = (intptr_t) p->fds; /* const cloudabi_fdstat_t * */
201                 *n_args = 5;
202                 break;
203         }
204         /* cloudabi_sys_file_readdir */
205         case 22: {
206                 struct cloudabi_sys_file_readdir_args *p = params;
207                 iarg[0] = p->fd; /* cloudabi_fd_t */
208                 uarg[1] = (intptr_t) p->buf; /* void * */
209                 uarg[2] = p->buf_len; /* size_t */
210                 iarg[3] = p->cookie; /* cloudabi_dircookie_t */
211                 *n_args = 4;
212                 break;
213         }
214         /* cloudabi_sys_file_readlink */
215         case 23: {
216                 struct cloudabi_sys_file_readlink_args *p = params;
217                 iarg[0] = p->fd; /* cloudabi_fd_t */
218                 uarg[1] = (intptr_t) p->path; /* const char * */
219                 uarg[2] = p->path_len; /* size_t */
220                 uarg[3] = (intptr_t) p->buf; /* char * */
221                 uarg[4] = p->buf_len; /* size_t */
222                 *n_args = 5;
223                 break;
224         }
225         /* cloudabi_sys_file_rename */
226         case 24: {
227                 struct cloudabi_sys_file_rename_args *p = params;
228                 iarg[0] = p->fd1; /* cloudabi_fd_t */
229                 uarg[1] = (intptr_t) p->path1; /* const char * */
230                 uarg[2] = p->path1_len; /* size_t */
231                 iarg[3] = p->fd2; /* cloudabi_fd_t */
232                 uarg[4] = (intptr_t) p->path2; /* const char * */
233                 uarg[5] = p->path2_len; /* size_t */
234                 *n_args = 6;
235                 break;
236         }
237         /* cloudabi_sys_file_stat_fget */
238         case 25: {
239                 struct cloudabi_sys_file_stat_fget_args *p = params;
240                 iarg[0] = p->fd; /* cloudabi_fd_t */
241                 uarg[1] = (intptr_t) p->buf; /* cloudabi_filestat_t * */
242                 *n_args = 2;
243                 break;
244         }
245         /* cloudabi_sys_file_stat_fput */
246         case 26: {
247                 struct cloudabi_sys_file_stat_fput_args *p = params;
248                 iarg[0] = p->fd; /* cloudabi_fd_t */
249                 uarg[1] = (intptr_t) p->buf; /* const cloudabi_filestat_t * */
250                 iarg[2] = p->flags; /* cloudabi_fsflags_t */
251                 *n_args = 3;
252                 break;
253         }
254         /* cloudabi_sys_file_stat_get */
255         case 27: {
256                 struct cloudabi_sys_file_stat_get_args *p = params;
257                 iarg[0] = p->fd; /* cloudabi_lookup_t */
258                 uarg[1] = (intptr_t) p->path; /* const char * */
259                 uarg[2] = p->path_len; /* size_t */
260                 uarg[3] = (intptr_t) p->buf; /* cloudabi_filestat_t * */
261                 *n_args = 4;
262                 break;
263         }
264         /* cloudabi_sys_file_stat_put */
265         case 28: {
266                 struct cloudabi_sys_file_stat_put_args *p = params;
267                 iarg[0] = p->fd; /* cloudabi_lookup_t */
268                 uarg[1] = (intptr_t) p->path; /* const char * */
269                 uarg[2] = p->path_len; /* size_t */
270                 uarg[3] = (intptr_t) p->buf; /* const cloudabi_filestat_t * */
271                 iarg[4] = p->flags; /* cloudabi_fsflags_t */
272                 *n_args = 5;
273                 break;
274         }
275         /* cloudabi_sys_file_symlink */
276         case 29: {
277                 struct cloudabi_sys_file_symlink_args *p = params;
278                 uarg[0] = (intptr_t) p->path1; /* const char * */
279                 uarg[1] = p->path1_len; /* size_t */
280                 iarg[2] = p->fd; /* cloudabi_fd_t */
281                 uarg[3] = (intptr_t) p->path2; /* const char * */
282                 uarg[4] = p->path2_len; /* size_t */
283                 *n_args = 5;
284                 break;
285         }
286         /* cloudabi_sys_file_unlink */
287         case 30: {
288                 struct cloudabi_sys_file_unlink_args *p = params;
289                 iarg[0] = p->fd; /* cloudabi_fd_t */
290                 uarg[1] = (intptr_t) p->path; /* const char * */
291                 uarg[2] = p->path_len; /* size_t */
292                 iarg[3] = p->flags; /* cloudabi_ulflags_t */
293                 *n_args = 4;
294                 break;
295         }
296         /* cloudabi_sys_lock_unlock */
297         case 31: {
298                 struct cloudabi_sys_lock_unlock_args *p = params;
299                 uarg[0] = (intptr_t) p->lock; /* cloudabi_lock_t * */
300                 iarg[1] = p->scope; /* cloudabi_scope_t */
301                 *n_args = 2;
302                 break;
303         }
304         /* cloudabi_sys_mem_advise */
305         case 32: {
306                 struct cloudabi_sys_mem_advise_args *p = params;
307                 uarg[0] = (intptr_t) p->mapping; /* void * */
308                 uarg[1] = p->mapping_len; /* size_t */
309                 iarg[2] = p->advice; /* cloudabi_advice_t */
310                 *n_args = 3;
311                 break;
312         }
313         /* cloudabi_sys_mem_map */
314         case 33: {
315                 struct cloudabi_sys_mem_map_args *p = params;
316                 uarg[0] = (intptr_t) p->addr; /* void * */
317                 uarg[1] = p->len; /* size_t */
318                 iarg[2] = p->prot; /* cloudabi_mprot_t */
319                 iarg[3] = p->flags; /* cloudabi_mflags_t */
320                 iarg[4] = p->fd; /* cloudabi_fd_t */
321                 iarg[5] = p->off; /* cloudabi_filesize_t */
322                 *n_args = 6;
323                 break;
324         }
325         /* cloudabi_sys_mem_protect */
326         case 34: {
327                 struct cloudabi_sys_mem_protect_args *p = params;
328                 uarg[0] = (intptr_t) p->mapping; /* void * */
329                 uarg[1] = p->mapping_len; /* size_t */
330                 iarg[2] = p->prot; /* cloudabi_mprot_t */
331                 *n_args = 3;
332                 break;
333         }
334         /* cloudabi_sys_mem_sync */
335         case 35: {
336                 struct cloudabi_sys_mem_sync_args *p = params;
337                 uarg[0] = (intptr_t) p->mapping; /* void * */
338                 uarg[1] = p->mapping_len; /* size_t */
339                 iarg[2] = p->flags; /* cloudabi_msflags_t */
340                 *n_args = 3;
341                 break;
342         }
343         /* cloudabi_sys_mem_unmap */
344         case 36: {
345                 struct cloudabi_sys_mem_unmap_args *p = params;
346                 uarg[0] = (intptr_t) p->mapping; /* void * */
347                 uarg[1] = p->mapping_len; /* size_t */
348                 *n_args = 2;
349                 break;
350         }
351         /* cloudabi32_sys_poll */
352         case 37: {
353                 struct cloudabi32_sys_poll_args *p = params;
354                 uarg[0] = (intptr_t) p->in; /* const cloudabi32_subscription_t * */
355                 uarg[1] = (intptr_t) p->out; /* cloudabi_event_t * */
356                 uarg[2] = p->nsubscriptions; /* size_t */
357                 *n_args = 3;
358                 break;
359         }
360         /* cloudabi_sys_proc_exec */
361         case 38: {
362                 struct cloudabi_sys_proc_exec_args *p = params;
363                 iarg[0] = p->fd; /* cloudabi_fd_t */
364                 uarg[1] = (intptr_t) p->data; /* const void * */
365                 uarg[2] = p->data_len; /* size_t */
366                 uarg[3] = (intptr_t) p->fds; /* const cloudabi_fd_t * */
367                 uarg[4] = p->fds_len; /* size_t */
368                 *n_args = 5;
369                 break;
370         }
371         /* cloudabi_sys_proc_exit */
372         case 39: {
373                 struct cloudabi_sys_proc_exit_args *p = params;
374                 iarg[0] = p->rval; /* cloudabi_exitcode_t */
375                 *n_args = 1;
376                 break;
377         }
378         /* cloudabi_sys_proc_fork */
379         case 40: {
380                 *n_args = 0;
381                 break;
382         }
383         /* cloudabi_sys_proc_raise */
384         case 41: {
385                 struct cloudabi_sys_proc_raise_args *p = params;
386                 iarg[0] = p->sig; /* cloudabi_signal_t */
387                 *n_args = 1;
388                 break;
389         }
390         /* cloudabi_sys_random_get */
391         case 42: {
392                 struct cloudabi_sys_random_get_args *p = params;
393                 uarg[0] = (intptr_t) p->buf; /* void * */
394                 uarg[1] = p->buf_len; /* size_t */
395                 *n_args = 2;
396                 break;
397         }
398         /* cloudabi32_sys_sock_recv */
399         case 43: {
400                 struct cloudabi32_sys_sock_recv_args *p = params;
401                 iarg[0] = p->sock; /* cloudabi_fd_t */
402                 uarg[1] = (intptr_t) p->in; /* const cloudabi32_recv_in_t * */
403                 uarg[2] = (intptr_t) p->out; /* cloudabi32_recv_out_t * */
404                 *n_args = 3;
405                 break;
406         }
407         /* cloudabi32_sys_sock_send */
408         case 44: {
409                 struct cloudabi32_sys_sock_send_args *p = params;
410                 iarg[0] = p->sock; /* cloudabi_fd_t */
411                 uarg[1] = (intptr_t) p->in; /* const cloudabi32_send_in_t * */
412                 uarg[2] = (intptr_t) p->out; /* cloudabi32_send_out_t * */
413                 *n_args = 3;
414                 break;
415         }
416         /* cloudabi_sys_sock_shutdown */
417         case 45: {
418                 struct cloudabi_sys_sock_shutdown_args *p = params;
419                 iarg[0] = p->sock; /* cloudabi_fd_t */
420                 iarg[1] = p->how; /* cloudabi_sdflags_t */
421                 *n_args = 2;
422                 break;
423         }
424         /* cloudabi32_sys_thread_create */
425         case 46: {
426                 struct cloudabi32_sys_thread_create_args *p = params;
427                 uarg[0] = (intptr_t) p->attr; /* cloudabi32_threadattr_t * */
428                 *n_args = 1;
429                 break;
430         }
431         /* cloudabi_sys_thread_exit */
432         case 47: {
433                 struct cloudabi_sys_thread_exit_args *p = params;
434                 uarg[0] = (intptr_t) p->lock; /* cloudabi_lock_t * */
435                 iarg[1] = p->scope; /* cloudabi_scope_t */
436                 *n_args = 2;
437                 break;
438         }
439         /* cloudabi_sys_thread_yield */
440         case 48: {
441                 *n_args = 0;
442                 break;
443         }
444         default:
445                 *n_args = 0;
446                 break;
447         };
448 }
449 static void
450 systrace_entry_setargdesc(int sysnum, int ndx, char *desc, size_t descsz)
451 {
452         const char *p = NULL;
453         switch (sysnum) {
454         /* cloudabi_sys_clock_res_get */
455         case 0:
456                 switch(ndx) {
457                 case 0:
458                         p = "cloudabi_clockid_t";
459                         break;
460                 default:
461                         break;
462                 };
463                 break;
464         /* cloudabi_sys_clock_time_get */
465         case 1:
466                 switch(ndx) {
467                 case 0:
468                         p = "cloudabi_clockid_t";
469                         break;
470                 case 1:
471                         p = "cloudabi_timestamp_t";
472                         break;
473                 default:
474                         break;
475                 };
476                 break;
477         /* cloudabi_sys_condvar_signal */
478         case 2:
479                 switch(ndx) {
480                 case 0:
481                         p = "userland cloudabi_condvar_t *";
482                         break;
483                 case 1:
484                         p = "cloudabi_scope_t";
485                         break;
486                 case 2:
487                         p = "cloudabi_nthreads_t";
488                         break;
489                 default:
490                         break;
491                 };
492                 break;
493         /* cloudabi_sys_fd_close */
494         case 3:
495                 switch(ndx) {
496                 case 0:
497                         p = "cloudabi_fd_t";
498                         break;
499                 default:
500                         break;
501                 };
502                 break;
503         /* cloudabi_sys_fd_create1 */
504         case 4:
505                 switch(ndx) {
506                 case 0:
507                         p = "cloudabi_filetype_t";
508                         break;
509                 default:
510                         break;
511                 };
512                 break;
513         /* cloudabi_sys_fd_create2 */
514         case 5:
515                 switch(ndx) {
516                 case 0:
517                         p = "cloudabi_filetype_t";
518                         break;
519                 default:
520                         break;
521                 };
522                 break;
523         /* cloudabi_sys_fd_datasync */
524         case 6:
525                 switch(ndx) {
526                 case 0:
527                         p = "cloudabi_fd_t";
528                         break;
529                 default:
530                         break;
531                 };
532                 break;
533         /* cloudabi_sys_fd_dup */
534         case 7:
535                 switch(ndx) {
536                 case 0:
537                         p = "cloudabi_fd_t";
538                         break;
539                 default:
540                         break;
541                 };
542                 break;
543         /* cloudabi32_sys_fd_pread */
544         case 8:
545                 switch(ndx) {
546                 case 0:
547                         p = "cloudabi_fd_t";
548                         break;
549                 case 1:
550                         p = "userland const cloudabi32_iovec_t *";
551                         break;
552                 case 2:
553                         p = "size_t";
554                         break;
555                 case 3:
556                         p = "cloudabi_filesize_t";
557                         break;
558                 default:
559                         break;
560                 };
561                 break;
562         /* cloudabi32_sys_fd_pwrite */
563         case 9:
564                 switch(ndx) {
565                 case 0:
566                         p = "cloudabi_fd_t";
567                         break;
568                 case 1:
569                         p = "userland const cloudabi32_ciovec_t *";
570                         break;
571                 case 2:
572                         p = "size_t";
573                         break;
574                 case 3:
575                         p = "cloudabi_filesize_t";
576                         break;
577                 default:
578                         break;
579                 };
580                 break;
581         /* cloudabi32_sys_fd_read */
582         case 10:
583                 switch(ndx) {
584                 case 0:
585                         p = "cloudabi_fd_t";
586                         break;
587                 case 1:
588                         p = "userland const cloudabi32_iovec_t *";
589                         break;
590                 case 2:
591                         p = "size_t";
592                         break;
593                 default:
594                         break;
595                 };
596                 break;
597         /* cloudabi_sys_fd_replace */
598         case 11:
599                 switch(ndx) {
600                 case 0:
601                         p = "cloudabi_fd_t";
602                         break;
603                 case 1:
604                         p = "cloudabi_fd_t";
605                         break;
606                 default:
607                         break;
608                 };
609                 break;
610         /* cloudabi_sys_fd_seek */
611         case 12:
612                 switch(ndx) {
613                 case 0:
614                         p = "cloudabi_fd_t";
615                         break;
616                 case 1:
617                         p = "cloudabi_filedelta_t";
618                         break;
619                 case 2:
620                         p = "cloudabi_whence_t";
621                         break;
622                 default:
623                         break;
624                 };
625                 break;
626         /* cloudabi_sys_fd_stat_get */
627         case 13:
628                 switch(ndx) {
629                 case 0:
630                         p = "cloudabi_fd_t";
631                         break;
632                 case 1:
633                         p = "userland cloudabi_fdstat_t *";
634                         break;
635                 default:
636                         break;
637                 };
638                 break;
639         /* cloudabi_sys_fd_stat_put */
640         case 14:
641                 switch(ndx) {
642                 case 0:
643                         p = "cloudabi_fd_t";
644                         break;
645                 case 1:
646                         p = "userland const cloudabi_fdstat_t *";
647                         break;
648                 case 2:
649                         p = "cloudabi_fdsflags_t";
650                         break;
651                 default:
652                         break;
653                 };
654                 break;
655         /* cloudabi_sys_fd_sync */
656         case 15:
657                 switch(ndx) {
658                 case 0:
659                         p = "cloudabi_fd_t";
660                         break;
661                 default:
662                         break;
663                 };
664                 break;
665         /* cloudabi32_sys_fd_write */
666         case 16:
667                 switch(ndx) {
668                 case 0:
669                         p = "cloudabi_fd_t";
670                         break;
671                 case 1:
672                         p = "userland const cloudabi32_ciovec_t *";
673                         break;
674                 case 2:
675                         p = "size_t";
676                         break;
677                 default:
678                         break;
679                 };
680                 break;
681         /* cloudabi_sys_file_advise */
682         case 17:
683                 switch(ndx) {
684                 case 0:
685                         p = "cloudabi_fd_t";
686                         break;
687                 case 1:
688                         p = "cloudabi_filesize_t";
689                         break;
690                 case 2:
691                         p = "cloudabi_filesize_t";
692                         break;
693                 case 3:
694                         p = "cloudabi_advice_t";
695                         break;
696                 default:
697                         break;
698                 };
699                 break;
700         /* cloudabi_sys_file_allocate */
701         case 18:
702                 switch(ndx) {
703                 case 0:
704                         p = "cloudabi_fd_t";
705                         break;
706                 case 1:
707                         p = "cloudabi_filesize_t";
708                         break;
709                 case 2:
710                         p = "cloudabi_filesize_t";
711                         break;
712                 default:
713                         break;
714                 };
715                 break;
716         /* cloudabi_sys_file_create */
717         case 19:
718                 switch(ndx) {
719                 case 0:
720                         p = "cloudabi_fd_t";
721                         break;
722                 case 1:
723                         p = "userland const char *";
724                         break;
725                 case 2:
726                         p = "size_t";
727                         break;
728                 case 3:
729                         p = "cloudabi_filetype_t";
730                         break;
731                 default:
732                         break;
733                 };
734                 break;
735         /* cloudabi_sys_file_link */
736         case 20:
737                 switch(ndx) {
738                 case 0:
739                         p = "cloudabi_lookup_t";
740                         break;
741                 case 1:
742                         p = "userland const char *";
743                         break;
744                 case 2:
745                         p = "size_t";
746                         break;
747                 case 3:
748                         p = "cloudabi_fd_t";
749                         break;
750                 case 4:
751                         p = "userland const char *";
752                         break;
753                 case 5:
754                         p = "size_t";
755                         break;
756                 default:
757                         break;
758                 };
759                 break;
760         /* cloudabi_sys_file_open */
761         case 21:
762                 switch(ndx) {
763                 case 0:
764                         p = "cloudabi_lookup_t";
765                         break;
766                 case 1:
767                         p = "userland const char *";
768                         break;
769                 case 2:
770                         p = "size_t";
771                         break;
772                 case 3:
773                         p = "cloudabi_oflags_t";
774                         break;
775                 case 4:
776                         p = "userland const cloudabi_fdstat_t *";
777                         break;
778                 default:
779                         break;
780                 };
781                 break;
782         /* cloudabi_sys_file_readdir */
783         case 22:
784                 switch(ndx) {
785                 case 0:
786                         p = "cloudabi_fd_t";
787                         break;
788                 case 1:
789                         p = "userland void *";
790                         break;
791                 case 2:
792                         p = "size_t";
793                         break;
794                 case 3:
795                         p = "cloudabi_dircookie_t";
796                         break;
797                 default:
798                         break;
799                 };
800                 break;
801         /* cloudabi_sys_file_readlink */
802         case 23:
803                 switch(ndx) {
804                 case 0:
805                         p = "cloudabi_fd_t";
806                         break;
807                 case 1:
808                         p = "userland const char *";
809                         break;
810                 case 2:
811                         p = "size_t";
812                         break;
813                 case 3:
814                         p = "userland char *";
815                         break;
816                 case 4:
817                         p = "size_t";
818                         break;
819                 default:
820                         break;
821                 };
822                 break;
823         /* cloudabi_sys_file_rename */
824         case 24:
825                 switch(ndx) {
826                 case 0:
827                         p = "cloudabi_fd_t";
828                         break;
829                 case 1:
830                         p = "userland const char *";
831                         break;
832                 case 2:
833                         p = "size_t";
834                         break;
835                 case 3:
836                         p = "cloudabi_fd_t";
837                         break;
838                 case 4:
839                         p = "userland const char *";
840                         break;
841                 case 5:
842                         p = "size_t";
843                         break;
844                 default:
845                         break;
846                 };
847                 break;
848         /* cloudabi_sys_file_stat_fget */
849         case 25:
850                 switch(ndx) {
851                 case 0:
852                         p = "cloudabi_fd_t";
853                         break;
854                 case 1:
855                         p = "userland cloudabi_filestat_t *";
856                         break;
857                 default:
858                         break;
859                 };
860                 break;
861         /* cloudabi_sys_file_stat_fput */
862         case 26:
863                 switch(ndx) {
864                 case 0:
865                         p = "cloudabi_fd_t";
866                         break;
867                 case 1:
868                         p = "userland const cloudabi_filestat_t *";
869                         break;
870                 case 2:
871                         p = "cloudabi_fsflags_t";
872                         break;
873                 default:
874                         break;
875                 };
876                 break;
877         /* cloudabi_sys_file_stat_get */
878         case 27:
879                 switch(ndx) {
880                 case 0:
881                         p = "cloudabi_lookup_t";
882                         break;
883                 case 1:
884                         p = "userland const char *";
885                         break;
886                 case 2:
887                         p = "size_t";
888                         break;
889                 case 3:
890                         p = "userland cloudabi_filestat_t *";
891                         break;
892                 default:
893                         break;
894                 };
895                 break;
896         /* cloudabi_sys_file_stat_put */
897         case 28:
898                 switch(ndx) {
899                 case 0:
900                         p = "cloudabi_lookup_t";
901                         break;
902                 case 1:
903                         p = "userland const char *";
904                         break;
905                 case 2:
906                         p = "size_t";
907                         break;
908                 case 3:
909                         p = "userland const cloudabi_filestat_t *";
910                         break;
911                 case 4:
912                         p = "cloudabi_fsflags_t";
913                         break;
914                 default:
915                         break;
916                 };
917                 break;
918         /* cloudabi_sys_file_symlink */
919         case 29:
920                 switch(ndx) {
921                 case 0:
922                         p = "userland const char *";
923                         break;
924                 case 1:
925                         p = "size_t";
926                         break;
927                 case 2:
928                         p = "cloudabi_fd_t";
929                         break;
930                 case 3:
931                         p = "userland const char *";
932                         break;
933                 case 4:
934                         p = "size_t";
935                         break;
936                 default:
937                         break;
938                 };
939                 break;
940         /* cloudabi_sys_file_unlink */
941         case 30:
942                 switch(ndx) {
943                 case 0:
944                         p = "cloudabi_fd_t";
945                         break;
946                 case 1:
947                         p = "userland const char *";
948                         break;
949                 case 2:
950                         p = "size_t";
951                         break;
952                 case 3:
953                         p = "cloudabi_ulflags_t";
954                         break;
955                 default:
956                         break;
957                 };
958                 break;
959         /* cloudabi_sys_lock_unlock */
960         case 31:
961                 switch(ndx) {
962                 case 0:
963                         p = "userland cloudabi_lock_t *";
964                         break;
965                 case 1:
966                         p = "cloudabi_scope_t";
967                         break;
968                 default:
969                         break;
970                 };
971                 break;
972         /* cloudabi_sys_mem_advise */
973         case 32:
974                 switch(ndx) {
975                 case 0:
976                         p = "userland void *";
977                         break;
978                 case 1:
979                         p = "size_t";
980                         break;
981                 case 2:
982                         p = "cloudabi_advice_t";
983                         break;
984                 default:
985                         break;
986                 };
987                 break;
988         /* cloudabi_sys_mem_map */
989         case 33:
990                 switch(ndx) {
991                 case 0:
992                         p = "userland void *";
993                         break;
994                 case 1:
995                         p = "size_t";
996                         break;
997                 case 2:
998                         p = "cloudabi_mprot_t";
999                         break;
1000                 case 3:
1001                         p = "cloudabi_mflags_t";
1002                         break;
1003                 case 4:
1004                         p = "cloudabi_fd_t";
1005                         break;
1006                 case 5:
1007                         p = "cloudabi_filesize_t";
1008                         break;
1009                 default:
1010                         break;
1011                 };
1012                 break;
1013         /* cloudabi_sys_mem_protect */
1014         case 34:
1015                 switch(ndx) {
1016                 case 0:
1017                         p = "userland void *";
1018                         break;
1019                 case 1:
1020                         p = "size_t";
1021                         break;
1022                 case 2:
1023                         p = "cloudabi_mprot_t";
1024                         break;
1025                 default:
1026                         break;
1027                 };
1028                 break;
1029         /* cloudabi_sys_mem_sync */
1030         case 35:
1031                 switch(ndx) {
1032                 case 0:
1033                         p = "userland void *";
1034                         break;
1035                 case 1:
1036                         p = "size_t";
1037                         break;
1038                 case 2:
1039                         p = "cloudabi_msflags_t";
1040                         break;
1041                 default:
1042                         break;
1043                 };
1044                 break;
1045         /* cloudabi_sys_mem_unmap */
1046         case 36:
1047                 switch(ndx) {
1048                 case 0:
1049                         p = "userland void *";
1050                         break;
1051                 case 1:
1052                         p = "size_t";
1053                         break;
1054                 default:
1055                         break;
1056                 };
1057                 break;
1058         /* cloudabi32_sys_poll */
1059         case 37:
1060                 switch(ndx) {
1061                 case 0:
1062                         p = "userland const cloudabi32_subscription_t *";
1063                         break;
1064                 case 1:
1065                         p = "userland cloudabi_event_t *";
1066                         break;
1067                 case 2:
1068                         p = "size_t";
1069                         break;
1070                 default:
1071                         break;
1072                 };
1073                 break;
1074         /* cloudabi_sys_proc_exec */
1075         case 38:
1076                 switch(ndx) {
1077                 case 0:
1078                         p = "cloudabi_fd_t";
1079                         break;
1080                 case 1:
1081                         p = "userland const void *";
1082                         break;
1083                 case 2:
1084                         p = "size_t";
1085                         break;
1086                 case 3:
1087                         p = "userland const cloudabi_fd_t *";
1088                         break;
1089                 case 4:
1090                         p = "size_t";
1091                         break;
1092                 default:
1093                         break;
1094                 };
1095                 break;
1096         /* cloudabi_sys_proc_exit */
1097         case 39:
1098                 switch(ndx) {
1099                 case 0:
1100                         p = "cloudabi_exitcode_t";
1101                         break;
1102                 default:
1103                         break;
1104                 };
1105                 break;
1106         /* cloudabi_sys_proc_fork */
1107         case 40:
1108                 break;
1109         /* cloudabi_sys_proc_raise */
1110         case 41:
1111                 switch(ndx) {
1112                 case 0:
1113                         p = "cloudabi_signal_t";
1114                         break;
1115                 default:
1116                         break;
1117                 };
1118                 break;
1119         /* cloudabi_sys_random_get */
1120         case 42:
1121                 switch(ndx) {
1122                 case 0:
1123                         p = "userland void *";
1124                         break;
1125                 case 1:
1126                         p = "size_t";
1127                         break;
1128                 default:
1129                         break;
1130                 };
1131                 break;
1132         /* cloudabi32_sys_sock_recv */
1133         case 43:
1134                 switch(ndx) {
1135                 case 0:
1136                         p = "cloudabi_fd_t";
1137                         break;
1138                 case 1:
1139                         p = "userland const cloudabi32_recv_in_t *";
1140                         break;
1141                 case 2:
1142                         p = "userland cloudabi32_recv_out_t *";
1143                         break;
1144                 default:
1145                         break;
1146                 };
1147                 break;
1148         /* cloudabi32_sys_sock_send */
1149         case 44:
1150                 switch(ndx) {
1151                 case 0:
1152                         p = "cloudabi_fd_t";
1153                         break;
1154                 case 1:
1155                         p = "userland const cloudabi32_send_in_t *";
1156                         break;
1157                 case 2:
1158                         p = "userland cloudabi32_send_out_t *";
1159                         break;
1160                 default:
1161                         break;
1162                 };
1163                 break;
1164         /* cloudabi_sys_sock_shutdown */
1165         case 45:
1166                 switch(ndx) {
1167                 case 0:
1168                         p = "cloudabi_fd_t";
1169                         break;
1170                 case 1:
1171                         p = "cloudabi_sdflags_t";
1172                         break;
1173                 default:
1174                         break;
1175                 };
1176                 break;
1177         /* cloudabi32_sys_thread_create */
1178         case 46:
1179                 switch(ndx) {
1180                 case 0:
1181                         p = "userland cloudabi32_threadattr_t *";
1182                         break;
1183                 default:
1184                         break;
1185                 };
1186                 break;
1187         /* cloudabi_sys_thread_exit */
1188         case 47:
1189                 switch(ndx) {
1190                 case 0:
1191                         p = "userland cloudabi_lock_t *";
1192                         break;
1193                 case 1:
1194                         p = "cloudabi_scope_t";
1195                         break;
1196                 default:
1197                         break;
1198                 };
1199                 break;
1200         /* cloudabi_sys_thread_yield */
1201         case 48:
1202                 break;
1203         default:
1204                 break;
1205         };
1206         if (p != NULL)
1207                 strlcpy(desc, p, descsz);
1208 }
1209 static void
1210 systrace_return_setargdesc(int sysnum, int ndx, char *desc, size_t descsz)
1211 {
1212         const char *p = NULL;
1213         switch (sysnum) {
1214         /* cloudabi_sys_clock_res_get */
1215         case 0:
1216                 if (ndx == 0 || ndx == 1)
1217                         p = "cloudabi_timestamp_t";
1218                 break;
1219         /* cloudabi_sys_clock_time_get */
1220         case 1:
1221                 if (ndx == 0 || ndx == 1)
1222                         p = "cloudabi_timestamp_t";
1223                 break;
1224         /* cloudabi_sys_condvar_signal */
1225         case 2:
1226                 if (ndx == 0 || ndx == 1)
1227                         p = "void";
1228                 break;
1229         /* cloudabi_sys_fd_close */
1230         case 3:
1231                 if (ndx == 0 || ndx == 1)
1232                         p = "void";
1233                 break;
1234         /* cloudabi_sys_fd_create1 */
1235         case 4:
1236                 if (ndx == 0 || ndx == 1)
1237                         p = "cloudabi_fd_t";
1238                 break;
1239         /* cloudabi_sys_fd_create2 */
1240         case 5:
1241                 if (ndx == 0 || ndx == 1)
1242                         p = "void";
1243                 break;
1244         /* cloudabi_sys_fd_datasync */
1245         case 6:
1246                 if (ndx == 0 || ndx == 1)
1247                         p = "void";
1248                 break;
1249         /* cloudabi_sys_fd_dup */
1250         case 7:
1251                 if (ndx == 0 || ndx == 1)
1252                         p = "cloudabi_fd_t";
1253                 break;
1254         /* cloudabi32_sys_fd_pread */
1255         case 8:
1256                 if (ndx == 0 || ndx == 1)
1257                         p = "size_t";
1258                 break;
1259         /* cloudabi32_sys_fd_pwrite */
1260         case 9:
1261                 if (ndx == 0 || ndx == 1)
1262                         p = "size_t";
1263                 break;
1264         /* cloudabi32_sys_fd_read */
1265         case 10:
1266                 if (ndx == 0 || ndx == 1)
1267                         p = "size_t";
1268                 break;
1269         /* cloudabi_sys_fd_replace */
1270         case 11:
1271                 if (ndx == 0 || ndx == 1)
1272                         p = "void";
1273                 break;
1274         /* cloudabi_sys_fd_seek */
1275         case 12:
1276                 if (ndx == 0 || ndx == 1)
1277                         p = "cloudabi_filesize_t";
1278                 break;
1279         /* cloudabi_sys_fd_stat_get */
1280         case 13:
1281                 if (ndx == 0 || ndx == 1)
1282                         p = "void";
1283                 break;
1284         /* cloudabi_sys_fd_stat_put */
1285         case 14:
1286                 if (ndx == 0 || ndx == 1)
1287                         p = "void";
1288                 break;
1289         /* cloudabi_sys_fd_sync */
1290         case 15:
1291                 if (ndx == 0 || ndx == 1)
1292                         p = "void";
1293                 break;
1294         /* cloudabi32_sys_fd_write */
1295         case 16:
1296                 if (ndx == 0 || ndx == 1)
1297                         p = "size_t";
1298                 break;
1299         /* cloudabi_sys_file_advise */
1300         case 17:
1301                 if (ndx == 0 || ndx == 1)
1302                         p = "void";
1303                 break;
1304         /* cloudabi_sys_file_allocate */
1305         case 18:
1306                 if (ndx == 0 || ndx == 1)
1307                         p = "void";
1308                 break;
1309         /* cloudabi_sys_file_create */
1310         case 19:
1311                 if (ndx == 0 || ndx == 1)
1312                         p = "void";
1313                 break;
1314         /* cloudabi_sys_file_link */
1315         case 20:
1316                 if (ndx == 0 || ndx == 1)
1317                         p = "void";
1318                 break;
1319         /* cloudabi_sys_file_open */
1320         case 21:
1321                 if (ndx == 0 || ndx == 1)
1322                         p = "cloudabi_fd_t";
1323                 break;
1324         /* cloudabi_sys_file_readdir */
1325         case 22:
1326                 if (ndx == 0 || ndx == 1)
1327                         p = "size_t";
1328                 break;
1329         /* cloudabi_sys_file_readlink */
1330         case 23:
1331                 if (ndx == 0 || ndx == 1)
1332                         p = "size_t";
1333                 break;
1334         /* cloudabi_sys_file_rename */
1335         case 24:
1336                 if (ndx == 0 || ndx == 1)
1337                         p = "void";
1338                 break;
1339         /* cloudabi_sys_file_stat_fget */
1340         case 25:
1341                 if (ndx == 0 || ndx == 1)
1342                         p = "void";
1343                 break;
1344         /* cloudabi_sys_file_stat_fput */
1345         case 26:
1346                 if (ndx == 0 || ndx == 1)
1347                         p = "void";
1348                 break;
1349         /* cloudabi_sys_file_stat_get */
1350         case 27:
1351                 if (ndx == 0 || ndx == 1)
1352                         p = "void";
1353                 break;
1354         /* cloudabi_sys_file_stat_put */
1355         case 28:
1356                 if (ndx == 0 || ndx == 1)
1357                         p = "void";
1358                 break;
1359         /* cloudabi_sys_file_symlink */
1360         case 29:
1361                 if (ndx == 0 || ndx == 1)
1362                         p = "void";
1363                 break;
1364         /* cloudabi_sys_file_unlink */
1365         case 30:
1366                 if (ndx == 0 || ndx == 1)
1367                         p = "void";
1368                 break;
1369         /* cloudabi_sys_lock_unlock */
1370         case 31:
1371                 if (ndx == 0 || ndx == 1)
1372                         p = "void";
1373                 break;
1374         /* cloudabi_sys_mem_advise */
1375         case 32:
1376                 if (ndx == 0 || ndx == 1)
1377                         p = "void";
1378                 break;
1379         /* cloudabi_sys_mem_map */
1380         case 33:
1381                 if (ndx == 0 || ndx == 1)
1382                         p = "void";
1383                 break;
1384         /* cloudabi_sys_mem_protect */
1385         case 34:
1386                 if (ndx == 0 || ndx == 1)
1387                         p = "void";
1388                 break;
1389         /* cloudabi_sys_mem_sync */
1390         case 35:
1391                 if (ndx == 0 || ndx == 1)
1392                         p = "void";
1393                 break;
1394         /* cloudabi_sys_mem_unmap */
1395         case 36:
1396                 if (ndx == 0 || ndx == 1)
1397                         p = "void";
1398                 break;
1399         /* cloudabi32_sys_poll */
1400         case 37:
1401                 if (ndx == 0 || ndx == 1)
1402                         p = "size_t";
1403                 break;
1404         /* cloudabi_sys_proc_exec */
1405         case 38:
1406                 if (ndx == 0 || ndx == 1)
1407                         p = "void";
1408                 break;
1409         /* cloudabi_sys_proc_exit */
1410         case 39:
1411                 if (ndx == 0 || ndx == 1)
1412                         p = "void";
1413                 break;
1414         /* cloudabi_sys_proc_fork */
1415         case 40:
1416         /* cloudabi_sys_proc_raise */
1417         case 41:
1418                 if (ndx == 0 || ndx == 1)
1419                         p = "void";
1420                 break;
1421         /* cloudabi_sys_random_get */
1422         case 42:
1423                 if (ndx == 0 || ndx == 1)
1424                         p = "void";
1425                 break;
1426         /* cloudabi32_sys_sock_recv */
1427         case 43:
1428                 if (ndx == 0 || ndx == 1)
1429                         p = "void";
1430                 break;
1431         /* cloudabi32_sys_sock_send */
1432         case 44:
1433                 if (ndx == 0 || ndx == 1)
1434                         p = "void";
1435                 break;
1436         /* cloudabi_sys_sock_shutdown */
1437         case 45:
1438                 if (ndx == 0 || ndx == 1)
1439                         p = "void";
1440                 break;
1441         /* cloudabi32_sys_thread_create */
1442         case 46:
1443                 if (ndx == 0 || ndx == 1)
1444                         p = "cloudabi_tid_t";
1445                 break;
1446         /* cloudabi_sys_thread_exit */
1447         case 47:
1448                 if (ndx == 0 || ndx == 1)
1449                         p = "void";
1450                 break;
1451         /* cloudabi_sys_thread_yield */
1452         case 48:
1453         default:
1454                 break;
1455         };
1456         if (p != NULL)
1457                 strlcpy(desc, p, descsz);
1458 }