#![no_std]
#![allow(unsafe_code)]
#![cfg_attr(aarch64_moana, feature(stdarch_arm_barrier))]
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_flush_tlb_all() {
arch::arch_local_flush_tlb_all();
}
#[inline(always)]
pub fn flush_tlb_space(asid: usize) {
arch::arch_flush_tlb_space(asid);
}
#[inline(always)]
pub fn flush_tlb_range(asid: usize, start: usize, end: usize, stride: usize) {
arch::arch_flush_tlb_range(asid, start, end, stride);
}