#![no_std]
#![allow(unsafe_code)]
cfg_if::cfg_if! {
if #[cfg(aarch64_moana)] {
#[path = "aarch64.rs"]
mod arch;
} else if #[cfg(riscv64_moana)] {
#[path = "riscv64.rs"]
mod arch;
} else {
#[path = "stub.rs"]
mod arch;
}
}
#[inline(always)]
pub fn local_irq_enable() {
arch::arch_local_irq_enable();
}
#[inline(always)]
pub fn local_irq_disable() {
arch::arch_local_irq_disable();
}
#[inline(always)]
pub fn local_irq_save() -> usize {
arch::arch_local_irq_save()
}
#[inline(always)]
pub fn local_irq_restore(flags: usize) {
arch::arch_local_irq_restore(flags);
}
#[inline(always)]
pub fn local_except_mask() {
arch::arch_local_except_mask();
}
#[inline(always)]
pub fn local_except_unmask() {
arch::arch_local_except_unmask();
}
#[inline(always)]
pub fn local_save_flags() -> usize {
arch::arch_local_save_flags()
}
#[inline(always)]
pub fn irqs_disabled() -> bool {
arch::arch_irqs_disabled()
}
#[inline(always)]
pub fn irqs_disabled_flags(flags: usize) {
arch::arch_irqs_disabled_flags(flags);
}