1#[macro_export]
27macro_rules! syscall {
28 ($nr:expr) => {
29 $crate::syscall0($nr)
30 };
31
32 ($nr:expr, $a1:expr) => {
33 $crate::syscall1($nr, $a1 as $crate::SyscallWord)
34 };
35
36 ($nr:expr, $a1:expr, $a2:expr) => {
37 $crate::syscall2(
38 $nr,
39 $a1 as $crate::SyscallWord,
40 $a2 as $crate::SyscallWord,
41 )
42 };
43
44 ($nr:expr, $a1:expr, $a2:expr, $a3:expr) => {
45 $crate::syscall3(
46 $nr,
47 $a1 as $crate::SyscallWord,
48 $a2 as $crate::SyscallWord,
49 $a3 as $crate::SyscallWord,
50 )
51 };
52
53 ($nr:expr, $a1:expr, $a2:expr, $a3:expr, $a4:expr) => {
54 $crate::syscall4(
55 $nr,
56 $a1 as $crate::SyscallWord,
57 $a2 as $crate::SyscallWord,
58 $a3 as $crate::SyscallWord,
59 $a4 as $crate::SyscallWord,
60 )
61 };
62
63 ($nr:expr, $a1:expr, $a2:expr, $a3:expr, $a4:expr, $a5:expr) => {
64 $crate::syscall5(
65 $nr,
66 $a1 as $crate::SyscallWord,
67 $a2 as $crate::SyscallWord,
68 $a3 as $crate::SyscallWord,
69 $a4 as $crate::SyscallWord,
70 $a5 as $crate::SyscallWord,
71 )
72 };
73
74 ($nr:expr, $a1:expr, $a2:expr, $a3:expr, $a4:expr, $a5:expr, $a6:expr) => {
75 $crate::syscall6(
76 $nr,
77 $a1 as $crate::SyscallWord,
78 $a2 as $crate::SyscallWord,
79 $a3 as $crate::SyscallWord,
80 $a4 as $crate::SyscallWord,
81 $a5 as $crate::SyscallWord,
82 $a6 as $crate::SyscallWord,
83 )
84 };
85}
86
87#[macro_export]
101macro_rules! raw_syscall {
102 ($nr:expr) => {
103 $crate::raw::syscall0($nr as $crate::SyscallWord)
104 };
105
106 ($nr:expr, $a1:expr) => {
107 $crate::raw::syscall1(
108 $nr as $crate::SyscallWord,
109 $a1 as $crate::SyscallWord,
110 )
111 };
112
113 ($nr:expr, $a1:expr, $a2:expr) => {
114 $crate::raw::syscall2(
115 $nr as $crate::SyscallWord,
116 $a1 as $crate::SyscallWord,
117 $a2 as $crate::SyscallWord,
118 )
119 };
120
121 ($nr:expr, $a1:expr, $a2:expr, $a3:expr) => {
122 $crate::raw::syscall3(
123 $nr as $crate::SyscallWord,
124 $a1 as $crate::SyscallWord,
125 $a2 as $crate::SyscallWord,
126 $a3 as $crate::SyscallWord,
127 )
128 };
129
130 ($nr:expr, $a1:expr, $a2:expr, $a3:expr, $a4:expr) => {
131 $crate::raw::syscall4(
132 $nr as $crate::SyscallWord,
133 $a1 as $crate::SyscallWord,
134 $a2 as $crate::SyscallWord,
135 $a3 as $crate::SyscallWord,
136 $a4 as $crate::SyscallWord,
137 )
138 };
139
140 ($nr:expr, $a1:expr, $a2:expr, $a3:expr, $a4:expr, $a5:expr) => {
141 $crate::raw::syscall5(
142 $nr as $crate::SyscallWord,
143 $a1 as $crate::SyscallWord,
144 $a2 as $crate::SyscallWord,
145 $a3 as $crate::SyscallWord,
146 $a4 as $crate::SyscallWord,
147 $a5 as $crate::SyscallWord,
148 )
149 };
150
151 ($nr:expr, $a1:expr, $a2:expr, $a3:expr, $a4:expr, $a5:expr, $a6:expr) => {
152 $crate::raw::syscall6(
153 $nr as $crate::SyscallWord,
154 $a1 as $crate::SyscallWord,
155 $a2 as $crate::SyscallWord,
156 $a3 as $crate::SyscallWord,
157 $a4 as $crate::SyscallWord,
158 $a5 as $crate::SyscallWord,
159 $a6 as $crate::SyscallWord,
160 )
161 };
162}