someboot 0.1.14

Sparreal OS kernel
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
macro_rules! sym_addr {
    ($sym:expr) => {{
        let out: usize;
        #[allow(unused_unsafe)]
        unsafe {
            core::arch::asm!(
                "lea {out}, [rip + {sym}]",
                out = out(reg) out,
                sym = sym $sym,
                options(nostack, preserves_flags),
            );
        }
        out
    }};
}