]> git.proxmox.com Git - rustc.git/blob - vendor/rustix/src/backend/linux_raw/arch/outline/mod.rs
New upstream version 1.72.1+dfsg1
[rustc.git] / vendor / rustix / src / backend / linux_raw / arch / outline / mod.rs
1 //! Declare functions defined in out-of-line ("outline") asm files.
2 //!
3 //! Kernel calling conventions differ from userspace calling conventions, so we
4 //! also define inline function wrappers which reorder the arguments so that
5 //! they match with the kernel convention as closely as possible, to minimize
6 //! the amount of out-of-line code we need.
7 //!
8 //! This is needed because as of our MSRV of 1.63, inline asm and naked
9 //! functions are experimental.
10
11 #[cfg(target_arch = "x86")]
12 mod x86;
13 // For these architectures, pass the `nr` argument last.
14 #[cfg(any(
15 target_arch = "mips",
16 target_arch = "mips64",
17 target_arch = "powerpc64",
18 ))]
19 mod nr_last;
20
21 #[cfg(any(
22 target_arch = "mips",
23 target_arch = "mips64",
24 target_arch = "powerpc64",
25 ))]
26 pub(in crate::backend) use nr_last::*;
27 #[cfg(target_arch = "x86")]
28 pub(in crate::backend) use x86::*;