userspace/target/architecture/x86_64/
callable.rs

1use super::syscall::*;
2
3impl crate::target::architecture::traits::Callable for crate::target::Arch {
4    fn _syscall0(n: usize) -> crate::Result {
5        crate::info!(X "Syscall Input: 0x{:x}", n);
6        let syscall_result = syscall0(n);
7        crate::info!(X "Syscall Result: {:?}", syscall_result);
8        syscall_result
9    }
10
11    fn _syscall1(n: usize, a1: usize) -> crate::Result {
12        crate::info!(X "Syscall Input: 0x{:x}, {}", n, a1);
13        let syscall_result = syscall1(n, a1);
14        crate::info!(X "Syscall Result: {:?}", syscall_result);
15        syscall_result
16    }
17
18    fn _syscall2(n: usize, a1: usize, a2: usize) -> crate::Result {
19        crate::info!(X "Syscall Input: 0x{:x}, {}, {}", n, a1, a2);
20        let syscall_result = syscall2(n, a1, a2);
21        crate::info!(X "Syscall Result: {:?}", syscall_result);
22        syscall_result
23    }
24
25    fn _syscall3(n: usize, a1: usize, a2: usize, a3: usize) -> crate::Result {
26        crate::info!(X "Syscall Input: 0x{:x}, {}, {}, {}", n, a1, a2, a3);
27        let syscall_result = syscall3(n, a1, a2, a3);
28        crate::info!(X "Syscall Result: {:?}", syscall_result);
29        syscall_result
30    }
31
32    fn _syscall4(n: usize, a1: usize, a2: usize, a3: usize, a4: usize) -> crate::Result {
33        crate::info!(X "Syscall Input: 0x{:x}, {}, {}, {}, {}", n, a1, a2, a3, a4);
34        let syscall_result = syscall4(n, a1, a2, a3, a4);
35        crate::info!(X "Syscall Result: {:?}", syscall_result);
36        syscall_result
37    }
38
39    #[rustfmt::skip]
40    fn _syscall5(n: usize, a1: usize, a2: usize, a3: usize, a4: usize, a5: usize) -> crate::Result {
41        crate::info!(X "Syscall Input: 0x{:x}, {}, {}, {}, {}, {}", n, a1, a2, a3, a4, a5);
42        let syscall_result = syscall5(n, a1, a2, a3, a4, a5);
43        crate::info!(X "Syscall Result: {:?}", syscall_result);
44        syscall_result
45    }
46
47    #[rustfmt::skip]
48    fn _syscall6(n: usize, a1: usize, a2: usize, a3: usize, a4: usize, a5: usize, a6: usize) -> crate::Result {
49        crate::info!(X "Syscall Input: 0x{:x}, {}, {}, {}, {}, {}, {}", n, a1, a2, a3, a4, a5, a6);
50        let syscall_result = syscall6(n, a1, a2, a3, a4, a5, a6);
51        crate::info!(X "Syscall Result: {:?}", syscall_result);
52        syscall_result
53    }
54}